S’il vous plaît ne tombez pas dans le piège de croire que je suis vraiment dogmatique à propos de [l’instruction GOTO]. J’ai l’impression désagréable que les autres font une religion hors de lui, comme si les problèmes conceptuels de la programmation pourrait être résolu par un truc unique, par une forme simple au discipline de codage !
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.