:: On Some Points of a Simple Closed Curve
:: by Artur Korni{\l}owicz
::
:: Copyright (c) 2004-2019 Association of Mizar Users

Lm1: dom proj2 = the carrier of ()
by FUNCT_2:def 1;

Lm2: for r being Real
for X being Subset of () st r in proj2 .: X holds
ex x being Point of () st
( x in X & proj2 . x = r )

proof end;

Lm3: now :: thesis: for a, A, B, C being set holds
( not a in (A \/ B) \/ C or a in A or a in B or a in C )
let a, A, B, C be set ; :: thesis: ( not a in (A \/ B) \/ C or a in A or a in B or a in C )
assume a in (A \/ B) \/ C ; :: thesis: ( a in A or a in B or a in C )
then ( a in A \/ B or a in C ) by XBOOLE_0:def 3;
hence ( a in A or a in B or a in C ) by XBOOLE_0:def 3; :: thesis: verum
end;

Lm4: for A, B, C, D being set st A misses D & B misses D & C misses D holds
(A \/ B) \/ C misses D

proof end;

theorem :: JORDAN21:1
for n being Element of NAT
for p being Point of () holds {p} is bounded
proof end;

theorem Th2: :: JORDAN21:2
for s1, t being Real
for P being Subset of () st P = { |[s,t]| where s is Real : s1 < s } holds
P is convex
proof end;

theorem Th3: :: JORDAN21:3
for s2, t being Real
for P being Subset of () st P = { |[s,t]| where s is Real : s < s2 } holds
P is convex
proof end;

theorem Th4: :: JORDAN21:4
for s, t1 being Real
for P being Subset of () st P = { |[s,t]| where t is Real : t1 < t } holds
P is convex
proof end;

theorem Th5: :: JORDAN21:5
for s, t2 being Real
for P being Subset of () st P = { |[s,t]| where t is Real : t < t2 } holds
P is convex
proof end;

theorem :: JORDAN21:6
for p being Point of () holds () \ {p} is convex
proof end;

theorem :: JORDAN21:7
for p being Point of () holds () \ {p} is convex
proof end;

theorem :: JORDAN21:8
for p being Point of () holds () \ {p} is convex
proof end;

theorem :: JORDAN21:9
for p being Point of () holds () \ {p} is convex
proof end;

theorem :: JORDAN21:10
for A being Subset of the carrier of () holds UBD A misses A
proof end;

theorem Th11: :: JORDAN21:11
for P being Subset of the carrier of ()
for p1, p2, q1, q2 being Point of () st P is_an_arc_of p1,p2 & p1 <> q1 & p2 <> q2 holds
( not p1 in Segment (P,p1,p2,q1,q2) & not p2 in Segment (P,p1,p2,q1,q2) )
proof end;

definition
let D be Subset of ();
attr D is with_the_max_arc means :Def1: :: JORDAN21:def 1
D meets Vertical_Line ((() + ()) / 2);
end;

:: deftheorem Def1 defines with_the_max_arc JORDAN21:def 1 :
for D being Subset of () holds
( D is with_the_max_arc iff D meets Vertical_Line ((() + ()) / 2) );

registration
cluster with_the_max_arc -> non empty for Element of K16( the carrier of ());
coherence
for b1 being Subset of () st b1 is with_the_max_arc holds
not b1 is empty
proof end;
end;

registration
cluster being_simple_closed_curve -> with_the_max_arc for Element of K16( the carrier of ());
coherence
for b1 being Simple_closed_curve holds b1 is with_the_max_arc
proof end;
end;

registration
existence
not for b1 being Simple_closed_curve holds b1 is empty
proof end;
end;

theorem Th12: :: JORDAN21:12
for D being with_the_max_arc Subset of () holds not proj2 .: (D /\ (Vertical_Line ((() + ()) / 2))) is empty
proof end;

theorem Th13: :: JORDAN21:13
for C being compact Subset of () holds
( proj2 .: (C /\ (Vertical_Line ((() + ()) / 2))) is closed & proj2 .: (C /\ (Vertical_Line ((() + ()) / 2))) is bounded_below & proj2 .: (C /\ (Vertical_Line ((() + ()) / 2))) is bounded_above )
proof end;

