let a, b, c, d be Real; :: thesis: for f1, f2 being FinSequence of ()
for p0, p1, p01, p10 being Point of () st a < b & c < d & p0 = |[a,c]| & p1 = |[b,d]| & p01 = |[a,d]| & p10 = |[b,c]| & f1 = <*p0,p01,p1*> & f2 = <*p0,p10,p1*> holds
( f1 is being_S-Seq & L~ f1 = (LSeg (p0,p01)) \/ (LSeg (p01,p1)) & f2 is being_S-Seq & L~ f2 = (LSeg (p0,p10)) \/ (LSeg (p10,p1)) & rectangle (a,b,c,d) = (L~ f1) \/ (L~ f2) & (L~ f1) /\ (L~ f2) = {p0,p1} & f1 /. 1 = p0 & f1 /. (len f1) = p1 & f2 /. 1 = p0 & f2 /. (len f2) = p1 )

let f1, f2 be FinSequence of (); :: thesis: for p0, p1, p01, p10 being Point of () st a < b & c < d & p0 = |[a,c]| & p1 = |[b,d]| & p01 = |[a,d]| & p10 = |[b,c]| & f1 = <*p0,p01,p1*> & f2 = <*p0,p10,p1*> holds
( f1 is being_S-Seq & L~ f1 = (LSeg (p0,p01)) \/ (LSeg (p01,p1)) & f2 is being_S-Seq & L~ f2 = (LSeg (p0,p10)) \/ (LSeg (p10,p1)) & rectangle (a,b,c,d) = (L~ f1) \/ (L~ f2) & (L~ f1) /\ (L~ f2) = {p0,p1} & f1 /. 1 = p0 & f1 /. (len f1) = p1 & f2 /. 1 = p0 & f2 /. (len f2) = p1 )

