Upload
chfakht
View
214
Download
0
Embed Size (px)
DESCRIPTION
http://www.cmi.univ-mrs.fr/~preaux/PDF/pdf_proteges/PLog/PLogTD4.pdfc
Citation preview
Procdure de preuve par rfutation
Copyr
ight :
Jean-P
hilipp
e Pra
ux
Procdure de preuve par rfutation
Exemple dutilisation.
Non-dterminisme ce stade de la procdure.
Stratgies de preuve. Procdures dterministesCo
pyrigh
t : Jea
n-Phili
ppe P
raux
Exemple : Supposons vraies les assertions suivantes : Tout dclar coupable aura la tte
tranche. Certains criminels sont en libert. On ne peut pas la fois avoir la tte
tranche et tre en libert.On voudrait prouver que : Certains criminels nont pas t dclars
coupables.
Copyr
ight :
Jean-P
hilipp
e Pra
ux
On choisit un langage pour traduire ces noncs. Ils deviennent :
On veut prouver que :
On forme sa ngation :
1- , ( ) ( )x coupable x guillotine x 2- ( ( ) ( ))x, criminel x libert x
3- , ( ( ) ( ))x guillotine x libert x
C- ( ( ) ( ))x, criminel x coupable x
C- ( ( ) ( ))x, criminel x coupable x Copyr
ight :
Jean-P
hilipp
e Pra
ux
On met sous forme clausale :
1- , ( ) ( )x coupable x guillotine x
2- ( ( ) ( ))x, criminel x libert x
3- , ( ( ) ( ))x guillotine x libert x
C- ( ( ) ( ))x, criminel x coupable x Co
pyrigh
t : Jea
n-Phili
ppe P
raux
On met sous forme clausale :
1- , ( ) ( )x coupable x guillotine x
2- ( ( ) ( ))x, criminel x libert x
3- , ( ( ) ( ))x guillotine x libert x
C- ( ( ) ( ))x, criminel x coupable x
( ) ( )coupable x guillotine x
Copyr
ight :
Jean-P
hilipp
e Pra
ux
On met sous forme clausale :
1- , ( ) ( )x coupable x guillotine x
2- ( ( ) ( ))x, criminel x libert x
3- , ( ( ) ( ))x guillotine x libert x
C- ( ( ) ( ))x, criminel x coupable x
( ) ( )coupable x guillotine x
criminel( k ) libert( k )
Copyr
ight :
Jean-P
hilipp
e Pra
ux
On met sous forme clausale :
1- , ( ) ( )x coupable x guillotine x
2- ( ( ) ( ))x, criminel x libert x
3- , ( ( ) ( ))x guillotine x libert x
C- ( ( ) ( ))x, criminel x coupable x
( ) ( )coupable x guillotine x
criminel( k ) libert( k )
guillotine( y ) libert( y )
Copyr
ight :
Jean-P
hilipp
e Pra
ux
On met sous forme clausale :
1- , ( ) ( )x coupable x guillotine x
2- ( ( ) ( ))x, criminel x libert x
3- , ( ( ) ( ))x guillotine x libert x
C- ( ( ) ( ))x, criminel x coupable x
( ) ( )coupable x guillotine x
criminel( k ) libert( k )
guillotine( y ) libert( y )
criminel( z ) coupable( z ) Copyr
ight :
Jean-P
hilipp
e Pra
ux
On obtient la forme clausale :
{ coupable( x ) guillotine( x );criminel( k );libert( k );guillotine( y ) libert( y );criminel( z ) coupable( z )}
Copyr
ight :
Jean-P
hilipp
e Pra
ux
criminel( k ) criminel( z ) coupable( z )
( z / k )
coupable( k )
Copyr
ight :
Jean-P
hilipp
e Pra
ux
criminel( k ) criminel( z ) coupable( z )
( z / k )
coupable( k ) coupable( x ) guillotine( x )
( x / k )
guillotine( k )
Copyr
ight :
Jean-P
hilipp
e Pra
ux
criminel( k ) criminel( z ) coupable( z )
( z / k )
coupable( k ) coupable( x ) guillotine( x )
( x / k )
guillotine( k ) guillotine( y ) libert( y )
( y / k )
libert( k )
Copyr
ight :
Jean-P
hilipp
e Pra
ux
criminel( k ) criminel( z ) coupable( z )
( z / k )
coupable( k ) coupable( x ) guillotine( x )
( x / k )
guillotine( k ) guillotine( y ) libert( y )
( y / k )
libert( k ) libert( k )( )+
CQFDCopyr
ight :
Jean-P
hilipp
e Pra
ux
Procdure de preuve par rfutation
Pour prouver que est consquence logique de Former la forme clausale C de
utiliser pour cela lalgorithme de la partie 2. Tant que la clause vide nest pas dans C.
Faire :Choisir deux clauses de C. Leur appliquer si cest possible le principe de rsolution (pour cela utiliser lalgorithme dunification de littraux).Adjoindre la clause rsolvante obtenue C.
1 2 n{ , ,..., }
1 n...
Copyr
ight :
Jean-P
hilipp
e Pra
ux
Procdure de preuve par rfutationSi lon produit la clause vide on a bien prouv la conclusion recherche.Si la conclusion est vraie il existe une faon de mener la procdure qui aboutit la clause vide.Si la conclusion nest pas vraie : Parfois on peut sen rendre compte (ex: que des
littraux positifs) En gnral la procdure tournera indfiniment sans
ne jamais aboutir la clause vide . Indcision (on retrouve ici lindcidabilit)
Ca ne marche que lorsque la conclusion est vraie !Co
pyrigh
t : Jea
n-Phili
ppe P
raux
Non dterminisme
Si la conclusion est vraie il existe une faon de mener la procdure qui aboutit la clause vide.Seulement en ltat, la procdure ncessite un choix de lutilisateur, dans le choix des clauses.En ltat, mme lorsque la conclusion est vraie on nest pas assur de produire la clause videCo
pyrigh
t : Jea
n-Phili
ppe P
raux
Stratgie de rsolution
Une stratgie est une faon deffectuer les choix inhrents la procdure.
Il sagit en gnral dun ordonnancement ou dune restriction dans la production des clause.Une stratgie fournit une approche dterministe lapplication de la procdure. Co
pyrigh
t : Jea
n-Phili
ppe P
raux
Stratgies compltes, effectivement compltes
Une stratgie est complte si pour tout ensemble inconsistant de clauses, elle est mme de produire la clause vide.
Une stratgie est effectivement compltelorsque pour tout ensemble inconsistant de clauses, elle est sre de produire la clause vide.Co
pyrigh
t : Jea
n-Phili
ppe P
raux
Graphe de drivation, de rfutation
Un graphe de drivation contient toutes les clauses rsolvantes. Il est en gnral infini.
Exemple. Considrons les hypothses :
On veut prouver la conclusion :
, ,( ( ) ( )),( ( ) ( , ))x y P x Q yz P b R a z
( , ) , ( )R a b u Q u Cop
yright
: Jean
-Philip
pe Pr
aux
On obtient la forme clausale :
{ ( ) ( ( ));( ) ( , );( , );( )}
P x Q f xP b R a yR a bQ z
Copyr
ight :
Jean-P
hilipp
e Pra
ux
Graphe de drivation
( ) ( ( ))P x Q f x ( ) ( , )P b R a y ( , )R a b ( )Q z
( ( )) ( , )Q f b R a y ( )P x ( )P b
( ( ))Q f b ( ( ))Q f b ( , )R a y ( , )R a y+
+ + + +Co
pyrigh
t : Jea
n-Phili
ppe P
raux
Graphe de rfutation
( ) ( ( ))P x Q f x ( ) ( , )P b R a y ( , )R a b ( )Q z
( ( )) ( , )Q f b R a y ( )P x ( )P b
( ( ))Q f b ( ( ))Q f b ( , )R a y ( , )R a y+
+ + + +
Cest un sous-graphe qui aboutit la clause videCop
yright
: Jean
-Philip
pe Pr
aux
Graphe de rfutation
( ) ( ( ))P x Q f x ( ) ( , )P b R a y ( , )R a b ( )Q z
( ( )) ( , )Q f b R a y
( ( ))Q f b
+
Cest un sous-graphe qui aboutit la clause videCop
yright
: Jean
-Philip
pe Pr
aux
Stratgie en largeur
On note lensemble de clauses initiales
On note lensemble des clauses rsolvantes dont les parents sont dans
Pour , on note lensemble des rsolvantes dont un parent est dans et lautre parent est dans un pour .
On produit successivement , , etc jusqu aboutir la clause vide.
0C
1C0C
1n nC1nC
iC i n