• Aucun résultat trouvé

Caract´ erisation topologique

5.4 Ensembles arithm´ etiques

5.4.2 Caract´ erisation topologique

Lemme 5.5. Toute formule de la structure hR, Z, + , ≤i peut ˆetre mise sous une forme ´equivalente qui ne contient plus la relation Z(x) mais `a laquelle on a ajout´e les deux nouvelles quantifications (∃x ∈ Z) et (∀x ∈ Z) portant sur des entiers et non plus sur des r´eels. Pour ´eviter les ambigu¨ıt´es, les quantificateurs (∃x) et (∀x) de la structure initiale seront quant `a eux respectivement ´ecrits (∃x ∈ R) et (∀x ∈ R). Preuve. On remplace simplement toute formule atomique Z(x) par la sous-formule (∃z ∈ Z)(z = x). R´eciproquement, (∃x ∈ Z)(ϕ(x,y1, . . . ,ym)) est ´equivalente `a

(∃x ∈ R)(Z(x) ∧ ϕ(x,y1, . . . ,ym)). De mˆeme, (∀x ∈ Z)(ϕ(x,y1, . . . ,ym)) est ´equiva-

lente `a (∀x ∈ R)(¬Z(x) ∨ ϕ(x,y1, . . . ,ym)). 2

Th´eor`eme 5.6. [BJW01] Soit un ensemble S ⊆ Rn avec n > 0, d´efini par une

formule de la structure hR, Z, + , ≤i. Cet ensemble appartient `a la classe Gδ∩ Fσ

de la topologie naturelle de Rn.

Preuve. Soit une formule ϕ de hR, Z, + , ≤i. L’id´ee de la d´emonstration est de s´eparer le traitement des parties enti`ere et fractionnaire de tous les nombres r´eels apparaissant dans la formule : un nombre r´eel x va ˆetre d´ecompos´e en xI+ xF, o`u

