XCAS
Logiciel libre de calcul formel

Xcas, le couteau suisse des mathématiques

🛈 Dernière mise à jour Mai 2022, version stable 1.9.0-7.

pc tabnoir

Giac/Xcas est un système de calcul formel libre pour Windows, Mac OSX et Linux/Unix (license GPL3, possibilité d'obtenir une license pour inclusion dans un logiciel commercial en nous contactant).

❖ Installer ❖ Accéder à XcasJS ❖ Accéder à xcas sur tableau noir

Xcas en résumé

Fonctionnalités

-Calcul Formel : arithmetique, integration, derivation, limites, ...
-Graphes : fonctions, paramétrique, dans le plan et l'espace
-Tableur et statistiques : calcul approché et exact
-Géometrie interactive : dans le plan et l'espace
-Programmation : langage en francais ou syntaxe compatible Python (versions >=1.4.9)
-Tortue logo
-Aide en ligne : documentation entièment en francais, index des fonctions, syntaxe, exemples, recherche par mot clef, complétion.
-Editeur d'équation : affichage 2-d des expressions, possibilité de travailler sur des sous-expressions.
-Unité physiques : opérations usuelles et conversion

--Voir aussi la présentation des Trophées du Libre 2007: version longue,courte ou la session Xcas

calcul formel:

Calcul en précision arbitraire (entiers et flottants), arithmétique des entiers et des polynomes (PGCD, Bézout, factorisation, ...), simplification (fractions rationnelles, fonctions trigonométriques,...), résolution d'équations, dérivation, intégration (fraction rationnelle, méthodes heuristiques, algorithme de Risch pour les fonctions transcendantes), décomposition en éléments simples de fractions rationnelles, limites, développement de Taylor et asymptotiques, algèbre linéaire (vecteurs, matrices, réduction de Gauss, vecteurs et valeurs propres exactes et approchées)...

Géométrie 2-d / Géométrie et graphes 3-d:

Points, segments, droites, plans, triangles, quadrilatères, polygones, cercles, coniques, courbes paramétrées et polaires, intersections, tangentes, paramètres, angles, affixes, ... Géométrie interactive Toutes les instructions de tracé sont programmables. Les calculs peuvent etre faits de manière exacte en utilisant le système de calcul formel, ce qui permet de faire des preuves (de géométrie analytique).

Tableur:

Références absolues et relatives, calcul exact ou approché (les cellules peuvent etre des entiers en précision arbitraire, des noms de variables, des expressions, ...), accès complet aux fonctions de programmation, interface pour les statistiques 1-d et 2-d (moyenne, écart type, histogramme, covariance, corrélation...)

Programmation:

fonctions, variables locales, tests, boucles. Syntaxe au choix (en francais, compatible Python, Maple, MuPAD ou TI89). Possibilité dans des cas favorables de lire et d'exécuter des programmes Python, Maple, MuPAD ou TI89. Editeur intégré pour de petits programmes. Débogueur interactif.

Plusieurs fonctionnalités utilisées simultanément.

Giac

Giac en Javascript:

Il existe plusieurs interfaces utilisant Giac compilé en Javascript:
Xcas pour Firefox Tableaunoir Xcas Calculatrice CAS simple

Pour utiliser Giac dans vos propres projets Javascript, vous pouvez récupérer le fichier giacjs.tar.gz ou utiliser la commande
npm install "https://www-fourier.univ-grenoble-alpes.fr/~parisse/giacjs.tar.gz"

giacpy : Calcul formel en python:

Frédéric Han a développé une interface Python pour giac, giacpy pour Windows, Mac OS et Linux. Elle permet d'accéder à toutes les fonctionnalités et perfomances de Giac/Xcas depuis le langage Python (version 2.7, 3.2 ou 3.3) : un complément indispensable pour les élèves de classes préparatoires qui veulent faire du calcul formel en utilisant le langage au programme.
  • Installation Windows : installez Python puis ouvrez "Invite de commande" depuis le menu Accessoires. Tapez les commandes
    python.exe -mpip install --upgrade pip
    python.exe -mpip install wheel
    python.exe -mpip install giacpy

  • Installation Mac: installez Xcas pour Mac ou voir le site de F. Han
  • Installation Linux debian compatible:
    sudo apt-get install python-giacpy OU sudo apt-get install python3-giacpy.
Exemple de commandes: lancez l'interpreteur python puis tapez:

from giacpy import *
ifactor(2**128+1)
x=giac('x')
f=factor(x**10-1)
d=plot(sin(x))
d.qcas()
help("giacpy")
normal.help()

Exemple de programme Python utilisant giac et giacpy : ocapy par Didier Gosseau, une calculatrice RPN.

Giac en mode console:

Les versions Linux, Mac et Windows de Xcas contiennent une version texte giac, utilisable directement ou dans une session texmacs (qu'on peut tester sans installer avec livetexmacs), ou dans une session emacs en mode mupad (lire les instructions de mupacs, utiliser giac --emacs comme programme à lancer au lieu de mupad -E/-R ... ).
Alternative pour le mode emacs: telecharger mupacs.tgz le desarchiver depuis cd / ; tar xvfz chemin_vers/mupacs.tgz ajouter (load "/usr/local/share/emacs/site-lisp/mupacs.el") dans ~/.emacs , puis faire Echap-x mupad-run et remplacer mupad -E/-R ... par giac --emacs .

HP Prime:

Giac est le moteur de calcul formel natif de la calculatrice HP Prime ainsi que des applications émulant la calculatrice sur tablettes, smartphones, etc. Documentation du CAS écrite par Renée De Graeve.

Giac et LaTeX:

Il existe plusieurs méthodes pour appeler giac automatiquement depuis un document LaTeX et lui déléguer certains calculs.
  • Compiling LaTeX to computer algebra enabled HTML5 explique comment on peut ajouter des commandes Xcas à un document LaTeX pour le compiler en HTML+MathML avec un bon rendu des formules mathématiques et la possibilité pour le lecteur de modifier et d'exé:cuter les commandes depuis son navigateur. On peut également obtenir un fichier PDF avec les calculs (et graphes) faits à la compilation.
  • Sous linux, le programme giac (ou icas) peut "filtrer" des fichiers latex pour generer du code HTML5 et du PDF avec des calculs et des graphiques effectués par le moteur de calcul formel de giac (ceci est inspiré de pgiac de Jean-Michel Sarlat décrit ci-dessous). Il faut avoir installé hevea et pdflatex. Il suffit alors de taper dans un terminal
    giac nom_fichier
    au lieu de pdflatex nom_fichier (mettre l'extension .tex en cas de conflit de nom de fichier). giac filtre les calculs, les effectue, cree des EPS des graphiques 2d, ensuite giac appelle hevea -fix pour generer du HTML5 (à consulter depuis Firefox pour des performances optimales) et pdflatex pour générer le PDF.
    Les calculs se placent dans un fichier .tex normal où on a mis (juste apres \begin{document}) \begin{giacjsonline} et (juste avant \end{document}) \end{giacjsonline}. Pour faire un calcul ou un graphe on utilise une commande du type \giacinputbigmath{factor(x^4-1)} ou \giacinput{plot(sin(x))}. Le lecteur pourra modifier et/ou exécuter la commande dans son navigateur compatible (Firefox recommandé). Voir le fichier testfr.tex pour des exemples types de commandes ou methnum.tex pour une utilisation en vraie grandeur.
  • professor.sty est une collection de fichiers de style pour créer automatiquement des tableaux de variations, des statistiques, etc. dans vos documents LaTeX. Par Denis Le Fur et Guillaume Connan (contient le fameux tablor.sty de Guillaume Connan). Utilisable depuis texmacs via les plugins professor et tablor par E. Corcelle.
  • le script Perl pgiac de J.M. Sarlat permet de créer des sources .w contenant des commandes giac (les lignes commencant par .g et les sections commencant par .g: et finissant par .end), transformés après calculs en fichiers .tex par la commande pgiac nom_fichier.w. Il suffit alors de le compiler avec sa distribution LaTeX préférée, cf. le site Syracuse.
  • voir aussi les exemples de source LaTeX utilisant giac pour les calculs de G. Connan, de Yves Delhaye (cf. aussi son générateur d'interrogations), et d' Alexandre Boisseau

Documentation francaise de xcas

Autour de xcas

Pages web parlant de Xcas:

Citations:

Si vous souhaitez citer Giac/Xcas, vous pouvez y faire référence de la manière suivante Giac/Xcas, Bernard Parisse et Renée De Graeve, version 1.2.3 (2017), http://www-fourier.univ-grenoble-alpes.fr/~parisse/giac_fr.html

Livres et manuels parlant de Xcas:

Programmes utilisant Xcas:

Geogebra:dans la vue CAS
Facilimaths:Exercices en lignes (niveau lycée), propose aussi une extension PHP pour Giac. Par Jean-Pierre Branchard.
Tablor:par Guillaume Connan, un programme générant automatiquement des tableaux de variations LaTeX, les calculs sont effectués;s par Giac, cf. le mode d'emploi. En combinant tablor avec pgiac et LaTeX, on simplifie la rédaction de corrigés, comme sur cet exemple de G. Connan: PDF, LaTeX.
Kruptor:Kruptor est un paquetage de procédures écrites en xcas dans le style Maple, qui permet de programmer facilement des démonstrations des fonctionnements des systèmes cryptographiques. Un certain nombre d'exemples sont fournis dans le paquetage.

Giac/Xcas (c) 2022 B. Parisse, R. De Graeve, Institut Fourier, Université de Grenoble. Ce site est fourni aux conditions de la GFDL (Gnu Free Documentation Licence).