Documentation

Studies.ZaslavskyHuLevy2021

Zaslavsky, Hu and Levy (2021): A Rate–Distortion View of Human Pragmatic Reasoning? #

Zaslavsky, Hu and Levy show that the Rational Speech Act recursion is an alternating maximization. A reference game has finitely many meanings and utterances, a prior over the meanings, a lexicon and a cost on the utterances. A speaker is a kernel from meanings to utterances and a listener a kernel back. The tradeoff of a speaker and a listener is the speaker's conditional entropy plus α times the expected utility, the listener's log-probability of the speaker's meaning less the cost of her utterance. Against a fixed listener the RSA speaker maximizes the tradeoff, and against a fixed speaker the Bayesian listener does, so the tradeoff never decreases along the recursion.

Main statements #

Implementation notes #

TODO #

References #

The two steps #

theorem ZaslavskyHuLevy2021.freeEnergy_le_freeEnergy_speaker {M : Type u_1} {U : Type u_2} [MeasurableSpace M] [MeasurableSpace U] [Fintype M] [Fintype U] [MeasurableSingletonClass M] [MeasurableSingletonClass U] (P : MeasureTheory.Measure M) (C : U → ℝ) [MeasureTheory.IsFiniteMeasure P] {α : ℝ} (hα : 0 ≤ α) (L : ProbabilityTheory.Kernel U M) [ProbabilityTheory.IsFiniteKernel L] (S : ProbabilityTheory.Kernel M U) [ProbabilityTheory.IsMarkovKernel S] (hS : ∀ (m : M), P {m} ≠ 0 → (S m).AbsolutelyContinuous ((RSA.speaker α C (⇑L) MeasureTheory.Measure.dirac) m)) :
RSA.freeEnergy P ProbabilityTheory.Kernel.id C α S L ≤ RSA.freeEnergy P ProbabilityTheory.Kernel.id C α (RSA.speaker α C (⇑L) MeasureTheory.Measure.dirac) L

Against a fixed listener the RSA speaker maximizes the tradeoff (7).

theorem ZaslavskyHuLevy2021.expectedUtility_le_listener {M : Type u_1} {U : Type u_2} [MeasurableSpace M] [MeasurableSpace U] [Fintype M] [Fintype U] [MeasurableSingletonClass M] [MeasurableSingletonClass U] (P : MeasureTheory.Measure M) (C : U → ℝ) [Nonempty M] [MeasureTheory.IsProbabilityMeasure P] (S : ProbabilityTheory.Kernel M U) [ProbabilityTheory.IsMarkovKernel S] (L : ProbabilityTheory.Kernel U M) [∀ (u : U), MeasureTheory.IsZeroOrProbabilityMeasure (L u)] (hL : ∀ (u : U), (P.bind ⇑S) {u} ≠ 0 → ((RSA.listener P ⇑S) u).AbsolutelyContinuous (L u)) :
RSA.expectedUtility P ProbabilityTheory.Kernel.id C S L ≤ RSA.expectedUtility P ProbabilityTheory.Kernel.id C S (RSA.listener P ⇑S)

Against a fixed speaker her Bayesian listener maximizes the expected utility (12).

theorem ZaslavskyHuLevy2021.freeEnergy_le_freeEnergy_listener {M : Type u_1} {U : Type u_2} [MeasurableSpace M] [MeasurableSpace U] [Fintype M] [Fintype U] [MeasurableSingletonClass M] [MeasurableSingletonClass U] (P : MeasureTheory.Measure M) (C : U → ℝ) (α : ℝ) [Nonempty M] [MeasureTheory.IsProbabilityMeasure P] (S : ProbabilityTheory.Kernel M U) [ProbabilityTheory.IsMarkovKernel S] (L : ProbabilityTheory.Kernel U M) [∀ (u : U), MeasureTheory.IsZeroOrProbabilityMeasure (L u)] (hL : ∀ (u : U), (P.bind ⇑S) {u} ≠ 0 → ((RSA.listener P ⇑S) u).AbsolutelyContinuous (L u)) (hα : 0 ≤ α) :
RSA.freeEnergy P ProbabilityTheory.Kernel.id C α S L ≤ RSA.freeEnergy P ProbabilityTheory.Kernel.id C α S (RSA.listener P ⇑S)

Against a fixed speaker her Bayesian listener maximizes the tradeoff (8).

