The application of Synthetic division in Polynomial theory

by fungarwai, Feb 9, 2023, 4:40 AM

Power sum of polynomial roots

Synthetic division can be applied to find the power sums of roots of a polynomial $f(x)$
by dividing $f’(x)$ with $f(x)$

$f(x)=x^2+2x-3=0$ has two real roots $x_1=-3,~x_2=1$
$f’(x)=2x+2$

$\begin{array}{c|cccccccccccc}
~ & 2 & 2 \\
-2 & ~ & -4 & 4 & -20 & 52 & -164 & 484 & -1460 & 4372 & -13124 \\
3 & ~ & ~ & 6 & -6 & 30 & -78 & 246 & -726 & 2190 & -6558 & 19686 \\
\hline
~ & 2 & -2 & 10 & -26 & 82 & -242 & 730 & -2186 & 6562 & -19682 & 19686 \end{array}$

The coefficients of the quotient show that
$\displaystyle \sum_{k=1}^2 x_k^0=2,~\sum_{k=1}^2 x_k^1=-2,~\sum_{k=1}^2 x_k^2=10,~\sum_{k=1}^2 x_k^3=-26,\dots$

This result is caused by the formula $\dfrac{f'(x)}{f(x)}=\sum_{k=0}^\infty \dfrac{1}{x^{k+1}}\left(\sum_{j=1}^n x_j^k\right)$

Reference: The application of Synthetic division in Polynomial theory (Chinese) Section 1.1.5

Proof

Example

Python program to generate Synthetic division in LaTeX code

  1. dividend=[27,-18,0];#input by user, 27x^2-18x for example
  2. divisor=[9,-9,0,1];#input by user, 9x^3-9x^2+1 for example
  3.  
  4. def roundint(x):
  5. if x == int(x):
  6. return str(int(x))
  7. else:
  8. for k in range(1,100):
  9. T=0
  10. if x*k == int(x*k):
  11. T=1;break;
  12. if T==1:
  13. return "\dfrac{"+str(int(x*k))+"}{"+str(k)+"}"
  14. else:
  15. return str(round(x,3))
  16. qlen=11;e=0;
  17. dlen=len(divisor)-1;
  18. ddlen=len(dividend);
  19. dd="~ "
  20. for k in range(0,ddlen):
  21. dividend[k]=dividend[k]/divisor[0]
  22. dd=dd+"& "+roundint(dividend[k])+" "
  23. for k in range(0,qlen-ddlen+1):
  24. dividend.append(0)
  25. dd=dd+"\\\\\n"
  26. for k in range(1,dlen+1):
  27. divisor[k]=-divisor[k]/divisor[0]
  28. q=[]
  29. q.append(dividend[0])
  30. qq="~ & "+roundint(q[0])+" "
  31. s="$\\begin{array}{c|"
  32. s2=[]
  33. for k in range(1,dlen+1):
  34. s2.append(roundint(divisor[k])+" ")
  35. for k in range(0,dlen):
  36. for i in range(0,k+1):
  37. s2[k]=s2[k]+"& ~ "
  38. for i in range(0,qlen-dlen):
  39. t=dividend[i+1]
  40. for k in range(0,dlen):
  41. tt=q[i]*divisor[k+1]
  42. s2[k]=s2[k]+"& "+roundint(tt)+" "
  43. if i-k >= 0:
  44. t=t+q[i-k]*divisor[k+1]
  45. q.append(t)
  46. if t==0:
  47. e=e+1
  48. else:
  49. e=0
  50. if e>=dlen and i>=ddlen-1:
  51. break
  52. qq=qq+"& "+roundint(t)+" "
  53. for i in range(qlen-dlen,qlen-1):
  54. if e>=dlen and i>=ddlen-1:
  55. break
  56. t=dividend[i+1]
  57. for k in range(0,dlen):
  58. if i-k < qlen-dlen:
  59. t=t+q[i-k]*divisor[k+1]
  60. q.append(t)
  61. qq=qq+"& "+roundint(t)+" "
  62. for k in range(0,qlen+1):
  63. s=s+"c"
  64. s=s+"}\n"+dd
  65. for k in range(0,dlen):
  66. s=s+s2[k]+"\\\\\n"
  67. s=s+"\\hline\n"+qq+"\\end{array}$"
  68. print(s)


pywindow code
This post has been edited 1 time. Last edited by fungarwai, Feb 9, 2023, 4:57 AM

Comment

J
U VIEW ATTACHMENTS T PREVIEW J CLOSE PREVIEW rREFRESH
J

0 Comments

Notable algebra methods with proofs and examples

avatar

fungarwai
Shouts
Submit
  • Nice blog!

    by Inconsistent, Mar 18, 2024, 2:41 PM

  • hey, nice blog! really enjoyed the content here and thank you for this contribution to aops. Sure to subscribe! :)

    by thedodecagon, Jan 22, 2022, 1:33 AM

  • thanks for this

    by jasperE3, Dec 3, 2021, 10:01 PM

  • I am working as accountant and studying as ACCA student now.
    I graduated applied mathematics at bachelor degree in Jinan University but I still have no idea to find a specific job with this..

    by fungarwai, Aug 28, 2021, 4:54 AM

  • Awesome algebra blog :)

    by Euler1728, Mar 22, 2021, 5:37 AM

  • I wonder if accountants need that kind of math tho

    by Hamroldt, Jan 14, 2021, 10:55 AM

  • Nice!!!!

    by Delta0001, Dec 12, 2020, 10:20 AM

  • this is very interesting i really appericate it :)

    by vsamc, Oct 29, 2020, 4:42 PM

  • this is god level

    by Hamroldt, Sep 4, 2020, 7:48 AM

  • Super Blog! You are Pr0! :)

    by Functional_equation, Aug 23, 2020, 7:43 AM

  • Great blog!

    by freeman66, May 31, 2020, 5:40 AM

  • cool thx! :D

    by erincutin, May 18, 2020, 4:55 PM

  • How so op???

    by Williamgolly, Apr 30, 2020, 2:42 PM

  • Beautiful

    by Al3jandro0000, Apr 25, 2020, 3:11 AM

  • Nice method :)

    by Feridimo, Jan 23, 2020, 5:05 PM

  • This is nice!

    by mufree, May 26, 2019, 6:40 AM

  • Wow! So much Algebra.

    by AnArtist, Mar 15, 2019, 1:19 PM

  • :omighty: :omighty:

    by AlastorMoody, Feb 9, 2019, 5:17 PM

  • 31415926535897932384626433832795

    by lkarhat, Dec 25, 2018, 11:53 PM

  • rip 0 shouts and 0 comments until now

    by harry1234, Nov 17, 2018, 8:56 PM

20 shouts
Tags
About Owner
  • Posts: 859
  • Joined: Mar 11, 2017
Blog Stats
  • Blog created: Sep 15, 2018
  • Total entries: 18
  • Total visits: 5854
  • Total comments: 8
Search Blog
a