File tree 11 files changed +27
-302
lines changed
11 files changed +27
-302
lines changed Original file line number Diff line number Diff line change 1
- all : template-coq checker
1
+ all : template-coq checker extraction
2
2
3
3
.PHONY : all template-coq checker install html clean mrproper .merlin test-suite translations
4
4
5
5
install :
6
6
$(MAKE ) -C template-coq install
7
7
$(MAKE ) -C checker install
8
+ $(MAKE ) -C extraction install
8
9
9
10
html : all
10
11
$(MAKE ) -C template-coq html
12
+ $(MAKE ) -C extraction html
11
13
mv template-coq/html/* .html html
12
14
rm template-coq/html/coqdoc.css
13
15
rm -d template-coq/html
14
16
15
17
clean :
16
18
$(MAKE ) -C template-coq clean
19
+ $(MAKE ) -C extraction clean
17
20
$(MAKE ) -C checker clean
18
21
$(MAKE ) -C test-suite clean
19
22
$(MAKE ) -C translations clean
20
23
21
24
mrproper :
22
25
$(MAKE ) -C template-coq mrproper
26
+ $(MAKE ) -C extraction mrproper
23
27
$(MAKE ) -C checker mrproper
24
28
25
29
.merlin :
@@ -29,6 +33,9 @@ mrproper:
29
33
template-coq :
30
34
$(MAKE ) -C template-coq
31
35
36
+ extraction : template-coq
37
+ $(MAKE ) -C extraction
38
+
32
39
checker : template-coq
33
40
./movefiles.sh
34
41
$(MAKE ) -C checker
Original file line number Diff line number Diff line change
1
+ -R theories Extraction
2
+ -Q ../template-coq/theories Template
3
+
4
+ theories/Ast.v
5
+ theories/Induction.v
6
+ theories/LiftSubst.v
7
+ theories/UnivSubst.v
8
+ theories/WcbvEval.v
9
+ theories/Typing.v
10
+ theories/Erase.v
Original file line number Diff line number Diff line change @@ -6,9 +6,9 @@ Require Import List. Import ListNotations.
6
6
From Template Require Import monad_utils.
7
7
From Template Require Export univ uGraph Ast.
8
8
9
- (** Erased terms
9
+ (** Extracted terms
10
10
11
- These are the terms produced by erasure :
11
+ These are the terms produced by extraction :
12
12
compared to kernel terms, all proofs are translated to [tBox] and
13
13
casts are removed.
14
14
*)
Original file line number Diff line number Diff line change 2
2
3
3
From Coq Require Import Bool String List Program BinPos Compare_dec Omega.
4
4
From Template Require Import config utils monad_utils Ast univ Induction LiftSubst UnivSubst Typing Checker Retyping MetaTheory WcbvEval.
5
- From Template Require AstUtils Erasure. Ast Erasure. WcbvEval.
5
+ From Extraction Require Ast WcbvEval.
6
6
Require Import String.
7
7
Local Open Scope string_scope.
8
8
Set Asymmetric Patterns.
Original file line number Diff line number Diff line change 1
1
(* Distributed under the terms of the MIT license. *)
2
2
3
3
From Template Require Import univ.
4
- From Template.Erasure Require Import Ast.
4
+ From Extraction Require Import Ast.
5
5
Require Import List Program .
6
6
Require Import BinPos.
7
7
Require Import Coq.Arith.Compare_dec Bool.
Original file line number Diff line number Diff line change 1
1
(* Distributed under the terms of the MIT license. *)
2
2
3
3
Require Import List Program .
4
- Require Import Erasure. Ast.
4
+ Require Import Ast.
5
5
Require Import BinPos.
6
6
Require Import Coq.Arith.Compare_dec Bool.
7
- Require Import Erasure. Induction.
7
+ Require Import Induction.
8
8
9
9
(** * Lifting and substitution for the AST
10
10
Original file line number Diff line number Diff line change 2
2
3
3
From Coq Require Import Bool String List Program BinPos Compare_dec Omega.
4
4
Require Import Template.config Template.utils Template.kernel.univ.
5
- From Template.Erasure Require Import Ast Induction LiftSubst UnivSubst.
6
- From Template Require AstUtils Loader.
5
+ From Extraction Require Import Ast Induction LiftSubst UnivSubst.
7
6
Require Import String.
8
7
Local Open Scope string_scope.
9
8
Set Asymmetric Patterns.
Original file line number Diff line number Diff line change 2
2
3
3
From Coq Require Import Bool String List Program BinPos Compare_dec Omega.
4
4
From Template Require Import utils univ.
5
- From Template.Erasure Require Import Ast Induction LiftSubst.
5
+ From Extraction Require Import Ast Induction LiftSubst.
6
6
From Template Require AstUtils.
7
7
Require Import String.
8
8
Local Open Scope string_scope.
Original file line number Diff line number Diff line change 2
2
3
3
From Coq Require Import Bool String List Program BinPos Compare_dec Omega.
4
4
From Template Require Import config utils Ast univ.
5
- From Template.Erasure Require Import Ast Induction LiftSubst UnivSubst Typing.
5
+ From Extraction Require Import Ast Induction LiftSubst UnivSubst Typing.
6
6
From Template Require AstUtils.
7
7
Require Import String.
8
8
Local Open Scope string_scope.
@@ -298,16 +298,3 @@ Section Wcbv.
298
298
Admitted . (* FIXME complete *)
299
299
300
300
End Wcbv.
301
-
302
- (** Well-typed closed programs can't go wrong: they always evaluate to a value. *)
303
-
304
- Conjecture closed_typed_wcbeval : forall (Σ : global_context) t T,
305
- Σ ;;; [] |- t : T -> exists u, eval (fst Σ) [] t u.
306
-
307
- (** Evaluation is a subrelation of reduction: *)
308
-
309
- Lemma wcbeval_red : forall (Σ : global_declarations) Γ t u,
310
- eval Σ Γ t u -> red Σ Γ t u.
311
- Proof .
312
- induction 1; try constructor; eauto.
313
- Admitted . (** TODO: Congruence lemmas of red for all constructions (as done in Coq in Coq) *)
Original file line number Diff line number Diff line change @@ -29,12 +29,5 @@ theories/MetaTheory.v
29
29
theories/Checker.v
30
30
theories/WcbvEval.v
31
31
theories/Retyping.v
32
- theories/Erasure/Ast.v
33
- theories/Erasure/Induction.v
34
- theories/Erasure/LiftSubst.v
35
- theories/Erasure/UnivSubst.v
36
- theories/Erasure/WcbvEval.v
37
- theories/Erasure/Typing.v
38
- theories/Erasure/Erase.v
39
32
theories/All.v
40
33
theories/Extraction.v
You can’t perform that action at this time.
0 commit comments