Course Description
This course is a study of an application of logic to model the intelligence that characterizes rational agents. 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 reasoning that rational agents employ, (iii) with the idea that reasoning is a form of computation, (iv) the methods of computation in logic programming, with the theory of logic programming, and with the application of logic programming to the rational agent model of intelligence, (v) extensions to the basic logic programming/agent model that are necessary to accommodate defeasible reasoning and other forms of intelligence that characterize rational agents, (vi) the computer programming Prolog ("PROgramming in LOGic") and the way this programming language incorporates principles of logic programming, and (vii) experiments in psychology that challenge the use of logic to model human intelligence and the GOFAI ("Good OldFashioned Artificial Intelligence") approach to understanding intelligence rationality more generally.
Required Books
There are two textbooks required 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 made slides for Thinking as Computation. Kowalski made 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.
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 assignment (listed below) is worth 7 points.
Each discussion post is worth 7 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).
Incompletes are given only to
accommodate serious illnesses and family emergencies, which
must be adequately documented.
Lectures Notes and Readings
Not all the following material is equally important. 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. 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)
 Stanford University Symbolic Systems Program

Allen Institute for Artificial Intelligence
 The Logical 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
 Max Palevsky
UNIT 1
Thinking is
Computation (The Hypothesis in the Course)
• Thinking as Computation 1, 2; slides 138.
• Computational Logic and Human Thinking
"Introduction," 1; shorter 110;
video
00:0012:40; longer
133.
Logic and Logic Programming (The
Technical Backgroundthe Most Complicated Part of the Course)
• Thinking as Computation 2; slides 3955.
• Computational Logic and Human Thinking
"Appendix A1," "Appendix A2," "Appendix A3," "Appendix A5";
shorter
1115; video
11:0418:59; longer 3360,
7595, 189214.
Assignment #1
You are free to talk about the assignment and post questions.
UNIT 2
Prolog (A
Computer Programming Language that Incorporates Principles of Logic Programming)
• Thinking as Computation 3, 4, "Appendix A,"
"Appendix B," "Appendix C," "Appendix D"; slides 5697.
The Psychology of Logic (The
Wason Selection Task and The Suppression Task)
• Computational Logic and Human Thinking 2;
longer 6174.
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 of Rational Agents)
• Computational Logic and Human Thinking 3, 8;
longer 96108,
157188.
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 5,
"Appendix A4"; longer
109130, 247261.
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
12.
Abduction and Abductive Logic
Programming
• Thinking as Computation 11; slides 314322.
• Computational Logic and Human Thinking 10,
"Appendix A6"; longer
215228
Assignment #5
You are free to talk about the assignment and post questions.
UNIT 6
Understanding
Natural Language
• Thinking as Computation 8; slides 188228.
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
16.
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