CS 5160
Last Updated
- Schedule of Classes - October 15, 2026 7:07PM EDT
Classes
CS 5160
Course Description
Course information provided by the 2026-2027 Catalog.
An introduction to formal verification, focusing on correctness of functional and imperative programs relative to mathematical specifications. Topics include computer-assisted theorem proving, logic, programming language semantics, and verification of algorithms and data structures. Assignments involve extensive use of a proof assistant to develop and check proofs.
Prerequisites background equivalent to: CS 3110; CS 2110; CS 2800.
Enrollment Information Enrollment limited to: Computer Science (CS) Master of Engineering (M.Eng.) students.
Last 4 Terms Offered 2026SP, 2022SP
Learning Outcomes
- Apply propositional and predicate logic, including constructive and classical reasoning, to reason about programs.
- Explain the Curry-Howard correspondence between proofs and programs, including the interpretation of proof checking as type checking.
- Formulate programs and formal specifications in a type-theoretic framework.
- Construct machine-checked proofs of theorems.
- Design, implement, and verify functional data structures and algorithms, producing implementations together with proofs of correctness.
Regular Academic Session. Choose one lecture and one discussion. Combined with: CS 4160
-
Credits and Grading Basis
4 Credits Stdnt Opt(Letter or S/U grades)
-
Class Number & Section Details
-
Meeting Pattern
- TR
- Jan 25 - May 11, 2027
Instructors
Clarkson, M
-
Additional Information
Instruction Mode: In Person
For Bowers Computer and Information Science (CIS) Course Enrollment Help, please see: https://tdx.cornell.edu/TDClient/193/Portal/Home/
-
Class Number & Section Details
-
Meeting Pattern
- F
- Jan 25 - May 11, 2027
Instructors
Clarkson, M
-
Additional Information
Instruction Mode: In Person
Share
Or send this URL:
