[mod.ai] Seminar - A Step Toward a Logic Machine

E1AR0002@SMUVM1.BITNET.UUCP (02/28/87)

Seminar Announcement, Computer Science and Engineering, Southern
Methodist University, MOnday, March 2, 1987, Room 315 SIC, 1:30PM

A Step Toward a Logic Machine, C. S. Tang, Carnegie-Mellon University

XYZ is a software development support system to unify various ways
of programming programming [sic] with HLL (Pascal, Ada, Fortran etc.),
programming with abstract specification (temporal logic, production systems,
Prolog, pre-post condition specification, etc.) and programming with graphics
(structured flow chart, Petri Nets, Data Flow Diagrams, etc.)  It is based on
a linear-time temporal logic language with a uniform framework of programs,
to combine the abstract behavior description with dynamic state transition.
It could be used to represent the dynamic semantics of HLLs, which
could serve as the basis of a semantics-directed compiler generation and source
to source transformation system, and also to represent different layers of
abstract specification, from the very abstract level down to the assembly
like efficiently executable level, such that a method is introduced for
programming by decompositional specification and verification
within this identical famework. And on this basis, related with programming
with Dataflow Diagram, an approach to connect the informal methodology of
sytem design with the fomral method of programming such as specification,
verification, program decomposition and transformation are suggested.  It
is considered as a step toward a model of an architecture really based
on logic, which could do logic reasoning and abstract specification
conveniently and is still able to execute conventional programs as
efficiently as on conventional Von Neumann computers.

This "uniform program framework" appraoch is different from those to
express program state transition by introducing new logic variants
such as interval logic or branching logic in that: 1) This approach
can avoid the task of building new metamathematical foundations and is
easier to understand to use; 2) It could be implemented efficiently;
3) Prolog-like production systems are its sublanguage, so it is
different from those systems to extend Prolog with temporal logics.
The latter could not execute algorithmic programs efficiently; 4) It is
even more expressive.