07.11.2013 Views

Une Boite `a Outils Pour la Preuve Formelle de Syst`emes Séquentiels

Une Boite `a Outils Pour la Preuve Formelle de Syst`emes Séquentiels

Une Boite `a Outils Pour la Preuve Formelle de Syst`emes Séquentiels

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

134 ANNEXE D. ENSEMBLE DE FONCTIONS<br />

équation. Par exemple, l’ensemble <strong>de</strong>s fonctions dénotées par <strong>la</strong> fonction partielle (D,f)<br />

est aussi <strong>la</strong> fonction <strong>de</strong> Skolem <strong>de</strong> l’équation (∀⃗x ∃f ′ (D ⇒ (f ′ ⇔ f))), c’est à dire <strong>la</strong><br />

fonction paramétrée ((D∧f)∨(¬D∧p)).<br />

Fonction paramétrée<br />

En généralisant <strong>la</strong> définition ci-<strong>de</strong>ssus, une fonction paramétrée est une <strong>de</strong>s fonctions<br />

<strong>de</strong> Skolem d’une équation à plusieurs inconnues, c’est à dire une fonction λ⃗x.λ⃗p.g(⃗x,⃗p)<br />

ayantéventuellementplusieursparamètres⃗p, touslibres<strong>de</strong>prendren’importequellevaleur<br />

fonctionnelle sur un espace ({0,1} n → {0,1}) fixé. L’ensemble <strong>de</strong> fonctions dénoté par<br />

λ⃗x.λ⃗p.g(⃗x,⃗p) est l’ensemble <strong>de</strong> toutes les compositions λ⃗x.g(⃗x, ⃗ f(⃗x)), où les fonctions f k<br />

sont <strong>de</strong>s fonctions totales quelconques <strong>de</strong> ({0,1} n → {0,1}).<br />

D.2 Pouvoirs <strong>de</strong> dénotation<br />

Les trois Théorèmes suivants montrent que les quatres techniques fonction partielle, intervalle,<br />

fonction <strong>de</strong> Skolem, et fonction paramétrée, sont équivalentes (à l’ensemble vi<strong>de</strong><br />

près).<br />

Théorème D.1 Les pouvoirs <strong>de</strong> dénotation d’une fonction partielle et d’un intervalle non<br />

vi<strong>de</strong> 1 sont égaux.<br />

<strong>Preuve</strong>. Soit une fonction partielle dénotée par le couple (D,f). <strong>Une</strong> fonction f ′ est “contenue”<br />

par cette fonction partielle si et seulement si (D ⇒ (f ′ ⇔ f)) est une tautologie,<br />

donc si et seulement si ((D∧f) ⇒ (f ′ ⇔ f)) et ((D∧¬f) ⇒ (f ′ ⇔ f)), c’est à dire si et<br />

seulement si ((D∧f) ⇒ f ′ ) et ((D∧¬f) ⇒ ¬f ′ ). Cette <strong>de</strong>rnière formu<strong>la</strong>tion s’écrit aussi<br />

((D∧f) ⇒ f ′ ) et (f ′ ⇒ (¬D∨f)). Donc f ′ est contenue dans l’intervalle (D∧f,¬D∨f).<br />

Réciproquement, une fonction f ′ est contenue dans l’intervalle (g,h) si et seulement si<br />

(g ⇒ f ′ ⇒ h) est une tautologie. Posons D = (g ∨¬h) et f = g, on peut alors aisément<br />

vérifier que f ′ est “contenue” dans <strong>la</strong> fonction partielle dénotée par le couple (D,f). ✷<br />

Théorème D.2 Les pouvoirs <strong>de</strong> dénotation d’une équation à une inconnue et d’un intervalle<br />

sont égaux.<br />

<strong>Preuve</strong>. Les fonctions contenues dans l’intervalle (g,h), sont toutes représentées par <strong>la</strong><br />

fonction <strong>de</strong> Skolem <strong>de</strong> l’équation à une inconnue (∀⃗x ∃f ′ (g ⇒ f ′ ⇒ h)). Cette équation<br />

possè<strong>de</strong> une solution si et seulement si (g ⇒ h) est une tautologie, et sa fonction <strong>de</strong> Skolem<br />

est (g ∨(h∧p)).<br />

Réciproquement, soit l’équation à une inconnue <strong>de</strong> forme générale (∀⃗x ∃y f). Si une<br />

solution existe, alors (f[y ← 0] ∨ f[y ← 1]) est une tautologie, et <strong>la</strong> fonction <strong>de</strong> Skolem<br />

est (¬f[y ← 0] ∨ (p ∧ f[y ← 1])). On peut alors vérifier que dans ce cas, l’intervalle<br />

(¬f[y ← 0],¬f[y ← 0]) ∧ f[y ← 1]) représente le même ensemble. S’il n’y a pas <strong>de</strong><br />

solution, n’importe quel intervalle vi<strong>de</strong> fait l’affaire.<br />

✷<br />

1 Un intervalle peut éventuellement dénoter l’ensemble vi<strong>de</strong>, ce qui n’est pas le cas d’une fonction<br />

partielle.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!