• Aucun résultat trouvé

Tchebychev pour l’approximation uniforme sur un segment

R´esum´e

Un large ´eventail de m´ethodes num´eriques existe pour calculer des approximations polynomiales de solutions d’´equations diff´erentielles bas´ees sur les s´eries de Tchebychev ou sur l’interpolation polynomiale en des points de Tchebychev. Dans ce chapitre nous consid´erons l’application de telles m´ethodes dans le contexte du calcul rigoureux, o`u nous avons besoin d’un moyen pour obtenir des garanties sur l’exactitude du r´esultat, en prenant en consid´eration `a la fois les erreurs de troncature et d’arrondi.

Nous avons vu pr´ec´edemment que les coefficients d’une s´erie de Tchebychev D-finie

´etaient solutions d’une r´ecurrence. N´eanmoins, d´erouler cette r´ecurrence ne suffit pas en g´en´eral `a obtenir les coefficients, en raison d’une part de la difficult´e d’acc`es aux conditions initiales, d’autre part de la pr´esence de nombreuses solutions divergentes.

Dans ce chapitre, nous montrons comment ces r´ecurrences peuvent quand m^eme

^etre utilis´ees pour calculer une bonne approximation uniforme de fonction D-finie accompagn´ee d’une borne d’erreur, le tout en complexit´e arithm´etique lin´eaire. Notre approche se fonde sur une m´ethode num´erique classique due `a Clenshaw, combin´ee `a une technique d’arithm´etique des intervalles pour les solutions d’´equations diff´erentielles.

Ce chapitre repr´esente une version pr´eliminaire d’un travail en commun avec Mioara Jolde¸s et Marc Mezzarobba [BJM]. Une version est aussi disponible dans leurs th`eses [Jol11,Mez11].

Sommaire

1 Introduction . . . 141 1.1 Contexte . . . 141 1.2 Donn´ees . . . 142 1.3 R´esum´e des r´esultats et plan du chapitre . . . 142

139

2 Calcul des coefficients . . . 144 2.1 L’algorithme de Clenshaw revisit´e . . . 144 2.2 Convergence . . . 147 2.3 Variantes . . . 151 3 eveloppements des fractions rationnelles . . . 153 3.1 R´ecurrence et expression explicite . . . 154 3.2 Calcul . . . 156 4 Bornes d’erreurs / Validation . . . 158 4.1 Equation diff´erentielle d’ordre 1. . . 158 4.2 Finesse de la borne calcul´ee . . . 161 4.3 ´Equation diff´erentielle d’ordre quelconque. . . 161 5 Exp´eriences . . . 164

1 Introduction

1.1 Contexte

Le probl`eme qui nous occupe dans ce chapitre est le suivant :

Probl`eme 7.1. Soient 𝑦 une fonction D-finie sp´ecifi´ee par une ´equation diff´erentielle avec des coefficients polynomiaux, une suite de conditions initiales et un entier 𝑑. Comment calculer les coefficients du polyn^ome :

𝑝(𝑥) =

𝑑

𝑛=0

𝑐𝑛𝑇𝑛(𝑥)

ainsi qu’une borne𝐵 assez fine telle que⋃︀𝑦(𝑥) −𝑝(𝑥)⋃︀ ⩽𝐵 pour tout𝑥∈ (︀−1,1⌋︀. Une premi`ere motivation pour ´etudier ce probl`eme vient de l’´evaluation d’une fonction𝑦 en de nombreux points vivant dans un intervalle, le plus souvent `a pr´ecision mod´er´ee.

Les exemples incluent le trac´e de graphes, l’int´egration num´erique, le calcul d’approxi-mationminimax d’une fonction en utilisant l’algorithme de Remez. Une fa¸con standard pour r´epondre `a ce besoin a recours `a des approximations polynomiales de 𝑦. Si nous voulons manipuler des fonctions D-finies arbitraires, il est naturel de demander de bonnes approximations polynomiales uniformes de ces fonctions sur un intervalle, avec des bornes d’erreurs rigoureuses, afin que l’ensemble des calculs puisse aboutir `a un r´esultat rigoureux.

Outre l’´evaluation num´erique ais´ee, de telles approximations fournissent une repr´esen-tation commode des fonctions continues sur laquelle on peut d´efinir toute une arithm´etique, avec addition, multiplication, composition et int´egration. Compar´ee `a la repr´esentation exacte des fonctions D-finies par des ´equations diff´erentielles, cette repr´esentation est seulement approch´ee mais plus g´en´erale. Pour diff´erentes raisons, il est naturel dans ce contexte d’´ecrire les polyn^omes sur la base des Tchebychev plut^ot que sur la base monomiale.

En particulier, les troncatures qui interviennent durant les op´erations arithm´etiques sur les approximants pr´eservent de bonnes propri´et´es d’approximation uniforme. Le logiciel Chebfunde Trefethen et al.[Tre07,DBT08] est un syst`eme populaire de calcul num´erique bas´e sur cette id´ee.

Dans un contexte encore plus g´en´eral, Epstein, et ont d´evelopp´e un formalisme de calcul sur les fonctions math´ematiques appel´eultra-arithmetic [EMR82a, EMR82b,KM84]

qui se veut `a celle-ci ce que l’arithm´etique en virgule flottante est aux nombres r´eels.

