:: MCART_5 semantic presentation

theorem Th1: :: MCART_5:1
for b1 being set holds
not ( b1 <> {} & ( for b2 being set holds
not ( b2 in b1 & ( for b3, b4, b5, b6, b7, b8, b9, b10, b11, b12, b13, b14 being set holds
( b3 in b4 & b4 in b5 & b5 in b6 & b6 in b7 & b7 in b8 & b8 in b9 & b9 in b10 & b10 in b11 & b11 in b12 & b12 in b13 & b13 in b14 & b14 in b2 implies b3 misses b1 ) ) ) ) )
proof end;

theorem Th2: :: MCART_5:2
for b1 being set holds
not ( b1 <> {} & ( for b2 being set holds
not ( b2 in b1 & ( for b3, b4, b5, b6, b7, b8, b9, b10, b11, b12, b13, b14, b15 being set holds
( b3 in b4 & b4 in b5 & b5 in b6 & b6 in b7 & b7 in b8 & b8 in b9 & b9 in b10 & b10 in b11 & b11 in b12 & b12 in b13 & b13 in b14 & b14 in b15 & b15 in b2 implies b3 misses b1 ) ) ) ) )
proof end;

definition
let c1, c2, c3, c4, c5, c6, c7, c8 be set ;
func [c1,c2,c3,c4,c5,c6,c7,c8] -> set equals :: MCART_5:def 1
[[a1,a2,a3,a4,a5,a6,a7],a8];
correctness
coherence
[[c1,c2,c3,c4,c5,c6,c7],c8] is set
;
;
end;

