Bias in Commitment Space Semantics #
@cite{krifka-2015} @cite{cohen-krifka-2014} @cite{ginzburg-2012} @cite{bring-gunlogson-2000}
Worked examples exercising the commitment-space framework of @cite{krifka-2015} ("Bias in Commitment Space Semantics: Declarative questions, negated questions, and question tags"). Each worked example uses a 2-world Weather model and verifies a specific paper claim.
Coverage #
- §1 — 2-world model fixture
- §2 — Assertion (paper §2): speaker-indexed commitment lands in root
- §3 — Monopolar vs bipolar polar questions (paper §3, eqs. 23, 27): bipolar produces two non-contradictory siblings, NOT a stacked pair of monopolars
- §4 — Negated polar questions (paper §4, eqs. 38–39, Table 1 p. 341):
low-neg =
commit addressee ¬φ, high-neg =refuse addressee φ, pragmatically weaker than low-neg - §5 — Question tags (paper §5, eqs. 44–45): matching = conjunction, reverse = disjunction, NOT sequential composition
- §N — Reciprocal cross-framework contrasts:
- vs @cite{ginzburg-2012} KOS (per
Phenomena/Dialogue/Studies/Ginzburg2012.leanlines 49–52, which delegates Krifka contrasts here) - vs @cite{farkas-bruce-2010} discourse-table model. Krifka §1 (paper p. 331) cites F&B as the inspiration for his rejection operator ℜ; this section makes the structural relationship Lean-checkable. - §∞ — Deep structure: the Dialogue Completeness observation — framework-agnostic agreement on observable CG at completed traces.
Out of scope (explicit) #
- Speech-act denegation
~𝔄(paper §1, eq. 5) — substrate gained thedenegateoperator at 0.230.656. The first consumer isPhenomena/Assertion/Studies/CohenKrifka2014.lean(anchored on the prior @cite{cohen-krifka-2014} introduction of denegation). This file could now exercise denegation but doesn't need to for the §§1–5 scope; reverse-tag worked examples are blocked on a separateapplyComplex .disjsubstrate gap. - JP/ComP layered clause structure — that's @cite{krifka-2020} material;
see
Phenomena/Assertion/Studies/Krifka2020.lean. - Cross-framework contrasts with Stalnaker, Brandom, Lauer, Gunlogson, Inquisitive Semantics. Future work; substrates are present.
Two-world model: it's raining or it's not. Used by all sections, including the cross-framework contrast (no second world type).
Instances For
Equations
- Phenomena.Assertion.Studies.Krifka2015.instDecidableEqWeather 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
Proposition: it's raining.
Equations
Instances For
Proposition: it's NOT raining.
Equations
Instances For
Initial discourse state: empty commitments, no open continuations.
Instances For
After asserting "it's raining", the root contains the
speaker-indexed commitment S₁⊢φ — NOT bare φ. This is
the central content of @cite{krifka-2015} eq. (14):
⟨..., C*⟩ +^S₁ S₁⊢φ = ⟨..., C*, [C + S₁⊢φ]^S₁⟩.
The speaker's commitment slate records the assertion.
The addressee's slate is unchanged (they haven't accepted yet).
Assertion adds no continuations to a previously-empty space.
Assertion-by-addressee (the Yes-as-acceptance path) lands the
indexed commitment with .addressee as committer.
Monopolar question preserves the root (CG unchanged) — paper p. 335.
Monopolar question adds exactly one continuation.
The continuation's commitment is by the addressee, not the speaker (paper p. 337 around eq. 30: "the ? head identifies the committer as S₂").
Bipolar question preserves the root (paper eq. 23).
Bipolar question adds exactly two sibling continuations (paper eq. 23, Figure 8 p. 335).
The bipolar continuations are commit addressee φ and
commit addressee ¬φ — both indexed to the addressee.
This is the bug-fix theorem: the deleted Krifka2015.lean modeled
"bipolar" as two stacked monopolar questions, producing a
contradictory continuation [¬φ, φ]. The faithful Krifka eq. 23
derivation gives two SEPARATE alternatives, neither of which contains
both φ and ¬φ.
Neither bipolar continuation is internally contradictory: each is a
singleton list, so it cannot contain both φ and ¬φ.
Accepting a monopolar question's continuation puts the
addressee-indexed commitment in the root. The pathway models the
Yes confirmation: addressee commits to φ.
Bridge: acceptContinuation ∘ monopolarQuestion φ and
assert φ .addressee produce the same root. The two pathways for
addressee-commitment converge.
High vs low negation — the paper's titular contribution #
@cite{krifka-2015} §4 distinguishes:
- Low negation: Did I not win? — TP-internal negation, monopolar
question with
commit addressee ¬φ. The addressee is asked to commit to ¬φ. - High negation: Didn't I win? — ComP-level non-commitment, modeled
as
refuse addressee φ. The addressee is asked NOT to commit to φ.
Per paper p. 340: "adding ¬S₂⊢φ to the commitment space precludes commitment to φ, but is compatible with commitment to ¬φ. Hence ¬S₂⊢φ is pragmatically weaker than S₂⊢¬φ." This pragmatic strength asymmetry licenses the contextual-evidence pattern in Table 1 (p. 341).
Low negation: Did I not win? adds an addressee commitment to ¬φ.
High negation: Didn't I win? adds an addressee REFUSAL to commit to φ.
Distinct from commit addressee ¬φ.
High-negation polarity is refuse, not commit.
Pragmatic-strength asymmetry (paper p. 340): the high-negation
continuation, projected to a context-set constraint, is WEAKER than
the low-negation continuation — refuse projects to the trivial
True constraint, while commit ¬φ projects to actual ¬φ.
Table 1 (paper p. 341) — Büring & Gunlogson 2000 licensing #
@cite{bring-gunlogson-2000} (cited by @cite{krifka-2015} p. 341) identifies a 3×3 contextual-evidence × negation-type acceptability pattern. Contexts (rows): contextual evidence FOR φ / NEUTRAL / AGAINST φ. Question types (columns): no negation / low negation / high negation.
Krifka's analysis (paper p. 341) explains the pattern in terms of which READING is licensed when no negation is present:
- (a) FOR-φ: no-neg ok via the monopolar reading
- (b) NEUTRAL: no-neg ok via the bipolar reading
- (c) AGAINST-φ: no-neg degraded — both readings fail
Cell values use Features.Acceptability (ok / marginal / anomalous).
The paper's (#) parenthesised hash maps to marginal; bare # maps to
anomalous. The ContextualEvidence enum is reused from
Core.Discourse.Commitment (originally introduced for
@cite{bring-gunlogson-2000}).
The three negation columns of Krifka's Table 1.
- noNeg : NegationType
Column (i): no negation — Is there a vegetarian restaurant?
- lowNeg : NegationType
Column (ii): low (TP) negation — Is there no vegetarian restaurant?
- highNeg : NegationType
Column (iii): high (ComP) negation — Isn't there a vegetarian restaurant?
Instances For
Equations
- Phenomena.Assertion.Studies.Krifka2015.instDecidableEqNegationType 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
Which reading licenses the no-negation question in each context (per @cite{krifka-2015} p. 341 prose).
- monopolarLicensed : NoNegReading
Setting (a): monopolar reading licenses (speaker has prior evidence).
- bipolarLicensed : NoNegReading
Setting (b): bipolar reading licenses (alternatives equally likely).
- bothDegraded : NoNegReading
Setting (c): both readings fail (mono lacks evidence, bi suggests equipoise).
Instances For
Equations
- Phenomena.Assertion.Studies.Krifka2015.instDecidableEqNoNegReading 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
Krifka's Table 1 (p. 341): 3×3 contextual-evidence × negation-type acceptability matrix.
Equations
- Phenomena.Assertion.Studies.Krifka2015.table1 Core.Discourse.Commitment.ContextualEvidence.forP Phenomena.Assertion.Studies.Krifka2015.NegationType.noNeg = Features.Acceptability.ok
- Phenomena.Assertion.Studies.Krifka2015.table1 Core.Discourse.Commitment.ContextualEvidence.forP Phenomena.Assertion.Studies.Krifka2015.NegationType.lowNeg = Features.Acceptability.anomalous
- Phenomena.Assertion.Studies.Krifka2015.table1 Core.Discourse.Commitment.ContextualEvidence.forP Phenomena.Assertion.Studies.Krifka2015.NegationType.highNeg = Features.Acceptability.anomalous
- Phenomena.Assertion.Studies.Krifka2015.table1 Core.Discourse.Commitment.ContextualEvidence.neutral Phenomena.Assertion.Studies.Krifka2015.NegationType.noNeg = Features.Acceptability.ok
- Phenomena.Assertion.Studies.Krifka2015.table1 Core.Discourse.Commitment.ContextualEvidence.neutral Phenomena.Assertion.Studies.Krifka2015.NegationType.lowNeg = Features.Acceptability.anomalous
- Phenomena.Assertion.Studies.Krifka2015.table1 Core.Discourse.Commitment.ContextualEvidence.neutral Phenomena.Assertion.Studies.Krifka2015.NegationType.highNeg = Features.Acceptability.ok
- Phenomena.Assertion.Studies.Krifka2015.table1 Core.Discourse.Commitment.ContextualEvidence.againstP Phenomena.Assertion.Studies.Krifka2015.NegationType.noNeg = Features.Acceptability.marginal
- Phenomena.Assertion.Studies.Krifka2015.table1 Core.Discourse.Commitment.ContextualEvidence.againstP Phenomena.Assertion.Studies.Krifka2015.NegationType.lowNeg = Features.Acceptability.ok
- Phenomena.Assertion.Studies.Krifka2015.table1 Core.Discourse.Commitment.ContextualEvidence.againstP Phenomena.Assertion.Studies.Krifka2015.NegationType.highNeg = Features.Acceptability.ok
Instances For
Per @cite{krifka-2015} p. 341 prose: which reading licenses the no-negation question in each contextual-evidence setting.
Equations
- Phenomena.Assertion.Studies.Krifka2015.noNegLicensing Core.Discourse.Commitment.ContextualEvidence.forP = Phenomena.Assertion.Studies.Krifka2015.NoNegReading.monopolarLicensed
- Phenomena.Assertion.Studies.Krifka2015.noNegLicensing Core.Discourse.Commitment.ContextualEvidence.neutral = Phenomena.Assertion.Studies.Krifka2015.NoNegReading.bipolarLicensed
- Phenomena.Assertion.Studies.Krifka2015.noNegLicensing Core.Discourse.Commitment.ContextualEvidence.againstP = Phenomena.Assertion.Studies.Krifka2015.NoNegReading.bothDegraded
Instances For
Table 1 as a decide-checked predictive bundle. The pattern is what Krifka §4 explains via his monopolar/bipolar/high-vs-low contrast.
Per the paper's prose: the no-negation cell licensing diverges across contexts — mono in (a), bipolar in (b), both fail in (c).
Tags as speech-act conjunction / disjunction #
Per @cite{krifka-2015} p. 342: matching tags are speech-act CONJUNCTION
applied as ONE complex move — explicitly NOT sequential assert; question.
The substrate's Dialogue.Krifka.matchingTag and reverseTag
(Theories/Dialogue/CommitmentSpace.lean §4) capture this directly.
Substrate's matchingTag φ is structurally a conj of two atomic
speech acts (paper eq. 44).
The committers diverge: speaker for the assertion-leg, addressee for the question-leg (paper p. 342).
Substrate's reverseTag φ ¬φ is structurally a disj (paper eq. 45).
Worked example: applying a matching tag to the empty state via
applyComplex produces a state where speaker has committed to φ
(assertion-leg) and a continuation proposes addressee committing
to φ (question-leg). The substrate sequentialises per paper eq. 6's
"≈" approximation (no anaphoric ties at this level).
The matching tag's continuation contains the addressee-commit on top of the speaker-commit already in the root. Both are present, both are non-contradictory (different committers, same content).
Krifka commitment-spaces vs KOS per-DGB stance #
Per the chronological-dependency rule, this post-2012 study engages the 2012 framework: @cite{krifka-2015} commitment-spaces and @cite{ginzburg-2012} KOS make structurally different but observationally similar predictions about identical event sequences.
Reciprocal entry to Phenomena/Dialogue/Studies/Ginzburg2012.lean lines
49–52, which delegates Krifka contrasts here.
| Question | Krifka 2015 | Ginzburg 2012 (KOS) |
|---|---|---|
| Is CG a single object or per-agent? | Single object, but its entries are speaker-indexed (IndexedCommitment.commit S₁ φ) | Per-agent (DGB.facts) |
| When does an assertion narrow CG? | Immediately (assert puts commit S₁ φ in root) | Only after Accept (one-sided FACTS) |
| Are commitments separable from CG? | Yes — root carries indexed commitments + per-agent slates | Only via separate DGBs |
The architectures cannot be unified by a Galois connection that preserves both Krifka's eager-narrowing root behaviour and KOS's per-DGB asymmetry.
The contrast theorem: post-assertion, Krifka's space.root narrows
to a singleton list [commit speaker isRaining] (immediate, with
speaker indexing); KOS's addressee DGB.facts stays [] (only the
speaker side narrows; addressee waits for Accept).
Krifka's root carries indexed commitments (one per committer contribution); KOS speaker-side DGB has the fact in their slate while addressee-side stays empty. The architectures store the commitment in different shapes.
Krifka commitment-spaces vs Farkas-Bruce discourse-table model #
Per @cite{krifka-2015} §1 p. 331: "The last of these commitment stages would correspond to the notion of a 'Table' in Farkas & Bruce 2010, i.e., the conversational stage under negation." Krifka cites @cite{farkas-bruce-2010} as the explicit inspiration for his rejection operator ℜ. The two frameworks are observationally similar but structurally distinct on identical event sequences.
| Question | Krifka 2015 | Farkas-Bruce 2010 |
|---|---|---|
| When does an assertion narrow CG? | Immediately (commit speaker φ in root) | Only after addressee accept (one-sided dcS until then) |
| Where does the assertion live pre-acceptance? | Root entry (already in CG, speaker-indexed) | dcS slate + table issue |
| What does acceptance update? | Adds commit addressee φ to root | Pops table issue, adds φ to cg + dcL |
| What's the "stable" predicate? | hasNoOpenContinuations (no pending proposals) | table.isEmpty (no items on table) |
The eager/lazy distinction is real and non-collapsible at intermediate states. But at the end of a "completed" assertion+acceptance sequence, both frameworks agree on the observable CG content modulo Krifka's speaker indexing — see the Dialogue Completeness observation below.
Divergence at the assert-only intermediate state: Krifka's CG
narrows immediately (one indexed entry in root); F&B's joint CG
stays empty because the assertion lives on the table awaiting
acceptance. The two frameworks DISAGREE on what's "in CG" mid-trace.
@cite{krifka-2015} p. 332 eq. (14) puts S₁⊢φ directly in the
commitment state; @cite{farkas-bruce-2010}'s assertDeclarative
only updates dcS and pushes a table issue.
Bridge at the completed-trace state: after the addressee accepts the
assertion, both frameworks have φ in the joint CG (modulo Krifka's
speaker indexing on the root entries; F&B's cg is bare Set W).
Krifka's "addressee accepts" pathway is assert φ .addressee
(the Yes reaction, paper p. 334 eq. 21). F&B's pathway is
acceptTop after assertDeclarative. Both end with φ in the
common ground at the propositional level.
The headline observation: at a completed assertion+acceptance trace,
the two frameworks agree on the context-set projection —
Krifka's projected CG content is exactly isRaining.
The frameworks disagree on what they STORE at intermediate states (root vs table, indexed vs flat) but agree on the observable they project to (worlds compatible with all committed propositions). This is the simplest concrete instance of the Dialogue Completeness observation in §∞.
The Dialogue Completeness observation #
The cross-framework theorems above (krifka_contextSet_at_completed_trace
paired with krifka_double_assert_eq_farkasBruce_assert_accept, the
parallel vsGinzburg2012 block) are concrete instances of a deeper
structural claim. We articulate it here as prose; the typeclass-mediated
universal version is future work.
Statement #
For any two commitment-tracking dialogue frameworks F₁ and F₂ over
the same world type W, equipped with:
- A shared event signature
DialogueEvent W(assert, monopolar question, bipolar question, low/high negated question, accept, reject, …); - A step function
step_i : Sᵢ → DialogueEvent W → Sᵢ; - A context-set projection
contextSet_i : Sᵢ → Set W(the observable CG content); - A "completed" predicate
isCompleted_i : Sᵢ → Prop(no pending proposals, no orphan issues),
the conjecture is:
∀ events : List (DialogueEvent W),
isCompleted_F₁ (events.foldl step_F₁ initial_F₁) →
isCompleted_F₂ (events.foldl step_F₂ initial_F₂) →
contextSet_F₁ (events.foldl step_F₁ initial_F₁) =
contextSet_F₂ (events.foldl step_F₂ initial_F₂)
Plain English: dialogue frameworks differ in the journey through intermediate states; they agree on the observable destination. The eager/lazy timing of CG updates, the per-agent commitment slate shape, the proposal-tracking apparatus — all of these are framework-internal bookkeeping invisible at completed traces. What's publicly committed (in the projected context-set sense) at the end of a completed dialogue is framework-invariant.
Why it's deep #
The conjecture says that contextSet is the maximal observable
shared across all reasonable models of dialogue. Anything more
fine-grained (commitment indexing, per-agent slates, intermediate
proposal stacks, reaction-pathway distinctions) is a free choice the
modeler makes — and choices on that level don't constrain what counts
as a model of dialogue dynamics per se. Mathematically, this is the
shape of an observational equivalence in a coalgebraic / process-theory
sense: framework states form a coalgebra for the functor
X ↦ (DialogueEvent → X) × (Set W), and the completed-trace agreement
is bisimilarity at the Set W observable.
Status in linglib #
This file proves the conjecture's restriction to a 2-element framework
class {Krifka2015, FarkasBruce2010} and a 2-event trace
(assert; accept). The general statement requires:
- A
DialogueStatetypeclass inTheories/Dialogue/Common.lean(does not yet exist) parameterising over the four operations above. - Per-framework instances for Krifka, Farkas-Bruce, KOS, Stalnaker, Brandom, Gunlogson, Lauer.
- The universal theorem proved either generically (likely needs an
axiom about how each instance's
stepinterpretsDialogueEvent) or per-pair (n² theorems for n frameworks).
The per-pair route is more tractable; the generic route requires
articulating what "interpret an event correctly" means as a coherence
law on instances. Either route lifts cross-framework reconciliation
in linglib from per-file vsX2010 sections to a structural theorem
about what counts as a dialogue framework at all.
The framework that refuses the typeclass instance is the most
informative: @cite{lauer-2013}'s gradient-credence assertion has no
sharp commit event in the Krifka/F&B sense, so it would either
reject the DialogueState instance or implement it with a non-trivial
projection (mapping credence ≥ θ to commitment for some threshold θ).
The refusal would surface a genuine architectural break between
gradient-pragmatic and categorical-pragmatic models of dialogue.