• Aucun résultat trouvé

Chapitre 4 Formes Normales

N/A
N/A
Protected

Academic year: 2022

Partager "Chapitre 4 Formes Normales"

Copied!
189
0
0

Texte intégral

(1)

Chapitre 4

Formes Normales

(2)

Table de Matières

La notion d'une forme normale Forme normale de négation Forme disjonctive normale

Équivalences entre formules en forme disjonctive normale Forme conjonctive normale

(3)

La notion d'une forme normale

I Pour toute formule il y a une innité d'autres formules équivalentes : p, p∧p, p∧p∧p, . . ., et plein d'autres.

I Est-ce qu'on peut dénir une forme standardisée des formules ?

I Forme normale : spéciée par des restrictions de la syntaxe.

I Utile pour l'algorithmique.

I Normalement : toute formule doit pouvoir être transfomée en une formule en forme normale, et qui lui est équivalente, alors appelée sa forme normale.

I Il y a des notions diérentes de forme normale.

(4)

La notion d'une forme normale

I Pour toute formule il y a une innité d'autres formules équivalentes : p, p∧p, p∧p∧p, . . ., et plein d'autres.

I Est-ce qu'on peut dénir une forme standardisée des formules ?

I Forme normale : spéciée par des restrictions de la syntaxe.

I Utile pour l'algorithmique.

I Normalement : toute formule doit pouvoir être transfomée en une formule en forme normale, et qui lui est équivalente, alors appelée sa forme normale.

I Il y a des notions diérentes de forme normale.

(5)

La notion d'une forme normale

I Pour toute formule il y a une innité d'autres formules équivalentes : p, p∧p, p∧p∧p, . . ., et plein d'autres.

I Est-ce qu'on peut dénir une forme standardisée des formules ?

I Forme normale : spéciée par des restrictions de la syntaxe.

I Utile pour l'algorithmique.

I Normalement : toute formule doit pouvoir être transfomée en une formule en forme normale, et qui lui est équivalente, alors appelée sa forme normale.

I Il y a des notions diérentes de forme normale.

(6)

La notion d'une forme normale

I Pour toute formule il y a une innité d'autres formules équivalentes : p, p∧p, p∧p∧p, . . ., et plein d'autres.

I Est-ce qu'on peut dénir une forme standardisée des formules ?

I Forme normale : spéciée par des restrictions de la syntaxe.

I Utile pour l'algorithmique.

I Normalement : toute formule doit pouvoir être transfomée en une formule en forme normale, et qui lui est équivalente, alors appelée sa forme normale.

I Il y a des notions diérentes de forme normale.

(7)

La notion d'une forme normale

I Pour toute formule il y a une innité d'autres formules équivalentes : p, p∧p, p∧p∧p, . . ., et plein d'autres.

I Est-ce qu'on peut dénir une forme standardisée des formules ?

I Forme normale : spéciée par des restrictions de la syntaxe.

I Utile pour l'algorithmique.

I Normalement : toute formule doit pouvoir être transfomée en une formule en forme normale, et qui lui est équivalente, alors appelée sa forme normale.

I Il y a des notions diérentes de forme normale.

(8)

La forme normale de négation (NNF)

Denition

Une formule est enforme normale de négation si elle ne contient pas d'applications de l'opérateur¬ sauf des applications à des variables propositionnelles.

I Exemple : ¬x ∧ ¬y ∧z

I Exemple : (¬x ∨y)∧(¬z∨x)

I Contre-exemple : ¬(x∧y)

I Contre-exemple : ¬¬y

(9)

La forme normale de négation (NNF)

Denition

Une formule est enforme normale de négation si elle ne contient pas d'applications de l'opérateur¬ sauf des applications à des variables propositionnelles.

I Exemple : ¬x ∧ ¬y ∧z

I Exemple : (¬x ∨y)∧(¬z∨x)

I Contre-exemple : ¬(x∧y)

I Contre-exemple : ¬¬y

(10)

La forme normale de négation (NNF)

Denition

Une formule est enforme normale de négation si elle ne contient pas d'applications de l'opérateur¬ sauf des applications à des variables propositionnelles.

I Exemple : ¬x ∧ ¬y ∧z

I Exemple : (¬x ∨y)∧(¬z∨x)

I Contre-exemple : ¬(x∧y)

I Contre-exemple : ¬¬y

(11)

La forme normale de négation (NNF)

Denition

Une formule est enforme normale de négation si elle ne contient pas d'applications de l'opérateur¬ sauf des applications à des variables propositionnelles.

I Exemple : ¬x ∧ ¬y ∧z

I Exemple : (¬x ∨y)∧(¬z∨x)

I Contre-exemple : ¬(x∧y)

I Contre-exemple : ¬¬y

(12)

La forme normale de négation (NNF)

Denition

Une formule est enforme normale de négation si elle ne contient pas d'applications de l'opérateur¬ sauf des applications à des variables propositionnelles.

I Exemple : ¬x ∧ ¬y ∧z

I Exemple : (¬x ∨y)∧(¬z∨x)

I Contre-exemple : ¬(x∧y)

I Contre-exemple : ¬¬y

(13)

Algorithme de transformation en NNF

Règles de réécriture :

¬¬X X (1)

¬(X ∧Y) (¬X ∨ ¬Y) (2)

¬(X ∨Y) (¬X ∧ ¬Y) (3) On peut appliquer une règle de transformation à n'importe quel endroit de la formule à transformer : soit à la formule entière, soità l'intérieur de la formule.

(14)

Exemple

La première règle permet les transformations suivantes :

I Transformer la formule ¬¬(x1∧x2)enx1∧x2, en appliquant la règle à la formule entière ;

I Transformer la formule(x1∨¬¬x2)en(x1∨x2), en appliquant la règle de transformation seulement à la sous-formule rouge.

(15)

Exemple

La première règle permet les transformations suivantes :

I Transformer la formule ¬¬(x1∧x2)enx1∧x2, en appliquant la règle à la formule entière ;

I Transformer la formule(x1∨¬¬x2)en(x1∨x2), en appliquant la règle de transformation seulement à la sous-formule rouge.

(16)

Remarque

