Article WEIERSTR, MML version 4.99.1005

:: WEIERSTR:th 1
theorem
for b1 being Reflexive discerning symmetric triangle MetrStruct
for b2, b3 being Element of the carrier of b1
for b4, b5 being Element of REAL holds
ex b6 being Element of the carrier of b1 st
   ex b7 being Element of REAL st
      (Ball(b2,b4)) \/ Ball(b3,b5) c= Ball(b6,b7);

:: WEIERSTR:th 2
theorem
for b1 being Reflexive discerning symmetric triangle MetrStruct
for b2 being natural set
for b3 being Element of bool bool the carrier of b1
for b4 being Relation-like Function-like FinSequence-like set
      st b3 is finite & b3 is being_ball-family(b1) & proj2 b4 = b3 & dom b4 = Seg (b2 + 1)
   holds ex b5 being Element of bool bool the carrier of b1 st
      b5 is finite &
       b5 is being_ball-family(b1) &
       (ex b6 being Relation-like Function-like FinSequence-like set st
          proj2 b6 = b5 &
           dom b6 = Seg b2 &
           (ex b7 being Element of the carrier of b1 st
              ex b8 being Element of REAL st
                 union b3 c= (union b5) \/ Ball(b7,b8)));

:: WEIERSTR:th 3
theorem
for b1 being Reflexive discerning symmetric triangle MetrStruct
for b2 being Element of bool bool the carrier of b1
      st b2 is finite & b2 is being_ball-family(b1)
   holds ex b3 being Element of the carrier of b1 st
      ex b4 being Element of REAL st
         union b2 c= Ball(b3,b4);

:: WEIERSTR:funcnot 1 => WEIERSTR:func 1
definition
  let a1, a2 be non empty TopSpace-like TopStruct;
  let a3 be Function-like quasi_total Relation of the carrier of a1,the carrier of a2;
  let a4 be Element of bool bool the carrier of a2;
  func A3 " A4 -> Element of bool bool the carrier of a1 means
    for b1 being Element of bool the carrier of a1 holds
          b1 in it
       iff
          ex b2 being Element of bool the carrier of a2 st
             b2 in a4 & b1 = a3 " b2;
end;

:: WEIERSTR:def 1
theorem
for b1, b2 being non empty TopSpace-like TopStruct
for b3 being Function-like quasi_total Relation of the carrier of b1,the carrier of b2
for b4 being Element of bool bool the carrier of b2
for b5 being Element of bool bool the carrier of b1 holds
      b5 = b3 " b4
   iff
      for b6 being Element of bool the carrier of b1 holds
            b6 in b5
         iff
            ex b7 being Element of bool the carrier of b2 st
               b7 in b4 & b6 = b3 " b7;

:: WEIERSTR:th 4
theorem
for b1, b2 being non empty TopSpace-like TopStruct
for b3 being Function-like quasi_total Relation of the carrier of b1,the carrier of b2
for b4, b5 being Element of bool bool the carrier of b2
      st b4 c= b5
   holds b3 " b4 c= b3 " b5;

:: WEIERSTR:th 5
theorem
for b1, b2 being non empty TopSpace-like TopStruct
for b3 being Function-like quasi_total Relation of the carrier of b1,the carrier of b2
for b4 being Element of bool bool the carrier of b2
      st b3 is continuous(b1, b2) & b4 is open(b2)
   holds b3 " b4 is open(b1);

:: WEIERSTR:funcnot 2 => WEIERSTR:func 2
definition
  let a1, a2 be non empty TopSpace-like TopStruct;
  let a3 be Function-like quasi_total Relation of the carrier of a1,the carrier of a2;
  let a4 be Element of bool bool the carrier of a1;
  func A3 .: A4 -> Element of bool bool the carrier of a2 means
    for b1 being Element of bool the carrier of a2 holds
          b1 in it
       iff
          ex b2 being Element of bool the carrier of a1 st
             b2 in a4 & b1 = a3 .: b2;
end;

:: WEIERSTR:def 2
theorem
for b1, b2 being non empty TopSpace-like TopStruct
for b3 being Function-like quasi_total Relation of the carrier of b1,the carrier of b2
for b4 being Element of bool bool the carrier of b1
for b5 being Element of bool bool the carrier of b2 holds
      b5 = b3 .: b4
   iff
      for b6 being Element of bool the carrier of b2 holds
            b6 in b5
         iff
            ex b7 being Element of bool the carrier of b1 st
               b7 in b4 & b6 = b3 .: b7;

