HomeHome Metamath Proof Explorer < Previous   Next >
Related theorems
Unicode version

Definition df-seq1 6253
Description: Define a general-purpose operation that builds an recursive sequence (i.e. a function on the natural numbers NN) whose value at an index is a function of its previous value and the value of an input sequence at that index. This definition is complicated, but fortunately it is not intended to be used directly. Instead, the only purpose of this definition is to provide us with an object that has the properties expressed by seq11 6262 and seq1p1 6263. Typically, those are the main theorems that would be used in practice.

The first operand is the operation that is applied to the previous value and the value of the input sequence (second operand). For example, for the operation +, an input sequence F with values 1, 1/2, 1/4, 1/8,... would be transformed into the output sequence ( + seq1 F) with values 1, 3/2, 7/4, 15/8,.., so that (( + seq1 F)` 1) = 1, (( + seq1 F)` 2) = 3/2, etc. In other words, ( + seq1 F) transforms a sequence F into an infinite series. ( + seq1 F) ~~> 2 means "the sum of F(n) from n = 1 to infinity is 2." Since limits are unique (climuni 7044), then by eusn 2442 and unisn 2512 the "sum of F(n) from n = 1 to infinity" can be expressed as U.{x | ( + seq1 F) ~~> x} (provided the sequence converges) and evaluates to 2 in this example.

