author  wenzelm 
Wed, 26 Jul 2006 00:44:44 +0200  
changeset 20207  4c57e850e8d5 
parent 20075  a7e183bfebef 
child 20225  4b8e42490e58 
permissions  rwrr 
19  1 
(* Title: Pure/ROOT.ML 
0  2 
ID: $Id$ 
3 

16842  4 
Pure Isabelle. 
0  5 
*) 
6 

7 
val banner = "Pure Isabelle"; 

11835  8 
val version = "Isabelle repository version"; (*filled in automatically!*) 
9 

17474
e4cdb9f061fb
added quick_and_dirty (from Isar/skip_proofs.ML);
wenzelm
parents:
17467
diff
changeset

10 
(*if true then some tools will OMIT some proofs*) 
e4cdb9f061fb
added quick_and_dirty (from Isar/skip_proofs.ML);
wenzelm
parents:
17467
diff
changeset

11 
val quick_and_dirty = ref false; 
0  12 

12248  13 
print_depth 10; 
0  14 

5684  15 
(*fake hiding of private structures*) 
16 
structure Hidden = struct end; 

4949  17 

5017
786a17461ab9
moved table.ML, object.ML, seq.ML, name_space.ML to General;
wenzelm
parents:
5004
diff
changeset

18 
(*basic tools*) 
0  19 
use "library.ML"; 
5017
786a17461ab9
moved table.ML, object.ML, seq.ML, name_space.ML to General;
wenzelm
parents:
5004
diff
changeset

20 
cd "General"; use "ROOT.ML"; cd ".."; 
14781  21 

22 
(*fundamental structures*) 

20075  23 
use "name.ML"; 
0  24 
use "term.ML"; 
14823
ebb8499d0fd2
moved print_mode to General/output.ML; load General/pretty.ML early;
wenzelm
parents:
14781
diff
changeset

25 
use "General/pretty.ML"; 
14781  26 
use "sorts.ML"; 
27 
use "type.ML"; 

16435  28 
use "context.ML"; 
16980  29 
use "compress.ML"; 
19  30 

4949  31 
(*inner syntax module*) 
6178  32 
cd "Syntax"; use "ROOT.ML"; cd ".."; 
0  33 

15825
1576f9d3ffae
added content of Pure/Thy/ROOT.ML, Pure/Proof/ROOT.ML;
wenzelm
parents:
15801
diff
changeset

34 
(*core of tactical proof system*) 
18934  35 
use "envir.ML"; 
36 
use "logic.ML"; 

2960  37 
use "type_infer.ML"; 
18059  38 
use "consts.ML"; 
0  39 
use "sign.ML"; 
40 
use "pattern.ML"; 

41 
use "unify.ML"; 

42 
use "net.ML"; 

16108
cf468b93a02e
Implement cyclefree overloading, so that definitions cannot harm consistency any more (except of course via interaction with axioms).
obua
parents:
15825
diff
changeset

43 
use "defs.ML"; 
1528  44 
use "theory.ML"; 
11511  45 
use "proofterm.ML"; 
0  46 
use "thm.ML"; 
13271  47 
use "fact_index.ML"; 
3986  48 
use "pure_thy.ML"; 
19589  49 
use "display.ML"; 
0  50 
use "drule.ML"; 
19898  51 
use "variable.ML"; 
0  52 
use "tctical.ML"; 
1582  53 
use "search.ML"; 
15006
107e4dfd3b96
Merging the metasimplifier with the Proverssimplifier. Next step:
skalberg
parents:
14823
diff
changeset

54 
use "meta_simplifier.ML"; 
19417  55 
use "conjunction.ML"; 
17963  56 
use "goal.ML"; 
0  57 
use "tactic.ML"; 
58 

11511  59 
(*proof term operations*) 
15825
1576f9d3ffae
added content of Pure/Thy/ROOT.ML, Pure/Proof/ROOT.ML;
wenzelm
parents:
15801
diff
changeset