xI ∈ Z et xF ∈ [0,1[. Cette d´ecomposition se rapproche de ce que nous avions r´ealis´e

`

a la section 4.4.1 pour g´en´erer un RVA repr´esentant les solutions `a une contrainte lin´eaire.

Nous allons commencer par r´ealiser cette s´eparation sur les variables libres appa- raissant dans ϕ. Pour ce faire, on remplace chaque variable libre x par deux variables libres xI et xF, repr´esentant respectivement les parties enti`ere et fractionnaire de x.

Ceci revient `a remplacer dans ϕ chaque occurrence de x par la somme xI + xF. De

plus, on ajoute `a ϕ la conjonction Z(xI)∧ 0 ≤ xF ∧ xF < 1.

Il est possible de faire de mˆeme pour les variables quantifi´ees, quant `a elles s´epar´ees en appliquant les r`egles :

(∃x ∈ R)φ −→ (∃xI ∈ Z)(∃xF ∈ R)(0 ≤ xF ∧ xF < 1∧ φ[x/xI + xF]) (5.1)

(∀x ∈ R)φ −→ (∀xI ∈ Z)(∀xF ∈ R)(xF < 0∨ 1 ≤ xF ∨ φ[x/xI + xF]) (5.2)

(∃x ∈ Z)φ −→ (∃xI ∈ Z)φ[x/xI] (5.3)

5.4. Topologie — Ensembles arithm´etiques 56 xI = yI −→ xI = yI xI = (yI+ yF) −→ xI = yI∧ yF = 0 (xI+ xF) = (yI+ yF) −→ xI = yI∧ xF = yF xI = yI+ zI −→ xI = yI+ zI xI = yI+ (zI+ zF) −→ xI = yI+ zI∧ zF = 0 xI = (yI + yF) + (zI+ zF) −→ (xI = yI+ zI∧ yF + zF = 0) ∨(xI = yI+ zI+ 1∧ yF + zF = 1) (xI+ xF) = yI+ zI −→ xI = yI+ zI∧ xF = 0 (xI+ xF) = yI+ (zI+ zF) −→ xI = yI+ zI∧ xF = zF (xI+ xF) = (yI + yF) + (zI+ zF) −→ (xI = yI+ zI∧ xF = yF + zF) ∨(xI = yI+ zI+ 1∧ xF = yF + zF − 1) xI ≤ yI −→ xI ≤ yI xI ≤ (yI+ yF) −→ xI ≤ yI (xI+ xF)≤ yI −→ xI < yI∨ (xI = yI ∧ xF = 0) (xI+ xF)≤ (yI+ zI) −→ xI < yI∨ (xI = yI ∧ xF ≤ yF)

Tab. 5.1 – R`egles arithm´etiques de d´ecomposition des formules atomiques.

o`u φ est une sous-formule de ϕ et o`u φ[x/f ] d´esigne le remplacement dans φ de toutes les occurrences de x par la sous-formule f . Ces transformations n’ont aucun impact sur l’ensemble repr´esent´e par la formule (il suffit de raisonner s´emantiquement), si ce n’est que les parties enti`eres et fractionnaires de toutes les variables ont ´et´e explicit´ees.

Il est en outre toujours possible de remplacer ϕ par une formule qui est dans sa forme la plus forte (i.e. ne contenant plus que les relations Z, +, ≤) conform´ement aux r`egles de la section 4.5.4. Toutes les formules atomiques de ϕ sont par cons´equent de la forme p = q, p = q + r ou p≤ q. Les transformations sur les variables d´ecrites ci-dessus assurent en outre que p, q et r sont soit :

• des constantes enti`eres c (pr´esentes dans la formule initiale) ; • des variables enti`eres xI (obtenues par les r`egles (5.3) et (5.4)) ;

• des sommes d’une partie enti`ere et fractionnaire xI+ xF (r`egles (5.1) et (5.2)).

Grˆace au lemme 5.5, on peut finalement convertir toutes les formules atomiques Z(x) qui subsistent dans ϕ en des quantifications sur des variables enti`eres.

La seconde ´etape est de d´ecomposer les formules atomiques en atomes distincts ne contenant plus que des occurrences de variables toutes enti`eres ou fractionnaires. On utilise pour ce faire des r`egles arithm´etiques simples pr´esent´ees au tableau 5.1. Ces r`egles exploitent l’appartenance de xI `a Z et de xF `a [0,1[ pour toute variable

x (libre ou li´ee). Le tableau est exhaustif, `a la commutativit´e des membres (pour la relation (( = ))) et des termes (pour la relation (( + ))) pr`es. Il ne reprend pas les r`egles

5.4. Topologie — Ensembles arithm´etiques 57 pour les constantes, car elles sont identiques `a celles pour les variables enti`eres.

Suite `a cette transformation, toute formule atomique de ϕ est soit une formule φI impliquant seulement des variables enti`eres, soit une formule φF impliquant uni-

quement des variables fractionnaires.

Nous allons maintenant propager les quantifications vers l’int´erieur de mani`ere `

a ce qu’elles ne s’appliquent qu’`a des sous-formules faisant exclusivement interve- nir soit des variables enti`eres, soit des variables fractionnaires (pour abr´eger, nous parlerons respectivement de sous-formules enti`eres et fractionnaires). On va raison- ner par induction sur la structure de la formule pour montrer que ceci est possible, sachant comme cas de base que les formules atomiques de ϕ sont d´ej`a soit des sous- formules enti`eres, soit des sous-formules fractionnaires grˆace aux r`egles que l’on vient d’appliquer. La d´emarche `a suivre est d´ecrite ci-dessous :

1. On ´elimine tous les connecteurs autres que ¬, ∧ et ∨.

2. On propage aussi loin que possible les n´egations vers l’int´erieur et on ´elimine les doubles n´egations :

¬(∀x ∈ R)φ −→ (∃x ∈ R)¬φ ¬(∀x ∈ Z)φ −→ (∃x ∈ Z)¬φ

¬(∃x ∈ R)φ −→ (∀x ∈ R)¬φ ¬(∃x ∈ Z)φ −→ (∀x ∈ Z)¬φ

¬¬φ −→ φ

3. On propage les quantifications vers l’int´erieur, en commen¸cant par les quanti- fications les plus internes (c’est ici qu’intervient l’induction structurelle) :

• Pour une quantification existentielle (∃xI ∈ Z)φ ou (∃xF ∈ R)φ, on

´ecrit φ en forme normale disjonctive, o`u l’on consid`ere une sous-formule quantifi´ee comme un (pseudo-)litt´eral. Pour ce faire, on peut appliquer un simple algorithme de mise en forme normale disjonctive (voir [GG90] ou la section A.2.3 pour la mˆeme m´ethode dans un contexte ensembliste). Il est bien connu que l’on peut distribuer une quantification existentielle sur les termes d’une disjonction. La quantification est alors d´emultipli´ee et chacune s’applique `a une conjonction φ0 de pseudo-litt´eraux.

Chacun de ces pseudo-litt´eraux est, par hypoth`ese inductive, soit une sous-formule enti`ere, soit une sous-formule fractionnaire. φ0 peut donc ˆetre s´epar´ee en deux groupes φ0I et φ0F reprenant respectivement toutes les sous-formules enti`eres et fractionnaires. Ensuite, on applique selon le contexte :

(∃xI ∈ Z)(φ0I ∧ φ0F) −→ (∃xI ∈ Z)(φ0I) ∧ φ0F

(∃xF ∈ R)(φ0I ∧ φ0F) −→ φ0I ∧ (∃xF ∈ R)(φ0F)

En d’autres termes, une quantification sur une variable enti`ere n’a aucune influence sur une formule ne contenant que des parties fractionnaires. De mˆeme, une quantification fractionnaire n’a aucun impact sur une formule enti`ere. Ce proc´ed´e a bien l’effet recherch´e : la quantification existentielle ne s’applique plus qu’`a une sous-formule qui est soit enti`ere pour une quantification enti`ere, soit fractionnaire pour une quantification r´eelle.

5.4. Topologie — Ensembles arithm´etiques 58 • Le proc´ed´e est sensiblement identique pour les quantifications universelles (∀xI ∈ Z)φ ou (∀xF ∈ R)φ. Synth´etiquement, on applique l’algorithme

suivant :

(a) on met φ en forme normale conjonctive ;

(b) on distribue la quantification universelle sur la conjonction : la quan- tification est d´emultipli´ee, chacune s’appliquant `a une disjonction ; (c) chaque terme d’une disjonction est par induction une formule enti`ere

ou une formule fractionnaire : on divise donc chaque disjonction en deux groupes φ0I et φ0F ;

(d) on applique les r`egles :

(∀xI ∈ Z)(φ0I ∨ φ0F) −→ (∀xI ∈ Z)(φ0I) ∨ φ0F

(∀xF ∈ R)(φ0I ∨ φ0F) −→ φ0I ∨ (∀xF ∈ R)(φ0F)

4. En r´ep´etant cette op´eration sur toutes les quantifications, on arrive `a une formule ϕ0 qui est une combinaison bool´eenne finie de sous-formules quan- tifi´ees, de formules atomiques et de n´egations de formules atomiques. De plus, chacune de ces sous-formules et formules atomiques ne fait intervenir que des variables enti`eres ou fractionnaires. En r´esum´e, nous avons obtenu une formule ϕ0 ´equivalente `a ϕ, mais sous la forme d’une combinaison bool´eenne finie :

ϕ0 ≡ B(φ(1)I ,φ(2)I , . . . ,φ(m)I ,φ(1)F ,φ(2)F , . . . ,φ(mF 0)) (5.5) o`u chaque sous-formule φ(i)I et φ(j)F implique respectivement seulement des va- riables enti`eres ou fractionnaires.

Revenons maintenant aux variables libres, qui sont en nombre k ≤ n, et consi- d´erons les variables enti`eres. Celles-ci sont x(1)I , . . . ,x(k)I pour reprendre les notations introduites plus haut. Dans les sous-formules φ(i)I , n’interviennent que ces variables libres enti`eres et des variables enti`eres quantifi´ees. Par cons´equent, le fait d’attribuer une valeur aux x(j)I suffit `a attribuer une valeur de v´erit´e `a chaque sous-formule φ(i)I . Nous ne connaissons toutefois rien de cette valeur : tout ´el´ement de Z pourrait ˆ

etre introduite pour une variable x(j)I lors de l’´evaluation de ϕ0. Nous allons donc r´ealiser une grande disjonction pour laisser tous les choix possibles tout en attribuant une valeur de v´erit´e aux φ(i)I . Plus pr´ecis´ement, nous avons l’´equivalence :

ϕ0(x(1)I ,x(1)F , . . . ,x(k)I ,x(k)F ) _ (a1,...,ak)∈Zk (x(1)I , . . . ,x(k)I ) = (a1, . . . ,ak) ∧ ϕ0(a1,x (1) F ,a2,x (2) F , . . . ,ak,x (k) F ) ! (5.6)

Nous avons tout simplement ´enum´er´e tous les choix possibles pour les variables libres enti`eres. Ce faisant, nous savons maintenant que pour chacun de ces choix, toute sous-formule φ(i)I de (5.5) est identiquement vraie ou fausse.

Par cons´equent, dans chaque terme de la grande disjonction, tout terme de la combinaison bool´eenne correspondant `a ϕ0 est soit true, soit f alse, soit une sous- formule φF portant exclusivement sur des variables fractionnaires. De ce fait, chaque

5.4. Topologie — Ensembles arithm´etiques 59 terme de la grande disjonction peut se voir comme une formule ne faisant intervenir que des variables r´eelles. Il s’agit donc d’un terme que l’on peut exprimer dans la structure hR, Z, + , ≤i dont on a ˆot´e les variables enti`eres, soit une formule de la structure hR, 1, + , ≤i.3

Or, il est possible de montrer que tout ensemble d´ecrit parhR, 1,+, ≤i appartient `

a la classe Fσ (th´eor`eme A.9 de l’annexe A, section A.2.4). Donc, chaque terme de

(5.6) d´ecrit un ensemble qui est une union d´enombrable de ferm´es dans la topologie naturelle de Rn.

Il faut maintenant remarquer que le nombre de termes dans la grande disjonc- tion est infini, mais il reste d´enombrable car Zk est un ensemble d´enombrable. Par

cons´equent, la formule (5.6) est une union d´enombrable d’unions d´enombrables de ferm´es, soit une union d´enombrable de ferm´es (cf. section 5.2). Donc, ϕ d´ecrit un ensemble Fσ, ce qui prouve la premi`ere partie de l’´enonc´e.

Soit une formule ϕ de hR, Z, + , ≤i. ¬ϕ reste une formule de cette structure. Or, nous venons de montrer que dans ce cas, l’ensemble d´ecrit par ¬ϕ appartient `a Fσ.

Par dualit´e, ϕ d´ecrit un ensemble Gδ, ce qui ach`eve la d´emonstration. 2