Documentation

Linglib.Theories.Semantics.Composition.Glue

Glue Semantics #

@cite{asudeh-2022}

Glue Semantics is a composition framework where meanings are assembled via proof search in the implicational fragment of linear logic (⊸). Meaning constructors are pairs M : G, where M is a lambda term and G is a linear logic formula. Composition corresponds to ⊸-elimination (functional application) and ⊸-introduction (lambda abstraction) via the Curry-Howard isomorphism.

Key properties (@cite{asudeh-2022}, §1) #

  1. Resource-sensitive composition: Each premise is used exactly once (no weakening, no contraction). This subsumes the Theta Criterion, Projection Principle, Full Interpretation, Completeness/Coherence, No Vacuous Quantification, and the Inclusiveness Condition as instances of a single logical principle.
  2. Flexible composition: The logic is commutative — word order doesn't determine composition order.
  3. Autonomy of syntax: Structural syntax and the logical syntax of composition are separate levels.
  4. Syntax/semantics non-isomorphism: One word may contribute multiple or zero meaning constructors.

Scope ambiguity #

"Everybody loves somebody" (@cite{asudeh-2022}, §4.2) yields two scope readings. Each reading corresponds to a different instantiation of the second-order ∀ in the quantifier types, producing a different premise multiset. Each multiset has exactly one normal-form proof.

Integration with linglib #

This module connects Glue to:

The bridge theorem glue_qr_agree proves that Glue proof search and QR tree interpretation yield the same truth values on the canonical scope example.

Glue types: the implicational fragment of linear logic.

