COMP 597 Fall 2021: Automated Reasoning with Machine Learning (4 credits)
Course Overview
Reasoning and learning are two fundamental piceces of intelligence (whether artificial or not).
This course is designed to introduce the cutting-edge research on combining logical reasoning with machine learning.
We will study the logical foundations and algorithms behind many reasoning engines, e.g., SAT solvers, SMT solvers, and domain-specific solvers.
We will also study how machine learning can be used to improve these complicated reasoning systems.
Specifically, this course will cover the following topics -- Boolean satisfiability (SAT), Satisifiability module Theories (SMT), program analysis, program synthesis, inductive logic programming, and neuro-symoblic methods.
Pre-requisites (recommended but not absolutely required):
- MATH: 222 (Calculus), 223 (Linear Algebra), and 323 (Probability)
- COMP: 251 (Algorithms), 302/303 (Programming), 424/451/551 (AI/Machine Learning)
Instructor
Xujie Si <
Office: McConnell 324
Teaching Assistant
TBDLecture Schedule
Lectures: MW 11:35 AM -12:55 PMLocation: Wong Building 1050 (map)
The schedule below is tentative and subject to change throughout the semester.
Grading
- Class participation (10%)
- Paper reading (20%)
- Assignments (30%)
- Project (proposal 10%, presentation 10%, report 20%)
Relevant Textbooks
The textbooks below are supplementary, since our main source of reading materials will be academic research papers.- Handbook of Satisfiability by Armin Biere, Marijn Heule, Hans van Maaren, and Toby Walsh
- Decision Procedures -- An Algorithmic Point of View by Daniel Kroening and Ofer Strichman
- The Calculus of Computation by Aaron R. Bradley and Zohar Manna
- Pattern recognition and Machine Learning by Christopher Bishop
- Deep Learning by Ian Goodfellow, Yoshua Bengio, and Aaron Courville