src/ZF/Tools/induct_tacs.ML
changeset 59763 56d2c357e6b5
parent 59755 f8d164ab0dc1
child 59780 23b67731f4f0
equal deleted inserted replaced
59762:df377a6fdd90 59763:56d2c357e6b5
    99     val (Const(@{const_name mem},_) $ Var(ixn,_) $ _) =
    99     val (Const(@{const_name mem},_) $ Var(ixn,_) $ _) =
   100         (case Thm.prems_of rule of
   100         (case Thm.prems_of rule of
   101              [] => error "induction is not available for this datatype"
   101              [] => error "induction is not available for this datatype"
   102            | major::_ => FOLogic.dest_Trueprop major)
   102            | major::_ => FOLogic.dest_Trueprop major)
   103   in
   103   in
   104     eres_inst_tac ctxt [((ixn, Position.none), var)] rule i
   104     Rule_Insts.eres_inst_tac ctxt [((ixn, Position.none), var)] rule i
   105   end
   105   end
   106   handle Find_tname msg =>
   106   handle Find_tname msg =>
   107             if exh then (*try boolean case analysis instead*)
   107             if exh then (*try boolean case analysis instead*)
   108                 case_tac ctxt var i
   108                 case_tac ctxt var i
   109             else error msg) i state;
   109             else error msg) i state;