theorem Th14: :: JORDAN21:14
for C being Simple_closed_curve holds Lower_Middle_Point C in C
proof end;

theorem Th15: :: JORDAN21:15
for C being Simple_closed_curve holds 2 <> 2
proof end;

theorem :: JORDAN21:16
for C being Simple_closed_curve holds Lower_Middle_Point C <> Upper_Middle_Point C
proof end;

theorem Th17: :: JORDAN21:17
for C being Simple_closed_curve holds W-bound C = W-bound ()
proof end;

theorem Th18: :: JORDAN21:18
for C being Simple_closed_curve holds E-bound C = E-bound ()
proof end;

theorem Th19: :: JORDAN21:19
for C being Simple_closed_curve holds W-bound C = W-bound ()
proof end;

theorem Th20: :: JORDAN21:20
for C being Simple_closed_curve holds E-bound C = E-bound ()
proof end;

theorem Th21: :: JORDAN21:21
for C being Simple_closed_curve holds
( not () /\ (Vertical_Line ((() + ()) / 2)) is empty & not proj2 .: (() /\ (Vertical_Line ((() + ()) / 2))) is empty )
proof end;

theorem Th22: :: JORDAN21:22
for C being Simple_closed_curve holds
( not () /\ (Vertical_Line ((() + ()) / 2)) is empty & not proj2 .: (() /\ (Vertical_Line ((() + ()) / 2))) is empty )
proof end;

theorem :: JORDAN21:23
for C being Simple_closed_curve
for P being connected compact Subset of () st P c= C & W-min C in P & E-max C in P & not Upper_Arc C c= P holds
Lower_Arc C c= P
proof end;

registration
let C be Simple_closed_curve;
coherence
proof end;
coherence
proof end;
end;

definition
let P be Subset of the carrier of ();
func UMP P -> Point of () equals :: JORDAN21:def 2
|[((() + ()) / 2),(upper_bound (proj2 .: (P /\ (Vertical_Line ((() + ()) / 2)))))]|;
correctness
coherence
|[((() + ()) / 2),(upper_bound (proj2 .: (P /\ (Vertical_Line ((() + ()) / 2)))))]| is Point of ()
;
;
func LMP P -> Point of () equals :: JORDAN21:def 3
|[((() + ()) / 2),(lower_bound (proj2 .: (P /\ (Vertical_Line ((() + ()) / 2)))))]|;
correctness
coherence
|[((() + ()) / 2),(lower_bound (proj2 .: (P /\ (Vertical_Line ((() + ()) / 2)))))]| is Point of ()
;
;
end;

:: deftheorem defines UMP JORDAN21:def 2 :
for P being Subset of the carrier of () holds UMP P = |[((() + ()) / 2),(upper_bound (proj2 .: (P /\ (Vertical_Line ((() + ()) / 2)))))]|;

:: deftheorem defines LMP JORDAN21:def 3 :
for P being Subset of the carrier of () holds LMP P = |[((() + ()) / 2),(lower_bound (proj2 .: (P /\ (Vertical_Line ((() + ()) / 2)))))]|;

theorem Th24: :: JORDAN21:24
for C being compact non vertical Subset of () holds UMP C <> W-min C
proof end;

theorem Th25: :: JORDAN21:25
for C being compact non vertical Subset of () holds UMP C <> E-max C
proof end;

theorem Th26: :: JORDAN21:26
for C being compact non vertical Subset of () holds LMP C <> W-min C
proof end;

theorem Th27: :: JORDAN21:27
for C being compact non vertical Subset of () holds LMP C <> E-max C
proof end;

theorem :: JORDAN21:28
for p being Point of ()
for C being compact Subset of () st p in C /\ (Vertical_Line ((() + ()) / 2)) holds
p 2 <= (UMP C) 2
proof end;

