src/Pure/goal.ML
changeset 19191 56cda3ec2ef8
parent 19184 3e30297e1300
child 19221 aab0c0399e91
equal deleted inserted replaced
19190:7c311c513bae 19191:56cda3ec2ef8
   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;