:: JORDAN18 semantic presentation

Lemma1: TOP-REAL 2 = TopSpaceMetr (Euclid 2)
by EUCLID:def 8;

Lemma2: the carrier of (Euclid 2) = the carrier of (TopSpaceMetr (Euclid 2))
by TOPMETR:16;

Lemma3: dom proj1 = the carrier of (TOP-REAL 2)
by FUNCT_2:def 1;

Lemma4: dom proj2 = the carrier of (TOP-REAL 2)
by FUNCT_2:def 1;

theorem Th1: :: JORDAN18:1
for b1, b2 being real number holds (b1 - b2) ^2 = (b2 - b1) ^2
proof end;

theorem Th2: :: JORDAN18:2
for b1, b2 being non empty TopSpace
for b3 being Function of b1,b2
for b4 being Subset of b2 st b3 is_homeomorphism & b4 is connected holds
b3 " b4 is connected
proof end;

theorem Th3: :: JORDAN18:3
for b1, b2 being non empty TopStruct
for b3 being Function of b1,b2
for b4 being Subset of b2 st b3 is_homeomorphism & b4 is compact holds
b3 " b4 is compact
proof end;

theorem Th4: :: JORDAN18:4
for b1 being Point of (TOP-REAL 2) holds proj2 .: (north_halfline b1) is bounded_below
proof end;

theorem Th5: :: JORDAN18:5
for b1 being Point of (TOP-REAL 2) holds proj2 .: (south_halfline b1) is bounded_above
proof end;

theorem Th6: :: JORDAN18:6
for b1 being Point of (TOP-REAL 2) holds proj1 .: (west_halfline b1) is bounded_above
proof end;

theorem Th7: :: JORDAN18:7
for b1 being Point of (TOP-REAL 2) holds proj1 .: (east_halfline b1) is bounded_below
proof end;

registration
let c1 be Point of (TOP-REAL 2);
cluster proj2 .: (north_halfline a1) -> non empty ;
coherence
not proj2 .: (north_halfline c1) is empty
by Lemma4, RELAT_1:152;
cluster proj2 .: (south_halfline a1) -> non empty ;
coherence
not proj2 .: (south_halfline c1) is empty
by Lemma4, RELAT_1:152;
cluster proj1 .: (west_halfline a1) -> non empty ;
coherence
not proj1 .: (west_halfline c1) is empty
by Lemma3, RELAT_1:152;
cluster proj1 .: (east_halfline a1) -> non empty ;
coherence
not proj1 .: (east_halfline c1) is empty
by Lemma3, RELAT_1:152;
end;

theorem Th8: :: JORDAN18:8
for b1 being Point of (TOP-REAL 2) holds inf (proj2 .: (north_halfline b1)) = b1 `2
proof end;

theorem Th9: :: JORDAN18:9
for b1 being Point of (TOP-REAL 2) holds sup (proj2 .: (south_halfline b1)) = b1 `2
proof end;

theorem Th10: :: JORDAN18:10
for b1 being Point of (TOP-REAL 2) holds sup (proj1 .: (west_halfline b1)) = b1 `1
proof end;

theorem Th11: :: JORDAN18:11
for b1 being Point of (TOP-REAL 2) holds inf (proj1 .: (east_halfline b1)) = b1 `1
proof end;

registration
let c1 be Point of (TOP-REAL 2);
cluster north_halfline a1 -> closed ;
coherence
north_halfline c1 is closed
proof end;
cluster south_halfline a1 -> closed ;
coherence
south_halfline c1 is closed
proof end;
cluster east_halfline a1 -> closed ;
coherence
east_halfline c1 is closed
proof end;
cluster west_halfline a1 -> closed ;
coherence
west_halfline c1 is closed
proof end;
end;

theorem Th12: :: JORDAN18:12
for b1 being Subset of (TOP-REAL 2)
for b2 being Point of (TOP-REAL 2) st b2 in BDD b1 holds
not north_halfline b2 c= UBD b1
proof end;

theorem Th13: :: JORDAN18:13
for b1 being Subset of (TOP-REAL 2)
for b2 being Point of (TOP-REAL 2) st b2 in BDD b1 holds
not south_halfline b2 c= UBD b1
proof end;

theorem Th14: :: JORDAN18:14
for b1 being Subset of (TOP-REAL 2)
for b2 being Point of (TOP-REAL 2) st b2 in BDD b1 holds
not east_halfline b2 c= UBD b1
proof end;

theorem Th15: :: JORDAN18:15
for b1 being Subset of (TOP-REAL 2)
for b2 being Point of (TOP-REAL 2) st b2 in BDD b1 holds
not west_halfline b2 c= UBD b1
proof end;

theorem Th16: :: JORDAN18:16
for b1 being Subset of (TOP-REAL 2)
for b2, b3, b4 being Point of (TOP-REAL 2) st b1 is_an_arc_of b2,b3 & b4 <> b3 holds
not b3 in L_Segment b1,b2,b3,b4
proof end;

