- 20 Jul, 2016 1 commit
-
-
Robbert Krebbers authored
-
- 19 Jul, 2016 1 commit
-
-
Robbert Krebbers authored
We reify to a representation of expressions that includes an explicit constructor for closed terms. Substitution can then be implemented as the identify, which enables us to perform it using computation.
-
- 15 Jul, 2016 1 commit
-
-
Robbert Krebbers authored
-
- 23 Jun, 2016 1 commit
-
-
Robbert Krebbers authored
This is more consistent with the proofmode, where we also call it pure.
-
- 19 Apr, 2016 2 commits
-
-
Robbert Krebbers authored
Par is now defined as an expression of type [∀ X, expr X] (instead of a value) and we prove that it is stable under weakening and substitution.
-
Robbert Krebbers authored
That way, we do not have useless type annotations of the form "v : language.val heap_lang" cluttering about any goal. Note, that we could decide to eta expand everywhere (as we do for ∀ and ∃), and use the notation "WP e {{ Q }}" for "wp e ⊤ (λ _, Q)".
-
- 20 Mar, 2016 1 commit
-
-
Ralf Jung authored
-
- 15 Mar, 2016 1 commit
-
-
Robbert Krebbers authored
-