2500
|
1 |
#
|
|
2 |
# $Id$
|
|
3 |
#
|
|
4 |
# IsaMakefile for ZF
|
|
5 |
#
|
|
6 |
|
|
7 |
#### Base system
|
|
8 |
|
3118
|
9 |
OUT = $(ISABELLE_OUTPUT)
|
2500
|
10 |
|
|
11 |
NAMES = ZF upair subset pair domrange \
|
|
12 |
func AC equalities Bool \
|
|
13 |
Sum QPair mono Fixedpt ind_syntax cartprod add_ind_def \
|
|
14 |
constructor intr_elim indrule Inductive Perm Rel EquivClass Trancl \
|
|
15 |
WF Order Ordinal Epsilon Arith Univ \
|
|
16 |
QUniv Datatype OrderArith OrderType \
|
|
17 |
Cardinal CardinalArith Cardinal_AC InfDatatype \
|
|
18 |
Zorn Nat Finite List
|
|
19 |
|
|
20 |
FILES = ROOT.ML thy_syntax.ML ../Pure/section_utils.ML simpdata.ML typechk.ML \
|
|
21 |
$(NAMES:%=%.thy) $(NAMES:%=%.ML)
|
|
22 |
|
|
23 |
$(OUT)/ZF: $(OUT)/FOL $(FILES)
|
3057
|
24 |
@$(ISATOOL) usedir -b $(OUT)/FOL ZF
|
2500
|
25 |
|
|
26 |
$(OUT)/FOL:
|
|
27 |
@cd ../FOL; $(ISATOOL) make
|
|
28 |
|
|
29 |
|
|
30 |
|
|
31 |
#### Tests and examples
|
|
32 |
|
|
33 |
## IMP-semantics example
|
|
34 |
|
|
35 |
IMP_NAMES = Com Denotation Equiv
|
|
36 |
IMP_FILES = IMP/ROOT.ML $(IMP_NAMES:%=IMP/%.thy) $(IMP_NAMES:%=IMP/%.ML)
|
|
37 |
|
|
38 |
IMP: $(OUT)/ZF $(IMP_FILES)
|
2828
|
39 |
@$(ISATOOL) usedir $(OUT)/ZF IMP
|
2500
|
40 |
|
|
41 |
|
|
42 |
## Coinduction example
|
|
43 |
|
|
44 |
COIND_NAMES = ECR MT Map Static Types Values
|
|
45 |
|
|
46 |
COIND_FILES = Coind/ROOT.ML Coind/Language.thy Coind/BCR.thy Coind/Dynamic.thy \
|
|
47 |
$(COIND_NAMES:%=Coind/%.thy) $(COIND_NAMES:%=Coind/%.ML)
|
|
48 |
|
|
49 |
Coind: $(OUT)/ZF $(COIND_FILES)
|
2828
|
50 |
@$(ISATOOL) usedir $(OUT)/ZF Coind
|
2500
|
51 |
|
|
52 |
|
|
53 |
## AC examples
|
|
54 |
|
|
55 |
AC_NAMES = AC_Equiv Cardinal_aux \
|
|
56 |
AC15_WO6 AC16_WO4 AC16_lemmas AC17_AC1 AC18_AC19 AC1_WO2 \
|
|
57 |
DC DC_lemmas HH Hartog WO1_AC \
|
|
58 |
WO2_AC16 WO6_WO1 WO_AC recfunAC16 rel_is_fun
|
|
59 |
|
|
60 |
AC_FILES = AC/ROOT.ML AC/AC0_AC1.ML AC/AC10_AC15.ML AC/AC1_AC17.ML \
|
|
61 |
AC/AC2_AC6.ML AC/AC7_AC9.ML \
|
|
62 |
AC/WO1_WO6.ML AC/WO1_WO7.ML AC/WO1_WO8.ML \
|
|
63 |
$(AC_NAMES:%=AC/%.thy) $(AC_NAMES:%=AC/%.ML)
|
|
64 |
|
|
65 |
AC: $(OUT)/ZF $(AC_FILES)
|
2828
|
66 |
@$(ISATOOL) usedir $(OUT)/ZF AC
|
2500
|
67 |
|
|
68 |
|
|
69 |
## Residuals example
|
|
70 |
|
|
71 |
RESID_NAMES = Confluence Redex SubUnion Conversion Reduction Substitution \
|
|
72 |
Cube Residuals Terms
|
|
73 |
|
|
74 |
RESID_FILES = Resid/ROOT.ML $(RESID_NAMES:%=Resid/%.thy) $(RESID_NAMES:%=Resid/%.ML)
|
|
75 |
|
|
76 |
Resid: $(OUT)/ZF $(RESID_FILES)
|
2828
|
77 |
@$(ISATOOL) usedir $(OUT)/ZF Resid
|
2500
|
78 |
|
|
79 |
|
|
80 |
## Miscellaneous examples
|
|
81 |
|
|
82 |
EX_NAMES = Primes Ramsey Limit Integ twos_compl Bin BT Term TF Ntree Brouwer \
|
|
83 |
Data Enum Rmap Mutil PropLog ListN Acc Comb Primrec LList CoUnit
|
|
84 |
|
|
85 |
EX_FILES = ex/ROOT.ML ex/misc.ML $(EX_NAMES:%=ex/%.thy) $(EX_NAMES:%=ex/%.ML)
|
|
86 |
|
|
87 |
ex: $(OUT)/ZF $(EX_FILES)
|
2828
|
88 |
@$(ISATOOL) usedir $(OUT)/ZF ex
|
2500
|
89 |
|
|
90 |
|
|
91 |
## Full test
|
|
92 |
|
|
93 |
test: $(OUT)/ZF IMP Coind AC Resid ex
|
|
94 |
echo 'Test examples ran successfully' > test
|
|
95 |
|
|
96 |
.PRECIOUS: $(OUT)/FOL $(OUT)/ZF
|