Abstract

This book addresses an interesting concept of “human thinking” being a form of a “computational process.” The author argues that both “thinking” and “computation” involve manipulating inputs according to a relevant procedure as to generate outputs. To support this idea, the author elegantly provides simplified description of the Prolog (Programming Logic) computing language that can be used to solve thought-requiring tasks such as puzzle solving, planning courses of action, understanding natural languages, and recognizing objects in visual scenes. Prolog programs are fed with facts and rules to output solutions by running queries on the programs. Both the fundamentals and applications of Prolog are demonstrated with various examples and illustrations in the book. While I still believe that the mechanisms and capabilities of human thinking are much far beyond a computational process transforming inputs into outputs, I enjoyed the computational and philosophical journey presented by this text.
