TFL/casesplit.ML
changeset 21858 05f57309170c
parent 21708 45e7491bea47
child 22578 b0eb5652f210
equal deleted inserted replaced
21857:f9d085c2625c 21858:05f57309170c
   266 (* Note: This should not be a separate tactic but integrated into the
   266 (* Note: This should not be a separate tactic but integrated into the
   267 case split done during recdef's case analysis, this would avoid us
   267 case split done during recdef's case analysis, this would avoid us
   268 having to (re)search for variables to split. *)
   268 having to (re)search for variables to split. *)
   269 fun splitto splitths genth =
   269 fun splitto splitths genth =
   270     let
   270     let
   271       val _ = assert (not (null splitths)) "splitto: no given splitths";
   271       val _ = not (null splitths) orelse error "splitto: no given splitths";
   272       val sgn = Thm.sign_of_thm genth;
   272       val sgn = Thm.sign_of_thm genth;
   273 
   273 
   274       (* check if we are a member of splitths - FIXME: quicker and
   274       (* check if we are a member of splitths - FIXME: quicker and
   275       more flexible with discrim net. *)
   275       more flexible with discrim net. *)
   276       fun solve_by_splitth th split =
   276       fun solve_by_splitth th split =