Philosophers and linguists mostly treat speech acts naturalistically, i.e. they ask what kinds of speech acts people perform. Even when they intend to approach the problem abstractly, the analyses seem to me to be too close to human behavior. Our approach is to ask what kinds of speech act are useful in interactive situations. The nature of the interaction arises from the fact that the different agents have different goals, knowledge and capabilities, and an agent's achieving its goals requires interaction with others. The nature of the required interactions determines the speech acts required. Many facts about what speech acts are required are independent of whether the agent is man or machine.
Often our programs can perform successfully with a small repertoire of speech acts, event though these speech acts don't have all the properties Searle (1969) and other philosophers have ascribed to human speech acts.
Here are some of the kinds of speech acts we plan to provide for.
Suppose Pat asks for Mike's telephone number. It is unresponsive to say that Mike's telephone number is the same as Mike's wife's husband's telephone number. One way of requiring responsiveness is to require that the answer be a sequence of digits and not just an expression whose value is a sequence of digits. This may be too narrow. To say that Mike's number is the same as Mike's wife's number might be responsive under some circumstances. Another approach is described in section 10, which is about responsiveness.
The assertions and questions of an Elephant program involve certain predicate and function symbols common to the user and the program. These make up the I-O language of the program and are to be combined using the tools of first order logic. Natural language front ends might be provided if found helpful. The I-O language of a particular program is described in the manual for the program. However, certain predicates and functions are common to all Elephant 2000 programs, whereas many others are close enough to ordinary language words to be usable without study.
However, Austin (1962) points out that uttering a promise creates an obligation in a public sense. This will be important also for computer programs, since a promise by the program may create an obligation, perhaps legal, on the part of the organization operating the program. Sometimes, it will be convenient to settle for specifications in terms of fulfilling internal commitments, and sometimes the public character of promises will have to be taken into account in the specifications.
Internal commitments constitute one kind of abstract performative; presumably there are others. It is abstract in that its content is independent of how it is expressed, and it need not be externally expressed at all.
We also propose to handle external obligations in an abstract way. Suppose a notions of type 1 and type 2 obligations are introduced. We specify that a reservation program incurs a type 1 obligation when it makes a reservation and imposes a type 2 obligation on the organization that operates it. What type 1 and type 2 obligations are, e.g. the legal requirements they impose, how they are to be treated when the conflict with other considerations, and the consequences of their non-fulfillment, is subject to institutional, e.g. legal, definition. These kinds of obligation are created via social, commercial or legal means rather than being discovered by philosophers or pyschologists.