mvpoly

Une bibliothèque pour les calculs numériques avec les polynômes multivariés. Ce script Python confirme l’identité des quatre carrés d’Euler (en 0,02 secondes) :

import time
from mvpoly.dict import *

t0 = time.time()
a1, a2, a3, a4, b1, b2, b3, b4 = MVPolyDict.variables(8)
p = (a1**2 + a2**2 + a3**2 + a4**2) * (b1**2 + b2**2 + b3**2 + b4**2)
q = (a1*b1 - a2*b2 - a3*b3 - a4*b4)**2 + \
    (a1*b2 + a2*b1 + a3*b4 - a4*b3)**2 + \
    (a1*b3 - a2*b4 + a3*b1 + a4*b2)**2 + \
    (a1*b4 + a2*b3 - a3*b2 + a4*b1)**2
assert p == q, "failed Euler-Goldbach"
t1 = time.time()
print("%8.6f" % (t1 - t0))

Le paquet Octave qui peut être installé en utilisant la commande

sudo octave --eval "pkg install mvpoly-octave-0.98.3.tar.gz"

Pour le paquet Matlab, voyez le fichier README dedans pour les instructions d’installation.

Un module Python se trouve à la page GitLab et la documentation ici, et peut être installé avec

python3 -m pip install mvpoly \
  --index-url https://gitlab.com/api/v4/projects/6939644/packages/pypi/simple

Les utilisateurs de NetBSD peuvent installer le paquet Python py-mvpoly via pkgsrc.

La source peut être trouvée sur la page GitLab.

mvpoly plot
Un polynôme bivarié, évalué par mvpoly, tracée par matplotlib