Philosophy, Computing, and AI

PHI 319. Syllabus. Welcome to the Course!

Course Description

Instructor: Thomas A. Blackson

A prior course in symbolic logic (PHI 333 or equivalent) is helpful but not required.

PHI 319 satisfies "CS" in the "Five Core Areas" in the Undergraduate General Studies Requirements.

PHI 319 satisfies the "Upper Division Philosophy Course" and the "Upper Division Elective in Symbolic Systems" requirements for the Symbolic, Cognitive and Linguistic Systems Certificate.





Some Online Resources:

Artificial Intelligence. A Modern Approach, 3rd edition, Stuart J. Russell and Peter Norvig

Artificial Intelligence (Stanford Encyclopedia of Philosophy)

Logic and Artificial Intelligence (Stanford Encyclopedia of Philosophy)

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

Nammour Symposium: Prohibitions in Machine Ethics
This course is a study in the use of logic to understand and build a model of the intelligence that characterizes a rational agent. The model we will build consists in an extension of logic programming to support an observation-thought-decision-action cycle.

Course Objectives

Students will become familiar with techniques used in AI ("artificial intelligence") to represent cognitive states as symbolic structures, the observation-thought-decision-action cycle as the primary form of thinking that underlies reasoning in a rational agent, the hypothesis that some thinking and reasoning is computation, methods of computation in logic programming, the theory and application of logic programming to model the intelligence of a rational agent, possible extensions to the basic logic programming/agent model to accommodate defeasible reasoning and other forms of intelligence that characterize a rational agent, the computer programming language Prolog ("PROgramming in LOGic") and the way this language incorporates the principles of logic programming, and some of the more famous experiments in psychology that challenge both the use of logic to model human intelligence and the GOFAI ("Good Old-Fashioned Artificial Intelligence") approach to understanding intelligence more generally.

Course Textbooks

There are two textbooks for the course:

book cover book cover 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).

In addition, the authors have made some of their teaching materials available to the public. Levesque has slides to accompany his Thinking as Computation. Kowalski has slides to accompany two courses (a shorter and a longer course) based on material he later incorporated into his Computational Logic and Human Thinking. Kowalski also has video lectures for his book he recorded at the 22nd International Joint Conference on Artificial Intelligence (IJCAI), Barcelona 2011. These slides and videos are helpful but strictly supplemental to the books.

Course Letter Grade

The letter grade for the course is a function of the point grades on seven writing assignments and seven discussion posts. Each writing assignment 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, and late work is not accepted without good reason. The point total determines the letter grade: A+ (100-97), A (96-94), A- (93-90), B+ (89-87), B (86-84), B- (83-80), C+ (79-77), C (76-70), D (69-60), E (59-0). Incompletes are given only to accommodate serious illnesses and family emergencies, which must be adequately documented.

I highlight the most important points in the lecture notes. These points (in addition to the reading in the books) is the material on which you will be graded in your assignments and discussion posts.

A Strategy for Doing Well in the Course

In general, the lecture notes are more straightforward to understand than the readings from the books. A good strategy for doing well in the course is to read the assignment for the unit first. Once you know the question or questions you need to answer, read the lecture notes for the unit. It is not necessary to understand every detail of this material. To do well in the course, you need only understand enough to complete the assignments. After you have read the lecture notes, read the relevant sections in the books. The readings take time to understand, and it will not be surprising if you need to read the material more than once. This is only natural, but it means that you are unlikely to do well in the course if you wait until the last minute to do the work. Remember too that you can discuss and post questions about the assignments.

Course Units

UNIT 1:

Lecture:
Thinking is Computation
Introduction to the Logic Programming/Agent Model.

Reading:
Computational Logic and Human Thinking. Introduction (14-21), Chapter 1 (22-37)
Thinking as Computation. Chapter 1 (1-5, 11-21)

Lecture:
Logic and Logic Programming
The Technical Background and Foundations of Logic Programming.
Fascinating but Not all of it is Required for the Course.

Reading:
Computational Logic and Human Thinking. Appendix A1-A3 (251-283), A5 (290-300)
Thinking as Computation. Chapter 2 (23-39)

Assignment #1
You are free to talk about the assignment and post questions.


UNIT 2:

Lecture:
Prolog ("PROgrammation en LOGique")
A Computer Programming Language that Incorporates Principles of Logic Programming.

Reading:
Thinking as Computation. Chapter 3 (41-61), Chapter 4 (63-81), Appendix B-C (279-288)

Lecture:
The Psychology of Logic
Two Famous Experiments: the Wason Selection Task and The Suppression Task.

Reading:
Computational Logic and Human Thinking. Chapter 2 (38-53)

Assignment #2
You are free to talk about the assignment and post questions.


UNIT 3:

Lecture:
The Fox and the Crow
An Example of the Logic Programming/Agent Model.

Reading:
Computational Logic and Human Thinking. Chapter 3 (54-64), Chapter 7 (109-122), Chapter 8 (123-135, 139-140)

Assignment #3
You are free to talk about the assignment and post questions.


UNIT 4:

Lecture:
Negation-as-Failure
Kowalski's Attempt to Understand the Suppression Task.

Reading:
Computational Logic and Human Thinking. Chapter 5 (75-91), Appendix A4 (284-289)

Lecture:
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:

Lecture:
Prohibitions and Prospective Logic Programming
An Extension of the Logic Programming/Agent Model.

Reading:
Computational Logic and Human Thinking. Chapter 8 (135-139), Chapter 12 (171-181)

Lecture:
Abduction and Abductive Logic Programming
An Extension of the Logic Programming/Agent Model.

Reading:
Computational Logic and Human Thinking. Chapter 10 (150-159), Appendix A6 (301-317)

Assignment #5
You are free to talk about the assignment and post questions.


UNIT 6:

Lecture:
Understanding Natural Language
Introduction to Natural Language Processing.

Reading:
Thinking as Computation. Chapter 8 (153-176)

Lecture:
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:

Lecture:
The Wason Selection Task Revisited
Kowalski's Reply to the Challenge the Experiment Poses.

Reading:
Computational Logic and Human Thinking. Chapter 16 (217-231)

Lecture:
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. 85287-4302
blackson@asu.edu, tomblackson.com, www.public.asu/~blackson