Documentation

Linglib.Studies.AsherLascarides2003

Asher & Lascarides 2003: SDRT Right Frontier Constraint worked example #

[AL03]

Example (21) from p. 149 — the discourse where the book explicitly enumerates which attachment sites are available under the Right Frontier Constraint, and which are excluded. We replicate it against the SDRT substrate to verify that availableAttachmentPoints returns exactly the book-predicted set.

The example (21), p. 149 #

π₀:
  ├─ π₃, π₄
  │  ├─ π₃: K_π₃
  │  ├─ ⇓(π₃, π₄)              ← subordinating topic relation
  │  └─ π₄:
  │     ├─ π₁, π₂
  │     ├─ π₁: K_π₁
  │     ├─ π₂: K_π₂
  │     └─ Background(π₁, π₂)   ← coordinating

Reading the labelling F:

What the book asserts (p. 149) #

"assuming that π₂ in (21) is LAST, the available attachment sites are π₂ (by condition 1), π₄ (by condition 2a), π₃ (by condition 2b and 3) and π₀ (by condition 3). But π₁ is not available."

Why π₁ is not available #

π₁ and π₂ are siblings under Background, which is coordinating (not subordinating). After attaching to π₂ (LAST), the only way to reach π₁ would be through a subordinating relation — but Background doesn't qualify. Walking up via outscoping reaches π₄ (which contains both π₁ and π₂), and from π₄ we reach π₃ via the subordinating ⇓ relation. But π₁ is on the wrong side of a coordinating sibling boundary.

Substrate note #

