Documentation

Studies.Sidner1979

Sidner (1979): Towards a Computational Theory of Definite Anaphora Comprehension #

This file formalizes the focusing theory of [Sid79], whose chapters on the discourse focus and on pronouns are reprinted as [Sid83]. A discourse has a discourse focus and an actor focus, each with an ordered list of alternates and a stack of rejected foci. The expected focus algorithm predicts the discourse focus from the first sentence: the subject of an is-a or there-insertion sentence, otherwise the first member of the default expected focus list, the phrases ordered theme first, then the other thematic positions with the agent last, then the verb phrase (Sentence.expectedFocus, Sentence.expectedFocus_le). The focusing algorithm confirms or rejects the current focus by the anaphora of each later sentence, retaining it when an anaphor co-specifies it and otherwise moving it to a co-specified alternate or stack member and stacking the rejected focus (State.confirm, State.step); the actor focus is the agent of the current sentence (State.updateActor). A pronoun is interpreted against the state: the discourse focus is preferred for a pronoun outside agent position and the actor focus for one in agent position, the alternates following, except that a discourse focus established in an earlier sentence than the actor focus takes precedence even in agent position (State.candidates, State.cospecify, State.cospecify_agent_of_precedence). The examples run through the pipeline: the three sentences illustrating the expected focus algorithm, the recency rule in D2, the confirmation in D25 and the movement in D35, the reversed co-specifications of D14, and D9, in which every he co-specifies Jeff while the actor focus moves from the speaker to Carl to Oscar (D9.he_jeff).

Implementation notes #

References #

The thematic relation of a phrase to its verb at the granularity of the default expected focus list: the theme, any other position, the agent, and the verb phrase itself.

