Documentation

Linglib.Studies.PottsEtAl2016

[PLLF16]: Embedded Implicatures as Pragmatic Inferences #

[PLLF16] [CS11]

"Embedded Implicatures as Pragmatic Inferences under Compositional Lexical Uncertainty." Journal of Semantics 33(4): 755–802.

Empirical anchor: [CS11] #

The 3-players × 3-outcomes architecture is structurally the same as CS11's every/exactly one/no × some/all design (CS11 uses 6 letters × 3 cell-states for Exp 1, 3 letters for Exp 2). The LU model's predictions — DE prefers weak lexicon (NNN reading), UE prefers strong (SSS embedded SI) — match CS11's qualitative findings: STRONG > WEAK in universal contexts (Exp 1) and LOCAL > FALSE in non-monotonic (Exp 2). The LU model is silent on the attitude-verb gradient that CS11 doesn't test (think > want > all > must, from [GP09]).

The Puzzle #

Scalar implicatures interact asymmetrically with logical operators:

The Model: Compositional Lexical Uncertainty #

The key innovation is lexical uncertainty: L1 marginalizes over possible lexica (refinements of "some") rather than using a fixed literal semantics. This file formalizes the paper's neo-Gricean refinement model variant (their (19d), refining only "some" to the two-element set {⟦some⟧, ⟦some and not all⟧} of (14)) — not their unconstrained-refinement model (19c), whose listener marginalizes over the full refinement lattice ℘(⟦some⟧) ∖ ∅. The two refinements are:

The PMF stack mirrors [GS13]'s latent-uncertainty model on mathlib PMF, with Latent := Lexicon:

Architecture #

The experiment (Section 6) uses 3 players, each with outcome N (nothing) / S (scored but not aced) / A (aced). The 10 equivalence classes are the multisets of 3 outcomes. Utterances are PlayerQ × ShotQ (outer × inner quantifier): "every/exactly one/no player hit all/none/some of his shots."

Predictions #

The asymmetry arises from monotonicity:

Domain types #

World state as equivalence class over 3 players' outcomes. Each player's outcome: N (nothing), S (scored but not aced), A (aced). 10 classes = multisets of size 3 from {N, S, A}.

