Lillian sent me an email today about the APA Session on Logic Instruction where she asked:
Was there any discussion about incorporating philosophical issues in logic @ the intro course level? I’m teaching a logic for philosophers course this semester. Most of my students haven’t had any formal logic, so I’m teaching it like an intro to philosophy course. Now, I’m thinking one should bring in the philosophical issues behind the formal stuff to make an intro course fun and interesting. That would be one reason to teach grad students this material.
There was some discussion here regarding an idea Branden brought up in the discussion; Gillian suggested in the comments that this idea might also work for intro courses, and Marc pointed out that Hughes’ Philosophical Companion to First-Order Logic has some stuff relevant to the philosophical underpinnings of things you might teach in an intro course. The book that Lillian uses (Stephen Read, Thinking about Logic: An Introduction to the Philosophy of Logic) is a good source as well. It’s another question entirely how to motivate intro logic for CS majors. A good place to start is “On the Unusual Effectiveness of Logic in Computer Science,” by Halpern, Harper, Immerman, Kolaitis, Vardi, and Vianu. It outlines the uses of logic in descriptive complexity theory, database query languages, type-theory and programming languages, reasoning about knowledge, and circuit verification. For math majors, I don’t know anything quite so nice and compact. Make them read the Principia?