Diversess´eries de Fourier g´en´eralis´ees, incluant les s´eries de Tchebychev, y jouent le r^ole des flottants. Les objets de base sont alors des s´eries tronqu´ees `a coefficients des intervalles, accompagn´ees de bornes rigoureuses sur les erreurs de troncatures. Cette approche a ´et´e relanc´ee avec l’introduction desChebModelsdans un travail r´ecent de Brisebarre et Jolde¸s [BJ10]. Une deuxi`eme motivation `a la suite du probl`eme 7.1 est l’utilisation des fonctions D-finies quelconques commefonctions de basesaux feuilles et aux nœuds des arbres d’expressions qui sont ´evalu´es en utilisant les ChebModels.

1. INTRODUCTION 141

Finalement, le principal attrait de l’ultra-arithmetic et des techniques apparent´ees est peut-^etre la possibilit´e de r´esoudre rigoureusement des ´equations fonctionnelles par des m´ethodes d’inclusion. Les ´equations diff´erentielles lin´eaires `a coefficients polynomiaux sont parmi les plus simples auxquelles s’applique cette approche. Un troisi`eme objectif de ce chapitre est de contribuer `a l’´etude de la complexit´e des m´ethodes d’inclusion, du point de vue du calcul formel, en prenant comme prototype cette famille de probl`emes.

1.2 Donn´ees

Dans ce chapitre, on fixe une ´equation diff´erentielle lin´eaire homog`ene `a coefficients polynomiaux

