Office hours: Mon 3:30-5pm, Wed 2-3:30pm, or by appointment.
TuTh 2:30-3:45pm, 113 MacLean Hall.
22C:145 and/or consent of instructor. Familiarity with propositional or first-order logic is required.
This course is an introduction to Automated Reasoning, the field of Computer Science concerned with the discovery, design and implementation of methods to mechanize deductive logical reasoning. These methods have been applied successfully to solve difficult problems in a variety of areas, including verification (of hardware, software, cryptographic protocols, message-passing systems), planning, program generation, and pure mathematics.
The course begins with the syntax and semantics of first-order logic, and basic concepts such as inference system, proof, soundness and completeness, up to the Herbrand theorem, the key compactness result that makes automated deduction in first-order logic possible. Then it proceeds with an illustration of some of the major classes of methods for automated deductive reasoning, namely instance-based methods (e.g. the Davis-Putnam procedure), subgoal-reduction methods (e.g., tableaux), and saturation-based methods (e.g., resolution) and their refinements. The presentation emphasizes the control issues and the search techniques that make these strategies work in practice.
There will be written assignments and machine problems.
Normally, the assignments will consist in providing mathematical proofs.
Machine problems will involve the use of an automated reasoning tool.
There will be no exams in this course.
There will be two mini-projects, having one of the following formats.
The adopted textbook is
Deduction Systems
by Rolf Socher-Ambrosius and Patricia Johann,
Graduate Texts in Computer Science,
Springer,
1996.
A list of additional reading material will be available on the course webpage.
The weighting of items in grade determination will be approximately the following: homework assignments 40%, participation to class discussion 10%, mini-projects 25% each.
We will use the HP and Linux workstations in the CS Educational Lab in 301 MLH. Please see the instructor after class if do not have a CS account yet.
The instructor must hear from anyone who has a disability that may require some modification of seating, testing, or other class requirements so that appropriate arrangements can be made. Please see the instructor after class or during office hours.