equal
deleted
inserted
replaced
75 val cvs = cterm_of thy (HOLogic.mk_list T fs); |
75 val cvs = cterm_of thy (HOLogic.mk_list T fs); |
76 val clhs = cterm_of thy (reif_polex T fs lhs); |
76 val clhs = cterm_of thy (reif_polex T fs lhs); |
77 val crhs = cterm_of thy (reif_polex T fs rhs); |
77 val crhs = cterm_of thy (reif_polex T fs rhs); |
78 val ca = ctyp_of thy T; |
78 val ca = ctyp_of thy T; |
79 in (ca, cvs, clhs, crhs) end |
79 in (ca, cvs, clhs, crhs) end |
80 else raise CRing ("reif_eq: not an equation over " ^ Sign.string_of_sort thy cr_sort) |
80 else raise CRing ("reif_eq: not an equation over " ^ Syntax.string_of_sort_global thy cr_sort) |
81 | reif_eq _ _ = raise CRing "reif_eq: not an equation"; |
81 | reif_eq _ _ = raise CRing "reif_eq: not an equation"; |
82 |
82 |
83 (* The cring tactic *) |
83 (* The cring tactic *) |
84 (* Attention: You have to make sure that no t^0 is in the goal!! *) |
84 (* Attention: You have to make sure that no t^0 is in the goal!! *) |
85 (* Use simply rewriting t^0 = 1 *) |
85 (* Use simply rewriting t^0 = 1 *) |