:: deftheorem Def1 defines [ MCART_5:def 1 :
for b1, b2, b3, b4, b5, b6, b7, b8 being set holds [b1,b2,b3,b4,b5,b6,b7,b8] = [[b1,b2,b3,b4,b5,b6,b7],b8];

theorem Th3: :: MCART_5:3
for b1, b2, b3, b4, b5, b6, b7, b8 being set holds [b1,b2,b3,b4,b5,b6,b7,b8] = [[[[[[[b1,b2],b3],b4],b5],b6],b7],b8]
proof end;

theorem Th4: :: MCART_5:4
canceled;

theorem Th5: :: MCART_5:5
for b1, b2, b3, b4, b5, b6, b7, b8 being set holds [b1,b2,b3,b4,b5,b6,b7,b8] = [[b1,b2,b3,b4,b5,b6],b7,b8]
proof end;

theorem Th6: :: MCART_5:6
for b1, b2, b3, b4, b5, b6, b7, b8 being set holds [b1,b2,b3,b4,b5,b6,b7,b8] = [[b1,b2,b3,b4,b5],b6,b7,b8]
proof end;

theorem Th7: :: MCART_5:7
for b1, b2, b3, b4, b5, b6, b7, b8 being set holds [b1,b2,b3,b4,b5,b6,b7,b8] = [[b1,b2,b3,b4],b5,b6,b7,b8]
proof end;

theorem Th8: :: MCART_5:8
for b1, b2, b3, b4, b5, b6, b7, b8 being set holds [b1,b2,b3,b4,b5,b6,b7,b8] = [[b1,b2,b3],b4,b5,b6,b7,b8]
proof end;

theorem Th9: :: MCART_5:9
for b1, b2, b3, b4, b5, b6, b7, b8 being set holds [b1,b2,b3,b4,b5,b6,b7,b8] = [[b1,b2],b3,b4,b5,b6,b7,b8]
proof end;

theorem Th10: :: MCART_5:10
for b1, b2, b3, b4, b5, b6, b7, b8, b9, b10, b11, b12, b13, b14, b15, b16 being set holds
( [b1,b2,b3,b4,b5,b6,b7,b8] = [b9,b10,b11,b12,b13,b14,b15,b16] implies ( b1 = b9 & b2 = b10 & b3 = b11 & b4 = b12 & b5 = b13 & b6 = b14 & b7 = b15 & b8 = b16 ) )
proof end;

theorem Th11: :: MCART_5:11
for b1 being set holds
not ( b1 <> {} & ( for b2 being set holds
not ( b2 in b1 & ( for b3, b4, b5, b6, b7, b8, b9, b10 being set holds
not ( ( b3 in b1 or b4 in b1 ) & b2 = [b3,b4,b5,b6,b7,b8,b9,b10] ) ) ) ) )
proof end;

definition
let c1, c2, c3, c4, c5, c6, c7, c8 be set ;
func [:c1,c2,c3,c4,c5,c6,c7,c8:] -> set equals :: MCART_5:def 2
[:[:a1,a2,a3,a4,a5,a6,a7:],a8:];
correctness
coherence
[:[:c1,c2,c3,c4,c5,c6,c7:],c8:] is set
;
;
end;

:: deftheorem Def2 defines [: MCART_5:def 2 :
for b1, b2, b3, b4, b5, b6, b7, b8 being set holds [:b1,b2,b3,b4,b5,b6,b7,b8:] = [:[:b1,b2,b3,b4,b5,b6,b7:],b8:];

theorem Th12: :: MCART_5:12
for b1, b2, b3, b4, b5, b6, b7, b8 being set holds [:b1,b2,b3,b4,b5,b6,b7,b8:] = [:[:[:[:[:[:[:b1,b2:],b3:],b4:],b5:],b6:],b7:],b8:]
proof end;

theorem Th13: :: MCART_5:13
canceled;

theorem Th14: :: MCART_5:14
for b1, b2, b3, b4, b5, b6, b7, b8 being set holds [:b1,b2,b3,b4,b5,b6,b7,b8:] = [:[:b1,b2,b3,b4,b5,b6:],b7,b8:]
proof end;

theorem Th15: :: MCART_5:15
for b1, b2, b3, b4, b5, b6, b7, b8 being set holds [:b1,b2,b3,b4,b5,b6,b7,b8:] = [:[:b1,b2,b3,b4,b5:],b6,b7,b8:]
proof end;

theorem Th16: :: MCART_5:16
for b1, b2, b3, b4, b5, b6, b7, b8 being set holds [:b1,b2,b3,b4,b5,b6,b7,b8:] = [:[:b1,b2,b3,b4:],b5,b6,b7,b8:]
proof end;

theorem Th17: :: MCART_5:17
for b1, b2, b3, b4, b5, b6, b7, b8 being set holds [:b1,b2,b3,b4,b5,b6,b7,b8:] = [:[:b1,b2,b3:],b4,b5,b6,b7,b8:]
proof end;

theorem Th18: :: MCART_5:18
for b1, b2, b3, b4, b5, b6, b7, b8 being set holds [:b1,b2,b3,b4,b5,b6,b7,b8:] = [:[:b1,b2:],b3,b4,b5,b6,b7,b8:]
proof end;

theorem Th19: :: MCART_5:19
for b1, b2, b3, b4, b5, b6, b7, b8 being set holds
( ( b1 <> {} & b2 <> {} & b3 <> {} & b4 <> {} & b5 <> {} & b6 <> {} & b7 <> {} & b8 <> {} ) iff [:b1,b2,b3,b4,b5,b6,b7,b8:] <> {} )
proof end;

theorem Th20: :: MCART_5:20
for b1, b2, b3, b4, b5, b6, b7, b8, b9, b10, b11, b12, b13, b14, b15, b16 being set holds
( b1 <> {} & b2 <> {} & b3 <> {} & b4 <> {} & b5 <> {} & b6 <> {} & b7 <> {} & b8 <> {} & [:b1,b2,b3,b4,b5,b6,b7,b8:] = [:b9,b10,b11,b12,b13,b14,b15,b16:] implies ( b1 = b9 & b2 = b10 & b3 = b11 & b4 = b12 & b5 = b13 & b6 = b14 & b7 = b15 & b8 = b16 ) )
proof end;

theorem Th21: :: MCART_5:21
for b1, b2, b3, b4, b5, b6, b7, b8, b9, b10, b11, b12, b13, b14, b15, b16 being set holds
( [:b1,b2,b3,b4,b5,b6,b7,b8:] <> {} & [:b1,b2,b3,b4,b5,b6,b7,b8:] = [:b9,b10,b11,b12,b13,b14,b15,b16:] implies ( b1 = b9 & b2 = b10 & b3 = b11 & b4 = b12 & b5 = b13 & b6 = b14 & b7 = b15 & b8 = b16 ) )
proof end;

theorem Th22: :: MCART_5:22
for b1, b2 being set holds
( [:b1,b1,b1,b1,b1,b1,b1,b1:] = [:b2,b2,b2,b2,b2,b2,b2,b2:] implies b1 = b2 )
proof end;

theorem Th23: :: MCART_5:23
for b1, b2, b3, b4, b5, b6, b7, b8 being set holds
( b1 <> {} & b2 <> {} & b3 <> {} & b4 <> {} & b5 <> {} & b6 <> {} & b7 <> {} & b8 <> {} implies for b9 being Element of [:b1,b2,b3,b4,b5,b6,b7,b8:] holds
ex b10 being Element of b1ex b11 being Element of b2ex b12 being Element of b3ex b13 being Element of b4ex b14 being Element of b5ex b15 being Element of b6ex b16 being Element of b7ex b17 being Element of b8 st b9 = [b10,b11,b12,b13,b14,b15,b16,b17] )
proof end;

definition
let c1, c2, c3, c4, c5, c6, c7, c8 be set ;
assume E11: ( c1 <> {} & c2 <> {} & c3 <> {} & c4 <> {} & c5 <> {} & c6 <> {} & c7 <> {} & c8 <> {} ) ;
let c9 be Element of [:c1,c2,c3,c4,c5,c6,c7,c8:];
func c9 `1 -> Element of a1 means :Def3: :: MCART_5:def 3
for b1, b2, b3, b4, b5, b6, b7, b8 being set holds
( a9 = [b1,b2,b3,b4,b5,b6,b7,b8] implies a10 = b1 );
existence
ex b1 being Element of c1 st
for b2, b3, b4, b5, b6, b7, b8, b9 being set holds
( c9 = [b2,b3,b4,b5,b6,b7,b8,b9] implies b1 = b2 )
proof end;
uniqueness
for b1, b2 being Element of c1 holds
( ( for b3, b4, b5, b6, b7, b8, b9, b10 being set holds
( c9 = [b3,b4,b5,b6,b7,b8,b9,b10] implies b1 = b3 ) ) & ( for b3, b4, b5, b6, b7, b8, b9, b10 being set holds
( c9 = [b3,b4,b5,b6,b7,b8,b9,b10] implies b2 = b3 ) ) implies b1 = b2 )
proof end;
func c9 `2 -> Element of a2 means :Def4: :: MCART_5:def 4
for b1, b2, b3, b4, b5, b6, b7, b8 being set holds
( a9 = [b1,b2,b3,b4,b5,b6,b7,b8] implies a10 = b2 );
existence
ex b1 being Element of c2 st
for b2, b3, b4, b5, b6, b7, b8, b9 being set holds
( c9 = [b2,b3,b4,b5,b6,b7,b8,b9] implies b1 = b3 )
proof end;
uniqueness
for b1, b2 being Element of c2 holds
( ( for b3, b4, b5, b6, b7, b8, b9, b10 being set holds
( c9 = [b3,b4,b5,b6,b7,b8,b9,b10] implies b1 = b4 ) ) & ( for b3, b4, b5, b6, b7, b8, b9, b10 being set holds
( c9 = [b3,b4,b5,b6,b7,b8,b9,b10] implies b2 = b4 ) ) implies b1 = b2 )
proof end;
func c9 `3 -> Element of a3 means :Def5: :: MCART_5:def 5
for b1, b2, b3, b4, b5, b6, b7, b8 being set holds
( a9 = [b1,b2,b3,b4,b5,b6,b7,b8] implies a10 = b3 );
existence
ex b1 being Element of c3 st
for b2, b3, b4, b5, b6, b7, b8, b9 being set holds
( c9 = [b2,b3,b4,b5,b6,b7,b8,b9] implies b1 = b4 )
proof end;
uniqueness
for b1, b2 being Element of c3 holds
( ( for b3, b4, b5, b6, b7, b8, b9, b10 being set holds
( c9 = [b3,b4,b5,b6,b7,b8,b9,b10] implies b1 = b5 ) ) & ( for b3, b4, b5, b6, b7, b8, b9, b10 being set holds
( c9 = [b3,b4,b5,b6,b7,b8,b9,b10] implies b2 = b5 ) ) implies b1 = b2 )
proof end;
func c9 `4 -> Element of a4 means :Def6: :: MCART_5:def 6
for b1, b2, b3, b4, b5, b6, b7, b8 being set holds
( a9 = [b1,b2,b3,b4,b5,b6,b7,b8] implies a10 = b4 );
existence
ex b1 being Element of c4 st
for b2, b3, b4, b5, b6, b7, b8, b9 being set holds
( c9 = [b2,b3,b4,b5,b6,b7,b8,b9] implies b1 = b5 )
proof end;
uniqueness
for b1, b2 being Element of c4 holds
( ( for b3, b4, b5, b6, b7, b8, b9, b10 being set holds
( c9 = [b3,b4,b5,b6,b7,b8,b9,b10] implies b1 = b6 ) ) & ( for b3, b4, b5, b6, b7, b8, b9, b10 being set holds
( c9 = [b3,b4,b5,b6,b7,b8,b9,b10] implies b2 = b6 ) ) implies b1 = b2 )
proof end;
func c9 `5 -> Element of a5 means :Def7: :: MCART_5:def 7
for b1, b2, b3, b4, b5, b6, b7, b8 being set holds
( a9 = [b1,b2,b3,b4,b5,b6,b7,b8] implies a10 = b5 );
existence
ex b1 being Element of c5 st
for b2, b3, b4, b5, b6, b7, b8, b9 being set holds
( c9 = [b2,b3,b4,b5,b6,b7,b8,b9] implies b1 = b6 )
proof end;
uniqueness
for b1, b2 being Element of c5 holds
( ( for b3, b4, b5, b6, b7, b8, b9, b10 being set holds
( c9 = [b3,b4,b5,b6,b7,b8,b9,b10] implies b1 = b7 ) ) & ( for b3, b4, b5, b6, b7, b8, b9, b10 being set holds
( c9 = [b3,b4,b5,b6,b7,b8,b9,b10] implies b2 = b7 ) ) implies b1 = b2 )
proof end;
func c9 `6 -> Element of a6 means :Def8: :: MCART_5:def 8
for b1, b2, b3, b4, b5, b6, b7, b8 being set holds
( a9 = [b1,b2,b3,b4,b5,b6,b7,b8] implies a10 = b6 );
existence
ex b1 being Element of c6 st
for b2, b3, b4, b5, b6, b7, b8, b9 being set holds
( c9 = [b2,b3,b4,b5,b6,b7,b8,b9] implies b1 = b7 )
proof end;
uniqueness
for b1, b2 being Element of c6 holds
( ( for b3, b4, b5, b6, b7, b8, b9, b10 being set holds
( c9 = [b3,b4,b5,b6,b7,b8,b9,b10] implies b1 = b8 ) ) & ( for b3, b4, b5, b6, b7, b8, b9, b10 being set holds
( c9 = [b3,b4,b5,b6,b7,b8,b9,b10] implies b2 = b8 ) ) implies b1 = b2 )
proof end;
func c9 `7 -> Element of a7 means :Def9: :: MCART_5:def 9
for b1, b2, b3, b4, b5, b6, b7, b8 being set holds
( a9 = [b1,b2,b3,b4,b5,b6,b7,b8] implies a10 = b7 );
existence
ex b1 being Element of c7 st
for b2, b3, b4, b5, b6, b7, b8, b9 being set holds
( c9 = [b2,b3,b4,b5,b6,b7,b8,b9] implies b1 = b8 )
proof end;
uniqueness
for b1, b2 being Element of c7 holds
( ( for b3, b4, b5, b6, b7, b8, b9, b10 being set holds
( c9 = [b3,b4,b5,b6,b7,b8,b9,b10] implies b1 = b9 ) ) & ( for b3, b4, b5, b6, b7, b8, b9, b10 being set holds
( c9 = [b3,b4,b5,b6,b7,b8,b9,b10] implies b2 = b9 ) ) implies b1 = b2 )
proof end;
func c9 `8 -> Element of a8 means :Def10: :: MCART_5:def 10
for b1, b2, b3, b4, b5, b6, b7, b8 being set holds
( a9 = [b1,b2,b3,b4,b5,b6,b7,b8] implies a10 = b8 );
existence
ex b1 being Element of c8 st
for b2, b3, b4, b5, b6, b7, b8, b9 being set holds
( c9 = [b2,b3,b4,b5,b6,b7,b8,b9] implies b1 = b9 )
proof end;
uniqueness
for b1, b2 being Element of c8 holds
( ( for b3, b4, b5, b6, b7, b8, b9, b10 being set holds
( c9 = [b3,b4,b5,b6,b7,b8,b9,b10] implies b1 = b10 ) ) & ( for b3, b4, b5, b6, b7, b8, b9, b10 being set holds
( c9 = [b3,b4,b5,b6,b7,b8,b9,b10] implies b2 = b10 ) ) implies b1 = b2 )
proof end;
end;

:: deftheorem Def3 defines `1 MCART_5:def 3 :
for b1, b2, b3, b4, b5, b6, b7, b8 being set holds
( b1 <> {} & b2 <> {} & b3 <> {} & b4 <> {} & b5 <> {} & b6 <> {} & b7 <> {} & b8 <> {} implies for b9 being Element of [:b1,b2,b3,b4,b5,b6,b7,b8:]
for b10 being Element of b1 holds
( b10 = b9 `1 iff for b11, b12, b13, b14, b15, b16, b17, b18 being set holds
( b9 = [b11,b12,b13,b14,b15,b16,b17,b18] implies b10 = b11 ) ) );

