src/Pure/ROOT.ML
author haftmann
Fri Nov 10 07:44:47 2006 +0100 (2006-11-10)
changeset 21286 b5e7b80caa6a
parent 20507 bb68343f6f83
child 21396 afd8ba74313c
permissions -rw-r--r--
introduces canonical AList functions for loop_tacs
     1 (*  Title:      Pure/ROOT.ML
     2     ID:         $Id$
     3 
     4 Pure Isabelle.
     5 *)
     6 
     7 val banner = "Pure Isabelle";
     8 val version = "Isabelle repository version";    (*filled in automatically!*)
     9 
    10 (*if true then some tools will OMIT some proofs*)
    11 val quick_and_dirty = ref false;
    12 
    13 print_depth 10;
    14 
    15 (*fake hiding of private structures*)
    16 structure Hidden = struct end;
    17 
    18 (*basic tools*)
    19 use "library.ML";
    20 cd "General"; use "ROOT.ML"; cd "..";
    21 
    22 (*fundamental structures*)
    23 use "name.ML";
    24 use "term.ML";
    25 use "term_subst.ML";
    26 use "General/pretty.ML";
    27 use "sorts.ML";
    28 use "type.ML";
    29 use "context.ML";
    30 use "compress.ML";
    31 
    32 (*inner syntax module*)
    33 cd "Syntax"; use "ROOT.ML"; cd "..";
    34 
    35 (*core of tactical proof system*)
    36 use "envir.ML";
    37 use "logic.ML";
    38 use "type_infer.ML";
    39 use "consts.ML";
    40 use "sign.ML";
    41 use "pattern.ML";
    42 use "unify.ML";
    43 use "net.ML";
    44 use "defs.ML";
    45 use "theory.ML";
    46 use "proofterm.ML";
    47 use "thm.ML";
    48 use "fact_index.ML";
    49 use "pure_thy.ML";
    50 use "display.ML";
    51 use "drule.ML";
    52 use "variable.ML";
    53 use "tctical.ML";
    54 use "search.ML";
    55 use "meta_simplifier.ML";
    56 use "conjunction.ML";
    57 use "assumption.ML";
    58 use "goal.ML";
    59 use "tactic.ML";
    60 
    61 (*proof term operations*)
    62 use "Proof/reconstruct.ML";
    63 use "Proof/proof_syntax.ML";
    64 use "Proof/proof_rewrite_rules.ML";
    65 use "Proof/proofchecker.ML";
    66 
    67 (*theory auto loader database*)
    68 use "Thy/thy_load.ML";
    69 use "Thy/thy_info.ML";
    70 
    71 (*theory syntax*)
    72 use "Isar/outer_lex.ML";
    73 
    74 (*the Isar system*)
    75 cd "Isar"; use "ROOT.ML"; cd "..";
    76 use "subgoal.ML";
    77 
    78 use "Proof/extraction.ML";
    79 
    80 cd "Tools"; use "ROOT.ML"; cd "..";
    81 
    82 (*configuration for Proof General*)
    83 (use |> setmp proofs 1 |> setmp quick_and_dirty true) "proof_general.ML";
    84 
    85 use_thy "Pure";
    86 structure Pure = struct val thy = theory "Pure" end;
    87 
    88 Context.add_setup
    89  (Theory.del_modesyntax Syntax.default_mode Syntax.appl_syntax #>
    90   Theory.add_syntax Syntax.applC_syntax);
    91 use_thy "CPure";
    92 structure CPure = struct val thy = theory "CPure" end;
    93 
    94 (*final ML setup*)
    95 use "install_pp.ML";
    96 val use = ThyInfo.use;
    97 val cd = File.cd o Path.unpack;
    98 ml_prompts "ML> " "ML# ";
    99 
   100 proofs := 0;