src/Pure/ROOT.ML
author wenzelm
Wed, 04 Apr 2007 00:13:13 +0200
changeset 22592 97b5290a8c34
parent 22361 d8d96d0122a7
child 22679 68cd69a388e2
permissions -rw-r--r--
added print_mode (generic non-sense);
wenzelm@19
     1
(*  Title:      Pure/ROOT.ML
clasohm@0
     2
    ID:         $Id$
clasohm@0
     3
wenzelm@16842
     4
Pure Isabelle.
clasohm@0
     5
*)
clasohm@0
     6
clasohm@0
     7
val banner = "Pure Isabelle";
wenzelm@11835
     8
val version = "Isabelle repository version";    (*filled in automatically!*)
wenzelm@11835
     9
wenzelm@12248
    10
print_depth 10;
clasohm@0
    11
wenzelm@5684
    12
(*fake hiding of private structures*)
wenzelm@5684
    13
structure Hidden = struct end;
wenzelm@4949
    14
wenzelm@5017
    15
(*basic tools*)
wenzelm@21396
    16
use "General/basics.ML";
clasohm@0
    17
use "library.ML";
wenzelm@22592
    18
wenzelm@22592
    19
(*generic non-sense*)
wenzelm@22592
    20
val quick_and_dirty = ref false;
wenzelm@22592
    21
val print_mode = ref ([]: string list);
wenzelm@22592
    22
fun print_mode_active s = member (op =) (! print_mode) s;
wenzelm@22592
    23
wenzelm@5017
    24
cd "General"; use "ROOT.ML"; cd "..";
wenzelm@14781
    25
wenzelm@14781
    26
(*fundamental structures*)
wenzelm@20075
    27
use "name.ML";
clasohm@0
    28
use "term.ML";
wenzelm@20507
    29
use "term_subst.ML";
wenzelm@14823
    30
use "General/pretty.ML";
wenzelm@14781
    31
use "sorts.ML";
wenzelm@14781
    32
use "type.ML";
wenzelm@16435
    33
use "context.ML";
wenzelm@16980
    34
use "compress.ML";
wenzelm@19
    35
wenzelm@4949
    36
(*inner syntax module*)
wenzelm@6178
    37
cd "Syntax"; use "ROOT.ML"; cd "..";
wenzelm@21475
    38
use "General/ml_syntax.ML";
clasohm@0
    39
wenzelm@15825
    40
(*core of tactical proof system*)
wenzelm@18934
    41
use "envir.ML";
wenzelm@18934
    42
use "logic.ML";
wenzelm@2960
    43
use "type_infer.ML";
wenzelm@18059
    44
use "consts.ML";
clasohm@0
    45
use "sign.ML";
clasohm@0
    46
use "pattern.ML";
clasohm@0
    47
use "unify.ML";
clasohm@0
    48
use "net.ML";
obua@16108
    49
use "defs.ML";
paulson@1528
    50
use "theory.ML";
berghofe@11511
    51
use "proofterm.ML";
clasohm@0
    52
use "thm.ML";
wenzelm@22361
    53
use "more_thm.ML";
wenzelm@13271
    54
use "fact_index.ML";
wenzelm@3986
    55
use "pure_thy.ML";
wenzelm@19589
    56
use "display.ML";
clasohm@0
    57
use "drule.ML";
wenzelm@22233
    58
use "morphism.ML";
wenzelm@19898
    59
use "variable.ML";
clasohm@0
    60
use "tctical.ML";
paulson@1582
    61
use "search.ML";
wenzelm@21708
    62
use "tactic.ML";
skalberg@15006
    63
use "meta_simplifier.ML";
wenzelm@19417
    64
use "conjunction.ML";
wenzelm@20225
    65
use "assumption.ML";
wenzelm@17963
    66
use "goal.ML";
clasohm@0
    67
berghofe@11511
    68
(*proof term operations*)
wenzelm@15825
    69
use "Proof/reconstruct.ML";
wenzelm@15825
    70
use "Proof/proof_syntax.ML";
wenzelm@15825
    71
use "Proof/proof_rewrite_rules.ML";
wenzelm@15825
    72
use "Proof/proofchecker.ML";
berghofe@11511
    73
wenzelm@22108
    74
(*the main Isar system*)
wenzelm@6178
    75
cd "Isar"; use "ROOT.ML"; cd "..";
wenzelm@20207
    76
use "subgoal.ML";
wenzelm@5834
    77
berghofe@13402
    78
use "Proof/extraction.ML";
berghofe@11511
    79
wenzelm@17467
    80
cd "Tools"; use "ROOT.ML"; cd "..";
wenzelm@17467
    81
wenzelm@12778
    82
(*configuration for Proof General*)
wenzelm@21941
    83
cd "ProofGeneral"; use "ROOT.ML"; cd "..";
obua@16781
    84
wenzelm@18991
    85
use_thy "Pure";
wenzelm@18991
    86
structure Pure = struct val thy = theory "Pure" end;
wenzelm@18837
    87
wenzelm@18837
    88
Context.add_setup
wenzelm@18837
    89
 (Theory.del_modesyntax Syntax.default_mode Syntax.appl_syntax #>
wenzelm@18837
    90
  Theory.add_syntax Syntax.applC_syntax);
wenzelm@18991
    91
use_thy "CPure";
wenzelm@18991
    92
structure CPure = struct val thy = theory "CPure" end;
wenzelm@15801
    93
wenzelm@17467
    94
(*final ML setup*)
wenzelm@6178
    95
use "install_pp.ML";
wenzelm@6237
    96
val use = ThyInfo.use;
wenzelm@21858
    97
val cd = File.cd o Path.explode;
wenzelm@7938
    98
ml_prompts "ML> " "ML# ";
berghofe@11511
    99
wenzelm@11545
   100
proofs := 0;