You may have to Search all our reviewed books and magazines, click the sign up button below to create a free account.
Constraints are everywhere: most computational problems can be described in terms of restrictions imposed on the set of possible solutions, and constraint programming is a problem-solving technique that works by incorporating those restrictions in a programming environment. It draws on methods from combinatorial optimisation and artificial intelligence, and has been successfully applied in a number of fields from scheduling, computational biology, finance, electrical engineering and operations research through to numerical analysis. This textbook for upper-division students provides a thorough and structured account of the main aspects of constraint programming. The author provides many worked examples that illustrate the usefulness and versatility of this approach to programming, as well as many exercises throughout the book that illustrate techniques, test skills and extend the text. Pointers to current research, extensive historical and bibliographic notes, and a comprehensive list of references will also be valuable to professionals in computer science and artificial intelligence.
Software -- Software Engineering.
Games provide mathematical models for interaction. Numerous tasks in computer science can be formulated in game-theoretic terms. This fresh and intuitive way of thinking through complex issues reveals underlying algorithmic questions and clarifies the relationships between different domains. This collection of lectures, by specialists in the field, provides an excellent introduction to various aspects of game theory relevant for applications in computer science that concern program design, synthesis, verification, testing and design of multi-agent or distributed systems. Originally devised for a Spring School organised by the GAMES Networking Programme in 2009, these lectures have since been revised and expanded, and range from tutorials concerning fundamental notions and methods to more advanced presentations of current research topics. This volume is a valuable guide to current research on game-based methods in computer science for undergraduate and graduate students. It will also interest researchers working in mathematical logic, computer science and game theory.
Provides a systematic introduction to the theory of logic programming and shows how this theory can be applied to reason about pure Prolog programs. The text includes an introduction to programming in Prolog and deals with such programming issues as determination, occur-check freedom and absence of errors. It covers both the natural interpretations of logic programming, as declarative specification and as procedure for computer execution.
HIS BOOK CONTAINS a most comprehensive text that presents syntax-directed and compositional methods for the formal veri?- T cation of programs. The approach is not language-bounded in the sense that it covers a large variety of programming models and features that appear in most modern programming languages. It covers the classes of - quential and parallel, deterministic and non-deterministic, distributed and object-oriented programs. For each of the classes it presents the various c- teria of correctness that are relevant for these classes, such as interference freedom, deadlock freedom, and appropriate notions of liveness for parallel programs. Also, special proof rules appropriate for eac...
Constraint logic programming lies at the intersection of logic programming, optimisation and artificial intelligence. It has proved a successful tool in many areas including production planning, transportation scheduling, numerical analysis and bioinformatics. Eclipse is one of the leading software systems that realise its underlying methodology. Eclipse is exploited commercially by Cisco, and is freely available and used for teaching and research in over 500 universities. This book has a two-fold purpose. It's an introduction to constraint programming, appropriate for one-semester courses for upper undergraduate or graduate students in computer science or for programmers wishing to master the practical aspects of constraint programming. By the end of the book, the reader will be able to understand and write constraint programs that solve complex problems. Second, it provides a systematic introduction to the Eclipse system through carefully-chosen examples that guide the reader through the language and illustrate its power, versatility and utility.
Computation, calculation, algorithms - all have played an important role in mathematical progress from the beginning - but behind the scenes, their contribution was obscured in the enduring mathematical literature. To understand the future of mathematics, this fascinating book returns to its past, tracing the hidden history that follows the thread of computation.
In software engineering there is a growing need for formalization as a basis for developing powerful computer assisted methods. This volume contains seven extensive lectures prepared for a series of IFIP seminars on the Formal Description of Programming Concepts. The authors are experts in their fields and have contributed substantially to the state of the art in numerous publications. The lectures cover a wide range in the theoretical foundations of programming and give an up-to-date account of the semantic models and the related tools which have been developed in order to allow a rigorous discussion of the problems met in the construction of correct programs. In particular, methods for the specification and transformation of programs are considered in detail. One lecture is devoted to the formalization of concurrency and distributed systems and reflects their great importance in programming. Further topics are the verification of programs and the use of sophisticated type systems in programming. This compendium on the theoretical foundations of programming is also suitable as a textbook for special seminars on different aspects of this broad subject.
The first edition of the Handbook of Philosophical Logic (four volumes) was published in the period 1983-1989 and has proven to be an invaluable reference work to both students and researchers in formal philosophy, language and logic. The second edition of the Handbook is intended to comprise some 18 volumes and will provide a very up-to-date authoritative, in-depth coverage of all major topics in philosophical logic and its applications in many cutting-edge fields relating to computer science, language, argumentation, etc. The volumes will no longer be as topic-oriented as with the first edition because of the way the subject has evolved over the last 15 years or so. However the volumes will follow some natural groupings of chapters. Audience: Students and researchers whose work or interests involve philosophical logic and its applications
Investigating meta-programming within the logic programming paradigm, Meta-Logics and Logic Programming presents original research on an important extension of logic programming that makes it more amenable for knowledge representation and programming in general. The 12 contributions, many written especially for this book, explore the foundations, language design issues, and applications of meta-programming in logic programming.Meta-programming -- the process of writing computer programs that can manipulate representations of other programs -- has been key both in the foundations of computer science and in its practical developments. Examples of meta-programs include compilers, interpreters, ...