I Les règles de transformation sont écrites avec des variables en majuscules X , Y et pas avec des variables en minuscules x, y comme les variables propositionnelles.

I Les variables propositionnelles dénotent des valeurs de vérité, tandis que les variables utilisées dans les règles de

transformation dénotent des formules propositionnelles.

(17)

Remarque

I Les règles de transformation sont écrites avec des variables en majuscules X , Y et pas avec des variables en minuscules x, y comme les variables propositionnelles.

I Les variables propositionnelles dénotent des valeurs de vérité, tandis que les variables utilisées dans les règles de

transformation dénotent des formules propositionnelles.

(18)

Exemple complet

Appliquer les règles tant que possible :

¬(x∧(y ∨ ¬z))

se transforme en ¬x ∨¬(y ∨ ¬z) par règle (2) se transforme en ¬x ∨(¬y ∧¬¬z) par règle (3) se transforme en ¬x ∨(¬y ∧z) par règle (1) Redex

La sous-formule sur laquelle on applique une transformation, ici en rouge.

(19)

Exemple complet

Appliquer les règles tant que possible :

¬(x∧(y ∨ ¬z))

se transforme en ¬x ∨¬(y ∨ ¬z) par règle (2) se transforme en ¬x ∨(¬y ∧¬¬z) par règle (3) se transforme en ¬x ∨(¬y ∧z) par règle (1) Redex

La sous-formule sur laquelle on applique une transformation, ici en rouge.

(20)

Exemple complet

Appliquer les règles tant que possible :

¬(x∧(y ∨ ¬z))

se transforme en ¬x ∨¬(y ∨ ¬z) par règle (2) se transforme en ¬x ∨(¬y ∧¬¬z) par règle (3) se transforme en ¬x ∨(¬y ∧z) par règle (1) Redex

La sous-formule sur laquelle on applique une transformation, ici en rouge.

(21)

Exemple complet

Appliquer les règles tant que possible :

¬(x∧(y ∨ ¬z))

se transforme en ¬x ∨¬(y ∨ ¬z) par règle (2) se transforme en ¬x ∨(¬y ∧¬¬z) par règle (3) se transforme en ¬x ∨(¬y ∧z) par règle (1) Redex

La sous-formule sur laquelle on applique une transformation, ici en rouge.

(22)

Exemple complet

Appliquer les règles tant que possible :

¬(x∧(y ∨ ¬z))

se transforme en ¬x ∨¬(y ∨ ¬z) par règle (2) se transforme en ¬x ∨(¬y ∧¬¬z) par règle (3) se transforme en ¬x ∨(¬y ∧z) par règle (1) Redex

La sous-formule sur laquelle on applique une transformation, ici en rouge.

(23)

Plusieurs possibilités pour obtenir une forme normale

¬(x1∨ ¬(x2∧x3))

(24)

Questions

Terminaison ?

I Est-ce que ce processus se termine toujours ?

I Ce n'est pas évident, un processus déni par une application itérée d'une transformation peut a priori boucler, ou faire grossir le terme inniment.

Conuence ?

I Est-ce qu'on obtient toujours à la n la même formule quand il y a plusieurs possibilités d'appliquer les règles ?

I C'est le cas, mais on ne va pas le montrer dans ce cours.

(25)

Questions

Terminaison ?

I Est-ce que ce processus se termine toujours ?

I Ce n'est pas évident, un processus déni par une application itérée d'une transformation peut a priori boucler, ou faire grossir le terme inniment.

Conuence ?

I Est-ce qu'on obtient toujours à la n la même formule quand il y a plusieurs possibilités d'appliquer les règles ?

I C'est le cas, mais on ne va pas le montrer dans ce cours.

(26)

Questions

Terminaison ?

I Est-ce que ce processus se termine toujours ?

I Ce n'est pas évident, un processus déni par une application itérée d'une transformation peut a priori boucler, ou faire grossir le terme inniment.

Conuence ?

I Est-ce qu'on obtient toujours à la n la même formule quand il y a plusieurs possibilités d'appliquer les règles ?

I C'est le cas, mais on ne va pas le montrer dans ce cours.

(27)

Questions

Terminaison ?

I Est-ce que ce processus se termine toujours ?

I Ce n'est pas évident, un processus déni par une application itérée d'une transformation peut a priori boucler, ou faire grossir le terme inniment.

Conuence ?

I Est-ce qu'on obtient toujours à la n la même formule quand il y a plusieurs possibilités d'appliquer les règles ?

I C'est le cas, mais on ne va pas le montrer dans ce cours.

(28)

Terminaison : Regardons d'abord un système simplié

I Si on avait une seule règle :

¬¬X X

I Chaque application de cette règle enlève deux occurrences du symbole¬.

I Si la formule de départ a n occurrences de¬, alors l'algorithme de transformation termine après au plus n2 étapes.

(29)

Terminaison : Regardons d'abord un système simplié

I Si on avait une seule règle :

¬¬X X

I Chaque application de cette règle enlève deux occurrences du symbole¬.

I Si la formule de départ a n occurrences de¬, alors l'algorithme de transformation termine après au plus n2 étapes.

(30)

Terminaison : Regardons d'abord un système simplié

I Si on avait une seule règle :

¬¬X X

I Chaque application de cette règle enlève deux occurrences du symbole¬.

I Si la formule de départ a n occurrences de¬, alors l'algorithme de transformation termine après au plus n2 étapes.

(31)

La diculté pour le système complet

I La deuxième règle

¬(X∧Y) (¬X ∨ ¬Y)

fait croître le nombre de¬(pareil pour la troisième règle)

I Trouver une mesure qui décroit quand on l'applique n'importe laquelle des trois règles ?

(32)

La diculté pour le système complet

I La deuxième règle

¬(X∧Y) (¬X ∨ ¬Y)

fait croître le nombre de¬(pareil pour la troisième règle)

I Trouver une mesure qui décroit quand on l'applique n'importe laquelle des trois règles ?

(33)

La clef de la preuve de terminaison

Proposition : Soitφ:Form→Ndénie par récurrence :

I φ(x) =1, où x ∈V

I φ((p1∧p2)) =φ(p1) +φ(p2)

