:: PZFMISC1 semantic presentation

theorem Th1: :: PZFMISC1:1
for b1, b2, b3 being set
for b4 being ManySortedSet of b1 holds
( b2 in b1 implies dom (b4 +* (b2 .--> b3)) = b1 )
proof end;

theorem Th2: :: PZFMISC1:2
for b1 being Function holds
( b1 = {} implies b1 is ManySortedSet of {} ) by PBOOLE:def 3, RELAT_1:60;

theorem Th3: :: PZFMISC1:3
for b1 being set holds
( not b1 is empty implies for b2 being ManySortedSet of b1 holds
not ( b2 is empty-yielding & b2 is non-empty ) )
proof end;

definition
let c1 be set ;
let c2 be ManySortedSet of c1;
func {c2} -> ManySortedSet of a1 means :Def1: :: PZFMISC1:def 1
for b1 being set holds
( b1 in a1 implies a3 . b1 = {(a2 . b1)} );
existence
ex b1 being ManySortedSet of c1 st
for b2 being set holds
( b2 in c1 implies b1 . b2 = {(c2 . b2)} )
proof end;
uniqueness
for b1, b2 being ManySortedSet of c1 holds
( ( for b3 being set holds
( b3 in c1 implies b1 . b3 = {(c2 . b3)} ) ) & ( for b3 being set holds
( b3 in c1 implies b2 . b3 = {(c2 . b3)} ) ) implies b1 = b2 )
proof end;
end;

