src/ZF/pair.ML
changeset 437 435875e4b21d
parent 435 ca5356bd315a
child 533 7357160bc56a
equal deleted inserted replaced
436:0cdc840297bb 437:435875e4b21d
    33   [ (rtac (major RS equalityD1 RS subsetD RS emptyE) 1),
    33   [ (rtac (major RS equalityD1 RS subsetD RS emptyE) 1),
    34     (rtac consI1 1) ]);
    34     (rtac consI1 1) ]);
    35 
    35 
    36 val Pair_neq_fst = prove_goalw ZF.thy [Pair_def] "<a,b>=a ==> P"
    36 val Pair_neq_fst = prove_goalw ZF.thy [Pair_def] "<a,b>=a ==> P"
    37  (fn [major]=>
    37  (fn [major]=>
    38   [ (rtac (consI1 RS mem_anti_sym RS FalseE) 1),
    38   [ (rtac (consI1 RS mem_asym RS FalseE) 1),
    39     (rtac (major RS subst) 1),
    39     (rtac (major RS subst) 1),
    40     (rtac consI1 1) ]);
    40     (rtac consI1 1) ]);
    41 
    41 
    42 val Pair_neq_snd = prove_goalw ZF.thy [Pair_def] "<a,b>=b ==> P"
    42 val Pair_neq_snd = prove_goalw ZF.thy [Pair_def] "<a,b>=b ==> P"
    43  (fn [major]=>
    43  (fn [major]=>
    44   [ (rtac (consI1 RS consI2 RS mem_anti_sym RS FalseE) 1),
    44   [ (rtac (consI1 RS consI2 RS mem_asym RS FalseE) 1),
    45     (rtac (major RS subst) 1),
    45     (rtac (major RS subst) 1),
    46     (rtac (consI1 RS consI2) 1) ]);
    46     (rtac (consI1 RS consI2) 1) ]);
    47 
    47 
    48 
    48 
    49 (*** Sigma: Disjoint union of a family of sets
    49 (*** Sigma: Disjoint union of a family of sets