src/Pure/pure.ML
author wenzelm
Fri, 11 Jan 2002 14:53:05 +0100
changeset 12719 41e0d086f8b6
parent 12350 5fad0e7129c3
child 12723 0451211bf4a0
permissions -rw-r--r--
improved forall_elim_vars_safe (no longer invents new indexes);

(*  Title:      Pure/pure.ML
    ID:         $Id$
    Author:     Markus Wenzel, TU Muenchen

Final setup of the Pure theories.
*)

local
  val common_setup =
    ProofRewriteRules.setup @
    HTML.setup @
    ObjectLogic.setup @
    ProofContext.setup @
    Locale.setup @
    Attrib.setup @
    ContextRules.setup @
    InductAttrib.setup @
    Method.setup @
    Calculation.setup @
    SkipProof.setup @
    AxClass.setup @
    Latex.setup @
    Present.setup @
    Isamode.setup @
    ProofGeneral.setup @
    Codegen.setup @
    Goals.setup;
in
  structure Pure =
  struct
    val thy =
      PureThy.begin_theory Sign.PureN [ProtoPure.thy]
      |> Theory.add_syntax Syntax.pure_appl_syntax
      |> Library.apply common_setup
      |> PureThy.end_theory;
  end;

  structure CPure =
  struct
    val thy =
      PureThy.begin_theory Sign.CPureN [ProtoPure.thy]
      |> Theory.add_syntax Syntax.pure_applC_syntax
      |> Library.apply common_setup
      |> Theory.copy
      |> PureThy.end_theory;
  end;
end;

ThyInfo.register_theory ProtoPure.thy;
ThyInfo.register_theory Pure.thy;
ThyInfo.register_theory CPure.thy;