login  home  contents  what's new  discussion  bug reports     help  links  subscribe  changes  refresh  edit

Edit detail for FriCASTutorial revision 6 of 10

1 2 3 4 5 6 7 8 9 10
Editor: hemmecke
Time: 2014/03/03 17:56:55 GMT+0
Note:

changed:
-and Quentin Carpent at http://la.riverotte.free.fr/axiom 
and Quentin Carpent at 
http://pages.saclay.inria.fr/daniel.augot/documents/axiom_intro.pdf
<!-- http://la.riverotte.free.fr/axiom --> 

added:
(released under "CC-BY-SA":http://web.archive.org/web/20091025085024/http://creativecommons.org/licenses/by-sa/2.0/ )

Most introductory material about Axiom applies to FriCAS.
The [Axiom Volume 1]: Tutorial is available in printed format at
http://publish-book.com and http://www.lulu.com/product/file-download/axiom-volume-1-tutorial/243127

  • There is a good introduction to Axiom by Martin N. Dunstan, in English, at http://www.dcs.st-andrews.ac.uk/~mnd/documentation/axiom_tutorial (Alternate link: TutorialIntroductionToAxiom )
  • a complete introduction to Axiom by Daniel Augot, en Français, is available at http://www-rocq.inria.fr/codes/Daniel.Augot/axiom_intro.pdf
  • an Axiom tutorial and a collection of exercises by Christophe Conil and Quentin Carpent at http://pages.saclay.inria.fr/daniel.augot/documents/axiom_intro.pdf (local copy http://axiom-wiki.newsynthesis.org/public/axiom/) (released under CC-BY-SA )
  • and a blog by Alasdair McAndrew containing an excellent introduction to Axiom.
  • Extending the FriCAS library is done in the programming language SPAD. Find introductory material on the page ProgrammingSPAD.

A Quick Tutorial

On this web site you can enter FriCAS commands and see the output in proper mathematical form. These commands can also be typed directly into FriCAS installed on your own computer.

You must enclose each set of FriCAS commands in a \begin{axiom} \end{axiom} section. For example:

    \begin{axiom}
    [1/2, 3/4, 2/3]
    \end{axiom}

When you save the changes you make to a page, FriCAS? processes the contents of each section you have marked and the FriCAS? output is displayed.

Try this command:

fricas
[1/7, 3/4, 5/6]
\begin{equation*} \label{eq1}\left[{1 \over 7}, \:{3 \over 4}, \:{5 \over 6}\right]?\end{equation*}
Type: List(Fraction(Integer))

Please feel free to play with this in the SandBox?!

Advanced Examples

Let's see if we can perform a finite window Fourier inversion.

fricas
simplify(integrate(exp(%i*_\omega*t) * exp(-%i*_\omega * _\tau), _\omega=-_\Omega .. _\Omega))
\begin{equation} \label{eq2}{\left( \begin{array}{@{}l} \displaystyle -{i \ {{e}^{{i \ \Omega \ t}-{i \ \Omega \ \tau}}}}+ \ \ \displaystyle {i \ {{e}^{-{i \ \Omega \ t}+{i \ \Omega \ \tau}}}} \end{array} \right)}\over{t - \tau}\end{equation}
Type: Expression(Complex(Integer))

Try this integrating this

fricas
2*x/sin(x)^2
\begin{equation} \label{eq3}{2 \ x}\over{{\sin \left({x}\right)}^{2}}\end{equation}
Type: Expression(Integer)

fricas
integrate(%,x)
\begin{equation} \label{eq4}{\left( \begin{array}{@{}l} \displaystyle {2 \ {\sin \left({x}\right)}\ {\log \left({{\sin \left({x}\right)}\over{{\cos \left({x}\right)}+ 1}}\right)}}-{2 \ {\sin \left({x}\right)}\ {\log \left({2 \over{{\cos \left({x}\right)}+ 1}}\right)}}- \ \ \displaystyle {2 \ x \ {\cos \left({x}\right)}} \end{array} \right)}\over{\sin \left({x}\right)}\end{equation}
Type: Union(Expression(Integer),...)

Now differentiate it

fricas
D(%,x)
\begin{equation} \label{eq5}{{2 \ x \ {{\sin \left({x}\right)}^{2}}}+{2 \ x \ {{\cos \left({x}\right)}^{2}}}}\over{{\sin \left({x}\right)}^{2}}\end{equation}
Type: Expression(Integer)
fricas
simplify(%)
\begin{equation} \label{eq6}-{{2 \ x}\over{{{\cos \left({x}\right)}^{2}}- 1}}\end{equation}
Type: Expression(Integer)

Expressions (3) and (6) are really that same.

fricas
simplify(%%(3) - %%(6))
\begin{equation} \label{eq7}0\end{equation}
Type: Expression(Integer)

fricas
D(x^x,x)
\begin{equation} \label{eq8}{{\log \left({x}\right)}\ {{x}^{x}}}+{x \ {{x}^{x - 1}}}\end{equation}
Type: Expression(Integer)

See, that was easy!

Here are some more things to try.

fricas
integrate(log(sin(x)),x=0..%pi)
\begin{equation} \label{eq9}\mbox{\tt "potentialPole"}\end{equation}
Type: Union(pole: potentialPole,...)

fricas
limit(sum(1/i^2,i=1..n),n=%plusInfinity)
>> Error detected within library code: a sum cannot be differentiated with respect to a bound

Can you explain these results?

Advanced Programming

For more details see: FriCASProgramming? .

Special FriCASWiki? Markup for Programming

Spad

To include Spad programs on web pages in this website click edit (or when adding comments or in bug reports) use:

       \begin{spad}
       )abbrev ...
       ...
       \end{spad}

Aldor

To include Aldor programs on pages in this website use:

       \begin{aldor}
       ...
       \end{aldor}

or:

       \begin{aldor}[name]
       ...
       \end{aldor}

LaTeX?

You can add LaTeX? formatted equations to pages on this web site by:

       $$
       ...
       $$

and inline symbols such as $\alpha +\beta$ are written like this: $\alpha +\beta$

To include arbitrary LaTeX? on pages in this website use:

       \begin{latex}
       ...
       \end{latex}

Lisp

To include Lisp programs on pages in this website use:

       \begin{lisp}
       ...
       \end{lisp}

Boot

To include Boot programs on pages in this website use:

       \begin{boot}
       ...
       \end{boot}

Broken link --Yrogirg, Fri, 01 Apr 2011 09:10:57 -0700 reply
The link to the tutorial by Martin N. Dunstan doesn't work (http://www.dcs.st-andrews.ac.uk/~mnd/documentation/axiom_tutorial). I can't find this tutorial elsewhere.

Some or all expressions may not have rendered properly, because Latex returned the following error:
This is pdfTeXk, Version 3.141592-1.40.3 (Web2C 7.5.6)
 \write18 enabled.
 %&-line parsing enabled.
entering extended mode
 I can't find file `5960012916500571187-16.0px.tex'.
<*> 5960012916500571187-16.0px.tex

Please type another input file name Emergency stop. <*> 5960012916500571187-16.0px.tex

No pages of output. Transcript written on texput.log.