Coinduction is a method for specifying and reasoning about infinite data types and automata with infinite behaviour. In recent years, it has come to play an ever more important role in the theory of computing. It is studied in many disciplines, including process theory and concurrency, modal logic and automata theory. Typically, coinductive proofs demonstrate the equivalence of two objects by constructing a suitable bisimulation relation between them. This collection of surveys is aimed at both researchers and Master's students in computer science and mathematics and deals with various aspects of bisimulation and coinduction, with an emphasis on process theory. Seven chapters cover the following topics: history, algebra and coalgebra, algorithmics, logic, higher-order languages, enhancements of the bisimulation proof method, and probabilities. Exercises are also included to help the reader master new material.
Induction is a pervasive tool in computer science and mathematics for defining objects and reasoning on them. Coinduction is the dual of induction and as such it brings in quite different tools. Today, it is widely used in computer science, but also in other fields, including artificial intelligence, cognitive science, mathematics, modal logics, philosophy and physics. The best known instance of coinduction is bisimulation, mainly employed to define and prove equalities among potentially infinite objects: processes, streams, non-well-founded sets, etc. This book presents bisimulation and coinduction: the fundamental concepts and techniques and the duality with induction. Each chapter contains exercises and selected solutions, enabling students to connect theory with practice. A special emphasis is placed on bisimulation as a behavioural equivalence for processes. Thus the book serves as an introduction to models for expressing processes (such as process calculi) and to the associated techniques of operational and algebraic analysis.
The aim of this volume is to collect original contributions by the best specialists from the area of proof theory, constructivity, and computation and discuss recent trends and results in these areas. Some emphasis will be put on ordinal analysis, reductive proof theory, explicit mathematics and type-theoretic formalisms, and abstract computations. The volume is dedicated to the 60th birthday of Professor Gerhard Jäger, who has been instrumental in shaping and promoting logic in Switzerland for the last 25 years. It comprises contributions from the symposium “Advances in Proof Theory”, which was held in Bern in December 2013. Proof theory came into being in the twenties of the last century, when it was inaugurated by David Hilbert in order to secure the foundations of mathematics. It was substantially influenced by Gödel's famous incompleteness theorems of 1930 and Gentzen's new consistency proof for the axiom system of first order number theory in 1936. Today, proof theory is a well-established branch of mathematical and philosophical logic and one of the pillars of the foundations of mathematics. Proof theory explores constructive and computational aspects of mathematical reasoning; it is particularly suitable for dealing with various questions in computer science.
This book constitutes the refereed proceedings of the 12th International Colloquium on Theoretical Aspects of Computing, ICTAC 2015, held in Cali, Colombia, in October 2015. The 25 revised full papers presented together with 7 invited talks, 3 tool papers, and 2 short papers were carefully reviewed and selected from 93 submissions. The papers cover various topics such as algebra and category theory; automata and formal languages; concurrency; constraints, logic and semantic; software architecture and component-based design; and verification.
This book constitutes the thoroughly refereed post-conference proceedings of the 7th International Conference on Fundamentals of Software Engineering, FSEN 2017, held in Tehran, Iran, in April 2017. The 16 full papers presented in this volume were carefully reviewed and selected from 49 submissions. The topics of interest in FSEN span over all aspects of formal methods, especially those related to advancing the application of formal methods in software industry and promoting their integration with practical engineering techniques.
This book constitutes the proceedings of the 18th International Conference on Foundations of Software Science and Computation Structures, FOSSACS 2015, held in London, UK, in April 2015, as part of the European Joint Conferences on Theory and Practice of Software, ETAPS 2015. The 28 full papers presented in this volume were carefully reviewed and selected from 93 submissions. They are organized in topical sections named: semantics of programming languages; categorical models and logics; concurrent, probabilistic and timed systems; automata, games, verification; logical aspects of computational complexity; and type theory, proof theory and implicit computational complexity. The book also contains one full paper invited talk.
This book constitutes the refereed proceedings of the 51st International Conference on Software Technology: Methods and Tools, TOOLS 2019, held in Innopolis, Russia, in October 2019.The 19 revised full papers and 13 short papers presented in this book were carefully reviewed and selected from 62 submissions. The papers discuss all aspects of software engineering and programming languages; machine learning; internet of things; security computer architectures and robotics; and projects.
Handbook of the History of Logic brings to the development of logic the best in modern techniques of historical and interpretative scholarship. Computational logic was born in the twentieth century and evolved in close symbiosis with the advent of the first electronic computers and the growing importance of computer science, informatics and artificial intelligence. With more than ten thousand people working in research and development of logic and logic-related methods, with several dozen international conferences and several times as many workshops addressing the growing richness and diversity of the field, and with the foundational role and importance these methods now assume in mathematics, computer science, artificial intelligence, cognitive science, linguistics, law and many engineering fields where logic-related techniques are used inter alia to state and settle correctness issues, the field has diversified in ways that even the pure logicians working in the early decades of the twentieth century could have hardly anticipated. Logical calculi, which capture an important aspect of human thought, are now amenable to investigation with mathematical rigour and computational support and fertilized the early dreams of mechanised reasoning: "Calculemus. The Dartmouth Conference in 1956 – generally considered as the birthplace of artificial intelligence – raised explicitly the hopes for the new possibilities that the advent of electronic computing machinery offered: logical statements could now be executed on a machine with all the far-reaching consequences that ultimately led to logic programming, deduction systems for mathematics and engineering, logical design and verification of computer software and hardware, deductive databases and software synthesis as well as logical techniques for analysis in the field of mechanical engineering. This volume covers some of the main subareas of computational logic and its applications. - Chapters by leading authorities in the field - Provides a forum where philosophers and scientists interact - Comprehensive reference source on the history of logic
This comprehensive text provides a modern and technically precise exposition of the fundamental theory and applications of temporal logics in computer science. Part I presents the basics of discrete transition systems, including constructions and behavioural equivalences. Part II examines the most important temporal logics for transition systems and Part III looks at their expressiveness and complexity. Finally, Part IV describes the main computational methods and decision procedures for model checking and model building - based on tableaux, automata and games - and discusses their relationships. The book contains a wealth of examples and exercises, as well as an extensive annotated bibliography. Thus, the book is not only a solid professional reference for researchers in the field but also a comprehensive graduate textbook that can be used for self-study as well as for teaching courses.