Logic & Formal Reasoning
EPISTEMOLOGICAL PROBLEMS OF Al / 459
The extensions are heuristically non-trivial, because the equivalent In (McCarthy and Hayes 1969), we proposed dividing the predicate calculus may be much longer and is usually much more artificial intelligence problem into two parts - an epistemological difficult to understand - for man or machine.
PROGRAM SYNTHESIS / 141
Program synthesis is the systematic derivation of a program from a given specification. A deductive approach to program synthesis is presented for the construction of recursive programs. This approach regards program synthesis as a theorem-proving task and relies on a theorem-proving method that combines the features of transformation rules, unification, and mathematical induction within a single framework. MOTIVATION The early work in program synthesis relied strongly on mechanical theoremproving techniques. The work of Green [5] and Waldinger and Lee [13], for example, depended on resolution-based theorem proving; however, the difficulty of representing the principle of mathematical induction in a resolution framework hampered these systems in the formation of programs with iterative or recursive loops. More recently, program synthesis and theorem proving have tended to go their separate ways. Newer theorem-proving systems are able to perform proofs by mathematical induction (e.g., Boyer and Moore [2]) but are useless for program synthesis because they have sacrificed the ability to prove theorems involving existential quantifiers. In this paper we describe a framework for program synthesis that again relies on a theorem-proving approach. This approach combines techniques of unification, mathematical induction, and transformation rules within a single deductive system. We outline the logical structure of this system without considering the strategic aspects of how deductions are directed. Although no implementation exists, the approach is machine oriented and ultimately intended for implementation in automatic synthesis systems. In the next section we give examples of specifications accepted by the system. In the succeeding sections we explain the relation between theorem proving and our approach to program synthesis. SPECIFICATION The specification of a program allows us to express the purpose of the desired program, without indicating an algorithm by which that purpose is to be achieved.
P. J. HAYES
A given representational language can be implemented in all manner of ways: predicate calculus assertions may be implemented as lists, as character sequences, Minsky introduced the terminology of'frames' to unify and denote a loose as trees, as networks, as patterns in an associative memory, etc: collection of related ideas on knowledge representation: a collection which, all giving different computational properties but all encoding the same representational since the publication of his paper (Minsky, 1975) has become even looser.
SESSION 1 PAPER 3
John McCarthy, born at Boston, Mass. in 1927, received his B.S. degree in mathematics at the California Institute of Technology in 1948, and his Ph.D. also in mathematics at Princeton University in 1951. He is at present Assistant Professor of Communication Sciences at the Massachusetts Institute of Technology. His present interests are in the artificial intelligence problem, automatic programming and mathematical logic. He is co-editor with Dr. C. E. Shannon of "Automatic Studies". SUMMARY INTERESTING work is being done in programming computers to solve problems which require a high degree of intelligence in humans. However, certain elementary verbal reasoning processes so simple that they can be carried out by any non--feeble--minded human have yet to be simulated by machine programs. This paper will discuss programs to manipulate in a suitable formal language (most likely a part of the predicate calculus) common instrumental statements. The basic program will draw immediate conclusions from a list of premises. These conclusions will be either declarative or imperative sentences. When an imperative sentence is deduced the program takes a corresponding action. These actions may include printing sentences, moving sentences on lists, and reinitiating the basic deduction process on these lists. Facilities will be provided for communication with humans In the system via manual intervention and display devices connected to the computer.
Legal Knowledge and -- Information Systems
Most recent work on reasoning with cases in law has taken the style of reasoning used in the CATO system as its model, and uses the notion of factors, as found in that system. Fundamental to CATO, a successor the HYPO system, were factors, which are closely related to HYPO-style dimensions. In this paper, we will argue that the simplification involved in using factors, while it has proved pragmatically useful both for clarifying understanding of certain aspects of reasoning with cases and for implementation, causes problems with domain analysis and precludes certain kinds of argument that we would wish to model. We therefore believe that the time is now ripe to go back to the original notion of dimensions, while retaining the insights that have been gained from working with the simpler notion of factors. The paper uses two case studies to argue that this is so.