Foundations of equational logic programming ebook, 1989. The mathematics is little more complex than in the classical twovalued setting, but the result provides a natural semantics for distributed logic programs, including those. In particular, logic programming has contributed to the understanding of the semantics of a database, has extended the concept of relational databases, and has introduced new techniques in providing useful tools for database users. It introduces the mathematical theory of programming languages with an emphasis on higherorder functions and type systems. Researchers interested in logic programming or semantics, as well as artificial intelligence search strategies, will want to consult this book as the only source for some essential and new ideas in the area. Book recommendations, author interviews, editors picks, and more. The semantics of predicate logic as a programming language m.
We introduce a derivation operator and define the semantics as its least fixpoint. Leeuven, celestijnenlaan 200a, b3001 heverlee, belgium 2 department of computer science, university of kentucky, lexington, ky 405060046, usa dedicated to ray reiter on his 60th birthday abstract. But you can follow any of the programming books and there you will get better logic. Pdf a fixpoint semantics for disjunctive logic programs. Equivalence of two fixedpoint semantics for definitional higherorder logic programs. Fixpoint 3valued semantics for autoepistemic logic 3 to determine the truth value of a formula under our semantics is in the class. A fixpoint semantics for disjunctive logic programs sciencedirect. Semantics of programming languages exposes the basic motivations and philosophy underlying the applications of semantic techniques in computer science. Then we define a fixpoint semantics for prolog computed resultants, i. Key words and phrases predicate logic as a programming language, semantics of programming languages, resolution theorem proving, operauonal versus denotatlonal semantics, slresoluuon, flxpomt characteriza tion cr categories 4 22, 5 21, 5 24. Chapter 1 presents the declarative aspects of logic programming.
Resultants semantics for prolog resultants semantics for prolog maurizio gabbrielli, giorgio levi, maria chiara meo 19960801 00. Approximation fixpoint theory and the semantics of logic. A fixpoint semantics and an sldresolution calculus for modal logic programs. This paper describes a simpler way for programmers to reason about the correctness of their code. In such a case that the evaluation would be of syntactically invalid strings, the result would be non. In this paper we summarize one variety of approaches to the semantics of logic programs. An effective fixpoint semantics for linear logic programs. The study of semantics of logic programs has shown strong links between the model theoretic semantics truth and falsity of atoms in the programmers interpretation of a program, procedural semantics for example, sld resolution and fixpoint semantics which is useful for program analysis and. Indeed, in addition to the usual modeltheoretic semantics of the logic, prooftheoretic deduction plays a crucial role in understanding logic programs. We introduce new notions and modify the classical semantics, i. As mentioned above, the semantics we propose can be applied to approximate the skeptical mode of autoepistemic reasoning. Mathematical aspects of logic programming semantics 1st. Since logic programming involves both logic and programming, it should not be surprising that several varieties of semantics have been developed for it. Nov 21, 20 constraint programming is like an octopus spreading its tentacles into databases, operations research, artificial intelligence, and many other areas.
We show that manyvalued disjunctive logic programs under the semantics of minimal models, perfect models, stable models, and least model states can be unfolded to equivalent classical disjunctive logic. Mathematical aspects of logic programming semantics crc. The paper presents a constructive fixpoint semantics for autoepistemic logic ael. Chapter 2 is concerned with the procedural semantics oc logic programs. Resultants semantics for prolog, journal of logic and. Watt, 97807262663, available at book depository with free delivery worldwide. The truth conditions of various sentences we may encounter in arguments will depend upon their meaning, and so logicians cannot completely avoid the need to provide. We show first that the stable models of a logic programp are exactly the wellsupported models ofp, i. On prudent bravery and other abstractions, 1994, unpublished. A uniform approach to logic programming semantics request pdf. Minimum model semantics for logic programs with negationasfailure. A fixpoint semantics and an sldresolution calculus for modal. For this, we focus on the propositional fragment of templog. However, it has also another important application.
Immediate consequence operator rules can be viewed as mappings. Fixpoint semantics and optimization of recursive datalog. The purpose of this article is to demonstrate the significant impact that logic programming has had on databases. Foundations of equational logic programming lecture notes. This book presents the foundations of equational logic programming. We give a purely modeltheoretic characterization of the semantics of logic programs with. The problem is the very semantics of logic programming. The gelfondlifschitz operator of p coincides with the immediate consequence operator of fix p, as. Logicians in this tradition will sometimes even speak of prooftheoretical semantics. Slderesolution, where a universal unification procedure replaces the traditional unification algorithm. Fixpoint 3valued semantics for autoepistemic logic marc denecker1, v.
The concept of constraint programming was introduced in artificial intelligence and graphics in the 1960s and 1970s. In particular, a presentation of the least model and the fixpoint semantics of equational logic programs is followed by a rigorous proof of the soundness and the strong completeness of various proof techniques. In logic, the semantics of logic or formal semantics is the study of the semantics, or interpretations, of formal and idealizations of natural languages usually trying to capture the pretheoretic notion of entailment overview. This chapter contains the basic material crom first order logic and fixpoint theory which will be required. Mathematical aspects of logic programming semantics chapman. A fixpoint semantics for disjunctive logic programs. Part of the theory of logic programming and nonymonotonic reasoning concerns the study of fixedpoint semantics for these paradigms. He also developed the minimal model and the fixpoint semantics of horn clauses with maarten van emden. The goal of this work is to develop the least model semantics, a xpoint semantics, and an sldresolution calculus, in a \direct way and closely to the style of classical logic programming, this is a revised version of \l. Originally published in 1979, this now classic text was the first comprehensive attempt to define the scope of logic for problem solving. Fixpoint semantics for partial computed answer substitutions and call patterns. Basically, the purpose of this entire book is to claim that the second objection can be.
New semantic tools for logic programming springerlink. This is wellknown and was studied by dung and kanchanasut 15. Conway 1976, in his famous book on numbers and games, constructs. The semantics is 3valued in the sense that, for some formulas, the least fixpoint does not specify whether they are believed or not.
This p a p e r is concerned with the analysis and comparison of some of the most basic. This is especially true in the case of logic programming like languages for which the underlying logic provides a welldefined but insufficient semantic basis. In this paper the operational and fixpoint semantics of predicate logic programs are defined, and the connections with the proof theory and model theory of logic are investigated. The third use of semantics often conveys an overall prooftheoretic attitude of a logician, the view that the main business of logic as opposed to mathematics is to provide the meaning of expressions of logical languages by a wellbehaved proof theory only. Melvin fitting, computability theory, semantics, and logic. Theoretical foundations and semantics of logic programming. Approximation fixpoint theory and the semantics of logic and. Now the related techniques are used and studied in many fields of computing.
We first extend to resultants some classical results of logic programming theory. What are the best books for improving programming logic. On greatest fixpoint semantics of logic programming. Using these results on unfolding manyvaluedness, we then give manyvalued fixpoint characterizations for the set of all minimal models and the least model state. Truszczynski, editors, logic programming and nonmonotonic reasoning, pages 143155.
Foundations of equational logic programming lecture notes in. Programming language researchers have solved the problem by using a mathematical model that was originally invented for logic, but has dramatic computational applications. Covering the authors own stateoftheart research results, mathematical aspects of logic programming semantics presents a rigorous, modern account of the mathematical methods and tools required for the semantic analysis of logic programs. It may be threevalued in the sense that for a subclass of formulas f, the fixpoint. A new fixpoint semantics for general logic programs compared. We extend the concept of the herbrand base of a logic program to consist of all positive clauses that may be formed using the atoms in the herbrand base. Also the unification algorithm is discussed in some detail.
Designed as a text for upperlevel and graduatelevel students, the mathematically sophisticated approach will also. The authors describe model theoretic semantics, proof theoretic semantics, and fix point semantics for disjunctive and normal disjunctive programs a normal. Part of the lecture notes in computer science book series lncs, volume 6125. Thus, existing technology for classical disjunctive logic programming can be used to implement manyvalued disjunctive logic programming.
The main concepts discussed here are those oc a logic program, model, correct answer substitution and fixpoint. Nonetheless, much of the work on logic programming semantics seems to exist side by side with similar work done for imperative and functional programming, with relatively minimal contact between communities. Pdf groundedness in logics with a fixpoint semantics. Foundations of disjunctive logic programming the mit press. Nov 18, 2014 however, he is best known for his contributions to the development of logic programming, starting with the procedural interpretation of horn clauses. Approximation fixpoint theory and the wellfounded semantics of. Lambda calculus, invented in the 1920s and 30s by church, kleene, and others, is one of the simplest to describe turing complete languages. Nonmonotonic logic is now seen as a close relative of logic programming, and developments in either area tend to a. Scotland abstract sentences in firstorder predicate logic can be usefully interpreted as programs in this paper the. After generalizing logic programming by augmenting programs with a conditional equational theory, the author defines a unifying framework for logic programming, equation solving, universal unification, and term rewriting. The study of fixpoints has long been at the heart of logic programming. Fixpoint semantics for logic programs cs240b notes notes based on section 8. In logic programming for example, this was the case for clarks completion semantics, which was later improved by perfect model semantics, stable semantics and wellfounded semantics. The fixpoint completion fix p of a normal logic program p is a program transformation such that the stable models of p are exactly the models of the clark completion of fix p.
The semantics of predicate logic as a programming language. On the relation between primitive recursion, schematization, and divergence. Foundations of equational logic programming pdf download. In programming language theory, semantics is the field concerned with the rigorous mathematical study of the meaning of programming languages. A fixpoint characterization of abductive logic programs katsumi inoue and chiaki sakama t t a new fixpoint semantics for abductive logic programs is provided, in which the belief models of an abductive program are characterized as the fixpoint of a disjunctive program obtained by a suitable program transformation. Pdf fixpoint semantics for logic programming a survey. It significantly extends the tools and methods from tradi. International conference on algebraic and logic programming, held in pisa, italy, september 24, 1992. The paper is a general overview of our approach to the semantics of logic programs. Sep 26, 2016 there is no such books on programming logic.
Our construction is intermediate between van gelders wellfounded model and gelfond and lifschitzs stable model semantics. The fixpoint semantics also enables us to study templogs expressiveness. In this paper we investigate the theoretical foundation of a new bottomup semantics for linear logic programs, and more precisely for the fragment of linlog. A new fixpoint semantics for general logic programs. Pdf logic programming semantics using a compact data structure. The paper presents a constructive 3valued semantics for autoepistemic logic ael. This book gives an account oc the mathematical coundations oc logic. Nov 18, 2014 this seminal book of computer science is the most cited reference on the subject of programming in logic. A fixpoint semantics and an sldresolution calculus for. Like the two previous conferences in germany in 1988 and france in 1990, the third conference aims at strengthening the connections betweenalgebraic techniques and logic programming. Melvin fitting, bilattices and the semantics of logic. In this paper, we propose a simple comprehensive solution that extends the declarative least fixpoint semantics of horn clauses, along with the optimization techniques used in the bottomup implementation.
Languages that perform breadthfirst searches reflect more closely the theory underlying logic programming languages. It does so by evaluating the meaning of syntactically valid strings defined by a specific programming language, showing the computation involved. This fixpoint characterizes a unique but possibly threevalued belief set of an autoepistemic theory. In this paper, we continue to explore manyvalued disjunctive logic programs with probabilistic semantics.
615 509 1041 203 455 553 1470 658 1069 1286 11 37 163 700 1212 500 1000 1031 1129 1331 788 335 1063 1375 1213 1162 1167 800 1142 513 470 880 1414 1550 435 947 438 1401 1167 620 761 855