https://gitlab.com/nomadic-labs/mi-cho-coq
Revision 1df33a4d6c0b2d0b121e2ac0ea112a7f2d97dde6 authored by Raphael Cauderlier on 25 March 2019, 22:21:14 UTC, committed by Arvid Jakobsson on 12 August 2019, 12:25:09 UTC
We essentially proved forall i,
  typer.type_instruction (untyper.untype_instruction i) A = Return _ i

but this result can only be true if instructions like {FAIL; FAIL} are
forbidden in the typed world (the type inferrer cannot guess the type
of the stack between the two FAILs).

For this reason, we introduced a new boolean flag in the
syntax.instruction inductive that is true iff the instruction is a
sequence whose last element is FAIL.
1 parent 6aba875
History
Tip revision: 1df33a4d6c0b2d0b121e2ac0ea112a7f2d97dde6 authored by Raphael Cauderlier on 25 March 2019, 22:21:14 UTC
[typer] Certified Michelson type-checker/type-inferrer
Tip revision: 1df33a4
File Mode Size
doc
scripts
src
.gitignore -rw-r--r-- 276 bytes
.gitlab-ci.yml -rw-r--r-- 752 bytes
LICENSE -rw-r--r-- 1.1 KB
README.org -rw-r--r-- 8.5 KB
_CoqProject -rw-r--r-- 4 bytes
configure -rwxr-xr-x 1.6 KB
mi-cho-coq.opam -rw-r--r-- 709 bytes

README.org

back to top