:: deftheorem Def4 defines `2 MCART_5:def 4 :
for b1, b2, b3, b4, b5, b6, b7, b8 being set holds
( b1 <> {} & b2 <> {} & b3 <> {} & b4 <> {} & b5 <> {} & b6 <> {} & b7 <> {} & b8 <> {} implies for b9 being Element of [:b1,b2,b3,b4,b5,b6,b7,b8:]
for b10 being Element of b2 holds
( b10 = b9 `2 iff for b11, b12, b13, b14, b15, b16, b17, b18 being set holds
( b9 = [b11,b12,b13,b14,b15,b16,b17,b18] implies b10 = b12 ) ) );

:: deftheorem Def5 defines `3 MCART_5:def 5 :
for b1, b2, b3, b4, b5, b6, b7, b8 being set holds
( b1 <> {} & b2 <> {} & b3 <> {} & b4 <> {} & b5 <> {} & b6 <> {} & b7 <> {} & b8 <> {} implies for b9 being Element of [:b1,b2,b3,b4,b5,b6,b7,b8:]
for b10 being Element of b3 holds
( b10 = b9 `3 iff for b11, b12, b13, b14, b15, b16, b17, b18 being set holds
( b9 = [b11,b12,b13,b14,b15,b16,b17,b18] implies b10 = b13 ) ) );

