Documentation

Linglib.Studies.TrinhHaida2015

Trinh & Haida 2015: Constraining the Derivation of Alternatives #

[TH15]

Trinh, T. & Haida, A. (2015). Constraining the derivation of alternatives. Natural Language Semantics, 23(4), 249–270.

Core Contribution #

The Atomicity constraint (def 32): expressions in the substitution source are syntactically atomic — their internal structure is inaccessible to structural operations. This refines [FK11] / [Kat07] to correctly distinguish:

Key Definitions #

Relation to the Excluder.preFilter combinator #

Atomicity is a restriction on the formal-alternative source F, the [FK11] F (not C) side of the asymmetry. Semantics/Exhaustification/Combinators.lean packages F-side restrictions as the abstract combinator Excluder.preFilter, with the algebraic non-monotonicity theorem preFilter_can_create_implicature. The Trinh–Haida construction is a linguistically-motivated two-layer F-side restriction (Atomicity + Conditions on A), so it doesn't reduce to a single preFilter call: innocent.exh on full F_AT(run) remains vacuous; the strengthening to ran ∧ smoked requires the further domain-choice step A = {ran, ranNotSmoked}. The Symmetric/Atomic formalization here is therefore complementary to (not subsumed by) the abstract combinator: Combinators.lean proves the asymmetry exists in the algebra; this file shows the linguistic substance the asymmetry licenses.

def TrinhHaida2015.inBooleanClosure {W : Type} (domain : List W) (alts : List (WBool)) (p : WBool) :
Bool

A proposition p is in the Boolean closure of alts: p is determined by the truth values of elements of alts. Whenever two worlds agree on all elements of alts, they agree on p. Used in Condition (27c).

Equations
  • TrinhHaida2015.inBooleanClosure domain alts p = domain.all fun (w₁ : W) => domain.all fun (w₂ : W) => (!alts.all fun (a : WBool) => a w₁ == a w₂) || p w₁ == p w₂
