Documentation

Linglib.Phenomena.Reference.Studies.SchlotterbeckWang2023

@cite{schlotterbeck-wang-2023} — Incremental RSA for Adjective Ordering (sanity-check slice) #

@cite{cohn-gordon-goodman-potts-2019} @cite{degen-etal-2020} @cite{waldon-degen-2021}

Schlotterbeck, F. & Wang, H. (2023). An incremental RSA model for adjective ordering preferences in referential visual context. Proceedings of the Society for Computation in Linguistics (SCiL) 6, 121–132.

SCOPE WARNING. This file formalizes the symmetric-PoE sanity-check slice of S&W 2023, not their main asymmetric model. The paper documents (page 6) that with symmetric per-class continuous semantics the incremental listener's order-independence holds as a sanity check; their predictive results come from the asymmetric semantics + sequence speaker that this file does not formalize.

What this file does formalize: the order-independence headline at the listener level, plus discrimination-driven ordering preferences at the speaker level using linglib's trajectoryProb (chain-rule product of per-step normalized softmaxes). Note that linglib's trajectoryProb is not literally S&W's S1^inc (which accumulates utilities with a single global normalization rather than per-step softmaxes); see Composition.trajectoryProb_eq_compose_chain for the deferred A≡C equivalence statement.

What this file does not formalize:

The model (formalized slice) #

The incremental sequence speaker S1^inc produces adjective–noun sequences word-by-word. With β = 1, no cost, and uniform language prior, the trajectory score reduces to a per-prefix product of literal-listener posteriors:

S1^inc(w₁,...,wₙ | r) ∝ ∏ₖ L0(r | w₁,...,wₖ)

The L0 meaning is the Product-of-Experts noisy semantics (@cite{degen-etal-2020}): each word contributes an independent ℚ-valued factor lex(w, r), and the prefix meaning is their product. With strictly positive lex, the product commutes (RSA.prefixMeaning_perm), so the full-sequence L0 posterior is order-independent.

Substrate use #

This file plugs RSA.NoisyLex (Theories/Pragmatics/RSA/Noisy.lean) into RSAConfig's sequential machinery. Each scene becomes a NoisyLex value plus a scene predicate; NoisyLex.toRSAConfigSeq produces the incremental RSAConfig. The PoE prefix-product order-independence lemmas live in RSA.Sequential and are inherited (no per-study reproof).

Variable-name note (α vs β) #

S&W's α is the utterance-level speaker softmax temperature (Table 1 row 6, varied 5/1/1 across Fig. 3a–c); their β is the utility/word-level speaker temperature (Table 1 row 7, set to 1 in all reported simulations). This file's RSAConfig.α field corresponds to S&W's β = 1. The α-field-name in the substrate predates S&W and is not renamed here.

Findings #

#FindingTheorem
1Prefix meaning is order-independentprefix_meaning_swap
2Size-discriminatory scene → size-first preferredsize_first_when_size_discriminates
3Equal discrimination + reliable color → color-firstcolor_first_when_color_reliable
4Both orderings identify the target (Scene A)both_orderings_identify_target_A
5Both orderings identify the target (Scene B)both_orderings_identify_target_B

Referents in the reference game.