𝐿𝑦=𝑎𝑟𝑦(𝑟)+𝑎𝑟1𝑦(𝑟1)+ ⋯ +𝑎0𝑦=0, 𝑎𝑖∈Q(︀𝑥⌋︀. (7.1) Quitte `a effectuer un changement de variables, on recherche une approximation polynomiale d’une solution 𝑦 de (7.1) sur le segment (︀−1,1⌋︀. La norme uniforme sur cet intervalle est not´ee∏︁ ⋅ ∏︁. On suppose aussi que𝑎𝑟(𝑥) ≠0 pour𝑥∈ (︀−1,1⌋︀, de sorte que toutes les solutions de (7.1) sont analytiques sur(︀−1,1⌋︀, et que sont donn´ees𝑟conditions au bord ind´ependantes (dans le sens que les applications 𝜆𝑖∶ker𝐿→Csont lin´eairement ind´ependantes)

𝜆𝑖(𝑦) =𝑖, 1⩽𝑖𝑟, (7.2)

chacune de la forme 𝜆𝑖(𝑦) = ∑𝑞𝑗=1𝜇𝑗𝑦(𝑟𝑗)(𝑥𝑗) avec 𝑥𝑗 ∈ (︀−1; 1⌋︀ et 𝑟𝑗𝑟, telle que la fonction 𝑦 est l’unique solution de (7.1) satisfaisant (7.2). Le cas de conditions initiales donn´ees en dehors de l’intervalle de d´eveloppement peut ^etre ramen´e `a nos hypoth`eses par des algorithmes de prolongement analytique.

Mod`ele de complexit´e Nous supposons dans ce chapitre que les op´erations arithm´e-tiques entre les nombres r´eels ou complexes sont effectu´ees en arithm´etique exacte (c’est-`a-dire en g´en´eral rationnelle). Cette hypoth`ese est faite pour plus de simplicit´e : la rigueur des calculs n’est pas affect´ee si l’arithm´etique exacte est remplac´e par l’arithm´etique `a virgule flottante dans l’algorithme7.1 et par l’arithm´etique des intervalles dans l’algorithme7.4(et l’algorithme7.2, m^eme si cela implique quelques ajustements). Cependant, nous n’analysons pas l’effet des erreurs d’arrondi sur la qualit´e du polyn^ome 𝑝 (voir probl`eme 7.1) ou celle de la borne d’erreur 𝐵. Au moins dans les cas simples, nous nous attendons `a ce que l’algorithme 7.1 exhibe une stabilit´e comparable aux m´ethodes bas´ees sur les r´ecurrences d´eroul´ees`a reculons(voir [Wim84]). Certaines exp´eriences qui montrent un comportement num´erique satisfaisant sont donn´ees dans §5.

1.3 R´esum´e des r´esultats et plan du chapitre

Nous d´ecrivons une m´ethode de calcul d’approximations polynomiales des fonctions D-finies avec les caract´eristiques suivantes. Soit 𝑦 une fonction D-finie analytique sur le segment (︀−1,1⌋︀, et notons ∏︁⋅∏︁ la norme uniforme sur ce segment. Pour un degr´e 𝑑 donn´e, notre m´ethode renvoie un polyn^ome𝑝 de degr´e𝑑ainsi qu’une borne rigoureuse et

fine𝐵 sur la diff´erence ∏︁𝑦𝑝∏︁. Le polyn^ome 𝑝est obtenu comme une approximation du d´eveloppement en s´erie de Tchebychev de 𝑦 tronqu´ee `a l’ordre𝑑.

Sous des hypoth`eses convenables, la complexit´e arithm´etique du proc´ed´e est lin´eaire en 𝑑+log(𝜖1), o`u𝜖est li´e `a la pr´ecision de calcul des coefficients de𝑝 ainsi qu’`a la borne𝐵. Si la fonction 𝑦 `a approcher n’est pas elle-m^eme un polyn^ome de degr´e inf´erieur ou ´egal

`a𝑑, on attend en g´en´eraldans un sens volontairement vague, max𝑥 ⋃︀𝑦(𝑥) −𝑝(𝑥)⋃︀ ≈𝜖≈2Θ(𝑑)

de sorte que les termes 𝑑 et log(𝜖1) de la borne de complexit´e sont du m^eme ordre de grandeur.

`A titre de comparaison, en supposant que le d´eveloppement en s´erie de Taylor de 𝑦 converge, ses troncatures successives fournissent des approximations polynomiales de 𝑦 d’erreur born´ee par 2𝑒, 𝑒=Ω(𝑑), sur tout compact inclus dans leur disque de convergence, et peuvent ^etre calcul´ees en 𝒪(𝑑) = 𝒪(𝑒)op´erations arithm´etiques. Nos approximations ne sont pas meilleures selon ce crit`ere : le temps n´ecessaire pour obtenir l’erreur inf´erieure

`a 2𝑒 reste Ω(𝑒). En revanche, il ne suffit pas que𝑦soit analytique sur(︀−1,1⌋︀pour que son d´eveloppement en s´erie enti`ere `a l’origine converge sur ce segment. De fa¸con li´ee, la constante que cache l’´ecriture𝑒=Ω(𝑑)dans le cas des s´eries de Taylor peut devenir arbitrairement grande quand 𝑦 varie, m^eme si 𝑦 admet en fait de bien meilleures approximations de degr´e𝑑.

Cependant, la constante cach´ee dans la relation𝑒=Ω(𝑑)peut ^etre arbitrairement petite en fonction de𝑦, m^eme si des meilleurs approximations polynomiales de degr´e𝑑existent r´eellement.

L’objet de notre ´etude est ainsi d’´egaler le co^ut lin´eaire de l’approximation par s´eries de Taylor, tout en calculant des approximations dont la qualit´e est proche de l’optimum, uniform´ement en𝑦. Dans l’´etat actuel de ce travail, nous n’´enon¸cons cependant pas de lien pr´ecis entre la borne𝐵 produite par notre m´ethode et l’erreur optimale (minimax).

Le choix du mod`ele de complexit´e arithm´etique pour un algorithme o`u interviennent des calculs num´eriques multi-pr´ecision pourrait surprendre. Observons cependant que toutes les op´erations d’arithm´etique de base sur les rationnels et les nombres `a virgule flottante de taille born´ee par𝑛peuvent ^etre effectu´ees en 𝒪(𝑛(log𝑛)𝒪(1)) op´erations [BZ10]. Sauf si des annulations exceptionnelles se produisent, la taille maximale en bit des nombres que l’on manipule est `a peu pr`es la m^eme que celles des coefficients de𝑝 (`a savoir 𝒪(𝑑log𝑑) lorsque ceux-ci sont repr´esent´es par des rationnels). On s’attend ainsi `a une complexit´e binaire quasi-lin´eaire en la taille totale du polyn^ome d’approximation calcul´e.

Notre algorithme proc`ede en deux ´etapes. On calcule d’abord un polyn^ome d’approxi-mation candidat, `a partir du d´eveloppement en s´erie de Tchebychev de la fonction𝑓. Nous ne tentons pas de contr^oler rigoureusement les erreurs `a ce stade. Nous validons dans un second temps ce polyn^ome en utilisant les m´ethodes d’inclusion.

Ce chapitre est organis´e comme suit. Dans §2, nous donnons un algorithme pour calculer les coefficients de Tchebychev d’une fonction D-finie `a partir de la r´ecurrence qu’ils

1. INTRODUCTION 143

v´erifient (voir 5). Cet algorithme rappelle la variante de Fox et Parker [FP68, Chap. 5] de l’algorithme de Clenshaw [Cle57]. En g´en´eral, sa sortie est une approximation de qualit´e ind´etermin´ee. Sous quelques hypoth`eses simplificatrices H1 etH2, nous montrons que le polyn^ome calcul´e peut ^etre rendu arbitrairement proche du d´eveloppement de Tchebychev de 𝑦 tronqu´e au degr´e 𝑑. Dans la section §3, nous ´etudions le d´eveloppement en s´erie de Tchebychev de fonction rationnelle. Plus important encore, nous calculons une borne sur l’erreur dans §4, avec une m´ethode d’inclusion pour les ´equations diff´erentielles, afin de valider la sortie du premier algorithme et obtenir une borne 𝐵. La section 5pr´esente quelques r´esultats exp´erimentaux.