5 # |
5 # |
6 |
6 |
7 #### Base system |
7 #### Base system |
8 |
8 |
9 OUT = $(ISABELLE_OUTPUT) |
9 OUT = $(ISABELLE_OUTPUT) |
|
10 LOG = $(OUT)/log |
10 |
11 |
11 NAMES = ZF upair subset pair domrange \ |
12 NAMES = ZF upair subset pair domrange \ |
12 func AC equalities Bool \ |
13 func AC equalities Bool \ |
13 Sum QPair mono Fixedpt ind_syntax cartprod add_ind_def \ |
14 Sum QPair mono Fixedpt ind_syntax cartprod add_ind_def \ |
14 constructor intr_elim indrule Inductive Perm Rel EquivClass Trancl \ |
15 constructor intr_elim indrule Inductive Perm Rel EquivClass Trancl \ |
33 ## IMP-semantics example |
34 ## IMP-semantics example |
34 |
35 |
35 IMP_NAMES = Com Denotation Equiv |
36 IMP_NAMES = Com Denotation Equiv |
36 IMP_FILES = IMP/ROOT.ML $(IMP_NAMES:%=IMP/%.thy) $(IMP_NAMES:%=IMP/%.ML) |
37 IMP_FILES = IMP/ROOT.ML $(IMP_NAMES:%=IMP/%.thy) $(IMP_NAMES:%=IMP/%.ML) |
37 |
38 |
38 IMP: $(OUT)/ZF $(IMP_FILES) |
39 $(LOG)/ZF-IMP.gz: $(OUT)/ZF $(IMP_FILES) |
39 @$(ISATOOL) usedir $(OUT)/ZF IMP |
40 @$(ISATOOL) usedir $(OUT)/ZF IMP |
40 |
41 |
41 |
42 |
42 ## Coinduction example |
43 ## Coinduction example |
43 |
44 |
44 COIND_NAMES = ECR MT Map Static Types Values |
45 COIND_NAMES = ECR MT Map Static Types Values |
45 |
46 |
46 COIND_FILES = Coind/ROOT.ML Coind/Language.thy Coind/BCR.thy Coind/Dynamic.thy \ |
47 COIND_FILES = Coind/ROOT.ML Coind/Language.thy Coind/BCR.thy Coind/Dynamic.thy \ |
47 $(COIND_NAMES:%=Coind/%.thy) $(COIND_NAMES:%=Coind/%.ML) |
48 $(COIND_NAMES:%=Coind/%.thy) $(COIND_NAMES:%=Coind/%.ML) |
48 |
49 |
49 Coind: $(OUT)/ZF $(COIND_FILES) |
50 $(LOG)/ZF-Coind.gz: $(OUT)/ZF $(COIND_FILES) |
50 @$(ISATOOL) usedir $(OUT)/ZF Coind |
51 @$(ISATOOL) usedir $(OUT)/ZF Coind |
51 |
52 |
52 |
53 |
53 ## AC examples |
54 ## AC examples |
54 |
55 |
60 AC_FILES = AC/ROOT.ML AC/AC0_AC1.ML AC/AC10_AC15.ML AC/AC1_AC17.ML \ |
61 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/AC2_AC6.ML AC/AC7_AC9.ML \ |
62 AC/WO1_WO6.ML AC/WO1_WO7.ML AC/WO1_WO8.ML \ |
63 AC/WO1_WO6.ML AC/WO1_WO7.ML AC/WO1_WO8.ML \ |
63 $(AC_NAMES:%=AC/%.thy) $(AC_NAMES:%=AC/%.ML) |
64 $(AC_NAMES:%=AC/%.thy) $(AC_NAMES:%=AC/%.ML) |
64 |
65 |
65 AC: $(OUT)/ZF $(AC_FILES) |
66 $(LOG)/ZF-AC.gz: $(OUT)/ZF $(AC_FILES) |
66 @$(ISATOOL) usedir $(OUT)/ZF AC |
67 @$(ISATOOL) usedir $(OUT)/ZF AC |
67 |
68 |
68 |
69 |
69 ## Residuals example |
70 ## Residuals example |
70 |
71 |
71 RESID_NAMES = Confluence Redex SubUnion Conversion Reduction Substitution \ |
72 RESID_NAMES = Confluence Redex SubUnion Conversion Reduction Substitution \ |
72 Cube Residuals Terms |
73 Cube Residuals Terms |
73 |
74 |
74 RESID_FILES = Resid/ROOT.ML $(RESID_NAMES:%=Resid/%.thy) $(RESID_NAMES:%=Resid/%.ML) |
75 RESID_FILES = Resid/ROOT.ML $(RESID_NAMES:%=Resid/%.thy) $(RESID_NAMES:%=Resid/%.ML) |
75 |
76 |
76 Resid: $(OUT)/ZF $(RESID_FILES) |
77 $(LOG)/ZF-Resid.gz: $(OUT)/ZF $(RESID_FILES) |
77 @$(ISATOOL) usedir $(OUT)/ZF Resid |
78 @$(ISATOOL) usedir $(OUT)/ZF Resid |
78 |
79 |
79 |
80 |
80 ## Miscellaneous examples |
81 ## Miscellaneous examples |
81 |
82 |
82 EX_NAMES = Primes Ramsey Limit Integ twos_compl Bin BT Term TF Ntree Brouwer \ |
83 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 Data Enum Rmap Mutil PropLog ListN Acc Comb Primrec LList CoUnit |
84 |
85 |
85 EX_FILES = ex/ROOT.ML ex/misc.ML $(EX_NAMES:%=ex/%.thy) $(EX_NAMES:%=ex/%.ML) |
86 EX_FILES = ex/ROOT.ML ex/misc.ML $(EX_NAMES:%=ex/%.thy) $(EX_NAMES:%=ex/%.ML) |
86 |
87 |
87 ex: $(OUT)/ZF $(EX_FILES) |
88 $(LOG)/ZF-ex.gz: $(OUT)/ZF $(EX_FILES) |
88 @$(ISATOOL) usedir $(OUT)/ZF ex |
89 @$(ISATOOL) usedir $(OUT)/ZF ex |
89 |
90 |
90 |
91 |
91 ## Full test |
92 ## Full test |
92 |
93 |
93 test: $(OUT)/ZF IMP Coind AC Resid ex |
94 ALL_TARGETS = $(OUT)/ZF $(LOG)/ZF-IMP.gz $(LOG)/ZF-Coind.gz \ |
94 echo 'Test examples ran successfully' > test |
95 $(LOG)/ZF-AC.gz $(LOG)/ZF-Resid.gz $(LOG)/ZF-ex.gz |
|
96 |
|
97 test: $(ALL_TARGETS) |
|
98 |
|
99 clean: |
|
100 @rm -f $(ALL_TARGETS) |
|
101 |
95 |
102 |
96 .PRECIOUS: $(OUT)/FOL $(OUT)/ZF |
103 .PRECIOUS: $(OUT)/FOL $(OUT)/ZF |