• Aucun résultat trouvé

Les fragments de CLTL

Dans le document Sur la vérification de systèmes infinis (Page 78-82)

Preuve:

{ Puisque les systemes de transitions etiquetees nis sont a branchement ni et les contraintes de comptage dependent seulement du passe, la veri cation d'une formule

3f pour de tels systemes est semi-decidable (dans 0 1). { Nous montrons que le probleme de veri cation est 0

1-dicile en reduisant le probleme de l'arr^et d'une machine a deux compteurs deterministe. La structure de contr^ole d'une machine a deux compteurs peut ^etre vue comme un systeme de transitions etiquetees ni S avec les etiquettes inci;deci;zi (i= 1;2) ou inci correspond a ci :=

ci + 1, deci a ci := ci ,1 et zi a ci = 0. Nous ajoutons en plus une boucle a l'etat d'arr^et. La semantique d'un systeme est donnee par toutes ses sequences in nies. La formulef decrit toutes les sequences de S qui sont un mauvais calcul de la machine a deux compteurs ou qui atteignent l'etat d'arr^et. Soit 'donnee par:

([xi;yi :inci;deci]2

i=1:3((zi^(xi,yi)6= 0)_ai)

ou ai est la transition qui mene vers l'etat d'arr^et. Les propositions atomiques zi et

ai peuvent ^etre codees par des compteurs pour obtenir une formule de la forme (4.4). Par exemple pour chaque transition q1

ai

! q2 nous ajoutons deux etats nouveaux q0 1 et q0 2 avec q1 iai ! q0 1 ai ! q0 2 dai

! q2. jiaij,jdaij = 1 signi e que la prochaine transition doit ^etre unai. La propositionai peut donc ^etre codee par des compteurs.

Soit S l'ensemble de toutes les sequences de calcul in ni de S. Alors nous avons '

est valide relative a S si et seulement si la machine a deux compteurs s'arr^ete.

2

Pour obtenir des resultats de decidabilite pour le probleme de la veri cation nous devons par consequent interdire des formules de la forme (4.4). Pour cela nous introduisons des fragments de CLTL dans la section suivante.

4.4 Les fragments de CLTL

Dans cette section nous introduisons plusieurs fragments de CLTL. Ces fragments sont de nis de facon qu'ils ne contiennent pas des formules qui causent l'indecidabilite du pro-bleme de veri cation, i.e. des formules de la forme3f. Ces fragments ne sont pas fermes par negation. Pour chacun des fragments nous introduisons un autre fragment tel que chaque formule dans le premier est equivalent a une formule du deuxieme et vice versa.

4.4.1 De nitions

Nous commencons avec la de nition des fragments les plus expressifs, CLTL2et CLTL3. Pour decrire facilement les restrictions syntaxiques qui correspondent a ces fragments, nous

introduisons d'abord la forme positive de formules de CLTL donnee par:

De nition 4.17 (Forme positive de CLTL)

:

Une formule en forme positive de CLTL est donnee par:

' ::= e 9x:'j e 8x:'j[x:]:' jf ju:'j Au jP j:P j (4.5) '_'j'^'j 'j2'j'U'

Lemme 4.1 (Forme positive)

:

Chaque formule CLTL a une formule equivalente en forme positive.

Preuve:

Nous prouvons ce lemme par induction structurelle en utilisant les proprietes des operateurs booleens et les equivalences de formules ( Aest l'automate complementaire de A):

:[x:]: ' = [x:]::' (4.6) :u: ' = u::' (4.7) :Au = Au (4.8) : ' = :' (4.9) :('1 U'2) = (2:'2)_(:'2 U:'1) (4.10) 2

Les formes positives de formules ALTL (resp. PLTL) correspondent a (4.5) sans quan-ti cation de remise a zero (resp. position) et contraintes de comptage (resp. motif).

La Proposition 4.1 montre que le probleme de veri cation devient indecidable des que des formules de la forme 3f sont considerees. Pour eviter ce genre de formules nous de- nissons le fragment CLTL2 en imposant que dans (4.17) la partie droite de U doit ^etre une formule de ALTL (c'est-a-dire sans contraintes de comptages). Nous admettons dans ce fragment aussi des formules U avec la m^eme restriction. Nous interdisons aussi dans CLTL2 l'operateur e

9. Le fragment CLTL3 est de ni de sorte qu'il caracterise exactement les negations de formule de CLTL2. Nous de nissons ensuite les fragments correspondants pour PLTL. Dans PLTL2 la partie a droite de U doit ^etre une formule de LTL. Finale-ment, nous de nissons les fragments PLTL2 simple et PLTL3 simple. Dans PLTL2 simple la partie a droite de U doit ^etre une formule propositionnelle.

De nition 4.18 (CLTL

2

)

:

Les formules de CLTL2 sont donnees par:

' ::= e

8x:'j[x:]:' jf ju:' jAu jP j:P j'_'j'^'j 'j2'j'U j'U

4.4 : Les fragments de CLTL 79

De nition 4.19 (CLTL

3

)

:

Les formules de CLTL3 sont donnees par:

' ::= e

9x:'j[x:]:' jf ju:' jAu

jP j:P j'_'j'^'j 'j2 j U'j U'

ou est une formule de ALTL.

De nition 4.20 (PLTL

2

)

:

Les formules de PLTL2 sont donnees par:

' ::= e

8x:'j[x:]:' jf jP j:P j'_'j'^'j 'j2'j'U j'U

ou est une formule de LTL.

De nition 4.21 (PLTL

3

)

:

Les formules de PLTL3 sont donnees par:

' ::= e

9x:'j[x:]:' jf jP j:P j'_'j'^'j 'j2 j U'j U'

ou est une formule de LTL.

De nition 4.22 (PLTL

2

simple)

:

Les formules de PLTL2 simple sont donnees par:

' ::= e

8x:'j[x:]:' jf jP j:P j'_'j'^'j 'j2'j'U j'U

ou est une formule propositionnelle.

De nition 4.23 (PLTL

3

simple)

:

Les formules de PLTL3 simple sont donnees par:

' ::= e

9x:'j[x:]:' jf jP j:P j'_'j'^'j 'j2 j U'j U'

ou est une formule propositionnelle.

Proposition 4.2

:

Pour chaque formule fermee ' de CLTL2 (resp. PLTL2, PLTL2 simple) il existe une formule fermee'0 de CLTL3 (resp. PLTL3, PLTL3simple) telle que [[:']] = [['0]], et vice versa.

Preuve:

Par induction structurelle en utilisant les equivalences:

:('1 U'2) = (2:'2)_(:'2 U:'1) (4.11) :('1 U'2) = (2:'2)_(:'2 U:'1) (4.12) : ' = :' (4.13) : e 8x:' = e 9x::' (4.14) 2

4.4.2 Expressivite

Il est clair que l'ensemble de formules de ALTL en forme positive est un sous-ensemble de CLTL2 et CLTL3. Par consequent, CLTL2 et CLTL3 peuvent exprimer toutes les proprietes !-regulieres. Mais, ces deux fragments n'expriment evidemment pas les m^eme classes de proprietes non-regulieres. Par exemple, (4.2) peut ^etre exprimee en CLTL2 mais pas sa negation.

D'une maniere similaire, PLTL2 et PLTL3 peuvent exprimer toutes les formules de la logique LTL et peuvent donc exprimer toutes les !-proprietes sans hauteur d'etoile. En plus, il est facile de voir que PLTL3 simple peut exprimer toutes les langages !-reguliers simples et PLTL2 simple toutes leur complements.

La m^eme dualite qui existe entre CLTL2 et CLTL3 par rapport a des proprietes non-regulieres existe aussi entre leurs sous-fragments. M^eme restreints, ses sous-fragments per-mettent de capturer des classes signi catives de proprietes non-regulieres. Par exemple, les formules (4.1) and (4.3) sont dans PLTL2 simple. Ces fragments de PLTL peuvent par ailleurs exprimer des !-proprietes qui ne sont pas sans hauteur d'etoile en utilisant des formules de Presburger. Par exemple, la propriete qu`a chaque position paire, la propriete

P est vrai [Wol83] peut ^etre exprimer par la formule PLTL2 simple

[x:true]:2((9y:2y=x))P) (4.15) La gure suivante montre les inclusions entre les logiques di erentes que nous utilisons

6 k k k 6 6 6 6 6 6 6 k k : : : : k : CLTL3 PLTL3 LTL ALTL PLTL2 CLTL2 PLTL CLTL PLTL2 simple PLTL3 simple

Dans le document Sur la vérification de systèmes infinis (Page 78-82)