Curieuses simplifications

Librairie C++ de calcul formel/ C++ symbolic computation library

Modérateur : xcasadmin

cdeval
Messages : 183
Inscription : mer. juin 03, 2009 4:28 pm

Curieuses simplifications

Message par cdeval » mer. nov. 24, 2021 5:45 pm

Hello,
pendant mes tests dans LibreOffice, j'ai cru que ma conversion Cellule->Gen fonctionnait mal mais non, giac présente aussi ces simplifications récalcitrantes selon le type INT ou DOUBLE lorsque l'expression contient une variable :

Code : Tout sélectionner

24>> simplifier(1+a+2)
a+3
// Time 0
25>> simplifier(1+a+2.1)
1+a+2.1
// Time 0
26>> simplifier(1+a+2+3.1)
1+a+5.1
// Time 0
27>> simplifier(1+a+2.0+3.1)
1+a+2.0+3.1
// Time 0
28>> version()
"giac 1.7.0, (c) B. Parisse and R. De Graeve, Institut Fourier, Universite de Grenoble I"
// Time 0
Existe-t-il un contournement ?

parisse
Messages : 5417
Inscription : mar. déc. 20, 2005 4:02 pm
Contact :

Re: Curieuses simplifications

Message par parisse » jeu. nov. 25, 2021 6:17 am

Ca vient du fait que simplify ne gere pas les expressions contenant des nombres approches. On peut utiliser normal ici.

cdeval
Messages : 183
Inscription : mer. juin 03, 2009 4:28 pm

Re: Curieuses simplifications

Message par cdeval » jeu. nov. 25, 2021 7:25 am

D'accord.
Puis-je remplacer l'instruction "simplifier" par "normal" sans effets secondaires ?

parisse
Messages : 5417
Inscription : mar. déc. 20, 2005 4:02 pm
Contact :

Re: Curieuses simplifications

Message par parisse » jeu. nov. 25, 2021 3:22 pm

Ca depend car ca ne fait pas la meme chose. simplify gere les egalites du type exp(2x)=exp(x)^2 ou sin^2+cos^2=1, normal non (il considere toutes les fonctions comme algebriquement independantes).

Répondre