Skip to content

Commit ebcd89f

Browse files
authored
Merge pull request #540 from yforster/coq-8.12-jan18
Preparing for `coq-metacoq.1.0~beta2+8.12`
2 parents 753ac0b + ae198c3 commit ebcd89f

File tree

192 files changed

+15088
-10794
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

192 files changed

+15088
-10794
lines changed

.gitignore

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -412,3 +412,9 @@ erasure/src/signature.ml
412412
erasure/src/signature.mli
413413
erasure/src/eOptimizePropDiscr.ml
414414
erasure/src/eOptimizePropDiscr.mli
415+
erasure/src/pCUICErrors.ml
416+
erasure/src/pCUICErrors.mli
417+
erasure/src/pCUICTypeChecker.ml
418+
erasure/src/pCUICTypeChecker.mli
419+
erasure/src/pCUICPrimitive.ml
420+
erasure/src/pCUICPrimitive.mli

INSTALL.md

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,6 @@ MetaCoq is split into multiple packages that get all installed using the
2525
`coq-metacoq` meta-package:
2626

2727
- `coq-metacoq-template` for the Template Monad and quoting plugin
28-
- `coq-metacoq-checker` for the UNverified checker of template-coq terms
2928
- `coq-metacoq-pcuic` for the PCUIC development and proof of the
3029
Template-Coq -> PCUIC translation
3130
- `coq-metacoq-safechecker` for the verified checker on PCUIC terms
@@ -103,7 +102,7 @@ the sources directory.
103102

104103
Then use:
105104

106-
- `make` to compile the `template-coq` plugin, the `checker`, the `pcuic`
105+
- `make` to compile the `template-coq` plugin, the `pcuic`
107106
development and the `safechecker` and `erasure` plugins.
108107
You can also selectively build each target.
109108

Makefile

Lines changed: 6 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -1,20 +1,18 @@
11
TIMED ?=
22

3-
all: template-coq checker pcuic safechecker erasure examples
3+
all: template-coq pcuic safechecker erasure examples
44

5-
.PHONY: all template-coq checker pcuic erasure install html clean mrproper .merlin test-suite translations
5+
.PHONY: all template-coq pcuic erasure install html clean mrproper .merlin test-suite translations
66

77
install: all
88
$(MAKE) -C template-coq install
9-
$(MAKE) -C checker install
109
$(MAKE) -C pcuic install
1110
$(MAKE) -C safechecker install
1211
$(MAKE) -C erasure install
1312
$(MAKE) -C translations install
1413

1514
uninstall: all
1615
$(MAKE) -C template-coq uninstall
17-
$(MAKE) -C checker uninstall
1816
$(MAKE) -C pcuic uninstall
1917
$(MAKE) -C safechecker uninstall
2018
$(MAKE) -C erasure uninstall
@@ -23,7 +21,6 @@ uninstall: all
2321
html: all
2422
"coqdoc" -toc -utf8 -interpolate -l -html \
2523
-R template-coq/theories MetaCoq.Template \
26-
-R checker/theories MetaCoq.Checker \
2724
-R pcuic/theories MetaCoq.PCUIC \
2825
-R safechecker/theories MetaCoq.SafeChecker \
2926
-R erasure/theories MetaCoq.Erasure \
@@ -32,7 +29,6 @@ html: all
3229

3330
clean:
3431
$(MAKE) -C template-coq clean
35-
$(MAKE) -C checker clean
3632
$(MAKE) -C pcuic clean
3733
$(MAKE) -C safechecker clean
3834
$(MAKE) -C erasure clean
@@ -45,7 +41,6 @@ mrproper:
4541
$(MAKE) -C pcuic mrproper
4642
$(MAKE) -C safechecker mrproper
4743
$(MAKE) -C erasure mrproper
48-
$(MAKE) -C checker mrproper
4944
$(MAKE) -C examples mrproper
5045
$(MAKE) -C test-suite mrproper
5146
$(MAKE) -C translations mrproper
@@ -55,7 +50,6 @@ mrproper:
5550
$(MAKE) -C pcuic .merlin
5651
$(MAKE) -C safechecker .merlin
5752
$(MAKE) -C erasure .merlin
58-
$(MAKE) -C checker .merlin
5953

