Particle #
This file defines Particle, the lexical core for uninflectable
function words ([zwicky-1985-clitics]): form, position, and a recorded
distribution over licensing cells — pairs of a [sadock-zwicky-1985]
sentence type (interrogatives subtyped by the Semantics/Questions
constructions) and a Clause.EmbeddingContext. The distribution records
distributional felicity, not licensing mechanism (analytical,
study-side); a none cell means the source records nothing, not
exclusion. Sentence-type and embedding-context profiles are marginals of
the table, derived by existential projection (LicensedIn,
LicensedInEmbed), never stored separately.
Main declarations #
Particle,Particle.ClauseType,Particle.Position,ParticleStatusParticle.Licensed,Particle.LicensedIn,Particle.LicensedInEmbed— derived, decidableParticle.toWord— projection toWord(UDPART)
Where a particle sits relative to its host domain — the [zwicky-1985-clitics] positional diagnostic.
- clauseInitial : Position
- secondPosition : Position
Second position (Wackernagel; Slavic li).
- clauseMedial : Position
Clause-medial / middle field (German denn, Swedish väl).
- clauseFinal : Position
- preHost : Position
Immediately before a host constituent (adnominal focus particles).
- postHost : Position
Immediately after a host constituent.
- free : Position
No fixed position (Hindi-Urdu kya:, [bhatt-dayal-2020] §2).
Instances For
Equations
- Particle.instDecidableEqPosition x✝ y✝ = if h : x✝.ctorIdx = y✝.ctorIdx then isTrue ⋯ else isFalse ⋯
Equations
- One or more equations did not get rendered due to their size.
- Particle.instReprPosition.repr Particle.Position.preHost prec✝ = Repr.addAppParen (Std.Format.nest (if prec✝ ≥ 1024 then 1 else 2) (Std.Format.text "Particle.Position.preHost")).group prec✝
- Particle.instReprPosition.repr Particle.Position.postHost prec✝ = Repr.addAppParen (Std.Format.nest (if prec✝ ≥ 1024 then 1 else 2) (Std.Format.text "Particle.Position.postHost")).group prec✝
- Particle.instReprPosition.repr Particle.Position.free prec✝ = Repr.addAppParen (Std.Format.nest (if prec✝ ≥ 1024 then 1 else 2) (Std.Format.text "Particle.Position.free")).group prec✝
Instances For
Equations
- Particle.instReprPosition = { reprPrec := Particle.instReprPosition.repr }
Three-valued distribution status of a particle in a licensing context (cf. WALS ch. 116).
- obligatory : ParticleStatus
- optional : ParticleStatus
- excluded : ParticleStatus
Instances For
Equations
- instDecidableEqParticleStatus x✝ y✝ = if h : x✝.ctorIdx = y✝.ctorIdx then isTrue ⋯ else isFalse ⋯
Equations
- instReprParticleStatus.repr ParticleStatus.obligatory prec✝ = Repr.addAppParen (Std.Format.nest (if prec✝ ≥ 1024 then 1 else 2) (Std.Format.text "ParticleStatus.obligatory")).group prec✝
- instReprParticleStatus.repr ParticleStatus.optional prec✝ = Repr.addAppParen (Std.Format.nest (if prec✝ ≥ 1024 then 1 else 2) (Std.Format.text "ParticleStatus.optional")).group prec✝
- instReprParticleStatus.repr ParticleStatus.excluded prec✝ = Repr.addAppParen (Std.Format.nest (if prec✝ ≥ 1024 then 1 else 2) (Std.Format.text "ParticleStatus.excluded")).group prec✝
Instances For
Equations
- instReprParticleStatus = { reprPrec := instReprParticleStatus.repr }
Sentence-type cells of the particle licensing space: the [sadock-zwicky-1985] types, interrogatives subtyped.
- declarative : ClauseType
- polar : ClauseType
Polar (yes/no) interrogative.
- alternative : ClauseType
Alternative interrogative (p or q?).
- constituent : ClauseType
Constituent (wh) interrogative.
- imperative : ClauseType
- exclamative : ClauseType
Instances For
Equations
- Particle.instDecidableEqClauseType x✝ y✝ = if h : x✝.ctorIdx = y✝.ctorIdx then isTrue ⋯ else isFalse ⋯
Equations
- One or more equations did not get rendered due to their size.
- Particle.instReprClauseType.repr Particle.ClauseType.polar prec✝ = Repr.addAppParen (Std.Format.nest (if prec✝ ≥ 1024 then 1 else 2) (Std.Format.text "Particle.ClauseType.polar")).group prec✝
Instances For
Equations
- Particle.instReprClauseType = { reprPrec := Particle.instReprClauseType.repr }
Equations
- Particle.instFintypeClauseType = { elems := { val := ↑Particle.ClauseType.enumList, nodup := Particle.ClauseType.enumList_nodup }, complete := Particle.instFintypeClauseType._proof_1 }
An uninflectable function word associated with a host constituent ([zwicky-1985-clitics]).
- form : String
Surface form (romanization or orthographic).
- script : Option String
Native-script form, when
formis a romanization (Mandarin 吗). - position : Option Position
Host/position class;
nonewhen the source records no placement. - distribution : ClauseType → Clause.EmbeddingContext → Option ParticleStatus
Recorded status per licensing cell (sentence type × embedding context);
nonewhen the source records nothing for that cell.
Instances For
Equations
- One or more equations did not get rendered due to their size.
Instances For
The particle is positively recorded as available (obligatorily or
optionally) in the sentence-type × embedding cell (c, e).
Equations
- p.Licensed c e = match p.distribution c e with | some ParticleStatus.obligatory => True | some ParticleStatus.optional => True | x => False
Instances For
Equations
- One or more equations did not get rendered due to their size.
Positively recorded in sentence type c, in some embedding context.
Equations
- p.LicensedIn c = ∃ (e : Clause.EmbeddingContext), p.Licensed c e
Instances For
Equations
Positively recorded in embedding context e, for some sentence type.
Equations
- p.LicensedInEmbed e = ∃ (c : Particle.ClauseType), p.Licensed c e
Instances For
Equations
Some cell is recorded (the sentential/illocutionary particle family: question, modal, sentence-final particles).
Equations
- p.IsSentential = ∃ (c : Particle.ClauseType) (e : Clause.EmbeddingContext), (p.distribution c e).isSome = true
Instances For
Projection to Word (UD PART).
Equations
- p.toWord = { form := p.form, cat := UD.UPOS.PART }