let p0, p1, p01, p10 be Point of (); :: thesis: ( a < b & c < d & p0 = |[a,c]| & p1 = |[b,d]| & p01 = |[a,d]| & p10 = |[b,c]| & f1 = <*p0,p01,p1*> & f2 = <*p0,p10,p1*> implies ( f1 is being_S-Seq & L~ f1 = (LSeg (p0,p01)) \/ (LSeg (p01,p1)) & f2 is being_S-Seq & L~ f2 = (LSeg (p0,p10)) \/ (LSeg (p10,p1)) & rectangle (a,b,c,d) = (L~ f1) \/ (L~ f2) & (L~ f1) /\ (L~ f2) = {p0,p1} & f1 /. 1 = p0 & f1 /. (len f1) = p1 & f2 /. 1 = p0 & f2 /. (len f2) = p1 ) )
assume that
A1: a < b and
A2: c < d and
A3: p0 = |[a,c]| and
A4: p1 = |[b,d]| and
A5: p01 = |[a,d]| and
A6: p10 = |[b,c]| and
A7: f1 = <*p0,p01,p1*> and
A8: f2 = <*p0,p10,p1*> ; :: thesis: ( f1 is being_S-Seq & L~ f1 = (LSeg (p0,p01)) \/ (LSeg (p01,p1)) & f2 is being_S-Seq & L~ f2 = (LSeg (p0,p10)) \/ (LSeg (p10,p1)) & rectangle (a,b,c,d) = (L~ f1) \/ (L~ f2) & (L~ f1) /\ (L~ f2) = {p0,p1} & f1 /. 1 = p0 & f1 /. (len f1) = p1 & f2 /. 1 = p0 & f2 /. (len f2) = p1 )
set P = rectangle (a,b,c,d);
set L1 = { p where p is Point of () : ( p `1 = a & p `2 <= d & p `2 >= c ) } ;
set L2 = { p where p is Point of () : ( p `1 <= b & p `1 >= a & p `2 = d ) } ;
set L3 = { p where p is Point of () : ( p `1 <= b & p `1 >= a & p `2 = c ) } ;
set L4 = { p where p is Point of () : ( p `1 = b & p `2 <= d & p `2 >= c ) } ;
A9: p1 `1 = b by ;
A10: p1 `2 = d by ;
A11: p10 `1 = b by ;
A12: p10 `2 = c by ;
A13: p0 `1 = a by ;
A14: p0 `2 = c by ;
A15: len f1 = 1 + 2 by ;
A16: f1 /. 1 = p0 by ;
A17: f1 /. 2 = p01 by ;
A18: f1 /. 3 = p1 by ;
thus f1 is being_S-Seq :: thesis: ( L~ f1 = (LSeg (p0,p01)) \/ (LSeg (p01,p1)) & f2 is being_S-Seq & L~ f2 = (LSeg (p0,p10)) \/ (LSeg (p10,p1)) & rectangle (a,b,c,d) = (L~ f1) \/ (L~ f2) & (L~ f1) /\ (L~ f2) = {p0,p1} & f1 /. 1 = p0 & f1 /. (len f1) = p1 & f2 /. 1 = p0 & f2 /. (len f2) = p1 )
proof
A19: p0 <> p01 by ;
p01 <> p1 by ;
hence f1 is one-to-one by ; :: according to TOPREAL1:def 8 :: thesis: ( 2 <= len f1 & f1 is unfolded & f1 is s.n.c. & f1 is special )
thus len f1 >= 2 by A15; :: thesis: ( f1 is unfolded & f1 is s.n.c. & f1 is special )
thus f1 is unfolded :: thesis: ( f1 is s.n.c. & f1 is special )
proof
let i be Nat; :: according to TOPREAL1:def 6 :: thesis: ( not 1 <= i or not i + 2 <= len f1 or (LSeg (f1,i)) /\ (LSeg (f1,(i + 1))) = {(f1 /. (i + 1))} )
assume that
A20: 1 <= i and
A21: i + 2 <= len f1 ; :: thesis: (LSeg (f1,i)) /\ (LSeg (f1,(i + 1))) = {(f1 /. (i + 1))}
i <= 1 by ;
then A22: i = 1 by ;
reconsider n2 = 1 + 1 as Nat ;
n2 in Seg (len f1) by ;
then A23: LSeg (f1,1) = LSeg (p0,p01) by ;
A24: LSeg (f1,n2) = LSeg (p01,p1) by ;
for x being object holds
( x in (LSeg (p0,p01)) /\ (LSeg (p01,p1)) iff x = p01 )
proof
let x be object ; :: thesis: ( x in (LSeg (p0,p01)) /\ (LSeg (p01,p1)) iff x = p01 )
thus ( x in (LSeg (p0,p01)) /\ (LSeg (p01,p1)) implies x = p01 ) :: thesis: ( x = p01 implies x in (LSeg (p0,p01)) /\ (LSeg (p01,p1)) )
proof
assume A25: x in (LSeg (p0,p01)) /\ (LSeg (p01,p1)) ; :: thesis: x = p01
then A26: x in LSeg (p0,p01) by XBOOLE_0:def 4;
A27: x in LSeg (p01,p1) by ;
A28: x in { p where p is Point of () : ( p `1 = a & p `2 <= d & p `2 >= c ) } by A2, A3, A5, A26, Th30;
A29: x in { p2 where p2 is Point of () : ( p2 `1 <= b & p2 `1 >= a & p2 `2 = d ) } by A1, A4, A5, A27, Th30;
A30: ex p being Point of () st
( p = x & p `1 = a & p `2 <= d & p `2 >= c ) by A28;
ex p2 being Point of () st
( p2 = x & p2 `1 <= b & p2 `1 >= a & p2 `2 = d ) by A29;
hence x = p01 by ; :: thesis: verum
end;
assume A31: x = p01 ; :: thesis: x in (LSeg (p0,p01)) /\ (LSeg (p01,p1))
then A32: x in LSeg (p0,p01) by RLTOPSP1:68;
x in LSeg (p01,p1) by ;
hence x in (LSeg (p0,p01)) /\ (LSeg (p01,p1)) by ; :: thesis: verum
end;
hence (LSeg (f1,i)) /\ (LSeg (f1,(i + 1))) = {(f1 /. (i + 1))} by ; :: thesis: verum
end;
thus f1 is s.n.c. :: thesis: f1 is special
proof
let i, j be Nat; :: according to TOPREAL1:def 7 :: thesis: ( j <= i + 1 or LSeg (f1,i) misses LSeg (f1,j) )
assume A33: i + 1 < j ; :: thesis: LSeg (f1,i) misses LSeg (f1,j)
now :: thesis: (LSeg (f1,i)) /\ (LSeg (f1,j)) = {}
per cases ( 1 <= i or not 1 <= i or not i + 1 <= len f1 ) ;
suppose 1 <= i ; :: thesis: (LSeg (f1,i)) /\ (LSeg (f1,j)) = {}
then A34: 1 + 1 <= i + 1 by XREAL_1:6;
now :: thesis: ( ( 1 <= j & j + 1 <= len f1 & contradiction ) or ( ( not 1 <= j or not j + 1 <= len f1 ) & (LSeg (f1,i)) /\ (LSeg (f1,j)) = {} ) )
per cases ( ( 1 <= j & j + 1 <= len f1 ) or not 1 <= j or not j + 1 <= len f1 ) ;
case ( 1 <= j & j + 1 <= len f1 ) ; :: thesis: contradiction
end;
case ( not 1 <= j or not j + 1 <= len f1 ) ; :: thesis: (LSeg (f1,i)) /\ (LSeg (f1,j)) = {}
then LSeg (f1,j) = {} by TOPREAL1:def 3;
hence (LSeg (f1,i)) /\ (LSeg (f1,j)) = {} ; :: thesis: verum
end;
end;
end;
hence (LSeg (f1,i)) /\ (LSeg (f1,j)) = {} ; :: thesis: verum
end;
suppose ( not 1 <= i or not i + 1 <= len f1 ) ; :: thesis: (LSeg (f1,i)) /\ (LSeg (f1,j)) = {}
then LSeg (f1,i) = {} by TOPREAL1:def 3;
hence (LSeg (f1,i)) /\ (LSeg (f1,j)) = {} ; :: thesis: verum
end;
end;
end;
hence (LSeg (f1,i)) /\ (LSeg (f1,j)) = {} ; :: according to XBOOLE_0:def 7 :: thesis: verum
end;
let i be Nat; :: according to TOPREAL1:def 5 :: thesis: ( not 1 <= i or not i + 1 <= len f1 or (f1 /. i) `1 = (f1 /. (i + 1)) `1 or (f1 /. i) `2 = (f1 /. (i + 1)) `2 )
assume that
A35: 1 <= i and
A36: i + 1 <= len f1 ; :: thesis: ( (f1 /. i) `1 = (f1 /. (i + 1)) `1 or (f1 /. i) `2 = (f1 /. (i + 1)) `2 )
A37: i <= 1 + 1 by ;
now :: thesis: ( (f1 /. i) `1 = (f1 /. (i + 1)) `1 or (f1 /. i) `2 = (f1 /. (i + 1)) `2 )
per cases ( i = 1 or i = 2 ) by ;
suppose A38: i = 1 ; :: thesis: ( (f1 /. i) `1 = (f1 /. (i + 1)) `1 or (f1 /. i) `2 = (f1 /. (i + 1)) `2 )
then (f1 /. i) `1 = p0 `1 by
.= a by
.= (f1 /. (i + 1)) `1 by ;
hence ( (f1 /. i) `1 = (f1 /. (i + 1)) `1 or (f1 /. i) `2 = (f1 /. (i + 1)) `2 ) ; :: thesis: verum
end;
suppose A39: i = 2 ; :: thesis: ( (f1 /. i) `1 = (f1 /. (i + 1)) `1 or (f1 /. i) `2 = (f1 /. (i + 1)) `2 )
then (f1 /. i) `2 = p01 `2 by
.= d by
.= (f1 /. (i + 1)) `2 by ;
hence ( (f1 /. i) `1 = (f1 /. (i + 1)) `1 or (f1 /. i) `2 = (f1 /. (i + 1)) `2 ) ; :: thesis: verum
end;
end;
end;
hence ( (f1 /. i) `1 = (f1 /. (i + 1)) `1 or (f1 /. i) `2 = (f1 /. (i + 1)) `2 ) ; :: thesis: verum
end;
A40: 1 + 1 in Seg (len f1) by ;
A41: 1 + 1 <= len f1 by A15;
LSeg (p0,p01) = LSeg (f1,1) by ;
then A42: LSeg (p0,p01) in { (LSeg (f1,i)) where i is Nat : ( 1 <= i & i + 1 <= len f1 ) } by A41;
LSeg (p01,p1) = LSeg (f1,2) by ;
then LSeg (p01,p1) in { (LSeg (f1,i)) where i is Nat : ( 1 <= i & i + 1 <= len f1 ) } by A15;
then A43: {(LSeg (p0,p01)),(LSeg (p01,p1))} c= { (LSeg (f1,i)) where i is Nat : ( 1 <= i & i + 1 <= len f1 ) } by ;
{ (LSeg (f1,i)) where i is Nat : ( 1 <= i & i + 1 <= len f1 ) } c= {(LSeg (p0,p01)),(LSeg (p01,p1))}
proof
let a be object ; :: according to TARSKI:def 3 :: thesis: ( not a in { (LSeg (f1,i)) where i is Nat : ( 1 <= i & i + 1 <= len f1 ) } or a in {(LSeg (p0,p01)),(LSeg (p01,p1))} )
assume a in { (LSeg (f1,i)) where i is Nat : ( 1 <= i & i + 1 <= len f1 ) } ; :: thesis: a in {(LSeg (p0,p01)),(LSeg (p01,p1))}
then consider i being Nat such that
A44: a = LSeg (f1,i) and
A45: 1 <= i and
A46: i + 1 <= len f1 ;
i + 1 <= 2 + 1 by ;
then i <= 1 + 1 by XREAL_1:6;
then ( i = 1 or i = 2 ) by ;
then ( a = LSeg (p0,p01) or a = LSeg (p01,p1) ) by ;
hence a in {(LSeg (p0,p01)),(LSeg (p01,p1))} by TARSKI:def 2; :: thesis: verum
end;
then L~ f1 = union {(LSeg (p0,p01)),(LSeg (p01,p1))} by ;
hence A47: L~ f1 = (LSeg (p0,p01)) \/ (LSeg (p01,p1)) by ZFMISC_1:75; :: thesis: ( f2 is being_S-Seq & L~ f2 = (LSeg (p0,p10)) \/ (LSeg (p10,p1)) & rectangle (a,b,c,d) = (L~ f1) \/ (L~ f2) & (L~ f1) /\ (L~ f2) = {p0,p1} & f1 /. 1 = p0 & f1 /. (len f1) = p1 & f2 /. 1 = p0 & f2 /. (len f2) = p1 )
then A48: L~ f1 = { p where p is Point of () : ( p `1 = a & p `2 <= d & p `2 >= c ) } \/ (LSeg (p01,p1)) by A2, A3, A5, Th30
.= { p where p is Point of () : ( p `1 = a & p `2 <= d & p `2 >= c ) } \/ { p where p is Point of () : ( p `1 <= b & p `1 >= a & p `2 = d ) } by A1, A4, A5, Th30 ;
A49: len f2 = 1 + 2 by ;
A50: f2 /. 1 = p0 by ;
A51: f2 /. 2 = p10 by ;
A52: f2 /. 3 = p1 by ;
thus f2 is being_S-Seq :: thesis: ( L~ f2 = (LSeg (p0,p10)) \/ (LSeg (p10,p1)) & rectangle (a,b,c,d) = (L~ f1) \/ (L~ f2) & (L~ f1) /\ (L~ f2) = {p0,p1} & f1 /. 1 = p0 & f1 /. (len f1) = p1 & f2 /. 1 = p0 & f2 /. (len f2) = p1 )
proof
thus f2 is one-to-one by A1, A2, A8, A9, A10, A11, A12, A13, FINSEQ_3:95; :: according to TOPREAL1:def 8 :: thesis: ( 2 <= len f2 & f2 is unfolded & f2 is s.n.c. & f2 is special )
thus len f2 >= 2 by A49; :: thesis: ( f2 is unfolded & f2 is s.n.c. & f2 is special )
thus f2 is unfolded :: thesis: ( f2 is s.n.c. & f2 is special )
proof
let i be Nat; :: according to TOPREAL1:def 6 :: thesis: ( not 1 <= i or not i + 2 <= len f2 or (LSeg (f2,i)) /\ (LSeg (f2,(i + 1))) = {(f2 /. (i + 1))} )
assume that
A53: 1 <= i and
A54: i + 2 <= len f2 ; :: thesis: (LSeg (f2,i)) /\ (LSeg (f2,(i + 1))) = {(f2 /. (i + 1))}
i <= 1 by ;
then A55: i = 1 by ;
1 + 1 in Seg (len f2) by ;
then A56: LSeg (f2,1) = LSeg (p0,p10) by ;
A57: LSeg (f2,(1 + 1)) = LSeg (p10,p1) by ;
for x being object holds
( x in (LSeg (p0,p10)) /\ (LSeg (p10,p1)) iff x = p10 )
proof
let x be object ; :: thesis: ( x in (LSeg (p0,p10)) /\ (LSeg (p10,p1)) iff x = p10 )
thus ( x in (LSeg (p0,p10)) /\ (LSeg (p10,p1)) implies x = p10 ) :: thesis: ( x = p10 implies x in (LSeg (p0,p10)) /\ (LSeg (p10,p1)) )
proof
assume A58: x in (LSeg (p0,p10)) /\ (LSeg (p10,p1)) ; :: thesis: x = p10
then A59: x in LSeg (p0,p10) by XBOOLE_0:def 4;
A60: x in LSeg (p10,p1) by ;
A61: x in { p where p is Point of () : ( p `1 <= b & p `1 >= a & p `2 = c ) } by A1, A3, A6, A59, Th30;
A62: x in { p2 where p2 is Point of () : ( p2 `1 = b & p2 `2 <= d & p2 `2 >= c ) } by A2, A4, A6, A60, Th30;
A63: ex p being Point of () st
( p = x & p `1 <= b & p `1 >= a & p `2 = c ) by A61;
ex p2 being Point of () st
( p2 = x & p2 `1 = b & p2 `2 <= d & p2 `2 >= c ) by A62;
hence x = p10 by ; :: thesis: verum
end;
assume A64: x = p10 ; :: thesis: x in (LSeg (p0,p10)) /\ (LSeg (p10,p1))
then A65: x in LSeg (p0,p10) by RLTOPSP1:68;
x in LSeg (p10,p1) by ;
hence x in (LSeg (p0,p10)) /\ (LSeg (p10,p1)) by ; :: thesis: verum
end;
hence (LSeg (f2,i)) /\ (LSeg (f2,(i + 1))) = {(f2 /. (i + 1))} by ; :: thesis: verum
end;
thus f2 is s.n.c. :: thesis: f2 is special
proof
let i, j be Nat; :: according to TOPREAL1:def 7 :: thesis: ( j <= i + 1 or LSeg (f2,i) misses LSeg (f2,j) )
assume A66: i + 1 < j ; :: thesis: LSeg (f2,i) misses LSeg (f2,j)
now :: thesis: (LSeg (f2,i)) /\ (LSeg (f2,j)) = {}
per cases ( 1 <= i or not 1 <= i or not i + 1 <= len f2 ) ;
suppose 1 <= i ; :: thesis: (LSeg (f2,i)) /\ (LSeg (f2,j)) = {}
then A67: 1 + 1 <= i + 1 by XREAL_1:6;
now :: thesis: ( ( 1 <= j & j + 1 <= len f2 & contradiction ) or ( ( not 1 <= j or not j + 1 <= len f2 ) & (LSeg (f2,i)) /\ (LSeg (f2,j)) = {} ) )
per cases ( ( 1 <= j & j + 1 <= len f2 ) or not 1 <= j or not j + 1 <= len f2 ) ;
case ( 1 <= j & j + 1 <= len f2 ) ; :: thesis: contradiction
end;
case ( not 1 <= j or not j + 1 <= len f2 ) ; :: thesis: (LSeg (f2,i)) /\ (LSeg (f2,j)) = {}
then LSeg (f2,j) = {} by TOPREAL1:def 3;
hence (LSeg (f2,i)) /\ (LSeg (f2,j)) = {} ; :: thesis: verum
end;
end;
end;
hence (LSeg (f2,i)) /\ (LSeg (f2,j)) = {} ; :: thesis: verum
end;
suppose ( not 1 <= i or not i + 1 <= len f2 ) ; :: thesis: (LSeg (f2,i)) /\ (LSeg (f2,j)) = {}
then LSeg (f2,i) = {} by TOPREAL1:def 3;
hence (LSeg (f2,i)) /\ (LSeg (f2,j)) = {} ; :: thesis: verum
end;
end;
end;
hence (LSeg (f2,i)) /\ (LSeg (f2,j)) = {} ; :: according to XBOOLE_0:def 7 :: thesis: verum
end;
let i be Nat; :: according to TOPREAL1:def 5 :: thesis: ( not 1 <= i or not i + 1 <= len f2 or (f2 /. i) `1 = (f2 /. (i + 1)) `1 or (f2 /. i) `2 = (f2 /. (i + 1)) `2 )
assume that
A68: 1 <= i and
A69: i + 1 <= len f2 ; :: thesis: ( (f2 /. i) `1 = (f2 /. (i + 1)) `1 or (f2 /. i) `2 = (f2 /. (i + 1)) `2 )
A70: i <= 1 + 1 by ;
per cases ( i = 1 or i = 2 ) by ;
suppose A71: i = 1 ; :: thesis: ( (f2 /. i) `1 = (f2 /. (i + 1)) `1 or (f2 /. i) `2 = (f2 /. (i + 1)) `2 )
then (f2 /. i) `2 = p0 `2 by
.= c by
.= (f2 /. (i + 1)) `2 by ;
hence ( (f2 /. i) `1 = (f2 /. (i + 1)) `1 or (f2 /. i) `2 = (f2 /. (i + 1)) `2 ) ; :: thesis: verum
end;
suppose A72: i = 2 ; :: thesis: ( (f2 /. i) `1 = (f2 /. (i + 1)) `1 or (f2 /. i) `2 = (f2 /. (i + 1)) `2 )
then (f2 /. i) `1 = p10 `1 by
.= b by
.= (f2 /. (i + 1)) `1 by ;
hence ( (f2 /. i) `1 = (f2 /. (i + 1)) `1 or (f2 /. i) `2 = (f2 /. (i + 1)) `2 ) ; :: thesis: verum
end;
end;
end;
A73: 1 + 1 in Seg (len f2) by ;
A74: 1 + 1 <= len f2 by A49;
LSeg (p0,p10) = LSeg (f2,1) by ;
then A75: LSeg (p0,p10) in { (LSeg (f2,i)) where i is Nat : ( 1 <= i & i + 1 <= len f2 ) } by A74;
LSeg (p10,p1) = LSeg (f2,2) by ;
then LSeg (p10,p1) in { (LSeg (f2,i)) where i is Nat : ( 1 <= i & i + 1 <= len f2 ) } by A49;
then A76: {(LSeg (p0,p10)),(LSeg (p10,p1))} c= { (LSeg (f2,i)) where i is Nat : ( 1 <= i & i + 1 <= len f2 ) } by ;
{ (LSeg (f2,i)) where i is Nat : ( 1 <= i & i + 1 <= len f2 ) } c= {(LSeg (p0,p10)),(LSeg (p10,p1))}
proof
let ax be object ; :: according to TARSKI:def 3 :: thesis: ( not ax in { (LSeg (f2,i)) where i is Nat : ( 1 <= i & i + 1 <= len f2 ) } or ax in {(LSeg (p0,p10)),(LSeg (p10,p1))} )
assume ax in { (LSeg (f2,i)) where i is Nat : ( 1 <= i & i + 1 <= len f2 ) } ; :: thesis: ax in {(LSeg (p0,p10)),(LSeg (p10,p1))}
then consider i being Nat such that
A77: ax = LSeg (f2,i) and
A78: 1 <= i and
A79: i + 1 <= len f2 ;
i + 1 <= 2 + 1 by ;
then i <= 1 + 1 by XREAL_1:6;
then ( i = 1 or i = 2 ) by ;
then ( ax = LSeg (p0,p10) or ax = LSeg (p10,p1) ) by ;
hence ax in {(LSeg (p0,p10)),(LSeg (p10,p1))} by TARSKI:def 2; :: thesis: verum
end;
then A80: L~ f2 = union {(LSeg (p0,p10)),(LSeg (p10,p1))} by ;
hence L~ f2 = (LSeg (p0,p10)) \/ (LSeg (p10,p1)) by ZFMISC_1:75; :: thesis: ( rectangle (a,b,c,d) = (L~ f1) \/ (L~ f2) & (L~ f1) /\ (L~ f2) = {p0,p1} & f1 /. 1 = p0 & f1 /. (len f1) = p1 & f2 /. 1 = p0 & f2 /. (len f2) = p1 )
L~ f2 = (LSeg (p0,p10)) \/ (LSeg (p10,p1)) by ;
then A81: L~ f2 = { p where p is Point of () : ( p `1 <= b & p `1 >= a & p `2 = c ) } \/ (LSeg (p10,p1)) by A1, A3, A6, Th30
.= { p where p is Point of () : ( p `1 <= b & p `1 >= a & p `2 = c ) } \/ { p where p is Point of () : ( p `1 = b & p `2 <= d & p `2 >= c ) } by A2, A4, A6, Th30 ;
rectangle (a,b,c,d) = ((LSeg (p0,p01)) \/ (LSeg (p01,p1))) \/ ((LSeg (p0,p10)) \/ (LSeg (p10,p1))) by ;
hence rectangle (a,b,c,d) = (L~ f1) \/ (L~ f2) by ; :: thesis: ( (L~ f1) /\ (L~ f2) = {p0,p1} & f1 /. 1 = p0 & f1 /. (len f1) = p1 & f2 /. 1 = p0 & f2 /. (len f2) = p1 )
now :: thesis: not { p where p is Point of () : ( p `1 <= b & p `1 >= a & p `2 = d ) } meets { p where p is Point of () : ( p `1 <= b & p `1 >= a & p `2 = c ) }
assume { p where p is Point of () : ( p `1 <= b & p `1 >= a & p `2 = d ) } meets { p where p is Point of () : ( p `1 <= b & p `1 >= a & p `2 = c ) } ; :: thesis: contradiction
then consider x being object such that
A82: x in { p where p is Point of () : ( p `1 <= b & p `1 >= a & p `2 = d ) } and
A83: x in { p where p is Point of () : ( p `1 <= b & p `1 >= a & p `2 = c ) } by XBOOLE_0:3;
A84: ex p being Point of () st
( p = x & p `1 <= b & p `1 >= a & p `2 = d ) by A82;
ex p2 being Point of () st
( p2 = x & p2 `1 <= b & p2 `1 >= a & p2 `2 = c ) by A83;
hence contradiction by A2, A84; :: thesis: verum
end;
then A85: { p where p is Point of () : ( p `1 <= b & p `1 >= a & p `2 = d ) } /\ { p where p is Point of () : ( p `1 <= b & p `1 >= a & p `2 = c ) } = {} ;
A86: LSeg (|[a,c]|,|[a,d]|) = { p3 where p3 is Point of () : ( p3 `1 = a & p3 `2 <= d & p3 `2 >= c ) } by ;
A87: LSeg (|[a,d]|,|[b,d]|) = { p2 where p2 is Point of () : ( p2 `1 <= b & p2 `1 >= a & p2 `2 = d ) } by ;
A88: LSeg (|[a,c]|,|[b,c]|) = { q1 where q1 is Point of () : ( q1 `1 <= b & q1 `1 >= a & q1 `2 = c ) } by ;
A89: LSeg (|[b,c]|,|[b,d]|) = { q2 where q2 is Point of () : ( q2 `1 = b & q2 `2 <= d & q2 `2 >= c ) } by ;
A90: (LSeg (|[a,c]|,|[a,d]|)) /\ (LSeg (|[a,c]|,|[b,c]|)) = {|[a,c]|} by A1, A2, Th31;
A91: (LSeg (|[a,d]|,|[b,d]|)) /\ (LSeg (|[b,c]|,|[b,d]|)) = {|[b,d]|} by A1, A2, Th33;
now :: thesis: not { p where p is Point of () : ( p `1 = a & p `2 <= d & p `2 >= c ) } meets { p where p is Point of () : ( p `1 = b & p `2 <= d & p `2 >= c ) }
assume { p where p is Point of () : ( p `1 = a & p `2 <= d & p `2 >= c ) } meets { p where p is Point of () : ( p `1 = b & p `2 <= d & p `2 >= c ) } ; :: thesis: contradiction
then consider x being object such that
A92: x in { p where p is Point of () : ( p `1 = a & p `2 <= d & p `2 >= c ) } and
A93: x in { p where p is Point of () : ( p `1 = b & p `2 <= d & p `2 >= c ) } by XBOOLE_0:3;
A94: ex p being Point of () st
( p = x & p `1 = a & p `2 <= d & p `2 >= c ) by A92;
ex p2 being Point of () st
( p2 = x & p2 `1 = b & p2 `2 <= d & p2 `2 >= c ) by A93;
hence contradiction by A1, A94; :: thesis: verum
end;
then A95: { p where p is Point of () : ( p `1 = a & p `2 <= d & p `2 >= c ) } /\ { p where p is Point of () : ( p `1 = b & p `2 <= d & p `2 >= c ) } = {} ;
thus (L~ f1) /\ (L~ f2) = (( { p where p is Point of () : ( p `1 = a & p `2 <= d & p `2 >= c ) } \/ { p where p is Point of () : ( p `1 <= b & p `1 >= a & p `2 = d ) } ) /\ { p where p is Point of () : ( p `1 <= b & p `1 >= a & p `2 = c ) } ) \/ (( { p where p is Point of () : ( p `1 = a & p `2 <= d & p `2 >= c ) } \/ { p where p is Point of () : ( p `1 <= b & p `1 >= a & p `2 = d ) } ) /\ { p where p is Point of () : ( p `1 = b & p `2 <= d & p `2 >= c ) } ) by
.= (( { p where p is Point of () : ( p `1 = a & p `2 <= d & p `2 >= c ) } /\ { p where p is Point of () : ( p `1 <= b & p `1 >= a & p `2 = c ) } ) \/ ( { p where p is Point of () : ( p `1 <= b & p `1 >= a & p `2 = d ) } /\ { p where p is Point of () : ( p `1 <= b & p `1 >= a & p `2 = c ) } )) \/ (( { p where p is Point of () : ( p `1 = a & p `2 <= d & p `2 >= c ) } \/ { p where p is Point of () : ( p `1 <= b & p `1 >= a & p `2 = d ) } ) /\ { p where p is Point of () : ( p `1 = b & p `2 <= d & p `2 >= c ) } ) by XBOOLE_1:23
.= ( { p where p is Point of () : ( p `1 = a & p `2 <= d & p `2 >= c ) } /\ { p where p is Point of () : ( p `1 <= b & p `1 >= a & p `2 = c ) } ) \/ (( { p where p is Point of () : ( p `1 = a & p `2 <= d & p `2 >= c ) } /\ { p where p is Point of () : ( p `1 = b & p `2 <= d & p `2 >= c ) } ) \/ ( { p where p is Point of () : ( p `1 <= b & p `1 >= a & p `2 = d ) } /\ { p where p is Point of () : ( p `1 = b & p `2 <= d & p `2 >= c ) } )) by
.= {p0,p1} by A3, A4, A86, A87, A88, A89, A90, A91, A95, ENUMSET1:1 ; :: thesis: ( f1 /. 1 = p0 & f1 /. (len f1) = p1 & f2 /. 1 = p0 & f2 /. (len f2) = p1 )
thus ( f1 /. 1 = p0 & f1 /. (len f1) = p1 & f2 /. 1 = p0 & f2 /. (len f2) = p1 ) by ; :: thesis: verum