author  dixon 
Sun, 11 Jun 2006 00:38:45 +0200  
changeset 19837  a2e93327daa3 
parent 19589  d42149a01a01 
child 19898  b1d179e42713 
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*) 

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

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

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

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

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

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

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

40 
use "unify.ML"; 

41 
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

42 
use "defs.ML"; 
1528  43 
use "theory.ML"; 
11511  44 
use "proofterm.ML"; 
0  45 
use "thm.ML"; 
13271  46 
use "fact_index.ML"; 
3986  47 
use "pure_thy.ML"; 
19589  48 
use "display.ML"; 
0  49 
use "drule.ML"; 
50 
use "tctical.ML"; 

1582  51 
use "search.ML"; 
15006
107e4dfd3b96
Merging the metasimplifier with the Proverssimplifier. Next step:
skalberg
parents:
14823
diff
changeset

52 
use "meta_simplifier.ML"; 
19417  53 
use "conjunction.ML"; 
17963  54 
use "goal.ML"; 
0  55 
use "tactic.ML"; 
56 

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

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

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

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

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

62 

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

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

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

65 
use "Thy/thy_info.ML"; 
11511  66 

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

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

69 

16435  70 
(*the Isar system*) 
6178  71 
cd "Isar"; use "ROOT.ML"; cd ".."; 
5834  72 

13402  73 
use "Proof/extraction.ML"; 
11511  74 

17467  75 
cd "Tools"; use "ROOT.ML"; cd ".."; 
76 

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

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

78 
(use > setmp proofs 1 > setmp quick_and_dirty true) "proof_general.ML"; 
16781  79 

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

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

81 
structure Pure = struct val thy = theory "Pure" end; 
18837  82 

83 
Context.add_setup 

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

85 
Theory.add_syntax Syntax.applC_syntax); 

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

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

87 
structure CPure = struct val thy = theory "CPure" end; 
15801  88 

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

11545  95 
proofs := 0; 