FSet.thy
changeset 387 f78aa16daae5
parent 386 4fcbbb5b3b58
child 389 d67240113f68
child 390 1dd6a21cdd1c
equal deleted inserted replaced
386:4fcbbb5b3b58 387:f78aa16daae5
   332   (if rsp_fold f then if IN a x then FOLD f g z x else f (g a) (FOLD f g z x) else z)"
   332   (if rsp_fold f then if IN a x then FOLD f g z x else f (g a) (FOLD f g z x) else z)"
   333 apply (tactic {* lift_tac_fset @{context} @{thm fold1.simps(2)} 1 *})
   333 apply (tactic {* lift_tac_fset @{context} @{thm fold1.simps(2)} 1 *})
   334 done
   334 done
   335 
   335 
   336 lemma "fmap f (FUNION (x::'b fset) (xa::'b fset)) = FUNION (fmap f x) (fmap f xa)"
   336 lemma "fmap f (FUNION (x::'b fset) (xa::'b fset)) = FUNION (fmap f x) (fmap f xa)"
       
   337 apply(tactic {* Induct.fix_tac @{context} 0 [("x", @{typ "'b fset"}), ("xa", @{typ "'b fset"})] 1 *})
       
   338 apply(tactic {* ObjectLogic.full_atomize_tac 1 *})
   337 apply (tactic {* lift_tac_fset @{context} @{thm map_append} 1 *})
   339 apply (tactic {* lift_tac_fset @{context} @{thm map_append} 1 *})
   338 done
   340 done
   339 
   341 
   340 lemma "FUNION (FUNION x xa) xb = FUNION x (FUNION xa xb)"
   342 lemma "FUNION (FUNION x xa) xb = FUNION x (FUNION xa xb)"
   341 apply (tactic {* lift_tac_fset @{context} @{thm append_assoc} 1 *})
   343 apply (tactic {* lift_tac_fset @{context} @{thm append_assoc} 1 *})