COLING 82, J. HoreckS, (ed.\] 
North-Holland Publishing Company 
© Academia. 1982 
A FORMALISM FOR THE STRUCTURAL ANALYSIS OF DIALOGUES 
Helder Coelho 
Centro de Informatica 
Laboratorio Nacional de Engenharia Civil 
I01, Av. do Brasil, 1799 Lisboa Codex, Portugal 
This paper outlines a formalism for conversational analysis that 
captures multiple interactional patterns of mixed-initiative and 
fix the historical skeleton of a dialogue. The formalism, composed 
by a grammar of dialogues (syntax and semantic component) and a 
collection of attached scenarios (pragmatic component), is written 
in Prolog and implemented in a program which converses in Portugue 
se to provide a library service. 
INTRODUCTION 
In trying to solve the problem of building programs that interact in natural lan- 
guage no great attention has been paid to formalisms for the structural analysis 
of dialogues. However, such formalisms may support a clear description of the ni L 
tory of the whole conversation, and convey reasoning power when associated to 
other tools such as definite clause grammars DCG's \[2\] , an extension of con- 
text-free grammars. And, on the other hand, they promote the elaboration of theori 
es of systematic comprehension of conversations and, in fact, a better understan- 
ding of conversations between individuals, because they allow their simulation. 
Dialogue taking place, for example, in a library world has structural properties, 
and rules are derived to form a grammar of dialogues \[4\] . This grammar, expres- 
sed by a DCG, generates all possible exchange forms and is responsible for the o~ 
ganization of the possible interactions in such context, because it contains a 
description of the various ways in which the dialogue units may be strung together 
to form dialogues. In fact, the majority of those rules are general and may apply 
to other task domains. Rules are defined in terms of.semantic concepts, like re- 
quests or answers, which are supported by sentences of natural language. And, these 
sentences are analysed, ie, translated into logical structures, by a DCGfor Portu 
guese \[I~ . Both DCG's are expressed by Prolog's grammar rules \[3\] 
The research behind this paper is guided by the objective of design and implementa 
tion of computer programs capable to display intelligent behaviour according tot~ 
standards of human perfomance. An associated objective, the comprenhension of human 
perfomance with the help of computer models leading to theories about intelligent 
human behaviour, is kept in mind but not discussed along the paper. 
A FORMALISM FOR THE ANALYSIS OF DIALOGUE 
The organization of taking turns to talk is fundamental to dialogue, as well as to 
a program able to converse. A formalism for the analysis of dialogue is proposed, 
and we exa~ne its compatibility, with the representation of the history of dialo 
gues between a program and its users. 
Let P be a set of participants and C a set of contributions. By a contribution act 
we mean a member of the set PKC of participant-contribution pairs. For exemple, 
<pl,cll> is a contribution act, where pl and cll are the first members of ~ and 
C, respectively. 
61 
62 H. COELHO 
Let S be a set of conversational states or configurations. A conversational state 
s is a sequence of at least two related contribution acts. For exemple, cll stands 
for the first contribution regarding the first conversational state. 
By a dialogue of length n we mean a member of the set (P x C) of sequences of 
n contribution acts; an~by a dialogue we mean a member of the set 
T = nl~ (PxC)n (n E N) 
of dialogues of any length. Each member of a dialogue is of the form 
KS, <p,c)) (s ~S,p ~ P,c ~ C) 
wich we identify with the triple <p,s,c>. 
For example, T = {<pl,l,cll> , <p2,l,c21> ,~p1,2,c32> , (p2,2,c42> } 
is a dialogue of length 4, with 2 participants, pl and p2, 2 conversational states 
and 4 contributions. 
Wecall E = PxSxC the set of events, and any triple <p,s,c) an event. A dialogue 
is a sequence of events, grouped into units, and governed by rules. The conversa- 
tional units are the invariant structures of dialogue: sub-dialogues, exchanges, 
monologues and contributions. A sub-dialdgue (dialogue course or segment) is any 
sequential subset of a dialogue, 
Course = ~ x:(3t£T) (xht=O and xUt&T)} 
An exchange is a set of two consecutive events, concerning the same conversational 
state and two different participants. A pre-defined exchange, conducted by the 
program, is called an exchange pattern. A monologue is a sequence of at least two 
consecutive events, concerning the same conversational state and the same partici- 
pant. Mon ~U((p}xc) n 
A contribution of a participant to a dialogue is a sequence of his contributions. 
The semantics of contributions covers the following types: requests (statements, 
questions, and commands), answers and remarks (eg. agreement). 
The underlying structures of the situations occurring in a certain problem world 
determine the organization of dialogue and its systems. A grammar of dialogue is a 
set of rules of dialogue. Rules of dialogue state how participants understand 
coherent dialogues, and specify the membership of the set of legal dialogues K, 
such that K ~ T, where T is the set of dialogues of any length. Rules of dial9- 
gue define the class of coherent dialogue and their attached models. They contain 
the way contributions are put together. A model is a system of dialogue defined as 
the triple <P,C,K> . The core of any model is the set R of rules defining K. 
ANALYSIS OF DIALOGUE 
We consider the dialogue occuring between the program TUGA Ill and its users in 
the library world. Such dialogues are evolving dual processes, goal-and-rule-orie_n 
ted for sharing information between the participants. They are dual because there 
are only two participantes at a given time. They are goal oriented because they 
are carried on to satisfy, for example, the following objectives: 
i) to satisfy users straightforward request concerning the document co~ 
lection and the classification system, 
ii) to ask users about the library world (eg. the author of a paper), for 
conversational.guidance purpose, and 
iii) to present the user with proposed data (eg, the document classifica- 
tion), enabling him to choose from or modify it. 
They are rule-oriented because the conversational units are governed by a grammar 
of dialogueswhich determines the roles played by the program--the librarian and 
the library's secretary, and by the user. The grammar also allows the inclusion of 
several courses inside a dialogue, such as topic shifts for simple question- 
A FORMALISM FOR THE STRUCTURAL ANALYSIS OF DIALOGUES 63 
-answering purposes. 
Consider a dialogue between the program and one of its users, defined as a sequen 
tial organization of single exchanges. The conversational description is represen- 
ted in the diagram of the following figure. 
u.user 
p -program 
q .quesOon 
a.answ~ Fig. I 
Conversational description 
The diagram shows the history of that dialogue. The interaction proceeds in separa 
te discrete steps from one to another of a finite number of configurations. The~ 
are three sucessive conversational states through time, each one corresponding to 
a single exchange, question (q) - answer (a) pair, conducted under user initiative. 
This history is described as follows. 
T =~< u,l,qll> ,<p,l,aYl> ,<u,2,q32>,<p,2,a42>,<u,3q53),<p,3,a63>l 
is a dialogue of length 6, with 2 participants, the user (u) and the program (p), 
with 3 conversational states and 6 contributions (questions and answers). Note that 
'q32', for example, means that the third contribution is a question, referring to 
the second conversational state. 
Consider now the following segment of a nested dialogue, concerning the classifica 
tion of a document: 
(I) u-Classifique "Explorations in 
Cognition"~ 
(2) p-~explorations in cognitibn" 
e desconhecido~ 
(3) Quer ainda classifica-lo? 
(4) u-Esta bem. 
(5) p-Vamos classifica-lo~ 
(6) Por favor, de-me o titulo de 
uma referencia do documento 
em quest~o. 
(7) u-Qual ~ o tTtulo do Nilsson? 
(8) p-"artifical intelligence" 
(9) Vamos classifica-lo. 
(I0) Por favor, de-me o titulo de 
outra referencia do documento 
em quest~o. 
(II) u-Nao tenho nenhuma. 
(12) p-Esta bem~ 
(13) Ja que nao consegui obter 
nenhuma referencia, n~o sei 
dar-lhe qualquer sugestao~ 
Quer ainda classifica-lo? 
(14) u-Nao quero. 
(15) p-Esta bem~ E que mais? 
(Classify "Explorations in Cognition"~) 
("explorations in cognition is unknown: 
Do you still want to classify it?) 
(All right.) 
(Let us classify itS) 
Please give me the title of a reference 
from the document in question.) 
(What is the title of Nilsson?) 
("artificial intelligence". 
Let us classify it~ 
Please, give me the title of another 
reference from the document in question.) 
(I have none.) 
(All right~ 
As I could not get any reference, I don't 
known to give you any suggestion: 
Do you still want to classify it?) 
(No, I don't.) 
(All right~ And what else?) 
The conversational description, represented in the figure 2, shows the organization 
and levels of the dialogue. Numbers, placed on the left of contributions, are used 
for referencing them to the segment considered. 
64 H. COELHO 
r .............. \] O-- 
L ........... UJ i i 
, ,- 'ts.d.J ! 
,, I 
.................. JL ........... ~ f~l 
u - u~ ~-ques~on L ......... J 
- irogrorn o-~.~,i, er 
r -remork 
Fig. 2 
Conversational description 
The histo~ of this dialogue is described as follows, 
T=((u, 1 ,ql l) ,<p ,2 ,a22>,Kp ,2 ,q32> ,4~ 2 ,a4~ ,KP ,3,r53~ ,<p ,3 ,q63 >,~ ,4 ,q74>, 
X p ,~,.qB4~,5,r95),Kp,5,qlO5),Ru ,5,ql15),<p,6,r126>,~ p,6,a136} ,(u ,6,a146>, 
4p,l ,al51~ 
is, a dialogue of length 15, with 2 participants, the user (u) and the program 
(p), 6 conversational states and 15 contributions (questions (q), answers(a.) and 
remarks (r). 
GRAM~R OF DIALOGUES 
The grammar of dialogues of program TUGA is a complete and precise description of 
the properties of a certain class of dialogues. The properties concern the struc- 
tures of the _dialogues, occurring in a libra~ world, and organized as models. 
This grammar machine~ is able to parse situations, and it is-ve~ much like the 
one able to parse a natural language sentence: the objects recognized, dialogue 
units, are characterized as structured objects asse~led out of recognizable parts 
according to know rules of assembly. 
A dialogue carried out ~ TUGA has ~o participants, the program (p) and its users 
(u), and therefore ~o mutually exclusive states, the "agent" and the "passive par 
ticipante". Both participants may take the initiative during the encounter, ie. the 
program may be an "agent" or a "passive participant". The "agent" claims the turn 
to speak at any given moment, and plays an active role. The "passive participant" 
does not claim the turn to speak at any given moment. 
Considering ~o states for each participant, there are four possible conversational 
states. However, we only consider ~o states: "agent"-- "passive participant" and 
"passive participant"-- "agent". (The other ~o states represent in some sense a 
failure of dialogue.) 
The BNF specification of the grammar syntax above the discourse level, presented 
below, characterizes only th~ class of dialogues considered. 
< converse ) --~ (openingl) , (converse~ 
(converse > --~ (opening2> , <conversel> 
(conversel) --~ (converse2), (continue) 
(converse2) --~ <dialogue} 
< converse2> --~ <~nologue) 
,A FORMALISM FOR THE sTRUCTURAL ANALYSIS OF DIALOGUES 65 
<converse3) --~ <dialoguel> 
(converse4) ._~ ( decide>, <dialogue> 
< converse5> --~ (dialogue2 > , <course> 
< converse6> --~ (ask-author>, 
(ask-publisher>, 
< ask-date-of-publ ication > , 
< ask-document-type) 
(converse7> --) <converse2> , <dialogue>, 
< converse2> 
(continue) --~ <conversel> 
( continue> --> <suspend >, <converse~ 
< continue> --, (close) 
< dialogue> --> <user >, <program> 
(dialoguel> --> <p-questionl> , <dialogue> 
• (dialogue2> --> <p-question2> , <dialpgue> 
<dialogue3> ---> <p-question3> , <dialogue> 
<course> --~ <converse4> 
( course> --~ (refusal> , (converse4> 
(course> --~ (change> 
course> -~ (dialogue3> , <refusal> 
<course> -~ <return> , <converse3> 
user~ --~ <question> 
< user> ---) <fact~ 
(user> --* <comma~d 
( user~ --,, (answer> 
< program~ ~ ( response> 
<program> --~ <response> , <converse3> 
~program> --~ <response> , < converse5 > 
~program> --~ ~response> , <converse6> 
< program> --* <response> , <converse7> 
Let us consider only the first few rules in order to make explicit their meaii~g.A 
general dialogue, 'converse', is defined as an opening following by a sub-dialogue 
which may be followed by a sub-dialogue or closed by user initiative. The user may 
also suspend t~llporarily the dialogue without affecting it. This feature justifies 
the existence of two kinds of opening: one for the dialogue start and the other 
for the re-start. A dialogue is simply a sequence of exchanges or monologue, or is 
followed by several models of dialogue. For example, dialogue on the classificatim 
of a document is handled by dialogue model 'converse5', which is defined by rules 
'course'. These rules define several kinds of possible courses during the interac- 
tion. Dialogue on adding new documents is handled by dialogue model 'converse6', 
which is served by a set of exchange patterns :- a sequence of pre-defined program 
questions whose order may be altered by user. Some feature of a sentence, together 
with the current context, can trigger a hypothesis that an instance of some parti- 
cular model or pattern is being conveyed. All this means that the program can cope 
with user changes of mind, single or multiple data, provided in any order, and can 
avoid asking questions whose answerswere provided either implicitly or explicitly 
at some earlier time. 
We use rules of interpretation, below the discourse level. The rules of interpreta 
tion deal with what the user does, eg, requests (statements, questions and commands) 
and answers. Other rules deal with what the program does, eg, answers, questions, 
and remarks (comments and agreements). Here are, for example, thne'e of these r~1~s: 
Rule-- If the user makes a statement, the program interprets it as a request for 
confirmation. 
Rule-- If the user asks a closed question (form Q-S, where S means the statement 
corresponding to the question) and the program responds with an existential E(yes/ 
/no), then the program is understood as answering the user with the tratement E-S. 
Rule--If the user issues a command, then the program interprets it as a valid re- 
quest for an action A only if the following conditions hold: 
66 H. COELHO 
the request is ended with an exclamation mark, and action A is classifying a do- 
cument, generating a category, adding data items and, deleting data items. 
The first two actions also cover the general purpose of gathering information 
through a referent: the referenced document or the classification. 
DIALOGUE ORGANIZATION 
STRUCTURES AND LEVELS 
Any original natural language sentence is parsed by a cascade of two DCG's. The 
first DCG, above the discourse level, represents the syntactic information about 
dialogue form (exchange patterns and dialogue models) and is closely coupled to a 
set of scenarios which represent the pragmatic information about the task domain 
(a collection of situation descriptions). The second DCG, on the sentence level, 
represents the syntatic information about sentence form and the general semantic 
information. 
Let us observe in more detail the main dialogue forms, engineered and manipulated 
by the first DCG in order to build up the overall skeleton of the dialogue hJstor~ 
An exchange pattern (eg.'dialogue') is a pre-defined exchange between the program 
and the user. It is defined by a name and a number, and provided by a message and 
the number of the following contribution. It consists of a question of an expected 
form, followed by a simple dialogue. The question is constructed with the value of 
the message (eg. a proper noun). The simple dialogue is the standard way to inter 
pret user contributions: the question-answer pair. As regards exchange patterns, 
the user contribution expected is not always an answer: the user also question the 
program, and by doing so a new dialogue is nested in the previous ..ne. Program 
questions are motivated by the content of user request. For exemple, interrogating 
'the name of a new category' and 'under what categories may it be placed' are ge- 
nerated when the user wants to create a new category in thec~ssification system. 
The exchange pattern is called by the grammar of dialogues through its name and 
number. In case of non acceptance of the program question by the user, the initia 
tive for restarting the dialogue belongs to the user. But the new dialogue may b'e 
nested in the previous dialogue, as often occurs in the process of classifying new 
documents. 
A dialogue model (eg. 'converse') is a suite of unconstrained exchanges between 
the program and the user. It generates detailed expectations about the next contri 
bution, by having an ordering for calling exchange patterns which may be altered- 
by user. The user may give several answe~which need not be ordered. Also, he may 
modify his previous answers. The program uses the success or failure of is predic 
tions to determine what role the user contribution plays in the dialogue. Whene~r 
a dialogue model is activated, an appropriate exchange pattern is invoked,and the 
program poses a question to the user and interprets the user response. If a failure 
occurs, the program is able to come back to the same topic. For example, during 
the classification of a documents the user may oppose the program and request in- 
formation about the location of a category in the classification system. And, the 
program only accepts three titles of documents,~nowD to its data base, and accor- 
ding to its classification method. Therefore, it goes on asking the user till it 
attains that limit, and skips any unknown title. But if the user gives up, the 
program restarts a new dialogue. These features are implemented either by using 
recursion or backtracking. R~cursion is the ability of a procedure to contain a 
procedure call to another copy of itself. The declaration of the procedure, for the 
dialogue model in charge of the classification process, contains a procedure call 
which matches the name of another copy of the same procedure declaration. Counters 
control the process of recursion during the program asking for references in the 
classification process. And, an handling device deals with contradictions arising 
when a new document is archived. Numbers (l and O) are assigned according to 
existing contradiction or otherwise, and summed over the facts. If the result is 
A FORMALISM FOR THE STRUCTURAL ANALYSIS OF DIALOGUES 67 
non-zero, a failure aries forcing backtracking and the restarting of the process. 
In the course of conversing, the program remembers the events, by storing conver- 
sational states containing the name of the participant, the number of the contri- 
bution, and the active information, such as questions or answers. This knowledge 
about the current dialogue history and skeleton is maintained in order to be served 
in any specific situation or instance to which it applies. In fact, it is the sup- 
port for the organizational ability of the grammar of dialogues .The example below 
illustrate this ability. Consider the segment of a nested dialogue, presented in 
figure 2, concerning the classification of a document.This dialogue presents a sub- 
-dialogue and an interruption due to the user. The sub-dialogue corresponds to a 
dialogue model, which organizes interactions concerning the implementation of the 
document classification method. The interruption is presented as an exchange,nested 
in the sub-dialogue. This conversational description shows the organization, the 
depth of nesting, the change of initiative, and the levels of the dialogue (one for 
the ordinary tdalogue; the other for the particular dialogue model; and, the last 
one for the interruption). 
Consider another example of a dialogue (numbers appended to the natural language 
contributions correspond to the conversational states). 
(I) u-Crie Prolog~ p-Prolog e conhecido~ 
(2) u-Quero criar uma categoria~ 
(3) p-Por favor, qual o home da nova 
categoria? 
u-"Pattern recognition". 
p-"Pattern recognition" e desonhecida~ 
(4) Pot favor, debaixo de que categoria 
a pretende inserir? 
u-"Machine vision". 
p-"Machine vision" ~ conhecida~ 
(5) A nova categoria ficou inserida no 
sistema de classifica9ao e recebeu 
o numero 2141. 
E que mais? 
The history of this dialogue is: 
(Create Prolog~)(Prolog is known~) 
(I want to generate a category,) 
Please, what is the name of the new 
category?) 
"Pattern recognition" is unknown~ 
Please, under what category do you 
want to insert it?) 
"Machine vision" is known~ 
The new category has been inserted in 
the classification system and received 
2141 as a number. 
And what else?) 
T=I <u, 1 ,cl I> ,<p,2 ,a21'~,<u ,2 ,c32~ ,< p,3,q43>,< u ,3,a532, < p,4,r64> ,<p,4,q74>, 
< u ,4, a84) ,t, p, 2 ,a92>} 
sce~orio C 
p ............................................. \] 
• ,, 
c~ 
Io53 1 l i 
: ............. ~, ............ \]i ~-~ '~ I r-remark 
.................................................... ~ c-comrnar~ 
Dialcx3ue~ ~ & 2 are excr~r~ge i:~t~-cnsol scc.,l~no C: 
que~t~o~-~s~r pars I( q43, 053 ),(r(~4 ~q74,0B4)} 
Fig. 3 
Conversational description 
The program knows that the first user contribution, a command,Ku,l,cll> , opens a 
dialogue composed of a simple question-answer pair (conversational state I). The 
dialogue goes on with another user command,<u,2,c32>, which invokes a dialogue 
68 H. COELHO 
model for creating new categories. This dialogue ~ode\] calls two exchange patterns, 
and the dialogue is closed with the program answer<p,2,a92>. Note that this last 
event has the same conversational state number (2) as the event invoking the dia- 
logue model. This information, shared by the program and one of its users, helps 
the program to decide on what to do and how to proceed. It chooses its course of 
action by inspecting previous user decisions, through the remembering mechanism. 
The dialogue model, responsible for gathering information about new documents, 
exemplifies the use of backtracking. If the user changes his mind at any stage of 
the dialogue, the program backtracks to follow up the consequences of the new in- 
formation. Supplied facts contradicting those already known are detected in the 
immediate interpretation of the user's input, and when this interpretation is 
complete, a failure leading to the restart of interpretation at a previous level 
occurs if a contradiction has been found. This mechanism overrides the repetition 
of unanswered questions, and skips questions by recognizing the content and form 
of the user's answers. 
SCENARIOS 
Scenarios are sets of expectations and presumptions regarding a certain type of 
situation, They are of the form "if <situation description> then expect <situation 
description)", or "if <situation description~ is a satisfied then do <action 
description>". Situation and action descriptions are triggered by verbs. Scenarios 
are used in TUGA \[l~ as recognition devices for classifying and identifying situa- 
tions in a dialogue, and they call the exchange patterns and organize their invo- 
cation. All the embedded knowledge embedded in the scenarios covers the ability. 
- to derive questions from relevant information or from the logical consequences 
of the information that is known about the questioned topic combined with general 
knowledge of the library world, and 
- to handle the user's answers 
TUGA is a program able to play two roles in the library world. 
It acts as a librarian and as a library's secretary. 
Possible events in the library world are grouped into the following scenarios: 
Scenario A - information transaction 
Subscenario Al - data output control 
Subscenario A2 - dictionary extensions 
Scenario B - addition and/or deletion of data items 
Subscenario Bl - addition of new documents 
Subscenario B2 - addition of news categories 
Subscenario B3 - deletion of existing documents 
Subscenario B4 - deletion of classification categories 
Scenario C - classification category generation 
Scenario D - document classification 
Scenarios A, B and C may occur inside scenario D. Scenarios B2 and B4 may occur 
inside scenario C. 
Exchange patterns are classified according to their use in these scenarios, as 
shown in the following figure. The classification is made possible thnpugh two 
of their arguments: name and number. 
This taxonomy for situation recognition is made available during a dialogue. It 
contains the pragmatic knowledge of the task domain, and supports the p, ogram 
ability to converse with users in a more clever way, when put aside the gi-..~mar 
of dialogues. 
A FORMALISM FOR THE STRUCTURAL ANALYSIS OF DIALOGUES 69 
A nandl~ A~ unoccep~ os~nq ~ ~e unke~wn ~d is o pr0p~ .~n 
, ~mences 
~w, n9 ~bout ~ u,*n~ ~ra don~,n 
ask,rig o~n~ ~ or~ p~bt,~er 
add,t~ 
m 
B2 system 
o~er~ ~n~ me ~ ca~go~ no~e 
C 
a~,r~ me r~e~ UUe 
rne£tx~ asking tDe ~ to ¢or~ ~s c~ 
~ user~ chO.ce ~or ~oc~t co~or~s 
Fig. 4 
Classification of exchange patterns 
CONCLUSIONS 
An intelligent automated conversationalist may attempt to construct a process of 
participation by analysing the other's process, ie, use conversational procedures, 
develop multiple conversations, fix the skeleton of the dialogue history, build up 
a conversational context space and appeal to it as a guider for the calculation of 
responses and disambiguation tactics. We are approaching the complexity of these 
phenomena by-developing an evolving framework for conversational sequencing struc- 
ture analysis, allowing users to insert sequences and abruptly shift to other topiG 
and the program to recognize user turns at conversing. However, our framework is 
not completed and some more work is needed to cover, for example, the implicit con 
versational mode or internal dialogue. This mode constitutes the background of th'~ 
explicit flow of what is declared, tackled by the present work. Each participant, 
before uttering a sentence, discusses with himself to find the best appropriate ut 
terance to match the opponent one. By doing this, the participant executes severaT 
mental constructions, like deductions, presupositions, analogies or associations, 
and compares the result to his beliefs in order to discover the intention of the 
other. A part of this extension, it would also be required to augment the comple- 
xity of the conversational context space by structuring it, because context plays 
the role of a model directing the reasoning of participants in what concerns the 
understanding of a sentence. Such improvement of embedding the function and the use 
of context into a program would also increase its interactional power. Finally,the 
pragmatic component needs further improvement in order to allow communication (pas- 
sing messages) among scenarios. 

References 

Coelho, H. "A program conversing in Portuguese providing a library service", 
PhD Thesis, Univ. of Edinburgh, 1979 

Pereira, F.C.N.;Warren, D.H.D. "Definite clause grammars with augmented tran- 
sition networks", Dept. of AI Research report n958, Univ. of Edinburgh, 1978. 

Pereira, L.M.; Pereira, F.C.N.; Warren, D.H.D. "User's guide to DECsystem-lO 
Prolog", LNEC, 1978. 

Sacks,H.; Schegloff, E.; Jefferson, G. "A simple systematics for the organi- 
zation of turn-taking for conversation", Language Vol. 50 n9 4, 1974. 
