HAL Id: tel-00137153
https://tel.archives-ouvertes.fr/tel-00137153
Submitted on 16 Mar 2007
HAL is a multi-disciplinary open access
archive for the deposit and dissemination of
sci-entific research documents, whether they are
pub-lished or not. The documents may come from
teaching and research institutions in France or
L’archive ouverte pluridisciplinaire HAL, est
destinée au dépôt et à la diffusion de documents
scientifiques de niveau recherche, publiés ou non,
émanant des établissements d’enseignement et de
recherche français ou étrangers, des laboratoires
Réécriture algébrique dans les systèmes d’équations
différentiellespolynomiales en vue d’applications dans les
Sciences du Vivant
François Boulier
To cite this version:
François Boulier. Réécriture algébrique dans les systèmes d’équations différentiellespolynomiales en
vue d’applications dans les Sciences du Vivant. Génie logiciel [cs.SE]. Université des Sciences et
Technologie de Lille - Lille I, 2006. �tel-00137153�
Laboratoire d'Informatique Fondamentale de Lille
Équipe Cal ul Formel
59655 Villeneuve d'As q, Fran e
Mémoire d'Habilitation à Diriger des Re her hes
Numéro d'ordre : H497
Réé riture algébrique dans les systèmes d'équations diérentielles
polynomiales en vue d'appli ations dans les S ien es du Vivant
François Boulier
Soutenan e le 4 mai 2006 devant le jury
Max Dau het LIFL Président
Daniel Lazard LIP6 Rapporteur
Claude Gomez INRIA Rapporteur
Greg Reid ORCCA Rapporteur
Gérard Ja ob LIFL Dire teur
Mi hel Petitot LIFL Examinateur
Bruno Salvy INRIA Examinateur
Une journéeexisteetla pré édenteexiste et ellequi pré ède lapré édente,et elled'avant...etelles
sont bienagglutinées, desdizaines ensemble, destrentaines,des années entières, eton n'arrivepas àvivre,
soi,mais seulement àvivrelavie,etl'on esttoutétonné.
L'homme du pays de la Magie sait bien ela. Ilsait que la journée existe et très forte, très soudée, et
qu'ildoitfaire equelajournéenetientpasàfaire.
Il her hedon àsortirsajournéedumois.C'estl'attraperquiestdi ile.Et en'estpaslematinqu'on
y arriverait. Mais vers deux heures de l'aprèsmidi, il ommen e à la faire bouger, vers deux heures, elle
bas ule,ellebas ule;là,il fautêtretoutàsonaaire, peser,tenir,lâ her, dé harger, onvoyer pardessus.
Enn il la détourne, la hevau he. Ils'en rend maître. Et vite à l'important, vite, obligé qu'il sera
hélas!àabandonnerlajournéeàl'en len hement dessuivantesauplustardversminuit.Maisquefaire?
C'est làletribut àl'existen eanimale.
AupaysdelaMagie
HenriMi haux
Mes premiersremer iementsvontà Isabelle, HugoetSophiequi me demandent biensûr
beau oup detemps maismedonnent lafor eetl'équilibrené essaires pour mener etravail.
Jeremer ietouslesmembresdujuryetenparti ulierlestroisrapporteursde emémoire.
Daniel Lazard était déjà un des rapporteurs de ma thèse de troisième y le. Une partie
importante des résultats que j'expose lui est due soit dire tement soit par l'intermédiaire
de ses étudiants. J'ai ren ontré Greg Reid pour la première fois en 1995. Depuis dix ans,
nousavonseu denombreuxé hangestrèsfru tueux.Je onnaisbeau oup moinsbienClaude
Gomez. En a eptant de rédiger un rapportsur e mémoire,dont le ontenu est éloigné de
son domaine de re her he, ClaudeGomez m'apporte un avis très importantpour lefutur.
Jeremer ie tous lesmembres del'équipede al ulformelduLIFL,en parti ulierGérard
Ja ob qui m'a en adré dans la préparation de ette habilitation à diriger des re her hes,
François Lemaire et Alexandre Sedoglavi qui ont relu e do ument, Mi hel Petitot qui
dirige l'équipe, Nour-Eddine Oussous, Leopold Weinberg, Hoang Ngo Minh, Raouf Dridi,
Nata haSkrzyp zak etAsli Ürgüplü. Sans oublierni SylvainNeut niMar Moreno Maza.
Jeremer ieennLilianneDenisVidal,GhislaineJolyBlan hard,Mar Lefran ,François
Yves Bouget et tous les membres du groupe de travail onsa ré à la modélisation du yle
ellulaired'ostreo o us tauri.Ils m'apportent lesappli ations qui aiguillentmon travail.
Le 13mars 2006,
Remer iements 2
Introdu tion 7
I Premier onta t 14
1 Introdu tion à l'éliminationdiérentielle et aux logi iels 15
1.1 L'éliminationde Gauss . . . 15
1.2 L'éliminationalgébrique . . . 16
1.2.1 Éliminationen MAPLE . . . 17
1.2.2 Éliminationave BLAD . . . 18
1.3 L'éliminationdiérentielle . . . 21
1.3.1 Éliminationen MAPLE . . . 22
1.3.2 Éliminationdiérentielle ave BLAD . . . 23
1.3.3 Autres lassements . . . 24
2 Arithmétique des polynmes diérentiels 25 2.1 Polynmes non diérentiels. . . 25
2.1.1 Saturations . . . 27
2.2 Polynmes diérentiels . . . 28
2.2.1 La rédu tionde Ritt . . . 30
2.3 Corre tion des exer i es . . . 31
2.4 Finitude . . . 37
3 Solutions d'un système diérentiel 41 3.1 Deux règles d'inféren e etun théorème . . . 42
3.2 Lesrègles d'inféren e . . . 43
3.3 Troisversions du théorème des zéros . . . 44
3.3.1 Solutionsabstraites . . . 44
3.3.2 Solutionsen séries formelles . . . 45
4 Élimination diérentielleet estimation de paramètres 53
4.1 Unesolution purement numérique . . . 55
4.1.1 Identiabilité . . . 56
4.1.2 Matri e de sensibilitéde Fisher . . . 57
4.2 Méthode symboliquenumérique . . . 58
4.2.1 Lesdi ultés . . . 61
4.2.2 L'implantation . . . 62
5 Algèbre diérentielleet simpli ation anonique 65 5.1 Unpolynmeen une indéterminée . . . 66
5.1.1 Dénitionde laforme normale. . . 66
5.1.2 Dé ider de la nullité et de l'inversibilité . . . 67
5.1.3 Algorithmique . . . 67
5.2 Systèmestriangulairesunitaires omportantautantd'équationsqued'in onnues 68 5.2.1 Dénitionde laforme normale. . . 68
5.2.2 Dé ider de la nullité et de l'inversibilité . . . 69
5.3 Systèmes triangulaires . . . 73
5.3.1 Lepoint lef et ladénition des haînes régulières . . . 73
5.3.2 Dé ider de la nullité et de larégularité . . . 75
5.3.3 Dénitionde laforme normale. . . 75
5.4 Systèmes diérentielsordinaires . . . 76
5.4.1 Ladénition des haînes diérentielles régulières . . . 77
5.4.2 Dé ider de la nullité et de larégularité . . . 78
5.4.3 Dénitionde laforme normale. . . 79
5.5 Systèmes auxdérivées partielles . . . 81
5.6 Attributs des haînes diérentielles régulières . . . 84
6 Appli ations algorithmiques des haînes diérentielles régulières 86 6.1 Appli ations de l'algorithme de formenormale . . . 86
6.1.1 Un ritèrede primalité . . . 86
6.1.2 Déte ter des dépendan es linéaires dans un anneauquotient . . . 87
6.1.3 Cal ulerdans les modulesde diérentielles de Kähler . . . 88
6.1.4 Cal ulerdes solutions en série formelle . . . 97
6.1.5 Un résultatd'indé idabilité . . . 100
6.2 Algorithmesde al ul de haînes régulières . . . 102
6.2.1 L'algorithmereg_ hara teristi . . . 102
6.2.2 L'algorithmeregalise . . . 104
7.1 L'équidimensionnalité. . . 110
7.2 Lelemme de Lazard . . . 116
7.3 Lelemme de Rosenfeld . . . 117
7.3.1 Laversion de Seidenberg . . . 120
7.4 Le lifting du lemme de Lazard . . . 121
III Les mé anismes de s indages et de omplétion 122 8 Étude d'un système lentrapide 123 8.1 Lemodèle initial . . . 124
8.2 Rédu tion exa te du modèle . . . 127
8.3 Lemodèle en BLAD aprèsrédu tion exa te . . . 128
8.4 Approximation du modèle . . . 131
8.5 Simulationnumérique. . . 136
8.5.1 Di ultés de l'intégration numérique . . . 137
9 Simpli ation de systèmes diérentiels 139 9.1 RosenfeldGröbner sur deux exemples . . . 141
9.1.1 Un exemplediérentielordinaire . . . 142
9.1.2 Un exempleaux dérivées partielles . . . 144
9.2 Leproblème de l'in lusiondes omposantes . . . 146
9.3 Extensionde lanotion de paire ritique . . . 147
9.4 Pseudo ode de RosenfeldGröbner . . . 147
9.5 Optimisationdu mé anismede omplétion . . . 150
9.6 Sousproblèmes algébriques . . . 151
9.7 Rédu tion de problèmes algébriqueset omplexité . . . 151
IV Les bibliothèques BLAD 153 10 Con eption des bibliothèques BLAD 154 10.1 Premiers hoix . . . 154
10.1.1 Éviterd'é rire un système de al ulformel . . . 154
10.1.2 Le hoixde lali en e . . . 154
10.1.3 Le hoixdu langage. . . 155
10.2 Stru ture générale des bibliothèques . . . 157
10.3 Lagestion de la mémoireet legarbage olle tor . . . 157
10.3.1 Lemé anisme à deux piles . . . 158
10.3.2 Lemé anisme de Faugère . . . 161
10.3.3 Avantage du style pro édural . . . 163
10.5 Lespolynmes. . . 166 10.5.1 Choix de la représentation . . . 166 10.5.2 Réalisation . . . 167 10.5.3 Itérateursde oe ients . . . 169 10.5.4 Additionet multipli ation . . . 171 10.5.5 Lepg d de deux polynmes . . . 172 Con lusion 174 Index 175 Bibliographie 181
Fil dire teur. Dans son livre Physique quantiqueet représentation du monde , Erwin
S hrödinger é rit (les expressions en italique sont soulignées par lui) : tout s ientique
devrait à longtermeêtre apabled'expliquerà n'importe qui e qu'ilafait etlaraisonpour
laquelle il l'afait .
Jesuisuninformati ien,spé ialisédansledomainemathématiquedelasimpli ationdes
systèmes d'équations diérentielles ordinaires ou aux dérivées partielles polynomiales. J'ai
inventépendantmathèse[7,9℄un belalgorithmethéoriquesur e sujet, nomméRosenfeld
Gröbner. Les années qui ont suivi, j'en ai beau oup travaillé la théorie [10, 8, 12, 11℄.
Au-jourd'hui,j'essaie de le rendreutile .
Je m'explique : l'algorithme RosenfeldGröbner a beau oup d'appli ations théoriques
queje netrouvepas très ... satisfaisantes. C'estsubje tif biensûr. Voi iun exempleun peu
ari atural : RosenfeldGröbner permet de dé ider si un système quel onque d'équations
diérentielles polynomialesadmet au moins une solution analytique. C'est une appli ation
très importanted'un pointde vue théoriquemaissans véritableintérêt pratique.J'aiétudié
de nombreuxsystèmes diérentiels. Ilsonttous des solutions,pourdes raisonsévidentes qui
tiennent àleur on eption.
Jesuispluttàlare her he d'appli ations onvain antesen physique, himieoubiologie.
Trois di ultés apparaissent.La première : il faut réer la demande . Les prati iens des
domainess ientiquesvisésne sontpashabitués àutiliserlesméthodesquenousproposons.
RosenfeldGröbner résoutun problème théoriquequi est restéquasimentouvert jusqu'à son
invention. Que font alors les prati iens onfrontés à de tels problèmes? Ils résolvent à la
main leurs as parti uliers [103℄ oulesreformulent.
Deuxième di ulté : la théorie mathématique sur laquelle RosenfeldGröbner s'appuie
n'est onnuequed'unepetite minoritéde s ientiques.Ils'agitde l'algèbrediérentielle.
Elleaétéinventéeau oursdelapremièremoitiéduvingtièmesiè leàlagrandeépoquedela
géométriealgébriqueoùontété misesaupointlathéoriedesanneauxN÷thériens, lathéorie
des idéaux ... Joseph Fels Ritt é rit dans l'introdu tion de son livre [86℄ qu'il a été très
impressionnéparlelivreDieModerneAlgebrade BrunoLouis VanDerWaerdenetqu'il
a souhaité développer une théorie équivalente pour les équations diérentielles. L'algèbre
diérentielle est une très bellethéoriealgébrique des équations diérentiellesmais ilreste à
lapopulariser auprès du grand publi s ientique.
Troisièmedi ulté:l'algorithmiquedeRosenfeldGröbnerestdi ile.D'unepart,même
pour ne iter que lui) qui avaient é happé aux spé ialistes jusqu'aux années 19952000.
D'autre part, il est très di ile d'implanter l'algorithme en dehors d'un système de al ul
formel. L'implantation quej'ai réaliséedans les bibliothèques BLADen langageCest assez
minimale. Elle omporte quarante mille lignes de ode dont vingt inq mille pour le seul
al ul du pg d de deux polynmes en plusieurs indéterminées et à oe ients entiers. Le
publi de physi iens, himistes ou biologistes que j'aimerais séduire programme la plupart
du temps en FORTRAN ou en C. Pour les onvain re d'utiliser RosenfeldGröbner, il est
don inutile d'é rire des arti les de re her he dans des journaux de al ul formel : il faut
fournir un omposantlogi iel (par exemple une bibliothèque) prêt àl'emploi.
Appli ations. Je ne onnais que deux appli ations (au sens expliqué plus haut) d'un
algorithme d'élimination en algèbre diérentielle tel que RosenfeldGröbner. La première
on erne le problème de l'estimation des valeurs des paramètres d'un système dynamique
à partir d'observations (de mesures), lorsque toutes les variables du système dynamique ne
sont pas observées. Cette appli ation a été inventée par GhislaineJolyBlan hard,Lilianne
DenisVidal et CélineNoiret qui onttravailléen ollaborationave Mi hel Petitot. Elleest
exposée danslathèse [75℄de CélineNoiret. L'étudedel'identiabilitélo aleouglobaled'un
systèmepardesméthodesd'éliminationdiérentielleest unproblèmean ien[105,42,78,32,
34, 33, 64℄ et toujours a tuel [3, 93℄. L'originalitéde la thèse de Céline Noiret réside d'une
part dans l'utilisationd'algorithmesd'éliminationdiérentielle rigoureux,d'autrepart dans
l'étude omplèted'exemples, 'estàdirejusqu'àl'estimationnaledes paramètres.C'est e
problèmequiamotivél'é rituredesbibliothèquesBLADdèslesannées2000.J'aimontéave
LilianneDenisVidal leprojet LÉPISME(pour logi iel dédiéà l'estimation de paramètres
et à l'identi ation systématique de modèles ) qui a reçu un nan ement MathSTIC en
2003. La première version d'un logi iel dédié à l'estimation de paramètres a été réalisée en
août 2004 en même temps que la première version des bibliothèques BLAD. Ce logi iel a
été onçu en vue d'une appli ation en biologie. Il a été programmé par François Lemaire,
Thibaut Heninetmoien juilletaoût2004etadonnélieuàl'arti le[6℄. Nousavons répondu
sans su ès ourant 2005 à un appel à projets INSERMINRIACNRS pour nan er la
ontinuationdenotrelogi iel.Ceretourd'informationsnous onduitàreprendrelaréexion
sur le futur de notre projet, en ollaboration ave Alexandre Sedoglavi , Philippe Durif et
d'autres. Parallèlement, Leopold Weinberg a ommen é en 2003 une thèse oen adrée par
NourEddineOussousetmoisurl'aspe tidenti ationdemodèlesdeLÉPISMEàpartir
des idées exposées dans [76℄.
La se onde appli ation queje onnaisse vient d'un problèmed'étude d'unmodèle
d'hor-loge ir adienne ( 'estàdire d'horloge de période approximativement égale à vingt
quatre heures) dans un organisme uni ellulaire [103℄. Dans e ontexte, un algorithme tel
queRosenfeldGröbnerpermetd'automatiserune partied'unpro essusde rédu tionde
mo-dèles, e qui permetde déterminerdes intervalles de valeurspour lesparamètres du modèle
pour lesquelleslestraje toiresdes variablesdu système os illent, 'estàdirese omportent
Mi hel Petitot et moi. Nous sommes entrés ré emment en onta t ave l'un des auteurs de
l'arti le [103℄ sur e sujet. Les dis ussions qui ont suivi nous ont amenés à amor er l'étude
d'un modèle beau oup plus gros (plus de trois ents variables et deux ents réa tions), en
intera tion ave l'un des auteurs de l'arti le[77℄ quile présente.
A tivité de l'équipe. Bien que l'équipe al ul formel ontinue son a tivité de
re- her he dans son ÷ur de métier, on voit qu'un eort très important est ee tué depuis
quelques annéespour trouverdes appli ationsdansless ien es du vivant.L'équipe fait
par-tie depuis 2004 de l'Institut de Re her hes Interdis iplinaires réé à l'initiative de Bernard
Vandenbunder. Le ours de Master 2 Re her he de l'équipe s'est spé ialisé sur la
modéli-sation des phénomènes biologiques. Nous nous intéressons de près au langage SBML (pour
Systems BiologyMarkup Language), une variantede XML qui onstitue un standard de
représentation des modèles biologiques: nous prévoyons de l'adopter dans le adre de notre
projet LÉPISME et le mémoirede Master 2 Re her he de Nata ha Skrzyp zak en 2005 lui
était à moitié onsa ré. Mi hel Petitot, François Lemaire et moi parti ipons depuis 2004 à
un groupe de travail onsa ré à la modélisationdu rythme ir adien d'une algue verte. Ce
groupe de travail est omposé de membres de plusieurs dis iplines diérentes dont le
bio-logiste FrançoisYves Bouget, spé ialiste de l'algue verte et le physi ien Mar Lefran .
Logi iels de al ul formel. Pour populariser l'algèbre diérentielle et en fa iliter
l'em-ploi, j'ai développé deux logi iels importants de al ul formel. En 19951996, j'ai réalisé le
paquetage dialgen MAPLElorsd'unstage postdo toralauSymboli Computation Group
de l'université de Waterloo, Ontario, Canada. L'algorithme RosenfeldGröbner en
onsti-tue le ÷ur. Ce paquetage est depuis distribué ave la bibliothèque standard du logi iel
MAPLE.Plusieurspersonnes l'ontamélioréauldesans, etinterfa éave d'autressolveurs
de MAPLE. Je pense en parti ulier à Évelyne Hubert, Allan D. Wittkopf et à François
Lemaire.
À partir de 2000, j'ai ommen é à réaliser les bibliothèques BLAD en langage C. La
premièreversionaété terminéeen août2004.Ces bibliothèques onstituentune sorte
d'ana-logue de dialg mais il y a deux diéren es importantes : d'abord les bibliothèques BLAD
sont open sour e et protégées par la li en e LGPL alors que dialg est un paquetage
d'un logi iel propriétaire; ensuite, BLAD est un ensemble de bibliothèques destinées à être
appelées par un autre programme alors que dialg est onçu pour être utilisé
intera tive-ment.Lesdeux logi iels orrespondentàdes usagesdiérentsetsontdon omplémentaires.
L'idée de développer BLAD m'est venue au ours de mes parti ipations au groupe de
tra-vail du projet INRIA SPACES, suite à plusieurs dis ussions ave JeanCharles Faugère et
Fabri e Rouillier qui m'ont onvain u de l'importan e de réaliser des haînes logi iellesles
plus omplètes possibles mettant en ÷uvre de l'élimination diérentielle. C'est en réalisant
de telles haînes qu'on peut déterminer si une théorie s'applique ou pas et, si 'est le as,
Était e une bonne idée de onsa rer quatre ans au développement des bibliothèques
BLAD? Je pense que oui mais un ritère de réussite onvain ant serait l'intégration de
BLADdans unegrandebibliothèque de al ulnumériquetelle quelaGnu S ienti Library
oudansun logi ieltelques ilab.Cequimanque onsidérablementauxversionsa tuellesdes
bibliothèques BLAD et qui freine peutêtre ette intégration, 'est l'absen e d'intégrateurs
numériques appli ables aux haînes diérentielles régulières produites par Rosenfeld
Gröbner. Ce sujetm'intéressede très près en e moment.Unedi ulté vient du faitqueles
haînes diérentiellesrégulières dénissent souvent des systèmes impli iteset raides.
Est e une bonne idée d'essayer d'asso ier des méthodes symboliques exa tes telles que
elles fournies par BLAD et des méthodes numériques inexa tes? Là en ore, je pense que
oui. La question a été posée lors de mes visites au séminaire de SPACES. Je pense que la
donneestdiérentepour lessystèmesdiérentielsetpour lessystèmespolynomiaux
(spé ia-litéde SPACES). D'unpointde vuethéoriqueetalgorithmique,lesdeux domainessont très
pro hes maispas dupointdevuedes appli ations.Lesméthodes(bases deGröbner, haînes
régulières)disponiblespourlessystèmespolynomiauxpeuventseprésenter ommedes
alter-nativesauxméthodesnumériques(méthodedeNewton).C'esttoutàfaitsensé,parexemple
dans le domaine des systèmes polynomiaux qui n'ont qu'un nombre ni de solutions
om-plexes, par e qu'on dispose d'algorithmes exa ts et e a es d'isolationde ra ines. Sous un
anglebeau oupplus théorique, e pointde vueest onfortépar lesrésultatsde l'arti le[18℄.
Pour les équations diérentielles par ontre, je ne onnais pas d'algorithmes pouvant jouer
un rle similaire à l'ex eption peutêtre de méthodes par intervalles [47℄ mentionnées dans
[45, page49℄. La oopérationsymboliquenumérique me sembledon indispensable...pour
lesméthodes symboliques.
Le mémoire. J'ai rédigé les ent quatre vingts pages et plus qui suivent en her hant à
expliquer la théorie etl'algorithmique sur lesquelles j'ai travaillé ommeje pourrais essayer
de la présenter à un s ientique non spé ialiste du sujet. J'ai essayé d'expliquer plutt que
de prouver etje me suis eor é de présenter en mêmetemps lesbibliothèques BLAD.
Le mémoire omporte quatre parties. Les trois premières ommen ent par une sorte
de tutoriel. Je mesuis servi pour les réaliser d'un support que j'ai rédigé pour l'é ole d'été
OpenSoftwareforAlgebrai andGeometri Computationstenueenseptembre2005àSophia
Antipolis où j'ai présenté BLAD. Chaque tutoriel est onçu pour présenter à un néophyte
(parfois é lairé)lesnotionsqui sont étudiées plusthéoriquementdansles hapitressuivants.
La première partie orrespond à une prise de onta t ave l'algèbre diérentielle. Le
tutorielintrodu tifestuneintrodu tionàl'éliminationdiérentielleparanalogieave lepivot
deGauss.Le hapitresuivantprésentedesnotionsdebaseunpeu al ulatoires.Ledernier
hapitre tente une présentation originale des notions de solutionqui sont ompatibles ave
les algorithmes d'élimination diérentielle qui nous on ernent. Ce dernier hapitre résume
de nombreuses années de réexion menées dans l'équipe. Il expose aussi l'un des résultats
lesplus importantsde lathèse [62℄ de FrançoisLemaire.
L'algorithmeutiliséestunevariantespé ialiséedeRosenfeldGröbnernomméePARDI.Trois
hapitres suivent. Le premier présente les haînes régulières algébriques puis diérentielles
au travers de l'algorithme d'Eu lide. Il reprend la progression que j'avais suivie lorsque
j'assurais un demi ours dans la lière al ul formel du DEA Algorithmique à Paris
VI en 20002002. Le hapitre suivant présente des appli ations algorithmiques immédiates
des haînes régulières. L'existen e d'un algorithme de forme normaleme permet de donner
une présentation nouvelle de quelques onstru tions onnues (développement en série de
solutionsde systèmes diérentiels). Letroisième hapitreest dense: j'y ai refaitlespreuves
des théorèmes lefsqui justient la onstru tiondes haînes régulières.La preuve uniéede
l'équidimensionnalité des idéaux de la forme
(A)
:I
∞
A
et de eux de la forme(A)
:S
∞
A
qui s'y trouve est originale.Latroisièmepartieest onsa réeauproblèmedu al uldelareprésentationd'unsystème
diérentiel quel onque par une famillenie de haînes diérentielles régulières. Le tutoriel
introdu tif onsiste en une analyse de l'arti le [103℄. On y explique les motivations et la
démar he des auteursetonmontre à quelle étapeun algorithme telque RosenfeldGröbner
auraitpu êtreutilisé.Le hapitresuivantprésenteuneversionde RosenfeldGröbner
moder-nisée, pro he de l'implantation en BLAD et des dernières améliorations apportées à dialg
par François Lemaire. On y donne aussi des résultats ré ents, permettant d'optimiser les
mé anismes de omplétion pour les systèmes auxdérivées partielles.
Laquatrièmepartiene omportequ'un hapitrequidé ritlesprin ipaux hoixde
on ep-tion que j'aifaits pour lesbibliothèques BLAD.
On ne trouve pas dans e mémoire de omparaisons de performan es entre BLAD et
d'autreslogi iels.Ceseraitprématuré:lesee tuerme pousseraitnaturellementàoptimiser
BLADoronn'optimisepasunlogi ielen oursdedéveloppement.C'estunprin ipedegénie
logi iel.Il fautd'abord réaliserdes programmes d'appli ationquiutilisentBLADetensuite
seulement déterminer e qu'il onvient d'optimiser. Voi i deux ane dotes pour étayer mes
armations.
Dans le adre du projet LÉPISME, on s'est aperçu sur des exemplesque les limitations
de laméthodeétaientduesàdes problèmesnumériques(évaluationnumériqueimpré ise des
dérivées d'ordredeux etplus) etpas àl'éliminationdiérentielle.OptimiserBLADest don
sans intérêt dans e ontexte.
Lors delamiseaupointde l'algorithmePARDIen2001,FrançoisLemaireetmoi
ompa-rionslesperforman esen tempsde al uld'uneimplantationMAPLEave uneimplantation
en une vieilleversion de BLAD en C++ sur l'exempledes équationsd'Euler pour un uide
in ompressible en deux dimensions. Chaque fois qu'une implantation avait de meilleures
performan es que l'autre, nous en her hions la raison etnous améliorions l'autre en
onsé-quen e. Il s'agissait à haque fois d'un hoix heuristique plus ou moins judi ieux. Au bout
du ompte, PARDI en BLAD a largement surpassé PARDI en MAPLE mais le ode de
l'implantation de PARDIen BLAD était devenue di ile à lireet don àfaire évoluer. J'ai
j'aié rits, lado umentation te hnique des bibliothèques BLADmaisaussi trois supports de
ours que j'airédigés. Lesenseignements que j'assure sont liésà mona tivité de re her he.
L'unité d'enseignement al ul formel ets ien es de la matières est un ours de
pro-grammation destiné à de futurs physi iens et himistes. Il est onçu ave des membres de
l'UFRde physiqueets'adresseàdesétudiantsdedeuxièmeannéedeli en e.Lesétudiantsy
revoient pour ommen erdes notionsde programmationqu'ilsont apprisesen première
an-née.Onlesréviseetonmontre ommentellessetraduisentdanslelangagedeprogrammation
de MAPLE. Le ours évolue ensuitevers l'étude des équationsdiérentielles: méthodes
nu-mériques(EuleretRungeKutta)puisanalyse qualitativedessystèmes diérentielslinéaires
en deux variablesetà oe ients onstants(rle des valeurs propresde la matri edes
oef- ients du système). L'emploi d'un logi iel de al ul formel onfère une originalité ertaine
à et enseignement : il permet aux étudiants de mener des démonstrations assistées par
ordinateurdonttousles al ulssymboliquessontmenésparlogi iel(preuvequelaméthode
d'Euler est d'ordre
1
, al ul des équations dénissant les oe ientsde RungeKutta). L'unité d'enseignement systèmes polynomiaux,quesignie: résoudre? est une unitéoptionnelledelali en einformatique.Elleprésenteune haînelogi ielledédiéeàlarésolution
réelleexa tedesystèmespolynomiauxayantunnombrenidesolutions omplexes(un al ul
de base de Gröbnerpour un ordre d'éliminationsuivid'un algorithmed'isolationde ra ines
réelles). Ce ours a été onçu ave Fabri e Rouillier qui y présente une appli ation à la
ommande de robots parallèles. De nombreux spé ialistes de al ul formel ont ontribué à
son amélioration.
L'unitéd'enseignementalgorithmiqueestuneunitédeladeuxièmeannéedelali en e
mention informatique. J'y présente la programmation linéaire, l'algorithme du simplexe et
des algorithmes de base (preuves et implantation) de la théorie des graphes. Le logi iel
AMPL est utilisé pour modéliser par programmes linéaires(en variables réelles et entières)
des problèmes d'optimisation énon és en Français. J'essaie à la fois de fournir des bases
solides aux étudiants qui poursuivront en Master et d'apprendre un outil immédiatement
utilisableen entrepriseaux étudiantsqui quitteront le ursus universitaire ave une li en e.
En enseignementaussi, il meparaît importantde lierles théoriesà leurs appli ations.
Chronologie.
1990. Jem'ins ris en thèse sous la dire tionde Gérard Ja ob.
1994. Jesoutiens mathèse [7℄.
1995. Premièrepubli ation[9℄surRosenfeldGröbnerave DanielLazard,FrançoisOllivier
et Mi hel Petitot. Je pars pour un stage postdo toral d'un an au Symboli
Compu-tation Group de l'université de Waterloo (Ontario). Je réalise la première version du
paquetage dialg pour MAPLE 5.
1996. Je suis élu Maître de Conféren es. Mon travail se on entre sur la théorie et
l'algo-rithmiquede RosenfeldGröbner.
1997. Deuxième arti le [10℄ en ommun ave Daniel Lazard, François Ollivier et Mi hel
1999. Arti le [8℄. Naissan e de Hugo. A hat d'une maison ave beau oup de travaux.
2000. Arti le [12℄ ommun ave FrançoisLemaire. J'obtiensune délégation CNRS de deux
ans. Mon projet onsistait à améliorer le paquetage dialg. Je prote de ma
déléga-tion pour parti iper au séminaire du projet INRIA SPACES. J'assure pendant deux
ans un demi ours dans la lière al ul formel du DEA Algorithmique à Paris.
Début d'implantationdes bibliothèques BLAD.Mar Moreno Maza est éluMaître de
Conféren es.
2001. Arti le [11℄ en ommun ave Mar Moreno Maza et François Lemaire. Arti le [15℄
en ommunave SylvainNeut. Premiers onta ts ave BernardVandenbunder pourla
mise en pla e de l'Institutde Re her he Interdis iplinaire. Naissan ede Sophie.
2002. François Lemaire soutient sa thèse et part en stage postdo toral d'un an et demi
au entre ORCCAde l'université Western Ontariode London(Ontario).Ilapporteau
paquetage dialg les améliorations dé rites dans [12, 11℄ (j'aurais eu les plus grandes
di ultés à ee tuer es modi ations depuis Lille). Mar Moreno Maza quitte son
postede Maîtrede Conféren espour unposte permanentau entreORCCA.Je
m'ins- ris en HDR à l'o asion de la soutenan e de François Lemaire. Ma délégationCNRS
se termine. Je prends la responsabilité de la li en e de l'IUP GMI et je m'investis
dans la préparationde laréforme LMD. Jesuis o-organisateur lo alde la onféren e
internationale de al ul formelISSAC 2002.
2003. Alexandre Sedoglavi est éluMaître de Conféren es. Un nan ement MathSTIC est
a ordé pour le projet LÉPISME. Gérard Ja ob prend sa retraite. Il est rempla é à
la dire tion de l'équipe par Mi hel Petitot. Je reprends le ours d'algorithmique qu'il
assuraiten li en einformatique.LeopoldWeinberg est re ruté sur un poste de PRAG
et s'ins rit en thèse. Je oen adre sa thèse ave NourEddine Oussous. Je rée ave
Fabri eRouillieretÉri Wegrzynowskiun oursen deuxièmeannéede DEUG intitulé
systèmes polynomiaux, que signie : résoudre? onsa ré à la résolution réelle de
systèmes polynomiaux n'ayant qu'un nombre ni de solutions omplexes.
2004. A hèvement delapremière versiondesbibliothèques BLADetdu logi ielLÉPISME.
Arti le [6℄en ommun ave LilianneDenisVidal, ThibautHenin etFrançoisLemaire.
Début du groupede travailsur lamodélisationdu rythme ir adien hez l'algueverte.
2005. François Lemaire est élu Maître de Conféren es. Stage de Master 2 Re her he de
Nata haSkrzyp zak oen adré par Mi helPetitot et moi.
2006. Stage de Master 2 Re her he d'Asli Ürgüplü oen adré par Alexandre Sedoglavi ,
FrançoisLemaireetmoi.Arti le[13℄en ommunave FrançoisLemaireetMar Moreno
Introdu tion à l'élimination diérentielle
et aux logi iels
Ce hapitre onstitue une introdu tion aussi élémentaire que possible à l'élimination
diérentielleetàl'utilisationdesdeuxoutilslogi ielsquesontlepaquetagedialgdeMAPLE
etlesbibliothèquesBLAD.On présentel'éliminationdiérentiellepar analogieave lepivot
de Gauss. Essentiellement, on montre dans e hapitre le rle que jouent les ordres sur les
indéterminées dans lesalgorithmesd'éliminationetlafaçondontonspé ie es ordresdans
quelques paquetages MAPLE et dans BLAD. On en protepour introduire par la pratique
plusieursnotionsquisont approfondiesdans les hapitressuivants.LesbibliothèquesBLAD
sont a essibles àl'URL http
:
//www.li.fr/˜
boulier/BLAD.1.1 L'élimination de Gauss
L'élimination diérentielle est un pro édé qui transforme un système d'équations
dié-rentielles en un autre système équivalent (en un sens à pré iser) mais plus fa ileà résoudre.
C'est là, mais dans un adre plus ompliqué, le prin ipe même de l'élimination de Gauss
qu'on rappellesur un exemple,en utilisant lepaquetage LinearAlgebra de MAPLE 9.
> with (LinearAlgebra): > S1 := [x - 3*y - z = 4, 2*x - y + 3*z = 5℄; S1 := [x - 3 y - z = 4, 2 x - y + 3 z = 5℄ > A, b := GenerateMatrix (S1, [x, y, z℄): > Ab1 := < A | b >; [1 -3 -1 4℄ Ab1 := [ ℄ [2 -1 3 5℄
> Ab2 := GaussianElimination (Ab1);
[0 5 5 -3℄
> S2 := GenerateEquations (Ab2, [x, y, z℄);
S2 := [x - 3 y - z = 4, 5 y + 5 z = -3℄
L'appli ationdupivotdeGausssurlesystème
S
1
produitunsystèmeéquivalent( 'està dire ayantmêmes solutions)S
2
dont ladernière équation ne omporte pas l'indéterminéex
. Le pivot de Gauss a éliminéx
. Pourquoi l'indéterminéeéliminéeestellex
? Par e que, danslamatri ehA | bi
,les oe ientsdex
apparaissentsurlapremière olonneetdon par e quelalisted'indéterminées fournie en deuxièmeparamètreà lafon tionGenerateEquationsommen epar
x
.Danslathéoriedelasimpli ationalgébrique,ilest lassiquede direqu'une telle listefournit un ordre sur l'ensemble des variables. Les plus grandes variables visàvisde et ordre sont elles quigurent le plus àgau he dans laliste:
[x, y, z]
≡ x > y > z.
Résumonsnous:l'éliminationdeGaussestunpro édéquiprenddeuxparamètresenentrée:
un système linéaire et un ordre sur les indéterminées. Elle transforme le système en un
système équivalent dans lequel ertaines indéterminées sont éliminées. Plus l'indéterminée
est grande visàvisde l'ordre,plus elle est sus eptible d'être éliminée.
1.2 L'élimination algébrique
Le prin ipe de l'élimination de Gauss se généralise aux systèmes d'équations
polyno-miales. On obtient e qu'on appelle l'élimination algébrique . Il y a au moins deux
gé-néralisations possibles qui onduisent soient à la théoriedes bases de Gröbner soità la
théorie des haînes régulières . On se on entre i i uniquement sur la se onde. Un
algo-rithmededé ompositionen haînesrégulièresestun pro édéquiprendenentrée unsystème
d'équationspolynomialesetunordresur lesindéterminées.Il transformelesystèmed'entrée
en une famille de haînes régulières . Une haîne régulière est un système d'équations
polynomiales qui satisfait entre autres, la propriété suivante : haque équation introduit au
moins une indéterminée en suivant l'ordre fournien paramètre (on dit aussi que le système
est triangulaire). Toutsystème triangulairen'est pasune haînerégulièremaislesautres
propriétés importantes sont trop te hniques pour être dé rites dans ette se tion. Prenons
un exemple. Ave lesparamètres suivants
système :
z
2
− 1 = 0, (z + 1)(x − y − 1) = 0,
(y + 1)(x
− y − z) = 0, x
2
− y
2
− 2 z y − 1 = 0,
de trois haînes régulières (lerésultatn'est pas déni de façonunique) :
première haîne :
z
− 1 = 0, x − y − 1 = 0 ;
deuxième haîne :z + 1 = 0,
x
− y + 1 = 0 ;
troisième haîne:z + 1 = 0,
y + 1 = 0,
x
2
− 4 = 0.
Lesystème initialest équivalent àlafamillede haînesproduite :toute solutiondu système
initialestsolutiond'aumoinsune haînerégulièreetré iproquement.Dans haque haîne,la
première équationintroduit l'indéterminée
z
(x
ety
sont éliminés).Dans lesdeux premières haînes,ladeuxièmeéquationintroduitx
ety
.Danslatroisième haîne,ladeuxièmeéquation introduity
(x
estéliminé)alorsqueladernièreéquationintroduitx
.Lefaitquez
n'apparaisse que dans lapremière équation est un hasarddû àl'exemple.Pourquoilasortiede l'algorithmeestelleunefamillede systèmesetpasun seul système
omme dans le as de l'éliminationde Gauss? Dit autrement, pourquoi y atil des
s in-dagesoudesdis ussionsde as?C'estpar eque,danslathéoriedes haînesrégulières,
une équation telle que
(z + 1)(x
− y − 1) = 0
est vue omme l'équation
x =
(z + 1)(y + 1)
z + 1
qui sesimplie en
x = y + 1
sous réserve que
z + 1
6= 0
.Le asz + 1 = 0
ne doitpas être oubliéetdoitêtre traité séparé-ment:uns indage survient.L'indéterminéeen partiegau hede l'équationest laplusgrandeindéterminée qui gure dans l'équation visàvis de l'ordre. On l'appelle l'indéterminée
prin ipale de l'équation.
1.2.1 Élimination en MAPLE
Lepaquetage Triadede MAPLEaété onçu etréalisépar FrançoisLemaire,YuzhenXie
et Mar Moreno Maza. Il est in orporé dans MAPLE 10 sous le nom RegularChains [61℄.
Il fournit un algorithme de dé omposition en haînes régulières, du nom de Triangularize.
Levoi i,appliqué sur l'exemple.La sortie est un peu diérente de elle présentée idessus.
L'ordre sur lesindéterminées est déni lorsde la réationdu polynomial_ring.
> with(Triade);
[ChainTools, DisplayPolynomialRing, Equations, ExtendedRegularG d, Inequations,
Initial, Inverse, IsRegular, MainDegree, MainVariable, MatrixCombine,
> R := PolynomialRing([x,y,z℄);
R := polynomial_ring
> sys := [z^2 - 1, (z+1)*(x-y-1), (y+1)*(x-y-z), x^2 - y^2 - 2*z*y -1℄:
> result := Triangularize (sys, R);
result := [regular_ hain, regular_ hain, regular_ hain℄
> Equations(result[1℄, R); [-y + x + 1, z + 1℄ > Equations(result[2℄, R); [x - y - 1, z - 1℄ > Equations(result[3℄, R); [x - 2, y + 1, z + 1℄
1.2.2 Élimination ave BLAD
On peut également al ulerdesdé ompositionsen haînesrégulièresgrâ e àl'algorithme
RosenfeldGröbner bien que et algorithmeait été onçupourtraiter des systèmes
diéren-tiels. Voi iun programme en langageCee tuant ladé ompositiongrâ e auxbibliothèques
BLAD.
/* File algebrai . */
#in lude "bad.h"
int main ()
{ bav_Iordering r;
stru t bad_interse tof_reg hain ideal;
stru t bap_tableof_polynom_mpz eqns, ineqns;
stru t ba0_mark M;
bad_restart (0, 0);
ba0_re ord (&M);
ba0_ss anf2 ("ordering (derivations = [℄, blo ks = [x, y, z℄)",
"%ordering", &r);
bav_R_push_ordering (r);
bad_init_interse tof_reg hain (&ideal);
ba0_ss anf2 ("interse tof_reg hain ([℄, \
[autoredu ed, primitive, normalized℄)",
ba0_init_table ((ba0_table)&ineqns);
ba0_ss anf2 ("[z^2 - 1, (z + 1)*(x - y - 1), (y + 1)*(x - y - z), \
x^2 - y^2 - 2*z*y - 1℄", "%t[%Az℄", &eqns);
bad_Rosenfeld_Groebner (&ideal, &eqns, &ineqns, (bav_tableof_variable)0);
ba0_printf ("%interse tof_reg hain\n", &ideal);
bav_R_pull_ordering ();
ba0_restore (&M);
bad_terminate (ba0_init_level);
return 0;
}
Ce programme C peut être ompilé pour produire un exé utable. On donne idessous
une ommande de ompilationutilisantg pour lesma hines fon tionnant sous UNIX. On
asupposé que laGnuMultiple Pre ision Library (GMP)était installéedans /usr/lo al/gmp
(sousrépertoiresin ludeetlib).On asupposé quelesbibliothèquesBLADétaient installées
dans /usr/lo al/blad(sousrépertoires in lude etlib).
$ g -I/usr/lo al/gmp/in lude -I/usr/lo al/blad/in lude algebrai .
$ g -L/usr/lo al/gmp/lib -L/usr/lo al/blad/lib \
-Wl,-rpath /usr/lo al/gmp/lib -Wl,-rpath /usr/lo al/blad/lib \
algebrai .o -lbad -lbap -lbav -lba0 -lgmp
Il est bien sûr re ommandéd'utiliserun makele . Voi ilemien.
GMPROOT = /usr/lo al/gmp
BLADROOT = /usr/lo al/blad
CFLAGS = -g -Wall
LDFLAGS = -g -L${GMPROOT}/lib -L${BLADROOT}/lib \
-Wl,-rpath ${GMPROOT}/lib -Wl,-rpath ${BLADROOT}/lib
CPPFLAGS = -I${GMPROOT}/in lude -I${BLADROOT}/in lude
CC = g
LIBS = -lbad -lbap -lbav -lba0 -lgmp
%: %.
$(CC) $(CPPFLAGS) $(CFLAGS) $(LDFLAGS) $< $(LIBS) -o $
Voi ilerésultatobtenuàl'exé ution.Lesystèmeinitialestreprésentésouslaformed'une
interse tion de trois haînes régulières. Le terme reg hain est la ontra tion de regular
hain. Pourquoi interse tion ? L'ensemble des solutions du système initial est l'union
des ensembles de solutions des trois haînes. Par onséquent, l'idéal déni par le système
initialest l'interse tion des idéaux dénis par les trois haînes. Les haînes régulières ainsi
que leur interse tion sont aublées de quali atifs qui dé rivent des propriétés parti ulières
des haînes. Ces propriétés sont trop te hniques pour être dé rites dans ette se tion. Voir
lase tion 5.6, page 84.
primitive, normalized℄), reg hain ([z + 1, x - y + 1℄, [autoredu ed,
primitive, normalized ℄), reg hain ([z + 1, y + 1, x^2 - 4℄, [autoredu ed,
primitive, normalized℄)℄, [autoredu ed, primitive, normalized℄)
CommentonsunpeuleprogrammeC.Lesfon tions,lestypesetlesstru turesde données
des bibliothèques BLAD sont préxées par ba0, bav, bap ou bad suivant la bibliothèque à
laquelleellesappartiennent.Labibliothèqueba0gèrelamémoire,lesex eptions,lesentrées
sorties et quelques stru tures de données génériques. La bibliothèque bav gère les variables
(les indéterminées) etenparti ulier lesordressur lesvariables.Labibliothèque bap ontient
tous les algorithmes qui sont ensés s'appliquer à des polynmes (mais pas des systèmes
de polynmes). La plus importante fon tionnalité qu'elle ore est le al ul du plus grand
diviseur ommun de deux polynmesen plusieursindéterminées et à oe ientsentiers. La
bibliothèque bad ontient les algorithmes qui s'appliquent à des systèmes de polynmes et
en parti ulier, une implantationde RosenfeldGröbner.
Tout appel aux bibliothèques BLAD doit être in lus dans e qu'on appelle une suite
d'appelsauxbibliothèques BLAD,qui ommen epar unappelàbad_restart etsetermine
par un appel à bad_terminate. Les paramètres fournis à bad_restart sont des limites en
temps et en espa e mémoire données pour les al uls (un zéro indique qu'on ne donne pas
de limite). La variable
M
a un rle lié à la gestion de la mémoire que je ne ommente pas davantage i i.Lafon tion ba0_ss anf2est une variantede lafon tionss anfoerte par labibliothèque
standard du langage C. Voi i un petit rappel pour eux qui auraient oublié leurs bases de
C. En C, l'instru tion suivante lit un entier sur l'entrée standard et ae te le résultat à la
variable
x
. La haîne de ara tères "%d" qui onstitue le premier paramètre de l'appel à s anf est un format qui dé ritla nature de e quidoit être lu.Le dernier paramètreestl'adresse de lavariabledestinée àre evoir lerésultat.
{ int x;
s anf ("%d", &x);
}
La fon tion s anf admet plusieurs variantes. L'une d'elles est la fon tion ss anf qui lit des
donnéesdansune haînede ara tèrespluttquesurl'entréestandard.Cepremierparamètre
est en première pla e. Dansl'exemple suivant,l'entier
421
est luet ae té àx
.{ int x;
ss anf ("421", "%d", &x);
}
La fon tion ba0_ss anf2 est onstruite sur le même prin ipe que ss anf mais elle ore une
variétéde formatsplusimportante.L'extraitde ode suivantlitl'ordre
x > y > z
etl'ae te à lavariabler
{ bav_Iordering r;
}
Dans le programme, et ordre est ensuite empilé (appel à bav_R_push_ordering) sur
unepileprédénied'ordresetdevientl'ordre ourant, 'estàdire eluiquiestimpli itement
utilisé dans lasuite des opérations.
L'extrait de ode suivant lit un tableau de polynmes en plusieurs indéterminées et à
oe ients entiers. Le format "%Az" désigne les polynmes en plusieurs indéterminées et à
oe ientsentiers. Leformat "%t[%Az℄"désignelestableauxde tels polynmes.Letableau
eqnsdoitêtre initialiséavantde pouvoirêtreutilisé.Les hémadeprogrammationest alqué
sur elui de laGMP.
{ stru t bap_tableof_polynom_mpz eqns;
ba0_init_table ((ba0_table)&eqns);
ba0_ss anf2 ("[z^2 - 1, (z + 1)*(x - y - 1), (y + 1)*(x - y - z), \
x^2 - y^2 - 2*z*y - 1℄", "%t[%Az℄", &eqns);
}
L'extrait suivantee tue l'éliminationen appelantRosenfeldGröbner. Tout d'abord, la
va-riable ideal, destinée àre evoir le résultat de l'élimination est initialisée.Puis on lui ae te
une interse tion vide de haînes régulières. Le but est i i uniquement de positionner à
vrai les indi ateurs signiant qu'on désire des haînes autoréduites , primitives et
fortement normalisées . Enn, RosenfeldGröbner est appelé. Je ne ommente pas les
deux derniers paramètres de l'appelde fon tion, qui ne sont pas utilisés.
{ stru t bad_interse tof_reg hain ideal;
bad_init_interse tof_reg hain (&ideal);
ba0_ss anf2 ("interse tof_reg hain ([℄, \
[autoredu ed, primitive, normalized℄)",
"%interse tof_reg hain", &ideal);
bad_Rosenfeld_Groebner (&ideal, &eqns, &ineqns, (bav_tableof_variable)0);
}
1.3 L'élimination diérentielle
Le prin ipe de l'élimination algébrique et le on ept de haînes régulières se généralise
au as diérentiel. Les indéterminées ne représentent plus des nombres mais des fon tions
analytiques. Lesystème suivantest un exemplede systèmede deux équationsdiérentielles
polynomiales.Lepointaudessus d'uneindéterminéedésignesadérivée première
(nota-tiondesuxions).Unesolutiondusystèmesuivantest un ouple
(u(t), v(t))
defon tions du temps.polynomiales diérentielles et un ordre sur l'ensemble inni de toutes les dérivées de
u
et dev
. De tels ordres, lorsqu'ils satisfont ertaines onditions te hniques, sont appelés des lassements ( rankings en Anglais). Elle transforme le système fourni en entrée enune familleéquivalentede haînes diérentielles régulières . Fixons par exemple l'ordre
· · · > ¨u > ˙u > u > · · · > ¨v > ˙v > v.
L'algorithmeRosenfeldGröbner,appliquéausystèmeetàl'ordre idessusproduitlafamille
suivantede deux haînes diérentielles régulières :
première haîne :
v
¨
2
− 4 ˙v = 0, u − ˙v − 1 = 0 ;
se onde haîne:
˙v = 0,
u
− 1 = 0 ;
Danslapremière équationde haque haînel'indéterminéediérentielle
u
ettoutesses déri-vées sont éliminées.La familleest équivalente au système initial: toutesolution analytiquedu système initialest une solution analytique de l'une des deux haînes et ré iproquement.
Lessolutions analytiques de lapremière haîne sont
v(t) = c
1
+
(t + c
2
)
3
3
,
u(t) = 1 + (t + c
2
)
2
,
c
1
, c
2
∈ C.
Les solutionsanalytiques de lase onde haîne sont
v(t) = c,
u(t) = 1,
c
∈ C.
1.3.1 Élimination en MAPLE
J'airéalisélepaquetage dialg19951996.Lepaquetage aensuiteété fortementamélioré
parplusieurspersonnesetenparti ulierparÉvelyneHubertet(plusré emment)parFrançois
Lemaire. L'implantation de RosenfeldGröbner est plus an ienne que elle de BLAD. Elle
produitaussides haînesdiérentiellesrégulièresbienquel'appellation haînediérentielle
régulière n'ai pas en ore été inventée lors de la réalisation du paquetage (elle date de la
thèse de François Lemaire en 2002).
L'ordreestdéniaumomentdela réationdel'ODE_ring.Lesdérivéesdesindéterminées
diérentiellessontnotées aumoyen de listes de dérivations: par exemple,u[t℄ désigne
˙u
et u[t,t℄ désigneu
¨
.Pour ontournerune limitationde MAPLE, onnote u[℄ pouru
.> with (diffalg);
[Rosenfeld_Groebner, belongs_to, delta_leader, delta_polynomial, denote,
derivatives, differential_ring, differential_sprem, differentiate,
equations, essential_ omponents, field_extension, greater, inequations,
rewrite_rules, separant℄
> R := differential_ring (derivations = [t℄, ranking = [u, v℄);
R := ODE_ring
> ideal := Rosenfeld_Groebner ([u[t℄^2 - 4*v, v[t℄ - u + 1℄, R);
ideal := [ hara terizable, hara terizable℄
> equations (ideal [1℄);
2
[-v[t℄ + u[℄ - 1, v[t, t℄ - 4 v[℄℄
> equations (ideal [2℄);
[-1 + u[℄, v[℄℄
1.3.2 Élimination diérentielle ave BLAD
LeprogrammeC idessous appliqueRosenfeldGröbner surl'exemple.Il est trèspro he
du programme donné dans la se tion pré édente. La prin ipale diéren e est le quali atif
dierentialutilisé pour initialiserla variable ideal.
Labibliothèque BLADoreen faitun on eptunié de haînerégulièrequipeut êtreou
non diérentielle. Cetteuni ation de on ept, suggerée dans lathèse de FrançoisLemaire,
n'est pas en ore réalisée dans lespaquetages MAPLE.
/* File differential. */
#in lude "bad.h"
int main ()
{ bav_Iordering r;
stru t bad_interse tof_reg hain ideal;
stru t bap_tableof_polynom_mpz eqns, ineqns;
stru t ba0_mark M;
bad_restart (0, 0);
ba0_re ord (&M);
ba0_ss anf2 ("ordering (derivations = [t℄, blo ks = [u, v℄)",
"%ordering", &r);
bav_R_push_ordering (r);
bad_init_interse tof_reg hain (&ideal);
ba0_ss anf2 ("interse tof_reg hain ([℄, \
ba0_init_table ((ba0_table)&eqns);
ba0_init_table ((ba0_table)&ineqns);
ba0_ss anf2 ("[u[t℄^2 - 4*v[t℄, v[t℄ - u + 1℄", "%t[%Az℄", &eqns);
bad_Rosenfeld_Groebner (&ideal, &eqns, &ineqns, (bav_tableof_variable)0);
ba0_printf ("%interse tof_reg hain\n", &ideal);
bav_R_pull_ordering ();
ba0_restore (&M);
bad_terminate (ba0_init_level);
return 0;
}
Le programme idessus peut être ompilé (voir une ommande dans la se tion
pré é-dente). On obtientà l'exé ution :
$ ./differential
interse tof_reg hain ([reg hain ([v[t,t℄^2 - 4*v[t℄, u - v[t℄ - 1℄, [
differential, autoredu ed, primitive, squarefree, oherent, normalized℄),
reg hain ([v[t℄, u - 1℄, [differential, autoredu ed, primitive, squarefree,
oherent , normalized℄)℄, [differential, autoredu ed, primitive, squarefree,
oherent, normalized℄)
1.3.3 Autres lassements
Le lassement donné idessus est un lassement d'élimination . Un autre type très
important de lassement est onstitué des lassements ompatibles ave l'ordre total
( orderly en Anglais). Visàvis de es lassements, plus une indéterminée est dérivée
(plus elleest d'ordreélevé) plus elleest grande.Voi iun exemple de tel lassement
· · · > ¨u > ¨v > ˙u > ˙v > u > v.
En BLAD,ilest noté (remarquer les deux niveaux de ro hets) :
ordering (derivations = [t℄, blo ks = [[u, v℄℄)
Ave trois indéterminées diérentielles ou plus, il est possible de dénir des lassements
en ore plus généraux, très utilesaussi. Parexemple,
· · · > ¨
w > ˙
w > w >
· · · > ¨u > ¨v > ˙u > ˙v > u > v.
Visàvisde e lassement,toutedérivée de
w
est plusgrandequetoutedérivée deu
oudev
alorsquelesdérivéesdeu
etdev
sontordonnéesentreellessuivantun lassement ompatible ave l'ordre total. On appelle ette sorte de lassement un lassement d'élimination parblo s. On lenote souvent de façonabrégée :
w
≫ (u, v).
On le note en BLAD :
Arithmétique des polynmes diérentiels
Ce hapitre présente des notions sans di ulté que je supposerai onnues dans les
ha-pitressuivants.Jel'aiémaillédepetitsexer i es( orrigés)etenparti ulierdepetitsexer i es
de programmationutilisantles bibliothèquesBLAD.
2.1 Polynmes non diérentiels
Soit
K
un orps ommutatif et de ara téristique nulle. SoitX
un alphabet, éventuel-lement inni, d'indéterminées surK
. On noteK[X]
l'anneau des polynmes onstruits sur l'alphabetX
et à oe ients dansK
. On supposeX
totalement ordonné et on onsidère un polynmef
∈ K[X] \ K
. On appelle indéterminée prin ipale def
la plus grande des indéterminéesx
∈ X
qui gure dansf
'estàdire telle quedeg(f, x)
6= 0
. On la noteld f
. Notonsd = deg(f, x)
. Le monmex
d
est appeléle rang de
f
. Le oe ient dex
d
dans
f
est l' initial def
.Le polynme∂f /∂x
est le séparant def
.Ce sont tous les deux des polynmes deK[X]
.Exer i e 1 Quel est l'initial du polynme
3 x
2
y
− x
2
+ y + 5 x
− y
3
(en supposant
x > y
)? É rire un programme C utilisant BLAD qui al ule et a he l'initial du polynme.Exer i e 2 Quel est le séparant du polynme pré édent?
Exer i e 3 Dans quel as l'initial d'unpolynme estil égal à son séparant?
Un ensemblenide polynmesest dittriangulairesilesindéterminéesprin ipalesde
ses élémentssont toutes distin tes.
Soit
g
∈ K[X]
un autre polynme. Supposons que l'initial def
appartienne àK
. On peut alors al ulerlequotientq
etlerester
de ladivisioneu lidiennedeg
parf
,vus omme des polynmesen l'indéterminéex
età oe ients dans l'anneauK[X
\ {x}]
.g f
r q
Le ouple
(q, r)
est déni de façonunique. Il satisfaitdeg(r, x) < deg(f, x),
g = f q + r.
On note
quo(g, f, x)
le quotient etrem(g, f, x)
le reste ou parfoisquo(g, f )
etrem(g, f )
lorsqu'au une ambiguitén'est à raindre. Sil'initial def
n'appartient pas àK
, la division eu lidienne deg
parf
n'est plus possible : il n'y a au une raison que l'initial def
divise exa tementle oe ientprin ipaldeg
par rapport àx
.Ondispose toutefoisdel'algorithme depseudodivisionqui onsisteàmultiplierg
parunepuissan edel'initialdef
susante pour que les divisions par l'initial def
tombent juste. En notanti
f
l'initial def
eta =
deg(f, x)
− deg(g, x) + 1
,i
a
f
g f
r
q
Exer i e 4 Ee tuer lapseudodivision de
a x
2
+ b x + c
par
d x + e
. On suppose que l'in-déterminée prin ipaledes deuxpolynmesestx
. É rireun programme Cutilisant BLADqui ee tue lapseudodivision et a he le résultat.Le ouple
(q, r)
est déni de façonunique. Il satisfaitdeg(r, x) < deg(f, x),
i
a
f
g = f q + r.
On note
pquo(g, f, x)
le pseudoquotient etprem(g, f, x)
le pseudoreste def
parg
ou parfoispquo(g, f )
etprem(g, f )
lorsqu'au uneambiguité n'est à raindre. En fait,plusieurs variantesde l'algorithmedepseudodivisionsontdisponibles(onpeutenparti ulierprendreparfois
a < deg(f, x)
− deg(g, x) + 1
). Il peut être utile d'utiliser plusieurs variantes de l'algorithmede pseudodivisiondansunlogi iel: dans ertains as,onpeut vouloir her herl'exposant
a
leplus petit possiblepouréviter legrossissement desdonnées;dans le ontexte del'algorithmedessousrésultants,onestobligédeprendrea = deg(f, x)
−deg(g, x)+1
pour que les divisions exa tes mises en ÷uvre dans et algorithme tombent juste. Pour ouvrirtousles as,nousdironsquele ouple
(q, r)
n'estpasdénidefaçonuniquemaisqu'ilsatisfait dans tous les asdeg(r, x) < deg(f, x),
∃ a ≥ 0, i
a
f
g = f q + r.
Soit
F
⊂ K[X] \ K
un ensembleniné essairement triangulairenimême né essairement ni. On dénitprem(g, F )
omme l'un des résultatspossiblesde l'algorithmesuivant.fon tion
prem(g, F )
débutr
:=g
tant que
∃ f ∈ F, deg(r, ld f) ≥ deg(f, ld f)
fairer
:=prem(r, f, ld f )
faitretourner
r
n(utilisationde lassements )sont données dansles se tionsquisuivent.On suppose don
que le al ul termine. Le pseudoreste
r = prem(g, F )
n'est pas né essairement déni de façon unique mais il satisfait dans tous les as les propriétéssuivantes :1.
r
est algébriquementréduit parrapport àF
, 'estàdire quepour tousf
∈ F
on adeg(r, ld f ) < deg(f, ld f )
;2. ilexisteunproduitdepuissan es
h
d'initiauxd'élémentsdeF
telqueh g = r mod (F )
où(F )
désignel'idéal engendré par les élémentsdeF
.Un ensemble
F
dont tous les éléments sont algébriquement réduitsles uns par rapportaux autres est dit algébriquement autoréduit .Exer i e 5 Trouver un ordre sur l'ensemble
{x, y}
tel queF =
{x
2
, x y
− 1}
soit
algébri-quement autoréduit.
Soit
E
un ensemble de polynmes diérentiels n'appartenant pas àK
(sauf peutêtre zéro).UnsousensemblealgébriquementautoréduitF
deE
estunensemble ara téristique algébriquedeE
siE
ne ontientau unélémentnonnulalgébriquementréduitparrapport àF
.Exer i e 6 Montrer quesi
F
est unensemble ara téristiquealgébrique d'unidéalE
alors, quel que soitf
∈ E
on aprem(f, F ) = 0
.2.1.1 Saturations
Si
A
est un idéal d'un anneauR
etM
⊂ R
est une famille multipli ative, on dénit la saturation deA
parM
omme l'ensembleA
:M =
{f ∈ R | ∃ m ∈ M, m f ∈ A}.
SiS =
{s
1
, . . . , s
t
}
on noteS
∞
=
{s
ℓ
1
1
· · · s
ℓ
t
t
| ℓ
1
, . . . , ℓ
t
≥ 0}
la famille multipli ative engendrée parS
. Exer i e 7 SoitF =
{(x + 1) y, x
2
− 1}
un système. On prend l'ordre
y > x
. Dé rire l'ensemble des solutions des idéaux(F )
et(F )
:
I
∞
F
. Montrer queF
n'est pas un ensemble ara téristiquealgébrique de l'idéal(F )
:
I
∞
F
.Exer i e 8 Montrer quesi
prem(f, F ) = 0
alorsf
∈ (F )
:I
∞
F
oùI
F
désignel'ensemble des initiaux des éléments deF
.Exer i e 9 Montrer que
A
:M
est un idéal ontenant
A
.Exer i e 10 Dans un anneau n÷thérien, tout idéal
A
est une interse tion d'idéaux pri-maires , 'estàdire d'idéauxq
1
, . . . , q
t
telsquea b
∈ q
i
⇒ [a ∈ q
i
ou∃ n ≥ 0, b
n
∈ q
i
] .
Montrer que
A
:M
On appelle dérivation sur un anneau
R
toute appli ationδ : R
→ R
satisfaisantles axiomes des dérivations:δ(a + b) = δ(a) + δ(b),
δ(a b) = δ(a) b + aδ(b),
(
∀ a, b ∈ R)
Un anneau diérentiel est un anneau muni d'un nombre ni de dérivations supposées
ommuterentre elles :
δ
i
(δ
j
(a)) = δ
j
(δ
i
(a))
(
∀ a, b ∈ R).
De lamêmefaçon, un orps diérentielest un anneau diérentielquiest aussi un orps.
Exer i e 11 Montrer que les axiomes des dérivations impliquent que
δ(0) = 0
,δ(1) = 0
et plus généralement queδ(z) = 0
pour toutz
∈ Z
.Exer i e 12 Soient
a, b
∈ R
tels que1/b
∈ R
. Montrer que les axiomes des dérivations impliquent :δ
a
b
=
δ(a) b + a δ(b)
b
2
·
En algèbre diérentielle, on manipule des systèmes nis d'un anneau de polynmes
dif-férentiels
R = K
{U}
muni d'un ensemble de dérivations{δ
1
, . . . , δ
m
}
. L'ensembleU =
{u
1
, . . . , u
n
}
est l'ensembledes indéterminées diérentielles.L'anneau des oe ientsK
est un orps diérentiel ommutatif de ara téristique nulle. L'ensemble{δ
1
, . . . , δ
m
}
en-gendre un monoïde ommutatifpour l'opérationde omposition. On le noteΘ =
{δ
a
1
1
· · · δ
m
a
m
| a
1
, . . . , a
m
∈ N}.
Les éléments de
Θ
sont les opérateurs de dérivation . Dans ette théorie,on se restreint don à des opérateurs de dérivation ommutatifs. Siθ = δ
a
1
1
· · · δ
m
a
m
est un opérateur de dérivation,on dénitson ordre ommeord θ = a
1
+
· · · + a
m
.
Si
θ = δ
a
1
1
· · · δ
m
a
m
etϕ = δ
b
1
1
· · · δ
b
m
m
sont deux opérateurs de dérivation, on noteθϕ =
δ
a
1
+b
1
1
· · · δ
m
a
m
+b
m
. Si de plusa
i
≥ b
i
pour tous1
≤ i ≤ m
, on noteθ/ϕ = δ
a
1
−b
1
1
· · · δ
m
a
m
−b
m
. LemonoïdeΘ
agitsur l'ensembledes indéterminéesdiérentiellesU
, engendrantl'ensemble inniΘU
des dérivées . Les polynmes diérentielsdeR
peuvent ainsi être vus omme des polynmesau sens habituelsur l'alphabetinni des dérivées :R = K[ΘU]
.Un lassement est une relation d'ordre total sur
ΘU
ompatible ave l'a tion des dérivationssurΘU
, 'estàdire quisatisfait les deux axiomes suivants :1.
v
≤ θv
(
∀ v ∈ ΘU, θ ∈ Θ)
nous ne devions pas nous en servir dans e hapitre. Les dénitions sont données pour
deux indéterminées diérentielles. Elles se généralisent aisément à un nombre quel onque
d'indéterminées diérentielles.
1. Les lassements d'élimination.
Soient
u, v
∈ U
deux indéterminées diérentielles. On dit qu'un lassement éli-mineu
, e qu'on noteu
≫ v
siθu > φv
(
∀ θ, φ ∈ Θ).
2. Les lassements ompatibles ave l'ordre total.Soient
u, v
∈ U
deux indéterminées diérentielles.On ditqu'un lassementest om-patibleave l'ordre total pouru
etv
siord θ < ord φ
⇒ θu < φv
(
∀ θ, φ ∈ Θ).
3. Les lassements de Riquier.
Soient
u, v
∈ U
deux indéterminées diérentielles. On dit qu'un lassement est de Riquier pouru
etv
siθu < φu
⇔ θv < φv
(
∀ θ, φ ∈ Θ).
Exer i e 13 Pour ha un des extraits de lassements suivants, indiquer s'il relève de l'un
des types pré édents. Les indéterminées diérentielles sont
u
etv
. les dérivationsδ
x
etδ
y
sont notées en indi e.1.
· · · > u
xy
> u
yy
> u
x
> u
y
> u >
· · · > v
xx
> v
xy
> v
yy
> v
x
> v
y
> v
. 2.· · · > u
xx
> u
xy
> u
yy
> v
xx
> v
xy
> v
yy
> u
x
> u
y
> v
x
> v
y
> u > v
. 3.· · · > u
xx
> u
xy
> u
yy
> v
yy
> v
xy
> v
xx
> u
x
> u
y
> v
y
> v
x
> u > v
.Supposons
ΘU
ordonné suivant un lassement. Toutes les dénitions données dans la se tion pré édente s'appliquent aux polynmes diérentiels, si e n'est qu'on dit dérivéedominante aulieud'indéterminée prin ipale.
Exer i e 14 Donner, visàvis de ha un des lassements idessus, ladérivée dominante
du polynme diérentiel
u
y
v
yy
+ u
2
x
−3
. É rireun programmeC,utilisant BLAD, qui al ule et a he es dérivées dominantes.Proposition 1 Soient
f
∈ R \ K
un polynme diérentieletθ
∈ Θ
un opérateurde dériva-tion d'ordre non nul. Le séparantdef
est l'initial deθf
.L'appellation vient du nom du véritable fondateur de l'algèbre diérentielle : Joseph
Fels Ritt. Soient
g
∈ R
un polynme diérentiel etF
⊂ R
un ensemble ni de polynmes diérentiels. On dénit le reste partiel deg
parF
pour la rédu tion de Ritt parreste
_partiel(g, F ) = prem(g,
{ΘF } \ F ).
On dénit le reste omplet deg
parF
pour larédu tion de Rittparreste
_complet(g, F ) = prem(g, ΘF ).
Lesremarques faitesau sujetde lapseudodivisions'appliquenta fortiori pour larédu tion
deRitt:lerestepartieletlereste ompletde
g
parF
pourlarédu tiondeRittnesont pas dénis de façon unique. Si on les programme naturellement, 'estàdire en her hantà réduire d'abord les dérivées les plus grandes visàvis du lassement, es algorithmes de
rédu tion terminent. On le démontre en la se tion 2.4. Notons
[F ]
le plus petit idéal diérentiel engendré parF
dansR
, 'estàdire le plus petit idéal deR
ontenantF
et stable sous l'a tion des dérivations ( 'estàdire tel quep
∈ [F ] ⇒ θp ∈ [F ]
pour toute dérivéeθp
dep
). Lepolynme diérentielr = reste
_partiel(g, F )
satisfait lespropriétés :1. ilest partiellementréduitpar rapport à
F
, 'estàdire algébriquementréduit par rapportà{ΘF } \ F
;2. il existe un produit de puissan es
h
de séparants d'éléments deF
tels queh g = r
mod [F ]
.Le polynme diérentiel
r = reste
_complet(g, F )
satisfait lespropriétés :1. ilest omplètementréduitparrapportà
F
, 'estàdirealgébriquementréduitpar rapportàΘF
;2. ilexiste unproduit depuissan es
h
d'initiauxetde séparantsd'élémentsdeF
tels queh g = r mod [F ]
.Exer i e 15 Cal ulerlereste partiel etlereste omplet de
g = u
xx
+ u
x
parF =
{u
2
x
+ u
x
+
u
}
. É rire un programme C, utilisant BLAD, qui al uleet a he es deux restes. Exer i e 16 Montrer queu
3
x
∈ [u u
x
]
.Un ensemble
F
dont tout élément est partiellement réduit par rapportà tous les autres est dit partiellement autoréduit . Un ensembleF
dont tout élément est omplètement réduit par rapport à tous les autres est dit omplètement autoréduit . SoitE
⊂ R
un ensemble de polynmesdiérentielsn'appartenant pas àK
(sauf peutêtre zéro). Un sous ensemble omplètement autoréduitF
deE
est un ensemble ara téristique diérentiel deE
siE
ne omporte au unélémentnon nul omplètement réduitpar rapport àF
. Exer i e 17 Montrer que siF
est un ensemble ara téristique diérentiel d'un idéal dié-rentielE
alors, quel que soitf
∈ E
on areste
_complet(f, F ) = 0
.Exer i e 18 Notons