src/Pure/ROOT.ML
author obua
Sun May 29 12:39:12 2005 +0200 (2005-05-29)
changeset 16108 cf468b93a02e
parent 15825 1576f9d3ffae
child 16435 3b17850023f1
permissions -rw-r--r--
Implement cycle-free overloading, so that definitions cannot harm consistency any more (except of course via interaction with axioms).
     1 (*  Title:      Pure/ROOT.ML
     2     ID:         $Id$
     3     Author:     Lawrence C Paulson, Cambridge University Computer Laboratory
     4     Copyright   1993  University of Cambridge
     5 
     6 Root file for Pure Isabelle.
     7 *)
     8 
     9 val banner = "Pure Isabelle";
    10 val version = "Isabelle repository version";    (*filled in automatically!*)
    11 
    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 "term.ML";
    24 use "General/pretty.ML";
    25 use "sorts.ML";
    26 use "type.ML";
    27 
    28 (*inner syntax module*)
    29 cd "Syntax"; use "ROOT.ML"; cd "..";
    30 
    31 (*core of tactical proof system*)
    32 use "type_infer.ML";
    33 use "sign.ML";
    34 use "envir.ML";
    35 use "pattern.ML";
    36 use "unify.ML";
    37 use "net.ML";
    38 use "logic.ML";
    39 use "defs.ML";
    40 use "theory.ML";
    41 use "theory_data.ML";
    42 use "context.ML";
    43 use "proofterm.ML";
    44 use "thm.ML";
    45 use "display.ML";
    46 use "fact_index.ML";
    47 use "pure_thy.ML";
    48 use "drule.ML";
    49 use "tctical.ML";
    50 use "search.ML";
    51 use "meta_simplifier.ML";
    52 use "tactic.ML";
    53 
    54 (*proof term operations*)
    55 use "Proof/reconstruct.ML";
    56 use "Proof/proof_syntax.ML";
    57 use "Proof/proof_rewrite_rules.ML";
    58 use "Proof/proofchecker.ML";
    59 
    60 (*theory auto loader database*)
    61 use "Thy/thy_load.ML";
    62 use "Thy/thy_info.ML";
    63 
    64 (*theory syntax -- old format*)
    65 use "Thy/thy_scan.ML";
    66 use "Thy/thy_parse.ML";
    67 use "Thy/thy_syn.ML";
    68 
    69 (*theory syntax -- new format*)
    70 use "Isar/outer_lex.ML";
    71 
    72 (*theory presentation*)
    73 use "Thy/html.ML";
    74 use "Thy/latex.ML";
    75 use "Thy/present.ML";
    76 use "Thy/thm_deps.ML";
    77 
    78 (*theorem database ML interface*)
    79 use "Thy/thm_database.ML";
    80 
    81 (*the Isar subsystem*)
    82 cd "Isar"; use "ROOT.ML"; cd "..";
    83 
    84 use "axclass.ML";
    85 use "codegen.ML";
    86 use "Proof/extraction.ML";
    87 
    88 (*old goal package -- obsolete*)
    89 use "goals.ML";
    90 
    91 (*the IsaPlanner subsystem*)
    92 cd "IsaPlanner"; use "ROOT.ML"; cd "..";
    93 
    94 (*configuration for Proof General*)
    95 use "proof_general.ML";
    96 
    97 (*the Pure theories*)
    98 use_thy "Pure"; structure Pure = struct val thy = theory "Pure" end;
    99 use_thy "CPure"; structure CPure = struct val thy = theory "CPure" end;
   100 
   101 
   102 (*several object-logics declare theories that hide basis library structures*)
   103 structure BasisLibrary =
   104 struct
   105   structure List = List;
   106   structure Option = Option;
   107   structure Bool = Bool;
   108   structure String = String;
   109   structure Int = Int;
   110   structure Real = Real;
   111 end;
   112 
   113 use "install_pp.ML";
   114 
   115 val use = ThyInfo.use;
   116 val cd = File.cd o Path.unpack;
   117 
   118 ml_prompts "ML> " "ML# ";
   119 
   120 proofs := 0;