60 
use "Proof/reconstruct.ML"; 
1576f9d3ffae
added content of Pure/Thy/ROOT.ML, Pure/Proof/ROOT.ML;
wenzelm
parents:
15801
diff
changeset

61 
use "Proof/proof_syntax.ML"; 
1576f9d3ffae
added content of Pure/Thy/ROOT.ML, Pure/Proof/ROOT.ML;
wenzelm
parents:
15801
diff
changeset

62 
use "Proof/proof_rewrite_rules.ML"; 
1576f9d3ffae
added content of Pure/Thy/ROOT.ML, Pure/Proof/ROOT.ML;
wenzelm
parents:
15801
diff
changeset

63 
use "Proof/proofchecker.ML"; 
1576f9d3ffae
added content of Pure/Thy/ROOT.ML, Pure/Proof/ROOT.ML;
wenzelm
parents:
15801
diff
changeset

64 

1576f9d3ffae
added content of Pure/Thy/ROOT.ML, Pure/Proof/ROOT.ML;
wenzelm
parents:
15801
diff
changeset

65 
(*theory auto loader database*) 
1576f9d3ffae
added content of Pure/Thy/ROOT.ML, Pure/Proof/ROOT.ML;
wenzelm
parents:
15801
diff
changeset

66 
use "Thy/thy_load.ML"; 
1576f9d3ffae
added content of Pure/Thy/ROOT.ML, Pure/Proof/ROOT.ML;
wenzelm
parents:
15801
diff
changeset

67 
use "Thy/thy_info.ML"; 
11511  68 

18870  69 
(*theory syntax*) 
15825
1576f9d3ffae
added content of Pure/Thy/ROOT.ML, Pure/Proof/ROOT.ML;
wenzelm
parents:
15801
diff
changeset

70 
use "Isar/outer_lex.ML"; 
1576f9d3ffae
added content of Pure/Thy/ROOT.ML, Pure/Proof/ROOT.ML;
wenzelm
parents:
15801
diff
changeset

71 

16435  72 
(*the Isar system*) 
6178  73 
cd "Isar"; use "ROOT.ML"; cd ".."; 
20207  74 
use "subgoal.ML"; 
5834  75 

13402  76 
use "Proof/extraction.ML"; 
11511  77 

17467  78 
cd "Tools"; use "ROOT.ML"; cd ".."; 
79 

12778
3120e338ffae
Interface/proof_general.ML move to proof_general.ML;
wenzelm
parents:
12248
diff
changeset

80 
(*configuration for Proof General*) 
18991
0ded3b842878
use proof_general.ML: setmp quick_and_dirty captures default value;
wenzelm
parents:
18934
diff
changeset

81 
(use > setmp proofs 1 > setmp quick_and_dirty true) "proof_general.ML"; 
16781  82 

18991
0ded3b842878
use proof_general.ML: setmp quick_and_dirty captures default value;
wenzelm
parents:
18934
diff
changeset

83 
use_thy "Pure"; 
0ded3b842878
use proof_general.ML: setmp quick_and_dirty captures default value;
wenzelm
parents:
18934
diff
changeset

84 
structure Pure = struct val thy = theory "Pure" end; 
18837  85 

86 
Context.add_setup 

87 
(Theory.del_modesyntax Syntax.default_mode Syntax.appl_syntax #> 

88 
Theory.add_syntax Syntax.applC_syntax); 

18991
0ded3b842878
use proof_general.ML: setmp quick_and_dirty captures default value;
wenzelm
parents:
18934
diff
changeset

89 
use_thy "CPure"; 
0ded3b842878
use proof_general.ML: setmp quick_and_dirty captures default value;
wenzelm
parents:
18934
diff
changeset

90 
structure CPure = struct val thy = theory "CPure" end; 
15801  91 

17467  92 
(*final ML setup*) 
6178  93 
use "install_pp.ML"; 
6237  94 
val use = ThyInfo.use; 
6226  95 
val cd = File.cd o Path.unpack; 
7938  96 
ml_prompts "ML> " "ML# "; 
11511  97 

11545  98 
proofs := 0; 