An open API service indexing awesome lists of open source software.

https://github.com/shilangyu/foundations_of_software_projects

Formalization projects for the Foundation of Software course at EPFL
https://github.com/shilangyu/foundations_of_software_projects

epfl fos lean lean4 theorem-proving

Last synced: 4 months ago
JSON representation

Formalization projects for the Foundation of Software course at EPFL

Awesome Lists containing this project

README

          

# foundations_of_software_projects

Formalization projects for the Foundation of Software course at EPFL

### arithmetic

A language with natural numbers, booleans, an `if`-expression and two functions: `pred` and `iszero?`.

We define the small and big step semantics. We also define a function for evalution. We prove all the semantic definitions are equivalent.

### untyped

The pure lambda calculus. We define some datatypes (lists, booleans).

We prove confluence.

### typed

The simply typed lambda calculus. We define some datatype (lists, booleans).

We prove progress and correctness of inference.

### CoC

Proofs of statements using the calculus of constructions. Namely, not in tactic mode but pure lambda terms.