I φ((p1∨p2)) =φ(p1) +φ(p2)

I φ(¬p) = (φ(p))2+1

Alors pour toute formule p∈Form : Si p se transforme en q par une application d'une des règles 1, 2 or 3 alorsφ(p)> φ(q).

(34)

La clef de la preuve de terminaison

Proposition : Soitφ:Form→Ndénie par récurrence :

I φ(x) =1, où x ∈V

I φ((p1∧p2)) =φ(p1) +φ(p2)

I φ((p1∨p2)) =φ(p1) +φ(p2)

I φ(¬p) = (φ(p))2+1

Alors pour toute formule p∈Form : Si p se transforme en q par une application d'une des règles 1, 2 or 3 alorsφ(p)> φ(q).

(35)

D'abord une petite proposition

Proposition : Pour la fonctionφdénie en haut : φ(p)≥1 pour toute formule p.

Démonstration : exercice (induction).

(36)

Démonstration de la proposition

I Par induction

I À montrer pour une formule p donnée : si p se transforme en q par une application d'une règle alors φ(p)> φ(q).

I Si aucune règle de transformation s'applique à p alors il n'y a rien à montrer.

I Attention : Dans le cas général il y a plusieurs possibilités pour appliquer une règle.

(37)

Démonstration de la proposition

I Par induction

I À montrer pour une formule p donnée : si p se transforme en q par une application d'une règle alors φ(p)> φ(q).

I Si aucune règle de transformation s'applique à p alors il n'y a rien à montrer.

I Attention : Dans le cas général il y a plusieurs possibilités pour appliquer une règle.

(38)

Démonstration de la proposition

I Par induction

I À montrer pour une formule p donnée : si p se transforme en q par une application d'une règle alors φ(p)> φ(q).

I Si aucune règle de transformation s'applique à p alors il n'y a rien à montrer.

I Attention : Dans le cas général il y a plusieurs possibilités pour appliquer une règle.

(39)

Démonstration de la proposition

I Par induction

I À montrer pour une formule p donnée : si p se transforme en q par une application d'une règle alors φ(p)> φ(q).

I Si aucune règle de transformation s'applique à p alors il n'y a rien à montrer.

I Attention : Dans le cas général il y a plusieurs possibilités pour appliquer une règle.

(40)

Démonstration : le cas d'une variable

Si p∈V alors aucune transformation n'est possible et il n'y a rien à montrer.

(41)

Démonstration : le cas d'une conjonction (I)

I Si p= (p1∧p2) alors plusieurs possibilités pour appliquer une règle peuvent exister, cela dépend de p1 et de p2.

I Chaque transformation se fait soit sur p1 soit sur p2, il n'est pas possible d'appliquer une règle à la racine de p car toute règle commence sur le symbole¬.

I Nous considérons le cas où p1 est transformé en q1.

I Hypothèse d'induction : φ(p1)> φ(q1)

(42)

Démonstration : le cas d'une conjonction (I)

I Si p= (p1∧p2) alors plusieurs possibilités pour appliquer une règle peuvent exister, cela dépend de p1 et de p2.

I Chaque transformation se fait soit sur p1 soit sur p2, il n'est pas possible d'appliquer une règle à la racine de p car toute règle commence sur le symbole¬.

I Nous considérons le cas où p1 est transformé en q1.

I Hypothèse d'induction : φ(p1)> φ(q1)

(43)

Démonstration : le cas d'une conjonction (I)

I Si p= (p1∧p2) alors plusieurs possibilités pour appliquer une règle peuvent exister, cela dépend de p1 et de p2.

I Chaque transformation se fait soit sur p1 soit sur p2, il n'est pas possible d'appliquer une règle à la racine de p car toute règle commence sur le symbole¬.

I Nous considérons le cas où p1 est transformé en q1.

I Hypothèse d'induction : φ(p1)> φ(q1)

(44)

Démonstration : le cas d'une conjonction (I)

I Si p= (p1∧p2) alors plusieurs possibilités pour appliquer une règle peuvent exister, cela dépend de p1 et de p2.

I Chaque transformation se fait soit sur p1 soit sur p2, il n'est pas possible d'appliquer une règle à la racine de p car toute règle commence sur le symbole¬.

I Nous considérons le cas où p1 est transformé en q1.

I Hypothèse d'induction : φ(p1)> φ(q1)

(45)

Démonstration : le cas d'une conjonction (II)

Hypothèse d'induction : φ(p1)> φ(q1) φ((p1∧p2))

= φ(p1) +φ(p2) par dénition de φ

> φ(q1) +φ(p2) carφ(p1)> φ(q1)par hypothèse d'induction

= φ((q1∧p2)) par dénition de φ

(46)

Démonstration : le cas d'une conjonction (II)

Hypothèse d'induction : φ(p1)> φ(q1) φ((p1∧p2))

= φ(p1) +φ(p2) par dénition de φ

> φ(q1) +φ(p2) carφ(p1)> φ(q1)par hypothèse d'induction

= φ((q1∧p2)) par dénition de φ

(47)

Démonstration : le cas d'une conjonction (II)

Hypothèse d'induction : φ(p1)> φ(q1) φ((p1∧p2))

= φ(p1) +φ(p2) par dénition de φ

> φ(q1) +φ(p2) carφ(p1)> φ(q1)par hypothèse d'induction

= φ((q1∧p2)) par dénition de φ

(48)

Démonstration : le cas d'une conjonction (II)

Hypothèse d'induction : φ(p1)> φ(q1) φ((p1∧p2))

= φ(p1) +φ(p2) par dénition de φ

> φ(q1) +φ(p2) carφ(p1)> φ(q1)par hypothèse d'induction

= φ((q1∧p2)) par dénition de φ

(49)

Démonstration : le cas d'une conjonction (II)

Hypothèse d'induction : φ(p1)> φ(q1) φ((p1∧p2))

= φ(p1) +φ(p2) par dénition de φ

> φ(q1) +φ(p2) carφ(p1)> φ(q1)par hypothèse d'induction

= φ((q1∧p2)) par dénition de φ

(50)

Démonstration : le cas d'une disjonction