[AL03]'s ⇓ topic-relation is not in the substrate's RhetoricalRelation enum (it's a structural relation the book uses informally; the headline truth-conditional inventory is Narration / Elaboration / Explanation / Result / Background / Contrast / Parallel + Consequence / Alternation / Correction). We encode ⇓ as .elaboration in the example below — both are subordinating, and the RFC's condition 2b only sees the isSubordinating projection. The example would behave identically with a hypothetical .topic constructor.

Rhetorical-Structure Substrate (SDRT core) #

[AL03] The labelled discourse-structure record + SDRT-specific projections (kind, veridicality) on top of the framework-neutral Discourse.Coherence.CoherenceRelation enum. The Right Frontier Constraint lives in the sibling RightFrontier.lean.

@[reducible, inline]

SDRT vocabulary alias for the unified coherence-relation enum.

Equations
Instances For

    Structural Kind: subordinating vs coordinating vs structural #

    Structural kind of a rhetorical relation (Asher-Lascarides §4.7). The Right Frontier Constraint gates new attachment points on the subordinating case.

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

        The coherence relation is subordinating in SDRT's sense.

        Equations
        Instances For

          Veridicality #

          Veridicality classification for rhetorical relations (Asher-Lascarides §4.8). Determines whether R(α, β) requires both arguments' contents to be true, neither, or one denied.

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

              SDRS — Segmented Discourse Representation Structure #

              structure Discourse.Rhetorical.SDRSEdge (L : Type u_1) :
              Type u_1

              A discourse-relation conjunct in an SDRS: R(source, target) is a conjunct in F(container)'s content. The container field distinguishes i-outscopes from generic endpoint relations.

              Instances For
                @[implicit_reducible]
                instance Discourse.Rhetorical.instReprSDRSEdge {L✝ : Type u_1} [Repr L✝] :
                Repr (SDRSEdge L✝)
                Equations
                def Discourse.Rhetorical.instReprSDRSEdge.repr {L✝ : Type u_1} [Repr L✝] :
                SDRSEdge L✝Std.Format
                Equations
                • One or more equations did not get rendered due to their size.
                Instances For
                  def Discourse.Rhetorical.instDecidableEqSDRSEdge.decEq {L✝ : Type u_1} [DecidableEq L✝] (x✝ x✝¹ : SDRSEdge L✝) :
                  Decidable (x✝ = x✝¹)
                  Equations
                  • One or more equations did not get rendered due to their size.
                  Instances For
                    structure Discourse.Rhetorical.SDRS (L : Type u_1) (α : Type u_2) :
                    Type (max u_1 u_2)

                    A Segmented Discourse Representation Structure (Asher-Lascarides Def 13, ⟨A, F⟩ form). Polymorphic in label type L and content type α. Condition L5 ("unique parent") is intentionally omitted per the book p. 144.

                    • labels : List L
                    • content : Lα
                    • edges : List (SDRSEdge L)
                    • root : L
                    • last : L
                    Instances For
                      def Discourse.Rhetorical.SDRS.initial {L : Type u_1} {α : Type u_2} (root : L) (rootContent : Lα) :
                      SDRS L α

                      An empty SDRS with one root label, no edges; root is also LAST.

                      Equations
                      Instances For
                        def Discourse.Rhetorical.SDRS.addEdge {L : Type u_1} {α : Type u_2} (s : SDRS L α) (e : SDRSEdge L) :
                        SDRS L α

                        Add an edge to an SDRS. Does not add the labels — caller must ensure both source and target are already in labels.

                        Equations
                        Instances For
                          def Discourse.Rhetorical.SDRS.attach {L : Type u_1} {α : Type u_2} [DecidableEq L] (s : SDRS L α) (newLabel : L) (newContent : α) (container parent : L) (relation : RhetoricalRelation) :
                          SDRS L α

                          Attach a new labelled unit to parent via relation, recording the conjunct in container's content. The new unit becomes LAST.

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

                            Outscopes (i-outscopes from Def 14 condition 2a) #

                            def Discourse.Rhetorical.iOutscopes {L : Type u_1} {α : Type u_2} [DecidableEq L] (s : SDRS L α) (γ α' : L) :

                            iOutscopes s γ α' — γ immediately outscopes α': some edge with container γ mentions α' as source or target.

                            Equations
                            Instances For
                              @[implicit_reducible]
                              instance Discourse.Rhetorical.instDecidableIOutscopes {L : Type u_1} {α : Type u_2} [DecidableEq L] (s : SDRS L α) (γ α' : L) :
                              Decidable (iOutscopes s γ α')
                              Equations

                              Right Frontier Constraint #

                              [AL03] Available-attachment-points constraint restricting where new discourse units attach in an SDRS. α = LAST is always available; labels γ that outscope α structurally or are connected via a subordinating relation are also available, transitively closed. The central structural constraint on SDRT anaphora resolution.

                              The single-step "<" relation (Def 14 conditions 2a + 2b) #

                              def Discourse.Rhetorical.dominatesOneStep {L : Type u_1} {α : Type u_2} [DecidableEq L] (s : SDRS L α) (α' γ : L) :

                              γ dominates α' in one step: γ outscopes α' (2a) or there is a subordinating-relation edge from γ to α' (2b).

                              Equations
                              • One or more equations did not get rendered due to their size.
                              Instances For
                                @[implicit_reducible]
                                instance Discourse.Rhetorical.instDecidableDominatesOneStep {L : Type u_1} {α : Type u_2} [DecidableEq L] (s : SDRS L α) (α' γ : L) :
                                Decidable (dominatesOneStep s α' γ)
                                Equations

                                Available attachment points (Def 14, transitively closed) #

                                def Discourse.Rhetorical.availableViaChain {L : Type u_1} {α : Type u_2} [DecidableEq L] (s : SDRS L α) (α' γ : L) :
                                Prop

                                availableViaChain s α γ n — γ dominates α via a chain of length ≤ n of dominatesOneStep steps. Bounded because the transitive closure on a finite SDRS terminates.

                                Equations
                                Instances For
                                  @[implicit_reducible]
                                  instance Discourse.Rhetorical.instDecidableAvailableViaChain {L : Type u_1} {α : Type u_2} [DecidableEq L] (s : SDRS L α) (α' γ : L) (n : ) :
                                  Decidable (availableViaChain s α' γ n)
                                  Equations
                                  • One or more equations did not get rendered due to their size.
                                  def Discourse.Rhetorical.availableAttachmentPoints {L : Type u_1} {α : Type u_2} [DecidableEq L] (s : SDRS L α) :
                                  List L

                                  Labels available for new attachment from s.last: those reachable via dominatesOneStep within s.labels.length steps.

                                  Equations
                                  Instances For

                                    Structural theorems #

                                    theorem Discourse.Rhetorical.last_self_available {L : Type u_1} {α : Type u_2} [DecidableEq L] (s : SDRS L α) :

                                    LAST is always its own available attachment point (Def 14 condition 1). Holds at chain length 0.

                                    theorem Discourse.Rhetorical.availableViaChain_mono {L : Type u_1} {α : Type u_2} [DecidableEq L] (s : SDRS L α) (α' γ : L) (n : ) :
                                    availableViaChain s α' γ navailableViaChain s α' γ (n + 1)

                                    The available-via-chain relation is monotone in the chain length: longer chains include shorter ones.

                                    theorem Discourse.Rhetorical.oneStep_available {L : Type u_1} {α : Type u_2} [DecidableEq L] (s : SDRS L α) (α' γ : L) ( : γ s.labels) (h : dominatesOneStep s α' γ) :

                                    α' < γ (one-step domination) implies γ is available from α' at chain length 1. Headline corollary of Def 14 condition 2.

                                    @[reducible, inline]
                                    Equations
                                    Instances For
                                      @[reducible, inline]
                                      Equations
                                      Instances For

                                        Example (21) from [AL03] p. 149, with LAST = π₂.

                                        Labels: 0 = π₀, 1 = π₁, 2 = π₂, 3 = π₃, 4 = π₄.

                                        Edges encode the labelled-discourse-structure conjuncts:

                                        • ⟨0, 3, 4, .elaboration⟩ represents ⇓(π₃, π₄) ∈ F(π₀) (using .elaboration as a stand-in for ⇓; both subordinating).
                                        • ⟨4, 1, 2, .background⟩ represents Background(π₁, π₂) ∈ F(π₄).

                                        Plus container-marking edges so that iOutscopes recovers the box-containment structure:

                                        • π₀ contains π₃ and π₄
                                        • π₄ contains π₁ and π₂

                                        These containment relations are conjuncts in the parent box's F-content (the book's "labels A and labelling F" representation — being a label inside a box IS a content fact about the parent). We encode them as additional outscoping conjuncts using the same edge structure.

                                        For Example (21) specifically, the ⇓(π₃, π₄) and Background(π₁, π₂) edges already encode the containment (since these relations have π₃, π₄, π₁, π₂ as arguments and the relations themselves live in F(π₀) and F(π₄) respectively). No additional outscoping edges needed.

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

                                          Book p. 149 headline claim: π₁ is NOT in the available attachment set from π₂ (Example 21).

                                          The reason: π₁ and π₂ are siblings under Background, which is coordinating (not subordinating). RFC's condition 2b only opens up new attachment sites via subordinating relations, so the sibling-via-coordinating π₁ is unreachable from π₂'s right frontier.

                                          The full available set from π₂ matches the book's prediction: {π₀, π₂, π₃, π₄}.