let G1, G2 be RelStr ; :: thesis: ( the carrier of G1 misses the carrier of G2 implies ComplRelStr (sum_of (G1,G2)) = union_of ((),()) )
assume A1: the carrier of G1 misses the carrier of G2 ; :: thesis: ComplRelStr (sum_of (G1,G2)) = union_of ((),())
set P = the InternalRel of (ComplRelStr (sum_of (G1,G2)));
set R = the InternalRel of (union_of ((),()));
set X1 = the InternalRel of ();
set X2 = the InternalRel of ();
set X5 = [: the carrier of G1, the carrier of G1:];
set X6 = [: the carrier of G2, the carrier of G2:];
set X7 = [: the carrier of G1, the carrier of G2:];
set X8 = [: the carrier of G2, the carrier of G1:];
A2: [: the carrier of (sum_of (G1,G2)), the carrier of (sum_of (G1,G2)):] = [:( the carrier of G1 \/ the carrier of G2), the carrier of (sum_of (G1,G2)):] by NECKLA_2:def 3
.= [:( the carrier of G1 \/ the carrier of G2),( the carrier of G1 \/ the carrier of G2):] by NECKLA_2:def 3
.= (([: the carrier of G1, the carrier of G1:] \/ [: the carrier of G1, the carrier of G2:]) \/ [: the carrier of G2, the carrier of G1:]) \/ [: the carrier of G2, the carrier of G2:] by ZFMISC_1:98 ;
A3: for a, b being object holds
( [a,b] in the InternalRel of (ComplRelStr (sum_of (G1,G2))) iff [a,b] in the InternalRel of (union_of ((),())) )
proof
let a, b be object ; :: thesis: ( [a,b] in the InternalRel of (ComplRelStr (sum_of (G1,G2))) iff [a,b] in the InternalRel of (union_of ((),())) )
set x = [a,b];
thus ( [a,b] in the InternalRel of (ComplRelStr (sum_of (G1,G2))) implies [a,b] in the InternalRel of (union_of ((),())) ) :: thesis: ( [a,b] in the InternalRel of (union_of ((),())) implies [a,b] in the InternalRel of (ComplRelStr (sum_of (G1,G2))) )
proof
assume [a,b] in the InternalRel of (ComplRelStr (sum_of (G1,G2))) ; :: thesis: [a,b] in the InternalRel of (union_of ((),()))
then A4: [a,b] in ( the InternalRel of (sum_of (G1,G2)) `) \ (id the carrier of (sum_of (G1,G2))) by NECKLACE:def 8;
then ( [a,b] in ([: the carrier of G1, the carrier of G1:] \/ [: the carrier of G1, the carrier of G2:]) \/ [: the carrier of G2, the carrier of G1:] or [a,b] in [: the carrier of G2, the carrier of G2:] ) by ;
then A5: ( [a,b] in [: the carrier of G1, the carrier of G1:] \/ [: the carrier of G1, the carrier of G2:] or [a,b] in [: the carrier of G2, the carrier of G1:] or [a,b] in [: the carrier of G2, the carrier of G2:] ) by XBOOLE_0:def 3;
[a,b] in the InternalRel of (sum_of (G1,G2)) ` by ;
then [a,b] in [: the carrier of (sum_of (G1,G2)), the carrier of (sum_of (G1,G2)):] \ the InternalRel of (sum_of (G1,G2)) by SUBSET_1:def 4;
then not [a,b] in the InternalRel of (sum_of (G1,G2)) by XBOOLE_0:def 5;
then A6: not [a,b] in (( the InternalRel of G1 \/ the InternalRel of G2) \/ [: the carrier of G1, the carrier of G2:]) \/ [: the carrier of G2, the carrier of G1:] by NECKLA_2:def 3;
A7: ( not [a,b] in the InternalRel of G1 & not [a,b] in the InternalRel of G2 & not [a,b] in [: the carrier of G1, the carrier of G2:] & not [a,b] in [: the carrier of G2, the carrier of G1:] )
proof
assume ( [a,b] in the InternalRel of G1 or [a,b] in the InternalRel of G2 or [a,b] in [: the carrier of G1, the carrier of G2:] or [a,b] in [: the carrier of G2, the carrier of G1:] ) ; :: thesis: contradiction
then ( [a,b] in the InternalRel of G1 \/ the InternalRel of G2 or [a,b] in [: the carrier of G1, the carrier of G2:] or [a,b] in [: the carrier of G2, the carrier of G1:] ) by XBOOLE_0:def 3;
then ( [a,b] in ( the InternalRel of G1 \/ the InternalRel of G2) \/ [: the carrier of G1, the carrier of G2:] or [a,b] in [: the carrier of G2, the carrier of G1:] ) by XBOOLE_0:def 3;
hence contradiction by A6, XBOOLE_0:def 3; :: thesis: verum
end;
not [a,b] in id the carrier of (sum_of (G1,G2)) by ;
then not [a,b] in id ( the carrier of G1 \/ the carrier of G2) by NECKLA_2:def 3;
then A8: not [a,b] in (id the carrier of G1) \/ (id the carrier of G2) by SYSREL:14;
then A9: not [a,b] in id the carrier of G1 by XBOOLE_0:def 3;
A10: not [a,b] in id the carrier of G2 by ;
per cases ( [a,b] in [: the carrier of G1, the carrier of G1:] or [a,b] in [: the carrier of G1, the carrier of G2:] or [a,b] in [: the carrier of G2, the carrier of G1:] or [a,b] in [: the carrier of G2, the carrier of G2:] ) by ;
suppose [a,b] in [: the carrier of G1, the carrier of G1:] ; :: thesis: [a,b] in the InternalRel of (union_of ((),()))
then [a,b] in [: the carrier of G1, the carrier of G1:] \ the InternalRel of G1 by ;
then [a,b] in the InternalRel of G1 ` by SUBSET_1:def 4;
then [a,b] in ( the InternalRel of G1 `) \ (id the carrier of G1) by ;
then [a,b] in the InternalRel of () by NECKLACE:def 8;
then [a,b] in the InternalRel of () \/ the InternalRel of () by XBOOLE_0:def 3;
hence [a,b] in the InternalRel of (union_of ((),())) by NECKLA_2:def 2; :: thesis: verum
end;
suppose [a,b] in [: the carrier of G1, the carrier of G2:] ; :: thesis: [a,b] in the InternalRel of (union_of ((),()))
hence [a,b] in the InternalRel of (union_of ((),())) by A7; :: thesis: verum
end;
suppose [a,b] in [: the carrier of G2, the carrier of G1:] ; :: thesis: [a,b] in the InternalRel of (union_of ((),()))
hence [a,b] in the InternalRel of (union_of ((),())) by A7; :: thesis: verum
end;
suppose [a,b] in [: the carrier of G2, the carrier of G2:] ; :: thesis: [a,b] in the InternalRel of (union_of ((),()))
then [a,b] in [: the carrier of G2, the carrier of G2:] \ the InternalRel of G2 by ;
then [a,b] in the InternalRel of G2 ` by SUBSET_1:def 4;
then [a,b] in ( the InternalRel of G2 `) \ (id the carrier of G2) by ;
then [a,b] in the InternalRel of () by NECKLACE:def 8;
then [a,b] in the InternalRel of () \/ the InternalRel of () by XBOOLE_0:def 3;
hence [a,b] in the InternalRel of (union_of ((),())) by NECKLA_2:def 2; :: thesis: verum
end;
end;
end;
assume [a,b] in the InternalRel of (union_of ((),())) ; :: thesis: [a,b] in the InternalRel of (ComplRelStr (sum_of (G1,G2)))
then A11: [a,b] in the InternalRel of () \/ the InternalRel of () by NECKLA_2:def 2;
per cases ( [a,b] in the InternalRel of () or [a,b] in the InternalRel of () ) by ;
suppose [a,b] in the InternalRel of () ; :: thesis: [a,b] in the InternalRel of (ComplRelStr (sum_of (G1,G2)))
then A12: [a,b] in ( the InternalRel of G1 `) \ (id the carrier of G1) by NECKLACE:def 8;
then A13: not [a,b] in id the carrier of G1 by XBOOLE_0:def 5;
A14: not [a,b] in id the carrier of (sum_of (G1,G2))
proof
assume [a,b] in id the carrier of (sum_of (G1,G2)) ; :: thesis: contradiction
then [a,b] in id ( the carrier of G1 \/ the carrier of G2) by NECKLA_2:def 3;
then [a,b] in (id the carrier of G1) \/ (id the carrier of G2) by SYSREL:14;
then [a,b] in id the carrier of G2 by ;
then A15: a in the carrier of G2 by ZFMISC_1:87;
a in the carrier of G1 by ;
then not the carrier of G1 /\ the carrier of G2 is empty by ;
hence contradiction by A1; :: thesis: verum
end;
[a,b] in the InternalRel of G1 ` by ;
then [a,b] in [: the carrier of G1, the carrier of G1:] \ the InternalRel of G1 by SUBSET_1:def 4;
then A16: not [a,b] in the InternalRel of G1 by XBOOLE_0:def 5;
A17: not [a,b] in the InternalRel of (sum_of (G1,G2))
proof
assume [a,b] in the InternalRel of (sum_of (G1,G2)) ; :: thesis: contradiction
then [a,b] in (( the InternalRel of G1 \/ the InternalRel of G2) \/ [: the carrier of G1, the carrier of G2:]) \/ [: the carrier of G2, the carrier of G1:] by NECKLA_2:def 3;
then ( [a,b] in ( the InternalRel of G1 \/ the InternalRel of G2) \/ [: the carrier of G1, the carrier of G2:] or [a,b] in [: the carrier of G2, the carrier of G1:] ) by XBOOLE_0:def 3;
then A18: ( [a,b] in the InternalRel of G1 \/ the InternalRel of G2 or [a,b] in [: the carrier of G1, the carrier of G2:] or [a,b] in [: the carrier of G2, the carrier of G1:] ) by XBOOLE_0:def 3;
per cases ( [a,b] in the InternalRel of G2 or [a,b] in [: the carrier of G1, the carrier of G2:] or [a,b] in [: the carrier of G2, the carrier of G1:] ) by ;
suppose A19: [a,b] in the InternalRel of G2 ; :: thesis: contradiction
A20: a in the carrier of G1 by ;
a in the carrier of G2 by ;
then not the carrier of G1 /\ the carrier of G2 is empty by ;
hence contradiction by A1; :: thesis: verum
end;
suppose A21: [a,b] in [: the carrier of G1, the carrier of G2:] ; :: thesis: contradiction
A22: b in the carrier of G1 by ;
b in the carrier of G2 by ;
then not the carrier of G1 /\ the carrier of G2 is empty by ;
hence contradiction by A1; :: thesis: verum
end;
suppose A23: [a,b] in [: the carrier of G2, the carrier of G1:] ; :: thesis: contradiction
A24: a in the carrier of G1 by ;
a in the carrier of G2 by ;
then not the carrier of G1 /\ the carrier of G2 is empty by ;
hence contradiction by A1; :: thesis: verum
end;
end;
end;
[a,b] in [: the carrier of G1, the carrier of G1:] \/ (([: the carrier of G1, the carrier of G2:] \/ [: the carrier of G2, the carrier of G1:]) \/ [: the carrier of G2, the carrier of G2:]) by ;
then [a,b] in [: the carrier of (sum_of (G1,G2)), the carrier of (sum_of (G1,G2)):] by ;
then [a,b] in [: the carrier of (sum_of (G1,G2)), the carrier of (sum_of (G1,G2)):] \ the InternalRel of (sum_of (G1,G2)) by ;
then [a,b] in the InternalRel of (sum_of (G1,G2)) ` by SUBSET_1:def 4;
then [a,b] in ( the InternalRel of (sum_of (G1,G2)) `) \ (id the carrier of (sum_of (G1,G2))) by ;
hence [a,b] in the InternalRel of (ComplRelStr (sum_of (G1,G2))) by NECKLACE:def 8; :: thesis: verum
end;
suppose [a,b] in the InternalRel of () ; :: thesis: [a,b] in the InternalRel of (ComplRelStr (sum_of (G1,G2)))
then A25: [a,b] in ( the InternalRel of G2 `) \ (id the carrier of G2) by NECKLACE:def 8;
then A26: not [a,b] in id the carrier of G2 by XBOOLE_0:def 5;
A27: not [a,b] in id the carrier of (sum_of (G1,G2))
proof
assume [a,b] in id the carrier of (sum_of (G1,G2)) ; :: thesis: contradiction
then [a,b] in id ( the carrier of G1 \/ the carrier of G2) by NECKLA_2:def 3;
then [a,b] in (id the carrier of G1) \/ (id the carrier of G2) by SYSREL:14;
then [a,b] in id the carrier of G1 by ;
then A28: b in the carrier of G1 by ZFMISC_1:87;
b in the carrier of G2 by ;
then not the carrier of G1 /\ the carrier of G2 is empty by ;
hence contradiction by A1; :: thesis: verum
end;
[a,b] in the InternalRel of G2 ` by ;
then [a,b] in [: the carrier of G2, the carrier of G2:] \ the InternalRel of G2 by SUBSET_1:def 4;
then A29: not [a,b] in the InternalRel of G2 by XBOOLE_0:def 5;
A30: not [a,b] in the InternalRel of (sum_of (G1,G2))
proof
assume [a,b] in the InternalRel of (sum_of (G1,G2)) ; :: thesis: contradiction
then [a,b] in (( the InternalRel of G1 \/ the InternalRel of G2) \/ [: the carrier of G1, the carrier of G2:]) \/ [: the carrier of G2, the carrier of G1:] by NECKLA_2:def 3;
then ( [a,b] in ( the InternalRel of G1 \/ the InternalRel of G2) \/ [: the carrier of G1, the carrier of G2:] or [a,b] in [: the carrier of G2, the carrier of G1:] ) by XBOOLE_0:def 3;
then A31: ( [a,b] in the InternalRel of G1 \/ the InternalRel of G2 or [a,b] in [: the carrier of G1, the carrier of G2:] or [a,b] in [: the carrier of G2, the carrier of G1:] ) by XBOOLE_0:def 3;
per cases ( [a,b] in the InternalRel of G1 or [a,b] in [: the carrier of G1, the carrier of G2:] or [a,b] in [: the carrier of G2, the carrier of G1:] ) by ;
suppose A32: [a,b] in the InternalRel of G1 ; :: thesis: contradiction
A33: a in the carrier of G2 by ;
a in the carrier of G1 by ;
then not the carrier of G1 /\ the carrier of G2 is empty by ;
hence contradiction by A1; :: thesis: verum
end;
suppose A34: [a,b] in [: the carrier of G1, the carrier of G2:] ; :: thesis: contradiction
A35: a in the carrier of G2 by ;
a in the carrier of G1 by ;
then not the carrier of G1 /\ the carrier of G2 is empty by ;
hence contradiction by A1; :: thesis: verum
end;
suppose A36: [a,b] in [: the carrier of G2, the carrier of G1:] ; :: thesis: contradiction
A37: b in the carrier of G2 by ;
b in the carrier of G1 by ;
then not the carrier of G1 /\ the carrier of G2 is empty by ;
hence contradiction by A1; :: thesis: verum
end;
end;
end;
[a,b] in [: the carrier of (sum_of (G1,G2)), the carrier of (sum_of (G1,G2)):] by ;
then [a,b] in [: the carrier of (sum_of (G1,G2)), the carrier of (sum_of (G1,G2)):] \ the InternalRel of (sum_of (G1,G2)) by ;
then [a,b] in the InternalRel of (sum_of (G1,G2)) ` by SUBSET_1:def 4;
then [a,b] in ( the InternalRel of (sum_of (G1,G2)) `) \ (id the carrier of (sum_of (G1,G2))) by ;
hence [a,b] in the InternalRel of (ComplRelStr (sum_of (G1,G2))) by NECKLACE:def 8; :: thesis: verum
end;
end;
end;
A38: the carrier of (union_of ((),())) = the carrier of () \/ the carrier of () by NECKLA_2:def 2
.= the carrier of G1 \/ the carrier of () by NECKLACE:def 8
.= the carrier of G1 \/ the carrier of G2 by NECKLACE:def 8 ;
the carrier of (ComplRelStr (sum_of (G1,G2))) = the carrier of (sum_of (G1,G2)) by NECKLACE:def 8
.= the carrier of G1 \/ the carrier of G2 by NECKLA_2:def 3 ;
hence ComplRelStr (sum_of (G1,G2)) = union_of ((),()) by ; :: thesis: verum