Séparation des listes de mots

10

Il existe un problème ouvert dans les langages formels connu sous le nom de problème de séparation; qui est brièvement indiqué comme étant donné deux chaînes distinctes de longueur , la taille d'un DFA est nécessaire pour les "séparer", ce qui signifie accepter une chaîne mais rejeter l'autre.n

Voici quelques articles pertinents 1 , 2 . (J'en ai quelques autres mais je n'ai pas assez de réputation pour les poster).

Tous discutent du problème de la séparation de deux chaînes distinctes. Je me demande s'il y a eu des travaux dans le domaine de la séparation des listes de chaînes, sens donné deux listes de chaînes, et B , quelle taille DFA est nécessaire d'accepter toutes les chaînes en A et rejeter toute chaîne dans B . Ce problème est équivalent au regex golf.ABAB

Il y a quelques questions de base sur lesquelles j'ai travaillé, par exemple si l'une des listes est de taille ou si toutes les chaînes sont de longueurs différentes.1

J'ai cherché autour mais je n'ai trouvé aucun document traitant de ce type de problème. Y a-t-il eu des recherches dans ce domaine?

Merci d'avance.

MRC
la source
2
fyi identique à DFA minimal donné en mots et en mots
vzn
Le lien de VZN est super! Cependant, je pense que vous pouvez trouver encore plus d'informations si vous jetez un coup d'œil dans l'annexe de: "Ordinateurs et intractabilité: un guide pour la théorie de la
conformité
klog(n)log(log(n))
1
Par Gold1978, nous savons que le problème de déterminer si deux listes peuvent être séparées par un DFA d'une taille donnée est NP-complet. Si vous modifiez le problème pour dire séparé par une machine de Turing avec une limite de temps écrite en unaire, alors on ne sait pas si le problème est NP-complet. Il a été suggéré que ce problème pourrait être lié au problème de circuit minimum, auquel cas il résoudrait les problèmes ouverts de complexité structurelle si vous montriez qu'il était en P ou s'il était NP-complet.
Michael Wehar

Réponses:

8

KLMKMML=

KLM

Dans un article de 2013 , les auteurs indiquent:

Bien que le problème de séparation survienne fréquemment, il n'a cependant pas été systématiquement étudié, même dans le cas restreint, mais toujours difficile, des langues régulières.

Ils mentionnent cependant plusieurs cas particuliers qui ont été résolus, et qui englobent très certainement le cas fini.

Vous pouvez également examiner l' interpolant Craig , un problème similaire sur les formules logiques. L'interpolation est utilisée par exemple dans la vérification de modèle basée sur SAT, dans un cadre qui, je pense, est plus proche de ce que vous recherchez (en particulier en ce qui concerne la finitude de l'entrée). Ce document devrait être un bon point de départ.

Boson
la source
J'apprécie que vous ayez partagé cela. Je ne connaissais pas ce papier. Je vous remercie. :)
Michael Wehar
3

AB

C'est ce qu'on appelle le «problème des mots de séparation». Les diapositives de Shallit couvrent à peu près tout ce qui est connu sur le problème (voir diapositives1 et diapositives2 ).

RB
la source
Si vous êtes intéressé à trouver le plus petit DFA pour le cas spécial, voir: cstheory.stackexchange.com/questions/29119/…
Michael Wehar