This book is an introduction to Prolog (rQgramming in ~ic). It presents the basic foundations of Prolog and basic and fundamental programming methods. This book is written for programmers familiar with other programming languages, as well as for novices in computer science, willing to have an original introduction to programming. The approach adopted in this book is thus based on methodological elements together with some pragmatic aspects. The book is composed of two parts. In the fIrst part the major aspects of programming in Prolog are presented step by step. Each new aspect is illustrated by short examples and exercises. The second part is composed of more developed examples, which are often games, that illustrate major aspects of artifIcial inte...