I Analogue au cas de la conjonction.

I Justié par le fait que la fonctionφest dénie pareil dans le cas de la conjonction et de la disjonction !

(51)

Démonstration : le cas d'une disjonction

I Analogue au cas de la conjonction.

I Justié par le fait que la fonctionφest dénie pareil dans le cas de la conjonction et de la disjonction !

(52)

Démonstration : le cas d'une négation (I)

p=¬p1. Sous-cas 1 : transformation de p1 en q1. Hypothèse d'induction : φ(p1)> φ(q1)

φ(¬p1)

= (φ(p1))2+1 par dénition de φ

> (φ(q1))2+1 carφ(p1)> φ(q1) par hypothèse d'induction etφ(q1)≥1

= φ(¬q1) par dénition de φ

(53)

Démonstration : le cas d'une négation (I)

p=¬p1. Sous-cas 1 : transformation de p1 en q1. Hypothèse d'induction : φ(p1)> φ(q1)

φ(¬p1)

= (φ(p1))2+1 par dénition de φ

> (φ(q1))2+1 carφ(p1)> φ(q1) par hypothèse d'induction etφ(q1)≥1

= φ(¬q1) par dénition de φ

(54)

Démonstration : le cas d'une négation (I)

p=¬p1. Sous-cas 1 : transformation de p1 en q1. Hypothèse d'induction : φ(p1)> φ(q1)

φ(¬p1)

= (φ(p1))2+1 par dénition de φ

> (φ(q1))2+1 carφ(p1)> φ(q1) par hypothèse d'induction etφ(q1)≥1

= φ(¬q1) par dénition de φ

(55)

Démonstration : le cas d'une négation (I)

p=¬p1. Sous-cas 1 : transformation de p1 en q1. Hypothèse d'induction : φ(p1)> φ(q1)

φ(¬p1)

= (φ(p1))2+1 par dénition de φ

> (φ(q1))2+1 carφ(p1)> φ(q1) par hypothèse d'induction etφ(q1)≥1

= φ(¬q1) par dénition de φ

(56)

Démonstration : le cas d'une négation (I)

p=¬p1. Sous-cas 1 : transformation de p1 en q1. Hypothèse d'induction : φ(p1)> φ(q1)

φ(¬p1)

= (φ(p1))2+1 par dénition de φ

> (φ(q1))2+1 carφ(p1)> φ(q1) par hypothèse d'induction etφ(q1)≥1

= φ(¬q1) par dénition de φ

(57)

Démonstration : le cas d'une négation (I)

p=¬p1. Sous-cas 1 : transformation de p1 en q1. Hypothèse d'induction : φ(p1)> φ(q1)

φ(¬p1)

= (φ(p1))2+1 par dénition de φ

> (φ(q1))2+1 carφ(p1)> φ(q1) par hypothèse d'induction etφ(q1)≥1

= φ(¬q1) par dénition de φ

(58)

Démonstration : le cas d'une négation (II)

Première règle appliquée à la racine : p=¬¬p2 est transformé en p2.

φ(¬¬p2)

= (φ(¬p2))2+1 par dénition deφ

= ((φ(p2))2+1)2+1 par dénition deφ

= φ(p2)4+2φ(p2)2+1+1

> φ(p2)

(59)

Démonstration : le cas d'une négation (II)

Première règle appliquée à la racine : p=¬¬p2 est transformé en p2.

φ(¬¬p2)

= (φ(¬p2))2+1 par dénition deφ

= ((φ(p2))2+1)2+1 par dénition deφ

= φ(p2)4+2φ(p2)2+1+1

> φ(p2)

(60)

Démonstration : le cas d'une négation (II)

Première règle appliquée à la racine : p=¬¬p2 est transformé en p2.

φ(¬¬p2)

= (φ(¬p2))2+1 par dénition deφ

= ((φ(p2))2+1)2+1 par dénition deφ

= φ(p2)4+2φ(p2)2+1+1

> φ(p2)

(61)

Démonstration : le cas d'une négation (II)

Première règle appliquée à la racine : p=¬¬p2 est transformé en p2.

φ(¬¬p2)

= (φ(¬p2))2+1 par dénition deφ

= ((φ(p2))2+1)2+1 par dénition deφ

= φ(p2)4+2φ(p2)2+1+1

> φ(p2)

(62)

Démonstration : le cas d'une négation (II)

Première règle appliquée à la racine : p=¬¬p2 est transformé en p2.

φ(¬¬p2)

= (φ(¬p2))2+1 par dénition deφ

= ((φ(p2))2+1)2+1 par dénition deφ

= φ(p2)4+2φ(p2)2+1+1

> φ(p2)

(63)

Démonstration : le cas d'une négation (II)

Première règle appliquée à la racine : p=¬¬p2 est transformé en p2.

φ(¬¬p2)

= (φ(¬p2))2+1 par dénition deφ

= ((φ(p2))2+1)2+1 par dénition deφ

= φ(p2)4+2φ(p2)2+1+1

> φ(p2)

(64)

Démonstration : le cas d'une négation (III)

Application de la deuxième règle à la racine : p=¬(p2∧p3) est transformé en(¬p2∨ ¬p3):

φ(¬(p2∧p3))

= φ((p2∧p3))2+1 par dénition deφ

= (φ(p2) +φ(p3))2+1 par dénition deφ

= (φ(p2))2+2φ(p2)φ(p3) + (φ(p3))2+1

> (φ(p2))2+1+ (φ(p3))2+1 carφ(p2)≥1 etφ(p3)≥1

= φ(¬p2) +φ(¬p3) par dénition deφ

= φ((¬p2∨ ¬p3)) par dénition deφ

(65)

Démonstration : le cas d'une négation (III)

Application de la deuxième règle à la racine : p=¬(p2∧p3) est transformé en(¬p2∨ ¬p3):

φ(¬(p2∧p3))

= φ((p2∧p3))2+1 par dénition deφ

= (φ(p2) +φ(p3))2+1 par dénition deφ

= (φ(p2))2+2φ(p2)φ(p3) + (φ(p3))2+1

> (φ(p2))2+1+ (φ(p3))2+1 carφ(p2)≥1 etφ(p3)≥1

