#set document(title: "7.1 Power Series", author: "Jiří Lebl") #set page(width: 8.5in, height: auto, margin: 1in) #import "@preview/cetz:0.5.2" #set text(font: ("STIX Two Text", "Libertinus Serif", "New Computer Modern"), size: 10.5pt, lang: "en") #show math.equation: set text(font: ("STIX Two Math", "New Computer Modern Math")) #set par(justify: true, leading: 0.62em, spacing: 0.9em) #set enum(spacing: 1.1em) // room between list items so tall inline fractions don't collide #set list(spacing: 1.1em) #set table(stroke: 0.5pt + rgb("#c7ccd3")) #let BLUE = rgb("#183B6F") // brand navy — section bars + example/solution labels (white on navy 11.09:1) #let ORANGE = rgb("#A94509") // brand primary-700 — AA-safe deep orange for TEXT (5.93:1 on white; raw brand #F37021 is 2.94:1 and must never carry text) #let RED = rgb("#DC2626") // brand error-600 #let GREEN = rgb("#059669") // brand success-600 (decoration only; small green text uses green-text #007942) #show heading.where(level: 1): it => block(width: 100%, above: 0pt, below: 16pt, fill: gradient.linear(BLUE, rgb("#2C5AA0")), inset: (x: 14pt, y: 12pt), radius: 3pt, text(fill: white, weight: "bold", size: 19pt, it.body)) #show heading.where(level: 2): it => block(width: 100%, above: 18pt, below: 10pt, fill: BLUE, inset: (x: 10pt, y: 6pt), radius: 2pt, text(fill: white, weight: "bold", size: 12pt, it.body)) #show heading.where(level: 3): it => text(fill: ORANGE, weight: "bold", size: 12.5pt, it.body) #show heading.where(level: 4): it => text(fill: BLUE, weight: "bold", size: 10.5pt, it.body) #let examplebox(label, title, body) = block(width: 100%, breakable: true, fill: rgb("#EFF1F5"), stroke: 0.5pt + rgb("#CFDDF0"), radius: 4pt, inset: 10pt, above: 12pt, below: 12pt)[ #block(below: 6pt)[#box(fill: BLUE, inset: (x: 6pt, y: 2pt), radius: 2pt, text(fill: white, weight: "bold", size: 8.5pt, label)) #h(0.4em) #strong[#title]] #body] // rail = decorative left rule (raw brand token); labelcolor = AA-safe label text shade #let notebox(label, rail, labelcolor, tint, body) = block(width: 100%, breakable: true, fill: tint, stroke: (left: 3pt + rail), inset: (left: 10pt, rest: 8pt), radius: (right: 4pt), above: 11pt, below: 11pt)[ #text(fill: labelcolor, weight: "bold", size: 7.5pt, tracking: 0.5pt)[#upper(label)] #linebreak() #body] #let solutionbox(body) = block(above: 4pt, below: 8pt)[ #text(fill: BLUE, weight: "bold", size: 8.5pt)[Solution] #linebreak() #body] #let figph(msg) = block(width: 100%, height: 60pt, fill: rgb("#f6f7f9"), stroke: (paint: rgb("#c7ccd3"), dash: "dashed"), radius: 4pt, inset: 10pt)[ #align(center + horizon, text(fill: rgb("#889"), style: "italic", size: 9pt, msg))] // Standardize inlined figure sizes: measure the natural CeTZ canvas, then scale to a // consistent envelope (aspect-aware; see build_typst.py FIG_* constants). Unlike the // print preamble, dimensions are FLOORED: in an editor a user can trim a figure to a // degenerate 1-D shape (a bare line), and w/h or tw/w would then divide by zero. #let _STD_W = 3.5 #let _WIDE_W = 5.6 #let _MAX_H = 3.4 #let _ASPECT_WIDE = 2.2 #let _UPSCALE_MAX = 1.15 #let stdfig(body) = context { let m = measure(body) let w = calc.max(m.width / 1in, 0.01) let h = calc.max(m.height / 1in, 0.01) let tw = if w / h > _ASPECT_WIDE { _WIDE_W } else { _STD_W } let s = calc.min(tw / w, _MAX_H / h, _UPSCALE_MAX) align(center, box(scale(x: s * 100%, y: s * 100%, reflow: true, body))) } #show figure: set block(breakable: false) #set figure(gap: 8pt) #show figure.caption: set text(size: 8.5pt, fill: rgb("#555")) == 7.1#h(0.6em)Power Series Many functions can be written in terms of a power series #math.equation(block: true, alt: "∑ k equals 0 infinity a sub k open parenthesis x minus x sub 0 close parenthesis to the power k")[$∑_(k = 0)^(∞) a_(k) ( x − x_(0) )^(k)$] If we assume that a solution of a differential equation is written as a power series, then perhaps we can use a method reminiscent of #link("https://math.libretexts.org/Bookshelves/Differential_Equations/Elementary_Differential_Equations_with_Boundary_Value_Problems_(Trench)/05%3A_Linear_Second_Order_Equations/5.04%3A_The_Method_of_Undetermined_Coefficients_I")[undetermined coefficients]. That is, we will try to solve for the numbers #math.equation(block: false, alt: "a sub k")[$a_(k)$]. Before we can carry out this process, let us review some results and concepts about power series. === Definition As we said, a power series is an expression such as #math.equation(block: true, alt: "∑ k equals 0 infinity a sub k open parenthesis x minus x sub 0 close parenthesis to the power k equals a sub 0 plus a sub 1 open parenthesis x minus x sub 0 close parenthesis plus a sub 2 open parenthesis x minus x sub 0 close parenthesis squared plus a sub 3 open parenthesis x minus x sub 0 close parenthesis cubed plus ⋯ ,")[$∑_(k = 0)^(∞) a_(k) attach(( x − x_(0) ), t: k) = a_(0) + a_(1) ( x − x_(0) ) + a_(2) attach(( x − x_(0) ), t: 2) + a_(3) attach(( x − x_(0) ), t: 3) + ⋯ ,$] where #math.equation(block: false, alt: "a sub 0 , a sub 1 , a sub 2 , … , a sub k , …")[$a_(0) , a_(1) , a_(2) , … , a_(k) , …$] and #math.equation(block: false, alt: "x sub 0")[$x_(0)$] are constants. Let #math.equation(block: true, alt: "S sub n open parenthesis x close parenthesis equals ∑ k equals 0 n a sub k open parenthesis x minus x sub 0 close parenthesis to the power k equals a sub 0 plus a sub 1 open parenthesis x minus x sub 0 close parenthesis plus a sub 2 open parenthesis x minus x sub 0 close parenthesis squared plus a sub 3 open parenthesis x minus x sub 0 close parenthesis cubed plus ⋯ plus a sub n open parenthesis x minus x sub 0 close parenthesis to the power n ,")[$S_(n) ( x ) = ∑_(k = 0)^(n) a_(k) attach(( x − x_(0) ), t: k) = a_(0) + a_(1) ( x − x_(0) ) + a_(2) attach(( x − x_(0) ), t: 2) + a_(3) attach(( x − x_(0) ), t: 3) + ⋯ + a_(n) attach(( x − x_(0) ), t: n) ,$] denote the so-called #emph[partial sum]. If for some #math.equation(block: false, alt: "x")[$x$], the limit #math.equation(block: true, alt: "lim sub n → infinity S sub n open parenthesis x close parenthesis equals lim sub n → infinity ∑ k equals 0 n a sub k open parenthesis x minus x sub 0 close parenthesis to the power k")[$lim_(n → ∞) S_(n) ( x ) = lim_(n → ∞) ∑_(k = 0)^(n) a_(k) attach(( x − x_(0) ), t: k)$] exists, then we say that the series (7.1.1) converges at #math.equation(block: false, alt: "x")[$x$]. Note that for #math.equation(block: false, alt: "x equals x sub 0")[$x = x_(0)$], the series always converges to #math.equation(block: false, alt: "a sub 0")[$a_(0)$]. When (7.1.1) converges at any other point #math.equation(block: false, alt: "x not equal to x sub 0")[$x ≠ x_(0)$], we say that (7.1.1) is a convergent power series. In this case we write #math.equation(block: true, alt: "∑ k equals 0 infinity a sub k open parenthesis x minus x sub 0 close parenthesis to the power k equals lim sub n → infinity ∑ k equals 0 n a sub k open parenthesis x minus x sub 0 close parenthesis to the power k .")[$∑_(k = 0)^(∞) a_(k) attach(( x − x_(0) ), t: k) = lim_(n → ∞) ∑_(k = 0)^(n) a_(k) attach(( x − x_(0) ), t: k) .$] If the series does not converge for any point #math.equation(block: false, alt: "x not equal to x sub 0")[$x ≠ x_(0)$], we say that the series is divergent. #examplebox("Example 1")[][ The series #math.equation(block: true, alt: "∑ k equals 0 infinity the fraction 1 over k ! x to the power k equals 1 plus x plus the fraction x squared over 2 plus the fraction x cubed over 6 plus ⋯")[$∑_(k = 0)^(∞) frac(1, k !) x^(k) = 1 + x + frac(x^(2), 2) + frac(x^(3), 6) + ⋯$] is convergent for any #math.equation(block: false, alt: "x")[$x$]. Recall that #math.equation(block: false, alt: "k ! equals 1 times 2 times 3 ⋯ k")[$k ! = 1 · 2 · 3 ⋯ k$] is the factorial. By convention we define #math.equation(block: false, alt: "0 ! equals 1")[$0 ! = 1$]. In fact, you may recall that this series converges to #math.equation(block: false, alt: "e to the power x")[$e^(x)$]. We say that (7.1.1) converges absolutely at #math.equation(block: false, alt: "x")[$x$] whenever the limit #math.equation(block: true, alt: "lim sub n → infinity ∑ k equals 0 n | a sub k | | x minus x sub 0 | to the power k")[$lim_(n → ∞) ∑_(k = 0)^(n) | a_(k) | attach(| x − x_(0) |, t: k)$] exists. That is, the series #math.equation(block: false, alt: "∑ k equals 0 infinity | a sub k | | x minus x sub 0 | to the power k")[$∑_(k = 0)^(∞) | a_(k) | attach(| x − x_(0) |, t: k)$] is convergent. If (7.1.1) converges absolutely at #math.equation(block: false, alt: "x")[$x$], then it converges at #math.equation(block: false, alt: "x")[$x$]. However, the opposite implication is not true. ] #examplebox("Example 2")[][ The series #math.equation(block: true, alt: "∑ k equals 1 infinity the fraction 1 over k x to the power k")[$∑_(k = 1)^(∞) frac(1, k) x^(k)$] converges absolutely for all #math.equation(block: false, alt: "x")[$x$] in the interval #math.equation(block: false, alt: "open parenthesis minus 1 , 1 close parenthesis")[$( − 1 , 1 )$]. It converges at #math.equation(block: false, alt: "x equals minus 1")[$x = − 1$], as #math.equation(block: false, alt: "∑ k equals 1 infinity the fraction open parenthesis minus 1 close parenthesis to the power k over k")[$∑_(k = 1)^(∞) frac(attach(( − 1 ), t: k), k)$] converges (conditionally) by the alternating series test. But the power series does not converge absolutely at #math.equation(block: false, alt: "x equals minus 1")[$x = − 1$], because #math.equation(block: false, alt: "∑ k equals 1 infinity the fraction 1 over k")[$∑_(k = 1)^(∞) frac(1, k)$] does not converge. The series diverges at #math.equation(block: false, alt: "x equals 1")[$x = 1$]. ] === Radius of Convergence If a power series converges absolutely at some #math.equation(block: false, alt: "x sub 1")[$x_(1)$], then for all #math.equation(block: false, alt: "x")[$x$] such that #math.equation(block: false, alt: "| x minus x sub 0 | less than or equal to | x sub 1 minus x sub 0 |")[$| x − x_(0) | ≤ | x_(1) − x_(0) |$] (that is, #math.equation(block: false, alt: "x")[$x$] is closer than #math.equation(block: false, alt: "x sub 1")[$x_(1)$] to #math.equation(block: false, alt: "x sub 0")[$x_(0)$]) we have #math.equation(block: false, alt: "| a sub k open parenthesis x minus x sub 0 close parenthesis to the power k | less than or equal to | a sub k open parenthesis x sub 1 minus x sub 0 close parenthesis to the power k |")[$| a_(k) attach(( x − x_(0) ), t: k) | ≤ | a_(k) attach(( x_(1) − x_(0) ), t: k) |$] for all #math.equation(block: false, alt: "k")[$k$]. As the numbers #math.equation(block: false, alt: "| a sub k open parenthesis x sub 1 minus x sub 0 close parenthesis to the power k |")[$| a_(k) attach(( x_(1) − x_(0) ), t: k) |$] sum to some finite limit, summing smaller positive numbers #math.equation(block: false, alt: "| a sub k open parenthesis x minus x sub 0 close parenthesis to the power k |")[$| a_(k) attach(( x − x_(0) ), t: k) |$] must also have a finite limit. Hence, the series must converge absolutely at #math.equation(block: false, alt: "x")[$x$]. #notebox("Note", rgb("#8a94a6"), rgb("#556666"), rgb("#f7f8fa"))[ For a power series (7.1.1), there exists a number #math.equation(block: false, alt: "ρ")[$ρ$] (we allow #math.equation(block: false, alt: "ρ equals infinity")[$ρ = ∞$]) called the radius of convergence such that the series converges absolutely on the interval #math.equation(block: false, alt: "open parenthesis x sub 0 minus ρ , x sub 0 plus ρ close parenthesis")[$( x_(0) − ρ , #h(0.222em) x_(0) + ρ )$] and diverges for #math.equation(block: false, alt: "x less than x sub 0 minus ρ")[$x < x_(0) − ρ$] and #math.equation(block: false, alt: "x greater than x sub 0 plus ρ")[$x > x_(0) + ρ$]. We write #math.equation(block: false, alt: "ρ equals infinity")[$ρ = ∞$] if the series converges for all #math.equation(block: false, alt: "x")[$x$]. ] #figure(figph[Diagram of power series convergence on a number line: the shaded band from x sub 0 minus rho to x sub 0 plus rho is labelled converges absolutely, diverges beyond each endpoint.], alt: "Diagram of power series convergence on a number line: the shaded band from x sub 0 minus rho to x sub 0 plus rho is labelled converges absolutely, diverges beyond each endpoint.", caption: [Figure #math.equation(block: false, alt: "1")[$1$]: Convergence of a power series.]) See Figure #math.equation(block: false, alt: "1")[$1$]. In Example #math.equation(block: false, alt: "1")[$1$] the radius of convergence is #math.equation(block: false, alt: "ρ equals infinity")[$ρ = ∞$] as the series converges everywhere. In Example #math.equation(block: false, alt: "2")[$2$] the radius of convergence is #math.equation(block: false, alt: "ρ equals 1")[$ρ = 1$]. We note that #math.equation(block: false, alt: "ρ equals 0")[$ρ = 0$] is another way of saying that the series is divergent. A useful test for convergence of a series is the #emph[ratio test]. Suppose that #math.equation(block: true, alt: "∑ k equals 0 infinity c sub k")[$∑_(k = 0)^(∞) c_(k)$] is a series such that the limit #math.equation(block: true, alt: "L equals lim sub n → infinity | the fraction c sub k plus 1 over c sub k |")[$L = lim_(n → ∞) | frac(c_(k + 1), c_(k)) |$] exists. Then the series converges absolutely if #math.equation(block: false, alt: "L less than 1")[$L < 1$] and diverges if #math.equation(block: false, alt: "L greater than 1")[$L > 1$]. Let us apply this test to the series (7.1.1). That is we let #math.equation(block: false, alt: "c sub k equals a sub k open parenthesis x minus x sub 0 close parenthesis to the power k")[$c_(k) = a_(k) attach(( x − x_(0) ), t: k)$] in the test. Compute #math.equation(block: true, alt: "L equals lim sub n → infinity | the fraction c sub k plus 1 over c sub k | equals lim sub n → infinity | the fraction a sub k plus 1 open parenthesis x minus x sub 0 close parenthesis to the power k plus 1 over a sub k open parenthesis x minus x sub 0 close parenthesis to the power k | equals lim sub n → infinity | the fraction a sub k plus 1 over a sub k | | x minus x sub 0 | .")[$L = lim_(n → ∞) | frac(c_(k + 1), c_(k)) | = lim_(n → ∞) | frac(a_(k + 1) attach(( x − x_(0) ), t: k + 1), a_(k) attach(( x − x_(0) ), t: k)) | = lim_(n → ∞) | frac(a_(k + 1), a_(k)) | | x − x_(0) | .$] Define #math.equation(block: false, alt: "A")[$A$] by #math.equation(block: true, alt: "A equals lim sub n → infinity | the fraction a sub k plus 1 over a sub k | .")[$A = lim_(n → ∞) | frac(a_(k + 1), a_(k)) | .$] Then if #math.equation(block: false, alt: "1 greater than L equals A | x minus x sub 0 |")[$1 > L = A | x − x_(0) |$] the series (7.1.1) converges absolutely. If #math.equation(block: false, alt: "A equals 0")[$A = 0$], then the series always converges. If #math.equation(block: false, alt: "A greater than 0")[$A > 0$], then the series converges absolutely if #math.equation(block: false, alt: "| x minus x sub 0 | less than the fraction 1 over A")[$| x − x_(0) | < frac(1, A)$], and diverges if #math.equation(block: false, alt: "| x minus x sub 0 | greater than the fraction 1 over A")[$| x − x_(0) | > frac(1, A)$]. That is, the radius of convergence is #math.equation(block: false, alt: "the fraction 1 over A")[$frac(1, A)$]. A similar test is the #emph[root test]. Suppose #math.equation(block: true, alt: "L equals lim sub k → infinity the cube root of | c sub k |")[$L = lim_(k → ∞) root(3, | c_(k) |)$] exists. Then #math.equation(block: false, alt: "∑ k equals 0 infinity c sub k")[$∑_(k = 0)^(∞) c_(k)$] converges absolutely if #math.equation(block: false, alt: "L less than 1")[$L < 1$] and diverges if #math.equation(block: false, alt: "L greater than 1")[$L > 1$]. We can use the same calculation as above to find #math.equation(block: false, alt: "A")[$A$]. Let us summarize. #notebox("Note", rgb("#8a94a6"), rgb("#556666"), rgb("#f7f8fa"))[ #emph[Ratio and Root Tests for Power Series] Let #math.equation(block: true, alt: "∑ k equals 0 infinity a sub k open parenthesis x minus x sub 0 close parenthesis to the power k")[$∑_(k = 0)^(∞) a_(k) attach(( x − x_(0) ), t: k)$] be a power series such that #math.equation(block: true, alt: "A equals lim sub n → infinity | the fraction a sub k plus 1 over a sub k | or A equals lim sub k → infinity the cube root of | a sub k |")[$A = lim_(n → ∞) | frac(a_(k + 1), a_(k)) | #h(1em) "or" #h(1em) A = lim_(k → ∞) root(3, | a_(k) |)$] exists. If #math.equation(block: false, alt: "A equals 0")[$A = 0$], then the radius of convergence of the series is #math.equation(block: false, alt: "infinity")[$∞$]. Otherwise the radius of convergence is #math.equation(block: false, alt: "the fraction 1 over A")[$frac(1, A)$]. ] #examplebox("Example 3")[][ Suppose we have the series #math.equation(block: true, alt: "∑ k equals 0 infinity 2 to the power minus k open parenthesis x minus 1 close parenthesis to the power k .")[$∑_(k = 0)^(∞) 2^(− k) attach(( x − 1 ), t: k) .$] First we compute, #math.equation(block: true, alt: "A equals lim sub k → infinity | the fraction a sub k plus 1 over a sub k | equals lim sub k → infinity | the fraction 2 to the power minus k minus 1 over 2 to the power minus k | equals 2 to the power minus 1 equals the fraction 1 over 2 .")[$A = lim_(k → ∞) | frac(a_(k + 1), a_(k)) | = lim_(k → ∞) | frac(2^(− k − 1), 2^(− k)) | = 2^(− 1) = frac(1, 2) .$] Therefore the radius of convergence is #math.equation(block: false, alt: "2")[$2$], and the series converges absolutely on the interval #math.equation(block: false, alt: "open parenthesis minus 1 , 3 close parenthesis")[$( − 1 , 3 )$]. And we could just as well have used the root test: #math.equation(block: true, alt: "A equals lim sub k → infinity lim sub k → infinity the kth root of | a sub k | equals lim sub k → infinity the kth root of | 2 to the power minus k | equals lim sub k → infinity 2 to the power minus 1 equals the fraction 1 over 2 .")[$A = lim_(k → ∞) lim_(k → ∞) root(k, | a_(k) |) = lim_(k → ∞) root(k, | 2^(− k) |) = lim_(k → ∞) 2^(− 1) = frac(1, 2) .$] ] #examplebox("Example 4")[][ Consider #math.equation(block: true, alt: "∑ k equals 0 infinity the fraction 1 over k to the power k x to the power k .")[$∑_(k = 0)^(∞) frac(1, k^(k)) x^(k) .$] Compute the limit for the root test, #math.equation(block: true, alt: "A equals lim sub k → infinity the kth root of | a sub k | equals lim sub k → infinity the kth root of | the fraction 1 over k to the power k | equals lim sub k → infinity the kth root of | the fraction 1 over k | to the power k equals lim sub k → infinity the fraction 1 over k equals 0 .")[$A = lim_(k → ∞) root(k, | a_(k) |) = lim_(k → ∞) root(k, | frac(1, k^(k)) |) = lim_(k → ∞) root(k, attach(| frac(1, k) |, t: k)) = lim_(k → ∞) frac(1, k) = 0 .$] So the radius of convergence is #math.equation(block: false, alt: "infinity")[$∞$]: the series converges everywhere. The ratio test would also work here. ] The root or the ratio test does not always apply. That is the limit of #math.equation(block: false, alt: "| the fraction a sub k plus 1 over a sub k |")[$| frac(a_(k + 1), a_(k)) |$] or #math.equation(block: false, alt: "the kth root of | a sub k |")[$root(k, | a_(k) |)$] might not exist. There exist more sophisticated ways of finding the radius of convergence, but those would be beyond the scope of this chapter. The two methods above cover many of the series that arise in practice. Often if the root test applies, so does the ratio test, and vice versa, though the limit might be easier to compute in one way than the other. === Analytic Functions Functions represented by power series are called analytic functions. Not every function is analytic, although the majority of the functions you have seen in calculus are. An analytic function #math.equation(block: false, alt: "f open parenthesis x close parenthesis")[$f ( x )$] is equal to its Taylor series#math.equation(block: false, alt: "to the power 1")[$1$] near a point #math.equation(block: false, alt: "x sub 0")[$x_(0)$]. That is, for #math.equation(block: false, alt: "x")[$x$] near #math.equation(block: false, alt: "x sub 0")[$x_(0)$] we have #math.equation(block: true, alt: "f open parenthesis x close parenthesis equals ∑ k equals 0 infinity the fraction f to the power open parenthesis k close parenthesis open parenthesis x sub 0 close parenthesis over k ! open parenthesis x minus x sub 0 close parenthesis to the power k ,")[$f ( x ) = ∑_(k = 0)^(∞) frac(f^(( k )) ( x_(0) ), k !) attach(( x − x_(0) ), t: k) ,$] where #math.equation(block: false, alt: "f to the power open parenthesis k close parenthesis open parenthesis x sub 0 close parenthesis")[$f^(( k )) ( x_(0) )$] denotes the #math.equation(block: false, alt: "k to the power th")[$k^("th")$] derivative of #math.equation(block: false, alt: "f open parenthesis x close parenthesis")[$f ( x )$] at the point #math.equation(block: false, alt: "x sub 0")[$x_(0)$]. #figure(figph[Plot of the sine curve with two Taylor approximations, x from minus 10 to 10. The green polynomial tracks the sine only to about x equals plus or minus 3 and the red to about plus or minus 4, then both run off the frame.], alt: "Plot of the sine curve with two Taylor approximations, x from minus 10 to 10. The green polynomial tracks the sine only to about x equals plus or minus 3 and the red to about plus or minus 4, then both run off the frame.", caption: [Figure #math.equation(block: false, alt: "2")[$2$]: The sine function and its Taylor approximations around #math.equation(block: false, alt: "x sub o equals 0")[$x_(o) = 0$] of and degree.]) For example, sine is an analytic function and its Taylor series around #math.equation(block: false, alt: "x sub 0 equals 0")[$x_(0) = 0$] is given by #math.equation(block: true, alt: "sin open parenthesis x close parenthesis equals ∑ n equals 0 infinity the fraction open parenthesis minus 1 close parenthesis to the power n over open parenthesis 2 n plus 1 close parenthesis ! x to the power 2 n plus 1 .")[$sin ( x ) = ∑_(n = 0)^(∞) frac(attach(( − 1 ), t: n), ( 2 n + 1 ) !) x^(2 n + 1) .$] In Figure #math.equation(block: false, alt: "2")[$2$] we plot #math.equation(block: false, alt: "sin open parenthesis x close parenthesis")[$sin ( x )$] and the truncations of the series up to degree 5 and 9. You can see that the approximation is very good for #math.equation(block: false, alt: "x")[$x$] near 0, but gets worse for #math.equation(block: false, alt: "x")[$x$] further away from 0. This is what happens in general. To get a good approximation far away from #math.equation(block: false, alt: "x sub 0")[$x_(0)$] you need to take more and more terms of the Taylor series. The book's sine picture with the expansion point set free: sin x in blue, its degree-5 Taylor polynomial in red and its degree-9 in green, both taken about x₀ = a. It opens at a = 0, the book's own picture; drag a along the sine curve and watch the sharp accuracy window slide with it — degree 9 always reaching further than degree 5, both failing at a distance, and the failure region moving rigidly with the centre. {"functions":\[{"color":"\#1f4e79","domain":null,"expression":"sin(x)","expression2":"","id":"tay-sin","inequality":"lt","lineDash":\[\],"lineWidth":2.5,"mode":"cartesian","tMax":10,"tMin":-10,"variable":"x","visible":true},{"color":"\#b8442a","domain":null,"expression":"sin(a) + cos(a)\*(x-a) - sin(a)\*(x-a)^2/2 - cos(a)\*(x-a)^3/6 + sin(a)\*(x-a)^4/24 + cos(a)\*(x-a)^5/120","expression2":"","id":"tay-deg5","inequality":"lt","lineDash":\[\],"lineWidth":2,"mode":"cartesian","tMax":10,"tMin":-10,"variable":"x","visible":true},{"color":"\#2e6b3f","domain":null,"expression":"sin(a) + cos(a)\*(x-a) - sin(a)\*(x-a)^2/2 - cos(a)\*(x-a)^3/6 + sin(a)\*(x-a)^4/24 + cos(a)\*(x-a)^5/120 - sin(a)\*(x-a)^6/720 - cos(a)\*(x-a)^7/5040 + sin(a)\*(x-a)^8/40320 + cos(a)\*(x-a)^9/362880","expression2":"","id":"tay-deg9","inequality":"lt","lineDash":\[\],"lineWidth":2,"mode":"cartesian","tMax":10,"tMin":-10,"variable":"x","visible":true}\],"grid":{"axisColor":"\#333333","gridColor":"\#cccccc","majorSpacing":1,"minorGridColor":"\#eeeeee","showAxes":true,"showLabels":true},"parameters":\[{"id":"tay-a","label":"Expansion point x0","max":6,"min":-6,"name":"a","step":0.1,"unit":"","value":0}\],"title":"Taylor approximations to sine about x0 = a","version":1,"viewport":{"centerX":0,"centerY":0,"scale":45}} === Manipulating Power Series One of the main properties of power series that we will use is that we can differentiate them term by term. That is, suppose that #math.equation(block: false, alt: "∑ a sub k open parenthesis x minus x sub 0 close parenthesis to the power k")[$∑ a_(k) attach(( x − x_(0) ), t: k)$] is a convergent power series. Then for #math.equation(block: false, alt: "x")[$x$] in the radius of convergence we have #math.equation(block: true, alt: "the fraction d over d x [ ∑ k equals 0 infinity a sub k open parenthesis x minus x sub 0 close parenthesis to the power k ] equals ∑ k equals 1 infinity k a sub k open parenthesis x minus x sub 0 close parenthesis to the power k minus 1 .")[$frac(d, d x) [ ∑_(k = 0)^(∞) a_(k) attach(( x − x_(0) ), t: k) ] = ∑_(k = 1)^(∞) k a_(k) attach(( x − x_(0) ), t: k − 1) .$] Notice that the term corresponding to #math.equation(block: false, alt: "k equals 0")[$k = 0$] disappeared as it was constant. The radius of convergence of the differentiated series is the same as that of the original. #examplebox("Example 5")[][ Let us show that the exponential #math.equation(block: false, alt: "y equals e to the power x")[$y = e^(x)$] solves #math.equation(block: false, alt: "y prime equals y")[$y^(′) = y$]. First write #math.equation(block: true, alt: "y equals e to the power x equals ∑ k equals 0 infinity the fraction 1 over k ! x to the power k .")[$y = e^(x) = ∑_(k = 0)^(∞) frac(1, k !) x^(k) .$] Now differentiate #math.equation(block: true, alt: "y prime equals ∑ k equals 1 infinity k the fraction 1 over k ! x to the power k minus 1 equals ∑ k equals 1 infinity the fraction 1 over open parenthesis k minus 1 close parenthesis ! x to the power k minus 1 .")[$y^(′) = ∑_(k = 1)^(∞) k frac(1, k !) x^(k − 1) = ∑_(k = 1)^(∞) frac(1, ( k − 1 ) !) x^(k − 1) .$] We #emph[reindex]the series by simply replacing #math.equation(block: false, alt: "k")[$k$] with #math.equation(block: false, alt: "k plus 1")[$k + 1$]. The series does not change, what changes is simply how we write it. After reindexing the series starts at #math.equation(block: false, alt: "k equals 0")[$k = 0$] again. #math.equation(block: true, alt: "∑ k equals 1 infinity the fraction 1 over open parenthesis k minus 1 close parenthesis ! x to the power k minus 1 equals ∑ k plus 1 equals 1 infinity the fraction 1 over open parenthesis open parenthesis k plus 1 close parenthesis minus 1 close parenthesis ! x to the power open parenthesis k plus 1 close parenthesis minus 1 equals ∑ k equals 0 infinity the fraction 1 over k ! x to the power k .")[$∑_(k = 1)^(∞) frac(1, ( k − 1 ) !) x^(k − 1) = ∑_(k + 1 = 1)^(∞) frac(1, ( ( k + 1 ) − 1 ) !) x^(( k + 1 ) − 1) = ∑_(k = 0)^(∞) frac(1, k !) x^(k) .$] That was precisely the power series for #math.equation(block: false, alt: "e to the power x")[$e^(x)$] that we started with, so we showed that #math.equation(block: false, alt: "the fraction d over d x [ e to the power x ] equals e to the power x")[$frac(d, d x) [ e^(x) ] = e^(x)$]. ] Convergent power series can be added and multiplied together, and multiplied by constants using the following rules. First, we can add series by adding term by term, #math.equation(block: true, alt: "open parenthesis ∑ k equals 0 infinity a sub k open parenthesis x minus x sub 0 close parenthesis to the power k close parenthesis plus open parenthesis ∑ k equals 0 infinity b sub k open parenthesis x minus x sub 0 close parenthesis to the power k close parenthesis equals ∑ k equals 0 infinity open parenthesis a sub k plus b sub k close parenthesis open parenthesis x minus x sub 0 close parenthesis to the power k .")[$( ∑_(k = 0)^(∞) a_(k) attach(( x − x_(0) ), t: k) ) + ( ∑_(k = 0)^(∞) b_(k) attach(( x − x_(0) ), t: k) ) = ∑_(k = 0)^(∞) ( a_(k) + b_(k) ) attach(( x − x_(0) ), t: k) .$] We can multiply by constants, #math.equation(block: true, alt: "α open parenthesis ∑ k equals 0 infinity a sub k open parenthesis x minus x sub 0 close parenthesis to the power k close parenthesis equals ∑ k equals 0 infinity α a sub k open parenthesis x minus x sub 0 close parenthesis to the power k .")[$α ( ∑_(k = 0)^(∞) a_(k) attach(( x − x_(0) ), t: k) ) = ∑_(k = 0)^(∞) α a_(k) attach(( x − x_(0) ), t: k) .$] We can also multiply series together, #math.equation(block: true, alt: "open parenthesis ∑ k equals 0 infinity a sub k open parenthesis x minus x sub 0 close parenthesis to the power k close parenthesis open parenthesis ∑ k equals 0 infinity b sub k open parenthesis x minus x sub 0 close parenthesis to the power k close parenthesis equals ∑ k equals 0 infinity c sub k open parenthesis x minus x sub 0 close parenthesis to the power k ,")[$( ∑_(k = 0)^(∞) a_(k) attach(( x − x_(0) ), t: k) ) ( ∑_(k = 0)^(∞) b_(k) attach(( x − x_(0) ), t: k) ) = ∑_(k = 0)^(∞) c_(k) attach(( x − x_(0) ), t: k) ,$] where #math.equation(block: false, alt: "c sub k equals a sub 0 b sub k plus a sub 1 b sub k minus 1 plus ⋯ plus a sub k b sub 0")[$c_(k) = a_(0) b_(k) + a_(1) b_(k − 1) + ⋯ + a_(k) b_(0)$]. The radius of convergence of the sum or the product is at least the minimum of the radii of convergence of the two series involved. === Power Series for Rational Functions Polynomials are simply finite power series. That is, a polynomial is a power series where the #math.equation(block: false, alt: "a sub k")[$a_(k)$] are zero for all #math.equation(block: false, alt: "k")[$k$] large enough. We can always expand a polynomial as a power series about any point #math.equation(block: false, alt: "x sub 0")[$x_(0)$] by writing the polynomial as a polynomial in #math.equation(block: false, alt: "open parenthesis x minus x sub 0 close parenthesis")[$( x − x_(0) )$]. For example, let us write #math.equation(block: false, alt: "2 x squared minus 3 x plus 4")[$2 x^(2) − 3 x + 4$] as a power series around #math.equation(block: false, alt: "x sub 0 equals 1")[$x_(0) = 1$]: #math.equation(block: true, alt: "2 x squared minus 3 x plus 4 equals 3 plus open parenthesis x minus 1 close parenthesis plus 2 open parenthesis x minus 1 close parenthesis squared .")[$2 x^(2) − 3 x + 4 = 3 + ( x − 1 ) + 2 attach(( x − 1 ), t: 2) .$] In other words #math.equation(block: false, alt: "a sub 0 equals 3")[$a_(0) = 3$], #math.equation(block: false, alt: "a sub 1 equals 1")[$a_(1) = 1$], #math.equation(block: false, alt: "a sub 2 equals 2")[$a_(2) = 2$], and all other #math.equation(block: false, alt: "a sub k equals 0")[$a_(k) = 0$]. To do this, we know that #math.equation(block: false, alt: "a sub k equals 0")[$a_(k) = 0$] for all #math.equation(block: false, alt: "k greater than or equal to 3")[$k ≥ 3$] as the polynomial is of degree 2. We write #math.equation(block: false, alt: "a sub 0 plus a sub 1 open parenthesis x minus 1 close parenthesis plus a sub 2 open parenthesis x minus 1 close parenthesis squared")[$a_(0) + a_(1) ( x − 1 ) + a_(2) attach(( x − 1 ), t: 2)$], we expand, and we solve for #math.equation(block: false, alt: "a sub 0")[$a_(0)$], #math.equation(block: false, alt: "a sub 1")[$a_(1)$], and #math.equation(block: false, alt: "a sub 2")[$a_(2)$]. We could have also differentiated at #math.equation(block: false, alt: "x equals 1")[$x = 1$]and used the Taylor series formula (7.1.2). Let us look at rational functions, that is, ratios of polynomials. An important fact is that a series for a function only defines the function on an interval even if the function is defined elsewhere. For example, for #math.equation(block: false, alt: "minus 1 less than x less than 1")[$− 1 < x < 1$] we have #math.equation(block: true, alt: "the fraction 1 over 1 minus x equals ∑ k equals 0 infinity x to the power k equals 1 plus x plus x squared plus ⋯")[$frac(1, 1 − x) = ∑_(k = 0)^(∞) x^(k) = 1 + x + x^(2) + ⋯$] This series is called the #emph[geometric series]. The ratio test tells us that the radius of convergence is #math.equation(block: false, alt: "1")[$1$]. The series diverges for #math.equation(block: false, alt: "x less than or equal to minus 1")[$x ≤ − 1$] and #math.equation(block: false, alt: "x greater than or equal to 1")[$x ≥ 1$], even though #math.equation(block: false, alt: "the fraction 1 over 1 minus x")[$frac(1, 1 − x)$] is defined for all #math.equation(block: false, alt: "x ⧸ equals 1")[$x "⧸" = 1$]. 1/(1 − x) in blue, the partial sum Sₙ = 1 + x + ⋯ + xⁿ in red. Drag n: the red curve locks onto the blue one across (−1, 1) and nowhere else — exactly the radius of convergence 1 this section derives. Past x = 1 the partial sum climbs off the top of the frame while 1/(1 − x) runs calmly along the lower right, still perfectly well defined. Left of x = −1 the partial sum flies apart, and watch its direction: it flips from up to down at every single step of n, because the terms alternate. At x = −1 itself it neither converges nor blows up — it just hops 1, 0, 1, 0, never settling on the value 1/2 the function has there. {"functions":\[{"color":"\#1f4e79","domain":null,"expression":"1/(1-x)","expression2":"","id":"geo-exact","inequality":"lt","lineDash":\[\],"lineWidth":2.5,"mode":"cartesian","tMax":10,"tMin":-10,"variable":"x","visible":true},{"color":"\#b8442a","domain":null,"expression":"(1-x^(n+1))/(1-x)","expression2":"","id":"geo-partial","inequality":"lt","lineDash":\[\],"lineWidth":2,"mode":"cartesian","tMax":10,"tMin":-10,"variable":"x","visible":true}\],"grid":{"axisColor":"\#333333","gridColor":"\#cccccc","majorSpacing":1,"minorGridColor":"\#eeeeee","showAxes":true,"showLabels":true},"parameters":\[{"id":"geo-n","label":"Highest power kept","max":24,"min":0,"name":"n","step":1,"unit":"","value":4}\],"title":"Geometric series vs 1/(1 - x)","version":1,"viewport":{"centerX":0,"centerY":0,"scale":78}} We can use the geometric series together with rules for addition and multiplication of power series to expand rational functions around a point, as long as the denominator is not zero at #math.equation(block: false, alt: "x sub 0")[$x_(0)$]. Note that as for polynomials, we could equivalently use the Taylor series expansion (7.1.2). #examplebox("Example 6")[][ Expand #math.equation(block: false, alt: "the fraction x over 1 plus 2 x plus x squared")[$frac(x, 1 + 2 x + x^(2))$] as a power series around the origin (#math.equation(block: false, alt: "x sub 0 equals 0")[$x_(0) = 0$]) and find the radius of convergence. First, write #math.equation(block: false, alt: "1 plus 2 x plus x squared equals open parenthesis 1 plus x close parenthesis squared equals open parenthesis 1 minus open parenthesis minus x close parenthesis close parenthesis squared")[$1 + 2 x + x^(2) = attach(( 1 + x ), t: 2) = attach(( 1 − ( − x ) ), t: 2)$]. Now we compute #math.equation(block: true, alt: "the fraction x over 1 plus 2 x plus x squared equals x open parenthesis the fraction 1 over 1 minus open parenthesis minus x close parenthesis close parenthesis squared; equals x open parenthesis ∑ k equals 0 infinity open parenthesis minus 1 close parenthesis to the power k x to the power k close parenthesis squared; equals x open parenthesis ∑ k equals 0 infinity c sub k x to the power k close parenthesis; equals ∑ k equals 0 infinity c sub k x to the power k plus 1 ,")[$frac(x, 1 + 2 x + x^(2)) = x attach(( frac(1, 1 − ( − x )) ), t: 2) \ = x attach(( ∑_(k = 0)^(∞) attach(( − 1 ), t: k) x^(k) ), t: 2) \ = x ( ∑_(k = 0)^(∞) c_(k) x^(k) ) \ = ∑_(k = 0)^(∞) c_(k) x^(k + 1) ,$] where using the formula for the product of series we obtain, #math.equation(block: false, alt: "c sub 0 equals 1")[$c_(0) = 1$], #math.equation(block: false, alt: "c sub 1 equals minus 1 minus 1 equals minus 2")[$c_(1) = − 1 − 1 = − 2$], #math.equation(block: false, alt: "c sub 2 equals 1 plus 1 plus 1 equals 3")[$c_(2) = 1 + 1 + 1 = 3$], etc #math.equation(block: false, alt: "…")[$…$]. Therefore #math.equation(block: true, alt: "the fraction x over 1 plus 2 x plus x squared equals ∑ k equals 1 infinity open parenthesis minus 1 close parenthesis to the power k plus 1 k x to the power k equals x minus 2 x squared plus 3 x cubed minus 4 x to the power 4 plus ⋯")[$frac(x, 1 + 2 x + x^(2)) = ∑_(k = 1)^(∞) attach(( − 1 ), t: k + 1) k x^(k) = x − 2 x^(2) + 3 x^(3) − 4 x^(4) + ⋯$] The radius of convergence is at least 1. We use the ratio test #math.equation(block: true, alt: "lim sub k → infinity | the fraction a sub k plus 1 over a sub k | equals lim sub k → infinity | the fraction open parenthesis minus 1 close parenthesis to the power k plus 2 open parenthesis k plus 1 close parenthesis over open parenthesis minus 1 close parenthesis to the power k plus 1 k | equals lim sub k → infinity the fraction k plus 1 over k equals 1 .")[$lim_(k → ∞) | frac(a_(k + 1), a_(k)) | = lim_(k → ∞) | frac(attach(( − 1 ), t: k + 2) ( k + 1 ), attach(( − 1 ), t: k + 1) k) | = lim_(k → ∞) frac(k + 1, k) = 1 .$] So the radius of convergence is actually equal to 1. When the rational function is more complicated, it is also possible to use method of partial fractions. For example, to find the Taylor series for #math.equation(block: false, alt: "the fraction x cubed plus x over x squared minus 1")[$frac(x^(3) + x, x^(2) − 1)$], we write #math.equation(block: true, alt: "the fraction x cubed plus x over x squared minus 1 equals x plus the fraction 1 over 1 plus x minus the fraction 1 over 1 minus x equals x plus ∑ k equals 0 infinity open parenthesis minus 1 close parenthesis to the power k x to the power k minus ∑ k equals 0 infinity x to the power k equals minus x plus ∑ k equals 3; k odd infinity open parenthesis minus 2 close parenthesis x to the power k .")[$frac(x^(3) + x, x^(2) − 1) = x + frac(1, 1 + x) − frac(1, 1 − x) = x + ∑_(k = 0)^(∞) attach(( − 1 ), t: k) x^(k) − ∑_(k = 0)^(∞) x^(k) = − x + ∑_(k = 3 \ k " odd")^(∞) ( − 2 ) x^(k) .$] ] === Footnotes \[1\] Named after the English mathematician #link("http://en.Wikipedia.org/wiki/Brook_Taylor")[Sir Brook Taylor] (1685–1731).