author | wenzelm |
Wed, 04 Apr 2007 00:13:13 +0200 | |
changeset 22592 | 97b5290a8c34 |
parent 22361 | d8d96d0122a7 |
child 22679 | 68cd69a388e2 |
permissions | -rw-r--r-- |
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; |