src/Pure/axclass.ML
changeset 28083 103d9282a946
parent 28014 fe36718702aa
child 28110 9d121b171a0a
equal deleted inserted replaced
28082:37350f301128 28083:103d9282a946
     7 *)
     7 *)
     8 
     8 
     9 signature AX_CLASS =
     9 signature AX_CLASS =
    10 sig
    10 sig
    11   val define_class: bstring * class list -> string list ->
    11   val define_class: bstring * class list -> string list ->
    12     ((bstring * attribute list) * term list) list -> theory -> class * theory
    12     ((Name.binding * attribute list) * term list) list -> theory -> class * theory
    13   val add_classrel: thm -> theory -> theory
    13   val add_classrel: thm -> theory -> theory
    14   val add_arity: thm -> theory -> theory
    14   val add_arity: thm -> theory -> theory
    15   val prove_classrel: class * class -> tactic -> theory -> theory
    15   val prove_classrel: class * class -> tactic -> theory -> theory
    16   val prove_arity: string * sort list * sort -> tactic -> theory -> theory
    16   val prove_arity: string * sort list * sort -> tactic -> theory -> theory
    17   val get_info: theory -> class ->
    17   val get_info: theory -> class ->
   480     val ([(_, [intro]), (_, classrel), (_, axioms)], facts_thy) =
   480     val ([(_, [intro]), (_, classrel), (_, axioms)], facts_thy) =
   481       def_thy
   481       def_thy
   482       |> Sign.add_path bconst
   482       |> Sign.add_path bconst
   483       |> Sign.no_base_names
   483       |> Sign.no_base_names
   484       |> PureThy.note_thmss ""
   484       |> PureThy.note_thmss ""
   485         [((introN, []), [([Drule.standard raw_intro], [])]),
   485         [((Name.binding introN, []), [([Drule.standard raw_intro], [])]),
   486          ((superN, []), [(map Drule.standard raw_classrel, [])]),
   486          ((Name.binding superN, []), [(map Drule.standard raw_classrel, [])]),
   487          ((axiomsN, []), [(map (fn th => Drule.standard (class_triv RS th)) raw_axioms, [])])]
   487          ((Name.binding axiomsN, []),
       
   488            [(map (fn th => Drule.standard (class_triv RS th)) raw_axioms, [])])]
   488       ||> Sign.restore_naming def_thy;
   489       ||> Sign.restore_naming def_thy;
   489 
   490 
   490 
   491 
   491     (* result *)
   492     (* result *)
   492 
   493