This book gives a broad overview of core topics of finite model theory: expressive power, descriptive complexity, and zero-one laws, together with selected applications to database theory and artificial intelligence, especially, constraint databases and constraint satisfaction problems. The final chapter provides a concise modern introduction to modal logic, which emphasizes the continuity in spirit and technique with finite model theory. This underlying spirit involves the use of various fragments of, and hierarchies within, first order, second order, fixed point, and infinitary logics to gain insight into phenomena in complexity theory and combinatorics.
The book emphasizes the use of combinatorial games, such as extensions and refinements of the Ehrenfeucht-Fraissé pebble game, as a powerful technique for analyzing the expressive power of such logics, and illustrates how deep notions from model theory and combinatorics, such as o-minimality and tree-width, arise naturally in the application of finite model theory to database theory and AI. Students of logic and computer science will find here the tools necessary to embark on research in finite model theory, and all readers will experience the excitement of a vibrant area of application of logic to computer science.