begin
theorem
for
X being
set st
X <> {} holds
ex
v being
set st
(
v in X & ( for
x,
y being
set holds
( ( not
x in X & not
y in X ) or not
v = [x,y] ) ) )
theorem
for
z,
x1,
x2,
y1,
y2 being
set st
z in [:{x1,x2},{y1,y2}:] holds
( (
z `1 = x1 or
z `1 = x2 ) & (
z `2 = y1 or
z `2 = y2 ) )
Lm1:
for X1, X2 being set st X1 <> {} & X2 <> {} holds
for x being Element of [:X1,X2:] ex xx1 being Element of X1 ex xx2 being Element of X2 st x = [xx1,xx2]
theorem Th23:
for
x1,
x2,
y1,
y2 being
set holds
[:{x1,x2},{y1,y2}:] = {[x1,y1],[x1,y2],[x2,y1],[x2,y2]}
theorem Th26:
for
X being
set st
X <> {} holds
ex
v being
set st
(
v in X & ( for
x,
y,
z being
set holds
( ( not
x in X & not
y in X ) or not
v = [x,y,z] ) ) )
theorem Th30:
for
X being
set st
X <> {} holds
ex
v being
set st
(
v in X & ( for
x1,
x2,
x3,
x4 being
set holds
( ( not
x1 in X & not
x2 in X ) or not
v = [x1,x2,x3,x4] ) ) )
theorem Th32:
for
X1,
X2,
X3,
Y1,
Y2,
Y3 being
set st
X1 <> {} &
X2 <> {} &
X3 <> {} &
[:X1,X2,X3:] = [:Y1,Y2,Y3:] holds
(
X1 = Y1 &
X2 = Y2 &
X3 = Y3 )
theorem
for
X1,
X2,
X3,
Y1,
Y2,
Y3 being
set st
[:X1,X2,X3:] <> {} &
[:X1,X2,X3:] = [:Y1,Y2,Y3:] holds
(
X1 = Y1 &
X2 = Y2 &
X3 = Y3 )
Lm2:
for X1, X2, X3 being set st X1 <> {} & X2 <> {} & X3 <> {} holds
for x being Element of [:X1,X2,X3:] ex xx1 being Element of X1 ex xx2 being Element of X2 ex xx3 being Element of X3 st x = [xx1,xx2,xx3]
theorem
for
x1,
y1,
x2,
x3 being
set holds
[:{x1,y1},{x2},{x3}:] = {[x1,x2,x3],[y1,x2,x3]}
theorem
for
x1,
x2,
y2,
x3 being
set holds
[:{x1},{x2,y2},{x3}:] = {[x1,x2,x3],[x1,y2,x3]}
theorem
for
x1,
x2,
x3,
y3 being
set holds
[:{x1},{x2},{x3,y3}:] = {[x1,x2,x3],[x1,x2,y3]}
theorem
for
x1,
y1,
x2,
y2,
x3 being
set holds
[:{x1,y1},{x2,y2},{x3}:] = {[x1,x2,x3],[y1,x2,x3],[x1,y2,x3],[y1,y2,x3]}
theorem
for
x1,
y1,
x2,
x3,
y3 being
set holds
[:{x1,y1},{x2},{x3,y3}:] = {[x1,x2,x3],[y1,x2,x3],[x1,x2,y3],[y1,x2,y3]}
theorem
for
x1,
x2,
y2,
x3,
y3 being
set holds
[:{x1},{x2,y2},{x3,y3}:] = {[x1,x2,x3],[x1,y2,x3],[x1,x2,y3],[x1,y2,y3]}
theorem
for
x1,
y1,
x2,
y2,
x3,
y3 being
set holds
[:{x1,y1},{x2,y2},{x3,y3}:] = {[x1,x2,x3],[x1,y2,x3],[x1,x2,y3],[x1,y2,y3],[y1,x2,x3],[y1,y2,x3],[y1,x2,y3],[y1,y2,y3]}
definition
canceled;canceled;canceled;canceled;let X1,
X2,
X3 be non
empty set ;
let x be
Element of
[:X1,X2,X3:];
coherence
x `1_3 is Element of X1
compatibility
for b1 being Element of X1 holds
( b1 = x `1_3 iff for x1, x2, x3 being set st x = [x1,x2,x3] holds
b1 = x1 )
coherence
x `2_3 is Element of X2
compatibility
for b1 being Element of X2 holds
( b1 = x `2_3 iff for x1, x2, x3 being set st x = [x1,x2,x3] holds
b1 = x2 )
coherence
x `2 is Element of X3
compatibility
for b1 being Element of X3 holds
( b1 = x `2 iff for x1, x2, x3 being set st x = [x1,x2,x3] holds
b1 = x3 )
end;
theorem Th52:
for
X1,
X2,
X3,
X4,
Y1,
Y2,
Y3,
Y4 being
set st
X1 <> {} &
X2 <> {} &
X3 <> {} &
X4 <> {} &
[:X1,X2,X3,X4:] = [:Y1,Y2,Y3,Y4:] holds
(
X1 = Y1 &
X2 = Y2 &
X3 = Y3 &
X4 = Y4 )
theorem
for
X1,
X2,
X3,
X4,
Y1,
Y2,
Y3,
Y4 being
set st
[:X1,X2,X3,X4:] <> {} &
[:X1,X2,X3,X4:] = [:Y1,Y2,Y3,Y4:] holds
(
X1 = Y1 &
X2 = Y2 &
X3 = Y3 &
X4 = Y4 )
Lm3:
for X1, X2, X3, X4 being set st X1 <> {} & X2 <> {} & X3 <> {} & X4 <> {} holds
for x being Element of [:X1,X2,X3,X4:] ex xx1 being Element of X1 ex xx2 being Element of X2 ex xx3 being Element of X3 ex xx4 being Element of X4 st x = [xx1,xx2,xx3,xx4]
definition
let X1,
X2,
X3,
X4 be non
empty set ;
let x be
Element of
[:X1,X2,X3,X4:];
coherence
x `1_4 is Element of X1
compatibility
for b1 being Element of X1 holds
( b1 = x `1_4 iff for x1, x2, x3, x4 being set st x = [x1,x2,x3,x4] holds
b1 = x1 )
coherence
x `2_4 is Element of X2
compatibility
for b1 being Element of X2 holds
( b1 = x `2_4 iff for x1, x2, x3, x4 being set st x = [x1,x2,x3,x4] holds
b1 = x2 )
coherence
x `2_3 is Element of X3
compatibility
for b1 being Element of X3 holds
( b1 = x `2_3 iff for x1, x2, x3, x4 being set st x = [x1,x2,x3,x4] holds
b1 = x3 )
coherence
x `2 is Element of X4
compatibility
for b1 being Element of X4 holds
( b1 = x `2 iff for x1, x2, x3, x4 being set st x = [x1,x2,x3,x4] holds
b1 = x4 )
end;
::
deftheorem Def8 defines
`1_4 MCART_1:def 8 :
for X1, X2, X3, X4 being non empty set
for x being Element of [:X1,X2,X3,X4:]
for b6 being Element of X1 holds
( b6 = x `1_4 iff for x1, x2, x3, x4 being set st x = [x1,x2,x3,x4] holds
b6 = x1 );
::
deftheorem Def9 defines
`2_4 MCART_1:def 9 :
for X1, X2, X3, X4 being non empty set
for x being Element of [:X1,X2,X3,X4:]
for b6 being Element of X2 holds
( b6 = x `2_4 iff for x1, x2, x3, x4 being set st x = [x1,x2,x3,x4] holds
b6 = x2 );
::
deftheorem Def10 defines
`3_4 MCART_1:def 10 :
for X1, X2, X3, X4 being non empty set
for x being Element of [:X1,X2,X3,X4:]
for b6 being Element of X3 holds
( b6 = x `3_4 iff for x1, x2, x3, x4 being set st x = [x1,x2,x3,x4] holds
b6 = x3 );
::
deftheorem Def11 defines
`4_4 MCART_1:def 11 :
for X1, X2, X3, X4 being non empty set
for x being Element of [:X1,X2,X3,X4:]
for b6 being Element of X4 holds
( b6 = x `4_4 iff for x1, x2, x3, x4 being set st x = [x1,x2,x3,x4] holds
b6 = x4 );
theorem
for
X1,
X2,
X3,
X4 being
set st (
X1 c= [:X1,X2,X3,X4:] or
X1 c= [:X2,X3,X4,X1:] or
X1 c= [:X3,X4,X1,X2:] or
X1 c= [:X4,X1,X2,X3:] ) holds
X1 = {}
theorem
for
X1,
X2,
X3,
X4,
Y1,
Y2,
Y3,
Y4 being
set st
[:X1,X2,X3,X4:] meets [:Y1,Y2,Y3,Y4:] holds
(
X1 meets Y1 &
X2 meets Y2 &
X3 meets Y3 &
X4 meets Y4 )
theorem
for
X1,
X2,
X3 being non
empty set for
x being
Element of
[:X1,X2,X3:] for
x1,
x2,
x3 being
set st
x = [x1,x2,x3] holds
(
x `1_3 = x1 &
x `2_3 = x2 &
x `3_3 = x3 )
by Def5, Def6, Def7;
theorem Th68:
for
z,
X1,
X2,
X3 being
set st
z in [:X1,X2,X3:] holds
ex
x1,
x2,
x3 being
set st
(
x1 in X1 &
x2 in X2 &
x3 in X3 &
z = [x1,x2,x3] )
theorem Th69:
for
x1,
x2,
x3,
X1,
X2,
X3 being
set holds
(
[x1,x2,x3] in [:X1,X2,X3:] iff (
x1 in X1 &
x2 in X2 &
x3 in X3 ) )
theorem
for
Z,
X1,
X2,
X3 being
set st ( for
z being
set holds
(
z in Z iff ex
x1,
x2,
x3 being
set st
(
x1 in X1 &
x2 in X2 &
x3 in X3 &
z = [x1,x2,x3] ) ) ) holds
Z = [:X1,X2,X3:]
theorem Th73:
for
X1,
Y1,
X2,
Y2,
X3,
Y3 being
set st
X1 c= Y1 &
X2 c= Y2 &
X3 c= Y3 holds
[:X1,X2,X3:] c= [:Y1,Y2,Y3:]
theorem
for
X1,
X2,
X3,
X4 being non
empty set for
x being
Element of
[:X1,X2,X3,X4:] for
x1,
x2,
x3,
x4 being
set st
x = [x1,x2,x3,x4] holds
(
x `1_4 = x1 &
x `2_4 = x2 &
x `3_4 = x3 &
x `4_4 = x4 )
by Def8, Def9, Def10, Def11;
theorem
for
z,
X1,
X2,
X3,
X4 being
set st
z in [:X1,X2,X3,X4:] holds
ex
x1,
x2,
x3,
x4 being
set st
(
x1 in X1 &
x2 in X2 &
x3 in X3 &
x4 in X4 &
z = [x1,x2,x3,x4] )
theorem
for
x1,
x2,
x3,
x4,
X1,
X2,
X3,
X4 being
set holds
(
[x1,x2,x3,x4] in [:X1,X2,X3,X4:] iff (
x1 in X1 &
x2 in X2 &
x3 in X3 &
x4 in X4 ) )
theorem
for
Z,
X1,
X2,
X3,
X4 being
set st ( for
z being
set holds
(
z in Z iff ex
x1,
x2,
x3,
x4 being
set st
(
x1 in X1 &
x2 in X2 &
x3 in X3 &
x4 in X4 &
z = [x1,x2,x3,x4] ) ) ) holds
Z = [:X1,X2,X3,X4:]
theorem Th84:
for
X1,
Y1,
X2,
Y2,
X3,
Y3,
X4,
Y4 being
set st
X1 c= Y1 &
X2 c= Y2 &
X3 c= Y3 &
X4 c= Y4 holds
[:X1,X2,X3,X4:] c= [:Y1,Y2,Y3,Y4:]
definition
let X1,
X2,
X3 be
set ;
let A1 be
Subset of
X1;
let A2 be
Subset of
X2;
let A3 be
Subset of
X3;
[:redefine func [:A1,A2,A3:] -> Subset of
[:X1,X2,X3:];
coherence
[:A1,A2,A3:] is Subset of [:X1,X2,X3:]
by Th73;
end;
definition
let X1,
X2,
X3,
X4 be
set ;
let A1 be
Subset of
X1;
let A2 be
Subset of
X2;
let A3 be
Subset of
X3;
let A4 be
Subset of
X4;
[:redefine func [:A1,A2,A3,A4:] -> Subset of
[:X1,X2,X3,X4:];
coherence
[:A1,A2,A3,A4:] is Subset of [:X1,X2,X3,X4:]
by Th84;
end;
begin
theorem
for
x1,
x2,
y,
y1,
y2,
x being
set holds
(
[[x1,x2],y] `11 = x1 &
[[x1,x2],y] `12 = x2 &
[x,[y1,y2]] `21 = y1 &
[x,[y1,y2]] `22 = y2 ) ;
theorem
for
x1,
x2,
x3,
y1,
y2,
y3 being
set holds
proj1 (proj1 {[x1,x2,x3],[y1,y2,y3]}) = {x1,y1}
scheme
BiFuncEx{
F1()
-> set ,
F2()
-> set ,
F3()
-> set ,
P1[
set ,
set ,
set ] } :
ex
f,
g being
Function st
(
dom f = F1() &
dom g = F1() & ( for
x being
set st
x in F1() holds
P1[
x,
f . x,
g . x] ) )
provided
A1:
for
x being
set st
x in F1() holds
ex
y,
z being
set st
(
y in F2() &
z in F3() &
P1[
x,
y,
z] )
:: of ordered pairs and Cartesian products of two sets.