= φ(¬p2) +φ(¬p3) par dénition deφ

= φ((¬p2∨ ¬p3)) par dénition deφ

(66)

Démonstration : le cas d'une négation (III)

Application de la deuxième règle à la racine : p=¬(p2∧p3) est transformé en(¬p2∨ ¬p3):

φ(¬(p2∧p3))

= φ((p2∧p3))2+1 par dénition deφ

= (φ(p2) +φ(p3))2+1 par dénition deφ

= (φ(p2))2+2φ(p2)φ(p3) + (φ(p3))2+1

> (φ(p2))2+1+ (φ(p3))2+1 carφ(p2)≥1 etφ(p3)≥1

= φ(¬p2) +φ(¬p3) par dénition deφ

= φ((¬p2∨ ¬p3)) par dénition deφ

(67)

Démonstration : le cas d'une négation (III)

Application de la deuxième règle à la racine : p=¬(p2∧p3) est transformé en(¬p2∨ ¬p3):

φ(¬(p2∧p3))

= φ((p2∧p3))2+1 par dénition deφ

= (φ(p2) +φ(p3))2+1 par dénition deφ

= (φ(p2))2+2φ(p2)φ(p3) + (φ(p3))2+1

> (φ(p2))2+1+ (φ(p3))2+1 carφ(p2)≥1 etφ(p3)≥1

= φ(¬p2) +φ(¬p3) par dénition deφ

= φ((¬p2∨ ¬p3)) par dénition deφ

(68)

Démonstration : le cas d'une négation (III)

Application de la deuxième règle à la racine : p=¬(p2∧p3) est transformé en(¬p2∨ ¬p3):

φ(¬(p2∧p3))

= φ((p2∧p3))2+1 par dénition deφ

= (φ(p2) +φ(p3))2+1 par dénition deφ

= (φ(p2))2+2φ(p2)φ(p3) + (φ(p3))2+1

> (φ(p2))2+1+ (φ(p3))2+1 carφ(p2)≥1 etφ(p3)≥1

= φ(¬p2) +φ(¬p3) par dénition deφ

= φ((¬p2∨ ¬p3)) par dénition deφ

(69)

Démonstration : le cas d'une négation (III)

Application de la deuxième règle à la racine : p=¬(p2∧p3) est transformé en(¬p2∨ ¬p3):

φ(¬(p2∧p3))

= φ((p2∧p3))2+1 par dénition deφ

= (φ(p2) +φ(p3))2+1 par dénition deφ

= (φ(p2))2+2φ(p2)φ(p3) + (φ(p3))2+1

> (φ(p2))2+1+ (φ(p3))2+1 carφ(p2)≥1 etφ(p3)≥1

= φ(¬p2) +φ(¬p3) par dénition deφ

= φ((¬p2∨ ¬p3)) par dénition deφ

(70)

Démonstration : le cas d'une négation (III)

Application de la deuxième règle à la racine : p=¬(p2∧p3) est transformé en(¬p2∨ ¬p3):

φ(¬(p2∧p3))

= φ((p2∧p3))2+1 par dénition deφ

= (φ(p2) +φ(p3))2+1 par dénition deφ

= (φ(p2))2+2φ(p2)φ(p3) + (φ(p3))2+1

> (φ(p2))2+1+ (φ(p3))2+1 carφ(p2)≥1 etφ(p3)≥1

= φ(¬p2) +φ(¬p3) par dénition deφ

= φ((¬p2∨ ¬p3)) par dénition deφ

(71)

Démonstration : le cas d'une négation (III)

Application de la deuxième règle à la racine : p=¬(p2∧p3) est transformé en(¬p2∨ ¬p3):

φ(¬(p2∧p3))

= φ((p2∧p3))2+1 par dénition deφ

= (φ(p2) +φ(p3))2+1 par dénition deφ

= (φ(p2))2+2φ(p2)φ(p3) + (φ(p3))2+1

> (φ(p2))2+1+ (φ(p3))2+1 carφ(p2)≥1 etφ(p3)≥1

= φ(¬p2) +φ(¬p3) par dénition deφ

= φ((¬p2∨ ¬p3)) par dénition deφ

(72)

Démonstration : le cas d'une négation (IV)

Il s'agit d'une application de la troisième règle à la racine : analogue au cas précédent.

(73)

Mise en forme normale de négation

Théorème : Pour toute formule il existe une formule équivalente en forme normale de négation.

Démonstration : Donné p, on lui applique des règles de transformation tant que possible. À montrer :

1. Le processus termine.

2. Chaque étape transforme une formule dans une formule équivalente.

3. Si aucune règle de transformation s'applique alors la formule est en forme normale de négation.

(74)

Mise en forme normale de négation

Théorème : Pour toute formule il existe une formule équivalente en forme normale de négation.

Démonstration : Donné p, on lui applique des règles de transformation tant que possible. À montrer :

1. Le processus termine.

2. Chaque étape transforme une formule dans une formule équivalente.

3. Si aucune règle de transformation s'applique alors la formule est en forme normale de négation.

(75)

Mise en forme normale de négation

Théorème : Pour toute formule il existe une formule équivalente en forme normale de négation.

Démonstration : Donné p, on lui applique des règles de transformation tant que possible. À montrer :

1. Le processus termine.

2. Chaque étape transforme une formule dans une formule équivalente.

3. Si aucune règle de transformation s'applique alors la formule est en forme normale de négation.

(76)

Mise en forme normale de négation

Théorème : Pour toute formule il existe une formule équivalente en forme normale de négation.

Démonstration : Donné p, on lui applique des règles de transformation tant que possible. À montrer :

1. Le processus termine.

2. Chaque étape transforme une formule dans une formule équivalente.

3. Si aucune règle de transformation s'applique alors la formule est en forme normale de négation.

(77)

Mise en forme normale de négation

Théorème : Pour toute formule il existe une formule équivalente en forme normale de négation.

Démonstration : Donné p, on lui applique des règles de transformation tant que possible. À montrer :

1. Le processus termine.

2. Chaque étape transforme une formule dans une formule équivalente.

3. Si aucune règle de transformation s'applique alors la formule est en forme normale de négation.

