• Aucun résultat trouvé

Problème de séparation par automate

N/A
N/A
Protected

Academic year: 2022

Partager "Problème de séparation par automate"

Copied!
2
0
0

Texte intégral

(1)

Problème de séparation par automate

Référence : Le langage des machines.

Robert Floyd et Richard Biegel 2011-2012

Prérequis :SAT est NP-complet.

Alice et Bob jouent à un jeu :

– Alice pense à un langageL, et doit le faire deviner à Bob.

– Alice donne à Bob un ensemble de mots deL,S, et un ensemble de mot qui ne sont pas dansL,T. – Bob doit trouver, à partir des exemples deS et des contre-exemples deT le langageL.

Le problème de séparation par automate consiste à chercher l’existence, pour des langagesS et T finis et un entierkdonnés, un automate fini déterministe àkétats qui accepte tous les mots deS, et refuse tous les mots deT.

Théorème 1

Le problème de séparation par automate (PSA) est NP-complet.

Démonstration. Tout d’abord, PSA est de classe NP. En effet, on peut en temps polynomial construire de façon non déterministe un automate, et le tester sur les mots deS etT.

Montrons donc que PSA est NP-dur. Nous allons pour cela réduire SAT à PSA : on suppose pouvoir résoudre PSA en temps polynomial, et on en déduit un algorothme de résolution de SAT en temps polynomial.

Soit donc F une formule du calcul propositionel sous forme normale conjonctive. On note C0, . . . , Cm1 les clauses deF, etx0, . . . , xv1 les variables deF.

Dans la suite on notera0, . . . , ℓ2v1les littérauxx0, . . . , xv1, x0, . . . , xv1. On pose aussik= 2v+m.

On va construire deux ensemblesSetT tels que siP est un automate fini déterministe qui sépareSetT, alors on peut déduire polynomialement deP une valuation qui valideF.

Notre automate va en fait choisir, pour chaque clause deF, un littéral qui doit être mis àvrai, tout en s’assurant qu’un littéral et sa négation ne soit pas mis àvraien même temps.

(1) On pose – S1={ε, ak}

T1={ai |0< i < k}.

CommeP akétats, on les appelera dans l’ordreC0, . . . , Cm1, ℓ0, . . . , ℓ2v1.C0est l’unique état initial, et l’unique état final.

(2) On veut que les arêtes issues d’un étatCi et étiquetée parb aillent vers un littéral deCi. On pose alors : T2={aibaj |06i < m, 06j < k}\{aiba2vj |j est un littéral deCi}.

1

(2)

Lemme 2

SiP rejette aussi les mots deT2, alors les arêtes issues d’un état Ci étiquetées parb vont vers un littéral deCi.

Démonstration. Supposons qu’une arête étiquetée parbaille deCi à Cj.

Soit alorsu=aibakj. Alorsuest accepté parP et appartient àT2, ce qui est impossible.

Donc les arêtes partant deCiétiquetée par bvont nécessairement vers unj.

La lecture deaibva de C0 à j, et la lecture ensuite dea2vj revient enC0, et doncaiba2vj est accepté

parP, et doncj est un littéral deCi. ♦

(3) On veut que toutes les arêtes issues de j étiquetées par b aillent soit vers C0 (on dit alors que j est véridique), soit versx0.

On pose alors

T3={am+jbah |06j <2v, 0< h < k, h6=v}.

Lemme 3

Un automate qui rejette aussiT3 respecte la condition ci-dessus.

Démonstration. SoitP qui rejette aussiT3. Supposons qu’il existe une arête étiquetée parbqui va dej à un étatqautre queC0 oux0.

Siq=Cw, w6= 0, alors le motu=am+jbarrive enCw, et donc le motam+jbamw+2v est accepté→non. Siq=w, w6=v, alors le motu=am+jb arrive enw, et doncam+jba2vw est accepté→non. ♦

(4) On veut interdire que les littérauxxj et xj soit véridiques en même temps. On pose donc T4={am+jbam+v+jb| 06j < v}.

Lemme 4

SiP refuse aussiT4, alorsP satisfait l’hypothèse ci-dessus.

Démonstration. SoitP qui refuse aussiT4. Supposons quexj

b

C0 etxj

b

C0.

Alorsam+jbarrive en C0, etam+v+jb aussi, et donc la concaténation des deux est acceptée→non. ♦ (5) Enfin, on veut que l’arête étiquetée par b issue de Ci (voir point (2)) aille vers un littéral véridique. On

pose :

S5={aibb| 06i < m}.

On prend alorsS=S1S5et T =T1T2T3T4.

SiP à kétats accepteS et rejetteT, alors on construit la valuation :

ρ(xi) = (

vrai si (xj

b

C0) arête deP faux sinon

Alors la valuationρsatisfaitF.

2

Références

Documents relatifs

Beauquier, Berstel,

[r]

Il est possible d’associer ` a chaque score possible un ´ etat, puis il faut alors construire une table de transition en fonction du point marqu´ e (c’est-` a-dire de la lettre lue).

Pour chaque langage ci-dessous, donner une expression r´ eguli` ere le d´ ecrivant, puis un automate re- connaissant le langage.. l’ensemble des mots de

[r]

Introduction Automate Fini Non-d´ eterministe D´ eterminisation Th´ eor` eme de Kleene.. Objectifs de la s´

[r]

Ces capteurs sont montés en série avec la charge à commander (l’entrée automate). Ils sont en général alimentés par la source de tension 24V disponible en façade de l’A.P.I.