[FB20b] — GI-RSA for Nested Aristotelians #
"Theory-driven statistical modeling for semantics and pragmatics: A case study on grammatically generated implicature readings"
The Model #
Domain: Nested Aristotelian sentences "Q₁ of the aliens drank Q₂ of their water" with Q₁, Q₂ ∈ {none, some, all}. 7 world states based on which alien types exist (none-drinkers, some-drinkers, all-drinkers). 8 grammatical parses (subsets of {M, O, I} EXH positions) as latent variables.
The Global Intentions (GI) model treats the parse as a latent variable: the speaker chooses both an utterance and a parse, the listener marginalizes over parses to recover the world state.
- L0: L0(w|u,g) ∝ ⟦u⟧ᵍ(w) (meaning under parse g)
- S1: S1(u,g|w) ∝ L0(w|u,g)^α · P(g)
- L1: L1(w|u) ∝ P(w) · Σ_g S1(u,g|w)
Exhaustification uses compositional enrichment at inner/outer quantifier positions: Exh(Q) conjoins Q with the negation of all strictly stronger lexical alternatives on the {some, all} scale ([Fox07]). Only Exh(some) = "some but not all" is non-vacuous; Exh(all) and Exh(none) have no strictly stronger alternative.
At matrix position, EXH uses exh_MW (eq. A2): negate the LITERAL meanings of sentential alternatives that are strictly stronger than the sub-matrix enriched meaning, with a noncontradictory fallback. Sentential alternatives are the cross-product of scale-mate substitutions ({some, all}) for each on-scale quantifier. "none" is treated as off-scale; the paper notes (fn. 7) that including "not all" as an alternative to "none" has negligible effect on predictions.
Parameters: α = 2 (modeling choice; the paper estimates α jointly with cost and error parameters, reporting MLE ≈ 1.3 for GI), uniform priors. The paper's cost term c(u) for "none"-initial utterances and error term ε are omitted; the qualitative predictions below are robust to these simplifications.
Qualitative Findings #
| # | Finding | Theorem |
|---|---|---|
| 1 | SS exhaustifies inner Q | ss_inner_exh |
| 2 | SS exhaustifies outer Q | ss_outer_exh |
| 3 | AA identifies unique world | aa_identifies |
| 4 | AS exhaustifies inner Q | as_inner_exh |
| 5 | Full EXH preferred for SS | ss_parse_pref |
| 6 | Vanilla gets SS wrong (prefers wNA) | vanilla_ss_prefers_wNA |
| 7 | GI gets SS right (prefers wNS) | gi_ss_prefers_wNS |
| 8 | LU gets SS→wNS right | lu_ss_prefers_wNS |
| 9 | LI derives outer exh for SS | li_ss_outer_exh |
| 10 | LI also gets SS→wNS right | li_ss_prefers_wNS |
Model Comparison #
All four models share one per-parse speaker S(w, p) (the softmax at
exponent α = 2 of the parse-p literal listener), because the speaker at a
(world, parse) state depends only on that parse's Boolean meaning. They differ
only in the latent space the pragmatic listener marginalises over — a joint
PMF (World × Latent) posterior (RSA.Canonical.L1) with a uniform prior:
- Vanilla (§3.1): latent
Unit— literal parse only (S(·, .none)) - LU (§3.2): latent
LULex(2 lexica) — simplified to L1 (the paper adds an S2/L2 layer following [PLLF16]; our L1-only approximation suffices for qualitative predictions) - LI (§3.3): latent
LIParse(4 parses) — speaker chooses parse - GI (§3.4): latent
Parse(8 parses) — full parse space
The listener predictions are decided by exact PMF evaluation: each speaker
mass S(w, p) u is a rational ENNReal.ofReal value (s_* lemmas below),
and each theorem reduces via RSA.Canonical.L1_world_prefers_iff (or
_latent_prefers_iff) to a comparison of pooled speaker sums over the latent.
Bayesian model comparison: GI achieves 0.956 posterior probability, LI = 0.033, LU = 0.010, vanilla = 0.
Aristotelian quantifiers: none, some, all.
- none : AristQuant
- some_ : AristQuant
- all : AristQuant
Instances For
Equations
- FrankeBergen2020.instDecidableEqAristQuant x✝ y✝ = if h : x✝.ctorIdx = y✝.ctorIdx then isTrue ⋯ else isFalse ⋯
Equations
- FrankeBergen2020.instReprAristQuant = { reprPrec := FrankeBergen2020.instReprAristQuant.repr }
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.
The 7 world states, distinguished by which alien types exist. Three types: N (drank none), S (drank some but not all), A (drank all). Worlds are the 7 non-empty subsets of {N, S, A}.
Instances For
Equations
- FrankeBergen2020.instDecidableEqWorld x✝ y✝ = if h : x✝.ctorIdx = y✝.ctorIdx then isTrue ⋯ else isFalse ⋯
Equations
- FrankeBergen2020.instReprWorld = { reprPrec := FrankeBergen2020.instReprWorld.repr }
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.
Equations
- FrankeBergen2020.instDecidableEqUtterance 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
- FrankeBergen2020.instReprUtterance = { reprPrec := FrankeBergen2020.instReprUtterance.repr }
Equations
Equations
- One or more equations did not get rendered due to their size.
Equations
- FrankeBergen2020.instDecidableEqParse x✝ y✝ = if h : x✝.ctorIdx = y✝.ctorIdx then isTrue ⋯ else isFalse ⋯
Equations
- FrankeBergen2020.instReprParse = { reprPrec := FrankeBergen2020.instReprParse.repr }
Equations
- One or more equations did not get rendered due to their size.
- FrankeBergen2020.instReprParse.repr FrankeBergen2020.Parse.m prec✝ = Repr.addAppParen (Std.Format.nest (if prec✝ ≥ 1024 then 1 else 2) (Std.Format.text "FrankeBergen2020.Parse.m")).group prec✝
- FrankeBergen2020.instReprParse.repr FrankeBergen2020.Parse.o prec✝ = Repr.addAppParen (Std.Format.nest (if prec✝ ≥ 1024 then 1 else 2) (Std.Format.text "FrankeBergen2020.Parse.o")).group prec✝
- FrankeBergen2020.instReprParse.repr FrankeBergen2020.Parse.i prec✝ = Repr.addAppParen (Std.Format.nest (if prec✝ ≥ 1024 then 1 else 2) (Std.Format.text "FrankeBergen2020.Parse.i")).group prec✝
Instances For
Equations
Equations
- One or more equations did not get rendered due to their size.
Whether N-type aliens (drank none) exist.
Equations
- FrankeBergen2020.World.wN.hasN = true
- FrankeBergen2020.World.wNS.hasN = true
- FrankeBergen2020.World.wNA.hasN = true
- FrankeBergen2020.World.wNSA.hasN = true
- x✝.hasN = false
Instances For
Whether S-type aliens (drank some but not all) exist.
Equations
- FrankeBergen2020.World.wS.hasS = true
- FrankeBergen2020.World.wNS.hasS = true
- FrankeBergen2020.World.wSA.hasS = true
- FrankeBergen2020.World.wNSA.hasS = true
- x✝.hasS = false
Instances For
Whether A-type aliens (drank all) exist.
Equations
- FrankeBergen2020.World.wA.hasA = true
- FrankeBergen2020.World.wNA.hasA = true
- FrankeBergen2020.World.wSA.hasA = true
- FrankeBergen2020.World.wNSA.hasA = true
- x✝.hasA = false
Instances For
Outer quantifier of an utterance.
Equations
- FrankeBergen2020.Utterance.nn.outer = FrankeBergen2020.AristQuant.none
- FrankeBergen2020.Utterance.ns.outer = FrankeBergen2020.AristQuant.none
- FrankeBergen2020.Utterance.na.outer = FrankeBergen2020.AristQuant.none
- FrankeBergen2020.Utterance.sn.outer = FrankeBergen2020.AristQuant.some_
- FrankeBergen2020.Utterance.ss.outer = FrankeBergen2020.AristQuant.some_
- FrankeBergen2020.Utterance.sa.outer = FrankeBergen2020.AristQuant.some_
- FrankeBergen2020.Utterance.an.outer = FrankeBergen2020.AristQuant.all
- FrankeBergen2020.Utterance.as_.outer = FrankeBergen2020.AristQuant.all
- FrankeBergen2020.Utterance.aa.outer = FrankeBergen2020.AristQuant.all
Instances For
Inner quantifier of an utterance.
Equations
- FrankeBergen2020.Utterance.nn.inner = FrankeBergen2020.AristQuant.none
- FrankeBergen2020.Utterance.sn.inner = FrankeBergen2020.AristQuant.none
- FrankeBergen2020.Utterance.an.inner = FrankeBergen2020.AristQuant.none
- FrankeBergen2020.Utterance.ns.inner = FrankeBergen2020.AristQuant.some_
- FrankeBergen2020.Utterance.ss.inner = FrankeBergen2020.AristQuant.some_
- FrankeBergen2020.Utterance.as_.inner = FrankeBergen2020.AristQuant.some_
- FrankeBergen2020.Utterance.na.inner = FrankeBergen2020.AristQuant.all
- FrankeBergen2020.Utterance.sa.inner = FrankeBergen2020.AristQuant.all
- FrankeBergen2020.Utterance.aa.inner = FrankeBergen2020.AristQuant.all
Instances For
Construct an utterance from outer × inner quantifiers.
Equations
- FrankeBergen2020.Utterance.mk FrankeBergen2020.AristQuant.none FrankeBergen2020.AristQuant.none = FrankeBergen2020.Utterance.nn
- FrankeBergen2020.Utterance.mk FrankeBergen2020.AristQuant.none FrankeBergen2020.AristQuant.some_ = FrankeBergen2020.Utterance.ns
- FrankeBergen2020.Utterance.mk FrankeBergen2020.AristQuant.none FrankeBergen2020.AristQuant.all = FrankeBergen2020.Utterance.na
- FrankeBergen2020.Utterance.mk FrankeBergen2020.AristQuant.some_ FrankeBergen2020.AristQuant.none = FrankeBergen2020.Utterance.sn
- FrankeBergen2020.Utterance.mk FrankeBergen2020.AristQuant.some_ FrankeBergen2020.AristQuant.some_ = FrankeBergen2020.Utterance.ss
- FrankeBergen2020.Utterance.mk FrankeBergen2020.AristQuant.some_ FrankeBergen2020.AristQuant.all = FrankeBergen2020.Utterance.sa
- FrankeBergen2020.Utterance.mk FrankeBergen2020.AristQuant.all FrankeBergen2020.AristQuant.none = FrankeBergen2020.Utterance.an
- FrankeBergen2020.Utterance.mk FrankeBergen2020.AristQuant.all FrankeBergen2020.AristQuant.some_ = FrankeBergen2020.Utterance.as_
- FrankeBergen2020.Utterance.mk FrankeBergen2020.AristQuant.all FrankeBergen2020.AristQuant.all = FrankeBergen2020.Utterance.aa
Instances For
Whether a quantifier is on the lexical scale {some, all}.
Equations
Instances For
Whether parse includes EXH at inner position.
Equations
- FrankeBergen2020.Parse.i.hasI = true
- FrankeBergen2020.Parse.mi.hasI = true
- FrankeBergen2020.Parse.oi.hasI = true
- FrankeBergen2020.Parse.moi.hasI = true
- x✝.hasI = false
Instances For
Whether parse includes EXH at outer position.
Equations
- FrankeBergen2020.Parse.o.hasO = true
- FrankeBergen2020.Parse.mo.hasO = true
- FrankeBergen2020.Parse.oi.hasO = true
- FrankeBergen2020.Parse.moi.hasO = true
- x✝.hasO = false
Instances For
Whether parse includes EXH at matrix position.
Equations
- FrankeBergen2020.Parse.m.hasM = true
- FrankeBergen2020.Parse.mo.hasM = true
- FrankeBergen2020.Parse.mi.hasM = true
- FrankeBergen2020.Parse.moi.hasM = true
- x✝.hasM = false
Instances For
Inner VP satisfaction: which alien types satisfy "drank Q"?
- Q = none: N-types satisfy (drank none of their water)
- Q = some: S-types and A-types satisfy (drank some)
- Q = all: only A-types satisfy (drank all)
Equations
- FrankeBergen2020.innerTypeSat FrankeBergen2020.AristQuant.none = (true, false, false)
- FrankeBergen2020.innerTypeSat FrankeBergen2020.AristQuant.some_ = (false, true, true)
- FrankeBergen2020.innerTypeSat FrankeBergen2020.AristQuant.all = (false, false, true)
Instances For
Outer quantifier evaluation: does the world satisfy "Q_outer of the
aliens [satisfy inner VP]"? nSat, sSat, aSat indicate which
alien types satisfy the inner VP.
Equations
- FrankeBergen2020.outerEval FrankeBergen2020.AristQuant.none nSat sSat aSat w = (!(w.hasN && nSat) && !(w.hasS && sSat) && !(w.hasA && aSat))
- FrankeBergen2020.outerEval FrankeBergen2020.AristQuant.some_ nSat sSat aSat w = (w.hasN && nSat || w.hasS && sSat || w.hasA && aSat)
- FrankeBergen2020.outerEval FrankeBergen2020.AristQuant.all nSat sSat aSat w = ((!w.hasN || nSat) && (!w.hasS || sSat) && (!w.hasA || aSat))
Instances For
Literal meaning: compose inner VP satisfaction with outer quantifier.
Equations
- FrankeBergen2020.literalMeaning u w = match FrankeBergen2020.innerTypeSat u.inner with | (nSat, sSat, aSat) => FrankeBergen2020.outerEval u.outer nSat sSat aSat w
Instances For
All 7 worlds for enumeration.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Inner VP satisfaction after EXH enrichment. Only "some" is enrichable: Exh(some) = "some but not all" — satisfied by S-types only (not A-types). Exh(none) and Exh(all) are vacuous (no strictly stronger alternative).
Equations
- FrankeBergen2020.enrichedInnerTypeSat qi hasI = if (hasI && qi == FrankeBergen2020.AristQuant.some_) = true then (false, true, false) else FrankeBergen2020.innerTypeSat qi
Instances For
The lexical scale: {some, all}.
Equations
Instances For
Sentential alternatives at matrix position: cross-product of scale-mate substitutions for each scalar item in the utterance. Non-scalar positions are held fixed.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Exhaustified meaning under a given parse, using compositional enrichment.
Inner/outer EXH enrich quantifiers in situ (at the quantifier level, not the sentence level), following the paper's Appendix. Only "some" → "some but not all" is a meaningful enrichment; Exh(all) and Exh(none) are vacuous (no strictly stronger lexical alternative on the scale).
Matrix EXH uses exh_MW with a strength filter: negate the LITERAL meanings of sentential alternatives that are strictly stronger than the enriched (sub-matrix) meaning. Fall back to no matrix EXH if the conjunction is contradictory (eq. A2).
Equations
- One or more equations did not get rendered due to their size.
Instances For
Literal SS is true at 6 of 7 worlds (all except wN).
EXH_I(SS) = worlds with S-types (compositional: "some aliens drank some but not all"). Inner EXH enriches "some" to "some but not all", so S-types satisfy the VP but A-types do not. The outer "some" requires at least one S-type, giving {wNS, wNSA, wS, wSA}.
EXH_OI(SS) = {wNS, wNSA, wSA} — outer "some but not all" alien types satisfy the enriched inner predicate. wS excluded because at wS all types (just S) satisfy the inner pred, so "all" would be true.
EXH_MOI(SS) = EXH_OI(SS) = {wNS, wNSA, wSA} — matrix EXH is vacuous here because no sentential alternative is strictly stronger than the OI-enriched meaning.
AA is true only at wA under all parses.
Full truth table for SS across key parses, matching Table 1 of the paper. Format: (parse, [wN, wNS, wNA, wNSA, wS, wSA, wA]).
Equations
- FrankeBergen2020.instDecidableEqLULex 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
- FrankeBergen2020.instReprLULex = { reprPrec := FrankeBergen2020.instReprLULex.repr }
Equations
Equations
- FrankeBergen2020.instFintypeLULex = { elems := {FrankeBergen2020.LULex.lit, FrankeBergen2020.LULex.oi}, complete := FrankeBergen2020.instFintypeLULex._proof_1 }
Map LU lexicon to the corresponding Parse.
Equations
Instances For
Equations
- FrankeBergen2020.instDecidableEqLIParse x✝ y✝ = if h : x✝.ctorIdx = y✝.ctorIdx then isTrue ⋯ else isFalse ⋯
Equations
- FrankeBergen2020.instReprLIParse = { reprPrec := FrankeBergen2020.instReprLIParse.repr }
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.
Map LI parse to the full Parse type.
Equations
Instances For
All four models share one speaker family S : World × Parse → PMF Utterance: the [FG12] softmax at exponent α = 2 of the
per-parse literal listener L0(· | u, p) (uniform on exhMeaning p u's
extension). The speaker at state (w, p) depends only on parse p's Boolean
meaning, so vanilla / LU / LI / GI differ only in the latent space their
pragmatic listener marginalises over. Built on the RSA.Canonical PMF
pipeline (powUtility/L0OfBool), so S = PMF.normalize (L0^2)
(RSA.Canonical.S1_powUtility_eq_normalize).
Every utterance is true at some world under every parse, so each per-parse
literal listener is well-defined (L0OfBool's nonempty-extension obligation).
The per-parse literal listener L0(· | u, p) : PMF World, uniform on the
extension of exhMeaning p u.
Equations
Instances For
Every (world, parse) state has an applicable (true) utterance — the
ViableSpeaker witness that makes the softmax speaker well-defined.
The shared pragmatic speaker S(w, p) ∝ L0(w | ·, p)^2 (α = 2, no cost).
Instances For
LU speaker: the shared speaker re-indexed by the 2-lexicon latent.
Equations
- FrankeBergen2020.luS s = FrankeBergen2020.S (s.1, s.2.toParse)
Instances For
LI speaker: the shared speaker re-indexed by the 4-parse latent.
Equations
- FrankeBergen2020.liS s = FrankeBergen2020.S (s.1, s.2.toParse)
Instances For
Vanilla speaker: the shared speaker at the literal parse only.
Equations
Instances For
Each speaker mass S(w, p) u is an exact rational: 0 when exhMeaning p u w is false, else |ext(p,u)|⁻² / Z(w,p) where Z(w,p) = Σ_u |ext(p,u)|⁻²
sums over utterances true at w. The pw_* lemmas give the unnormalised
weight L0^2; the Z_* lemmas the partition; the s_* lemmas the normalised
mass as ENNReal.ofReal q. Cards are certified by decide, arithmetic by
norm_num.
Unnormalised speaker weight at a true utterance: |ext(p,u)|⁻².
Unnormalised speaker weight at a false utterance: 0 (as ofReal 0, so
partition sums combine uniformly through ENNReal.ofReal_add).
Enumeration of the nine utterances (for partition sums).
Normalised speaker mass at a true utterance: |ext(p,u)|⁻² / Z(w,p), as an
exact ENNReal.ofReal rational. hZ supplies the partition Z(w,p).
Normalised speaker mass at a false utterance: 0.
S_zero in ofReal 0 form, so pooled parse sums combine uniformly.
The shared speaker never assigns zero mass to a true utterance — the witness for the pragmatic listener's marginal-nonzero obligations.
Partition Z(wNS, none) = 1/9 + 1/16 + 1/36 = 29/144 (SS-worlds: na, sn, ss).
S(wNS, none) ss = 4/29.
Pooled speaker sums for the remaining worlds #
AA is false at wSA under every parse, so its pooled speaker sum is 0.
Latent pooling over worlds (parse-preference) #
LU / LI pooling over the smaller latent spaces #
GI (§3.4): joint posterior over World × Parse (8 parses).
Equations
- FrankeBergen2020.giListener u h = RSA.Canonical.L1 FrankeBergen2020.S (PMF.uniformOfFintype (FrankeBergen2020.World × FrankeBergen2020.Parse)) u h
Instances For
LU (§3.2): joint posterior over World × LULex.
Equations
- FrankeBergen2020.luListener u h = RSA.Canonical.L1 FrankeBergen2020.luS (PMF.uniformOfFintype (FrankeBergen2020.World × FrankeBergen2020.LULex)) u h
Instances For
LI (§3.3): joint posterior over World × LIParse.
Equations
- FrankeBergen2020.liListener u h = RSA.Canonical.L1 FrankeBergen2020.liS (PMF.uniformOfFintype (FrankeBergen2020.World × FrankeBergen2020.LIParse)) u h
Instances For
Vanilla (§3.1): posterior over World for the single literal parse.
Equations
- FrankeBergen2020.vanillaListener u h = PMF.posterior FrankeBergen2020.vanillaS (PMF.uniformOfFintype FrankeBergen2020.World) u h
Instances For
Listener-preference reductions #
Each pragmatic listener's preference cancels the uniform joint prior, leaving a
comparison of pooled speaker sums over the model's latent space (L1_world_/ _latent_prefers_iff).
GI world preference reduces to the pooled speaker sum over the 8 parses.
GI parse preference reduces to the pooled speaker sum over the 7 worlds.
LU world preference reduces to the pooled speaker sum over the 2 lexica.
LI world preference reduces to the pooled speaker sum over the 4 parses.
Marginal-nonzero witnesses #
The ten qualitative findings #
SS exhaustifies inner quantifier: L1 prefers wNS (N and S types, no A) over wNSA (all three types including A). Inner EXH negates "some drank all", disfavoring worlds with A-type aliens.
SS exhaustifies outer quantifier: L1 prefers wNS (mixed N+S types) over wS (only S-type). At wS, "all aliens drank some but not all" would be true, but outer EXH negates the "all" reading.
AA correctly identifies the unique world where all aliens drank all: L1
prefers wA over wSA. AA is false at wSA under every parse (pooled sum 0),
while at wA the literal parse already makes it true.
AS exhaustifies inner: L1 prefers wS (all aliens are "some" drinkers) over wA (all aliens are "all" drinkers).
Full exhaustification is preferred: for SS, the GI parse marginal assigns more probability to the fully exhaustified parse (MOI) than to the literal parse (NONE).
Vanilla RSA hearing SS prefers wNA over wNS — the wrong prediction. Without exhaustification SS is literally true at 6/7 worlds, and the competing utterances make wNA "win" more of the S1 score. Production data show SS is used for wNS, evidence for grammatical enrichment.
GI correctly predicts the opposite: SS → wNS, not wNA. The exhaustified parses concentrate probability on worlds with S-types but not A-types.
LU also gets the key SS prediction right: wNS > wNA. The OI lexicon gives ⟦SS⟧^OI = {wNS, wNSA, wSA}, which excludes wNA, tipping the balance.
LI derives outer exhaustification for SS via the OI parse: ⟦SS⟧^OI = {wNS, wNSA, wSA} pins down worlds with mixed types (wNS > wS).
LI also gets the wNS > wNA ordering that vanilla misses.
NN is vacuously exhaustified: "none" is off-scale, so EXH at any position has no alternatives to exclude. All parses agree.
AN is maximally informative: all types must satisfy "drank none." Only wN (all N-types) works. All parses agree.
AA is maximally informative: all types must satisfy "drank all." Only wA works. All parses agree (already proved in aa_singleton).
NS lit = {wN}: "none drank some" requires no type to satisfy "drank some." S-types and A-types satisfy, so they must be absent. Only wN (all N-types) works.
SA: "some drank all" requires ≥1 A-type. EXH_I vacuous (inner=all). EXH_O enriches outer "some" to "some but not all," excluding wA (where all types are A → "all" would hold).
NA: "none drank all" requires no A-types. True at {wN, wNS, wS}. Matrix EXH negates the stronger alternative NS (= "none drank some" = {wN}), removing wN.
SN: "some drank none" requires ≥1 N-type. True at {wN, wNS, wNA, wNSA}. EXH_O enriches outer "some" to "some but not all," negating AN = {wN}. Matrix EXH gives the same result (M ⊆ O for SN).
AS: "all drank some" requires every type to satisfy "drank some." EXH_I enriches to "all drank [some but not all]" — only S-types satisfy, so only wS (all S-types) works. Matrix EXH without I negates AA, excluding wA (where "all drank all" holds).
Literal meaning equals exhaustified meaning under the empty parse.
⟦SS⟧^M = {wNS}: matrix EXH narrows SS to a single world. This is the paper's key finding (§6): the M reading "uniquely singles out this world state" (p. e86, eq. 22), giving GI its decisive advantage over LI and LU.
LI cannot access M-containing parses: none of {lit, I, O, OI} include matrix EXH. This excludes ⟦SS⟧^M from LI's parse space.
LU cannot access M-containing parses: neither lit nor OI include matrix EXH. This excludes ⟦SS⟧^M from LU's parse space.
The latent space grows across models: 1 → 2 → 4 → 8.
Connection to [PLLF16] #
The LU model here uses latent LULex (2 lexica: lit, OI), the same
latent-variable architecture as [PLLF16]'s weak/strong "some"
lexica. Both implement Bergen et al.'s lexical uncertainty via the pragmatic
listener's marginalisation over a latent lexicon — no special LUScenario
infrastructure needed. Our LU uses L1 only; the paper adds an S2/L2
layer (eqs. 14a-14b) for production predictions.
Connection to [CWS23] #
Cremers et al. test 9 model variants, including EXH-LU and RSA-LI, which
correspond to our LU and LI listeners (luListener, liListener). Their key
finding —
grammatical models (EXH-LU, RSA-LI) block anti-exhaustivity regardless
of prior bias — is consistent with our LU and LI predictions: both
correctly derive exhaustification for SS (lu_ss_prefers_wNS,
li_ss_outer_exh), concentrating probability on the exhaustified worlds.
Connection to [Fra11] #
The matrix EXH in exhMeaning uses exh_MW: conjoin the sub-matrix meaning
with the negation of all strictly stronger alternatives' literal meanings.
[Fra11] proves that IBR fixed points equal exh_MW for scalar
games (Franke2011.r1_eq_exhMW_under_totality). This grounds the matrix
position of our GI model in game-theoretic equilibrium semantics.
Connection to [Fox07] #
The exhaustification implementation uses compositional enrichment at inner/outer quantifier positions (scale-mate substitution on {some, all}) and MW-style sentential alternative negation at matrix position. The models differ only in which EXH positions are available to the speaker/listener, demonstrating that the key theoretical question is not HOW to exhaustify but WHERE EXH can be inserted and WHO controls the insertion (grammar vs. speaker vs. listener).
Why GI wins (§6) #
The decisive advantage of GI over LI and LU is the M parse:
m_ss_singleton proves ⟦SS⟧^M = {wNS}, and li_excludes_matrix /
lu_excludes_matrix prove that M-containing parses are structurally
unavailable to the smaller models. Only GI can access the reading that
uniquely identifies wNS, explaining its superior production predictions
for SS (Figure 5, Figure 7c).