Instances For
    def TrinhHaida2015.propEqOn {W : Type} (domain : List W) (p q : WBool) :
    Bool

    Extensional equality on a finite domain.

    Equations
    Instances For
      def TrinhHaida2015.propMemOn {W : Type} (domain : List W) (p : WBool) (alts : List (WBool)) :
      Bool

      Extensional membership via propEqOn.

      Equations
      Instances For
        def TrinhHaida2015.isValidDomain {W : Type} (domain : List W) (formalAlts : List (WBool)) (prejacent : WBool) (domainOfEXH : List (WBool)) :
        Bool

        Conditions on A (27): A is a valid domain of EXH for prejacent S given formal alternatives formalAlts = F(S).

        (27a) A ⊆ F(S) (27b) S ∈ A (27c) No S' in F(S) \ A is in the Boolean closure of A

        Equations
        • One or more equations did not get rendered due to their size.
        Instances For
          inductive TrinhHaida2015.ATree (W : Type) :

          Parse tree with optional AT-marking. AT-marked nodes (atNode) preserve content for semantic interpretation but are inaccessible to structural operations — implementing the Atomicity constraint (def 32): "Expressions in the substitution source are syntactically atomic."

          Instances For
            Equations
            Instances For

              Expand to Tree Cat by unsealing AT-marked nodes.

              Equations
              Instances For

                Lift a Tree Cat to ATree (no AT-marking). Traces and binders are wrapped as opaque AT-marked nodes, since they are LF-specific structure inaccessible to PF-level operations.

                Equations
                Instances For
                  inductive TrinhHaida2015.ATStructOp {W : Type} (source : List (ATree W)) :
                  ATree WATree WProp

                  Structural operation respecting Atomicity. Like StructOp but inChild can only descend into .node, NOT .atNode. AT-marked material is opaque to further syntactic manipulation.

                  Instances For
                    def TrinhHaida2015.atReachable {W : Type} (source : List (ATree W)) (ψ φ : ATree W) :

                    AT-constrained reachability (reflexive-transitive closure).

                    Equations
                    Instances For
                      def TrinhHaida2015.atomicSubstitutionSource {W : Type} (lexicon : List (Syntax.Tree Syntax.Cat W)) (φ : Syntax.Tree Syntax.Cat W) (context : List (Syntax.Tree Syntax.Cat W)) :
                      List (ATree W)

                      The substitution source with Atomicity: lexical items + subtrees of S are lifted (transparent); contextual constituents are wrapped in atNode (opaque).

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

                        F_AT(S): formal alternatives derivable under Atomicity. S' ∈ F_AT(S) iff ∃ ATree t reachable from lift(S) via AT-constrained operations with t.expand = S'.

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

                          Symmetry Breaking #

                          (34) Bill went for a run and didn't smoke. John (only) went for a run. Inference: ¬[John went for a run and didn't smoke] → John smoked.

                          Atomicity blocks "ran ∧ smoked" from F(S) because deriving it requires modifying the interior of the AT-marked contextual constituent "ran ∧ ¬smoked" (removing the NegP). This leaves A = {run, run ∧ ¬smoke} as a valid domain satisfying (27c), and EXH(A)(run) = run ∧ smoke.

                          Four activity worlds (run and smoke are independent).

                          Instances For
                            @[implicit_reducible]
                            instance TrinhHaida2015.instDecidableEqAW :
                            DecidableEq AW
                            Equations
                            def TrinhHaida2015.instReprAW.repr :
                            AWStd.Format
                            Equations
                            Instances For
                              @[implicit_reducible]
                              Equations

                              A satisfies all three Conditions on A (27). Crucially, (27c) holds: neither "smoke" nor "¬smoke" is in BC({run, run ∧ ¬smoke}) because the 4-world domain distinguishes them from all Boolean combinations.

                              EXH(A)(run) = run ∧ smoke: the correct empirical inference. exhIE negates "run ∧ ¬smoke" (the only non-weaker alternative in A), deriving that John smoked.

                              Symmetry Preserving #

                              (41) Bill ate exactly three cookies. John (only) ate three cookies. *Inference: ¬[John ate exactly three cookies]

                              Atomicity is vacuous here (alternatives are derived by simple lexical substitution). The non-attested inference is blocked by Conditions on A (27c): "four" ∈ BC({three, exactly_three}), so excluding "four" from A is impossible, but including it creates symmetry.

                              Three cookie worlds: ate exactly 3, 4, or 5.

                              Instances For
                                @[implicit_reducible]
                                instance TrinhHaida2015.instDecidableEqCW :
                                DecidableEq CW
                                Equations
                                def TrinhHaida2015.instReprCW.repr :
                                CWStd.Format
                                Equations
                                Instances For
                                  @[implicit_reducible]
                                  Equations

                                  "four" is in BC({three, exactly_three}): worlds agreeing on both "three" (always true) and "exactly_three" always agree on "four", because four ≡ three ∧ ¬exactly_three on this domain.

                                  "exactly_three" and "four" are symmetric alternatives of "three": they partition its denotation.

                                  Switching Problem Constraints #

                                  For structures where a weak scalar item embeds a strong one (e.g., [some[all]]), Atomicity alone is insufficient. The paper adds three constraints on the derivation of formal alternatives:

                                  (60a) Only non-AT-marked expressions are replaceable. (60b) The most deeply embedded replaceable expression must be replaced first (bottom-up). (60c) No replacement may yield a sentence logically weaker than the prejacent.

                                  These constraints prevent "some" and "all" from switching places under negation while still allowing the correct indirect implicature derivation. (60a) is already captured by ATStructOp (no inChild into atNode). (60b) and (60c) are additional derivation-order and semantic monotonicity constraints:

                                  def TrinhHaida2015.bottomUpOrdering (pos maxReplaceable : ) :

                                  (60b) Bottom-up ordering: the replacement position must be at least as deeply embedded as any other replaceable position. Modeled as a property of a derivation step at position pos in a tree of depth maxDepth.

                                  Equations
                                  Instances For
                                    def TrinhHaida2015.nonWeakeningStep {W : Type} (domain : List W) (before after : WBool) :
                                    Bool

                                    (60c) Semantic monotonicity: the result of a replacement step must not be logically weaker than the input (on the domain).

                                    Equations
                                    • TrinhHaida2015.nonWeakeningStep domain before after = ((!domain.any fun (w : W) => before w && !after w) || domain.any fun (w : W) => after w && !before w)
                                    Instances For