Calcul formel : Mode d'emploi - Exemples en Maple
Claude Gomez, Bruno Salvy, Paul Zimmermann
Masson, 1995
Chapitre I, section 2.7, exercice 4, page 32.
Philippe.Dumas@inria.fr
http://algo.inria.fr/dumas/Maple/
|
|
L'énoncé demande une simplification. On peut se demander quelle est la plus simple parmi les expressions qui suivent. La première montre tout de suite le comportement en zéro qui est, à vue, en 1+1-(16+36)/2*x^2+O(x^4), c'est-à-dire 2-26*x^2+O(x^4). La suivante est une décomposition en éléments simples ; elle montre bien les singularités de la fonction associée et permet un calcul de primitives aisée. L'avant dernière montre la position des pôles et leur ordre. La dernière a l'avantage de l'unicité. Bref la simplification ne veut rien dire et tout dépend de ce que l'on veut faire avec cette expression.
> alpha:=arctan(x):
> expr:=cos(4*alpha)+cos(6*alpha);
> expr1:=expand(expr);
> expr2:=normal(expr1);
> expr3:=normal(expr1,expanded);
La procédure normal/expanded a le mérite de garantir l'unicité de l'écriture (dans la mesure où il y a unicité pour les coefficients de la fraction rationnelle), contrairement à la procédure normal. Autrement dit normal fournit une forme normale (zéro ne s'ecrit que 0) alors que normal/expanded fournit une forme canonique (chaque fraction rationnelle n'a qu'une écriture développée avec numérateur et dénominateur premiers entre eux).