Logic and its components (propositional, first-order, non-classical) play a key role in Computer Science and Artificial Intelligence. While a large amount of information exists scattered throughout various media (books, journal articles, webpages, etc.), the diffuse nature of these sources is problematic and logic as a topic benefits from a unified approach. Logic for Computer Science and Artificial Intelligence utilizes this format, surveying the tableaux, resolution, Davis and Putnam methods, logic programming, as well as for example unification and subsumption. For non-classical logics, the translation method is detailed.
Logic for Computer Science and Artificial Intelligence is the classroom-tested result of several years of teaching at Grenoble INP (Ensimag). It is conceived to allow self-instruction for a beginner with basic knowledge in Mathematics and Computer Science, but is also highly suitable for use in traditional courses. The reader is guided by clearly motivated concepts, introductions, historical remarks, side notes concerning connections with other disciplines, and numerous exercises, complete with detailed solutions, The title provides the reader with the tools needed to arrive naturally at practical implementations of the concepts and techniques discussed, allowing for the design of algorithms to solve problems.
Table of Contents
- Title Page
- Chapter 1: Introduction
Chapter 2: A Few Thoughts Before the Formalization
2.1. What is logic?
- 2.1.1. Logic and paradoxes
- 2.1.2. Paradoxes and set theory
- 2.1.3. Paradoxes in arithmetic and set theory
- 2.1.4. On formalisms and well-known notions
- 2.1.5. Back to the definition of logic
- 2.1.6. A few thoughts about logic and computer science
- 2.2. Some historic landmarks
- 2.1. What is logic?
Chapter 3: Propositional Logic
- 3.1. Syntax and semantics
- 3.2. The method of semantic tableaux
- 3.3. Formal systems
- 3.4. A formal system for PL (PC)
- 3.5. The method of Davis and Putnam
- 3.6. Semantic trees in PL
- 3.7. The resolution method in PL
- 3.8. Problems, strategies, and statements
- 3.9. Horn clauses
- 3.10. Algebraic point of view of propositional logic
- Chapter 4: First-order Terms
Chapter 5: First-Order Logic (FOL) or Predicate Logic (PL1, PC1)
- 5.1. Syntax
- 5.2. Semantics
- 5.3. Semantic tableaux in FOL
- 5.4. Unification in the method of semantic tableaux
- 5.5. Toward a semi-decision procedure for FOL
- 5.6. Semantic trees in FOL
- 5.7. The resolution method in FOL
- 5.8. A decidable class: the monadic class
- 5.9. Limits: Gödel’s (first) incompleteness theorem
Chapter 6: Foundations of Logic Programming
- 6.1. Specifications and programming
- 6.2. Toward a logic programming language
- 6.3. Logic programming: examples
- 6.4. Computability and Horn clauses
Chapter 7: Artificial Intelligence
- 7.1. Intelligent systems: AI
- 7.2. What approaches to study AI?
- 7.3. Toward an operational definition of intelligence
- 7.4. Can we identify human intelligence with mechanical intelligence?
- 7.5. Some history
- 7.6. Some undisputed themes in AI
Chapter 8: Inference
- 8.1. Deductive inference
- 8.2. An important concept: clause subsumption
- 8.3. Abduction
- 8.4. Inductive inference
- 8.5. Generalization: the generation of inductive hypotheses
Chapter 9: Problem Specification in Logical Languages
- 9.1.1. When is it used?
- 9.1.2. Some questions about equality
- 9.1.3. Why is equality needed?
- 9.1.4. What is equality?
- 9.1.5. How to reason with equality?
- 9.1.6. Specification without equality
- 9.1.7. Axiomatization of equality
- 9.1.8. Adding the definition of = and using the resolution method
- 9.1.9. By adding specialized rules to the method of semantic tableaux
- 9.1.10. By adding specialized rules to resolution
- 9.2. Constraints
- 9.3. Second Order Logic (SOL): a few notions
- 9.1. Equality
Chapter 10: Non-Classical Logics
- 10.1. Many-valued logics
- 10.2. Inaccurate concepts: fuzzy logic
- 10.3. Modal logics
10.4. Some elements of temporal logic
- 10.4.1. Temporal operators and semantics
- 10.4.2. A temporal logic
- 10.4.3. How to reason with temporal logics?
- 10.4.4. An example of a PL for linear and discrete time: PTL (or PLTL)
Chapter 11: Knowledge and Logic: Some Notions
- 11.1. What is knowledge?
11.2. Knowledge and modal logic
- 11.2.1. Toward a formalization
- 11.2.2. Syntax
- 11.2.3. New modal operators
- 11.2.4. Application examples
- Chapter 12: Solutions to the Exercises
- Title: Logic for Computer Science and Artificial Intelligence
- Release date: August 2011
- Publisher(s): Wiley
- ISBN: 9781118604267