Plurality — Shared substrate #
Substrate primitives shared across all theoretical accounts of plural
predication in this directory: a tolerance relation on Finset Atom
(controlling exception tolerance), the basic distribution operators
distMaximal/allSatisfy/someSatisfy/noneSatisfy, and their
decidability instances. Specialised operators (distTolerant,
trivalent K&S apparatus, Bar-Lev existPL, etc.) live in sibling
files.
Main declarations #
Tolerance— reflexive, sub-plurality-respecting relation onFinset Atom.Tolerance.identity,Tolerance.trivial— the two anchor instances used by downstream Studies.distMaximal—∀ a ∈ x, P a w. The maximal-distribution predicate.allSatisfy— alias ofdistMaximal(kept under its K&S-paper-faithful name for legibility in study files).someSatisfy,noneSatisfy— existential and universal-negation duals.
Implementation notes #
This file sits under namespace Semantics.Plurality (the directory
umbrella) rather than Semantics.Plurality.Basic (filename pattern).
Consumers open Semantics.Plurality for substrate access; specific
theoretical accounts (Distributivity, Trivalent, Implicature,
Cumulativity, …) live under sub-namespaces and are opened separately.
Tolerance relations #
A tolerance relation determines which sub-pluralities count as "similar enough" to the whole for current conversational purposes.
Formally: ⪯ is reflexive and respects mereological structure.
- rel : Finset Atom → Finset Atom → Prop
y ⪯ x:yis similar enough tox. - decRel (x y : Finset Atom) : Decidable (self.rel x y)
Decidability of the tolerance relation.
- refl (x : Finset Atom) : self.rel x x
Reflexivity.
- sub (x y : Finset Atom) : self.rel x y → x ⊆ y
Tolerance implies sub-plurality.
Instances For
Per-Tolerance decidability instance for the relation.
Equations
- tol.instDecidableRel x y = tol.decRel x y
Identity tolerance: only x ⪯ x (forces maximal reading).
Equations
- Semantics.Plurality.Tolerance.identity = { rel := fun (x y : Finset Atom) => x = y, decRel := fun (x y : Finset Atom) => decEq x y, refl := ⋯, sub := ⋯ }
Instances For
Trivial tolerance: any sub-plurality is tolerated (allows existential reading). [KS21b] call this the trivial tolerance — the relation is just sub-pluralityhood, with no further restriction.
Equations
- Semantics.Plurality.Tolerance.trivial = { rel := fun (x y : Finset Atom) => x ⊆ y, decRel := fun (x y : Finset Atom) => Finset.decidableDforallFinset, refl := ⋯, sub := ⋯ }
Instances For
Basic plural predicates #
Maximal distributive: ⟦each P⟧(x) = ∀ a ∈ x, P a.
The semantics of English each, German jeder.
Equations
- Semantics.Plurality.distMaximal P x w = ∀ a ∈ x, P a w
Instances For
Equations
- Semantics.Plurality.distMaximal.instDecidable P x w = id inferInstance
All atoms in x satisfy P at w. Alias of distMaximal — kept
under its K&S-paper-faithful name for legibility in study files;
consumers may use either.
Equations
Instances For
Equations
Some atom in x satisfies P at w.
Equations
- Semantics.Plurality.someSatisfy P x w = ∃ a ∈ x, P a w
Instances For
Equations
- Semantics.Plurality.someSatisfy.instDecidable P x w = id inferInstance
No atom in x satisfies P at w.
Equations
- Semantics.Plurality.noneSatisfy P x w = ∀ a ∈ x, ¬P a w
Instances For
Equations
- Semantics.Plurality.noneSatisfy.instDecidable P x w = id inferInstance