src/Pure/ROOT.ML
author wenzelm
Mon Feb 06 20:59:01 2006 +0100 (2006-02-06)
changeset 18934 0342b7c21388
parent 18870 020e242c02a0
child 18991 0ded3b842878
permissions -rw-r--r--
load envir.ML and logic.ML early;
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@17474
    10
(*if true then some tools will OMIT some proofs*)
wenzelm@17474
    11
val quick_and_dirty = ref false;
clasohm@0
    12
wenzelm@12248
    13
print_depth 10;
clasohm@0
    14
wenzelm@5684
    15
(*fake hiding of private structures*)
wenzelm@5684
    16
structure Hidden = struct end;
wenzelm@4949
    17
wenzelm@5017
    18
(*basic tools*)
clasohm@0
    19
use "library.ML";
wenzelm@5017
    20
cd "General"; use "ROOT.ML"; cd "..";
wenzelm@14781
    21
wenzelm@14781
    22
(*fundamental structures*)
clasohm@0
    23
use "term.ML";
wenzelm@14823
    24
use "General/pretty.ML";
wenzelm@14781
    25
use "sorts.ML";
wenzelm@14781
    26
use "type.ML";
wenzelm@16435
    27
use "context.ML";
wenzelm@16980
    28
use "compress.ML";
wenzelm@19
    29
wenzelm@4949
    30
(*inner syntax module*)
wenzelm@6178
    31
cd "Syntax"; use "ROOT.ML"; cd "..";
clasohm@0
    32
wenzelm@15825
    33
(*core of tactical proof system*)
wenzelm@18934
    34
use "envir.ML";
wenzelm@18934
    35
use "logic.ML";
wenzelm@2960
    36
use "type_infer.ML";
wenzelm@18059
    37
use "consts.ML";
clasohm@0
    38
use "sign.ML";
clasohm@0
    39
use "pattern.ML";
clasohm@0
    40
use "unify.ML";
clasohm@0
    41
use "net.ML";
obua@16108
    42
use "defs.ML";
paulson@1528
    43
use "theory.ML";
berghofe@11511
    44
use "proofterm.ML";
clasohm@0
    45
use "thm.ML";
wenzelm@3986
    46
use "display.ML";
wenzelm@13271
    47
use "fact_index.ML";
wenzelm@3986
    48
use "pure_thy.ML";
clasohm@0
    49
use "drule.ML";
clasohm@0
    50
use "tctical.ML";
paulson@1582
    51
use "search.ML";
skalberg@15006
    52
use "meta_simplifier.ML";
wenzelm@17963
    53
use "goal.ML";
clasohm@0
    54
use "tactic.ML";
clasohm@0
    55
berghofe@11511
    56
(*proof term operations*)
wenzelm@15825
    57
use "Proof/reconstruct.ML";
wenzelm@15825
    58
use "Proof/proof_syntax.ML";
wenzelm@15825
    59
use "Proof/proof_rewrite_rules.ML";
wenzelm@15825
    60
use "Proof/proofchecker.ML";
wenzelm@15825
    61
wenzelm@15825
    62
(*theory auto loader database*)
wenzelm@15825
    63
use "Thy/thy_load.ML";
wenzelm@15825
    64
use "Thy/thy_info.ML";
berghofe@11511
    65
wenzelm@18870
    66
(*theory syntax*)
wenzelm@15825
    67
use "Isar/outer_lex.ML";
wenzelm@15825
    68
wenzelm@15825
    69
(*theory presentation*)
wenzelm@15825
    70
use "Thy/html.ML";
wenzelm@15825
    71
use "Thy/latex.ML";
wenzelm@15825
    72
use "Thy/present.ML";
wenzelm@15825
    73
use "Thy/thm_deps.ML";
wenzelm@15825
    74
wenzelm@15825
    75
(*theorem database ML interface*)
wenzelm@15825
    76
use "Thy/thm_database.ML";
clasohm@73
    77
wenzelm@16435
    78
(*the Isar system*)
wenzelm@6178
    79
cd "Isar"; use "ROOT.ML"; cd "..";
wenzelm@5834
    80
wenzelm@6693
    81
use "axclass.ML";
berghofe@13402
    82
use "Proof/extraction.ML";
berghofe@11511
    83
paulson@15481
    84
(*the IsaPlanner subsystem*)
paulson@15481
    85
cd "IsaPlanner"; use "ROOT.ML"; cd "..";
paulson@15481
    86
wenzelm@17467
    87
cd "Tools"; use "ROOT.ML"; cd "..";
wenzelm@17467
    88
wenzelm@12778
    89
(*configuration for Proof General*)
wenzelm@17467
    90
setmp proofs 1 use "proof_general.ML";
obua@16781
    91
wenzelm@15801
    92
use_thy "Pure"; structure Pure = struct val thy = theory "Pure" end;
wenzelm@18837
    93
wenzelm@18837
    94
Context.add_setup
wenzelm@18837
    95
 (Theory.del_modesyntax Syntax.default_mode Syntax.appl_syntax #>
wenzelm@18837
    96
  Theory.add_syntax Syntax.applC_syntax);
wenzelm@15801
    97
use_thy "CPure"; structure CPure = struct val thy = theory "CPure" end;
wenzelm@15801
    98
wenzelm@17467
    99
(*final ML setup*)
wenzelm@6178
   100
use "install_pp.ML";
wenzelm@6237
   101
val use = ThyInfo.use;
wenzelm@6226
   102
val cd = File.cd o Path.unpack;
wenzelm@7938
   103
ml_prompts "ML> " "ML# ";
berghofe@11511
   104
wenzelm@11545
   105
proofs := 0;