Download Free Equational Logic As A Programming Language Book in PDF and EPUB Free Download. You can read online Equational Logic As A Programming Language and write the review.

This book describes an ongoing equational programming project that started in 1975. Within the project an equational programming language interpreter has been designed and implemented. The first part of the text (Chapters 1-10) provides a user's manual for the current implementation. The remaining sections cover the following topics: programming techniques and applications, theoretical foundations, implementation issues. Giving a brief account of the project's history (Chapter 11), the author devotes a large part of the text to techniques of equational programming at different levels of abstraction. Chapter 12 discusses low-level techniques including the distinction of constructors and defined functions, the formulation of conditional expressions and error and exception handling. High-level techniques are treated in Chapter 15 by discussing concurrency, nondeterminism, the relationship to dataflow programs and the transformation of recursive programs called dynamic programming. In Chapter 16 the author shows how to efficiently implement common data structures by equational programs. Modularity is discussed in Chapter 14. Several applications are also presented in the book. The author demonstrates the versatility of equational programming style by implementing syntactic manipulation algorithms (Chapter 13). Theoretical foundations are introduced in Chapter 17 (term rewriting systems, herein called term reduction systems). In Chapter 19 the author raises the question of a universal equational machine language and discusses the suitability of different variants of the combinator calculus for this purpose. Implementation issues are covered in Chapters 18 and 20 focused around algorithms for efficient pattern matching, sequencing and reduction. Aspects of design and coordination of the syntactic processors are presented as well.
Logic functions and equations are (some of) the most important concepts of Computer Science with many applications such as Binary Arithmetics, Coding, Complexity, Logic Design, Programming, Computer Architecture and Artificial Intelligence. They are very often studied in a minimum way prior to or together with their respective applications. Based on our long-time teaching experience, a comprehensive presentation of these concepts is given, especially emphasising a thorough understanding as well as numerical and computer-based solution methods. Any applications and examples from all the respective areas are given that can be dealt with in a unified way. They offer a broad understanding of the recent developments in Computer Science and are directly applicable in professional life. Logic Functions and Equations is highly recommended for a one- or two-semester course in many Computer Science or computer Science-oriented programmes. It allows students an easy high-level access to these methods and enables sophisticated applications in many different areas. It elegantly bridges the gap between Mathematics and the required theoretical foundations of Computer Science.
This monograph contains the results of our joint research over the last ten years on the logic of the fixed point operation. The intended au dience consists of graduate students and research scientists interested in mathematical treatments of semantics. We assume the reader has a good mathematical background, although we provide some prelimi nary facts in Chapter 1. Written both for graduate students and research scientists in theoret ical computer science and mathematics, the book provides a detailed investigation of the properties of the fixed point or iteration operation. Iteration plays a fundamental role in the theory of computation: for example, in the theory of automata, in formal language theory, in the study of formal power series, in the semantics of flowchart algorithms and programming languages, and in circular data type definitions. It is shown that in all structures that have been used as semantical models, the equational properties of the fixed point operation are cap tured by the axioms describing iteration theories. These structures include ordered algebras, partial functions, relations, finitary and in finitary regular languages, trees, synchronization trees, 2-categories, and others.
What sets this book apart from others on logic programming is the breadth of its coverage. The authors have achieved a fine balance between a clear and authoritative treatment of the theory and a practical, problem-solving approach to its applications. This edition introduces major new developments in a continually evolving field and includes such topics as concurrency and equational and constraint logic programming.
Maude is a language and system based on rewriting logic. In this comprehensive account, you’ll discover how Maude and its formal tool environment can be used in three mutually reinforcing ways: as a declarative programming language, as an executable formal specification language, and as a formal verification system. Examples used throughout the book illustrate key concepts, features, and the many practical uses of Maude.
Tsutomu Sasao – Kyushu Institute of Technology, Japan The material covered in this book is quite unique especially for p- ple who are reading English, since such material is quite hard to ?nd in the U.S. literature. German and Russian people have independently developed their theories, but such work is not well known in the U.S. societies. On the other hand, the theories developed in the U.S. are not conveyed to the other places. Thus, the same theory is re-invented or re-discovered in various places. For example, the switching theory was developed independently in the U.S., Europe, and Japan, almost at the same time [4, 18, 19]. Thus, the same notions are represented by di?- ent terminologies. For example, the Shegalkin polynomial is often called complement-free ring-sum, Reed-Muller expression [10], or Positive - larityReed-Mullerexpression [19].Anyway,itisquitedesirablethatsuch a unique book like this is written in English, and many people can read it without any di?culties. The authors have developed a logic system called XBOOLE.Itp- forms logical operations on the given functions. With XBOOLE, the readers can solve the problems given in the book. Many examples and complete solutions to the problems are shown, so the readers can study at home. I believe that the book containing many exercises and their solutions [9] is quite useful not only for the students, but also the p- fessors.
This volume contains the papers which have been accepted for presentation atthe Third International Symposium on Programming Language Implementation andLogic Programming (PLILP '91) held in Passau, Germany, August 26-28, 1991. The aim of the symposium was to explore new declarative concepts, methods and techniques relevant for the implementation of all kinds of programming languages, whether algorithmic or declarative ones. The intention was to gather researchers from the fields of algorithmic programming languages as well as logic, functional and object-oriented programming. This volume contains the two invited talks given at the symposium by H. Ait-Kaci and D.B. MacQueen, 32 selected papers, and abstracts of several system demonstrations. The proceedings of PLILP '88 and PLILP '90 are available as Lecture Notes in Computer Science Volumes 348 and 456.
Equations play a vital role in many fields of mathematics, computer science, and artificial intelligence. Therefore, many proposals have been made to integrate equational, functional, and logic programming. This book presents the foundations of equational logic programming. 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. Within this framework many known results are developed. 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: SLDE-resolution, where a universal unification procedure replaces the traditional unification algorithm; linear paramodulation and special forms of it such as rewriting and narrowing; complete sets of transformations for conditional equational theories; and lazy resolution combined with any complete set of inference rules for conditional equational theories.
The Formal Semantics of Programming Languages provides the basic mathematical techniques necessary for those who are beginning a study of the semantics and logics of programming languages. These techniques will allow students to invent, formalize, and justify rules with which to reason about a variety of programming languages. Although the treatment is elementary, several of the topics covered are drawn from recent research, including the vital area of concurency. The book contains many exercises ranging from simple to miniprojects.Starting with basic set theory, structural operational semantics is introduced as a way to define the meaning of programming languages along with associated proof techniques. Denotational and axiomatic semantics are illustrated on a simple language of while-programs, and fall proofs are given of the equivalence of the operational and denotational semantics and soundness and relative completeness of the axiomatic semantics. A proof of Godel's incompleteness theorem, which emphasizes the impossibility of achieving a fully complete axiomatic semantics, is included. It is supported by an appendix providing an introduction to the theory of computability based on while-programs. Following a presentation of domain theory, the semantics and methods of proof for several functional languages are treated. The simplest language is that of recursion equations with both call-by-value and call-by-name evaluation. This work is extended to lan guages with higher and recursive types, including a treatment of the eager and lazy lambda-calculi. Throughout, the relationship between denotational and operational semantics is stressed, and the proofs of the correspondence between the operation and denotational semantics are provided. The treatment of recursive types - one of the more advanced parts of the book - relies on the use of information systems to represent domains. The book concludes with a chapter on parallel programming languages, accompanied by a discussion of methods for specifying and verifying nondeterministic and parallel programs.
This volume constitutes the proceedings of the 6th International Symposium on Programming Language Implementation and Logic Programming (PLILP '94), held in Madrid, Spain in September 1994. The volume contains 27 full research papers selected from 67 submissions as well as abstracts of full versions of 3 invited talks by renowned researchers and abstracts of 11 system demonstrations and poster presentations. Among the topics covered are parallelism and concurrency; implementation techniques; partial evaluation, synthesis, and language issues; constraint programming; meta-programming and program transformation; functional-logic programming; and program analysis and abstract interpretation.