:: WEIERSTR:th 6
theorem
for b1, b2 being non empty TopSpace-like TopStruct
for b3 being Function-like quasi_total Relation of the carrier of b1,the carrier of b2
for b4, b5 being Element of bool bool the carrier of b1
      st b4 c= b5
   holds b3 .: b4 c= b3 .: b5;

:: WEIERSTR:th 7
theorem
for b1, b2 being non empty TopSpace-like TopStruct
for b3 being Function-like quasi_total Relation of the carrier of b1,the carrier of b2
for b4 being Element of bool bool the carrier of b2
for b5 being Element of bool the carrier of b2
      st b3 .: (b3 " b4) is_a_cover_of b5
   holds b4 is_a_cover_of b5;

:: WEIERSTR:th 8
theorem
for b1, b2 being non empty TopSpace-like TopStruct
for b3 being Function-like quasi_total Relation of the carrier of b1,the carrier of b2
for b4 being Element of bool bool the carrier of b1
for b5 being Element of bool the carrier of b1
      st b4 is_a_cover_of b5
   holds b3 " (b3 .: b4) is_a_cover_of b5;

:: WEIERSTR:th 9
theorem
for b1, b2 being non empty TopSpace-like TopStruct
for b3 being Function-like quasi_total Relation of the carrier of b1,the carrier of b2
for b4 being Element of bool bool the carrier of b2 holds
   union (b3 .: (b3 " b4)) c= union b4;

:: WEIERSTR:th 10
theorem
for b1, b2 being non empty TopSpace-like TopStruct
for b3 being Function-like quasi_total Relation of the carrier of b1,the carrier of b2
for b4 being Element of bool bool the carrier of b1 holds
   union b4 c= union (b3 " (b3 .: b4));

:: WEIERSTR:th 11
theorem
for b1, b2 being non empty TopSpace-like TopStruct
for b3 being Function-like quasi_total Relation of the carrier of b1,the carrier of b2
for b4 being Element of bool bool the carrier of b2
      st b4 is finite
   holds b3 " b4 is finite;

:: WEIERSTR:th 12
theorem
for b1, b2 being non empty TopSpace-like TopStruct
for b3 being Function-like quasi_total Relation of the carrier of b1,the carrier of b2
for b4 being Element of bool bool the carrier of b1
      st b4 is finite
   holds b3 .: b4 is finite;

:: WEIERSTR:th 13
theorem
for b1, b2 being non empty TopSpace-like TopStruct
for b3 being Function-like quasi_total Relation of the carrier of b1,the carrier of b2
for b4 being Element of bool the carrier of b1
for b5 being Element of bool bool the carrier of b2
      st ex b6 being Element of bool bool the carrier of b1 st
           b6 c= b3 " b5 & b6 is_a_cover_of b4 & b6 is finite
   holds ex b6 being Element of bool bool the carrier of b2 st
      b6 c= b5 & b6 is_a_cover_of b3 .: b4 & b6 is finite;

:: WEIERSTR:th 14
theorem
for b1, b2 being non empty TopSpace-like TopStruct
for b3 being Function-like quasi_total Relation of the carrier of b1,the carrier of b2
for b4 being Element of bool the carrier of b1
      st b4 is compact(b1) & b3 is continuous(b1, b2)
   holds b3 .: b4 is compact(b2);

:: WEIERSTR:th 15
theorem
for b1 being non empty TopSpace-like TopStruct
for b2 being Function-like quasi_total Relation of the carrier of b1,the carrier of R^1
for b3 being Element of bool the carrier of b1
      st b3 is compact(b1) & b2 is continuous(b1, R^1)
   holds b2 .: b3 is compact(R^1);

:: WEIERSTR:th 16
theorem
for b1 being Function-like quasi_total Relation of the carrier of TOP-REAL 2,the carrier of R^1
for b2 being Element of bool the carrier of TOP-REAL 2
      st b2 is compact(TOP-REAL 2) & b1 is continuous(TOP-REAL 2, R^1)
   holds b1 .: b2 is compact(R^1);

:: WEIERSTR:funcnot 3 => WEIERSTR:func 3
definition
  let a1 be Element of bool the carrier of R^1;
  func [#] A1 -> Element of bool REAL equals
    a1;
end;

:: WEIERSTR:def 3
theorem
for b1 being Element of bool the carrier of R^1 holds
   [#] b1 = b1;

:: WEIERSTR:th 17
theorem
for b1 being Element of bool the carrier of R^1
      st b1 is compact(R^1)
   holds [#] b1 is bounded;

:: WEIERSTR:th 18
theorem
for b1 being Element of bool the carrier of R^1
      st b1 is compact(R^1)
   holds [#] b1 is closed;

:: WEIERSTR:th 19
theorem
for b1 being Element of bool the carrier of R^1
      st b1 is compact(R^1)
   holds [#] b1 is compact;

:: WEIERSTR:funcnot 4 => WEIERSTR:func 4
definition
  let a1 be Element of bool the carrier of R^1;
  func upper_bound A1 -> Element of REAL equals
    upper_bound [#] a1;
end;

:: WEIERSTR:def 4
theorem
for b1 being Element of bool the carrier of R^1 holds
   upper_bound b1 = upper_bound [#] b1;

:: WEIERSTR:funcnot 5 => WEIERSTR:func 5
definition
  let a1 be Element of bool the carrier of R^1;
  func lower_bound A1 -> Element of REAL equals
    lower_bound [#] a1;
end;

:: WEIERSTR:def 5
theorem
for b1 being Element of bool the carrier of R^1 holds
   lower_bound b1 = lower_bound [#] b1;

:: WEIERSTR:th 20
theorem
for b1 being non empty TopSpace-like TopStruct
for b2 being Function-like quasi_total Relation of the carrier of b1,the carrier of R^1
for b3 being Element of bool the carrier of b1
      st b3 <> {} & b3 is compact(b1) & b2 is continuous(b1, R^1)
   holds ex b4 being Element of the carrier of b1 st
      b4 in b3 & b2 . b4 = upper_bound (b2 .: b3);

:: WEIERSTR:th 21
theorem
for b1 being non empty TopSpace-like TopStruct
for b2 being Function-like quasi_total Relation of the carrier of b1,the carrier of R^1
for b3 being Element of bool the carrier of b1
      st b3 <> {} & b3 is compact(b1) & b2 is continuous(b1, R^1)
   holds ex b4 being Element of the carrier of b1 st
      b4 in b3 & b2 . b4 = lower_bound (b2 .: b3);

:: WEIERSTR:funcnot 6 => WEIERSTR:func 6
definition
  let a1 be non empty Reflexive discerning symmetric triangle MetrStruct;
  let a2 be Element of the carrier of a1;
  func dist A2 -> Function-like quasi_total Relation of the carrier of TopSpaceMetr a1,the carrier of R^1 means
    for b1 being Element of the carrier of a1 holds
       it . b1 = dist(b1,a2);
end;

:: WEIERSTR:def 6
theorem
for b1 being non empty Reflexive discerning symmetric triangle MetrStruct
for b2 being Element of the carrier of b1
for b3 being Function-like quasi_total Relation of the carrier of TopSpaceMetr b1,the carrier of R^1 holds
      b3 = dist b2
   iff
      for b4 being Element of the carrier of b1 holds
         b3 . b4 = dist(b4,b2);

:: WEIERSTR:th 22
theorem
for b1 being non empty Reflexive discerning symmetric triangle MetrStruct
for b2 being Element of the carrier of b1 holds
   dist b2 is continuous(TopSpaceMetr b1, R^1);

:: WEIERSTR:th 23
theorem
for b1 being non empty Reflexive discerning symmetric triangle MetrStruct
for b2 being Element of the carrier of b1
for b3 being Element of bool the carrier of TopSpaceMetr b1
      st b3 <> {} & b3 is compact(TopSpaceMetr b1)
   holds ex b4 being Element of the carrier of TopSpaceMetr b1 st
      b4 in b3 &
       (dist b2) . b4 = upper_bound ((dist b2) .: b3);

:: WEIERSTR:th 24
theorem
for b1 being non empty Reflexive discerning symmetric triangle MetrStruct
for b2 being Element of the carrier of b1
for b3 being Element of bool the carrier of TopSpaceMetr b1
      st b3 <> {} & b3 is compact(TopSpaceMetr b1)
   holds ex b4 being Element of the carrier of TopSpaceMetr b1 st
      b4 in b3 &
       (dist b2) . b4 = lower_bound ((dist b2) .: b3);

:: WEIERSTR:funcnot 7 => WEIERSTR:func 7
definition
  let a1 be non empty Reflexive discerning symmetric triangle MetrStruct;
  let a2 be Element of bool the carrier of TopSpaceMetr a1;
  func dist_max A2 -> Function-like quasi_total Relation of the carrier of TopSpaceMetr a1,the carrier of R^1 means
    for b1 being Element of the carrier of a1 holds
       it . b1 = upper_bound ((dist b1) .: a2);
end;

:: WEIERSTR:def 7
theorem
for b1 being non empty Reflexive discerning symmetric triangle MetrStruct
for b2 being Element of bool the carrier of TopSpaceMetr b1
for b3 being Function-like quasi_total Relation of the carrier of TopSpaceMetr b1,the carrier of R^1 holds
      b3 = dist_max b2
   iff
      for b4 being Element of the carrier of b1 holds
         b3 . b4 = upper_bound ((dist b4) .: b2);

:: WEIERSTR:funcnot 8 => WEIERSTR:func 8
definition
  let a1 be non empty Reflexive discerning symmetric triangle MetrStruct;
  let a2 be Element of bool the carrier of TopSpaceMetr a1;
  func dist_min A2 -> Function-like quasi_total Relation of the carrier of TopSpaceMetr a1,the carrier of R^1 means
    for b1 being Element of the carrier of a1 holds
       it . b1 = lower_bound ((dist b1) .: a2);
end;

:: WEIERSTR:def 8
theorem
for b1 being non empty Reflexive discerning symmetric triangle MetrStruct
for b2 being Element of bool the carrier of TopSpaceMetr b1
for b3 being Function-like quasi_total Relation of the carrier of TopSpaceMetr b1,the carrier of R^1 holds
      b3 = dist_min b2
   iff
      for b4 being Element of the carrier of b1 holds
         b3 . b4 = lower_bound ((dist b4) .: b2);

:: WEIERSTR:th 25
theorem
for b1 being non empty Reflexive discerning symmetric triangle MetrStruct
for b2 being Element of bool the carrier of TopSpaceMetr b1
   st b2 is compact(TopSpaceMetr b1)
for b3, b4 being Element of the carrier of b1
      st b3 in b2
   holds dist(b3,b4) <= upper_bound ((dist b4) .: b2) &
    lower_bound ((dist b4) .: b2) <= dist(b3,b4);

:: WEIERSTR:th 26
theorem
for b1 being non empty Reflexive discerning symmetric triangle MetrStruct
for b2 being Element of bool the carrier of TopSpaceMetr b1
   st b2 <> {} & b2 is compact(TopSpaceMetr b1)
for b3, b4 being Element of the carrier of b1 holds
abs ((upper_bound ((dist b3) .: b2)) - upper_bound ((dist b4) .: b2)) <= dist(b3,b4);

:: WEIERSTR:th 27
theorem
for b1 being non empty Reflexive discerning symmetric triangle MetrStruct
for b2 being Element of bool the carrier of TopSpaceMetr b1
   st b2 <> {} & b2 is compact(TopSpaceMetr b1)
for b3, b4 being Element of the carrier of b1
for b5, b6 being Element of REAL
      st b5 = (dist_max b2) . b3 & b6 = (dist_max b2) . b4
   holds abs (b5 - b6) <= dist(b3,b4);

:: WEIERSTR:th 28
theorem
for b1 being non empty Reflexive discerning symmetric triangle MetrStruct
for b2 being Element of bool the carrier of TopSpaceMetr b1
   st b2 <> {} & b2 is compact(TopSpaceMetr b1)
for b3, b4 being Element of the carrier of b1 holds
abs ((lower_bound ((dist b3) .: b2)) - lower_bound ((dist b4) .: b2)) <= dist(b3,b4);

:: WEIERSTR:th 29
theorem
for b1 being non empty Reflexive discerning symmetric triangle MetrStruct
for b2 being Element of bool the carrier of TopSpaceMetr b1
   st b2 <> {} & b2 is compact(TopSpaceMetr b1)
for b3, b4 being Element of the carrier of b1
for b5, b6 being Element of REAL
      st b5 = (dist_min b2) . b3 & b6 = (dist_min b2) . b4
   holds abs (b5 - b6) <= dist(b3,b4);

:: WEIERSTR:th 30
theorem
for b1 being non empty Reflexive discerning symmetric triangle MetrStruct
for b2 being Element of bool the carrier of TopSpaceMetr b1
      st b2 <> {} & b2 is compact(TopSpaceMetr b1)
   holds dist_max b2 is continuous(TopSpaceMetr b1, R^1);

:: WEIERSTR:th 31
theorem
for b1 being non empty Reflexive discerning symmetric triangle MetrStruct
for b2, b3 being Element of bool the carrier of TopSpaceMetr b1
      st b2 <> {} & b2 is compact(TopSpaceMetr b1) & b3 <> {} & b3 is compact(TopSpaceMetr b1)
   holds ex b4 being Element of the carrier of TopSpaceMetr b1 st
      b4 in b3 &
       (dist_max b2) . b4 = upper_bound ((dist_max b2) .: b3);

:: WEIERSTR:th 32
theorem
for b1 being non empty Reflexive discerning symmetric triangle MetrStruct
for b2, b3 being Element of bool the carrier of TopSpaceMetr b1
      st b2 <> {} & b2 is compact(TopSpaceMetr b1) & b3 <> {} & b3 is compact(TopSpaceMetr b1)
   holds ex b4 being Element of the carrier of TopSpaceMetr b1 st
      b4 in b3 &
       (dist_max b2) . b4 = lower_bound ((dist_max b2) .: b3);

:: WEIERSTR:th 33
theorem
for b1 being non empty Reflexive discerning symmetric triangle MetrStruct
for b2 being Element of bool the carrier of TopSpaceMetr b1
      st b2 <> {} & b2 is compact(TopSpaceMetr b1)
   holds dist_min b2 is continuous(TopSpaceMetr b1, R^1);

:: WEIERSTR:th 34
theorem
for b1 being non empty Reflexive discerning symmetric triangle MetrStruct
for b2, b3 being Element of bool the carrier of TopSpaceMetr b1
      st b2 <> {} & b2 is compact(TopSpaceMetr b1) & b3 <> {} & b3 is compact(TopSpaceMetr b1)
   holds ex b4 being Element of the carrier of TopSpaceMetr b1 st
      b4 in b3 &
       (dist_min b2) . b4 = upper_bound ((dist_min b2) .: b3);

:: WEIERSTR:th 35
theorem
for b1 being non empty Reflexive discerning symmetric triangle MetrStruct
for b2, b3 being Element of bool the carrier of TopSpaceMetr b1
      st b2 <> {} & b2 is compact(TopSpaceMetr b1) & b3 <> {} & b3 is compact(TopSpaceMetr b1)
   holds ex b4 being Element of the carrier of TopSpaceMetr b1 st
      b4 in b3 &
       (dist_min b2) . b4 = lower_bound ((dist_min b2) .: b3);

:: WEIERSTR:funcnot 9 => WEIERSTR:func 9
definition
  let a1 be non empty Reflexive discerning symmetric triangle MetrStruct;
  let a2, a3 be Element of bool the carrier of TopSpaceMetr a1;
  func min_dist_min(A2,A3) -> Element of REAL equals
    lower_bound ((dist_min a2) .: a3);
end;

:: WEIERSTR:def 9
theorem
for b1 being non empty Reflexive discerning symmetric triangle MetrStruct
for b2, b3 being Element of bool the carrier of TopSpaceMetr b1 holds
min_dist_min(b2,b3) = lower_bound ((dist_min b2) .: b3);

:: WEIERSTR:funcnot 10 => WEIERSTR:func 10
definition
  let a1 be non empty Reflexive discerning symmetric triangle MetrStruct;
  let a2, a3 be Element of bool the carrier of TopSpaceMetr a1;
  func max_dist_min(A2,A3) -> Element of REAL equals
    upper_bound ((dist_min a2) .: a3);
end;

:: WEIERSTR:def 10
theorem
for b1 being non empty Reflexive discerning symmetric triangle MetrStruct
for b2, b3 being Element of bool the carrier of TopSpaceMetr b1 holds
max_dist_min(b2,b3) = upper_bound ((dist_min b2) .: b3);

:: WEIERSTR:funcnot 11 => WEIERSTR:func 11
definition
  let a1 be non empty Reflexive discerning symmetric triangle MetrStruct;
  let a2, a3 be Element of bool the carrier of TopSpaceMetr a1;
  func min_dist_max(A2,A3) -> Element of REAL equals
    lower_bound ((dist_max a2) .: a3);
end;

:: WEIERSTR:def 11
theorem
for b1 being non empty Reflexive discerning symmetric triangle MetrStruct
for b2, b3 being Element of bool the carrier of TopSpaceMetr b1 holds
min_dist_max(b2,b3) = lower_bound ((dist_max b2) .: b3);

:: WEIERSTR:funcnot 12 => WEIERSTR:func 12
definition
  let a1 be non empty Reflexive discerning symmetric triangle MetrStruct;
  let a2, a3 be Element of bool the carrier of TopSpaceMetr a1;
  func max_dist_max(A2,A3) -> Element of REAL equals
    upper_bound ((dist_max a2) .: a3);
end;

:: WEIERSTR:def 12
theorem
for b1 being non empty Reflexive discerning symmetric triangle MetrStruct
for b2, b3 being Element of bool the carrier of TopSpaceMetr b1 holds
max_dist_max(b2,b3) = upper_bound ((dist_max b2) .: b3);

:: WEIERSTR:th 36
theorem
for b1 being non empty Reflexive discerning symmetric triangle MetrStruct
for b2, b3 being Element of bool the carrier of TopSpaceMetr b1
      st b2 <> {} & b2 is compact(TopSpaceMetr b1) & b3 <> {} & b3 is compact(TopSpaceMetr b1)
   holds ex b4, b5 being Element of the carrier of b1 st
      b4 in b2 & b5 in b3 & dist(b4,b5) = min_dist_min(b2,b3);

:: WEIERSTR:th 37
theorem
for b1 being non empty Reflexive discerning symmetric triangle MetrStruct
for b2, b3 being Element of bool the carrier of TopSpaceMetr b1
      st b2 <> {} & b2 is compact(TopSpaceMetr b1) & b3 <> {} & b3 is compact(TopSpaceMetr b1)
   holds ex b4, b5 being Element of the carrier of b1 st
      b4 in b2 & b5 in b3 & dist(b4,b5) = min_dist_max(b2,b3);

:: WEIERSTR:th 38
theorem
for b1 being non empty Reflexive discerning symmetric triangle MetrStruct
for b2, b3 being Element of bool the carrier of TopSpaceMetr b1
      st b2 <> {} & b2 is compact(TopSpaceMetr b1) & b3 <> {} & b3 is compact(TopSpaceMetr b1)
   holds ex b4, b5 being Element of the carrier of b1 st
      b4 in b2 & b5 in b3 & dist(b4,b5) = max_dist_min(b2,b3);

:: WEIERSTR:th 39
theorem
for b1 being non empty Reflexive discerning symmetric triangle MetrStruct
for b2, b3 being Element of bool the carrier of TopSpaceMetr b1
      st b2 <> {} & b2 is compact(TopSpaceMetr b1) & b3 <> {} & b3 is compact(TopSpaceMetr b1)
   holds ex b4, b5 being Element of the carrier of b1 st
      b4 in b2 & b5 in b3 & dist(b4,b5) = max_dist_max(b2,b3);

:: WEIERSTR:th 40
theorem
for b1 being non empty Reflexive discerning symmetric triangle MetrStruct
for b2, b3 being Element of bool the carrier of TopSpaceMetr b1
   st b2 is compact(TopSpaceMetr b1) & b3 is compact(TopSpaceMetr b1)
for b4, b5 being Element of the carrier of b1
      st b4 in b2 & b5 in b3
   holds min_dist_min(b2,b3) <= dist(b4,b5) & dist(b4,b5) <= max_dist_max(b2,b3);