PHL312 Philosophy of Computers and Computation
Classroom: MCC232
Professor: Craig DeLancey
Office Hours: Online Tuesday 9:00 - 11:00 a.m., Zoom Thursday 2:00 - 4:00 p.m., every other W in my office, and by appointment
Office: MCC212A

What is this course for?

This course explores the philosophical problems that arise about computation and about computer science. What is computation? What counts as a computer? Can anything be a computer? Do the abstract features of computers, such as algorithms, have causal effects in the world? Can a computer emulate or recreate semantics? Is it plausible that reality is a computer simulation? Is computer science a science in the traditional sense, or some kind of hybrid between science and engineering?

Our approach will review such themes as:
  1. What the heck is a computer?
  2. What is this information stuff that computers manipulate?
  3. What in the real world here is a computer? Could a rock be a computer?
  4. Are algorithms real things, or do we just approximate them?
  5. Can computers every have meaning?
  6. What can't computers do?
  7. Is computer science a science?
  8. Is the world a simulation? How could we know?
  9. Is the stuff in simulations real?


For this course we will have various readings that will be supplied to you on BlackBoard. We also will refer often to a Open Education Resource text: Philosophy of Computer Science by Dr. William Rapaport (2020).

Knowing and Applying

Don't worry about grades, except as a way to determine what you need to put extra work into mastering. But the raw grade will be determined in the following way:
  • Practices and various in-class assignments 50%
  • Two tests 30% (15% each)
  • Paper 20%


I am asking that no one use a computer or cell phone in class. I know that this is a catastrophe of some kind, but I have found that they always become terrible distractions. If you must use Snapchat or watch Netflix, just skip class.

College Policy on Intellectual Integrity

Intellectual integrity on the part of all students is basic to individual growth and development through college course work. When academic dishonesty occurs, the teaching/learning climate is seriously undermined and student growth and development are impeded. For these reasons, any form of intellectual dishonesty is a serious concern and is therefore prohibited.

The full intellectual integrity policy can be found at

Office Hours

In addition to the listed office hours, I encourage you to make appointments. I am available quite a bit. Please try to come to office hours with specific questions in mind. You can of course come with a general request for help, but it is always helpful if you spend a little time thinking about how I can best help you out.

Course Objectives

The objectives are that, by the completion of the course, students will be able to:
  1. Distinguish between deterministic finite automata, pushdown automata, linear bounded automata, and Turing machines;
  2. Distinguish the different requirements for information
  3. Be able to describe different measures of information, and to apply the concepts
  4. Describe the various notions of complexity relevant to computation (time, space, and descriptive complexity) and understand their importance;
  5. Describe the "What counts as a computer?" puzzle and outline an appropriate response;
  6. Describe the "Is everything doing computation?" puzzle and outline an appropriate response;
  7. Describe the problem of whether abstract things (like an algorithm) can have causal efficacy;
  8. Distinguish between extensional and intensional semantics, and offer an example of each;
  9. Explain the puzzle of whether computation can capture intensional semantics, using some of the standard thought experiments;
  10. Relate the semantics puzzle to other related problems, such as the Lucas-Penrose Hypothesis;
  11. Articulate the demarcation problem (what counts as a science?) and standard philosophical answers to this problem;
  12. Address whether computer science counts as a science according to the standard accounts of science;
  13. Explain the simulation argument and offer at least one of the existing criticisms of the argument;
  14. Explain the problem of whether simulations count (in some sense) as "real," and several of the existing arguments and criticisms for the most frequent answers to this problem.


I will frequently update an online schedule. It is your responsibility to check the www pages for the class at least every other day!