Possessive carriers and capabilities #
The unified Possessive namespace for the semantics of possessive
constructions, built on the general relational-noun substrate
(ArgumentStructure.Relational: π, Ex, iotaPresupposition, …). The
quantificational layer (Poss, PossW, narrowing, carrierGQ) is in
Possessive/GQ.lean; the determiner that denotes through these carriers is
Possessive.denote (Semantics/Definiteness/DeterminerDenotation.lean).
Main declarations #
Possessive.viaArgument,Possessive.viaModifier— the two ways a possessor combines with a noun: with a relational noun's own relation (the argument genitive) or with a free relation over a sortal restrictor (the modifier genitive, Barker'sπ).Possessive.Carrier— a possessor + relation + sortal restrictor; the possessee predicate is derived (viaModifier), never stored, so a carrier cannot be incoherent.Possessive.Definite— a possessive carrying a Russellian uniqueness presupposition.HasPossessor,HasPossesseePredicate,HasPossessionRelation,HasIotaWitness— composable capability mixins (root namespace,Add/Mulidiom); carriers opt into whichever axes they bear.possesseeSet,existsUnique_possessee— capability-polymorphic consumers.Possessive.PossessionRelationType— the four-way Vikner-Jensen possession taxonomy.
Combining a possessor with a noun #
Applying a possessor to a lexically relational noun — the argument
genitive: ⟦John's teacher⟧ = λy. teacher(John)(y).
Equations
- Possessive.viaArgument possessor nounRel y s = nounRel possessor y s
Instances For
Applying a possessor to a sortal noun via Barker's π — the modifier
genitive with a free relation R: ⟦John's team⟧ = λy. team(y) ∧ R(John)(y).
Equations
- Possessive.viaModifier possessor nounPred R y s = ArgumentStructure.Relational.π nounPred R possessor y s
Instances For
The argument genitive is the modifier genitive over a trivial restrictor.
Carriers #
A possessive carrier: a possessor, a possession relation, and a sortal
restrictor (the noun predicate; ⊤ for a purely relational noun). The possessee
predicate is derived (viaModifier), not stored — so a carrier cannot bundle
a predicate unrelated to its relation.
- possessor : E
The possessor entity.
- relation : ArgumentStructure.Relational.Pred2 E S
The possession relation.
- restrictor : ArgumentStructure.Relational.Pred1 E S
The sortal restrictor (the noun predicate).
Instances For
The derived possessee predicate: the restrictor conjoined with the relation applied to the possessor.
Equations
Instances For
A definite possessive carrying its Russellian uniqueness presupposition ("the boy's cat", "my mother").
- possessor : E
The possessor entity.
- predicate : ArgumentStructure.Relational.Pred1 E S
The possessee predicate (a definite description's restrictor).
- presupposition (s : S) : ArgumentStructure.Relational.iotaPresupposition self.predicate s
The possessee predicate has a unique witness at every situation.
Instances For
Vikner-Jensen possession taxonomy #
Four-way lexical taxonomy of possession relations from [VJ02] §3.1.2, reproduced in Fig 6.1 of [Bar11]. The separate "pragmatic" interpretation is not lexical and is not one of these.
- inherent : PossessionRelationType
Inherent relation: lexically argument-structural (the teacher's class).
- partWhole : PossessionRelationType
Part-whole relation (the girl's nose, the car's wheel).
- agentive : PossessionRelationType
Agentive relation (the girl's poem = the poem the girl wrote).
- control : PossessionRelationType
Control relation: ownership or legal control (the girl's car).
Instances For
Equations
- Possessive.instDecidableEqPossessionRelationType x✝ y✝ = if h : x✝.ctorIdx = y✝.ctorIdx then isTrue ⋯ else isFalse ⋯
Equations
Equations
- One or more equations did not get rendered due to their size.
Instances For
Bridge to type ⟨1⟩ quantifiers #
Possessive as a type ⟨1⟩ quantifier (NPQ):
⟦John's⟧ = fun R P ↦ ∃ y, R possessor y ∧ P y. Not isomorphism-invariant: it
depends on the identity of the possessor, not just cardinalities.
Equations
- Possessive.asNPQ possessor R P = ∃ (y : E), R possessor y = true ∧ P y
Instances For
Composable carrier capabilities #
Cross-cutting capability mixins for the long-run library where 20-30+ possessive
carriers each implement a subset of the axes. Following the mathlib
Add/Mul/Inv/Neg idiom: many small composable classes, each one
operation; carriers opt in to whichever axes they bear.
| Carrier | HasPossessor | HasPossesseePredicate | HasPossessionRelation | HasIotaWitness |
|---|---|---|---|---|
Possessive.Carrier E S | ✓ | ✓ | ✓ | — |
Possessive.Definite E S | ✓ | ✓ | — | ✓ |
A carrier whose values bundle a possessor entity.
- possessor : α → E
Project the bundled possessor entity.
Instances
A carrier whose values bundle a possessee predicate Pred1 E S.
- possesseePredicate : α → ArgumentStructure.Relational.Pred1 E S
Project the bundled possessee predicate.
Instances
A carrier whose values bundle a possession relation Pred2 E S. Distinct
from HasPossesseePredicate: a relational noun's R is the noun denotation
itself, while a sortal-with-π construction carries R separately.
- possessionRelation : α → ArgumentStructure.Relational.Pred2 E S
Project the bundled possession relation.
Instances
Prop class: a possessive carrier whose possessee predicate has a unique witness at every situation. Definite possessives bear this; existential and quantificational ones do not.
- iotaWitness (a : α) (s : S) : ArgumentStructure.Relational.iotaPresupposition (HasPossesseePredicate.possesseePredicate a) s
The possessee predicate has a unique witness at every situation.
Instances
Equations
- Possessive.instHasPossessorCarrier = { possessor := Possessive.Carrier.possessor }
Equations
- Possessive.instHasPossesseePredicateCarrier = { possesseePredicate := Possessive.Carrier.possesseePred }
Equations
- Possessive.instHasPossessionRelationCarrier = { possessionRelation := Possessive.Carrier.relation }
Equations
- Possessive.instHasPossessorDefinite = { possessor := Possessive.Definite.possessor }
Equations
- Possessive.instHasPossesseePredicateDefinite = { possesseePredicate := Possessive.Definite.predicate }
Definite carries its iota-presupposition as a structure field; the
typeclass instance just exposes it.
Consuming the capabilities #
The possessee set determined by any carrier bundling a possessor and a possession relation: the entities standing in the relation to the possessor.
Equations
- possesseeSet a y s = HasPossessionRelation.possessionRelation a (HasPossessor.possessor a) y s
Instances For
Any carrier bearing a Russellian iota-witness denotes a unique possessee at
every situation. Definite possessives inherit ∃!-reference with no
carrier-specific reproof.