This book is concerned with the rich and fruitful interplay between the fields of computational logic and machine learning. The intended audience is senior undergraduates, graduate students, and researchers in either of those fields. For those in computational logic, no previous knowledge of machine learning is assumed, and for those in machine learning no previous knowledge of computational logic is assumed.The logic used throughout the book is a higher-order one, since higher-order functions can have other functions as arguments and this capability can be exploited to provide abstractions for knowledge representation, methods for constructing predicates, and a foundation for logic-based computation.
The book should be of interest to researchers inmachine learning, especially those who study learning methods for structured data. Throughout, great emphasis is placed on learning comprehensible theories. The book serves as an introduction for computational logicians to machine learning, a particularly interesting and important application area of logic, and also provides a foundation for functional logic programming languages.