(78)

Démonstration de (1): Le processus termine

I À chaque transformation la mesureφdécroît strictement (montré au-dessus).

I Cette mesure ne peut jamais descendre au-dessous de 1 (petite proposition au-dessus)

I Conséquence : si la formule de départ p a la mesure φ(p) =n alors on peut au maximum appliquer n−1 transformations.

(79)

Démonstration de (1): Le processus termine

I À chaque transformation la mesureφdécroît strictement (montré au-dessus).

I Cette mesure ne peut jamais descendre au-dessous de 1 (petite proposition au-dessus)

I Conséquence : si la formule de départ p a la mesure φ(p) =n alors on peut au maximum appliquer n−1 transformations.

(80)

Démonstration de (1): Le processus termine

I À chaque transformation la mesureφdécroît strictement (montré au-dessus).

I Cette mesure ne peut jamais descendre au-dessous de 1 (petite proposition au-dessus)

I Conséquence : si la formule de départ p a la mesure φ(p) =n alors on peut au maximum appliquer n−1 transformations.

(81)

Démonstration de (2): Chaque étape transforme une formule dans une formule équivalente

Conséquence des lois de la logique propositionnelle.

(82)

Démonstration de (3): Si aucune règle de transformation s'applique alors la formule est en forme normale de négation

Supposons qu'aucune règle s'applique à p, et que p contient une sous-formule¬q.