Instances For
    @[implicit_reducible]
    Equations
    @[implicit_reducible]
    Equations
    • One or more equations did not get rendered due to their size.
    Equations
    • One or more equations did not get rendered due to their size.
    Instances For

      Words available to the speaker: size adjectives, color adjectives, noun.

      Instances For
        @[implicit_reducible]
        Equations
        @[implicit_reducible]
        Equations
        • One or more equations did not get rendered due to their size.
        def SchlotterbeckWang2023.instReprWord.repr :
        WordStd.Format
        Equations
        • One or more equations did not get rendered due to their size.
        Instances For
          def SchlotterbeckWang2023.lexQ (sRel cRel : ) (w : Word) (r : Referent) :

          Noisy word meaning: returns reliability if the word truly applies, 1 − reliability (noise floor) otherwise. Bernoulli-channel form of @cite{degen-etal-2020}'s continuous semantics.

          Equations
          • One or more equations did not get rendered due to their size.
          Instances For
            def SchlotterbeckWang2023.noisyLex (sRel cRel : ) (hs0 : 0 sRel) (hs1 : sRel 1) (hc0 : 0 cRel) (hc1 : cRel 1) :

            Bundle of noisy lex parameters for the study, packaged as a NoisyLex. Hypotheses are split into separate lower- and upper-bound arguments per mathlib idiom (no destructuring at call sites).

            Equations
            • One or more equations did not get rendered due to their size.
            Instances For

              Scene B: Equal-discrimination scene with color more reliable. Objects: {big-blue, big-green, small-blue, small-green}. Target: big-blue. Both "big" and "blue" narrow to 2/4 referents.

              Equations
              Instances For

                Scene A config: sizeRel = 99/100, colorRel = 95/100.

                Equations
                • One or more equations did not get rendered due to their size.
                Instances For

                  Scene B config: sizeRel = 80/100, colorRel = 95/100.

                  Equations
                  • One or more equations did not get rendered due to their size.
                  Instances For
                    theorem SchlotterbeckWang2023.prefix_meaning_swap (sRel cRel : ) (hs0 : 0 sRel) (hs1 : sRel 1) (hc0 : 0 cRel) (hc1 : cRel 1) (a b : Word) (r : Referent) :
                    (noisyLex sRel cRel hs0 hs1 hc0 hc1).prefixMeaning [a, b] r = (noisyLex sRel cRel hs0 hs1 hc0 hc1).prefixMeaning [b, a] r

                    Two-word prefix meaning is order-independent. Direct corollary of RSA.prefixMeaning_swap: ℚ-product commutativity over a list of per-word noisy lex values.

                    theorem SchlotterbeckWang2023.prefix_meaning_swap_head (sRel cRel : ) (hs0 : 0 sRel) (hs1 : sRel 1) (hc0 : 0 cRel) (hc1 : cRel 1) (a b : Word) (rest : List Word) (r : Referent) :
                    (noisyLex sRel cRel hs0 hs1 hc0 hc1).prefixMeaning (a :: b :: rest) r = (noisyLex sRel cRel hs0 hs1 hc0 hc1).prefixMeaning (b :: a :: rest) r

                    Swap of the first two words in any-length prefix. Direct corollary of RSA.prefixMeaning_swap_head (the generalized head-swap lemma).

                    theorem SchlotterbeckWang2023.prefix_meaning_product (sRel cRel : ) (hs0 : 0 sRel) (hs1 : sRel 1) (hc0 : 0 cRel) (hc1 : cRel 1) (a b : Word) (r : Referent) :
                    (noisyLex sRel cRel hs0 hs1 hc0 hc1).prefixMeaning [a, b] r = lexQ sRel cRel a r * lexQ sRel cRel b r

                    Two-word prefix meaning decomposes as a product of per-word noisy meanings (the Product-of-Experts structure of @cite{degen-etal-2020}).

                    Finding: When size has high discriminatory power (Scene A), S1^inc prefers size-first ordering.

                    Finding: When both properties discriminate equally but color is more reliable (Scene B), S1^inc prefers color-first ordering.

                    The ordering preference flips between scenes: Scene A prefers size-first, Scene B prefers color-first. The preferred ordering depends on the discriminatory structure of the scene, not a fixed ordering rule.

                    In Scene A, "big" is more informative than "blue" about the target.

                    In Scene B, "blue" is more informative than "big" about the target.

                    theorem SchlotterbeckWang2023.both_orderings_identify_target_A (r : Referent) :
                    sceneAMembers r = truer target(noisyLex (99 / 100) (95 / 100) ).prefixMeaning [Word.big, Word.blue] target > (noisyLex (99 / 100) (95 / 100) ).prefixMeaning [Word.big, Word.blue] r

                    After hearing both adjectives, the meaning function assigns highest value to the target among Scene A members.

                    theorem SchlotterbeckWang2023.both_orderings_identify_target_B (r : Referent) :
                    sceneBMembers r = truer target(noisyLex (80 / 100) (95 / 100) ).prefixMeaning [Word.big, Word.blue] target > (noisyLex (80 / 100) (95 / 100) ).prefixMeaning [Word.big, Word.blue] r

                    After hearing both adjectives, the meaning function assigns highest value to the target among Scene B members.

                    theorem SchlotterbeckWang2023.lexQ_as_noiseChannel (sRel cRel : ) (w : Word) (r : Referent) :
                    lexQ sRel cRel w r = RSA.Noise.noiseChannel (reliabilityQ sRel cRel w) (1 - reliabilityQ sRel cRel w) (if wordApplies w r = true then 1 else 0)

                    lexQ is an instance of the unified noise channel from RSA.Noise: onMatch = reliabilityQ, onMismatch = 1 − reliabilityQ. Connects @cite{schlotterbeck-wang-2023} to the @cite{degen-etal-2020} parameterization where mismatch = 1 − match.