theorem Th17: :: JORDAN18:17
for b1 being Subset of (TOP-REAL 2)
for b2, b3, b4 being Point of (TOP-REAL 2) st b1 is_an_arc_of b2,b3 & b4 <> b2 holds
not b2 in R_Segment b1,b2,b3,b4
proof end;

theorem Th18: :: JORDAN18:18
for b1 being Simple_closed_curve
for b2 being Subset of (TOP-REAL 2)
for b3, b4 being Point of (TOP-REAL 2) st b2 is_an_arc_of b3,b4 & b2 c= b1 holds
ex b5 being non empty Subset of (TOP-REAL 2) st
( b5 is_an_arc_of b3,b4 & b2 \/ b5 = b1 & b2 /\ b5 = {b3,b4} )
proof end;

theorem Th19: :: JORDAN18:19
for b1 being Subset of (TOP-REAL 2)
for b2, b3, b4, b5 being Point of (TOP-REAL 2) st b1 is_an_arc_of b2,b3 & b4 in b1 & b5 in b1 & b4 <> b2 & b4 <> b3 & b5 <> b2 & b5 <> b3 & b4 <> b5 holds
ex b6 being non empty Subset of (TOP-REAL 2) st
( b6 is_an_arc_of b4,b5 & b6 c= b1 & b6 misses {b2,b3} )
proof end;

definition
let c1 be Point of (TOP-REAL 2);
let c2 be Subset of (TOP-REAL 2);
func North-Bound c1,c2 -> Point of (TOP-REAL 2) equals :: JORDAN18:def 1
|[(a1 `1 ),(inf (proj2 .: (a2 /\ (north_halfline a1))))]|;
correctness
coherence
|[(c1 `1 ),(inf (proj2 .: (c2 /\ (north_halfline c1))))]| is Point of (TOP-REAL 2)
;
;
func South-Bound c1,c2 -> Point of (TOP-REAL 2) equals :: JORDAN18:def 2
|[(a1 `1 ),(sup (proj2 .: (a2 /\ (south_halfline a1))))]|;
correctness
coherence
|[(c1 `1 ),(sup (proj2 .: (c2 /\ (south_halfline c1))))]| is Point of (TOP-REAL 2)
;
;
end;

:: deftheorem Def1 defines North-Bound JORDAN18:def 1 :
for b1 being Point of (TOP-REAL 2)
for b2 being Subset of (TOP-REAL 2) holds North-Bound b1,b2 = |[(b1 `1 ),(inf (proj2 .: (b2 /\ (north_halfline b1))))]|;

:: deftheorem Def2 defines South-Bound JORDAN18:def 2 :
for b1 being Point of (TOP-REAL 2)
for b2 being Subset of (TOP-REAL 2) holds South-Bound b1,b2 = |[(b1 `1 ),(sup (proj2 .: (b2 /\ (south_halfline b1))))]|;

theorem Th20: :: JORDAN18:20
for b1 being Subset of (TOP-REAL 2)
for b2 being Point of (TOP-REAL 2) holds
( (North-Bound b2,b1) `1 = b2 `1 & (South-Bound b2,b1) `1 = b2 `1 ) by EUCLID:56;

theorem Th21: :: JORDAN18:21
for b1 being Subset of (TOP-REAL 2)
for b2 being Point of (TOP-REAL 2) holds
( (North-Bound b2,b1) `2 = inf (proj2 .: (b1 /\ (north_halfline b2))) & (South-Bound b2,b1) `2 = sup (proj2 .: (b1 /\ (south_halfline b2))) ) by EUCLID:56;

theorem Th22: :: JORDAN18:22
for b1 being Point of (TOP-REAL 2)
for b2 being compact Subset of (TOP-REAL 2) st b1 in BDD b2 holds
( North-Bound b1,b2 in b2 & North-Bound b1,b2 in north_halfline b1 & South-Bound b1,b2 in b2 & South-Bound b1,b2 in south_halfline b1 )
proof end;

theorem Th23: :: JORDAN18:23
for b1 being Point of (TOP-REAL 2)
for b2 being compact Subset of (TOP-REAL 2) st b1 in BDD b2 holds
( (South-Bound b1,b2) `2 < b1 `2 & b1 `2 < (North-Bound b1,b2) `2 )
proof end;

theorem Th24: :: JORDAN18:24
for b1 being Point of (TOP-REAL 2)
for b2 being compact Subset of (TOP-REAL 2) st b1 in BDD b2 holds
inf (proj2 .: (b2 /\ (north_halfline b1))) > sup (proj2 .: (b2 /\ (south_halfline b1)))
proof end;

theorem Th25: :: JORDAN18:25
for b1 being Point of (TOP-REAL 2)
for b2 being compact Subset of (TOP-REAL 2) st b1 in BDD b2 holds
South-Bound b1,b2 <> North-Bound b1,b2
proof end;

theorem Th26: :: JORDAN18:26
for b1 being Point of (TOP-REAL 2)
for b2 being Subset of (TOP-REAL 2) holds LSeg (North-Bound b1,b2),(South-Bound b1,b2) is vertical
proof end;

