Questions under discussion: stack and strategy #
The inquiry coordinate of the conversational scoreboard: the stack of accepted-but-unanswered questions (head is the immediate QUD; subquestions push, answers pop) and the rose-tree strategy of inquiry decomposing a question into subquestions whose joint resolution answers the parent.
A QUD stack: ordered list of accepted, unanswered questions (Roberts 2012 Def 10g).
- questions : List (Question W)
Instances For
Empty QUD stack (discourse initial state).
Equations
- Discourse.QUDStack.empty = { questions := [] }
Instances For
The immediate QUD: the most recently accepted, unanswered question.
Equations
- s.immediateQUD = s.questions.head?
Instances For
The question at the root of this (sub)strategy.
Equations
- (Discourse.Strategy.leaf q).question = q
- (Discourse.Strategy.branch q a).question = q
Instances For
Immediate substrategies (empty for leaves).
Equations
- (Discourse.Strategy.leaf q).substrategies = []
- (Discourse.Strategy.branch q a).substrategies = a
Instances For
All questions in the strategy (root + all descendants).
Equations
- (Discourse.Strategy.leaf q).allQuestions = [q]
- (Discourse.Strategy.branch q a).allQuestions = q :: List.flatMap Discourse.Strategy.allQuestions a
Instances For
Leaf questions only (terminal nodes of the strategy).
Equations
- (Discourse.Strategy.leaf q).leaves = [q]
- (Discourse.Strategy.branch q a).leaves = List.flatMap Discourse.Strategy.leaves a
Instances For
A strategy is complete at a single level: the meet of children's questions entails the parent. Recurse on substrategies for full-tree verification.
Equations
- (Discourse.Strategy.leaf q).isComplete = True
- (Discourse.Strategy.branch q a).isComplete = (List.foldl (fun (x1 x2 : Question W) => x1 ⊓ x2) ⊤ (List.map (fun (x : Discourse.Strategy W) => x.question) a)).questionEntails q
Instances For
A discourse move is relevant to a strategy if some alternative of
den partially answers some question in the strategy.
Equations
- Discourse.moveRelevantToStrategy den strat = ∃ a ∈ den.alt, ∃ q ∈ strat.allQuestions, q.partiallyAnswers a