author  wenzelm 
Tue, 10 Jul 2007 16:44:58 +0200  
changeset 23696  ff97a943681e 
parent 23670  681ffad36776 
child 23825  e0372eba47b7 
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 

12248  10 
print_depth 10; 
0  11 

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

12 
(*basic tools*) 
21396  13 
use "General/basics.ML"; 
0  14 
use "library.ML"; 
22592  15 

16 
(*generic nonsense*) 

17 
val quick_and_dirty = ref false; 

18 
val print_mode = ref ([]: string list); 

19 
fun print_mode_active s = member (op =) (! print_mode) s; 

20 

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

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

23 
(*fundamental structures*) 

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

27 
use "General/pretty.ML"; 
14781  28 
use "sorts.ML"; 
29 
use "type.ML"; 

16435  30 
use "context.ML"; 
23353  31 
use "context_position.ML"; 
16980  32 
use "compress.ML"; 
22694  33 
use "type_infer.ML"; 
19  34 

4949  35 
(*inner syntax module*) 
22679  36 
use "Syntax/lexicon.ML"; 
37 
use "Syntax/ast.ML"; 

38 
use "Syntax/syn_ext.ML"; 

39 
use "Syntax/parser.ML"; 

40 
use "Syntax/type_ext.ML"; 

41 
use "Syntax/syn_trans.ML"; 

42 
use "Syntax/mixfix.ML"; 

43 
use "Syntax/printer.ML"; 

44 
use "Syntax/syntax.ML"; 

45 
structure Hidden = struct end; 

46 
structure Lexicon = Hidden; 

47 
structure Ast = Hidden; 

48 
structure SynExt = Hidden; 

49 
structure Parser = Hidden; 

50 
structure TypeExt = Hidden; 

51 
structure SynTrans = Hidden; 

52 
structure Mixfix = Hidden; 

53 
structure Printer = Hidden; 

54 

21475  55 
use "General/ml_syntax.ML"; 
0  56 

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

57 
(*core of tactical proof system*) 
18934  58 
use "envir.ML"; 
59 
use "logic.ML"; 

18059  60 
use "consts.ML"; 
0  61 
use "sign.ML"; 
62 
use "pattern.ML"; 

63 
use "unify.ML"; 

64 
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

65 
use "defs.ML"; 
1528  66 
use "theory.ML"; 
11511  67 
use "proofterm.ML"; 
0  68 
use "thm.ML"; 
22361  69 
use "more_thm.ML"; 
13271  70 
use "fact_index.ML"; 
3986  71 
use "pure_thy.ML"; 
19589  72 
use "display.ML"; 
0  73 
use "drule.ML"; 
22904  74 
use "conv.ML"; 
22233  75 
use "morphism.ML"; 
19898  76 
use "variable.ML"; 
0  77 
use "tctical.ML"; 
1582  78 
use "search.ML"; 
21708  79 
use "tactic.ML"; 
15006
107e4dfd3b96
Merging the metasimplifier with the Proverssimplifier. Next step:
skalberg
parents:
14823
diff
changeset

80 
use "meta_simplifier.ML"; 
19417  81 
use "conjunction.ML"; 
20225  82 
use "assumption.ML"; 
17963  83 
use "goal.ML"; 
0  84 

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

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

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

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

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

90 

22108  91 
(*the main Isar system*) 
6178  92 
cd "Isar"; use "ROOT.ML"; cd ".."; 
20207  93 
use "subgoal.ML"; 
5834  94 

13402  95 
use "Proof/extraction.ML"; 
11511  96 

17467  97 
cd "Tools"; use "ROOT.ML"; cd ".."; 
98 

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

99 
(*configuration for Proof General*) 
21941  100 
cd "ProofGeneral"; use "ROOT.ML"; cd ".."; 
16781  101 

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

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

103 
structure Pure = struct val thy = theory "Pure" end; 
18837  104 

105 
Context.add_setup 

22796  106 
(Sign.del_modesyntax Syntax.default_mode Syntax.appl_syntax #> 
107 
Sign.add_syntax Syntax.applC_syntax); 

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

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

109 
structure CPure = struct val thy = theory "CPure" end; 
15801  110 

17467  111 
(*final ML setup*) 
6178  112 
use "install_pp.ML"; 
6237  113 
val use = ThyInfo.use; 
21858
05f57309170c
avoid conflict with Alice keywords: renamed pack > implode, unpack > explode, any > many, avoided assert;
wenzelm
parents:
21708
diff
changeset

114 
val cd = File.cd o Path.explode; 
7938  115 
ml_prompts "ML> " "ML# "; 
11511  116 

11545  117 
proofs := 0; 