Instances For
    @[instance_reducible]
    Equations

    The preference of the default expected focus list: the theme first, then the other thematic positions with the agent last, then the verb phrase.

    Equations
    Instances For
      inductive Sidner1979.Form (E : Type u_1) :
      Type u_1

      The form of a sentence as far as the expected focus algorithm consults it: an is-a or there-insertion sentence with its subject, or a plain sentence.

      • isA {E : Type u_1} (subject : E) : Form E
      • thereInsertion {E : Type u_1} (subject : E) : Form E
      • plain {E : Type u_1} : Form E
      Instances For
        @[instance_reducible]
        instance Sidner1979.instDecidableEqForm {E✝ : Type u_1} [DecidableEq E✝] :
        DecidableEq (Form E✝)
        Equations
        structure Sidner1979.Phrase (E : Type u_1) :
        Type u_1

        A phrase of an interpreted sentence: the entity it specifies, for a pronoun its co-specification, its thematic relation, whether it is a pronoun, and whether it is animate.

        • entity : E
        • thematic : Thematic
        • pronoun : Bool
        • animate : Bool
        Instances For
          @[instance_reducible]
          instance Sidner1979.instDecidableEqPhrase {E✝ : Type u_1} [DecidableEq E✝] :
          DecidableEq (Phrase E✝)
          Equations
          def Sidner1979.instDecidableEqPhrase.decEq {E✝ : Type u_1} [DecidableEq E✝] (x✝ x✝¹ : Phrase E✝) :
          Decidable (x✝ = x✝¹)
          Equations
          • One or more equations did not get rendered due to their size.
          Instances For
            structure Sidner1979.Sentence (E : Type u_1) :
            Type u_1

            A sentence is its form and its phrases in surface order.

            Instances For
              def Sidner1979.instDecidableEqSentence.decEq {E✝ : Type u_1} [DecidableEq E✝] (x✝ x✝¹ : Sentence E✝) :
              Decidable (x✝ = x✝¹)
              Equations
              Instances For
                @[instance_reducible]
                instance Sidner1979.instDecidableEqSentence {E✝ : Type u_1} [DecidableEq E✝] :
                DecidableEq (Sentence E✝)
                Equations
                def Sidner1979.Phrase.Precedes {E : Type u_1} (p q : Phrase E) :

                p.Precedes q when the default expected focus list orders p no later than q.

                Equations
                Instances For
                  @[instance_reducible]
                  Equations
                  def Sidner1979.Sentence.defList {E : Type u_1} (s : Sentence E) :
                  List (Phrase E)

                  The default expected focus list: the phrases in the order of Phrase.Precedes, surface order breaking ties.

                  Equations
                  Instances For
                    def Sidner1979.Sentence.expectedFocus {E : Type u_1} (s : Sentence E) :
                    Option E

                    The expected focus algorithm: the subject of an is-a or there-insertion sentence and otherwise the first member of the default expected focus list.

                    Equations
                    • One or more equations did not get rendered due to their size.
                    Instances For
                      def Sidner1979.Sentence.agent {E : Type u_1} (s : Sentence E) :
                      Option E

                      The agent of the sentence, the phrase in agent position.

                      Equations
                      Instances For
                        def Sidner1979.Sentence.potentialActors {E : Type u_1} (s : Sentence E) :
                        List E

                        The potential actors: the animate phrases outside agent position.

                        Equations
                        • One or more equations did not get rendered due to their size.
                        Instances For
                          def Sidner1979.Sentence.potentialFoci {E : Type u_1} (s : Sentence E) [DecidableEq E] (focus : Option E) :
                          List E

                          The potential focus list given the focus: the phrases outside agent position not co-specifying the focus, in the order of the default expected focus list.

                          Equations
                          • One or more equations did not get rendered due to their size.
                          Instances For
                            def Sidner1979.Sentence.anaphora {E : Type u_1} (s : Sentence E) :
                            List E

                            The anaphora the focusing algorithm consults: the pronouns outside agent position, or all the pronouns when none is outside agent position.

                            Equations
                            • One or more equations did not get rendered due to their size.
                            Instances For
                              theorem Sidner1979.Sentence.expectedFocus_le {E : Type u_1} (s : Sentence E) {e : E} (hs : s.form = Form.plain) (h : s.expectedFocus = some e) :
                              ∃ p ∈ s.phrases, p.entity = e ∧ ∀ q ∈ s.phrases, p.thematic ≤ q.thematic

                              The expected focus of a plain sentence is realized by a phrase of least thematic rank.

                              structure Sidner1979.Focus (E : Type u_2) :
                              Type u_2

                              A focus with the sentence that established it.

                              • entity : E
                              • since : ℕ
                              Instances For
                                def Sidner1979.instDecidableEqFocus.decEq {E✝ : Type u_2} [DecidableEq E✝] (x✝ x✝¹ : Focus E✝) :
                                Decidable (x✝ = x✝¹)
                                Equations
                                Instances For
                                  @[instance_reducible]
                                  instance Sidner1979.instDecidableEqFocus {E✝ : Type u_2} [DecidableEq E✝] :
                                  DecidableEq (Focus E✝)
                                  Equations
                                  structure Sidner1979.State (E : Type u_2) :
                                  Type u_2

                                  The state of the focusing mechanism: the discourse focus and the actor focus, the alternate focus list (the rest of the default expected focus list after the first sentence and the potential focus list afterwards), the potential actors, the last constituent of the previous sentence for the recency rule, and the stacks of rejected discourse and actor foci.

                                  • time : ℕ
                                  • discourse : Option (Focus E)
                                  • actor : Option (Focus E)
                                  • alternates : List E
                                  • potentialActors : List E
                                  • last : Option E
                                  • stack : List E
                                  • actorStack : List E
                                  Instances For
                                    @[instance_reducible]
                                    instance Sidner1979.instDecidableEqState {E✝ : Type u_2} [DecidableEq E✝] :
                                    DecidableEq (State E✝)
                                    Equations
                                    def Sidner1979.instDecidableEqState.decEq {E✝ : Type u_2} [DecidableEq E✝] (x✝ x✝¹ : State E✝) :
                                    Decidable (x✝ = x✝¹)
                                    Equations
                                    • One or more equations did not get rendered due to their size.
                                    Instances For

                                      The position of a pronoun as the rules for its co-specification consult it: agent position, a subject outside agent position, or another position.

                                      Instances For
                                        @[instance_reducible]
                                        Equations

                                        The state before the discourse.

                                        Equations
                                        • Sidner1979.State.initial = { time := 0, discourse := none, actor := none, alternates := [], potentialActors := [], last := none, stack := [], actorStack := [] }
                                        Instances For
                                          def Sidner1979.State.confirm {E : Type u_1} [DecidableEq E] (st : State E) (t : ℕ) (a : List E) :

                                          The confirmation of the current focus at sentence t by the anaphora a of the sentence: the focus is retained when an anaphor co-specifies it (step 4), moved to the first co-specified alternate (step 5) or else to a co-specified stack member (step 6) with the rejected focus stacked, and retained when no anaphor co-specifies any focus (step 10).

                                          Equations
                                          • One or more equations did not get rendered due to their size.
                                          Instances For
                                            def Sidner1979.State.updateActor {E : Type u_1} [DecidableEq E] (st : State E) (t : ℕ) (agent : Option E) :

                                            The actor focus at sentence t is the agent of the sentence when it has one, the previous actor focus being stacked when it changes.

                                            Equations
                                            • One or more equations did not get rendered due to their size.
                                            • st.updateActor t none = st
                                            Instances For
                                              def Sidner1979.State.step {E : Type u_1} [DecidableEq E] (st : State E) (s : Sentence E) :

                                              Processing a sentence: the first sentence sets the discourse focus to its expected focus and the alternates to the rest of the default expected focus list; a later sentence confirms or rejects the discourse focus by its anaphora and sets the alternates to its potential foci. Both update the actor focus, the potential actors, and the last constituent.

                                              Equations
                                              • One or more equations did not get rendered due to their size.
                                              Instances For
                                                def Sidner1979.State.run {E : Type u_1} [DecidableEq E] (st : State E) (d : List (Sentence E)) :

                                                Processing a discourse sentence by sentence.

                                                Equations
                                                Instances For
                                                  def Sidner1979.State.recency {E : Type u_1} [DecidableEq E] (st : State E) (pos : Position) :
                                                  List E

                                                  The recency rule's candidate: for a pronoun in subject position, the last constituent of the previous sentence when it is an alternate.

                                                  Equations
                                                  Instances For
                                                    def Sidner1979.State.precedence {E : Type u_1} (st : State E) :
                                                    List E

                                                    The discourse focus when it takes precedence over the actor focus for a pronoun in agent position, having been established in an earlier sentence.

                                                    Equations
                                                    Instances For
                                                      def Sidner1979.State.candidates {E : Type u_1} [DecidableEq E] (st : State E) (pos : Position) :
                                                      List E

                                                      The candidates for the co-specification of a third person pronoun in the order the rules test them. After the recency rule, a pronoun in agent position tests the discourse focus when it takes precedence, the actor focus, the potential actors, the stacked actors, and then the discourse focus and its alternates; a pronoun outside agent position tests the discourse focus, its alternates, the actor focus, and the potential actors.

                                                      Equations
                                                      • One or more equations did not get rendered due to their size.
                                                      Instances For
                                                        def Sidner1979.State.cospecify {E : Type u_1} [DecidableEq E] (st : State E) (pos : Position) (ok : E → Prop) [DecidablePred ok] :
                                                        Option E

                                                        The co-specification of a pronoun: the first candidate that the syntactic anaphoric filters and the inference mechanism, ok, accept.

                                                        Equations
                                                        Instances For
                                                          theorem Sidner1979.State.confirm_of_mem {E : Type u_1} [DecidableEq E] {st : State E} {t : ℕ} {a : List E} {cf : Focus E} (h : st.discourse = some cf) (ha : cf.entity ∈ a) :
                                                          st.confirm t a = st

                                                          Retention: an anaphor co-specifying the current focus leaves the state unchanged.

                                                          theorem Sidner1979.State.confirm_of_not_mem {E : Type u_1} [DecidableEq E] {st : State E} {t : ℕ} {a : List E} {cf : Focus E} (h : st.discourse = some cf) (ha : cf.entity ∉ a) (halt : ∃ e ∈ st.alternates, e ∈ a) :
                                                          ∃ e ∈ st.alternates, e ∈ a ∧ (st.confirm t a).discourse = some { entity := e, since := t } ∧ (st.confirm t a).stack = cf.entity :: st.stack

                                                          Movement: when no anaphor co-specifies the current focus and one co-specifies an alternate, the focus moves to an alternate and the rejected focus is stacked.

                                                          theorem Sidner1979.State.cospecify_spec {E : Type u_1} [DecidableEq E] {st : State E} {pos : Position} {ok : E → Prop} [DecidablePred ok] {e : E} (h : st.cospecify pos ok = some e) :
                                                          ok e ∧ e ∈ st.candidates pos

                                                          A co-specification is an accepted candidate.

                                                          theorem Sidner1979.State.cospecify_agent_of_precedence {E : Type u_1} [DecidableEq E] {st : State E} {ok : E → Prop} [DecidablePred ok] {d af : Focus E} (hd : st.discourse = some d) (haf : st.actor = some af) (hlt : d.since < af.since) (hok : ok d.entity) (hrec : ∀ e ∈ st.recency Position.agent, ¬ok e) :

                                                          The animate discourse focus rule: a pronoun in agent position co-specifies a discourse focus that was established before the actor focus and passes the filters, the recency rule not applying.

                                                          The examples #

                                                          The entities of the sentences illustrating the expected focus algorithm and of the discourses D2, D7, D8, D9 and D14 of chapter 4 and D25 and D35 of chapter 2.

                                                          The entities of the examples.

                                                          Instances For
                                                            @[instance_reducible]
                                                            Equations
                                                            def Sidner1979.np (e : Entity) (θ : Thematic) (animate : Bool := false) :

                                                            A phrase realized by a name or a description.

                                                            Equations
                                                            • Sidner1979.np e θ animate = { entity := e, thematic := θ, pronoun := false, animate := animate }
                                                            Instances For
                                                              def Sidner1979.pron (e : Entity) (θ : Thematic) (animate : Bool := true) :

                                                              A phrase realized by a pronoun.

                                                              Equations
                                                              • Sidner1979.pron e θ animate = { entity := e, thematic := θ, pronoun := true, animate := animate }
                                                              Instances For

                                                                (22) I took my sister to the zoo today.

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

                                                                  (23) There once was an old man who lived in the woods.

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

                                                                    (24) Linda talked with her dog all day long, with no theme.

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

                                                                      The expected foci of (22), (23) and (24): the theme, the subject of the there-insertion sentence, and the first non-agent phrase.

                                                                      (D2-1) Mary is giving a surprise party at Hilda's house.

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

                                                                        The pronoun of (D2-2), It's at 340 Cherry St., in subject position, co-specifies Hilda's house by the recency rule, ahead of the expected focus, the party.

                                                                        (D7-1) I lost a necklace at the office yesterday.

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

                                                                          (D7-2) I inherited it from my grandmother.

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

                                                                            The pronouns of (D7-2) and (D7-3), and it meant a lot to me, co-specify the necklace, the discourse focus, which the second retains; the office is never reached.

                                                                            (D8-1) Yesterday Max went to Bloomingdales with Ned and Winston on a shopping trip.

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

                                                                              The pronoun of (D8-2), While he was there, he bought some sneakers for his mother, in agent position co-specifies the actor focus Max: the discourse focus Bloomingdales was established in the same sentence and takes no precedence.

                                                                              (D9-1) I haven't seen Jeff for several days.

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

                                                                                (D9-2) Carl thinks he's studying for his exams, the pronoun in the agent position of the complement co-specifying Jeff.

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

                                                                                  (D9-3) Oscar says he is sick.

                                                                                  Equations
                                                                                  • One or more equations did not get rendered due to their size.
                                                                                  Instances For
                                                                                    theorem Sidner1979.D9.foci :
                                                                                    afterB.discourse = some { entity := Entity.jeff, since := 1 } ∧ afterB.actor = some { entity := Entity.carl, since := 2 } ∧ afterC.discourse = some { entity := Entity.jeff, since := 1 } ∧ afterC.actor = some { entity := Entity.oscar, since := 3 }

                                                                                    The discourse focus is Jeff throughout while the actor focus moves from the speaker to Carl to Oscar.

                                                                                    The pronouns in agent position of (D9-2) and of (D9-4), but I think he went to the Cape with Linda, co-specify Jeff: the discourse focus was established before the actor focus.

                                                                                    (D14-1) I took my dog to the vet yesterday.

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

                                                                                      (D14-2a) He bit him in the hand, he my dog and him the vet.

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

                                                                                        (D14-2b) He injected him with a new medicine, he the vet and him my dog.

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

                                                                                          In agent position the actor focus, the speaker, fails the filters for he, and the potential actors follow in surface order: my dog, or the vet once dogs are found not to inject.

                                                                                          Outside agent position the discourse focus, my dog, comes first for him, and the vet follows once dogs are found to have no hands.

                                                                                          theorem Sidner1979.D14.foci :
                                                                                          (afterA.step b).discourse = some { entity := Entity.theVet, since := 2 } ∧ (afterA.step b).stack = [Entity.myDog] ∧ (afterA.step b).actor = some { entity := Entity.myDog, since := 2 } ∧ (afterA.step b).actorStack = [Entity.speaker] ∧ (afterA.step b').discourse = some { entity := Entity.myDog, since := 1 } ∧ (afterA.step b').actor = some { entity := Entity.theVet, since := 2 }

                                                                                          After (D14-2a) both foci have moved, my dog and the speaker stacked; after (D14-2b) the discourse focus is retained and the actor focus is the vet.

                                                                                          (D25-1) Last week there were some nice strawberries in the refrigerator.

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

                                                                                            (D25-2) They came from our food co-op and were unusually fresh.

                                                                                            Equations
                                                                                            • One or more equations did not get rendered due to their size.
                                                                                            Instances For
                                                                                              theorem Sidner1979.D25.retained :
                                                                                              (State.initial.run [a, b]).discourse = some { entity := Entity.strawberries, since := 1 } ∧ (State.initial.run [a, b]).stack = []

                                                                                              The expected focus, the subject of the there-insertion sentence, is confirmed.

                                                                                              (D35-1) Alfred and Zohar liked to play baseball, the theme of the complement.

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

                                                                                                (D35-2) They played it everyday after school before dinner.

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

                                                                                                  (D35-3) After their game, Alfred and Zohar had ice cream cones, the game the baseball.

                                                                                                  Equations
                                                                                                  • One or more equations did not get rendered due to their size.
                                                                                                  Instances For
                                                                                                    theorem Sidner1979.D35.movement :
                                                                                                    (State.initial.run [a, b, c]).discourse = some { entity := Entity.baseball, since := 1 } ∧ (State.initial.run [a, b, c]).alternates = [Entity.iceCreamCones] ∧ (State.initial.run [a, b, c, d]).discourse = some { entity := Entity.iceCreamCones, since := 4 } ∧ (State.initial.run [a, b, c, d]).stack = [Entity.baseball]

                                                                                                    Baseball is confirmed by it in (D35-2), the pronoun in agent position not consulted, and retained through (D35-3); the pronoun of (D35-4) moves the focus to the ice cream cones and stacks baseball.