:: Introduction to Banach and Hilbert spaces - Part II :: by Jan Popio{\l}ek :: :: Received July 19, 1991 :: Copyright (c) 1991-2021 Association of Mizar Users :: (Stowarzyszenie Uzytkownikow Mizara, Bialystok, Poland). :: This code can be distributed under the GNU General Public Licence :: version 3.0 or later, or the Creative Commons Attribution-ShareAlike :: License version 3.0 or later, subject to the binding interpretation :: detailed in file COPYING.interpretation. :: See COPYING.GPL and COPYING.CC-BY-SA for the full text of these :: licenses, or see http://www.gnu.org/licenses/gpl.html and :: http://creativecommons.org/licenses/by-sa/3.0/. environ vocabularies NUMBERS, BHSP_1, PRE_TOPC, REAL_1, NAT_1, SUBSET_1, SUPINF_2, SEQ_2, XXREAL_0, CARD_1, METRIC_1, FUNCT_1, ARYTM_3, ARYTM_1, RELAT_1, COMPLEX1, NORMSP_1, ORDINAL2, SEQ_1, TARSKI, STRUCT_0, XBOOLE_0; notations TARSKI, ORDINAL1, SUBSET_1, NUMBERS, XCMPLX_0, XREAL_0, COMPLEX1, REAL_1, NAT_1, SEQ_1, COMSEQ_2, SEQ_2, RELAT_1, VALUED_0, STRUCT_0, PRE_TOPC, RLVECT_1, VFUNCT_1, BHSP_1, NORMSP_1, XXREAL_0; constructors DOMAIN_1, XXREAL_0, REAL_1, NAT_1, COMPLEX1, SEQ_2, BHSP_1, VALUED_1, RELSET_1, VFUNCT_1, COMSEQ_2; registrations ORDINAL1, RELSET_1, XREAL_0, STRUCT_0, VFUNCT_1, FUNCT_2, NAT_1; requirements REAL, NUMERALS, SUBSET, ARITHM; begin reserve X for RealUnitarySpace; reserve x, y, z, g, g1, g2 for Point of X; reserve a, q, r for Real; reserve seq, seq1, seq2, seq9 for sequence of X; reserve k, n, m, m1, m2 for Nat; definition let X, seq; attr seq is convergent means :: BHSP_2:def 1 ex g st for r st r > 0 ex m st for n st n >= m holds dist(seq.n, g) < r; end; registration let X; cluster constant -> convergent for sequence of X; end; theorem :: BHSP_2:1 seq is constant implies seq is convergent; theorem :: BHSP_2:2 seq is convergent & (ex k st for n st k <= n holds seq9.n = seq.n ) implies seq9 is convergent; theorem :: BHSP_2:3 seq1 is convergent & seq2 is convergent implies seq1 + seq2 is convergent; theorem :: BHSP_2:4 seq1 is convergent & seq2 is convergent implies seq1 - seq2 is convergent; theorem :: BHSP_2:5 seq is convergent implies a * seq is convergent; theorem :: BHSP_2:6 seq is convergent implies - seq is convergent; theorem :: BHSP_2:7 seq is convergent implies seq + x is convergent; theorem :: BHSP_2:8 seq is convergent implies seq - x is convergent; theorem :: BHSP_2:9 seq is convergent iff ex g st for r st r > 0 ex m st for n st n >= m holds ||.(seq.n) - g.|| < r; definition let X, seq; assume seq is convergent; func lim seq -> Point of X means :: BHSP_2:def 2 for r st r > 0 ex m st for n st n >= m holds dist((seq.n) , it) < r; end; theorem :: BHSP_2:10 seq is constant & x in rng seq implies lim seq = x; theorem :: BHSP_2:11 seq is constant & (ex n st seq.n = x) implies lim seq = x; theorem :: BHSP_2:12 seq is convergent & (ex k st for n st n >= k holds seq9.n = seq.n) implies lim seq = lim seq9; theorem :: BHSP_2:13 seq1 is convergent & seq2 is convergent implies lim (seq1 + seq2 ) = (lim seq1) + (lim seq2); theorem :: BHSP_2:14 seq1 is convergent & seq2 is convergent implies lim (seq1 - seq2 ) = (lim seq1) - (lim seq2); theorem :: BHSP_2:15 seq is convergent implies lim (a * seq) = a * (lim seq); theorem :: BHSP_2:16 seq is convergent implies lim (- seq) = - (lim seq); theorem :: BHSP_2:17 seq is convergent implies lim (seq + x) = (lim seq) + x; theorem :: BHSP_2:18 seq is convergent implies lim (seq - x) = (lim seq) - x; theorem :: BHSP_2:19 seq is convergent implies ( lim seq = g iff for r st r > 0 ex m st for n st n >= m holds ||.(seq.n) - g.|| < r ); definition let X, seq; func ||.seq.|| -> Real_Sequence means :: BHSP_2:def 3 for n holds it.n =||.(seq.n).||; end; theorem :: BHSP_2:20 seq is convergent implies ||.seq.|| is convergent; theorem :: BHSP_2:21 seq is convergent & lim seq = g implies ||.seq.|| is convergent & lim ||.seq.|| = ||.g.||; theorem :: BHSP_2:22 seq is convergent & lim seq = g implies ||.seq - g.|| is convergent & lim ||.seq - g.|| = 0; definition let X; let seq; let x; func dist(seq, x) -> Real_Sequence means :: BHSP_2:def 4 for n holds it.n =dist((seq. n) , x); end; theorem :: BHSP_2:23 seq is convergent & lim seq = g implies dist(seq, g) is convergent; theorem :: BHSP_2:24 seq is convergent & lim seq = g implies dist(seq, g) is convergent & lim dist(seq, g) = 0; theorem :: BHSP_2:25 seq1 is convergent & lim seq1 = g1 & seq2 is convergent & lim seq2 = g2 implies ||.seq1 + seq2.|| is convergent & lim ||.seq1 + seq2.|| = ||.g1 + g2 .||; theorem :: BHSP_2:26 seq1 is convergent & lim seq1 = g1 & seq2 is convergent & lim seq2 = g2 implies ||.(seq1 + seq2) - (g1 + g2).|| is convergent & lim ||.(seq1 + seq2) - (g1 + g2).|| = 0; theorem :: BHSP_2:27 seq1 is convergent & lim seq1 = g1 & seq2 is convergent & lim seq2 = g2 implies ||.seq1 - seq2.|| is convergent & lim ||.seq1 - seq2.|| = ||.g1 - g2 .||; theorem :: BHSP_2:28 seq1 is convergent & lim seq1 = g1 & seq2 is convergent & lim seq2 = g2 implies ||.(seq1 - seq2) - (g1 - g2).|| is convergent & lim ||.(seq1 - seq2) - (g1 - g2).|| = 0; theorem :: BHSP_2:29 seq is convergent & lim seq = g implies ||.a * seq.|| is convergent & lim ||.a * seq.|| = ||.a * g.||; theorem :: BHSP_2:30 seq is convergent & lim seq = g implies ||.(a * seq) - (a * g).|| is convergent & lim ||.(a * seq) - (a * g).|| = 0; theorem :: BHSP_2:31 seq is convergent & lim seq = g implies ||.- seq.|| is convergent & lim ||.- seq.|| = ||.- g.||; theorem :: BHSP_2:32 seq is convergent & lim seq = g implies ||.(- seq) - (- g).|| is convergent & lim ||.(- seq) - (- g).|| = 0; theorem :: BHSP_2:33 seq is convergent & lim seq = g implies ||.(seq + x) - (g + x) .|| is convergent & lim ||.(seq + x) - (g + x).|| = 0; theorem :: BHSP_2:34 seq is convergent & lim seq = g implies ||.seq - x.|| is convergent & lim ||.seq - x.|| = ||.g - x.||; theorem :: BHSP_2:35 seq is convergent & lim seq = g implies ||.(seq - x) - (g - x).|| is convergent & lim ||.(seq - x) - (g - x).|| = 0; theorem :: BHSP_2:36 seq1 is convergent & lim seq1 = g1 & seq2 is convergent & lim seq2 = g2 implies dist((seq1 + seq2) , (g1 + g2)) is convergent & lim dist((seq1 + seq2) , (g1 + g2)) = 0; theorem :: BHSP_2:37 seq1 is convergent & lim seq1 = g1 & seq2 is convergent & lim seq2 = g2 implies dist((seq1 - seq2) , (g1 - g2)) is convergent & lim dist((seq1 - seq2) , (g1 - g2)) = 0; theorem :: BHSP_2:38 seq is convergent & lim seq = g implies dist((a * seq) , (a * g)) is convergent & lim dist((a * seq) , (a * g)) = 0; theorem :: BHSP_2:39 seq is convergent & lim seq = g implies dist((seq + x) , (g + x)) is convergent & lim dist((seq + x) , (g + x)) = 0; definition let X, x, r; func Ball(x,r) -> Subset of X equals :: BHSP_2:def 5 {y where y is Point of X : ||.x - y.|| < r}; func cl_Ball(x,r) -> Subset of X equals :: BHSP_2:def 6 {y where y is Point of X : ||.x - y .|| <= r}; func Sphere(x,r) -> Subset of X equals :: BHSP_2:def 7 {y where y is Point of X : ||.x - y .|| = r}; end; theorem :: BHSP_2:40 z in Ball(x,r) iff ||.x - z.|| < r; theorem :: BHSP_2:41 z in Ball(x,r) iff dist(x,z) < r; theorem :: BHSP_2:42 r > 0 implies x in Ball(x,r); theorem :: BHSP_2:43 y in Ball(x,r) & z in Ball(x,r) implies dist(y,z) < 2 * r; theorem :: BHSP_2:44 y in Ball(x,r) implies y - z in Ball(x - z,r); theorem :: BHSP_2:45 y in Ball(x,r) implies (y - x) in Ball (0.(X),r); theorem :: BHSP_2:46 y in Ball(x,r) & r <= q implies y in Ball(x,q); theorem :: BHSP_2:47 z in cl_Ball(x,r) iff ||.x - z.|| <= r; theorem :: BHSP_2:48 z in cl_Ball(x,r) iff dist(x,z) <= r; theorem :: BHSP_2:49 r >= 0 implies x in cl_Ball(x,r); theorem :: BHSP_2:50 y in Ball(x,r) implies y in cl_Ball(x,r); theorem :: BHSP_2:51 z in Sphere(x,r) iff ||.x - z.|| = r; theorem :: BHSP_2:52 z in Sphere(x,r) iff dist(x,z) = r; theorem :: BHSP_2:53 y in Sphere(x,r) implies y in cl_Ball(x,r); theorem :: BHSP_2:54 Ball(x,r) c= cl_Ball(x,r); theorem :: BHSP_2:55 Sphere(x,r) c= cl_Ball(x,r); theorem :: BHSP_2:56 Ball(x,r) \/ Sphere(x,r) = cl_Ball(x,r);