equal
deleted
inserted
replaced
183 (if n = 1 then I |
183 (if n = 1 then I |
184 else Drule.rotate_prems (i - 1) #> Drule.conj_uncurry n #> Drule.rotate_prems (1 - i)) |
184 else Drule.rotate_prems (i - 1) #> Drule.conj_uncurry n #> Drule.rotate_prems (1 - i)) |
185 #> Thm.compose_no_flatten false (conclude st', Thm.nprems_of st') i; |
185 #> Thm.compose_no_flatten false (conclude st', Thm.nprems_of st') i; |
186 |
186 |
187 fun SELECT_GOAL tac i st = |
187 fun SELECT_GOAL tac i st = |
188 if Thm.nprems_of st = 1 then tac st |
188 if Thm.nprems_of st = 1 andalso i = 1 then tac st |
189 else Seq.lifts (retrofit i 1) (Seq.maps tac (extract i 1 st)) st; |
189 else Seq.lifts (retrofit i 1) (Seq.maps tac (extract i 1 st)) st; |
190 |
190 |
191 end; |
191 end; |
192 |
192 |
193 structure BasicGoal: BASIC_GOAL = Goal; |
193 structure BasicGoal: BASIC_GOAL = Goal; |