src/HOL/equalities.ML
changeset 8333 226d12ac76e2
parent 8313 c7a87e79e9b1
child 8993 cbfebff56cc0
equal deleted inserted replaced
8332:88fe0f1a480f 8333:226d12ac76e2
   372 qed "Un_Diff_Int";
   372 qed "Un_Diff_Int";
   373 
   373 
   374 
   374 
   375 section "Set complement";
   375 section "Set complement";
   376 
   376 
   377 Goal "A Int (-A) = {}";
   377 Goal "A Int -A = {}";
   378 by (Blast_tac 1);
   378 by (Blast_tac 1);
   379 qed "Compl_disjoint";
   379 qed "Compl_disjoint";
   380 Addsimps[Compl_disjoint];
   380 
       
   381 Goal "-A Int A = {}";
       
   382 by (Blast_tac 1);
       
   383 qed "Compl_disjoint2";
       
   384 Addsimps[Compl_disjoint, Compl_disjoint2];
   381 
   385 
   382 Goal "A Un (-A) = UNIV";
   386 Goal "A Un (-A) = UNIV";
   383 by (Blast_tac 1);
   387 by (Blast_tac 1);
   384 qed "Compl_partition";
   388 qed "Compl_partition";
   385 
   389 
   412 
   416 
   413 (*Halmos, Naive Set Theory, page 16.*)
   417 (*Halmos, Naive Set Theory, page 16.*)
   414 Goal "((A Int B) Un C = A Int (B Un C)) = (C<=A)";
   418 Goal "((A Int B) Un C = A Int (B Un C)) = (C<=A)";
   415 by (blast_tac (claset() addSEs [equalityCE]) 1);
   419 by (blast_tac (claset() addSEs [equalityCE]) 1);
   416 qed "Un_Int_assoc_eq";
   420 qed "Un_Int_assoc_eq";
       
   421 
       
   422 Goal "-UNIV = {}";
       
   423 by (Blast_tac 1);
       
   424 qed "Compl_UNIV_eq";
       
   425 
       
   426 Goal "-{} = UNIV";
       
   427 by (Blast_tac 1);
       
   428 qed "Compl_empty_eq";
       
   429 
       
   430 Addsimps [Compl_UNIV_eq, Compl_empty_eq];
   417 
   431 
   418 
   432 
   419 section "Union";
   433 section "Union";
   420 
   434 
   421 Goal "Union({}) = {}";
   435 Goal "Union({}) = {}";