:: deftheorem Def6 defines `4 MCART_5:def 6 :
for b1, b2, b3, b4, b5, b6, b7, b8 being set holds
( b1 <> {} & b2 <> {} & b3 <> {} & b4 <> {} & b5 <> {} & b6 <> {} & b7 <> {} & b8 <> {} implies for b9 being Element of [:b1,b2,b3,b4,b5,b6,b7,b8:]
for b10 being Element of b4 holds
( b10 = b9 `4 iff for b11, b12, b13, b14, b15, b16, b17, b18 being set holds
( b9 = [b11,b12,b13,b14,b15,b16,b17,b18] implies b10 = b14 ) ) );

:: deftheorem Def7 defines `5 MCART_5:def 7 :
for b1, b2, b3, b4, b5, b6, b7, b8 being set holds
( b1 <> {} & b2 <> {} & b3 <> {} & b4 <> {} & b5 <> {} & b6 <> {} & b7 <> {} & b8 <> {} implies for b9 being Element of [:b1,b2,b3,b4,b5,b6,b7,b8:]
for b10 being Element of b5 holds
( b10 = b9 `5 iff for b11, b12, b13, b14, b15, b16, b17, b18 being set holds
( b9 = [b11,b12,b13,b14,b15,b16,b17,b18] implies b10 = b15 ) ) );

