MathAction changed pages
https://wiki.fricas.org
MathAction changed pagesenMon, 02 Sep 2024 16:09:59 +0000[ExampleIntegration2]
https://wiki.fricas.org/ExampleIntegration2
https://wiki.fricas.org/ExampleIntegration2
??changed:

Here we show how FriCAS can help solving calculus problems.
Task is: find integer n, $60 < n < 100$ such that x^n/(x^120  1)
has simple integral.
Theory of integration of rational functions says that integral
is sum of constant multiples of logarithms of factors of x^120  1. We write
x^120  1 as product of four factor:
\begin{axiom}
)set output tex off
)set output algebra on
(x^30 + 1)*(x^30  1)*(x^30 + %i)*(x^30  %i)
\end{axiom}
Parametric form of integral corresopnding to those factors is
and its derivative are:
\begin{axiom}
ii := a*log(x^30  1) + b*log(x^30 + 1) + c*log(x^30 + %i) + d*log(x^30 %i)
f := D(ii, x)
\end{axiom}
We see that f is a linear combination of powers of x divided by x^120  1. The
only power in rage is x^89. So we need to find a, b, c, d such that
coefficients of other powers are zero. To do this we extract coefficients
and solve relevant system of equation. As a first step is it convenient
to convert f to a rational function with coefficient being complx polynomials,
then the other steps are easy:
\begin{axiom}
 convert to rational function
rf := f::FRAC(POLY(COMPLEX(INT)))
 extract numerator and coefficients of powers of x
nf := numer(rf)
lc := coefficients(univariate(nf, x))
 solve systme of linear equations
sl := solve([lc(1), lc(2)  1, lc(3), lc(4)], [a, b, c, d])
\end{axiom}
Finally we check obtaine result:
\begin{axiom}
ii1 := eval(ii, sl(1))
D(ii1, x)
\end{axiom}
Problem solved.
Mon, 02 Sep 2024 16:09:58 +0000[DesignIssues]
https://wiki.fricas.org/DesignIssues
https://wiki.fricas.org/DesignIssues
??changed:
 Currently, Axiom says
Currently, FriCAS says
??changed:
 Currently, Axiom allows
Currently, FriCAS allows
??changed:
functions (or operators) and integers. If you don't tell Axiom otherwise, then Axiom
functions (or operators) and integers. If you don't tell FriCAS otherwise, then FriCAS
??changed:
The type of the result of some calculation in Axiom is often
The type of the result of some calculation in FriCAS is often
??changed:
result is still an 'Expression Integer' even though Axiom decides
result is still an 'Expression Integer' even though FriCAS decides
??changed:
In princple it should be possible to ask Axiom to represent the
In princple it should be possible to ask FriCAS to represent the
Tue, 30 Apr 2024 13:29:03 +0000[ForksInfo]
https://wiki.fricas.org/ForksInfo
https://wiki.fricas.org/ForksInfo
??changed:

Note: Apparently recent Axiom effort is only private, the site above was not updated for several years.
Tue, 26 Mar 2024 18:00:23 +0000[AxiomUI]
https://wiki.fricas.org/AxiomUI
https://wiki.fricas.org/AxiomUI
??changed:
.. [1] http://page.axiomdeveloper.org/zope/mathaction/AboutAxiom
.. [1] http://wiki.fricas.org/AxiomStrengths
Tue, 26 Mar 2024 17:45:44 +0000[FriCAS language]
https://wiki.fricas.org/FriCASLanguage
https://wiki.fricas.org/FriCASLanguage
??changed:
 From the Axiom Book: Appendix B Glossary
From the FriCAS Book: Appendix B Glossary
??changed:
 From the Axiom Book: Technical Introduction
