equal
deleted
inserted
replaced
499 |
499 |
500 |
500 |
501 (*** Set reasoning tools ***) |
501 (*** Set reasoning tools ***) |
502 |
502 |
503 |
503 |
504 val mem_simps = [ Un_iff, Int_iff, Compl_iff, Diff_iff, singleton_iff, |
504 val mem_simps = [insert_iff, empty_iff, Un_iff, Int_iff, Compl_iff, Diff_iff, |
505 mem_Collect_eq]; |
505 mem_Collect_eq]; |
506 |
506 |
507 (*Not for Addsimps -- it can cause goals to blow up!*) |
507 (*Not for Addsimps -- it can cause goals to blow up!*) |
508 goal Set.thy "(a : (if Q then x else y)) = ((Q --> a:x) & (~Q --> a : y))"; |
508 goal Set.thy "(a : (if Q then x else y)) = ((Q --> a:x) & (~Q --> a : y))"; |
509 by (simp_tac (!simpset setloop split_tac [expand_if]) 1); |
509 by (simp_tac (!simpset setloop split_tac [expand_if]) 1); |
510 qed "mem_if"; |
510 qed "mem_if"; |