theorem
for
X being
set st
X <> {} holds
ex
v being
object st
(
v in X & ( for
x,
y being
object holds
( ( not
x in X & not
y in X ) or not
v = [x,y] ) ) )
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 Th17:
for
x1,
x2,
y1,
y2 being
object holds
[:{x1,x2},{y1,y2}:] = {[x1,y1],[x1,y2],[x2,y1],[x2,y2]}
theorem Th19:
for
X being
set st
X <> {} holds
ex
v being
object st
(
v in X & ( for
x,
y,
z being
object holds
( ( not
x in X & not
y in X ) or not
v = [x,y,z] ) ) )
theorem Th20:
for
X being
set st
X <> {} holds
ex
v being
object st
(
v in X & ( for
x1,
x2,
x3,
x4 being
object holds
( ( not
x1 in X & not
x2 in X ) or not
v = [x1,x2,x3,x4] ) ) )
theorem Th22:
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,
x2,
x3,
y1 being
object holds
[:{x1,y1},{x2},{x3}:] = {[x1,x2,x3],[y1,x2,x3]}
theorem
for
x1,
x2,
x3,
y2 being
object holds
[:{x1},{x2,y2},{x3}:] = {[x1,x2,x3],[x1,y2,x3]}
theorem
for
x1,
x2,
x3,
y3 being
object holds
[:{x1},{x2},{x3,y3}:] = {[x1,x2,x3],[x1,x2,y3]}
theorem
for
x1,
x2,
x3,
y1,
y2 being
object holds
[:{x1,y1},{x2,y2},{x3}:] = {[x1,x2,x3],[y1,x2,x3],[x1,y2,x3],[y1,y2,x3]}
theorem
for
x1,
x2,
x3,
y1,
y3 being
object holds
[:{x1,y1},{x2},{x3,y3}:] = {[x1,x2,x3],[y1,x2,x3],[x1,x2,y3],[y1,x2,y3]}
theorem
for
x1,
x2,
x3,
y2,
y3 being
object holds
[:{x1},{x2,y2},{x3,y3}:] = {[x1,x2,x3],[x1,y2,x3],[x1,x2,y3],[x1,y2,y3]}
theorem
for
x1,
x2,
x3,
y1,
y2,
y3 being
object 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
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 object 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 object 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 object st x = [x1,x2,x3] holds
b1 = x3 )
end;
theorem Th40:
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 object 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 object 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 object 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 object st x = [x1,x2,x3,x4] holds
b1 = x4 )
end;
::
deftheorem 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 object st x = [x1,x2,x3,x4] holds
b6 = x1 );
::
deftheorem 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 object st x = [x1,x2,x3,x4] holds
b6 = x2 );
::
deftheorem 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 object st x = [x1,x2,x3,x4] holds
b6 = x3 );
::
deftheorem 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 object 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 Th54:
for
z being
object for
X1,
X2,
X3 being
set st
z in [:X1,X2,X3:] holds
ex
x1,
x2,
x3 being
object st
(
x1 in X1 &
x2 in X2 &
x3 in X3 &
z = [x1,x2,x3] )
theorem Th55:
for
x1,
x2,
x3 being
object for
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
X1,
X2,
X3,
Z being
set st ( for
z being
object holds
(
z in Z iff ex
x1,
x2,
x3 being
object st
(
x1 in X1 &
x2 in X2 &
x3 in X3 &
z = [x1,x2,x3] ) ) ) holds
Z = [:X1,X2,X3:]
theorem Th58:
for
X1,
X2,
X3,
Y1,
Y2,
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 ) ;
theorem
for
z being
object for
X1,
X2,
X3,
X4 being
set st
z in [:X1,X2,X3,X4:] holds
ex
x1,
x2,
x3,
x4 being
object st
(
x1 in X1 &
x2 in X2 &
x3 in X3 &
x4 in X4 &
z = [x1,x2,x3,x4] )
theorem
for
x1,
x2,
x3,
x4 being
object for
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
X1,
X2,
X3,
X4,
Z being
set st ( for
z being
object holds
(
z in Z iff ex
x1,
x2,
x3,
x4 being
object 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 Th68:
for
X1,
X2,
X3,
X4,
Y1,
Y2,
Y3,
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 Th58;
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 Th68;
end;
theorem
for
x1,
x2,
y,
y1,
y2,
x being
object 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
object holds
proj1 (proj1 {[x1,x2,x3],[y1,y2,y3]}) = {x1,y1}
theorem
for
x1,
x2,
x3,
x4,
y1,
y2,
y3,
y4 being
object st
[[x1,x2],[x3,x4]] = [[y1,y2],[y3,y4]] holds
(
x1 = y1 &
x2 = y2 &
x3 = y3 &
x4 = y4 )
:: Ordered pairs
::
:: Now we introduce the projections of ordered pairs (functions that assign
:: to an ordered pair its first and its second element). The definitions
:: are permissive, function are defined for an arbitrary object. If it is not
:: an ordered pair, they are of course meaningless.
::$CT 8