The recursion #

noncomputable def ZaslavskyHuLevy2021.listener {M : Type u_1} {U : Type u_2} [MeasurableSpace M] [MeasurableSpace U] [Fintype M] [Fintype U] [MeasurableSingletonClass M] [MeasurableSingletonClass U] (P : MeasureTheory.Measure M) (C : U → ℝ) (α : ℝ) (l : U → M → ENNReal) :
ℕ → ProbabilityTheory.Kernel U M

The listeners of the recursion (3) start from the literal listener L₀(m | u) ∝ l(m, u) P(m), and each later one is the listener of the speaker (2) who answers the one before.

Equations
Instances For
    instance ZaslavskyHuLevy2021.instIsFiniteKernelListener {M : Type u_1} {U : Type u_2} [MeasurableSpace M] [MeasurableSpace U] [Fintype M] [Fintype U] [MeasurableSingletonClass M] [MeasurableSingletonClass U] (P : MeasureTheory.Measure M) (C : U → ℝ) (α : ℝ) (l : U → M → ENNReal) (t : ℕ) :
    ProbabilityTheory.IsFiniteKernel (listener P C α l t)
    instance ZaslavskyHuLevy2021.instIsZeroOrProbabilityMeasureCoeKernelMeasureListener {M : Type u_1} {U : Type u_2} [MeasurableSpace M] [MeasurableSpace U] [Fintype M] [Fintype U] [MeasurableSingletonClass M] [MeasurableSingletonClass U] (P : MeasureTheory.Measure M) (C : U → ℝ) (α : ℝ) (l : U → M → ENNReal) (t : ℕ) (u : U) :
    MeasureTheory.IsZeroOrProbabilityMeasure ((listener P C α l t) u)
    theorem ZaslavskyHuLevy2021.listener_apply_singleton_eq_zero {M : Type u_1} {U : Type u_2} [MeasurableSpace M] [MeasurableSpace U] [Fintype M] [Fintype U] [MeasurableSingletonClass M] [MeasurableSingletonClass U] {P : MeasureTheory.Measure M} {C : U → ℝ} {α : ℝ} {l : U → M → ENNReal} {u : U} {m : M} (hα : 0 < α) (h : l u m = 0) (t : ℕ) :
    ((listener P C α l t) u) {m} = 0

    The listeners of the recursion respect the lexicon. An utterance never leads the listener to a meaning it does not apply to.

    theorem ZaslavskyHuLevy2021.speaker_listener_apply_singleton_eq_zero {M : Type u_1} {U : Type u_2} [MeasurableSpace M] [MeasurableSpace U] [Fintype M] [Fintype U] [MeasurableSingletonClass M] [MeasurableSingletonClass U] {P : MeasureTheory.Measure M} {C : U → ℝ} {α : ℝ} {l : U → M → ENNReal} {u : U} {m : M} (hα : 0 < α) (h : l u m = 0) (t : ℕ) :
    ((RSA.speaker α C (⇑(listener P C α l t)) MeasureTheory.Measure.dirac) m) {u} = 0

    The speakers of the recursion respect the lexicon. No meaning is expressed by an utterance that does not apply to it.

    theorem ZaslavskyHuLevy2021.listener_apply_singleton_ne_zero {M : Type u_1} {U : Type u_2} [MeasurableSpace M] [MeasurableSpace U] [Fintype M] [Fintype U] [MeasurableSingletonClass M] [MeasurableSingletonClass U] {P : MeasureTheory.Measure M} {C : U → ℝ} {α : ℝ} {l : U → M → ENNReal} {u : U} {m : M} [MeasureTheory.IsFiniteMeasure P] (hP : ∀ (m : M), P {m} ≠ 0) (hl : ∀ (u : U) (m : M), l u m ≠ ⊤) (hα : 0 ≤ α) (h : l u m ≠ 0) (t : ℕ) :
    ((listener P C α l t) u) {m} ≠ 0

    No listener of the recursion rules out a meaning the utterance applies to.

    theorem ZaslavskyHuLevy2021.isMarkovKernel_speaker_listener {M : Type u_1} {U : Type u_2} [MeasurableSpace M] [MeasurableSpace U] [Fintype M] [Fintype U] [MeasurableSingletonClass M] [MeasurableSingletonClass U] {P : MeasureTheory.Measure M} {C : U → ℝ} {α : ℝ} {l : U → M → ENNReal} [MeasureTheory.IsFiniteMeasure P] (hP : ∀ (m : M), P {m} ≠ 0) (hl : ∀ (u : U) (m : M), l u m ≠ ⊤) (hα : 0 ≤ α) (hm : ∀ (m : M), ∃ (u : U), l u m ≠ 0) (t : ℕ) :
    ProbabilityTheory.IsMarkovKernel (RSA.speaker α C (⇑(listener P C α l t)) MeasureTheory.Measure.dirac)

    Every speaker of the recursion is a probability kernel when every meaning has an utterance that applies to it.

    theorem ZaslavskyHuLevy2021.freeEnergy_le_freeEnergy_speaker_succ {M : Type u_1} {U : Type u_2} [MeasurableSpace M] [MeasurableSpace U] [Fintype M] [Fintype U] [MeasurableSingletonClass M] [MeasurableSingletonClass U] {P : MeasureTheory.Measure M} {C : U → ℝ} {α : ℝ} {l : U → M → ENNReal} [MeasureTheory.IsProbabilityMeasure P] (hP : ∀ (m : M), P {m} ≠ 0) (hl : ∀ (u : U) (m : M), l u m ≠ ⊤) (hα : 0 ≤ α) (hm : ∀ (m : M), ∃ (u : U), l u m ≠ 0) (t : ℕ) :
    RSA.freeEnergy P ProbabilityTheory.Kernel.id C α (RSA.speaker α C (⇑(listener P C α l t)) MeasureTheory.Measure.dirac) (listener P C α l (t + 1)) ≤ RSA.freeEnergy P ProbabilityTheory.Kernel.id C α (RSA.speaker α C (⇑(listener P C α l (t + 1))) MeasureTheory.Measure.dirac) (listener P C α l (t + 1))

    Each speaker update raises the tradeoff, the second inequality of (9).

    theorem ZaslavskyHuLevy2021.freeEnergy_le_freeEnergy_listener_succ {M : Type u_1} {U : Type u_2} [MeasurableSpace M] [MeasurableSpace U] [Fintype M] [Fintype U] [MeasurableSingletonClass M] [MeasurableSingletonClass U] {P : MeasureTheory.Measure M} {C : U → ℝ} {α : ℝ} {l : U → M → ENNReal} [MeasureTheory.IsProbabilityMeasure P] (hP : ∀ (m : M), P {m} ≠ 0) (hl : ∀ (u : U) (m : M), l u m ≠ ⊤) (hα : 0 ≤ α) (hm : ∀ (m : M), ∃ (u : U), l u m ≠ 0) [Nonempty M] (t : ℕ) :
    RSA.freeEnergy P ProbabilityTheory.Kernel.id C α (RSA.speaker α C (⇑(listener P C α l t)) MeasureTheory.Measure.dirac) (listener P C α l t) ≤ RSA.freeEnergy P ProbabilityTheory.Kernel.id C α (RSA.speaker α C (⇑(listener P C α l t)) MeasureTheory.Measure.dirac) (listener P C α l (t + 1))

    Each listener update raises the tradeoff, the first inequality of (9).

    theorem ZaslavskyHuLevy2021.exists_tendsto_freeEnergy {M : Type u_1} {U : Type u_2} [MeasurableSpace M] [MeasurableSpace U] [Fintype M] [Fintype U] [MeasurableSingletonClass M] [MeasurableSingletonClass U] {P : MeasureTheory.Measure M} {C : U → ℝ} {α : ℝ} {l : U → M → ENNReal} [MeasureTheory.IsProbabilityMeasure P] (hP : ∀ (m : M), P {m} ≠ 0) (hl : ∀ (u : U) (m : M), l u m ≠ ⊤) (hα : 0 ≤ α) (hm : ∀ (m : M), ∃ (u : U), l u m ≠ 0) [Nonempty M] :
    ∃ (g : ℝ), Filter.Tendsto (fun (t : ℕ) => RSA.freeEnergy P ProbabilityTheory.Kernel.id C α (RSA.speaker α C (⇑(listener P C α l t)) MeasureTheory.Measure.dirac) (listener P C α l t)) Filter.atTop (nhds g)

    The tradeoff converges along the recursion, being monotone and bounded above.