Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
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.
- Host: GitHub
- URL: https://github.com/bakseter/thesis
- Owner: bakseter
- Created: 2023-01-13T13:19:31.000Z (about 2 years ago)
- Default Branch: master
- Last Pushed: 2024-02-02T21:08:46.000Z (12 months ago)
- Last Synced: 2024-11-06T05:43:24.154Z (3 months ago)
- Topics: coq, formalization, proof-theory, thesis
- Language: Haskell
- Homepage:
- Size: 7.48 MB
- Stars: 1
- Watchers: 3
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
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
```