11 theory SEQ |
11 theory SEQ |
12 imports NatStar |
12 imports NatStar |
13 begin |
13 begin |
14 |
14 |
15 definition |
15 definition |
16 |
|
17 LIMSEQ :: "[nat => 'a::real_normed_vector, 'a] => bool" |
16 LIMSEQ :: "[nat => 'a::real_normed_vector, 'a] => bool" |
18 ("((_)/ ----> (_))" [60, 60] 60) |
17 ("((_)/ ----> (_))" [60, 60] 60) where |
19 --{*Standard definition of convergence of sequence*} |
18 --{*Standard definition of convergence of sequence*} |
20 "X ----> L = (\<forall>r. 0 < r --> (\<exists>no. \<forall>n. no \<le> n --> norm (X n - L) < r))" |
19 "X ----> L = (\<forall>r. 0 < r --> (\<exists>no. \<forall>n. no \<le> n --> norm (X n - L) < r))" |
21 |
20 |
|
21 definition |
22 NSLIMSEQ :: "[nat => 'a::real_normed_vector, 'a] => bool" |
22 NSLIMSEQ :: "[nat => 'a::real_normed_vector, 'a] => bool" |
23 ("((_)/ ----NS> (_))" [60, 60] 60) |
23 ("((_)/ ----NS> (_))" [60, 60] 60) where |
24 --{*Nonstandard definition of convergence of sequence*} |
24 --{*Nonstandard definition of convergence of sequence*} |
25 "X ----NS> L = (\<forall>N \<in> HNatInfinite. ( *f* X) N \<approx> star_of L)" |
25 "X ----NS> L = (\<forall>N \<in> HNatInfinite. ( *f* X) N \<approx> star_of L)" |
26 |
26 |
27 lim :: "(nat => 'a::real_normed_vector) => 'a" |
27 definition |
|
28 lim :: "(nat => 'a::real_normed_vector) => 'a" where |
28 --{*Standard definition of limit using choice operator*} |
29 --{*Standard definition of limit using choice operator*} |
29 "lim X = (THE L. X ----> L)" |
30 "lim X = (THE L. X ----> L)" |
30 |
31 |
31 nslim :: "(nat => 'a::real_normed_vector) => 'a" |
32 definition |
|
33 nslim :: "(nat => 'a::real_normed_vector) => 'a" where |
32 --{*Nonstandard definition of limit using choice operator*} |
34 --{*Nonstandard definition of limit using choice operator*} |
33 "nslim X = (THE L. X ----NS> L)" |
35 "nslim X = (THE L. X ----NS> L)" |
34 |
36 |
35 convergent :: "(nat => 'a::real_normed_vector) => bool" |
37 definition |
|
38 convergent :: "(nat => 'a::real_normed_vector) => bool" where |
36 --{*Standard definition of convergence*} |
39 --{*Standard definition of convergence*} |
37 "convergent X = (\<exists>L. X ----> L)" |
40 "convergent X = (\<exists>L. X ----> L)" |
38 |
41 |
39 NSconvergent :: "(nat => 'a::real_normed_vector) => bool" |
42 definition |
|
43 NSconvergent :: "(nat => 'a::real_normed_vector) => bool" where |
40 --{*Nonstandard definition of convergence*} |
44 --{*Nonstandard definition of convergence*} |
41 "NSconvergent X = (\<exists>L. X ----NS> L)" |
45 "NSconvergent X = (\<exists>L. X ----NS> L)" |
42 |
46 |
43 Bseq :: "(nat => 'a::real_normed_vector) => bool" |
47 definition |
|
48 Bseq :: "(nat => 'a::real_normed_vector) => bool" where |
44 --{*Standard definition for bounded sequence*} |
49 --{*Standard definition for bounded sequence*} |
45 "Bseq X = (\<exists>K>0.\<forall>n. norm (X n) \<le> K)" |
50 "Bseq X = (\<exists>K>0.\<forall>n. norm (X n) \<le> K)" |
46 |
51 |
47 NSBseq :: "(nat => 'a::real_normed_vector) => bool" |
52 definition |
|
53 NSBseq :: "(nat => 'a::real_normed_vector) => bool" where |
48 --{*Nonstandard definition for bounded sequence*} |
54 --{*Nonstandard definition for bounded sequence*} |
49 "NSBseq X = (\<forall>N \<in> HNatInfinite. ( *f* X) N : HFinite)" |
55 "NSBseq X = (\<forall>N \<in> HNatInfinite. ( *f* X) N : HFinite)" |
50 |
56 |
51 monoseq :: "(nat=>real)=>bool" |
57 definition |
|
58 monoseq :: "(nat=>real)=>bool" where |
52 --{*Definition for monotonicity*} |
59 --{*Definition for monotonicity*} |
53 "monoseq X = ((\<forall>m. \<forall>n\<ge>m. X m \<le> X n) | (\<forall>m. \<forall>n\<ge>m. X n \<le> X m))" |
60 "monoseq X = ((\<forall>m. \<forall>n\<ge>m. X m \<le> X n) | (\<forall>m. \<forall>n\<ge>m. X n \<le> X m))" |
54 |
61 |
55 subseq :: "(nat => nat) => bool" |
62 definition |
|
63 subseq :: "(nat => nat) => bool" where |
56 --{*Definition of subsequence*} |
64 --{*Definition of subsequence*} |
57 "subseq f = (\<forall>m. \<forall>n>m. (f m) < (f n))" |
65 "subseq f = (\<forall>m. \<forall>n>m. (f m) < (f n))" |
58 |
66 |
59 Cauchy :: "(nat => 'a::real_normed_vector) => bool" |
67 definition |
|
68 Cauchy :: "(nat => 'a::real_normed_vector) => bool" where |
60 --{*Standard definition of the Cauchy condition*} |
69 --{*Standard definition of the Cauchy condition*} |
61 "Cauchy X = (\<forall>e>0. \<exists>M. \<forall>m \<ge> M. \<forall>n \<ge> M. norm (X m - X n) < e)" |
70 "Cauchy X = (\<forall>e>0. \<exists>M. \<forall>m \<ge> M. \<forall>n \<ge> M. norm (X m - X n) < e)" |
62 |
71 |
63 NSCauchy :: "(nat => 'a::real_normed_vector) => bool" |
72 definition |
|
73 NSCauchy :: "(nat => 'a::real_normed_vector) => bool" where |
64 --{*Nonstandard definition*} |
74 --{*Nonstandard definition*} |
65 "NSCauchy X = (\<forall>M \<in> HNatInfinite. \<forall>N \<in> HNatInfinite. ( *f* X) M \<approx> ( *f* X) N)" |
75 "NSCauchy X = (\<forall>M \<in> HNatInfinite. \<forall>N \<in> HNatInfinite. ( *f* X) M \<approx> ( *f* X) N)" |
66 |
76 |
67 |
77 |
68 subsection {* Limits of Sequences *} |
78 subsection {* Limits of Sequences *} |