Course Description
This course is a study in the use of logic to begin to understand and to build a model of the intelligence that characterizes a rational agent. The model consists in an extension of logic programming to support an observationthoughtdecisionaction cycle.
Learning Objectives
At the completion of this course, students will be familiar with (i) techniques in AI to represent cognitive states as symbolic structures, (ii) the observationthoughtdecisionaction cycle as the primary form of thinking that underlies reasoning in a rational agent, (iii) the idea that some thinking and reasoning is computation, (iv) methods of computation in logic programming, the theory of logic programming, and the application of logic programming to the rational agent model of intelligence, (v) possible extensions to the basic logic programming/agent model to accommodate defeasible reasoning and other forms of intelligence that characterize a rational agent, (vi) the computer programming language Prolog ("PROgramming in LOGic") and the way this language incorporates the principles of logic programming, and (vii) some of the more famous experiments in psychology that challenge the use of logic to model human intelligence and the GOFAI ("Good OldFashioned Artificial Intelligence") approach to understanding intelligence and rationality more generally.
Books for the Course
There are two textbooks for the course:
• Robert Kowalski,
Computational Logic and Human Thinking: How to
be Artificially Intelligent (Cambridge University Press,
2011)
• Hector Levesque, Thinking as Computation: A
First Course (MIT Press, 2012).
The authors have made some of their teaching materials public. Levesque has slides for Thinking as Computation. Kowalski has slides for two courses (a shorter and a longer course) based on Computational Logic and Human Thinking. Kowalski also made video lectures for his book. (He recorded these videos at the 22nd International Joint Conference on Artificial Intelligence (IJCAI), Barcelona 2011.) These slides and videos are helpful but strictly supplementary to the books and my lecture notes for the course.
Final Grade for the Course
The final grade for the course is a function of your grade on 7 writing assignments and 7
discussion posts. Each writing assignment (listed below) is worth 10 points.
Each discussion post is worth 4 points. The assignments and discussion posts sum to
98 points of the final grade.
There are 2 free points.
There is no extra credit, but I am more than happy to work with students
on independent projects.
The point total
determines the final letter grade for the course: A+ (10097), A (9694), A (9390),
B+ (8987), B (8684), B (8380), C+ (7977), C (7670), D (6960), E (590).
Late assignments will not be accepted without very good reason. Incompletes are given only to
accommodate serious illnesses and family emergencies, which
must be adequately documented.
Lectures Notes and Readings
I highlight the most important points in my lecture notes. This (in addition to the reading in the books) is the material on which you will be graded in your assignments and discussion posts. Use the slides and video as supplementary. It is not necessary to understand every detail of the supplementary material. Some of this material is difficult and appropriate for a more advanced course. The lecture notes are more understandable than the books, and the books are more understandable than the slides and the video lectures.
Some Online Resources:

Logic and Artificial Intelligence (SEP)

Eliza, Computer Therapist
 Stanford University Symbolic Systems Program

Allen Institute for Artificial Intelligence
 The Logic Theorist (Wikipedia)
 Logic Programming (Wikipedia)
 Logic Programming (Robert Kowalski)
 8A: Logic Programming, Part 1 (Abelson and Sussman)

8B: Logic Programming, Part 2 (Abelson and Sussman)

Formal Semantics, Lecture 2 (Barbara Partee)
 SWI Prolog

Learn Prolog Now!
 Noam Chomsky on Where Artificial Intelligence Went Wrong
 On Chomsky and the Two Cultures of Statistical Learning
 Deep Learning Tutorials
 Neural Networks and Deep Learning
UNIT 1:
Thinking is
Computation
(Introduction to the Logic Programming/Agent Model)
• Computational Logic and Human Thinking.
Introduction (1421), Chapter 1 (2237)
• Thinking as Computation. Chapter 1 (15, 1121)
Logic and Logic Programming
(The Technical Background. This is the Most Complicated Part of the Course.)
• Computational Logic and Human Thinking. Appendix A1A3 (251283), A5 (290300)
• Thinking as Computation. Chapter 2 (2339)
Assignment #1
You are free to talk about the assignment and post questions.
UNIT 2:
Prolog ("PROgrammation en LOGique")
(A Computer Programming Language that Incorporates Principles of Logic Programming)
• Thinking as Computation. Chapter 3 (4161), Chapter 4 (6381), Appendix BC (279288)
The Psychology of Logic
(The Wason Selection Task and The Suppression Task)
• Computational Logic and Human Thinking. Chapter 2 (3853)
Assignment #2
You are free to talk about the assignment and post questions.
UNIT 3:
The Fox and the Crow
(The Logic Programming/Agent Model)
• Computational Logic and Human Thinking. Chapter 3 (5464), Chapter 7 (109122), Chapter 8 (123135, 139140)
Assignment #3
You are free to talk about the assignment and post questions.
UNIT 4:
NegationasFailure
(The Suppression Task Revisited)
• Computational Logic and Human Thinking. Chapter 5 (7591), Appendix A4 (284289)
Defeasible Reasoning and its Semantics
• Interesting but not required for the course
Assignment #4
You are free to talk about the assignment and post questions.
UNIT 5:
Prohibitions and Prospective Logic Programming
• Computational Logic and Human Thinking. Chapter 8 (135139), Chapter 12 (171181)
Abduction and Abductive Logic
Programming
• Computational Logic and Human Thinking. Chapter 10 (150159), Appendix A6 (301317)
Assignment #5
You are free to talk about the assignment and post questions.
UNIT 6:
Understanding Natural Language
• Thinking as Computation. Chapter 8 (153176)
Building Meaning with the Lambda Calculus
• Interesting but not required for the course
Assignment #6
You are free to talk about the assignment and post questions.
UNIT 7:
The Wason
Selection Task Revisited
• Computational Logic and Human Thinking. Chapter 16 (217231)
Neural Networks (Recognizing Digits in the MNIST Data Set)
• Interesting but not required for the course
Assignment #7
You are free to talk about the assignment and post questions.
Contact Information
Thomas A. Blackson
Philosophy Faculty
School of Historical, Philosophical, and Religious
Studies
Lattie F.
Coor Hall, room 3356
PO Box 874302
Arizona State University
Tempe, AZ. 852874302
blackson@asu.edu, tomblackson.com,
www.public.asu/~blackson