From the FriCAS Book: Technical Introduction
??changed:
Ref: Axoim Book "Chapter 2 Using Types and Modes".
Ref: FriCAS Book "Chapter 2 Using Types and Modes".
Tue, 26 Mar 2024 17:42:12 +0000[Axiom Strengths]
https://wiki.fricas.org/AxiomStrengths
https://wiki.fricas.org/AxiomStrengths
??changed:
[Axiom Language] and Library:
[FriCAS Language] and Library:
??changed:
  active [Axiom Wiki]
 active [FriCAS Wiki]
Tue, 26 Mar 2024 17:36:52 +0000[FriCAS Library Examples]
https://wiki.fricas.org/FriCASLibraryExamples
https://wiki.fricas.org/FriCASLibraryExamples
++added:
[Root denesting]
Fri, 12 Jan 2024 14:38:07 +0000[Root denesting]
https://wiki.fricas.org/RootDenesting
https://wiki.fricas.org/RootDenesting
??changed:

FriCAS can denest many nested roots. This is implemented in an extra package so
befor use we need to expose it:
\begin{axiom}
)expose RootSimplification
\end{axiom}
Now we can try
\begin{axiom}
r := sqrt(102*sqrt(7) + 272)
rsimp(r)
r := sqrt(66000162*1000003^(1/2) + 11000159000324)
rsimp(r)
r := sqrt(((4030008370)*700001^(1/2)+12090025110)*1000003^(1/2)+((78000162)*700001^(1/2)+312335685800846295))
rsimp(r)
\end{axiom}
We can denest roots of higher degree:
\begin{axiom}
r := (((6670600520850)*7^(1/2)+73781123539185)*13^(1/2)+((77245760121201)*7^(1/2)+89932095680661))^(1/7)
rsimp(r)
\end{axiom}
Note: Current code supports root of degree 2, 3 or 4 outside. With square root outside inside can contain
roots of degree up to 12. Roots of degree 3 outside more limited concerning what can appear inside.
And we can have roots of higher degree inside:
\begin{axiom}
r := (((827820)*(17^(1/3))^2+(58105080)*17^(1/3)+(134584260))*19^(1/2)+(17045208*(17^(1/3))^2+79043889*17^(1/3)+1426984144))^(1/4)
rsimp(r)
\end{axiom}
Denesting is not limited to numbers, it works for algebraic functions and more general expressions:
\begin{axiom}
)set output tex off
)set output algebra on
r := ((x^6+3*x^5+73*x^4+429*x^3+63*x^2+213*x1287)*(x^33)^(1/2)+3*x^7+37*x^6+39*x^5+451*x^4+1545*x^3+315*x^2+351*x4860)^(1/3)
rsimp(r)
)set output algebra off
)set output tex on
r := ((2*exp(x)^212*exp(x)14)*(exp(x)+3)^(1/2)+exp(x)^312*exp(x)^2+39*exp(x)+52)^(1/2)
rsimp(r)
\end{axiom}
Fri, 12 Jan 2024 14:31:01 +0000[noncommutative Groebner bases] correct according to 96da3341640d9b207218400f485e66c453114241 (remove VarSet from NGroebnerPackage)
https://wiki.fricas.org/NoncommutativeGroebnerBases
https://wiki.fricas.org/NoncommutativeGroebnerBases
??changed:
gPak := NGroebnerPackage(Polynomial(Integer), IndexedExponents(Symbol), Symbol, Pdo)
gPak := NGroebnerPackage(Polynomial(Integer), IndexedExponents(Symbol), Pdo)
Tue, 09 Jan 2024 17:15:47 +0000[SandboxErik]
https://wiki.fricas.org/SandboxErik
https://wiki.fricas.org/SandboxErik
??changed:
How can I rewrite a expression to with respect to a variable? For example v=H*r and to make axiom rewrite this as r=H/r?
How can I rewrite a expression to with respect to a variable? For example v=H*r and to make FriCAS rewrite this as r=H/r?
++added:
lcm([2, 6, 9])
Fri, 08 Dec 2023 13:56:02 +0000