Weak Necessity Modals as Homogeneous Pluralities of Worlds #
@cite{agha-jeretic-2022}
Proceedings of SALT 32: 831–851.
Core Proposal #
Weak necessity modals like should are not quantificational. They denote definite pluralities of worlds, paralleling the relationship between plural definite nominals (the) and universal quantifiers (all/every):
- must p = all worlds in a given domain are p-worlds (∀ quantifier)
- should p = the worlds in a given domain are p-worlds (plural definite)
This gives weak necessity modals homogeneity as an intrinsic feature: they yield a truth-value gap (neither true nor false) when some but not all worlds in the domain satisfy the prejacent — exactly paralleling the behavior of plural definite DPs under negation.
Key Claims Formalized #
Homogeneity (§3.1): Weak necessity modals take obligatory apparent wide scope over negation, unlike strong necessity modals which allow narrow scope.
Trivalent semantics (§4.2):
should_D := ⊕D— evaluation is trivalent with symmetric negation (homogeneity gap preserved under ¬).Homogeneity removal (§3.2): The adverb necessarily removes homogeneity from should, just as all removes it for plural definites.
QUD-sensitive exception tolerance (§3.3): Weak necessity modals tolerate exceptions when irrelevant to the QUD.
X operator (§5.1): Derives
shouldfrommustcompositionally via minimal witness sets. X only applies to universals (unique witness), explaining Javanese NE's restriction to necessity modals.Critique of domain restriction (§6.1): The vFI 2008 analysis (
Directive.weakNecessity) is bivalent — it cannot produce the truth-value gap that the empirical data require.
Independent Support #
@cite{tieu-kriz-chemla-2019} find that children acquire homogeneity independently of scalar implicatures (HOM/−SI group), supporting the claim that homogeneity is intrinsic to plural predication rather than derived via exhaustification (@cite{magri-2014}).
Connection to @cite{agha-jeretic-2026} #
The 2026 handbook chapter surveys this analysis as one of three competing accounts of weak necessity (alongside domain restriction and comparative semantics), and extends it to explain the neg-raising asymmetry between should and must.
Trivalent evaluation #
should gets trivalent semantics via plural predication over worlds, while must remains bivalent (standard ∀ quantification).
We model the modal domain as a List World and use Core.Duality.Truth3
for the three-valued output.
Strong necessity: standard ∀ quantification over the modal domain.
Bivalent — always true or false, never indeterminate.
must_D := λp. ∀w ∈ D. p(w)
Equations
- AghaJeretic2022.mustEval domain p = Core.Duality.Truth3.ofBool (domain.all p)
Instances For
Weak necessity: trivalent plural predication over the modal domain.
Returns tt if all worlds satisfy p, ff if none do, unk otherwise.
should_D := ⊕D — the prejacent is predicated of the plurality
of worlds, yielding homogeneity.
Body uses an explicit 4-way if-chain to support split-based proofs
in this file. The bridge theorem shouldEval_eq_distList (below)
formalizes the equivalence with Core.Duality.distList for nonempty
domains. Refactoring the body to call distList directly requires
rewriting ~3 dense proof scripts; tracked as future work.
Equations
- One or more equations did not get rendered due to their size.
Instances For
must is always bivalent #
must never returns the indeterminate value.
should is homogeneous: it can return ★ #
In a mixed domain, should returns ★ (indeterminate).
In a uniform-true domain, should returns tt.
In a uniform-false domain, should returns ff.
must returns ff in the mixed case (no gap).
When positive, should and must agree.
Negation symmetry #
The paper's central formal claim: shouldEval produces symmetric truth
conditions under negation. Affirming p of the plurality and denying ¬p are
non-complementary — both can be indeterminate simultaneously. This is the
formal content of homogeneity.
shouldEval D p = tt → shouldEval D (¬p) = ff(no positive/negative overlap)shouldEval D p = ff → shouldEval D (¬p) = tt(symmetric falsity, non-empty D)shouldEval D p = unk → shouldEval D (¬p) = unk(the gap is symmetric)
Contrast: must has NO gap — it's always bivalent.
If shouldEval D p = tt, then shouldEval D (¬p) = ff.
No overlap between positive and negative extensions of the plurality.
If shouldEval D p = ff (non-empty D), then shouldEval D (¬p) = tt.
Symmetric: universal denial of p means universal affirmation of ¬p.
If shouldEval D p = unk, then shouldEval D (¬p) = unk.
The gap is symmetric under negation — the core homogeneity property.
Modal homogeneity parallels plural definite homogeneity #
The paper demonstrates that weak necessity modals pattern exactly like
plural definites with respect to negation. We encode the key data points
using the HomogeneityDatum type from Plurals.Homogeneity.
Should displays homogeneity: under negation, "shouldn't go" is incompatible with an existential followup "but you can" — just like "The guests aren't here" is incompatible with "but some of them are."
Paper examples (8)–(9).
Equations
- One or more equations did not get rendered due to their size.
Instances For
Have to does NOT display homogeneity: "don't have to go" is compatible with "but you are allowed to go" — narrow scope reading (¬□ = ◇¬) available, unlike should which only allows wide scope (□¬).
Paper example (9b).
Equations
- One or more equations did not get rendered due to their size.
Instances For
Homogeneity removal by "necessarily" #
Inserting necessarily into a weak necessity modal sentence removes the homogeneity gap, just as all removes it from plural definites.
Paper examples (14)–(15):
- "You shouldn't go" → #but you can go
- "You shouldn't necessarily go" → ✓but you can go
This parallels:
- "The guests aren't here" → #but some are
- "The guests aren't all here" → ✓but some are
Necessarily removes homogeneity from should, paralleling how all removes homogeneity from plural definites.
Equations
- One or more equations did not get rendered due to their size.
Instances For
shouldEval with homogeneity removal (= explicit quantifier insertion)
reduces to mustEval — the gap disappears.
Equations
- AghaJeretic2022.shouldWithRemoval domain p = AghaJeretic2022.mustEval domain p
Instances For
QUD-sensitive exception tolerance #
Plural predication tolerates exceptions when they are irrelevant to the QUD. The paper shows the same pattern for weak necessity modals.
Paper example (17): Context: One can get a perfect grade by doing most exercises correctly; doing all gives extra credit. QUD1: What is a way to get a perfect grade? QUD2: What are the minimal requirements?
(a) "You should do every exercise." → QUD1: ✓; QUD2: # (b) "You have to do every exercise." → QUD1: #; QUD2: #
- modal : String
- sentence : String
- context : String
- qud1 : String
- qud2 : String
- acceptableUnderQUD1 : Bool
- acceptableUnderQUD2 : Bool
Instances For
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
- One or more equations did not get rendered due to their size.
Instances For
Well-responses in borderline cases #
In borderline cases (★), outright denial is infelicitous; well-responses are preferred. This parallels plural definites (@cite{kriz-2016}).
Paper example (19).
- sentence : String
- context : String
- noResponseFelicitous : Bool
- wellResponseFelicitous : Bool
Instances For
Equations
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
- One or more equations did not get rendered due to their size.
Instances For
Compositional derivation via the X operator #
X picks out the unique smallest set that makes a quantifier true and returns the mereological sum of its elements:
X := λM. ⊕ ιW[W ∈ WIT(M)]
Applied to must_D: the unique minimal witness set of ∀ over D is D itself
(no proper subset suffices). So X(must_D) = ⊕D = should_D.
Applied to can_D: each singleton {w} for w ∈ D is a minimal witness of ∃.
Multiple minimal witnesses → ι is undefined → X is undefined.
This explains why Javanese NE (= X) only combines with necessity modals.
A witness set for a quantifier Q is a set W such that Q(W) holds.
Equations
- AghaJeretic2022.isWitness q w = q w
Instances For
A minimal witness: a witness with no proper sub-witness. Removing any element makes it no longer a witness.
Equations
- AghaJeretic2022.isMinimalWitness q w = (AghaJeretic2022.isWitness q w && w.all fun (x : World) => !AghaJeretic2022.isWitness q (List.filter (fun (x_1 : World) => x_1 != x) w))
Instances For
Universal quantifier as GQ: W witnesses ∀ over D iff D ⊆ W. This is the Barwise & Cooper (1981) witness set notion — the quantifier EVERY(D) = {P | D ⊆ P}, so W ∈ EVERY(D) iff D ⊆ W.
Equations
- AghaJeretic2022.universalQ domain w = domain.all fun (x : World) => w.contains x
Instances For
Existential quantifier as GQ: W witnesses ∃ over D iff D ∩ W ≠ ∅. SOME(D) = {P | D ∩ P ≠ ∅}, so W ∈ SOME(D) iff some element of D is in W.
Equations
- AghaJeretic2022.existentialQ domain w = domain.any fun (x : World) => w.contains x
Instances For
The full domain is the UNIQUE minimal witness for ∀. Since EVERY(D) = {P | D ⊆ P}, the only W ⊆ D with D ⊆ W is W = D. Removing any element breaks the subset condition. This is why X (requiring a unique minimal witness) applies to universals.
Each singleton is a minimal witness for ∃, and the full domain is NOT minimal (proper subsets suffice). This is why X is undefined for ∃ — multiple minimal witnesses means ι (the uniqueness presupposition) fails. This explains Javanese NE's restriction to necessity modals.
X applied to must yields the domain itself (= should's denotation). The resulting plurality is then subject to plural predication semantics.
Equations
- AghaJeretic2022.applyX domain p = AghaJeretic2022.shouldEval domain p
Instances For
X(must) = should.
Morphological composition of weak necessity #
Cross-linguistically, weak necessity is expressed in two ways:
- Primitive lexical items (English should, ought): non-decomposable.
- Morphological derivation from strong necessity: a. French: devoir+CF → weak necessity. CF picks a witness set without requiring uniqueness, so it applies to both ∀ (devrais) and ∃ (pourrais). b. Javanese: mesthi+NE → weak necessity. NE = X (requires unique minimal witness), so it only applies to ∀ (mesthi-ne), not ∃ (iso-ne is ungrammatical).
- primitive : WeakNecessityMorphology
- counterfactual : WeakNecessityMorphology
- dedicatedMarker : WeakNecessityMorphology
Instances For
Equations
- AghaJeretic2022.instDecidableEqWeakNecessityMorphology 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.
Instances For
Equations
- language : String
- strongForm : String
- weakForm : String
- strategy : WeakNecessityMorphology
- appliesTo : String
Instances For
Equations
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
- One or more equations did not get rendered due to their size.
Instances For
Javanese NE only applies to necessity; French CF applies to both. This follows from X requiring unique minimal witnesses (∀ only) vs CF accepting any witness (∀ and ∃).
Why domain restriction doesn't capture homogeneity #
The @cite{von-fintel-iatridou-2008} analysis (formalized in Directive.lean)
treats should as ∀ over a refined set of best worlds. Directive.weakNecessity
returns Bool — it is bivalent by construction. A bivalent semantics
cannot produce the truth-value gap that the empirical data require.
We make this critique computational by contrasting Directive.weakNecessity
(always tt or ff) with shouldEval (can return unk).
Local 4-world type for the bivalence demonstration.
Equations
- AghaJeretic2022.BridgeWorld = Fin 4
Instances For
Directive.weakNecessity is bivalent: as a Prop, it is classically
true or false — never indeterminate. This contrasts with shouldEval,
which can return Truth3.indet.
shouldEval CAN return unk — the gap that domain restriction misses.
The mismatch: domain restriction predicts existential followups are felicitous after negated should, but empirically they are not.
- sentence : String
- existentialFollowup : String
- domainRestrictionPredicts : Bool
- empiricallyObserved : Bool
Instances For
Equations
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
- One or more equations did not get rendered due to their size.
Instances For
English modal lexicon verification #
Verify that the English fragment classifies should/ought as weak necessity and must as strong necessity, matching the paper's §2.1.
should is classified as weak necessity in the English fragment.
ought is classified as weak necessity.
must is classified as strong necessity, not weak.
Scopelessness persists under higher negation #
The apparent wide scope of should persists when negation is in a higher clause, paralleling plural definites:
- "I don't think the guests are here" → #but some are
- "I don't think you should go" → #but you are allowed to go
- "I don't think you have to go" → ✓but you are allowed to go
This is analyzed as scopelessness: the "wide scope" effect is a consequence of homogeneity, not syntactic movement.
- modal : String
- sentence : String
- existentialFollowup : String
- followupFelicitous : Bool
Instances For
Equations
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
- One or more equations did not get rendered due to their size.
Instances For
Weak necessity and its friends #
The paper argues (§6.4) that the homogeneity pattern observed with weak necessity modals is part of a general phenomenon shared with bare conditionals, generics, and habituals — all analyzable as involving plural predication over different semantic domains.
Plurals.Homogeneity.conditionalExample already captures the conditional
case: "They play soccer if the sun shines" displays the same gap as
"The switches are on" and "You should go."
Examples (38)–(42): future conditionals, bare past conditionals, generics, and habituals all show homogeneity effects and homogeneity removal by explicit quantifiers (necessarily, always, all).
The existing conditionalExample from Homogeneity.lean shows the
same gap pattern as shouldHomogeneity — both have ★ in the gap
scenario. This structural parallel supports the unified plural
predication analysis.
The Determiner–Modal Parallel #
| Nominal domain | Modal domain |
|---|---|
| the N (plural def.) | should (weak necessity) |
| all/every N (∀) | must/have to (strong) |
| homogeneous | homogeneous |
| scopeless | scopeless |
| exception-tolerant | exception-tolerant |
| all removes gap | necessarily removes gap |
| ★ → "well" response | ★ → "well" response |
The proposal: weak necessity is to strong necessity what the is to all.
- property : String
- pluralDefiniteExample : String
- weakNecessityExample : String
Instances For
Equations
Equations
- One or more equations did not get rendered due to their size.
Instances For
Local vs Global Aggregation #
The should/must contrast is an instance of the local/global aggregation
distinction in Core.Duality. When modal sentences are embedded under
quantifiers ("Every student should/must pass"):
should (local): each individual's modal domain is mixed →
.indet. The quantifier sees all gaps. Byaggregate_replicate_indet, both ∃ and ∀ return.indet— quantifier strength is invisible.must (global): each individual's domain gives
ofBool(Bool). The quantifier sees Bools. Byaggregate_map_ofBool_mixed, mixed inputs yield.truefor ∃ and.falsefor ∀ — the strength effect.
shouldEval for a mixed nonempty domain produces .indet.
should erases strength under embedding: when n individuals each
have mixed modal domains, all produce .indet. Any quantifier
aggregating these gaps returns .indet — strength is invisible.
must produces the strength effect under embedding: when n
individuals each have their modal domain evaluated by mustEval
(producing ofBool), mixed Bool results distinguish strong from
weak quantifiers.
must is always determinate under embedding: aggregation over
ofBool values never produces a gap, regardless of duality type.
The Core Identity: should = DIST over worlds #
The paper's central formal claim is that weak necessity IS plural predication.
We prove this by showing shouldEval equals dist (the distributive operator
for plural predication from Core.Duality) applied to the evaluation of each
world in the domain.
dist results returns:
.trueif all results are true.falseif all are false.gapotherwise
This is exactly what shouldEval computes, with results = domain.map p.
shouldEval = DIST over worlds.
shouldEval D p = distList D p for nonempty D — the canonical
Core.Duality.distList (Fine super-truth specialized to a List
domain with a Boolean predicate) IS what weak necessity computes.
This is the formal proof that weak necessity IS plural predication: the trivalent truth value of "should p" is determined by the DIST operator applied to the pointwise evaluation of p across the modal domain — exactly as "the Xs are P" is determined by DIST applied to the pointwise evaluation of P across the individuals.
The the/all : should/must parallel is not merely an analogy; it is a mathematical identity at the level of truth-value computation.
Hypothesis hne is required because shouldEval [] p = .false
(Agha & Jeretič's empty-domain convention) while distList [] p = .true (vacuous super-truth, mathlib's empty-fold convention).
mustEval is ofBool ∘ List.all, confirming must stays bivalent.
Sufficient Truth (@cite{kriz-2016}, A&J Appendix 1) #
Formalizes the mechanism by which indeterminate (★) sentences are rescued to "true enough" relative to an Question (= QUD). A sentence S is sufficiently true at w w.r.t. issue I iff:
- S is not false at w: ⟦S⟧(w) ≠ 0
- There exists an I-equivalent world u where S is true: ⟦S⟧(u) = 1
Condition 2 means the exceptions are in the same Question cell as a satisfying world — they are "irrelevant" to the QUD.
Addressing an Question (def 46): S cannot address issue I if any cell of I contains both worlds where S is true and worlds where S is false. In other words, S must not split any Question cell.
Sufficient Truth (Križ 2016, A&J def 44). S is true enough at w w.r.t. issue I iff (i) S is not false at w, and (ii) some I-equivalent world makes S true.
Equations
- AghaJeretic2022.sufficientTruth S sameCell w worlds = (S w != Core.Duality.Truth3.false && worlds.any fun (u : W) => sameCell w u && S u == Core.Duality.Truth3.true)
Instances For
Sufficient truth rescues an indeterminate sentence when the exceptions are QUD-irrelevant. Example: "You should do every exercise" is ★ when doing most but not all suffices. Under QUD1 ("how to get a perfect grade?"), the exception-worlds (where you skip one exercise but still pass) are equivalent to the satisfying-worlds → rescued to "true enough." Under QUD2 ("what are the minimal requirements?"), they are in different cells → NOT rescued.
The CF operator for French-type languages #
The X operator (§5.1) requires a UNIQUE minimal witness set (via ι). This explains Javanese NE: ∀ has one minimal witness (the full domain), ∃ has many (each singleton), so NE only applies to necessity.
French counterfactual morphology is less restrictive: CF picks SOME witness set (not necessarily unique), so it applies to both necessity and possibility modals: devrais (necessity+CF) and pourrais (possibility+CF).
The difference: X = λM. ⊕ ιW[W ∈ WIT(M)] (unique, partial) CF = λM. ⊕ W for some W ∈ WIT(M) (existential, total)
CF operator: checks whether SOME minimal witness set exists. Unlike X (which requires uniqueness), CF is defined whenever at least one minimal witness exists — which is always, for any non-empty quantifier domain.
Equations
- AghaJeretic2022.hasCFWitness q candidates = candidates.any (AghaJeretic2022.isMinimalWitness q)
Instances For
CF is defined for both ∀ and ∃ (both have minimal witnesses).
X (unique minimal witness) is defined for ∀ but not ∃. Here "unique" means exactly one candidate is a minimal witness.
Equations
- AghaJeretic2022.hasUniqueWitness q candidates = ((List.filter (AghaJeretic2022.isMinimalWitness q) candidates).length == 1)
Instances For
The typological prediction: X (Javanese NE) restricts to necessity; CF (French counterfactual) applies to both.
Cross-linguistic fragment verification #
Bridge theorems connecting the morphological data (§9) to the actual fragment entries, verifying that the linguistic analysis is reflected in the formal lexical entries.
mesthi is strong necessity in the Javanese fragment.
mesthi-ne is weak necessity — NE shifts strong to weak.
The NE morpheme shifts force: mesthi and mesthi-ne share epistemic flavor but differ in force.
iso (possibility) has NO -ne form: *iso-ne is ungrammatical. Verified by checking that no weak-possibility expression exists.
kudu strong → kudu-ne weak, paralleling mesthi → mesthi-ne.
French devoir is strong necessity; devrais (devoir+CF) is weak.
Devrais preserves devoir's flavor polysemy: both are epistemic/deontic/circumstantial.