:: deftheorem Def8 defines `6 MCART_5:def 8 :
for b1, b2, b3, b4, b5, b6, b7, b8 being set holds
( b1 <> {} & b2 <> {} & b3 <> {} & b4 <> {} & b5 <> {} & b6 <> {} & b7 <> {} & b8 <> {} implies for b9 being Element of [:b1,b2,b3,b4,b5,b6,b7,b8:]
for b10 being Element of b6 holds
( b10 = b9 `6 iff for b11, b12, b13, b14, b15, b16, b17, b18 being set holds
( b9 = [b11,b12,b13,b14,b15,b16,b17,b18] implies b10 = b16 ) ) );

:: deftheorem Def9 defines `7 MCART_5:def 9 :
for b1, b2, b3, b4, b5, b6, b7, b8 being set holds
( b1 <> {} & b2 <> {} & b3 <> {} & b4 <> {} & b5 <> {} & b6 <> {} & b7 <> {} & b8 <> {} implies for b9 being Element of [:b1,b2,b3,b4,b5,b6,b7,b8:]
for b10 being Element of b7 holds
( b10 = b9 `7 iff for b11, b12, b13, b14, b15, b16, b17, b18 being set holds
( b9 = [b11,b12,b13,b14,b15,b16,b17,b18] implies b10 = b17 ) ) );

:: deftheorem Def10 defines `8 MCART_5:def 10 :
for b1, b2, b3, b4, b5, b6, b7, b8 being set holds
( b1 <> {} & b2 <> {} & b3 <> {} & b4 <> {} & b5 <> {} & b6 <> {} & b7 <> {} & b8 <> {} implies for b9 being Element of [:b1,b2,b3,b4,b5,b6,b7,b8:]
for b10 being Element of b8 holds
( b10 = b9 `8 iff for b11, b12, b13, b14, b15, b16, b17, b18 being set holds
( b9 = [b11,b12,b13,b14,b15,b16,b17,b18] implies b10 = b18 ) ) );

theorem Th24: :: MCART_5:24
for b1, b2, b3, b4, b5, b6, b7, b8 being set holds
( b1 <> {} & b2 <> {} & b3 <> {} & b4 <> {} & b5 <> {} & b6 <> {} & b7 <> {} & b8 <> {} implies for b9 being Element of [:b1,b2,b3,b4,b5,b6,b7,b8:]
for b10, b11, b12, b13, b14, b15, b16, b17 being set holds
( b9 = [b10,b11,b12,b13,b14,b15,b16,b17] implies ( b9 `1 = b10 & b9 `2 = b11 & b9 `3 = b12 & b9 `4 = b13 & b9 `5 = b14 & b9 `6 = b15 & b9 `7 = b16 & b9 `8 = b17 ) ) ) by Def3, Def4, Def5, Def6, Def7, Def8, Def9, Def10;

theorem Th25: :: MCART_5:25
for b1, b2, b3, b4, b5, b6, b7, b8 being set holds
( b1 <> {} & b2 <> {} & b3 <> {} & b4 <> {} & b5 <> {} & b6 <> {} & b7 <> {} & b8 <> {} implies for b9 being Element of [:b1,b2,b3,b4,b5,b6,b7,b8:] holds b9 = [(b9 `1 ),(b9 `2 ),(b9 `3 ),(b9 `4 ),(b9 `5 ),(b9 `6 ),(b9 `7 ),(b9 `8 )] )
proof end;