Internally, we define a recursive function whose values are ordered pairs starting at <.1, (g` 1)>.. The first member of the ordered pair is a counter used to select the appropriate value of the input sequence g. The first rec constructs this function on om, and the converse of the second rec maps NN to om.

This definition has its roots in a series of theorems starting at om2uz0 6240, originally proved by Raph Levien for use with df-exp 6509 and later generalized for arbitrary recursive sequences. The related definitions df-seq0 6474 and df-seqz 6473 build recursive sequences on NN0 and general upper integer sets respectively. Definition df-sum 6926 extracts the summation values from partial (finite) and complete (infinite) series.

Assertion
Ref Expression
df-seq1 |- seq1 = {<.<.f, g>., h>. | h = {<.x, y>. | (x e. NN /\ y = (2nd`
((rec({<.z, w>. | w = <.((1st` z) + 1), ((2nd`
z)f(g` ((1st` z) + 1)))>.}, <.1, (g` 1)>.) o. `'(rec({<.z, w>. | w = (z + 1)}, 1) |` om))` x)))}}
Distinct variable group:   x,y,z,w,f,g,h

Detailed syntax breakdown of Definition df-seq1
StepHypRef Expression
1 cseq1 6252 . 2 class seq1
2 vh . . . . 5 set h
32cv 953 . . . 4 class h
4 vx . . . . . . . 8 set x
54cv 953 . . . . . . 7 class x
6 cn 5276 . . . . . . 7 class NN
75, 6wcel 956 . . . . . 6 wff x e. NN
8 vy . . . . . . . 8 set y
98cv 953 . . . . . . 7 class y
10 vw . . . . . . . . . . . . . 14 set w
1110cv 953 . . . . . . . . . . . . 13 class w
12 vz . . . . . . . . . . . . . . . . 17 set z
1312cv 953 . . . . . . . . . . . . . . . 16 class z
14 c1st 4067 . . . . . . . . . . . . . . . 16 class 1st
1513, 14cfv 3177 . . . . . . . . . . . . . . 15 class (1st`
z)
16 c1 5215 . . . . . . . . . . . . . . 15 class 1
17 caddc 5217 . . . . . . . . . . . . . . 15 class +
1815, 16, 17co 3954 . . . . . . . . . . . . . 14 class ((1st` z) + 1)
19 c2nd 4068 . . . . . . . . . . . . . . . 16 class 2nd
2013, 19cfv 3177 . . . . . . . . . . . . . . 15 class (2nd`
z)
21 vg . . . . . . . . . . . . . . . . 17 set g
2221cv 953 . . . . . . . . . . . . . . . 16 class g
2318, 22cfv 3177 . . . . . . . . . . . . . . 15 class (g` ((1st`
z) + 1))
24 vf . . . . . . . . . . . . . . . 16 set f
2524cv 953 . . . . . . . . . . . . . . 15 class f
2620, 23, 25co 3954 . . . . . . . . . . . . . 14 class ((2nd` z)f(g` ((1st` z) + 1)))
2718, 26cop 2407 . . . . . . . . . . . . 13 class <.((1st` z) + 1), ((2nd`
z)f(g` ((1st` z) + 1)))>.
2811, 27wceq 954 . . . . . . . . . . . 12 wff w = <.((1st`
z) + 1), ((2nd` z)f(g` ((1st`
z) + 1)))>.
2928, 12, 10copab 2661 . . . . . . . . . . 11 class {<.z, w>. | w = <.((1st` z) + 1), ((2nd` z)f(g` ((1st` z) + 1)))>.}
3016, 22cfv 3177 . . . . . . . . . . . 12 class (g` 1)
3116, 30cop 2407 . . . . . . . . . . 11 class <.1, (g` 1)>.
3229, 31crdg 3922 . . . . . . . . . 10 class rec({<.z, w>. | w = <.((1st` z) + 1), ((2nd` z)f(g` ((1st` z) + 1)))>.}, <.1, (g` 1)>.)
3313, 16, 17co 3954 . . . . . . . . . . . . . . 15 class (z + 1)
3411, 33wceq 954 . . . . . . . . . . . . . 14 wff w = (z + 1)
3534, 12, 10copab 2661 . . . . . . . . . . . . 13 class {<.z, w>. | w = (z + 1)}
3635, 16crdg 3922 . . . . . . . . . . . 12 class rec({<.z, w>. | w = (z + 1)}, 1)
37 com 3126 . . . . . . . . . . . 12 class om
3836, 37cres 3167 . . . . . . . . . . 11 class (rec({<.z, w>. | w = (z + 1)}, 1) |` om)
3938ccnv 3164 . . . . . . . . . 10 class `'(rec({<.z, w>. | w = (z + 1)}, 1) |` om)
4032, 39ccom 3169 . . . . . . . . 9 class (rec({<.z, w>. | w = <.((1st` z) + 1), ((2nd`
z)f(g` ((1st` z) + 1)))>.}, <.1, (g` 1)>.) o. `'(rec({<.z, w>. | w = (z + 1)}, 1) |` om))
415, 40cfv 3177 . . . . . . . 8 class ((rec({<.z, w>. | w = <.((1st` z) + 1), ((2nd` z)f(g` ((1st` z) + 1)))>.}, <.1, (g` 1)>.) o. `'(rec({<.z, w>. | w = (z + 1)}, 1) |` om))` x)
4241, 19cfv 3177 . . . . . . 7 class (2nd`
((rec({<.z, w>. | w = <.((1st` z) + 1), ((2nd`
z)f(g` ((1st` z) + 1)))>.}, <.1, (g` 1)>.) o. `'(rec({<.z, w>. | w = (z + 1)}, 1) |` om))` x))
439, 42wceq 954 . . . . . 6 wff y = (2nd` ((rec({<.z, w>. | w = <.((1st` z) + 1), ((2nd` z)f(g` ((1st` z) + 1)))>.}, <.1, (g` 1)>.) o. `'(rec({<.z, w>. | w = (z + 1)}, 1) |` om))` x))
447, 43wa 223 . . . . 5 wff (x e. NN /\ y = (2nd`
((rec({<.z, w>. | w = <.((1st` z) + 1), ((2nd`
z)f(g` ((1st` z) + 1)))>.}, <.1, (g` 1)>.) o. `'(rec({<.z, w>. | w = (z + 1)}, 1) |` om))` x)))
4544, 4, 8copab 2661 . . . 4 class {<.x, y>. | (x e. NN /\ y = (2nd` ((rec({<.z, w>. | w = <.((1st` z) + 1), ((2nd` z)f(g` ((1st` z) + 1)))>.}, <.1, (g` 1)>.) o. `'(rec({<.z, w>. | w = (z + 1)}, 1) |` om))` x)))}
463, 45wceq 954 . . 3 wff h = {<.x, y>. | (x e. NN /\ y = (2nd`
((rec({<.z, w>. | w = <.((1st` z) + 1), ((2nd`
z)f(g` ((1st` z) + 1)))>.}, <.1, (g` 1)>.) o. `'(rec({<.z, w>. | w = (z + 1)}, 1) |` om))` x)))}
4746, 24, 21, 2copab2 3955 . 2 class {<.<.f, g>., h>. | h = {<.x, y>. | (x e. NN /\ y = (2nd` ((rec({<.z, w>. | w = <.((1st` z) + 1), ((2nd` z)f(g` ((1st` z) + 1)))>.}, <.1, (g` 1)>.) o. `'(rec({<.z, w>. | w = (z + 1)}, 1) |` om))` x)))}}
481, 47wceq 954 1 wff seq1 = {<.<.f, g>., h>. | h = {<.x, y>. | (x e. NN /\ y = (2nd`
((rec({<.z, w>. | w = <.((1st` z) + 1), ((2nd`
z)f(g` ((1st` z) + 1)))>.}, <.1, (g` 1)>.) o. `'(rec({<.z, w>. | w = (z + 1)}, 1) |` om))` x)))}}
Colors of variables: wff set class
This definition is referenced by:  seq1val 6257
Copyright terms: Public domain