:: deftheorem Def1 defines { PZFMISC1:def 1 :
for b1 being set
for b2, b3 being ManySortedSet of b1 holds
( b3 = {b2} iff for b4 being set holds
( b4 in b1 implies b3 . b4 = {(b2 . b4)} ) );

registration
let c1 be set ;
let c2 be ManySortedSet of c1;
cluster {a2} -> V2 locally-finite ;
coherence
( {c2} is non-empty & {c2} is locally-finite )
proof end;
end;

definition
let c1 be set ;
let c2, c3 be ManySortedSet of c1;
func {c2,c3} -> ManySortedSet of a1 means :Def2: :: PZFMISC1:def 2
for b1 being set holds
( b1 in a1 implies a4 . b1 = {(a2 . b1),(a3 . b1)} );
existence
ex b1 being ManySortedSet of c1 st
for b2 being set holds
( b2 in c1 implies b1 . b2 = {(c2 . b2),(c3 . b2)} )
proof end;
uniqueness
for b1, b2 being ManySortedSet of c1 holds
( ( for b3 being set holds
( b3 in c1 implies b1 . b3 = {(c2 . b3),(c3 . b3)} ) ) & ( for b3 being set holds
( b3 in c1 implies b2 . b3 = {(c2 . b3),(c3 . b3)} ) ) implies b1 = b2 )
proof end;
commutativity
for b1, b2, b3 being ManySortedSet of c1 holds
( ( for b4 being set holds
( b4 in c1 implies b1 . b4 = {(b2 . b4),(b3 . b4)} ) ) implies for b4 being set holds
( b4 in c1 implies b1 . b4 = {(b3 . b4),(b2 . b4)} ) )
;
end;

:: deftheorem Def2 defines { PZFMISC1:def 2 :
for b1 being set
for b2, b3, b4 being ManySortedSet of b1 holds
( b4 = {b2,b3} iff for b5 being set holds
( b5 in b1 implies b4 . b5 = {(b2 . b5),(b3 . b5)} ) );

registration
let c1 be set ;
let c2, c3 be ManySortedSet of c1;
cluster {a2,a3} -> V2 locally-finite ;
coherence
( {c2,c3} is non-empty & {c2,c3} is locally-finite )
proof end;
end;

theorem Th4: :: PZFMISC1:4
for b1 being set
for b2, b3 being ManySortedSet of b1 holds
( b2 = {b3} iff for b4 being ManySortedSet of b1 holds
( b4 in b2 iff b4 = b3 ) )
proof end;

theorem Th5: :: PZFMISC1:5
for b1 being set
for b2, b3, b4 being ManySortedSet of b1 holds
( ( for b5 being ManySortedSet of b1 holds
( b5 in b2 iff ( b5 = b3 or b5 = b4 ) ) ) implies b2 = {b3,b4} )
proof end;

theorem Th6: :: PZFMISC1:6
for b1 being set
for b2, b3, b4 being ManySortedSet of b1 holds
( b2 = {b3,b4} implies for b5 being ManySortedSet of b1 holds
( ( b5 = b3 or b5 = b4 ) implies b5 in b2 ) )
proof end;

theorem Th7: :: PZFMISC1:7
canceled;

theorem Th8: :: PZFMISC1:8
for b1 being set
for b2, b3 being ManySortedSet of b1 holds
( b2 in {b3} implies b2 = b3 )
proof end;

theorem Th9: :: PZFMISC1:9
for b1 being set
for b2 being ManySortedSet of b1 holds b2 in {b2}
proof end;

theorem Th10: :: PZFMISC1:10
for b1 being set
for b2, b3, b4 being ManySortedSet of b1 holds
( ( b2 = b3 or b2 = b4 ) implies b2 in {b3,b4} )
proof end;

theorem Th11: :: PZFMISC1:11
for b1 being set
for b2, b3 being ManySortedSet of b1 holds {b2} \/ {b3} = {b2,b3}
proof end;

theorem Th12: :: PZFMISC1:12
for b1 being set
for b2 being ManySortedSet of b1 holds {b2,b2} = {b2}
proof end;

theorem Th13: :: PZFMISC1:13
canceled;

theorem Th14: :: PZFMISC1:14
for b1 being set
for b2, b3 being ManySortedSet of b1 holds
( {b2} c= {b3} implies b2 = b3 )
proof end;

theorem Th15: :: PZFMISC1:15
for b1 being set
for b2, b3 being ManySortedSet of b1 holds
( {b2} = {b3} implies b2 = b3 )
proof end;

theorem Th16: :: PZFMISC1:16
for b1 being set
for b2, b3, b4 being ManySortedSet of b1 holds
( {b2} = {b3,b4} implies ( b2 = b3 & b2 = b4 ) )
proof end;

theorem Th17: :: PZFMISC1:17
for b1 being set
for b2, b3, b4 being ManySortedSet of b1 holds
( {b2} = {b3,b4} implies b3 = b4 )
proof end;

theorem Th18: :: PZFMISC1:18
for b1 being set
for b2, b3 being ManySortedSet of b1 holds
( {b2} c= {b2,b3} & {b3} c= {b2,b3} )
proof end;

theorem Th19: :: PZFMISC1:19
for b1 being set
for b2, b3 being ManySortedSet of b1 holds
( ( {b2} \/ {b3} = {b2} or {b2} \/ {b3} = {b3} ) implies b2 = b3 )
proof end;

theorem Th20: :: PZFMISC1:20
for b1 being set
for b2, b3 being ManySortedSet of b1 holds {b2} \/ {b2,b3} = {b2,b3}
proof end;

theorem Th21: :: PZFMISC1:21
canceled;

theorem Th22: :: PZFMISC1:22
for b1 being set
for b2, b3 being ManySortedSet of b1 holds
not ( not b1 is empty & {b2} /\ {b3} = [0] b1 & not b2 <> b3 )
proof end;

theorem Th23: :: PZFMISC1:23
for b1 being set
for b2, b3 being ManySortedSet of b1 holds
( ( {b2} /\ {b3} = {b2} or {b2} /\ {b3} = {b3} ) implies b2 = b3 )
proof end;

theorem Th24: :: PZFMISC1:24
for b1 being set
for b2, b3 being ManySortedSet of b1 holds
( {b2} /\ {b2,b3} = {b2} & {b3} /\ {b2,b3} = {b3} )
proof end;

theorem Th25: :: PZFMISC1:25
for b1 being set
for b2, b3 being ManySortedSet of b1 holds
not ( not b1 is empty & {b2} \ {b3} = {b2} & not b2 <> b3 )
proof end;

theorem Th26: :: PZFMISC1:26
for b1 being set
for b2, b3 being ManySortedSet of b1 holds
( {b2} \ {b3} = [0] b1 implies b2 = b3 )
proof end;

theorem Th27: :: PZFMISC1:27
for b1 being set
for b2, b3 being ManySortedSet of b1 holds
( {b2} \ {b2,b3} = [0] b1 & {b3} \ {b2,b3} = [0] b1 )
proof end;

theorem Th28: :: PZFMISC1:28
for b1 being set
for b2, b3 being ManySortedSet of b1 holds
( {b2} c= {b3} implies {b2} = {b3} )
proof end;

theorem Th29: :: PZFMISC1:29
for b1 being set
for b2, b3, b4 being ManySortedSet of b1 holds
( {b2,b3} c= {b4} implies ( b2 = b4 & b3 = b4 ) )
proof end;

theorem Th30: :: PZFMISC1:30
for b1 being set
for b2, b3, b4 being ManySortedSet of b1 holds
( {b2,b3} c= {b4} implies {b2,b3} = {b4} )
proof end;

theorem Th31: :: PZFMISC1:31
for b1 being set
for b2 being ManySortedSet of b1 holds bool {b2} = {([0] b1),{b2}}
proof end;

theorem Th32: :: PZFMISC1:32
for b1 being set
for b2 being ManySortedSet of b1 holds {b2} c= bool b2
proof end;

theorem Th33: :: PZFMISC1:33
for b1 being set
for b2 being ManySortedSet of b1 holds union {b2} = b2
proof end;

theorem Th34: :: PZFMISC1:34
for b1 being set
for b2, b3 being ManySortedSet of b1 holds union {{b2},{b3}} = {b2,b3}
proof end;

theorem Th35: :: PZFMISC1:35
for b1 being set
for b2, b3 being ManySortedSet of b1 holds union {b2,b3} = b2 \/ b3
proof end;

theorem Th36: :: PZFMISC1:36
for b1 being set
for b2, b3 being ManySortedSet of b1 holds
( {b2} c= b3 iff b2 in b3 )
proof end;

theorem Th37: :: PZFMISC1:37
for b1 being set
for b2, b3, b4 being ManySortedSet of b1 holds
( {b2,b3} c= b4 iff ( b2 in b4 & b3 in b4 ) )
proof end;

theorem Th38: :: PZFMISC1:38
for b1 being set
for b2, b3, b4 being ManySortedSet of b1 holds
( not ( not b2 = [0] b1 & not b2 = {b3} & not b2 = {b4} & not b2 = {b3,b4} ) implies b2 c= {b3,b4} )
proof end;

theorem Th39: :: PZFMISC1:39
for b1 being set
for b2, b3, b4 being ManySortedSet of b1 holds
( ( b2 in b3 or b2 = b4 ) implies b2 in b3 \/ {b4} )
proof end;

theorem Th40: :: PZFMISC1:40
for b1 being set
for b2, b3, b4 being ManySortedSet of b1 holds
( b2 \/ {b3} c= b4 iff ( b3 in b4 & b2 c= b4 ) )
proof end;

theorem Th41: :: PZFMISC1:41
for b1 being set
for b2, b3 being ManySortedSet of b1 holds
( {b2} \/ b3 = b3 implies b2 in b3 )
proof end;

theorem Th42: :: PZFMISC1:42
for b1 being set
for b2, b3 being ManySortedSet of b1 holds
( b2 in b3 implies {b2} \/ b3 = b3 )
proof end;

theorem Th43: :: PZFMISC1:43
for b1 being set
for b2, b3, b4 being ManySortedSet of b1 holds
( {b2,b3} \/ b4 = b4 iff ( b2 in b4 & b3 in b4 ) )
proof end;

theorem Th44: :: PZFMISC1:44
for b1 being set
for b2, b3 being ManySortedSet of b1 holds
not ( not b1 is empty & not {b2} \/ b3 <> [0] b1 )
proof end;

theorem Th45: :: PZFMISC1:45
for b1 being set
for b2, b3, b4 being ManySortedSet of b1 holds
not ( not b1 is empty & not {b2,b3} \/ b4 <> [0] b1 )
proof end;

theorem Th46: :: PZFMISC1:46
for b1 being set
for b2, b3 being ManySortedSet of b1 holds
( b2 /\ {b3} = {b3} implies b3 in b2 )
proof end;

theorem Th47: :: PZFMISC1:47
for b1 being set
for b2, b3 being ManySortedSet of b1 holds
( b2 in b3 implies b3 /\ {b2} = {b2} )
proof end;

theorem Th48: :: PZFMISC1:48
for b1 being set
for b2, b3, b4 being ManySortedSet of b1 holds
( ( b2 in b3 & b4 in b3 ) iff {b2,b4} /\ b3 = {b2,b4} )
proof end;

theorem Th49: :: PZFMISC1:49
for b1 being set
for b2, b3 being ManySortedSet of b1 holds
not ( not b1 is empty & {b2} /\ b3 = [0] b1 & b2 in b3 )
proof end;

theorem Th50: :: PZFMISC1:50
for b1 being set
for b2, b3, b4 being ManySortedSet of b1 holds
( not b1 is empty & {b2,b3} /\ b4 = [0] b1 implies ( not b2 in b4 & not b3 in b4 ) )
proof end;

theorem Th51: :: PZFMISC1:51
for b1 being set
for b2, b3, b4 being ManySortedSet of b1 holds
( b2 in b3 \ {b4} implies b2 in b3 )
proof end;

theorem Th52: :: PZFMISC1:52
for b1 being set
for b2, b3, b4 being ManySortedSet of b1 holds
not ( not b1 is empty & b2 in b3 \ {b4} & not b2 <> b4 )
proof end;

theorem Th53: :: PZFMISC1:53
for b1 being set
for b2, b3 being ManySortedSet of b1 holds
not ( not b1 is empty & b2 \ {b3} = b2 & b3 in b2 )
proof end;

theorem Th54: :: PZFMISC1:54
for b1 being set
for b2, b3 being ManySortedSet of b1 holds
not ( not b1 is empty & {b2} \ b3 = {b2} & b2 in b3 )
proof end;

theorem Th55: :: PZFMISC1:55
for b1 being set
for b2, b3 being ManySortedSet of b1 holds
( {b2} \ b3 = [0] b1 iff b2 in b3 )
proof end;

theorem Th56: :: PZFMISC1:56
for b1 being set
for b2, b3, b4 being ManySortedSet of b1 holds
not ( not b1 is empty & {b2,b3} \ b4 = {b2} & b2 in b4 )
proof end;

theorem Th57: :: PZFMISC1:57
canceled;

theorem Th58: :: PZFMISC1:58
for b1 being set
for b2, b3, b4 being ManySortedSet of b1 holds
( not b1 is empty & {b2,b3} \ b4 = {b2,b3} implies ( not b2 in b4 & not b3 in b4 ) )
proof end;

theorem Th59: :: PZFMISC1:59
for b1 being set
for b2, b3, b4 being ManySortedSet of b1 holds
( {b2,b3} \ b4 = [0] b1 iff ( b2 in b4 & b3 in b4 ) )
proof end;

theorem Th60: :: PZFMISC1:60
for b1 being set
for b2, b3, b4 being ManySortedSet of b1 holds
( not ( not b2 = [0] b1 & not b2 = {b3} & not b2 = {b4} & not b2 = {b3,b4} ) implies b2 \ {b3,b4} = [0] b1 )
proof end;

theorem Th61: :: PZFMISC1:61
for b1 being set
for b2, b3 being ManySortedSet of b1 holds
( ( b2 = [0] b1 or b3 = [0] b1 ) implies [|b2,b3|] = [0] b1 )
proof end;

theorem Th62: :: PZFMISC1:62
for b1 being set
for b2, b3 being ManySortedSet of b1 holds
( b2 is non-empty & b3 is non-empty & [|b2,b3|] = [|b3,b2|] implies b2 = b3 )
proof end;

theorem Th63: :: PZFMISC1:63
for b1 being set
for b2, b3 being ManySortedSet of b1 holds
( [|b2,b2|] = [|b3,b3|] implies b2 = b3 )
proof end;

theorem Th64: :: PZFMISC1:64
for b1 being set
for b2, b3, b4 being ManySortedSet of b1 holds
( b2 is non-empty & ( [|b3,b2|] c= [|b4,b2|] or [|b2,b3|] c= [|b2,b4|] ) implies b3 c= b4 )
proof end;

theorem Th65: :: PZFMISC1:65
for b1 being set
for b2, b3, b4 being ManySortedSet of b1 holds
( b2 c= b3 implies ( [|b2,b4|] c= [|b3,b4|] & [|b4,b2|] c= [|b4,b3|] ) )
proof end;

theorem Th66: :: PZFMISC1:66
for b1 being set
for b2, b3, b4, b5 being ManySortedSet of b1 holds
( b2 c= b3 & b4 c= b5 implies [|b2,b4|] c= [|b3,b5|] )
proof end;

theorem Th67: :: PZFMISC1:67
for b1 being set
for b2, b3, b4 being ManySortedSet of b1 holds
( [|(b2 \/ b3),b4|] = [|b2,b4|] \/ [|b3,b4|] & [|b4,(b2 \/ b3)|] = [|b4,b2|] \/ [|b4,b3|] )
proof end;

theorem Th68: :: PZFMISC1:68
for b1 being set
for b2, b3, b4, b5 being ManySortedSet of b1 holds [|(b2 \/ b3),(b4 \/ b5)|] = (([|b2,b4|] \/ [|b2,b5|]) \/ [|b3,b4|]) \/ [|b3,b5|]
proof end;

theorem Th69: :: PZFMISC1:69
for b1 being set
for b2, b3, b4 being ManySortedSet of b1 holds
( [|(b2 /\ b3),b4|] = [|b2,b4|] /\ [|b3,b4|] & [|b4,(b2 /\ b3)|] = [|b4,b2|] /\ [|b4,b3|] )
proof end;

theorem Th70: :: PZFMISC1:70
for b1 being set
for b2, b3, b4, b5 being ManySortedSet of b1 holds [|(b2 /\ b3),(b4 /\ b5)|] = [|b2,b4|] /\ [|b3,b5|]
proof end;

theorem Th71: :: PZFMISC1:71
for b1 being set
for b2, b3, b4, b5 being ManySortedSet of b1 holds
( b2 c= b3 & b4 c= b5 implies [|b2,b5|] /\ [|b3,b4|] = [|b2,b4|] )
proof end;

theorem Th72: :: PZFMISC1:72
for b1 being set
for b2, b3, b4 being ManySortedSet of b1 holds
( [|(b2 \ b3),b4|] = [|b2,b4|] \ [|b3,b4|] & [|b4,(b2 \ b3)|] = [|b4,b2|] \ [|b4,b3|] )
proof end;

theorem Th73: :: PZFMISC1:73
for b1 being set
for b2, b3, b4, b5 being ManySortedSet of b1 holds [|b2,b3|] \ [|b4,b5|] = [|(b2 \ b4),b3|] \/ [|b2,(b3 \ b5)|]
proof end;

theorem Th74: :: PZFMISC1:74
for b1 being set
for b2, b3, b4, b5 being ManySortedSet of b1 holds
( ( b2 /\ b3 = [0] b1 or b4 /\ b5 = [0] b1 ) implies [|b2,b4|] /\ [|b3,b5|] = [0] b1 )
proof end;

theorem Th75: :: PZFMISC1:75
for b1 being set
for b2, b3 being ManySortedSet of b1 holds
( b2 is non-empty implies ( [|{b3},b2|] is non-empty & [|b2,{b3}|] is non-empty ) )
proof end;

theorem Th76: :: PZFMISC1:76
for b1 being set
for b2, b3, b4 being ManySortedSet of b1 holds
( [|{b2,b3},b4|] = [|{b2},b4|] \/ [|{b3},b4|] & [|b4,{b2,b3}|] = [|b4,{b2}|] \/ [|b4,{b3}|] )
proof end;

theorem Th77: :: PZFMISC1:77
for b1 being set
for b2, b3, b4, b5 being ManySortedSet of b1 holds
( b2 is non-empty & b3 is non-empty & [|b2,b3|] = [|b4,b5|] implies ( b2 = b4 & b3 = b5 ) )
proof end;

theorem Th78: :: PZFMISC1:78
for b1 being set
for b2, b3 being ManySortedSet of b1 holds
( ( b2 c= [|b2,b3|] or b2 c= [|b3,b2|] ) implies b2 = [0] b1 )
proof end;

theorem Th79: :: PZFMISC1:79
for b1 being set
for b2, b3, b4, b5, b6 being ManySortedSet of b1 holds
( b2 in [|b3,b4|] & b2 in [|b5,b6|] implies b2 in [|(b3 /\ b5),(b4 /\ b6)|] )
proof end;

theorem Th80: :: PZFMISC1:80
for b1 being set
for b2, b3, b4, b5 being ManySortedSet of b1 holds
( [|b2,b3|] c= [|b4,b5|] & [|b2,b3|] is non-empty implies ( b2 c= b4 & b3 c= b5 ) )
proof end;

theorem Th81: :: PZFMISC1:81
for b1 being set
for b2, b3 being ManySortedSet of b1 holds
( b2 c= b3 implies [|b2,b2|] c= [|b3,b3|] )
proof end;

theorem Th82: :: PZFMISC1:82
for b1 being set
for b2, b3 being ManySortedSet of b1 holds
( b2 /\ b3 = [0] b1 implies [|b2,b3|] /\ [|b3,b2|] = [0] b1 )
proof end;

theorem Th83: :: PZFMISC1:83
for b1 being set
for b2, b3, b4, b5 being ManySortedSet of b1 holds
( b2 is non-empty & ( [|b2,b3|] c= [|b4,b5|] or [|b3,b2|] c= [|b5,b4|] ) implies b3 c= b5 )
proof end;

theorem Th84: :: PZFMISC1:84
for b1 being set
for b2, b3, b4, b5, b6, b7 being ManySortedSet of b1 holds
( b2 c= [|b3,b4|] & b5 c= [|b6,b7|] implies b2 \/ b5 c= [|(b3 \/ b6),(b4 \/ b7)|] )
proof end;

definition
let c1 be set ;
let c2, c3 be ManySortedSet of c1;
pred c2 is_transformable_to c3 means :: PZFMISC1:def 3
for b1 being set holds
( b1 in a1 & a3 . b1 = {} implies a2 . b1 = {} );
reflexivity
for b1 being ManySortedSet of c1
for b2 being set holds
( b2 in c1 & b1 . b2 = {} implies b1 . b2 = {} )
;
end;

:: deftheorem Def3 defines is_transformable_to PZFMISC1:def 3 :
for b1 being set
for b2, b3 being ManySortedSet of b1 holds
( b2 is_transformable_to b3 iff for b4 being set holds
( b4 in b1 & b3 . b4 = {} implies b2 . b4 = {} ) );