equal
deleted
inserted
replaced
116 |
116 |
117 val refl_tac = resolve_tac refl_thms; |
117 val refl_tac = resolve_tac refl_thms; |
118 |
118 |
119 fun find_res thms thm = |
119 fun find_res thms thm = |
120 let fun find [] = (prths thms; error"Check Simp_Data") |
120 let fun find [] = (prths thms; error"Check Simp_Data") |
121 | find(th::thms) = thm RS th handle _ => find thms |
121 | find(th::thms) = thm RS th handle THM _ => find thms |
122 in find thms end; |
122 in find thms end; |
123 |
123 |
124 val mk_trans = find_res trans_thms; |
124 val mk_trans = find_res trans_thms; |
125 |
125 |
126 fun mk_trans2 thm = |
126 fun mk_trans2 thm = |
127 let fun mk[] = error"Check transitivity" |
127 let fun mk[] = error"Check transitivity" |
128 | mk(t::ts) = (thm RSN (2,t)) handle _ => mk ts |
128 | mk(t::ts) = (thm RSN (2,t)) handle THM _ => mk ts |
129 in mk trans_thms end; |
129 in mk trans_thms end; |
130 |
130 |
131 (*Applies tactic and returns the first resulting state, FAILS if none!*) |
131 (*Applies tactic and returns the first resulting state, FAILS if none!*) |
132 fun one_result(tac,thm) = case Seq.pull(tac thm) of |
132 fun one_result(tac,thm) = case Seq.pull(tac thm) of |
133 Some(thm',_) => thm' |
133 Some(thm',_) => thm' |