Probleme avec simplify et les racines carrées

Utilisation de Xcas

Modérateur : xcasadmin

chris79
Messages : 6
Inscription : sam. oct. 31, 2009 11:29 am

Probleme avec simplify et les racines carrées

Message par chris79 » dim. nov. 01, 2009 2:58 pm

Bonjour,

Je souhaite simplifier l'ecriture suivante : sqrt(sqrt(2)-sqrt(3))^2)
J'utilise donc la commande suivante : simplify(sqrt(sqrt(2)-sqrt(3))^2)
Résultat obtenu : -sqrt(2) + sqrt(3)
Résultat attendu : sqrt(2) - sqrt(3)
Qui peut m'aider,
Merci d'avance,
Chris79

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

Re: Probleme avec simplify et les racines carrées

Message par parisse » dim. nov. 01, 2009 7:02 pm

j'obtiens un rootof, pas une expression simple, et qui est bien négatif et semble correct puisque
a:=simplify(sqrt(sqrt(2)-sqrt(3))^2)
normal(a+sqrt(3)-sqrt(2))
renvoie 0 et evalf(a) renvoie -0.31...

alb
Messages : 1331
Inscription : ven. août 28, 2009 3:34 pm

Re: Probleme avec simplify et les racines carrées

Message par alb » lun. nov. 02, 2009 5:42 am

sqrt(sqrt(2)-sqrt(3))
sqrt(sqrt(2)-sqrt(3))^2
expand(sqrt(sqrt(2)-sqrt(3))^2
donnent les résultats attendus
simplify ou normal (à la place de expand) génèrent un rootof

luc briel

chris79
Messages : 6
Inscription : sam. oct. 31, 2009 11:29 am

Re: Probleme avec simplify et les racines carrées

Message par chris79 » jeu. nov. 05, 2009 12:41 am

C'est quoi un rootof ? :?:
Chris79

alb
Messages : 1331
Inscription : ven. août 28, 2009 3:34 pm

Re: Probleme avec simplify et les racines carrées

Message par alb » jeu. nov. 05, 2009 9:23 am

Je ne suis pas compétent pour expliquer un rootof
mais l'aide fournit la méthode pour l'utiliser dans les calculs:

normal(rootof([1,-1,1],[1,0,-10,0,1] opère ainsi:
prendre la plus grande racine (en norme) a du polynôme Q dont les coefficients sont 1,0,-10,0,1 cad x^4-10*x^2+1
calculer P(a) où P est le polynôme dont les coefficients sont 1,-1,1 cad x^2-x+1

PS: Soit a un réel. Est-il possible d'obtenir un polynôme ayant a pour racine
par ex soit a=sqrt(2)+sqrt(3). Existe t-il une fonction renvoyant [1,0,-10,0,1] ?

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

Re: Probleme avec simplify et les racines carrées

Message par parisse » jeu. nov. 05, 2009 12:02 pm

alb a écrit :Je ne suis pas compétent pour expliquer un rootof
mais l'aide fournit la méthode pour l'utiliser dans les calculs:

normal(rootof([1,-1,1],[1,0,-10,0,1] opère ainsi:
prendre la plus grande racine (en norme) a du polynôme Q dont les coefficients sont 1,0,-10,0,1 cad x^4-10*x^2+1
calculer P(a) où P est le polynôme dont les coefficients sont 1,-1,1 cad x^2-x+1
oui, pour avoir l'aide taper rootof puis la touche tab puis cliquer sur Details
PS: Soit a un réel. Est-il possible d'obtenir un polynôme ayant a pour racine
par ex soit a=sqrt(2)+sqrt(3). Existe t-il une fonction renvoyant [1,0,-10,0,1] ?
Oui, symb2poly(sqrt(2)+sqrt(3),[]) qui convertit en polynome au format interne.

alb
Messages : 1331
Inscription : ven. août 28, 2009 3:34 pm

Re: Probleme avec simplify et les racines carrées

Message par alb » dim. nov. 08, 2009 9:46 pm

Oui mais comment obtenir le polynôme ?
symb2poly(sqrt(2)+sqrt(3),[]) renvoie poly1[%%{[1,0]:[1,0,-10,0,1]%%}]
comment extraire la liste [1,0,-10,0,1] ?
pour faire normal(r2e([1,0,-10,0,1],x) et obtenir x^4-10*x^2+1

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

Re: Probleme avec simplify et les racines carrées

Message par parisse » lun. nov. 09, 2009 7:46 pm

en effet, il n'y a pas de fonction pour faire ça. Il faut dire qu'il s'agit de la représentation interne des objets de giac, je n'ai donc rien prévu à ce jour, mais on peut rajouter des fonctions pour tout ça!
Sinon, pour des exemples comme a:=sqrt(2)+sqrt(3), ce n'est pas très difficile de le faire soi-meme
1ere methode (naive): on calcule a, a^2, a^3, a^4 puis on développe
b:=normal((x*a+y*a^2+z*a^3+t*a^4)
puis diff(subst(b,sqrt(6),X),X) doit donner 0, de meme avec sqrt(2) et sqrt(3) et le coefficient constant qui donne un systeme linéaire.
2eme méthode (avec le résultant)
si X=sqrt(2) et Y=sqrt(3) et c=sqrt(2)+sqrt(3) on a X^2-2=0 et Y^2-3=0 et c-X-Y=0 on élimine
r:=resultant(X^2-2,c-X-Y,X)
resultant(r,Y^2-3,Y) donne alors l'équation polynomiale vérifiée par c:
c^4-10*c^2+1

alb
Messages : 1331
Inscription : ven. août 28, 2009 3:34 pm

Re: Probleme avec simplify et les racines carrées

Message par alb » lun. nov. 09, 2009 8:30 pm

Je pense que ce type de fonction peut-être intéressant pour la construction d'exercices (vérifier a priori que la réponse est "simple") du style, pour par ex des secondes:
On donne a par ex sqrt(2)+sqrt(3) ou sqrt(2010)-sqrt(2009) ou (sqrt(2)-sqrt(3))/(sqrt(5)-sqrt(7))
Trouver une équation du type polynôme à coeff entiers admettant a pour solution

pour a=sqrt(2)+sqrt(3), les élèves font a, a^2,a^2-5,(a^2-5)^2

Répondre