Instances For
    @[implicit_reducible]
    Equations
    def PottsEtAl2016.instReprWorld.repr :
    WorldStd.Format
    Equations
    Instances For
      @[implicit_reducible]
      Equations

      Inner quantifier: over a player's shots.

      Instances For
        @[implicit_reducible]
        Equations
        def PottsEtAl2016.instReprShotQ.repr :
        ShotQStd.Format
        Equations
        Instances For
          @[implicit_reducible]
          Equations

          Outer quantifier: over players.

          Instances For
            @[implicit_reducible]
            Equations
            def PottsEtAl2016.instReprPlayerQ.repr :
            PlayerQStd.Format
            Equations
            Instances For
              @[reducible, inline]

              Statement: outer quantifier × inner quantifier.

              Equations
              Instances For
                @[reducible, inline]

                Utterance: a statement, or silence (none) — the null utterance, true at every world.

                Equations
                Instances For

                  Lexicon: how "some" is interpreted.

                  Instances For
                    @[implicit_reducible]
                    Equations
                    def PottsEtAl2016.instReprLexicon.repr :
                    LexiconStd.Format
                    Equations
                    • One or more equations did not get rendered due to their size.
                    Instances For

                      World count functions #

                      Truth conditions (lexicon-parameterized) #

                      def PottsEtAl2016.predCount (sq : ShotQ) (lex : Lexicon) (w : World) :

                      Count of players satisfying the inner predicate, under a given lexicon.

                      • all: number who aced
                      • none_: number who did nothing
                      • some_: depends on lexicon:
                        • weak: number who scored (≥ 1 shot)
                        • strong: number who scored but did not ace
                      Equations
                      Instances For
                        def PottsEtAl2016.stmtTruth (lex : Lexicon) :
                        StmtWorldBool

                        Truth value of a statement in a world under a lexicon.

                        Equations
                        Instances For

                          Truth value of an utterance under a lexicon: stmtTruth with silence true at every world.

                          Equations
                          Instances For

                            Structural properties #

                            The lexicon affects only "some"; "all" and "none" are unambiguous. The DE/UE asymmetry is a widening vs. narrowing fact about the strong lexicon's extension under each outer quantifier.

                            Lexica agree on all "all"-utterances; the lexicon only refines "some".

                            Lexica agree on all "none"-utterances.

                            DE context: strong "some" widens the set of true worlds relative to weak. Under "no player hit some of his shots":

                            • Weak "some": only NNN satisfies (1 world)
                            • Strong "some": NNN, NNA, NAA, AAA satisfy (4 worlds) Widening makes the utterance less informative under the strong lexicon.

                            UE context: strong "some" narrows the set of true worlds relative to weak. Under "every player hit some of his shots":

                            • Weak "some": SSS, SSA, SAA, AAA satisfy (4 worlds)
                            • Strong "some": only SSS satisfies (1 world) Narrowing makes the utterance more informative under the strong lexicon.

                            Literal listener L0 #

                            Per-lexicon literal listener via RSA.L0OfBoolMeaning: uniform on the extension of the (lexicon-parameterised) meaning function. Every utterance has a non-empty extension (every quantifier is true at some world, and null is true everywhere), so the Nonempty precondition is universal.

                            Every (lexicon, utterance) has a non-empty extension.

                            noncomputable def PottsEtAl2016.L0 (lex : Lexicon) (u : Utterance) :
                            PMF World

                            Per-lexicon literal listener: uniform on the extension.

                            Equations
                            Instances For
                              theorem PottsEtAl2016.L0_apply (lex : Lexicon) (u : Utterance) (w : World) :
                              (L0 lex u) w = if utteranceTruth lex u w = true then ENNReal.ofReal (↑(RSA.extensionOf (utteranceTruth lex) u).card)⁻¹ else 0

                              Closed-form L0 value: ENNReal.ofReal (1 / |extension|) at true worlds, 0 otherwise. The pmf_eval_simps-friendly if-form.

                              theorem PottsEtAl2016.L0_null (lex : Lexicon) (w : World) :
                              (L0 lex none) w = ENNReal.ofReal 10⁻¹

                              L0 lex none w = ofReal (1/10): silence is true at every world, so its extension is all 10 worlds. Used to discharge the speaker normaliser's positivity hypothesis.

                              theorem PottsEtAl2016.Utterance_sum_univ {β : Type u_1} [AddCommMonoid β] (f : Utteranceβ) :
                              i : Utterance, f i = f none + (f (some (PlayerQ.every, ShotQ.all)) + (f (some (PlayerQ.every, ShotQ.none_)) + (f (some (PlayerQ.every, ShotQ.some_)) + (f (some (PlayerQ.exactlyOne, ShotQ.all)) + (f (some (PlayerQ.exactlyOne, ShotQ.none_)) + (f (some (PlayerQ.exactlyOne, ShotQ.some_)) + (f (some (PlayerQ.no, ShotQ.all)) + (f (some (PlayerQ.no, ShotQ.none_)) + (f (some (PlayerQ.no, ShotQ.some_)) + 0)))))))))

                              Sum-over-Utterance unfolder (silence + the 9 statements), proved by rfl. Local-tagged for pmf_eval_simps so partition sums reduce to a concrete 10-term sum.

                              Extension cardinalities #

                              Per-(lexicon, utterance) extension sizes, decide-checked and locally tagged for pmf_eval_simps so L0_apply reduces to concrete ofReal((c)⁻¹) values. The local tag keeps these private paper-specific cards out of the substrate simp set (audit hygiene rule, following GoodmanStuhlmuller2013).

                              Speaker normaliser Z #

                              S1Belief with α = 1 and unit cost has score (L0 u w)^1 · 1 = L0 u w, so the partition function is Z lex w = ∑' u, L0 lex u w. Each value is ofReal of a rational; the closed forms below are computed by simp +decide only [pmf_eval_simps, ...] (reducing to a sum of concrete ofReal (c⁻¹) terms) followed by explicit ENNReal.ofReal_add folding and norm_num.

                              theorem PottsEtAl2016.score_eq (lex : Lexicon) (w : World) (u : Utterance) :
                              (L0 lex u) w ^ 1 * 1 = (L0 lex u) w

                              With α = 1 and unit cost, the speaker score is just L0 lex u w.

                              noncomputable def PottsEtAl2016.Z (lex : Lexicon) (w : World) :
                              ENNReal

                              The S1Belief normaliser at (lexicon, world).

                              Equations
                              Instances For
                                theorem PottsEtAl2016.Z_eq_sum (lex : Lexicon) (w : World) :
                                Z lex w = ∑' (u : Utterance), (L0 lex u) w
                                theorem PottsEtAl2016.Z_ne_top (lex : Lexicon) (w : World) :
                                Z lex w
                                theorem PottsEtAl2016.Z_ne_zero (lex : Lexicon) (w : World) :
                                ∑' (u : Utterance), (L0 lex u) w ^ 1 * 1 0

                                The speaker normaliser is non-zero: null is true everywhere, contributing ofReal (1/10) ≠ 0.

                                Per-lexicon speaker S1 #

                                RSA.S1Belief (L0 lex) (fun _ => 1) 1 w: normalises L0 lex u w over utterances at the fixed world w. The closed-form values are ofReal (L0-value · Z⁻¹).

                                noncomputable def PottsEtAl2016.S1 (lex : Lexicon) (w : World) :

                                Per-lexicon speaker (α = 1, no cost).

                                Equations
                                Instances For
                                  theorem PottsEtAl2016.S1_apply (lex : Lexicon) (w : World) (u : Utterance) :
                                  (S1 lex w) u = (L0 lex u) w ^ 1 * 1 * (Z lex w)⁻¹

                                  Marginal speaker over lexica #

                                  RSA.marginalizeKernel against the uniform Lexicon prior. Over the 2-element Lexicon, marginalSpeaker w u = (1/2)·S1 weak w u + (1/2)·S1 strong w u.

                                  noncomputable def PottsEtAl2016.marginalSpeaker (w : World) :

                                  Marginal speaker: marginalises S1 over a uniform Lexicon prior.

                                  Equations
                                  Instances For
                                    theorem PottsEtAl2016.marginalSpeaker_apply (w : World) (u : Utterance) :
                                    (marginalSpeaker w) u = ENNReal.ofReal (1 / 2) * (S1 Lexicon.weak w) u + (ENNReal.ofReal (1 / 2) * (S1 Lexicon.strong w) u + 0)

                                    Marginal speaker as the explicit (1/2, 1/2)-weighted lexicon mixture.

                                    Marginal-speaker closed forms (per prediction cell) #

                                    The 8 cells the predictions compare, each ofReal of a rational. DE worlds under "no … some"; UE worlds under "every … some". Values match the LU model's hand-computation (α = 1, uniform priors).

                                    Pragmatic listener L1 #

                                    PMF.posterior marginalSpeaker (uniform World) u. The marginal positivity hypotheses are discharged via PMF.marginal_ne_zero with the target world as witness (marginalSpeaker w u ≠ 0 for the relevant (w, u)).

                                    noncomputable def PottsEtAl2016.L1 (u : Utterance) (h : PMF.marginal marginalSpeaker (PMF.uniformOfFintype World) u 0) :
                                    PMF World

                                    Pragmatic listener: Bayesian inversion of marginalSpeaker against the uniform world prior.

                                    Equations
                                    Instances For

                                      Predictions: DE blocking #

                                      "No player hit some of his shots" → NNN preferred.

                                      Under the weak lexicon, only NNN makes the utterance true (1 world, maximally informative). Under the strong lexicon, NNN, NNA, NAA, and AAA all make it true (4 worlds, less informative). L1 marginalizes over lexica weighted by informativity, preferring the weak lexicon for this utterance. Result: NNN receives the highest posterior — the global reading.

                                      Predictions: UE enrichment #

                                      "Every player hit some of his shots" → SSS preferred.

                                      Under the strong lexicon, only SSS makes the utterance true (1 world, maximally informative). Under the weak lexicon, SSS, SSA, SAA, and AAA all make it true (4 worlds, less informative). L1 marginalizes and prefers the informative strong lexicon for this utterance. Result: SSS receives the highest posterior — the embedded implicature.

                                      Grounding: outer quantifiers #

                                      The outer quantifiers "every" and "no" in the [PLLF16] model agree with the shared quantifier semantics Alternatives.Quantifiers.worldMeaning. This grounds the stipulated utteranceTruth in the shared quantifier infrastructure.

                                      Compare GoodmanStuhlmuller2013's qMeaning, an independent implementation of the same count-threshold semantics.

                                      "Every player hit X" ↔ worldMeaning 3 .all applied to predCount.

                                      "No player hit X" ↔ worldMeaning 3 .none_ applied to predCount.

                                      Cross-study connections #

                                      The [PLLF16] predictions connect to two other parts of linglib:

                                      1. Geurts2010 (ScalarImplicatures.Studies.Geurts2010): Notes that the minimal LU model inverts the predictions, but "the full Potts et al. model derives the correct pattern." The theorems here are the formal backing.

                                      2. EmbeddedSIPrediction (LexicalUncertainty.Compositional): Tracks embedded SI predictions by context type. The Potts model demonstrates the negation case: local reading dispreferred in DE (global NNN preferred).