Alternative-semantics focus interpretation #
Formalises [Roo92] over the example rows in
Data/Examples/Rooth1992.json and the formal theory in
Focus/Interpretation.lean (FIP, Q-A congruence), with a full
compositional derivational chain through Montague semantics and
connection to English fragment entries.
Pipeline #
Fragments/English/Nouns ──▷ Montague Lexicon ──▷ Tree
│
interp
│
▼
propositions (Set QAWorld)
│
set literals
│
▼
PropFocusValue = Set (Set QAWorld)
│
FIP / qaCongruent
│
▼
Bridge theorems ↔ Data
Model #
- Q-A congruence: 4 worlds crossing subject (Fred/Mary) × object (beans/rice). Subject focus matches "Who ate the beans?"; object focus does not.
- "Only" association: 3 worlds for who Mary introduced to Sue.
What's exercised #
AltMeaning,AltMeaning.unfeatured— O/A-value computation (§3)Focus,Background— focus/background partition (§4)Theme,Rheme,InfoStructure— information structure analysis (§5)FocusedSentence.infoStructure— IS extractor (§5b; previously aHasInfoStructureinstance)fipPrediction— row adapter overData/Examples/Rooth1992.json(§8)Tree,interp— compositional derivation (§10–§11)Derivation— derivation bundles (§13)English.Nouns,.Predicates.Verbal— fragment entries (§14)
Equations
- Rooth1992.instDecidableEqQAWorld x✝ y✝ = if h : x✝.ctorIdx = y✝.ctorIdx then isTrue ⋯ else isFalse ⋯
Equations
- Rooth1992.instReprQAWorld.repr Rooth1992.QAWorld.fredBeans prec✝ = Repr.addAppParen (Std.Format.nest (if prec✝ ≥ 1024 then 1 else 2) (Std.Format.text "Rooth1992.QAWorld.fredBeans")).group prec✝
- Rooth1992.instReprQAWorld.repr Rooth1992.QAWorld.fredRice prec✝ = Repr.addAppParen (Std.Format.nest (if prec✝ ≥ 1024 then 1 else 2) (Std.Format.text "Rooth1992.QAWorld.fredRice")).group prec✝
- Rooth1992.instReprQAWorld.repr Rooth1992.QAWorld.maryBeans prec✝ = Repr.addAppParen (Std.Format.nest (if prec✝ ≥ 1024 then 1 else 2) (Std.Format.text "Rooth1992.QAWorld.maryBeans")).group prec✝
- Rooth1992.instReprQAWorld.repr Rooth1992.QAWorld.maryRice prec✝ = Repr.addAppParen (Std.Format.nest (if prec✝ ≥ 1024 then 1 else 2) (Std.Format.text "Rooth1992.QAWorld.maryRice")).group prec✝
Instances For
Equations
- Rooth1992.instReprQAWorld = { reprPrec := Rooth1992.instReprQAWorld.repr }
Focused "FRED" in "FRED ate the beans" (Rooth §2.4, ex. 23a): O-value = "Fred"; A-value = {"Fred", "Mary"}.
Equations
- Rooth1992.altSubjectFocused = { oValue := "Fred", aValue := ["Fred", "Mary"] }
Instances For
Non-focused "ate the beans": singleton A-value (no alternatives).
Exercises AltMeaning.unfeatured.
Equations
- Rooth1992.altPredicateUnfeatured = Alternatives.AltMeaning.unfeatured "ate the beans"
Instances For
Unfeatured O-value equals the input.
Unfeatured A-value is a singleton containing the O-value. Non-focused expressions evoke no alternatives ([Roo92] §1).
Focus partition of "FRED ate the beans": Fred is focused, evoking {Fred, Mary} as alternatives (Rooth §2.4, ex. 25a).
Equations
- Rooth1992.qaFocus = { focused := "Fred", alternatives := ["Fred", "Mary"] }
Instances For
Background of "FRED ate the beans": the non-focused material.
Equations
- Rooth1992.qaBackground = { elements := ["ate", "the", "beans"] }
Instances For
Theme: the QUD presupposition "_ ate the beans" (λ-abstract). Rooth §2.4: in a Q-A pair, the theme corresponds to the question's content.
Equations
- Rooth1992.qaTheme = { content := "λx. x ate the beans" }
Instances For
Full information structure of "FRED ate the beans" in response to "Who ate the beans?"
Equations
- Rooth1992.qaInfo = { theme := Rooth1992.qaTheme, rheme := Rooth1992.qaRheme, foci := ["Fred"], background := ["ate", "the", "beans"] }
Instances For
Theme carries the presupposed content.
Rheme carries the asserted answer.
Background list matches the background elements.
Minimal derivation type for exercising the IS partition. Pairs a focused constituent with background material.
- focusedWord : String
- backgroundWords : List String
Instances For
Equations
- Rooth1992.instReprFocusedSentence = { reprPrec := Rooth1992.instReprFocusedSentence.repr }
Equations
- One or more equations did not get rendered due to their size.
Instances For
A FocusedSentence determines an InfoStructure.
(Previously a HasInfoStructure FocusedSentence String instance —
the typeclass shape was deleted in the 0.230.489 cleanup since no
caller dispatched on it.)
Equations
- s.infoStructure = { theme := { content := "background" }, rheme := { content := s.focusedWord }, foci := [s.focusedWord], background := s.backgroundWords }
Instances For
Equations
- Rooth1992.fredSentence = { focusedWord := "Fred", backgroundWords := ["ate", "the", "beans"] }
Instances For
The extractor correctly puts the focused word in foci.
The extractor correctly puts background words in background.
[Roo92] §2.4, constraint (26d): In a Q-A pair ⟨ψ, α⟩, ⟦ψ⟧° ⊆ ⟦α⟧f. The ordinary semantic value of the question is a subset of the focus semantic value of the answer.
"Who ate the beans?" — Hamblin question with subject alternatives. ⟦Q⟧° = {fredAteBeans, maryAteBeans} (Rooth §2.4, ex. 24).
Instances For
Focus value of "[FRED]_F ate the beans" — same subject alternatives. ⟦A⟧f = {fredAteBeans, maryAteBeans} (Rooth §2.4, ex. 25a).
Instances For
Focus value of "Fred ate the [BEANS]_F" — object alternatives. ⟦A⟧f = {fredAteBeans, fredAteRice} (varies object, not subject).
Instances For
Q-A congruence: subject focus value = question denotation. ⟦[FRED]_F ate the beans⟧f = ⟦Who ate the beans?⟧ (Rooth §2.4).
FIP (27) holds: question alternatives ⊆ focus value. Trivially satisfied when the sets are equal.
"maryAteBeans" is in the question alternatives...
...but it is NOT in the object-focus alternative set...
...so FIP fails for object focus, explaining why "#Fred ate the BEANS" is not a congruent answer to "Who ate the beans?"
'Who ate the beans?' as a focus antecedent
(Semantics.Focus.Antecedent): the anaphoric source of the
squiggle's contrast set.
Instances For
Question antecedents license the new-information use.
The antecedent admits subject focus — FIP routed through the antecedent layer.
The antecedent rejects object focus.
The question antecedent fully resolves against the subject-focus
meaning: all three clauses of the squiggle presupposition, not just
FIP — the contrast set contains the ordinary value fredAteBeans
and the distinct alternative maryAteBeans.
A focus-free answer cannot resolve any antecedent: its focus value
is the unit set {fredAteBeans}, defeating the contrast clause —
"the argument must contain a focus".
Contrasting phrases (Rooth's symmetric-contrast joke opening, his rule construing α as contrasting with β via ⟦β⟧ᵒ ∈ ⟦α⟧f): Canadian farmer's ordinary value is a member of [American]F farmer's focus value distinct from its ordinary value.
With a focused transitive verb, the full focus value contains
"even trivial relations", so fixing only's domain to it yields
unsatisfiable truth conditions — while intuitively Mary only READ
The Recognitions can be true. The strong theory's separately
resolved C "might be quite a small set"; a lexically carried
alternative list cannot be pragmatically narrowed.
Equations
- Rooth1992.instDecidableEqRWorld x✝ y✝ = if h : x✝.ctorIdx = y✝.ctorIdx then isTrue ⋯ else isFalse ⋯
Equations
- Rooth1992.instReprRWorld = { reprPrec := Rooth1992.instReprRWorld.repr }
Equations
- One or more equations did not get rendered due to their size.
- Rooth1992.instReprRWorld.repr Rooth1992.RWorld.readOnly prec✝ = Repr.addAppParen (Std.Format.nest (if prec✝ ≥ 1024 then 1 else 2) (Std.Format.text "Rooth1992.RWorld.readOnly")).group prec✝
- Rooth1992.instReprRWorld.repr Rooth1992.RWorld.neither prec✝ = Repr.addAppParen (Std.Format.nest (if prec✝ ≥ 1024 then 1 else 2) (Std.Format.text "Rooth1992.RWorld.neither")).group prec✝
Instances For
'reading The Recognitions'.
Instances For
'understanding The Recognitions'.
Equations
Instances For
A trivial property of the same semantic type — a member of the full focus value.
Equations
- Rooth1992.trivialR = Set.univ
Instances For
With the pragmatically restricted domain, only READ is satisfiable: true where Mary read without understanding.
With the domain fixed to the full focus value (trivial property included), only READ is unsatisfiable — direct association over-generates exclusions.
The direct-association operator with its lexically carried full
alternative list is the same over-generation, exhibited on
TraditionalOnly itself: its assertion is everywhere false in this
model. No pragmatic narrowing is possible — the list is fixed in
the lexical entry, which is the strong theory's objection.
Rooth §2.1, constraint (26a): the domain of quantification C of a focusing adverb is a subset of the focus semantic value ⟦α⟧f.
Rooth's formalization (30b): only(C) introduces
∀P[P ∈ C ∧ P(m) → P = VP']
where C is constrained by the FIP to be a set of properties
matching the focus semantic value.
Equations
- Rooth1992.instDecidableEqOnlyWorld x✝ y✝ = if h : x✝.ctorIdx = y✝.ctorIdx then isTrue ⋯ else isFalse ⋯
Equations
- Rooth1992.instReprOnlyWorld = { reprPrec := Rooth1992.instReprOnlyWorld.repr }
Equations
- One or more equations did not get rendered due to their size.
- Rooth1992.instReprOnlyWorld.repr Rooth1992.OnlyWorld.both prec✝ = Repr.addAppParen (Std.Format.nest (if prec✝ ≥ 1024 then 1 else 2) (Std.Format.text "Rooth1992.OnlyWorld.both")).group prec✝
Instances For
Equations
Instances For
"Mary introduced Bill to Sue"
Equations
Instances For
"Mary introduced John to Sue"
Equations
Instances For
Focus on BILL (Rooth §2.1, ex. 3a): O-value = introBill; A-value = {introBill, introJohn}. Focus determines the domain of "only".
Equations
- Rooth1992.altBillFocused = { oValue := Rooth1992.introBill, aValue := [Rooth1992.introBill, Rooth1992.introJohn] }
Instances For
"Only Bill" = Mary introduced Bill but not John (Rooth §2.1).
Equations
- Rooth1992.onlyBill Rooth1992.OnlyWorld.billOnly = true
- Rooth1992.onlyBill x✝ = false
Instances For
"Only John" = Mary introduced John but not Bill.
Equations
- Rooth1992.onlyJohn Rooth1992.OnlyWorld.johnOnly = true
- Rooth1992.onlyJohn x✝ = false
Instances For
"Only" with focus on BILL: O-value holds and all non-actual alternatives are excluded (Rooth §2.1, (30b)).
"Only" with focus on JOHN: symmetric case.
Different focus → different "only" meaning. Focus on BILL excludes John; focus on JOHN excludes Bill (Rooth §2.1, exs. 3a vs 3b).
The rows (Data/Examples/Rooth1992.json) record that "FRED ate the
beans" is congruent and "#Fred ate the BEANS" is incongruent with
"Who ate the beans?". The theory (FIP, §6) explains:
- Subject focus produces a focus value equal to the question
denotation (§6a), so FIP is satisfied.
- Object focus produces a focus value that differs (§6b):
maryAteBeans ∈ ⟦Q⟧° but maryAteBeans ∉ ⟦A⟧f, so FIP fails.
For "only" (§7), the rows say focus determines what "only"
excludes. The theory confirms: the FIP constrains the domain C
of "only" to be a subset of the focus value, so different focus
positions yield different exclusion domains.
The FIP prediction for a row, read off its focus feature: subject
focus ("Fred") evokes the subject-alternative focus value, object
focus ("beans") the object-alternative one (§6).
Equations
- One or more equations did not get rendered due to their size.
Instances For
Transfer: a Q-A row is acceptable iff its focus value satisfies the FIP against "Who ate the beans?" ([Roo92] (26d)). Subject focus passes (§6a); object focus fails (§6b).
Distinct focusing-adverb rows carry distinct focus features: the
rows form an association-with-focus minimal pair.
Bridge: the focusing-adverb rows differ only in focus position, and the theory maps distinct focus positions to distinct "only" meanings (§7).
The propositions in §2 were hand-defined. Here we derive them
compositionally: entity denotations + a world-indexed verb meaning
are combined via direct function application and Heim & Kratzer's
interp to produce the same truth conditions.
The derivational chain is:
Fragment entry → Montague LexEntry → Tree → interp → Bool
run once per world to yield a world-indexed proposition.
Equations
- Rooth1992.instDecidableEqE x✝ y✝ = if h : x✝.ctorIdx = y✝.ctorIdx then isTrue ⋯ else isFalse ⋯
Equations
- Rooth1992.instReprE = { reprPrec := Rooth1992.instReprE.repr }
Equations
- Rooth1992.instReprE.repr Rooth1992.E.fred prec✝ = Repr.addAppParen (Std.Format.nest (if prec✝ ≥ 1024 then 1 else 2) (Std.Format.text "Rooth1992.E.fred")).group prec✝
- Rooth1992.instReprE.repr Rooth1992.E.mary prec✝ = Repr.addAppParen (Std.Format.nest (if prec✝ ≥ 1024 then 1 else 2) (Std.Format.text "Rooth1992.E.mary")).group prec✝
- Rooth1992.instReprE.repr Rooth1992.E.beans prec✝ = Repr.addAppParen (Std.Format.nest (if prec✝ ≥ 1024 then 1 else 2) (Std.Format.text "Rooth1992.E.beans")).group prec✝
- Rooth1992.instReprE.repr Rooth1992.E.rice prec✝ = Repr.addAppParen (Std.Format.nest (if prec✝ ≥ 1024 then 1 else 2) (Std.Format.text "Rooth1992.E.rice")).group prec✝
Instances For
World-indexed verb semantics for "ate".
ateInWorld w obj subj follows Montague's argument order
(object first, then subject).
Equations
- Rooth1992.ateInWorld Rooth1992.QAWorld.fredBeans Rooth1992.E.beans Rooth1992.E.fred = True
- Rooth1992.ateInWorld Rooth1992.QAWorld.fredRice Rooth1992.E.rice Rooth1992.E.fred = True
- Rooth1992.ateInWorld Rooth1992.QAWorld.maryBeans Rooth1992.E.beans Rooth1992.E.mary = True
- Rooth1992.ateInWorld Rooth1992.QAWorld.maryRice Rooth1992.E.rice Rooth1992.E.mary = True
- Rooth1992.ateInWorld w obj subj = False
Instances For
Montague lexicon parameterized by world. Maps surface forms to typed denotations.
Equations
- Rooth1992.focusLex w "Fred" = some { ty := Intensional.Ty.e, denot := Rooth1992.E.fred }
- Rooth1992.focusLex w "Mary" = some { ty := Intensional.Ty.e, denot := Rooth1992.E.mary }
- Rooth1992.focusLex w "ate" = some { ty := Intensional.Ty.e ⇒ Intensional.Ty.e ⇒ Intensional.Ty.t, denot := Rooth1992.ateInWorld w }
- Rooth1992.focusLex w "beans" = some { ty := Intensional.Ty.e, denot := Rooth1992.E.beans }
- Rooth1992.focusLex w "rice" = some { ty := Intensional.Ty.e, denot := Rooth1992.E.rice }
- Rooth1992.focusLex w word = none
Instances For
Syntax tree: [S [NP Fred] [VP [V ate] [NP beans]]]
Equations
- Rooth1992.tree_fredAteBeans = (Syntax.Tree.leaf "Fred").bin ((Syntax.Tree.leaf "ate").bin (Syntax.Tree.leaf "beans"))
Instances For
Syntax tree: [S [NP Mary] [VP [V ate] [NP beans]]]
Equations
- Rooth1992.tree_maryAteBeans = (Syntax.Tree.leaf "Mary").bin ((Syntax.Tree.leaf "ate").bin (Syntax.Tree.leaf "beans"))
Instances For
Syntax tree: [S [NP Fred] [VP [V ate] [NP rice]]]
Equations
- Rooth1992.tree_fredAteRice = (Syntax.Tree.leaf "Fred").bin ((Syntax.Tree.leaf "ate").bin (Syntax.Tree.leaf "rice"))
Instances For
Extract the Prop truth value from a tree interpretation.
Returns none if the tree is uninterpretable or has non-t type.
Equations
- Rooth1992.treeResult lex t = match Semantics.Composition.Tree.interp Rooth1992.E Unit lex Rooth1992.g₀✝ t with | some { ty := Intensional.Ty.t, val := p } => some p | x => none
Instances For
The propositions from §2 were stipulated directly. Here we show
they are derivable: running interp at each world produces
the same truth values.
Compositionally derived "Fred ate beans" proposition.
Equations
- Rooth1992.fredAteBeans_comp w = (Rooth1992.treeResult (Rooth1992.focusLex w) Rooth1992.tree_fredAteBeans).getD False
Instances For
Compositionally derived "Mary ate beans" proposition.
Equations
- Rooth1992.maryAteBeans_comp w = (Rooth1992.treeResult (Rooth1992.focusLex w) Rooth1992.tree_maryAteBeans).getD False
Instances For
Compositionally derived "Fred ate rice" proposition.
Equations
- Rooth1992.fredAteRice_comp w = (Rooth1992.treeResult (Rooth1992.focusLex w) Rooth1992.tree_fredAteRice).getD False
Instances For
Direct function application matches tree interpretation.
Grounding: compositional "Fred ate beans" agrees with hand-defined proposition at each world.
Grounding: compositional "Mary ate beans" = direct function application.
Grounding: compositional "Fred ate rice" = direct function application.
F-marking is a non-pure lexicon entry: the same interp that
computes ordinary values at M = Id computes focus values at
M = AltMeaning (pure = AltMeaning.unfeatured lifts the
focus-free entries), with applyForward's <*> doing Hamblin
functional application.
Alternatives do not distribute through predicate abstraction —
the honest none.
Equations
- Rooth1992.instPredAbsAltMeaning E W = { dist? := none }
The focus lexicon at M = AltMeaning: every entry pure-lifts
except focused [Fred]F, whose entry carries the subject
alternatives.
Equations
- Rooth1992.focusLexF w "Fred" = some { ty := Intensional.Ty.e, denot := { oValue := Rooth1992.E.fred, aValue := [Rooth1992.E.fred, Rooth1992.E.mary] } }
- Rooth1992.focusLexF w word = Semantics.Montague.Lexicon.lift Alternatives.AltMeaning (Rooth1992.focusLex w) word
Instances For
Focus-dimension tree interpretation.
Equations
- Rooth1992.treeResultF lex t = match Semantics.Composition.Tree.interp Rooth1992.E Unit lex Rooth1992.g₀✝ t with | some { ty := Intensional.Ty.t, val := p } => some p | x => none
Instances For
The engine at M = AltMeaning computes the two-dimensional meaning
of [FRED]F ate the beans: the O-value is the ordinary
interpretation and the A-value is the subject-alternative family —
the focus value is computed, not stipulated.
O-projection through the engine: mapping oValue over the
AltMeaning run recovers the Id run.
The stipulated fv_subjectFocus of §6 is exactly the engine's
computed alternative family, read as proposition sets.
Connect the model's lexicon to English fragment entries. Fragment entries provide morphological and syntactic properties; the bridge verifies that these properties are consistent with the model and that fragment surface forms feed the compositional lexicon.
Fred is a proper name in the English fragment.
Mary is a proper name in the English fragment.
"bean" is countable in the English fragment.
Fragment surface forms feed the Montague lexicon. The form field of each fragment entry matches a lexicon key.
"eat" is transitive (NP complement).
"eat" has past tense "ate" matching the lexicon entry.
The past form of "eat" is in the Montague lexicon.
The complete derivational chain from fragments to FIP:
1. Fragment entries (§14) provide surface forms and properties
2. Surface forms feed the Montague lexicon (§10)
3. Tree derivations compose meanings via interp (§11)
4. Running at each world yields propositions grounding §2 (§12)
5. Propositions build Hamblin questions and focus values (§6)
6. FIP/qaCongruent proves congruence (§6a) or incongruence (§6b)
7. Theoretical predictions match empirical judgments (§9)
End-to-end: the compositional derivation produces the same truth values as the hand-defined propositions used to build the Hamblin question. At each world, the tree interp matches the hand-defined proposition.