:: MCART_2 semantic presentation
Lemma1:
for b1, b2 being set holds
( b1 <> {} & b2 <> {} implies for b3 being Element of [:b1,b2:] holds
ex b4 being Element of b1ex b5 being Element of b2 st b3 = [b4,b5] )
Lemma2:
for b1, b2, b3 being set holds
( b1 <> {} & b2 <> {} & b3 <> {} implies for b4 being Element of [:b1,b2,b3:] holds
ex b5 being Element of b1ex b6 being Element of b2ex b7 being Element of b3 st b4 = [b5,b6,b7] )
Lemma3:
for b1, b2, b3, b4 being set holds
( b1 <> {} & b2 <> {} & b3 <> {} & b4 <> {} implies for b5 being Element of [:b1,b2,b3,b4:] holds
ex b6 being Element of b1ex b7 being Element of b2ex b8 being Element of b3ex b9 being Element of b4 st b5 = [b6,b7,b8,b9] )
theorem Th1: :: MCART_2:1
for b
1 being
set holds
not ( b
1 <> {} & ( for b
2 being
set holds
not ( b
2 in b
1 & ( for b
3, b
4, b
5, b
6, b
7, b
8 being
set holds
( b
3 in b
4 & b
4 in b
5 & b
5 in b
6 & b
6 in b
7 & b
7 in b
8 & b
8 in b
2 implies b
3 misses b
1 ) ) ) ) )
theorem Th2: :: MCART_2:2
for b
1 being
set holds
not ( b
1 <> {} & ( for b
2 being
set holds
not ( b
2 in b
1 & ( for b
3, b
4, b
5, b
6, b
7, b
8, b
9 being
set holds
( b
3 in b
4 & b
4 in b
5 & b
5 in b
6 & b
6 in b
7 & b
7 in b
8 & b
8 in b
9 & b
9 in b
2 implies b
3 misses b
1 ) ) ) ) )
definition
let c
1, c
2, c
3, c
4, c
5 be
set ;
func [c1,c2,c3,c4,c5] -> set equals :: MCART_2:def 1
[[a1,a2,a3,a4],a5];
correctness
coherence
[[c1,c2,c3,c4],c5] is set ;
;
end;
:: deftheorem Def1 defines [ MCART_2:def 1 :
for b
1, b
2, b
3, b
4, b
5 being
set holds
[b1,b2,b3,b4,b5] = [[b1,b2,b3,b4],b5];
theorem Th3: :: MCART_2:3
for b
1, b
2, b
3, b
4, b
5 being
set holds
[b1,b2,b3,b4,b5] = [[[[b1,b2],b3],b4],b5]
theorem Th4: :: MCART_2:4
canceled;
theorem Th5: :: MCART_2:5
for b
1, b
2, b
3, b
4, b
5 being
set holds
[b1,b2,b3,b4,b5] = [[b1,b2,b3],b4,b5]
theorem Th6: :: MCART_2:6
for b
1, b
2, b
3, b
4, b
5 being
set holds
[b1,b2,b3,b4,b5] = [[b1,b2],b3,b4,b5]
theorem Th7: :: MCART_2:7
for b
1, b
2, b
3, b
4, b
5, b
6, b
7, b
8, b
9, b
10 being
set holds
(
[b1,b2,b3,b4,b5] = [b6,b7,b8,b9,b10] implies ( b
1 = b
6 & b
2 = b
7 & b
3 = b
8 & b
4 = b
9 & b
5 = b
10 ) )
theorem Th8: :: MCART_2:8
for b
1 being
set holds
not ( b
1 <> {} & ( for b
2 being
set holds
not ( b
2 in b
1 & ( for b
3, b
4, b
5, b
6, b
7 being
set holds
not ( ( b
3 in b
1 or b
4 in b
1 ) & b
2 = [b3,b4,b5,b6,b7] ) ) ) ) )
definition
let c
1, c
2, c
3, c
4, c
5 be
set ;
func [:c1,c2,c3,c4,c5:] -> set equals :: MCART_2:def 2
[:[:a1,a2,a3,a4:],a5:];
correctness
coherence
[:[:c1,c2,c3,c4:],c5:] is set ;
;
end;
:: deftheorem Def2 defines [: MCART_2:def 2 :
for b
1, b
2, b
3, b
4, b
5 being
set holds
[:b1,b2,b3,b4,b5:] = [:[:b1,b2,b3,b4:],b5:];
theorem Th9: :: MCART_2:9
for b
1, b
2, b
3, b
4, b
5 being
set holds
[:b1,b2,b3,b4,b5:] = [:[:[:[:b1,b2:],b3:],b4:],b5:]
theorem Th10: :: MCART_2:10
canceled;
theorem Th11: :: MCART_2:11
for b
1, b
2, b
3, b
4, b
5 being
set holds
[:b1,b2,b3,b4,b5:] = [:[:b1,b2,b3:],b4,b5:]
theorem Th12: :: MCART_2:12
for b
1, b
2, b
3, b
4, b
5 being
set holds
[:b1,b2,b3,b4,b5:] = [:[:b1,b2:],b3,b4,b5:]
theorem Th13: :: MCART_2:13
theorem Th14: :: MCART_2:14
for b
1, b
2, b
3, b
4, b
5, b
6, b
7, b
8, b
9, b
10 being
set holds
( b
1 <> {} & b
2 <> {} & b
3 <> {} & b
4 <> {} & b
5 <> {} &
[:b1,b2,b3,b4,b5:] = [:b6,b7,b8,b9,b10:] implies ( b
1 = b
6 & b
2 = b
7 & b
3 = b
8 & b
4 = b
9 & b
5 = b
10 ) )
theorem Th15: :: MCART_2:15
for b
1, b
2, b
3, b
4, b
5, b
6, b
7, b
8, b
9, b
10 being
set holds
(
[:b1,b2,b3,b4,b5:] <> {} &
[:b1,b2,b3,b4,b5:] = [:b6,b7,b8,b9,b10:] implies ( b
1 = b
6 & b
2 = b
7 & b
3 = b
8 & b
4 = b
9 & b
5 = b
10 ) )
theorem Th16: :: MCART_2:16
for b
1, b
2 being
set holds
(
[:b1,b1,b1,b1,b1:] = [:b2,b2,b2,b2,b2:] implies b
1 = b
2 )
theorem Th17: :: MCART_2:17
for b
1, b
2, b
3, b
4, b
5 being
set holds
( b
1 <> {} & b
2 <> {} & b
3 <> {} & b
4 <> {} & b
5 <> {} implies for b
6 being
Element of
[:b1,b2,b3,b4,b5:] holds
ex b
7 being
Element of b
1ex b
8 being
Element of b
2ex b
9 being
Element of b
3ex b
10 being
Element of b
4ex b
11 being
Element of b
5 st b
6 = [b7,b8,b9,b10,b11] )
definition
let c
1, c
2, c
3, c
4, c
5 be
set ;
assume E14:
( c
1 <> {} & c
2 <> {} & c
3 <> {} & c
4 <> {} & c
5 <> {} )
;
let c
6 be
Element of
[:c1,c2,c3,c4,c5:];
func c
6 `1 -> Element of a
1 means :
Def3:
:: MCART_2:def 3
for b
1, b
2, b
3, b
4, b
5 being
set holds
( a
6 = [b1,b2,b3,b4,b5] implies a
7 = b
1 );
existence
ex b1 being Element of c1 st
for b2, b3, b4, b5, b6 being set holds
( c6 = [b2,b3,b4,b5,b6] implies b1 = b2 )
uniqueness
for b1, b2 being Element of c1 holds
( ( for b3, b4, b5, b6, b7 being set holds
( c6 = [b3,b4,b5,b6,b7] implies b1 = b3 ) ) & ( for b3, b4, b5, b6, b7 being set holds
( c6 = [b3,b4,b5,b6,b7] implies b2 = b3 ) ) implies b1 = b2 )
func c
6 `2 -> Element of a
2 means :
Def4:
:: MCART_2:def 4
for b
1, b
2, b
3, b
4, b
5 being
set holds
( a
6 = [b1,b2,b3,b4,b5] implies a
7 = b
2 );
existence
ex b1 being Element of c2 st
for b2, b3, b4, b5, b6 being set holds
( c6 = [b2,b3,b4,b5,b6] implies b1 = b3 )
uniqueness
for b1, b2 being Element of c2 holds
( ( for b3, b4, b5, b6, b7 being set holds
( c6 = [b3,b4,b5,b6,b7] implies b1 = b4 ) ) & ( for b3, b4, b5, b6, b7 being set holds
( c6 = [b3,b4,b5,b6,b7] implies b2 = b4 ) ) implies b1 = b2 )
func c
6 `3 -> Element of a
3 means :
Def5:
:: MCART_2:def 5
for b
1, b
2, b
3, b
4, b
5 being
set holds
( a
6 = [b1,b2,b3,b4,b5] implies a
7 = b
3 );
existence
ex b1 being Element of c3 st
for b2, b3, b4, b5, b6 being set holds
( c6 = [b2,b3,b4,b5,b6] implies b1 = b4 )
uniqueness
for b1, b2 being Element of c3 holds
( ( for b3, b4, b5, b6, b7 being set holds
( c6 = [b3,b4,b5,b6,b7] implies b1 = b5 ) ) & ( for b3, b4, b5, b6, b7 being set holds
( c6 = [b3,b4,b5,b6,b7] implies b2 = b5 ) ) implies b1 = b2 )
func c
6 `4 -> Element of a
4 means :
Def6:
:: MCART_2:def 6
for b
1, b
2, b
3, b
4, b
5 being
set holds
( a
6 = [b1,b2,b3,b4,b5] implies a
7 = b
4 );
existence
ex b1 being Element of c4 st
for b2, b3, b4, b5, b6 being set holds
( c6 = [b2,b3,b4,b5,b6] implies b1 = b5 )
uniqueness
for b1, b2 being Element of c4 holds
( ( for b3, b4, b5, b6, b7 being set holds
( c6 = [b3,b4,b5,b6,b7] implies b1 = b6 ) ) & ( for b3, b4, b5, b6, b7 being set holds
( c6 = [b3,b4,b5,b6,b7] implies b2 = b6 ) ) implies b1 = b2 )
func c
6 `5 -> Element of a
5 means :
Def7:
:: MCART_2:def 7
for b
1, b
2, b
3, b
4, b
5 being
set holds
( a
6 = [b1,b2,b3,b4,b5] implies a
7 = b
5 );
existence
ex b1 being Element of c5 st
for b2, b3, b4, b5, b6 being set holds
( c6 = [b2,b3,b4,b5,b6] implies b1 = b6 )
uniqueness
for b1, b2 being Element of c5 holds
( ( for b3, b4, b5, b6, b7 being set holds
( c6 = [b3,b4,b5,b6,b7] implies b1 = b7 ) ) & ( for b3, b4, b5, b6, b7 being set holds
( c6 = [b3,b4,b5,b6,b7] implies b2 = b7 ) ) implies b1 = b2 )
end;
:: deftheorem Def3 defines `1 MCART_2:def 3 :
for b
1, b
2, b
3, b
4, b
5 being
set holds
( b
1 <> {} & b
2 <> {} & b
3 <> {} & b
4 <> {} & b
5 <> {} implies for b
6 being
Element of
[:b1,b2,b3,b4,b5:]for b
7 being
Element of b
1 holds
( b
7 = b
6 `1 iff for b
8, b
9, b
10, b
11, b
12 being
set holds
( b
6 = [b8,b9,b10,b11,b12] implies b
7 = b
8 ) ) );
:: deftheorem Def4 defines `2 MCART_2:def 4 :
for b
1, b
2, b
3, b
4, b
5 being
set holds
( b
1 <> {} & b
2 <> {} & b
3 <> {} & b
4 <> {} & b
5 <> {} implies for b
6 being
Element of
[:b1,b2,b3,b4,b5:]for b
7 being
Element of b
2 holds
( b
7 = b
6 `2 iff for b
8, b
9, b
10, b
11, b
12 being
set holds
( b
6 = [b8,b9,b10,b11,b12] implies b
7 = b
9 ) ) );
:: deftheorem Def5 defines `3 MCART_2:def 5 :
for b
1, b
2, b
3, b
4, b
5 being
set holds
( b
1 <> {} & b
2 <> {} & b
3 <> {} & b
4 <> {} & b
5 <> {} implies for b
6 being
Element of
[:b1,b2,b3,b4,b5:]for b
7 being
Element of b
3 holds
( b
7 = b
6 `3 iff for b
8, b
9, b
10, b
11, b
12 being
set holds
( b
6 = [b8,b9,b10,b11,b12] implies b
7 = b
10 ) ) );
:: deftheorem Def6 defines `4 MCART_2:def 6 :
for b
1, b
2, b
3, b
4, b
5 being
set holds
( b
1 <> {} & b
2 <> {} & b
3 <> {} & b
4 <> {} & b
5 <> {} implies for b
6 being
Element of
[:b1,b2,b3,b4,b5:]for b
7 being
Element of b
4 holds
( b
7 = b
6 `4 iff for b
8, b
9, b
10, b
11, b
12 being
set holds
( b
6 = [b8,b9,b10,b11,b12] implies b
7 = b
11 ) ) );
:: deftheorem Def7 defines `5 MCART_2:def 7 :
for b
1, b
2, b
3, b
4, b
5 being
set holds
( b
1 <> {} & b
2 <> {} & b
3 <> {} & b
4 <> {} & b
5 <> {} implies for b
6 being
Element of
[:b1,b2,b3,b4,b5:]for b
7 being
Element of b
5 holds
( b
7 = b
6 `5 iff for b
8, b
9, b
10, b
11, b
12 being
set holds
( b
6 = [b8,b9,b10,b11,b12] implies b
7 = b
12 ) ) );
theorem Th18: :: MCART_2:18
for b
1, b
2, b
3, b
4, b
5 being
set holds
( b
1 <> {} & b
2 <> {} & b
3 <> {} & b
4 <> {} & b
5 <> {} implies for b
6 being
Element of
[:b1,b2,b3,b4,b5:]for b
7, b
8, b
9, b
10, b
11 being
set holds
( b
6 = [b7,b8,b9,b10,b11] implies ( b
6 `1 = b
7 & b
6 `2 = b
8 & b
6 `3 = b
9 & b
6 `4 = b
10 & b
6 `5 = b
11 ) ) )
by Def3, Def4, Def5, Def6, Def7;
theorem Th19: :: MCART_2:19
for b
1, b
2, b
3, b
4, b
5 being
set holds
( b
1 <> {} & b
2 <> {} & b
3 <> {} & b
4 <> {} & b
5 <> {} implies for b
6 being
Element of
[:b1,b2,b3,b4,b5:] holds b
6 = [(b6 `1 ),(b6 `2 ),(b6 `3 ),(b6 `4 ),(b6 `5 )] )
theorem Th20: :: MCART_2:20
theorem Th21: :: MCART_2:21
for b
1, b
2, b
3, b
4, b
5 being
set holds
( not ( not b
1 c= [:b1,b2,b3,b4,b5:] & not b
1 c= [:b2,b3,b4,b5,b1:] & not b
1 c= [:b3,b4,b5,b1,b2:] & not b
1 c= [:b4,b5,b1,b2,b3:] & not b
1 c= [:b5,b1,b2,b3,b4:] ) implies b
1 = {} )
theorem Th22: :: MCART_2:22
for b
1, b
2, b
3, b
4, b
5, b
6, b
7, b
8, b
9, b
10 being
set holds
(
[:b1,b2,b3,b4,b5:] meets [:b6,b7,b8,b9,b10:] implies ( b
1 meets b
6 & b
2 meets b
7 & b
3 meets b
8 & b
4 meets b
9 & b
5 meets b
10 ) )
theorem Th23: :: MCART_2:23
for b
1, b
2, b
3, b
4, b
5 being
set holds
[:{b1},{b2},{b3},{b4},{b5}:] = {[b1,b2,b3,b4,b5]}
theorem Th24: :: MCART_2:24
for b
1, b
2, b
3, b
4, b
5 being
set for b
6 being
Element of
[:b1,b2,b3,b4,b5:] holds
( b
1 <> {} & b
2 <> {} & b
3 <> {} & b
4 <> {} & b
5 <> {} implies for b
7, b
8, b
9, b
10, b
11 being
set holds
( b
6 = [b7,b8,b9,b10,b11] implies ( b
6 `1 = b
7 & b
6 `2 = b
8 & b
6 `3 = b
9 & b
6 `4 = b
10 & b
6 `5 = b
11 ) ) )
by Def3, Def4, Def5, Def6, Def7;
theorem Th25: :: MCART_2:25
for b
1, b
2, b
3, b
4, b
5, b
6 being
set for b
7 being
Element of
[:b1,b2,b3,b4,b5:] holds
( b
1 <> {} & b
2 <> {} & b
3 <> {} & b
4 <> {} & b
5 <> {} & ( for b
8 being
Element of b
1for b
9 being
Element of b
2for b
10 being
Element of b
3for b
11 being
Element of b
4for b
12 being
Element of b
5 holds
( b
7 = [b8,b9,b10,b11,b12] implies b
6 = b
8 ) ) implies b
6 = b
7 `1 )
theorem Th26: :: MCART_2:26
for b
1, b
2, b
3, b
4, b
5, b
6 being
set for b
7 being
Element of
[:b1,b2,b3,b4,b5:] holds
( b
1 <> {} & b
2 <> {} & b
3 <> {} & b
4 <> {} & b
5 <> {} & ( for b
8 being
Element of b
1for b
9 being
Element of b
2for b
10 being
Element of b
3for b
11 being
Element of b
4for b
12 being
Element of b
5 holds
( b
7 = [b8,b9,b10,b11,b12] implies b
6 = b
9 ) ) implies b
6 = b
7 `2 )
theorem Th27: :: MCART_2:27
for b
1, b
2, b
3, b
4, b
5, b
6 being
set for b
7 being
Element of
[:b1,b2,b3,b4,b5:] holds
( b
1 <> {} & b
2 <> {} & b
3 <> {} & b
4 <> {} & b
5 <> {} & ( for b
8 being
Element of b
1for b
9 being
Element of b
2for b
10 being
Element of b
3for b
11 being
Element of b
4for b
12 being
Element of b
5 holds
( b
7 = [b8,b9,b10,b11,b12] implies b
6 = b
10 ) ) implies b
6 = b
7 `3 )
theorem Th28: :: MCART_2:28
for b
1, b
2, b
3, b
4, b
5, b
6 being
set for b
7 being
Element of
[:b1,b2,b3,b4,b5:] holds
( b
1 <> {} & b
2 <> {} & b
3 <> {} & b
4 <> {} & b
5 <> {} & ( for b
8 being
Element of b
1for b
9 being
Element of b
2for b
10 being
Element of b
3for b
11 being
Element of b
4for b
12 being
Element of b
5 holds
( b
7 = [b8,b9,b10,b11,b12] implies b
6 = b
11 ) ) implies b
6 = b
7 `4 )
theorem Th29: :: MCART_2:29
for b
1, b
2, b
3, b
4, b
5, b
6 being
set for b
7 being
Element of
[:b1,b2,b3,b4,b5:] holds
( b
1 <> {} & b
2 <> {} & b
3 <> {} & b
4 <> {} & b
5 <> {} & ( for b
8 being
Element of b
1for b
9 being
Element of b
2for b
10 being
Element of b
3for b
11 being
Element of b
4for b
12 being
Element of b
5 holds
( b
7 = [b8,b9,b10,b11,b12] implies b
6 = b
12 ) ) implies b
6 = b
7 `5 )
theorem Th30: :: MCART_2:30
for b
1, b
2, b
3, b
4, b
5, b
6 being
set holds
not ( b
1 in [:b2,b3,b4,b5,b6:] & ( for b
7, b
8, b
9, b
10, b
11 being
set holds
not ( b
7 in b
2 & b
8 in b
3 & b
9 in b
4 & b
10 in b
5 & b
11 in b
6 & b
1 = [b7,b8,b9,b10,b11] ) ) )
theorem Th31: :: MCART_2:31
for b
1, b
2, b
3, b
4, b
5, b
6, b
7, b
8, b
9, b
10 being
set holds
(
[b1,b2,b3,b4,b5] in [:b6,b7,b8,b9,b10:] iff ( b
1 in b
6 & b
2 in b
7 & b
3 in b
8 & b
4 in b
9 & b
5 in b
10 ) )
theorem Th32: :: MCART_2:32
for b
1, b
2, b
3, b
4, b
5, b
6 being
set holds
( ( for b
7 being
set holds
( b
7 in b
1 iff ex b
8, b
9, b
10, b
11, b
12 being
set st
( b
8 in b
2 & b
9 in b
3 & b
10 in b
4 & b
11 in b
5 & b
12 in b
6 & b
7 = [b8,b9,b10,b11,b12] ) ) ) implies b
1 = [:b2,b3,b4,b5,b6:] )
theorem Th33: :: MCART_2:33
for b
1, b
2, b
3, b
4, b
5, b
6, b
7, b
8, b
9, b
10 being
set holds
( b
1 <> {} & b
2 <> {} & b
3 <> {} & b
4 <> {} & b
5 <> {} & b
6 <> {} & b
7 <> {} & b
8 <> {} & b
9 <> {} & b
10 <> {} implies for b
11 being
Element of
[:b1,b2,b3,b4,b5:]for b
12 being
Element of
[:b6,b7,b8,b9,b10:] holds
( b
11 = b
12 implies ( b
11 `1 = b
12 `1 & b
11 `2 = b
12 `2 & b
11 `3 = b
12 `3 & b
11 `4 = b
12 `4 & b
11 `5 = b
12 `5 ) ) )
theorem Th34: :: MCART_2:34
for b
1, b
2, b
3, b
4, b
5 being
set for b
6 being
Subset of b
1for b
7 being
Subset of b
2for b
8 being
Subset of b
3for b
9 being
Subset of b
4for b
10 being
Subset of b
5for b
11 being
Element of
[:b1,b2,b3,b4,b5:] holds
( b
11 in [:b6,b7,b8,b9,b10:] implies ( b
11 `1 in b
6 & b
11 `2 in b
7 & b
11 `3 in b
8 & b
11 `4 in b
9 & b
11 `5 in b
10 ) )
theorem Th35: :: MCART_2:35
for b
1, b
2, b
3, b
4, b
5, b
6, b
7, b
8, b
9, b
10 being
set holds
( b
1 c= b
2 & b
3 c= b
4 & b
5 c= b
6 & b
7 c= b
8 & b
9 c= b
10 implies
[:b1,b3,b5,b7,b9:] c= [:b2,b4,b6,b8,b10:] )
definition
let c
1, c
2, c
3, c
4, c
5 be
set ;
let c
6 be
Subset of c
1;
let c
7 be
Subset of c
2;
let c
8 be
Subset of c
3;
let c
9 be
Subset of c
4;
let c
10 be
Subset of c
5;
redefine func [: as
[:c6,c7,c8,c9,c10:] -> Subset of
[:a1,a2,a3,a4,a5:];
coherence
[:c6,c7,c8,c9,c10:] is Subset of [:c1,c2,c3,c4,c5:]
by Th35;
end;
theorem Th36: :: MCART_2:36
theorem Th37: :: MCART_2:37
theorem Th38: :: MCART_2:38