I q ne peut pas être une négation (sinon : règle (1) s'applique)

I q ne peut pas être une conjonction (sinon : règle (2) s'applique)

I q ne peut pas être une disjonction (sinon : règle (3) s'applique) Donc, q doit être une variable.

(83)

Démonstration de (3): Si aucune règle de transformation s'applique alors la formule est en forme normale de négation

Supposons qu'aucune règle s'applique à p, et que p contient une sous-formule¬q.

I q ne peut pas être une négation (sinon : règle (1) s'applique)

I q ne peut pas être une conjonction (sinon : règle (2) s'applique)

I q ne peut pas être une disjonction (sinon : règle (3) s'applique) Donc, q doit être une variable.

(84)

Démonstration de (3): Si aucune règle de transformation s'applique alors la formule est en forme normale de négation

Supposons qu'aucune règle s'applique à p, et que p contient une sous-formule¬q.

I q ne peut pas être une négation (sinon : règle (1) s'applique)

I q ne peut pas être une conjonction (sinon : règle (2) s'applique)

I q ne peut pas être une disjonction (sinon : règle (3) s'applique) Donc, q doit être une variable.

(85)

Démonstration de (3): Si aucune règle de transformation s'applique alors la formule est en forme normale de négation

Supposons qu'aucune règle s'applique à p, et que p contient une sous-formule¬q.

I q ne peut pas être une négation (sinon : règle (1) s'applique)

I q ne peut pas être une conjonction (sinon : règle (2) s'applique)

I q ne peut pas être une disjonction (sinon : règle (3) s'applique) Donc, q doit être une variable.

(86)

Démonstration de (3): Si aucune règle de transformation s'applique alors la formule est en forme normale de négation

Supposons qu'aucune règle s'applique à p, et que p contient une sous-formule¬q.

I q ne peut pas être une négation (sinon : règle (1) s'applique)

I q ne peut pas être une conjonction (sinon : règle (2) s'applique)

I q ne peut pas être une disjonction (sinon : règle (3) s'applique) Donc, q doit être une variable.

(87)

Littéral, Clause, DNF

Denition

1. Un littéralest soit une variable propositionnelle, soit la négation d'une variable propositionnelle.

2. Uneclause conjonctive est soit la constante True, soit un littéral, soit une conjonction d'aux moins deux littéraux.

3. Une formule enforme disjonctive normale (DNF) est soit la constante False, soit une clause conjonctive, soit une disjonction d'aux moins deux clauses conjonctives.

(88)

Littéral, Clause, DNF

Denition

1. Un littéralest soit une variable propositionnelle, soit la négation d'une variable propositionnelle.

2. Uneclause conjonctive est soit la constante True, soit un littéral, soit une conjonction d'aux moins deux littéraux.

3. Une formule enforme disjonctive normale (DNF) est soit la constante False, soit une clause conjonctive, soit une disjonction d'aux moins deux clauses conjonctives.

(89)

Littéral, Clause, DNF

Denition

1. Un littéralest soit une variable propositionnelle, soit la négation d'une variable propositionnelle.

2. Uneclause conjonctive est soit la constante True, soit un littéral, soit une conjonction d'aux moins deux littéraux.

3. Une formule enforme disjonctive normale (DNF) est soit la constante False, soit une clause conjonctive, soit une disjonction d'aux moins deux clauses conjonctives.

(90)

I conjonction d'aux moins deux littéraux : formule de la forme

(l1∧(l2∧(l3∧. . .). . .)) où chacun des li est un littéral

I disjonction d'aux moins deux clauses conjonctives : formule de la forme

(c1∨(c2∨(c3∨. . .). . .)) où chacun des ci est une clause conjonctive.

(91)

I conjonction d'aux moins deux littéraux : formule de la forme

(l1∧(l2∧(l3∧. . .). . .)) où chacun des li est un littéral

I disjonction d'aux moins deux clauses conjonctives : formule de la forme

(c1∨(c2∨(c3∨. . .). . .)) où chacun des ci est une clause conjonctive.

(92)

Exemples

Clauses conjonctives

I True

I x

I (x∧y ∧z)

I (x∧ ¬x∧y)

Forme disjonctive normale

(x ∧y∧z)∨(x ∧ ¬x ∧y)∨x

(93)

Exemples

Clauses conjonctives

I True

I x

I (x∧y ∧z)

I (x∧ ¬x∧y)

Forme disjonctive normale

(x ∧y∧z)∨(x ∧ ¬x ∧y)∨x

(94)

Convention

I La conjonction d'une seule formule w est w

I La disjonction d'une seule formule w est w

(95)

Convention

I La conjonction d'une seule formule w est w

I La disjonction d'une seule formule w est w

(96)

Éléments neutres

I La conjonction de zéro formules donne True.

I Justication : Quand on ajoute zéro formules à une conjonction on devrait obtenir une formule équivalente.

I C.-à-d. : la conjonction de zéro formules est l'élément neutre de la conjonction : True

I Anologue à : la somme de zéro nombres est zéro Σii==01i =0

I La disjonction de zéro formules donne False (pareil)

(97)

Éléments neutres

I La conjonction de zéro formules donne True.

I Justication : Quand on ajoute zéro formules à une conjonction on devrait obtenir une formule équivalente.

I C.-à-d. : la conjonction de zéro formules est l'élément neutre de la conjonction : True

I Anologue à : la somme de zéro nombres est zéro Σii==01i =0

I La disjonction de zéro formules donne False (pareil)

(98)

Éléments neutres

I La conjonction de zéro formules donne True.

I Justication : Quand on ajoute zéro formules à une conjonction on devrait obtenir une formule équivalente.

I C.-à-d. : la conjonction de zéro formules est l'élément neutre de la conjonction : True

I Anologue à : la somme de zéro nombres est zéro Σii==01i =0

I La disjonction de zéro formules donne False (pareil)

(99)

Éléments neutres

I La conjonction de zéro formules donne True.

I Justication : Quand on ajoute zéro formules à une conjonction on devrait obtenir une formule équivalente.

I C.-à-d. : la conjonction de zéro formules est l'élément neutre de la conjonction : True

I Anologue à : la somme de zéro nombres est zéro Σii==01i =0

I La disjonction de zéro formules donne False (pareil)

(100)

Éléments neutres

I La conjonction de zéro formules donne True.

I Justication : Quand on ajoute zéro formules à une conjonction on devrait obtenir une formule équivalente.

I C.-à-d. : la conjonction de zéro formules est l'élément neutre de la conjonction : True

I Anologue à : la somme de zéro nombres est zéro Σii==01i =0

I La disjonction de zéro formules donne False (pareil)

(101)

Simplication de la dénition

1. Uneclause conjonctive est une conjonction de zéro ou plus littéraux.

2. Une formule est en forme disjonctive normale si elle est la disjonction de zéro ou plus clauses conjonctives.

(102)

Simplication de la dénition

1. Uneclause conjonctive est une conjonction de zéro ou plus littéraux.

2. Une formule est en forme disjonctive normale si elle est la disjonction de zéro ou plus clauses conjonctives.

(103)

NNF et DNF

I Toute formule en DNF est aussi en NNF

I Il y a des formules en NNF qui ne sont pas DNF.

I Exemple :

x∧(¬y ∨ ¬z)

(104)

NNF et DNF

I Toute formule en DNF est aussi en NNF

I Il y a des formules en NNF qui ne sont pas DNF.

I Exemple :

x∧(¬y ∨ ¬z)

(105)

NNF et DNF

I Toute formule en DNF est aussi en NNF

I Il y a des formules en NNF qui ne sont pas DNF.

I Exemple :

x∧(¬y ∨ ¬z)

(106)

Transformation en DNF

I D'abord mettre la formule en NNF

I Puis appliquer tant que possible les règles :

X∧(Y ∨Z) (X ∧Y)∨(X∧Z) (4) (X ∨Y)∧Z (X ∧Z)∨(Y ∧Z) (5)

(X ∧Y)∧Z X∧(Y ∧Z) (6)

(X ∨Y)∨Z X∨(Y ∨Z) (7)

(107)

Transformation en DNF

I D'abord mettre la formule en NNF

I Puis appliquer tant que possible les règles :

X∧(Y ∨Z) (X ∧Y)∨(X∧Z) (4) (X ∨Y)∧Z (X ∧Z)∨(Y ∧Z) (5)

(X ∧Y)∧Z X∧(Y ∧Z) (6)

(X ∨Y)∨Z X∨(Y ∨Z) (7)

(108)

Exemple

x1∧(¬(y1∨y2)∧¬¬(z1∨z2))

x1∧(¬(y1∨y2)∧(z1∨z2)) par règle 1 x1∧((¬y1∧ ¬y2)∧(z1∨z2)) par règle 3 x1∧(((¬y1∧ ¬y2)∧z1)∨((¬y1∧ ¬y2)∧z2)) par règle 4

x1∧((¬y1∧ ¬y2∧z1)∨(¬y1∧ ¬y2∧z2)) par règle 6 (2 fois) (x1∧ ¬y1∧ ¬y2∧z1)∨(x1∧ ¬y1∧ ¬y2∧z2) par règle 5

(109)

Exemple

x1∧(¬(y1∨y2)∧¬¬(z1∨z2))

x1∧(¬(y1∨y2)∧(z1∨z2)) par règle 1 x1∧((¬y1∧ ¬y2)∧(z1∨z2)) par règle 3 x1∧(((¬y1∧ ¬y2)∧z1)∨((¬y1∧ ¬y2)∧z2)) par règle 4

x1∧((¬y1∧ ¬y2∧z1)∨(¬y1∧ ¬y2∧z2)) par règle 6 (2 fois) (x1∧ ¬y1∧ ¬y2∧z1)∨(x1∧ ¬y1∧ ¬y2∧z2) par règle 5

(110)

Exemple

x1∧(¬(y1∨y2)∧¬¬(z1∨z2))

x1∧(¬(y1∨y2)∧(z1∨z2)) par règle 1 x1∧((¬y1∧ ¬y2)∧(z1∨z2)) par règle 3 x1∧(((¬y1∧ ¬y2)∧z1)∨((¬y1∧ ¬y2)∧z2)) par règle 4

x1∧((¬y1∧ ¬y2∧z1)∨(¬y1∧ ¬y2∧z2)) par règle 6 (2 fois) (x1∧ ¬y1∧ ¬y2∧z1)∨(x1∧ ¬y1∧ ¬y2∧z2) par règle 5

(111)

Exemple

x1∧(¬(y1∨y2)∧¬¬(z1∨z2))

x1∧(¬(y1∨y2)∧(z1∨z2)) par règle 1 x1∧((¬y1∧ ¬y2)∧(z1∨z2)) par règle 3 x1∧(((¬y1∧ ¬y2)∧z1)∨((¬y1∧ ¬y2)∧z2)) par règle 4

x1∧((¬y1∧ ¬y2∧z1)∨(¬y1∧ ¬y2∧z2)) par règle 6 (2 fois) (x1∧ ¬y1∧ ¬y2∧z1)∨(x1∧ ¬y1∧ ¬y2∧z2) par règle 5

(112)

Exemple

x1∧(¬(y1∨y2)∧¬¬(z1∨z2))

x1∧(¬(y1∨y2)∧(z1∨z2)) par règle 1 x1∧((¬y1∧ ¬y2)∧(z1∨z2)) par règle 3 x1∧(((¬y1∧ ¬y2)∧z1)∨((¬y1∧ ¬y2)∧z2)) par règle 4

x1∧((¬y1∧ ¬y2∧z1)∨(¬y1∧ ¬y2∧z2)) par règle 6 (2 fois) (x1∧ ¬y1∧ ¬y2∧z1)∨(x1∧ ¬y1∧ ¬y2∧z2) par règle 5

(113)

Exemple

x1∧(¬(y1∨y2)∧¬¬(z1∨z2))

x1∧(¬(y1∨y2)∧(z1∨z2)) par règle 1 x1∧((¬y1∧ ¬y2)∧(z1∨z2)) par règle 3 x1∧(((¬y1∧ ¬y2)∧z1)∨((¬y1∧ ¬y2)∧z2)) par règle 4

x1∧((¬y1∧ ¬y2∧z1)∨(¬y1∧ ¬y2∧z2)) par règle 6 (2 fois) (x1∧ ¬y1∧ ¬y2∧z1)∨(x1∧ ¬y1∧ ¬y2∧z2) par règle 5

(114)

Le théorème de terminaison

Proposition : Soitψ:Form→Ndénie par récurrence :

I ψ(x) =2 si x ∈V

I ψ((p1∧p2)) = (ψ(p1))2∗ψ(p2)

I ψ((p1∨p2)) =2ψ(p1) +ψ(p2) +1

I ψ(¬p) =ψ(p)

Alors pour toute formule p∈Form : Si p se transforme en q par une application d'une des règles 4 à 7 alorsψ(p)> ψ(q).

Démonstration : exercice

(115)

Le théorème de terminaison

Proposition : Soitψ:Form→Ndénie par récurrence :

I ψ(x) =2 si x ∈V

I ψ((p1∧p2)) = (ψ(p1))2∗ψ(p2)

I ψ((p1∨p2)) =2ψ(p1) +ψ(p2) +1

I ψ(¬p) =ψ(p)

Alors pour toute formule p∈Form : Si p se transforme en q par une application d'une des règles 4 à 7 alorsψ(p)> ψ(q).

Démonstration : exercice

(116)

Mise en forme DNF

Théorème : Pour toute formule il existe une formule équivalente en forme disjonctive normale.

Démonstration : Mettre en forme NNF, puis appliquer les règles de transformaton en DNF tant que possible. À montrer :

1. Le processus termine.

2. Le résultat est équivalent à la formule de départ.

3. À la n on obtient une DNF

(117)

Mise en forme DNF

Théorème : Pour toute formule il existe une formule équivalente en forme disjonctive normale.

Démonstration : Mettre en forme NNF, puis appliquer les règles de transformaton en DNF tant que possible. À montrer :

1. Le processus termine.

2. Le résultat est équivalent à la formule de départ.

3. À la n on obtient une DNF

(118)

Mise en forme DNF

Théorème : Pour toute formule il existe une formule équivalente en forme disjonctive normale.

Démonstration : Mettre en forme NNF, puis appliquer les règles de transformaton en DNF tant que possible. À montrer :

1. Le processus termine.

2. Le résultat est équivalent à la formule de départ.

3. À la n on obtient une DNF

(119)

Mise en forme DNF

Théorème : Pour toute formule il existe une formule équivalente en forme disjonctive normale.

Démonstration : Mettre en forme NNF, puis appliquer les règles de transformaton en DNF tant que possible. À montrer :

1. Le processus termine.

2. Le résultat est équivalent à la formule de départ.

3. À la n on obtient une DNF

(120)

Mise en forme DNF

Théorème : Pour toute formule il existe une formule équivalente en forme disjonctive normale.

Démonstration : Mettre en forme NNF, puis appliquer les règles de transformaton en DNF tant que possible. À montrer :

1. Le processus termine.

2. Le résultat est équivalent à la formule de départ.

3. À la n on obtient une DNF

(121)

Démonstration du Théorème de mise en DNF (I)

1. Le processus termine : conséquence de la proposition (décroissance de la fonction ψ).

2. La résultat est équivalent à la formule de départ : conséquence du fait que chaque étape de transformation est une

équivalence (voir les lois de la logique propositionnelle)

(122)

Démonstration du Théorème de mise en DNF (I)

1. Le processus termine : conséquence de la proposition (décroissance de la fonction ψ).

2. La résultat est équivalent à la formule de départ : conséquence du fait que chaque étape de transformation est une

équivalence (voir les lois de la logique propositionnelle)

Références

Documents relatifs

Vous déterminerez à l’aide de la méthode des arbres si les formules suivantes sont tautologiques :

Donner une formule normale disjonctive du connecteur d´ efini en

Pour déterminer les équilibres en stratégies mixtes, remarquons d’abord qu’il n’y a pas d’équilibre dans lequel un joueur joue une stra- tégie pure et l’autre joue

On construit le diagramme en bâtons de la variable aléatoire X puis on construit un histogramme à partir de ce diagramme en bâtons, chaque rectangle ayant pour aire la

Pour déterminer graphiquement l’image du nombre 6, on se place sur l’axe des abscisses, on repère l’abscisse 6 et à l’aide de la courbe C f , on trouve son

[r]

(2) pratique de À à 0,20 ; le sommet de la nappe, en régime d'écoulement permanent, est, au moins, à 0,25 m de la surface du sol et, de ce fait, si les drains sont posés à 1,00 m

Dans tout ce paragraphe, X désigne un schéma régulier de dimension 2 et de caractéristique p>Q tel que Qy soit localement libre de rang