Ecosyste.ms: Awesome

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

Awesome Lists | Featured Topics | Projects

https://github.com/bakseter/thesis

My master thesis (and related code) in Logic at the University of Bergen.
https://github.com/bakseter/thesis

coq formalization proof-theory thesis

Last synced: 29 days ago
JSON representation

My master thesis (and related code) in Logic at the University of Bergen.

Awesome Lists containing this project

README

        

# A Case Study in Dependent Type Theory: Extracting a Certified Program from the Formal Proof of its Specification

## Thesis

LaTeX code for template taken from https://github.com/echo-uib/master-latex-template.

See `.tex-build/main.pdf` for pdf.

## Formalization

### Build Coq files

Proof of main theorem (Theorem 3.2) is located in `coq/src/Main.v`.
Haskell extraction, along with some examples (and minor manual code changes, see thesis 5.1.2), is located in `coq/extr/Main.hs`.
The largest example uses type universe constraints taken from `Main.v`
using `Print Universes`.

```
cd coq
make -f CoqMakefile
```

**Running the above command will also re-extract the file `Main.hs`,
thus removing some changes (done manually for QOL)!**

### Compile & run Haskell example

`coq/extr/Main.hs` can be compiled with Stack for much better efficiency.

```
cd coq/extr/stack-proj
stack run
```