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 #
- A sentence is its form, which names the subject of an is-a or there-insertion sentence, and
its phrases in surface order, each with the entity it specifies (for a pronoun its
co-specification), its thematic relation at the granularity of the default expected focus
list, whether it is a pronoun, and whether it is animate; agent position is the agent
relation, and the verb phrase is a phrase with the relation
verbPhrase, which the examples omit. - The pipeline processes interpreted sentences: the focusing algorithm consults the co-specifications of the anaphora, and the pronoun rules order the candidates from which a predicate standing for the syntactic anaphoric filters and the inference mechanism selects the first. Anaphora in agent position are not consulted by the focusing algorithm when others occur.
- Only pronominal anaphora are modelled, so the steps of the focusing algorithm on do-anaphora, focus sets, implicit specification and nominalization are omitted, and the clause of step 3 on a definite noun phrase mentioning the focus is vacuous. A focus moved to a stack member stacks the rejected focus above the remaining members. Possessives, plural pronouns and the potential actor ambiguity condition are outside the model.
References #
Equations
- Sidner1979.instDecidableEqThematic x✝ y✝ = if h : x✝.ctorIdx = y✝.ctorIdx then isTrue ⋯ else isFalse ⋯
Equations
- Sidner1979.instFintypeThematic = { elems := { val := ↑Sidner1979.Thematic.enumList, nodup := Sidner1979.Thematic.enumList_nodup }, complete := Sidner1979.instFintypeThematic._proof_1 }
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
Equations
Equations
- Sidner1979.instDecidableEqForm.decEq (Sidner1979.Form.isA a) (Sidner1979.Form.isA b) = if h : a = b then h ▸ isTrue ⋯ else isFalse ⋯
- Sidner1979.instDecidableEqForm.decEq (Sidner1979.Form.isA subject) (Sidner1979.Form.thereInsertion subject_1) = isFalse ⋯
- Sidner1979.instDecidableEqForm.decEq (Sidner1979.Form.isA subject) Sidner1979.Form.plain = isFalse ⋯
- Sidner1979.instDecidableEqForm.decEq (Sidner1979.Form.thereInsertion subject) (Sidner1979.Form.isA subject_1) = isFalse ⋯
- Sidner1979.instDecidableEqForm.decEq (Sidner1979.Form.thereInsertion a) (Sidner1979.Form.thereInsertion b) = if h : a = b then h ▸ isTrue ⋯ else isFalse ⋯
- Sidner1979.instDecidableEqForm.decEq (Sidner1979.Form.thereInsertion subject) Sidner1979.Form.plain = isFalse ⋯
- Sidner1979.instDecidableEqForm.decEq Sidner1979.Form.plain (Sidner1979.Form.isA subject) = isFalse ⋯
- Sidner1979.instDecidableEqForm.decEq Sidner1979.Form.plain (Sidner1979.Form.thereInsertion subject) = isFalse ⋯
- Sidner1979.instDecidableEqForm.decEq Sidner1979.Form.plain Sidner1979.Form.plain = isTrue ⋯
Instances For
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
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
- Sidner1979.instDecidableEqSentence.decEq { form := a, phrases := a_1 } { form := b, phrases := b_1 } = if h : a = b then h ▸ if h : a_1 = b_1 then h ▸ isTrue ⋯ else isFalse ⋯ else isFalse ⋯
Instances For
Equations
- p.instDecidableRelPrecedes q = { decide := p.thematic.rank.ble q.thematic.rank, reflects_decide := ⋯ }
The default expected focus list: the phrases in the order of Phrase.Precedes, surface
order breaking ties.
Equations
- s.defList = List.insertionSort Sidner1979.Phrase.Precedes s.phrases
Instances For
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
The agent of the sentence, the phrase in agent position.
Equations
- s.agent = Option.map (fun (x : Sidner1979.Phrase E) => x.entity) (List.find? (fun (p : Sidner1979.Phrase E) => decide (p.thematic = Sidner1979.Thematic.agent)) s.phrases)
Instances For
The potential actors: the animate phrases outside agent position.
Equations
- One or more equations did not get rendered due to their size.
Instances For
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
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
The expected focus of a plain sentence is realized by a phrase of least thematic rank.
A focus with the sentence that established it.
- entity : E
- since : ℕ
Instances For
Equations
- Sidner1979.instDecidableEqFocus.decEq { entity := a, since := a_1 } { entity := b, since := b_1 } = if h : a = b then h ▸ if h : a_1 = b_1 then h ▸ isTrue ⋯ else isFalse ⋯ else isFalse ⋯
Instances For
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
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
- Sidner1979.instDecidableEqPosition x✝ y✝ = if h : x✝.ctorIdx = y✝.ctorIdx then isTrue ⋯ else isFalse ⋯
The state before the discourse.
Equations
- Sidner1979.State.initial = { time := 0, discourse := none, actor := none, alternates := [], potentialActors := [], last := none, stack := [], actorStack := [] }
Instances For
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
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
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
Processing a discourse sentence by sentence.
Equations
- st.run d = List.foldl Sidner1979.State.step st d
Instances For
The recency rule's candidate: for a pronoun in subject position, the last constituent of the previous sentence when it is an alternate.
Equations
- st.recency Sidner1979.Position.other = []
- st.recency pos✝ = []
- st.recency pos✝ = if e ∈ st.alternates then [e] else []
Instances For
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
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
The co-specification of a pronoun: the first candidate that the syntactic anaphoric filters
and the inference mechanism, ok, accept.
Equations
- st.cospecify pos ok = List.find? (fun (e : E) => decide (ok e)) (st.candidates pos)
Instances For
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.
A co-specification is an accepted candidate.
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.
- speaker : Entity
- sister : Entity
- zoo : Entity
- today : Entity
- oldMan : Entity
- woods : Entity
- linda : Entity
- dog : Entity
- allDay : Entity
- mary : Entity
- party : Entity
- hildasHouse : Entity
- cherryStreet : Entity
- necklace : Entity
- office : Entity
- yesterday : Entity
- grandmother : Entity
- max : Entity
- bloomingdales : Entity
- ned : Entity
- winston : Entity
- trip : Entity
- sneakers : Entity
- mother : Entity
- jeff : Entity
- days : Entity
- carl : Entity
- exams : Entity
- oscar : Entity
- cape : Entity
- myDog : Entity
- theVet : Entity
- hand : Entity
- medicine : Entity
- lastWeek : Entity
- strawberries : Entity
- refrigerator : Entity
- foodCoop : Entity
- alfredZohar : Entity
- baseball : Entity
- school : Entity
- dinner : Entity
- iceCreamCones : Entity
Instances For
Equations
- Sidner1979.instDecidableEqEntity x✝ y✝ = if h : x✝.ctorIdx = y✝.ctorIdx then isTrue ⋯ else isFalse ⋯
A phrase realized by a name or a description.
Equations
- Sidner1979.np e θ animate = { entity := e, thematic := θ, pronoun := false, animate := animate }
Instances For
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
The state after (D9-2).
Instances For
The state after (D9-3).
Instances For
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
The state after (D14-1).
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.
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
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
(D35-4) They tasted really good.
Equations
- Sidner1979.D35.d = { form := Sidner1979.Form.plain, phrases := [Sidner1979.pron Sidner1979.Entity.iceCreamCones Sidner1979.Thematic.theme false] }
Instances For
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.