[Citat]
sage: K.<a> = CyclotomicField( 7 )
sage: K
Cyclotomic Field of order 7 and degree 6
sage: a
a
sage: a^7
1
sage: a.minpoly()
x^6 + x^5 + x^4 + x^3 + x^2 + x + 1
sage: 1/(1-a)
1/7*a^5 + 2/7*a^4 + 3/7*a^3 + 4/7*a^2 + 5/7*a + 6/7
sage: ( ( x^5 + 2*x^4 + 3*x^3 + 4*x^2 + 5*x + 6 ) * (1-x) ) .expand()
-x^6 - x^5 - x^4 - x^3 - x^2 - x + 6
|
Sage este un soft matematic liber care ajuta mult la facut calcule mai mult sau mai putin simbolice.
Este bazat pe python, limbaj de programare numai bun de invatat.
Scrierea de cod python este destul de "curata" (in comparatie cu C++ de exemplu), din motive didactice eu as recomanda mai intai pyton ca prim limbaj de programare de introdus in scoli. O buna parte din codul google este de exemplu scrisa in python.
Pagina de pe care se poate da jos sage este aici:
http://www.sagemath.org
Personal recomand instalarea de linux, din care instalarea lui sage este mult mai usoara si mai usor de administrat in cursul anilor. Toate dependentele sunt usor rezolvate. Este un avantaj al codului sursa oferit liber.
Alte limbaje care ajuta la calculul simbolic mai mult sau mai putin cunoscute, pe bani sau nu sunt:
maple ($)
mathematica ($) - online pe
http://www.wolframalpha.com/
matlab ($)
maxima
In orice caz, sage uneste toate codurile scrise libere sau nu si ofera lumii matematice un cadru bun de facut calcule.
Calculele din problema de mai sus sunt facute de exemplu simbolic exact.
Am inlocuit cu
a acel Epsilon din postarea initiala, ca sa imi fac viata mai usoara.
In sage am putut initializa usor corpul K (pe germana K ~ Körper, se cam ia K pe post de corp de numere in notatie din cauza asta, Hilbert si ai lui au impus notatia...) in care traieste natural a-ul.
Sage face calcule simbolice fara probleme in acest corp, calculeaza la cerere de exemplu:
[Citat]
sage: 1/(1-a)
1/7*a^5 + 2/7*a^4 + 3/7*a^3 + 4/7*a^2 + 5/7*a + 6/7
|
Polinomul minimal al lui a, cel ce a pare esential in solutia de aici
http://www.pro-didactica.ro/forum/index.php?forumID=8&ID=52662
este de asemenea usor de cerut folosind metoda
minpoly
atasata lui a:
[Citat]
sage: a.minpoly()
x^6 + x^5 + x^4 + x^3 + x^2 + x + 1
|