6054
template-coq:
6155
$(MAKE) -C template-coq
@@ -69,28 +63,23 @@ safechecker: template-coq pcuic
6963
erasure: template-coq safechecker pcuic
7064
$(MAKE) -C erasure
7165

72-
checker: template-coq
73-
$(MAKE) -C checker
74-
75-
examples: checker safechecker
66+
examples: checker safechecker erasure
7667
$(MAKE) -C examples
7768

78-
test-suite: template-coq checker safechecker erasure
69+
test-suite: template-coq safechecker erasure
7970
$(MAKE) -C test-suite
8071

81-
translations: template-coq checker
72+
translations: template-coq
8273
$(MAKE) -C translations
8374

8475
cleanplugins:
8576
$(MAKE) -C template-coq cleanplugin
86-
$(MAKE) -C pcuic cleanplugin
87-
$(MAKE) -C checker cleanplugin
8877
$(MAKE) -C safechecker cleanplugin
8978
$(MAKE) -C erasure cleanplugin
9079

9180
ci-local:
9281
./configure.sh local
93-
$(MAKE) all test-suite TIMED=pretty-timed
82+
$(MAKE) all test-suite
9483

9584
ci-opam:
9685
# Use -v so that regular output is produced

README.md

Lines changed: 3 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -68,20 +68,13 @@ In addition to this representation of terms, Template Coq includes:
6868
checker, and inserting them in the global environment, in
6969
the style of MTac.
7070

71+
- A formalisation of the expected typing rules reflecting the ones of Coq
7172

72-
### [Checker](https://github.com/MetaCoq/metacoq/tree/coq-8.12/checker)
73-
74-
A partial type-checker for the Calculus of Inductive Constructions,
75-
whose extraction to ML is runnable as a plugin (using command `MetaCoq
76-
Check foo`). This checker uses _fuel_, so it must be passed a number
77-
of maximal reduction steps to perform when calling conversion, and is
78-
NOT verified.
79-
80-
### [PCUIC](https://github.com/MetaCoq/metacoq/tree/coq-8.12/pcuic)
73+
### [PCUIC](https://github.com/MetaCoq/metacoq/tree/coq-8.11/pcuic)
8174

8275
PCUIC, the Polymorphic Cumulative Calculus of Inductive Constructions is
8376
a cleaned up version of the term language of Coq and its associated
84-
type system, equivalent to the one of Coq. This version of the
77+
type system, shown equivalent to the one of Coq. This version of the
8578
calculus has proofs of standard metatheoretical results:
8679

8780
- Weakening for global declarations, weakening and substitution for

TODO.md

Lines changed: 11 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -29,11 +29,16 @@
2929

3030
- Clean `Derive`s: always derive `Siganture`, `NoConf`, ... directly after the
3131
definition of the inductive. (To avoid doing it several times.)
32+
(Mostly done)
33+
34+
- Finish the PCUICSigmaCalculus proofs.
3235

33-
- Remove `Program` from everywhere.
34-
35-
36+
# Medium Projects
3637

38+
- Change Template-PCUIC translations to translate casts to applications of
39+
identity functions (vm_cast, default_cast etc) to make the back and forth
40+
the identity and derive weakening/substitution/etc.. from the PCUIC theorems.
41+
Is that really better than identity functions?
3742
# Big projects
3843

3944
- Refine the longest-simple-path algorithm on universes with the
@@ -49,6 +54,9 @@
4954
be definable. Probably not very useful though because if the elimination is
5055
restricted then it means some Type is in the constructor and won't be projectable.
5156

57+
- Verify the substitution calculus of P.M Pédrot using skewed lists at
58+
https://github.com/coq/coq/pull/13537 and try to use it to implement efficient explicit
59+
substitutions.
5260

5361
## Website
5462

checker/Makefile

Lines changed: 0 additions & 44 deletions
This file was deleted.

checker/Makefile.coq.local

Lines changed: 0 additions & 4 deletions
This file was deleted.

checker/Makefile.local

Lines changed: 0 additions & 3 deletions
This file was deleted.

checker/Makefile.plugin.local

Lines changed: 0 additions & 16 deletions
This file was deleted.

checker/_CoqProject.in

Lines changed: 0 additions & 17 deletions
This file was deleted.

0 commit comments

Comments
 (0)