Reciprocal pronouns — the pronominal exponent of reciprocity #
The pronoun member of the reciprocal series: ReciprocalPronoun extends the general Pronoun
with the marker data of Syntax/Reciprocal.lean, the nominal strategy it realizes and the
readings it covers, and fixes the Principle-A reciprocal binding class. A fragment writes the
pronoun once and derives its Reciprocal.Marker entry with toMarker; Hungarian egymás,
Japanese otagai and Wan ɔ̄ŋ̄ are such objects. Verbal and clitic reciprocal strategies are
not pronouns and stay bare markers.
Main declarations #
ReciprocalPronoun— the lexical object (extends Pronoun+strategy+readings).ReciprocalPronoun.toMarker— its entry in a marker inventory.HasPhi/Proform/Boundinstances routing the object through the Pronoun API.
A reciprocal pronoun: the general Pronoun (surface form + φ-features) as the nominal
exponent of reciprocity, with the strategy it realizes and the readings it covers. The
kind fixes the Principle-A reciprocal binding class, so entries need not restate it.
- form : String
- script : Option String
- pronType : Option UD.PronType
- bindingClass : Option Features.BindingClass
- strategy : Reciprocal.Strategy
The nominal strategy: a dedicated pronoun (egymás, otagai) or a bipartite quantifier NP (each other).
- readings : List Reciprocal.Reading
The readings the form covers.
Instances For
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
- instReprReciprocalPronoun = { reprPrec := instReprReciprocalPronoun.repr }
Equations
- One or more equations did not get rendered due to their size.
Instances For
The marker entry of a reciprocal pronoun.
Equations
Instances For
A reciprocal pronoun bears φ via its Pronoun core.
Equations
- instHasPhiReciprocalPronoun = { phi := fun (p : ReciprocalPronoun) => p.toWord.phi }
Equations
- instProformReciprocalPronoun = { Domain := fun (p : ReciprocalPronoun) => Proform.Domain p.toPronoun }
Its binding class is the Pronoun core's, defaulting to the reciprocal.
Equations
- instBoundReciprocalPronoun = { bindingClass := fun (p : ReciprocalPronoun) => p.bindingClass.getD Features.BindingClass.reciprocal }