theorem :: JORDAN21:29
for p being Point of ()
for C being compact Subset of () st p in C /\ (Vertical_Line ((() + ()) / 2)) holds
(LMP C) 2 <= p 2
proof end;

theorem Th30: :: JORDAN21:30
for D being compact with_the_max_arc Subset of () holds UMP D in D
proof end;

theorem Th31: :: JORDAN21:31
for D being compact with_the_max_arc Subset of () holds LMP D in D
proof end;

theorem Th32: :: JORDAN21:32
for P being Subset of () holds LSeg ((UMP P),|[((() + ()) / 2),()]|) is vertical
proof end;

theorem Th33: :: JORDAN21:33
for P being Subset of () holds LSeg ((LMP P),|[((() + ()) / 2),()]|) is vertical
proof end;

theorem Th34: :: JORDAN21:34
for D being compact with_the_max_arc Subset of () holds (LSeg ((UMP D),|[((() + ()) / 2),()]|)) /\ D = {(UMP D)}
proof end;

theorem Th35: :: JORDAN21:35
for D being compact with_the_max_arc Subset of () holds (LSeg ((LMP D),|[((() + ()) / 2),()]|)) /\ D = {(LMP D)}
proof end;

theorem Th36: :: JORDAN21:36
for C being Simple_closed_curve holds (LMP C) 2 < (UMP C) 2
proof end;

theorem Th37: :: JORDAN21:37
for C being Simple_closed_curve holds UMP C <> LMP C
proof end;

theorem Th38: :: JORDAN21:38
for C being Simple_closed_curve holds S-bound C < (UMP C) 2
proof end;

theorem Th39: :: JORDAN21:39
for C being Simple_closed_curve holds (UMP C) 2 <= N-bound C
proof end;

theorem Th40: :: JORDAN21:40
for C being Simple_closed_curve holds S-bound C <= (LMP C) 2
proof end;

theorem Th41: :: JORDAN21:41
for C being Simple_closed_curve holds (LMP C) 2 < N-bound C
proof end;

theorem Th42: :: JORDAN21:42
for C being Simple_closed_curve holds LSeg ((UMP C),|[((() + ()) / 2),()]|) misses LSeg ((LMP C),|[((() + ()) / 2),()]|)
proof end;

theorem :: JORDAN21:43
for A, B being Subset of () st A c= B & () + () = () + () & not A /\ (Vertical_Line ((() + ()) / 2)) is empty & proj2 .: (B /\ (Vertical_Line ((() + ()) / 2))) is bounded_above holds
(UMP A) 2 <= (UMP B) 2
proof end;

theorem :: JORDAN21:44
for A, B being Subset of () st A c= B & () + () = () + () & not A /\ (Vertical_Line ((() + ()) / 2)) is empty & proj2 .: (B /\ (Vertical_Line ((() + ()) / 2))) is bounded_below holds
(LMP B) 2 <= (LMP A) 2
proof end;

theorem :: JORDAN21:45
for A, B being Subset of () st A c= B & UMP B in A & not A /\ (Vertical_Line ((() + ()) / 2)) is empty & proj2 .: (B /\ (Vertical_Line ((() + ()) / 2))) is bounded_above & () + () = () + () holds
UMP A = UMP B
proof end;

theorem :: JORDAN21:46
for A, B being Subset of () st A c= B & LMP B in A & not A /\ (Vertical_Line ((() + ()) / 2)) is empty & proj2 .: (B /\ (Vertical_Line ((() + ()) / 2))) is bounded_below & () + () = () + () holds
LMP A = LMP B
proof end;

theorem :: JORDAN21:47
for C being Simple_closed_curve holds (UMP ()) 2 <= N-bound C
proof end;

theorem :: JORDAN21:48
for C being Simple_closed_curve holds S-bound C <= (LMP ()) 2
proof end;

theorem :: JORDAN21:49
for C being Simple_closed_curve holds
( not LMP C in Lower_Arc C or not UMP C in Lower_Arc C )
proof end;

theorem :: JORDAN21:50
for C being Simple_closed_curve holds
( not LMP C in Upper_Arc C or not UMP C in Upper_Arc C )
proof end;