src/Pure/drule.ML
changeset 400 3c2c40c87112
parent 385 921f87897a76
child 561 95225e63ef02
equal deleted inserted replaced
399:86cc2b98f9e0 400:3c2c40c87112
    83 struct
    83 struct
    84 structure Thm = Thm;
    84 structure Thm = Thm;
    85 structure Sign = Thm.Sign;
    85 structure Sign = Thm.Sign;
    86 structure Type = Sign.Type;
    86 structure Type = Sign.Type;
    87 structure Pretty = Sign.Syntax.Pretty
    87 structure Pretty = Sign.Syntax.Pretty
       
    88 structure Symtab = Sign.Symtab;
       
    89 
    88 local open Thm
    90 local open Thm
    89 in
    91 in
    90 
    92 
    91 (**** More derived rules and operations on theorems ****)
    93 (**** More derived rules and operations on theorems ****)
    92 
    94 
   186 
   188 
   187 val print_sign = Sign.print_sg o sign_of;
   189 val print_sign = Sign.print_sg o sign_of;
   188 
   190 
   189 fun print_axioms thy =
   191 fun print_axioms thy =
   190   let
   192   let
   191     val {sign, ext_axtab, ...} = rep_theory thy;
   193     val {sign, new_axioms, ...} = rep_theory thy;
   192     val axioms = Symtab.dest ext_axtab;
   194     val axioms = Symtab.dest new_axioms;
   193 
   195 
   194     fun prt_axm (a, t) = Pretty.block [Pretty.str (a ^ ":"), Pretty.brk 1,
   196     fun prt_axm (a, t) = Pretty.block [Pretty.str (a ^ ":"), Pretty.brk 1,
   195       Pretty.quote (Sign.pretty_term sign t)];
   197       Pretty.quote (Sign.pretty_term sign t)];
   196   in
   198   in
   197     Pretty.writeln (Pretty.big_list "additional axioms:" (map prt_axm axioms))
   199     Pretty.writeln (Pretty.big_list "additional axioms:" (map prt_axm axioms))