2017-18 Pomona College Catalog 
    
    Mar 28, 2024  
2017-18 Pomona College Catalog [ARCHIVED CATALOG] Use the dropdown above to select the current 2023-24 catalog.

Add to Portfolio (opens a new window)

CSCI181N PO - Software Foundations

When Offered: Last offered spring 2016.
Instructor(s): M. Greenberg
Credit: 1

Building reliable software through formal verification. We weave together five threads: (1) logic, for making and justifying precise claims about programs; (2) proof assistants, to construct rigorous logical arguments; (3) functional programming, both as a method of programming and as a bridge between programming and logic; (4) formal techniques for reasoning about the properties of specific programs (e.g., the fact that a loop terminates on all inputs, or that a sorting function or a compiler obeys a particular specification; (5) type systems, for establishing well-behaveness guarantees for all programs in a given programming language (e.g., the fact that well-typed Java programs cannot be subverted at runtime). Prerequisites: CSCI 131 PO  or CSCI 081 PO .
This course has been revised for spring 2018  .
Satisfies the following General Education Requirement(s), subject to conditions explained in the Degree Requirements section of this Catalog:
Area 5; Speaking Intensive



Add to Portfolio (opens a new window)