src/HOL/HOLCF/Tools/Domain/domain_axioms.ML
changeset 74305 28a582aa25dd
parent 69597 ff784d5a5bfb
equal deleted inserted replaced
74304:1466f8a2f6dd 74305:28a582aa25dd
    73 fun axiomatize_lub_take
    73 fun axiomatize_lub_take
    74     (dbind : binding, take_const : term)
    74     (dbind : binding, take_const : term)
    75     (thy : theory)
    75     (thy : theory)
    76     : thm * theory =
    76     : thm * theory =
    77   let
    77   let
    78     val i = Free ("i", natT)
    78     val i = Free ("i", \<^Type>\<open>nat\<close>)
    79     val T = (fst o dest_cfunT o range_type o fastype_of) take_const
    79     val T = (fst o dest_cfunT o range_type o fastype_of) take_const
    80 
    80 
    81     val lub_take_eqn =
    81     val lub_take_eqn =
    82         mk_trp (mk_eq (mk_lub (lambda i (take_const $ i)), mk_ID T))
    82         mk_trp (mk_eq (mk_lub (lambda i (take_const $ i)), mk_ID T))
    83 
    83