theorem Th26: :: MCART_5:26
for b1, b2, b3, b4, b5, b6, b7, b8 being set holds
( b1 <> {} & b2 <> {} & b3 <> {} & b4 <> {} & b5 <> {} & b6 <> {} & b7 <> {} & b8 <> {} implies for b9 being Element of [:b1,b2,b3,b4,b5,b6,b7,b8:] holds
( b9 `1 = ((((((b9 `1 ) `1 ) `1 ) `1 ) `1 ) `1 ) `1 & b9 `2 = ((((((b9 `1 ) `1 ) `1 ) `1 ) `1 ) `1 ) `2 & b9 `3 = (((((b9 `1 ) `1 ) `1 ) `1 ) `1 ) `2 & b9 `4 = ((((b9 `1 ) `1 ) `1 ) `1 ) `2 & b9 `5 = (((b9 `1 ) `1 ) `1 ) `2 & b9 `6 = ((b9 `1 ) `1 ) `2 & b9 `7 = (b9 `1 ) `2 & b9 `8 = b9 `2 ) )
proof end;

theorem Th27: :: MCART_5:27
for b1, b2, b3, b4, b5, b6, b7, b8 being set holds
( not ( not b1 c= [:b1,b2,b3,b4,b5,b6,b7,b8:] & not b1 c= [:b2,b3,b4,b5,b6,b7,b8,b1:] & not b1 c= [:b3,b4,b5,b6,b7,b8,b1,b2:] & not b1 c= [:b4,b5,b6,b7,b8,b1,b2,b3:] & not b1 c= [:b5,b6,b7,b8,b1,b2,b3,b4:] & not b1 c= [:b6,b7,b8,b1,b2,b3,b4,b5:] & not b1 c= [:b7,b8,b1,b2,b3,b4,b5,b6:] & not b1 c= [:b8,b1,b2,b3,b4,b5,b6,b7:] ) implies b1 = {} )
proof end;

theorem Th28: :: MCART_5:28
for b1, b2, b3, b4, b5, b6, b7, b8, b9, b10, b11, b12, b13, b14, b15, b16 being set holds
( [:b1,b2,b3,b4,b5,b6,b7,b8:] meets [:b9,b10,b11,b12,b13,b14,b15,b16:] implies ( b1 meets b9 & b2 meets b10 & b3 meets b11 & b4 meets b12 & b5 meets b13 & b6 meets b14 & b7 meets b15 & b8 meets b16 ) )
proof end;

theorem Th29: :: MCART_5:29
for b1, b2, b3, b4, b5, b6, b7, b8 being set holds [:{b1},{b2},{b3},{b4},{b5},{b6},{b7},{b8}:] = {[b1,b2,b3,b4,b5,b6,b7,b8]}
proof end;

theorem Th30: :: MCART_5:30
for b1, b2, b3, b4, b5, b6, b7, b8 being set
for b9 being Element of [:b1,b2,b3,b4,b5,b6,b7,b8:] holds
( b1 <> {} & b2 <> {} & b3 <> {} & b4 <> {} & b5 <> {} & b6 <> {} & b7 <> {} & b8 <> {} implies for b10, b11, b12, b13, b14, b15, b16, b17 being set holds
( b9 = [b10,b11,b12,b13,b14,b15,b16,b17] implies ( b9 `1 = b10 & b9 `2 = b11 & b9 `3 = b12 & b9 `4 = b13 & b9 `5 = b14 & b9 `6 = b15 & b9 `7 = b16 & b9 `8 = b17 ) ) ) by Def3, Def4, Def5, Def6, Def7, Def8, Def9, Def10;

theorem Th31: :: MCART_5:31
for b1, b2, b3, b4, b5, b6, b7, b8, b9 being set
for b10 being Element of [:b2,b3,b4,b5,b6,b7,b8,b9:] holds
( b2 <> {} & b3 <> {} & b4 <> {} & b5 <> {} & b6 <> {} & b7 <> {} & b8 <> {} & b9 <> {} & ( for b11 being Element of b2
for b12 being Element of b3
for b13 being Element of b4
for b14 being Element of b5
for b15 being Element of b6
for b16 being Element of b7
for b17 being Element of b8
for b18 being Element of b9 holds
( b10 = [b11,b12,b13,b14,b15,b16,b17,b18] implies b1 = b11 ) ) implies b1 = b10 `1 )
proof end;

theorem Th32: :: MCART_5:32
for b1, b2, b3, b4, b5, b6, b7, b8, b9 being set
for b10 being Element of [:b2,b3,b4,b5,b6,b7,b8,b9:] holds
( b2 <> {} & b3 <> {} & b4 <> {} & b5 <> {} & b6 <> {} & b7 <> {} & b8 <> {} & b9 <> {} & ( for b11 being Element of b2
for b12 being Element of b3
for b13 being Element of b4
for b14 being Element of b5
for b15 being Element of b6
for b16 being Element of b7
for b17 being Element of b8
for b18 being Element of b9 holds
( b10 = [b11,b12,b13,b14,b15,b16,b17,b18] implies b1 = b12 ) ) implies b1 = b10 `2 )
proof end;

theorem Th33: :: MCART_5:33
for b1, b2, b3, b4, b5, b6, b7, b8, b9 being set
for b10 being Element of [:b2,b3,b4,b5,b6,b7,b8,b9:] holds
( b2 <> {} & b3 <> {} & b4 <> {} & b5 <> {} & b6 <> {} & b7 <> {} & b8 <> {} & b9 <> {} & ( for b11 being Element of b2
for b12 being Element of b3
for b13 being Element of b4
for b14 being Element of b5
for b15 being Element of b6
for b16 being Element of b7
for b17 being Element of b8
for b18 being Element of b9 holds
( b10 = [b11,b12,b13,b14,b15,b16,b17,b18] implies b1 = b13 ) ) implies b1 = b10 `3 )
proof end;

theorem Th34: :: MCART_5:34
for b1, b2, b3, b4, b5, b6, b7, b8, b9 being set
for b10 being Element of [:b2,b3,b4,b5,b6,b7,b8,b9:] holds
( b2 <> {} & b3 <> {} & b4 <> {} & b5 <> {} & b6 <> {} & b7 <> {} & b8 <> {} & b9 <> {} & ( for b11 being Element of b2
for b12 being Element of b3
for b13 being Element of b4
for b14 being Element of b5
for b15 being Element of b6
for b16 being Element of b7
for b17 being Element of b8
for b18 being Element of b9 holds
( b10 = [b11,b12,b13,b14,b15,b16,b17,b18] implies b1 = b14 ) ) implies b1 = b10 `4 )
proof end;

theorem Th35: :: MCART_5:35
for b1, b2, b3, b4, b5, b6, b7, b8, b9 being set
for b10 being Element of [:b2,b3,b4,b5,b6,b7,b8,b9:] holds
( b2 <> {} & b3 <> {} & b4 <> {} & b5 <> {} & b6 <> {} & b7 <> {} & b8 <> {} & b9 <> {} & ( for b11 being Element of b2
for b12 being Element of b3
for b13 being Element of b4
for b14 being Element of b5
for b15 being Element of b6
for b16 being Element of b7
for b17 being Element of b8
for b18 being Element of b9 holds
( b10 = [b11,b12,b13,b14,b15,b16,b17,b18] implies b1 = b15 ) ) implies b1 = b10 `5 )
proof end;

theorem Th36: :: MCART_5:36
for b1, b2, b3, b4, b5, b6, b7, b8, b9 being set
for b10 being Element of [:b2,b3,b4,b5,b6,b7,b8,b9:] holds
( b2 <> {} & b3 <> {} & b4 <> {} & b5 <> {} & b6 <> {} & b7 <> {} & b8 <> {} & b9 <> {} & ( for b11 being Element of b2
for b12 being Element of b3
for b13 being Element of b4
for b14 being Element of b5
for b15 being Element of b6
for b16 being Element of b7
for b17 being Element of b8
for b18 being Element of b9 holds
( b10 = [b11,b12,b13,b14,b15,b16,b17,b18] implies b1 = b16 ) ) implies b1 = b10 `6 )
proof end;

theorem Th37: :: MCART_5:37
for b1, b2, b3, b4, b5, b6, b7, b8, b9 being set
for b10 being Element of [:b2,b3,b4,b5,b6,b7,b8,b9:] holds
( b2 <> {} & b3 <> {} & b4 <> {} & b5 <> {} & b6 <> {} & b7 <> {} & b8 <> {} & b9 <> {} & ( for b11 being Element of b2
for b12 being Element of b3
for b13 being Element of b4
for b14 being Element of b5
for b15 being Element of b6
for b16 being Element of b7
for b17 being Element of b8
for b18 being Element of b9 holds
( b10 = [b11,b12,b13,b14,b15,b16,b17,b18] implies b1 = b17 ) ) implies b1 = b10 `7 )
proof end;

theorem Th38: :: MCART_5:38
for b1, b2, b3, b4, b5, b6, b7, b8, b9 being set
for b10 being Element of [:b2,b3,b4,b5,b6,b7,b8,b9:] holds
( b2 <> {} & b3 <> {} & b4 <> {} & b5 <> {} & b6 <> {} & b7 <> {} & b8 <> {} & b9 <> {} & ( for b11 being Element of b2
for b12 being Element of b3
for b13 being Element of b4
for b14 being Element of b5
for b15 being Element of b6
for b16 being Element of b7
for b17 being Element of b8
for b18 being Element of b9 holds
( b10 = [b11,b12,b13,b14,b15,b16,b17,b18] implies b1 = b18 ) ) implies b1 = b10 `8 )
proof end;

theorem Th39: :: MCART_5:39
for b1, b2, b3, b4, b5, b6, b7, b8, b9 being set holds
not ( b1 in [:b2,b3,b4,b5,b6,b7,b8,b9:] & ( for b10, b11, b12, b13, b14, b15, b16, b17 being set holds
not ( b10 in b2 & b11 in b3 & b12 in b4 & b13 in b5 & b14 in b6 & b15 in b7 & b16 in b8 & b17 in b9 & b1 = [b10,b11,b12,b13,b14,b15,b16,b17] ) ) )
proof end;

theorem Th40: :: MCART_5:40
for b1, b2, b3, b4, b5, b6, b7, b8, b9, b10, b11, b12, b13, b14, b15, b16 being set holds
( [b1,b2,b3,b4,b5,b6,b7,b8] in [:b9,b10,b11,b12,b13,b14,b15,b16:] iff ( b1 in b9 & b2 in b10 & b3 in b11 & b4 in b12 & b5 in b13 & b6 in b14 & b7 in b15 & b8 in b16 ) )
proof end;

theorem Th41: :: MCART_5:41
for b1, b2, b3, b4, b5, b6, b7, b8, b9 being set holds
( ( for b10 being set holds
( b10 in b9 iff ex b11, b12, b13, b14, b15, b16, b17, b18 being set st
( b11 in b1 & b12 in b2 & b13 in b3 & b14 in b4 & b15 in b5 & b16 in b6 & b17 in b7 & b18 in b8 & b10 = [b11,b12,b13,b14,b15,b16,b17,b18] ) ) ) implies b9 = [:b1,b2,b3,b4,b5,b6,b7,b8:] )
proof end;

theorem Th42: :: MCART_5:42
for b1, b2, b3, b4, b5, b6, b7, b8, b9, b10, b11, b12, b13, b14, b15, b16 being set holds
( b1 <> {} & b2 <> {} & b3 <> {} & b4 <> {} & b5 <> {} & b6 <> {} & b7 <> {} & b8 <> {} & b9 <> {} & b10 <> {} & b11 <> {} & b12 <> {} & b13 <> {} & b14 <> {} & b15 <> {} & b16 <> {} implies for b17 being Element of [:b1,b2,b3,b4,b5,b6,b7,b8:]
for b18 being Element of [:b9,b10,b11,b12,b13,b14,b15,b16:] holds
( b17 = b18 implies ( b17 `1 = b18 `1 & b17 `2 = b18 `2 & b17 `3 = b18 `3 & b17 `4 = b18 `4 & b17 `5 = b18 `5 & b17 `6 = b18 `6 & b17 `7 = b18 `7 & b17 `8 = b18 `8 ) ) )
proof end;

theorem Th43: :: MCART_5:43
for b1, b2, b3, b4, b5, b6, b7, b8 being set
for b9 being Subset of b1
for b10 being Subset of b2
for b11 being Subset of b3
for b12 being Subset of b4
for b13 being Subset of b5
for b14 being Subset of b6
for b15 being Subset of b7
for b16 being Subset of b8
for b17 being Element of [:b1,b2,b3,b4,b5,b6,b7,b8:] holds
( b17 in [:b9,b10,b11,b12,b13,b14,b15,b16:] implies ( b17 `1 in b9 & b17 `2 in b10 & b17 `3 in b11 & b17 `4 in b12 & b17 `5 in b13 & b17 `6 in b14 & b17 `7 in b15 & b17 `8 in b16 ) )
proof end;

theorem Th44: :: MCART_5:44
for b1, b2, b3, b4, b5, b6, b7, b8, b9, b10, b11, b12, b13, b14, b15, b16 being set holds
( b1 c= b9 & b2 c= b10 & b3 c= b11 & b4 c= b12 & b5 c= b13 & b6 c= b14 & b7 c= b15 & b8 c= b16 implies [:b1,b2,b3,b4,b5,b6,b7,b8:] c= [:b9,b10,b11,b12,b13,b14,b15,b16:] )
proof end;

theorem Th45: :: MCART_5:45
for b1, b2, b3, b4, b5, b6, b7, b8 being set
for b9 being Subset of b1
for b10 being Subset of b2
for b11 being Subset of b3
for b12 being Subset of b4
for b13 being Subset of b5
for b14 being Subset of b6
for b15 being Subset of b7
for b16 being Subset of b8 holds
[:b9,b10,b11,b12,b13,b14,b15,b16:] is Subset of [:b1,b2,b3,b4,b5,b6,b7,b8:] by Th44;