SymPy est une bibliothèque Python a usage scientifique notamment mathématiques utilisée pour le calcul formel.

Cette bibliothèque permet de réaliser du calcul symbolique ou formel. Sur des aspects purement mathématiques, il permet l’écriture et le traitement d’équations, la simplification, le calcul de dérivées, d’intégrales, de limites, de séries…

Vous trouverez également des informations sur la page de SymPy : https://www.sympy.org/

Installation de la bibliothèque

Sympy est installée par défaut avec la plupart des distributions Python (comme Anaconda). Elle peut cependant être installé sur Python par l’une des commandes suivantes (dépendant de votre distribution) :

pip install sympy
conda install sympy

Importation de la bibliothèque

Afin de pouvoir utiliser la bibliothèque Sympy dans vos scripts sous Python, il est indispensable de l’importer dans votre programme :

import sympy as smp

Le calcul formel, c’est quoi ?

Calcul sur un ordinateur

Par défaut, si on demande à un calculateur de réaliser une opération, le programme vous fournira la valeur finale du calcul.

Par exemple, si on réalise les calculs suivants avec la bibliothèque math (résultat équivalent avec Numpy) :

import math
math.sqrt(9)
math.sqrt(8)
m = 3/2

On obtiendra le résultat suivant : 3.0 et 2.828427… m = 1.5. Ce qui correspond aux valeurs du calcul fourni à la machine.

Calcul formel

Si on réalise ces mêmes calculs de manière formelle, comme suit :

import sympy
sympy.sqrt(9)
sympy.sqrt(8)
k = sympy.Rational(3/2)

On va alors obtenir les résultats suivants : $$3$$ $$2\sqrt(2)$$ $$k = 3/2$$

Par l’utilisation du calcul formel, on voit qu’on conserve la valeur exacte dans tout le calcul.

Expressions mathématiques

Il est alors possible de traiter avec cette bibliothèque des expressions mathématiques contenant des variables mathématiques.

Variables symboliques

Pour cela, il faut au préalable déclarer les variables qui resteront symboliques :

x, y = sympy.symbols('x y')

Expressions symboliques

Il est alors possible de décrire des expressions. Pour cela, il faut les déclarer de la façon suivante :

expr = x**2 4 * x + 5
Sympy / Premiers pas en calcul formel