Atomic types are parameterized by strings corresponding to s-structure nodes (e.g. "e" for the subject's semantic contribution, "l" for the clause). The linear implication A ⊸ B corresponds to lolli A B.

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

        A meaning constructor: a meaning term M paired with a Glue type G. Written M : G in the Glue literature (@cite{asudeh-2022}, §2).

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

            Proof terms for the implicational fragment of linear logic.

            By Curry-Howard, these are simply-typed linear lambda terms:

            • ax n : use the term at context index n (premise or hypothesis)
            • lolliE f a : ⊸-elimination = functional application
            • lolliI hypTy body : ⊸-introduction = lambda abstraction. Extends the context with hypTy; the hypothesis is accessed in body via its new index (ctx.length).
            Instances For
              Equations
              • One or more equations did not get rendered due to their size.
              Instances For

                Type-check a proof against a context (premises ++ hypotheses). lolliI extends the context by appending the hypothesis type; the hypothesis is accessed in the body at index ctx.length. Returns the conclusion type if well-typed.

                Equations
                Instances For

                  Indices of premises (from the original context) used by a proof. Hypothesis indices (≥ numPremises) are excluded.

                  Equations
                  Instances For

                    A proof is resource-correct if every premise is used exactly once.

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

                      The logic landscape #

                      @cite{asudeh-2022} (§3) situates linear logic in a hierarchy of substructural logics (Figure 1). Logics are characterized by which structural rules they admit:

                      Lambek logic L has none of these. Linear logic adds commutativity. Relevance logic adds contraction. Affine/BCK logic adds weakening. Intuitionistic logic has all three.

                      Semantics is best modeled by a commutative resource logic: composition is order-independent (Klein & Sag 1985: types, not order, determine composition) but resource-sensitive (each meaning used exactly once).

                      Structural rules that characterize logics in the substructural hierarchy.

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

                          Substructural logics, ordered by which structural rules they admit (@cite{asudeh-2022}, §3, Figure 1).

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

                              Simple transitive composition (@cite{asudeh-2022}, §2) #

                              The simplest Glue derivation: a transitive verb with two arguments. Given meaning constructors:

                              likes : λy.λx.like(y)(x) : b ⊸ a ⊸ l
                              alex  : alex              : a
                              blake : blake              : b
                              

                              The unique normal-form proof applies likes to blake, then to alex:

                              likes : b⊸a⊸l    blake : b
                              ────────────────────────── ⊸ε
                                 like(blake) : a⊸l      alex : a
                                 ────────────────────────────── ⊸ε
                                      like(blake)(alex) : l
                              

                              Premises for "Alex likes Blake".

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

                                Proof: apply likes to blake, then to alex.

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

                                  Argument reordering: the same proof works regardless of premise order, because the Glue logic is commutative (@cite{asudeh-2022}, §2).

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

                                      Meaning constructors (@cite{asudeh-2022}, §4.2) #

                                      Lexical entries (before instantiation):

                                      love    : λy.λx.love(y)(x)     : (↑ OBJ)σ ⊸ (↑ SUBJ)σ ⊸ ↑σ
                                      every   : λQ.every(person, Q)  : ∀S.(e ⊸ S) → S
                                      some    : λQ.some(person, Q)   : ∀S.(s ⊸ S) → S
                                      

                                      The ∀ quantifier in the Glue logic ranges over Glue types. Different instantiations of S yield different premise contexts, and each context has exactly one normal-form proof.

                                      Surface scope (∀>∃): every instantiated with S=l, some with S=e⊸l. Inverse scope (∃>∀): some instantiated with S=l, every with S=s⊸l.

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

                                          Surface scope proof: every(some(love)) : l

                                          Proof structure (cf. @cite{asudeh-2022}, Figure 4):

                                          1. Apply some(S=e⊸l) to love → e ⊸ l
                                          2. Apply every(S=l) to result → l
                                          Equations
                                          Instances For

                                            Inverse scope proof: some(every(λv.λu.love(u)(v))) : l

                                            Proof structure (cf. @cite{asudeh-2022}, Figure 5):

                                            1. Assume [v:e]³, [u:s]⁴
                                            2. Apply love to u (s-arg) then to v (e-arg) → l
                                            3. Abstract over u → s⊸l, then over v → e⊸s⊸l
                                            4. Apply every(S=s⊸l) → s⊸l
                                            5. Apply some(S=l) → l
                                            Equations
                                            • One or more equations did not get rendered due to their size.
                                            Instances For

                                              The Glue logic tells us how to compose meanings but not what the meanings are. The meaning terms are ordinary Montague-style denotations. We connect Glue proofs to truth conditions by evaluating them over the same toyModel used by QuantifierComposition.lean.

                                              The toy model has no `love` predicate, so we use `sees_sem` as
                                              the transitive relation. The logical structure is identical.
                                              
                                              Surface scope: every(person, λx. some(person, λy. sees(y)(x)))
                                              Inverse scope: some(person, λy. every(person, λx. sees(y)(x)))
                                              
                                              Equations
                                              • One or more equations did not get rendered due to their size.
                                              Instances For
                                                Equations
                                                • One or more equations did not get rendered due to their size.
                                                Instances For

                                                  Surface scope is true in the toy model (each person sees some person).

                                                  Inverse scope is false in the toy model (no single person is seen by everyone).

                                                  Both Glue and QR are extensionally equivalent on the canonical scope example: both yield exactly {∀>∃, ∃>∀} with the same truth values. The QR side is computed via interp from Composition/Tree.lean, connecting Glue to the H&K composition engine.

                                                  Map ScopeConfig to truth values via QR tree interpretation (@cite{heim-kratzer-1998} Ch. 5).

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

                                                    QR surface scope tree produces the same truth value as Glue.

                                                    QR inverse scope tree produces the same truth value as Glue.

                                                    Glue and QR yield identical truth values for both scope readings.

                                                    Two fundamentally different composition mechanisms — proof search in linear logic (Glue, @cite{asudeh-2022}) vs. covert movement with Predicate Abstraction (QR, @cite{heim-kratzer-1998}) — produce the same semantic results.

                                                    @cite{asudeh-2022} (§3) argues that linear logic resource sensitivity subsumes several well-formedness conditions from different frameworks. These are all instances of: in a valid linear logic proof, each premise is used exactly once.

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

                                                        Resource sensitivity = no weakening + no contraction. No weakening means every premise must be consumed (captures fullInterpretation, inclusivenessCondition). No contraction means each premise consumed at most once (captures thetaCriterion, noVacuousQuantification). Together they enforce completenessCoherence and projectionPrinciple.

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

                                                            @cite{asudeh-2022} (§4) distinguishes three approaches to the syntax-semantics interface:

                                                            1. **Interpretive** (H&K/QR): Syntax produces LF, which is
                                                               directly interpreted. Scope ambiguity requires a syntactic
                                                               operation (QR/covert movement) — two distinct LF trees.
                                                            2. **Parallel** (CG/CCG): Syntax and semantics computed in
                                                               lockstep. Scope ambiguity requires type-shifting operations
                                                               and corresponding categorial modifications.
                                                            3. **Glue** (separable logic): Syntax produces meaning
                                                               constructors; composition is proof search. Scope ambiguity
                                                               arises from multiple ∀-instantiations — no syntactic ambiguity
                                                               or type-shifting needed.
                                                            
                                                            linglib formalizes all three: H&K in `Composition/Tree.lean`,
                                                            CCG in `CCG/Interface.lean`, Glue here. 
                                                            
                                                            Equations
                                                            • One or more equations did not get rendered due to their size.
                                                            Instances For

                                                              How each approach handles scope ambiguity.

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