theorem Th27: :: JORDAN18:27
for b1 being Point of (TOP-REAL 2)
for b2 being compact Subset of (TOP-REAL 2) st b1 in BDD b2 holds
(LSeg (North-Bound b1,b2),(South-Bound b1,b2)) /\ b2 = {(North-Bound b1,b2),(South-Bound b1,b2)}
proof end;

theorem Th28: :: JORDAN18:28
for b1, b2 being Point of (TOP-REAL 2)
for b3 being compact Subset of (TOP-REAL 2) st b1 in BDD b3 & b2 in BDD b3 & b1 `1 <> b2 `1 holds
North-Bound b1,b3, South-Bound b2,b3, North-Bound b2,b3, South-Bound b1,b3 are_mutually_different
proof end;

definition
let c1 be Element of NAT ;
let c2 be Subset of (TOP-REAL c1);
let c3, c4, c5, c6 be Point of (TOP-REAL c1);
pred c3,c4,c2 -separate c5,c6 means :Def3: :: JORDAN18:def 3
for b1 being Subset of (TOP-REAL a1) st b1 is_an_arc_of a3,a4 & b1 c= a2 holds
b1 meets {a5,a6};
end;

:: deftheorem Def3 defines -separate JORDAN18:def 3 :
for b1 being Element of NAT
for b2 being Subset of (TOP-REAL b1)
for b3, b4, b5, b6 being Point of (TOP-REAL b1) holds
( b3,b4,b2 -separate b5,b6 iff for b7 being Subset of (TOP-REAL b1) st b7 is_an_arc_of b3,b4 & b7 c= b2 holds
b7 meets {b5,b6} );

notation
let c1 be Element of NAT ;
let c2 be Subset of (TOP-REAL c1);
let c3, c4, c5, c6 be Point of (TOP-REAL c1);
antonym c3,c4 are_neighbours_wrt c5,c6,c2 for c3,c4,c2 -separate c5,c6;
end;

theorem Th29: :: JORDAN18:29
for b1 being Element of NAT
for b2 being Subset of (TOP-REAL b1)
for b3, b4, b5 being Point of (TOP-REAL b1) holds b3,b3,b2 -separate b4,b5
proof end;

theorem Th30: :: JORDAN18:30
for b1 being Element of NAT
for b2 being Subset of (TOP-REAL b1)
for b3, b4, b5, b6 being Point of (TOP-REAL b1) st b3,b4,b2 -separate b5,b6 holds
b4,b3,b2 -separate b5,b6
proof end;

theorem Th31: :: JORDAN18:31
for b1 being Element of NAT
for b2 being Subset of (TOP-REAL b1)
for b3, b4, b5, b6 being Point of (TOP-REAL b1) st b3,b4,b2 -separate b5,b6 holds
b3,b4,b2 -separate b6,b5
proof end;

theorem Th32: :: JORDAN18:32
for b1 being Element of NAT
for b2 being Subset of (TOP-REAL b1)
for b3, b4, b5 being Point of (TOP-REAL b1) holds b3,b4,b2 -separate b3,b5
proof end;

theorem Th33: :: JORDAN18:33
for b1 being Element of NAT
for b2 being Subset of (TOP-REAL b1)
for b3, b4, b5 being Point of (TOP-REAL b1) holds b3,b4,b2 -separate b5,b4
proof end;

theorem Th34: :: JORDAN18:34
for b1 being Element of NAT
for b2 being Subset of (TOP-REAL b1)
for b3, b4, b5 being Point of (TOP-REAL b1) holds b3,b4,b2 -separate b4,b5
proof end;

theorem Th35: :: JORDAN18:35
for b1 being Element of NAT
for b2 being Subset of (TOP-REAL b1)
for b3, b4, b5 being Point of (TOP-REAL b1) holds b3,b4,b2 -separate b5,b3
proof end;

theorem Th36: :: JORDAN18:36
for b1 being Simple_closed_curve
for b2, b3, b4 being Point of (TOP-REAL 2) st b4 in b1 & b2 in b1 & b3 in b1 & b2 <> b3 & b2 <> b4 & b3 <> b4 holds
b2,b3 are_neighbours_wrt b4,b4,b1
proof end;

theorem Th37: :: JORDAN18:37
for b1 being Simple_closed_curve
for b2, b3, b4, b5 being Point of (TOP-REAL 2) st b2 <> b3 & b2 in b1 & b3 in b1 & b2,b3,b1 -separate b4,b5 holds
b4,b5,b1 -separate b2,b3
proof end;

theorem Th38: :: JORDAN18:38
for b1 being Simple_closed_curve
for b2, b3, b4, b5 being Point of (TOP-REAL 2) st b2 in b1 & b3 in b1 & b4 in b1 & b2 <> b3 & b4 <> b2 & b4 <> b3 & b5 <> b2 & b5 <> b3 & not b2,b3 are_neighbours_wrt b4,b5,b1 holds
b2,b4 are_neighbours_wrt b3,b5,b1
proof end;