2FA complexité de l'état de k-Clique?

15

Sous une forme simple:

Un automate fini bidirectionnel peut-il reconnaître des graphes en vertex contenant un triangle avec des états ?vo(v3)

Détails

D' un intérêt ici sont graphiques de -vertex codées en utilisant une séquence de bords, chaque bord étant une paire de sommets distincts de .v{0,1,,v1}

Supposons que est une séquence d'automates finis bidirectionnels (déterministes ou non déterministes), tels que reconnaît -Clique sur les graphiques d'entrée -vertex et possède des états . Une forme générale de la question est alors: Est-ce que ?(Mv)Mvkvs(v)s(v)=Ω(vk)

Si et pour une infinité de , alors NL ≠ NP. Moins ambitieux, je stipule donc que est fixe, et le cas est le premier cas non trivial.k=k(v)=ω(1)s(v)vk(v)vkk=3

Contexte

Un automate fini bidirectionnel (2FA) est une machine de Turing qui n'a pas d'espace de travail, seulement un nombre fixe d'états internes, mais peut déplacer sa tête d'entrée en lecture seule d'avant en arrière. En revanche, le type habituel d'automate fini (1FA) déplace sa tête d'entrée en lecture seule dans une seule direction. Les automates finis peuvent être déterministes (DFA) ou non déterministes (NFA), ainsi qu'avoir un accès unidirectionnel ou bidirectionnel à leur entrée.

Une propriété de graphe est un sous-ensemble de graphes. Que désignent les graphiques de -vertex avec la propriété . Pour chaque propriété de graphe , le langage peut être reconnu par un 1DFA avec au plus états, en utilisant un état pour chaque graphe possible et en les étiquetant selon , et les transitions entre états étiquetés par des bords. est donc une langue régulière pour toute propriété . Par le théorème de Myhill-Nerode, il y a alors un unique plus petit isomorphisme 1DFA qui reconnaît . Si cela a 2 s ( vQ v v Q Q Q v 2 v ( v - 1 ) / 2 Q Q v Q Q vQQvvQQQv2v(v1)/2QQvQQv2s(v) , alors les limites de gonflement standard donnent qu'un 2FA reconnaissantQv a au moinss(v)Ω(1) états. Ainsi, cette approche via des limites de gonflement standard ne donne au maximum qu'unelimite inférieurequadratique envsur le nombre d'états dans un 2FA pour toutQv (même lorsqueQest dur ou indécidable).

-Clique est la propriété graphique qui contient unsous-graphe k -vertex complet. La reconnaissance de k -Clique v peut être effectuée par un 1NFA qui choisit d'abord de manière non déterministe l'une desdifférentes-cliquespotentiellesà rechercher, puis analyse l'entrée une fois, en recherchant chacun des bords requis pour confirmer la clique, et garder une trace de ces bords en utilisantétats pour chacune des différentes cliques potentielles. Un tel 1NFA aétats, où. Lorsqueest fixe, il s'agit dekkkv k2k(k-1)/2 ( v(vk)k2k(k1)/21cvekΘ(vk)k=3(vk)2k(k1)/2=(cv2(k1)/2/k)k.vk1cvekΘ(vk)États. Autoriser l'accès bidirectionnel à l'entrée permet potentiellement une amélioration par rapport à cette limite unidirectionnelle. La question est alors de demander à si un 2FA peut faire mieux que cette limite supérieure de 1FA.k=3

Addendum (2017-04-16): voir aussi une question connexe pour le temps déterministe et une belle réponse couvrant les algorithmes les plus connus . Ma question porte sur l'espace non uniforme non déterministe. Dans ce contexte, la réduction à la multiplication matricielle utilisée par les algorithmes efficaces en temps est pire que l'approche par force brute.

András Salamon
la source
J'aime vraiment ces questions! Merci de le partager! :)
Michael Wehar

Réponses:

7

Il me semble que les triangles peuvent être faits par un 2FA avec un état (n étant le nombre de sommets).O ( n 2 )AO(n2)

Pour l'idée est la suivante:k=3

  1. Dans la phase 1, choisit une arête et stocke dans son état( i , j ) ( p h a s e 1 , i , j )A(i,j)(phase1,i,j)
  2. Dans la phase 2, il se déplace vers un bord de la forme ou et suppose un état de la forme( m , i ) ( p h a s e 2 , j , m )(i,m)(m,i)(phase2,j,m)
  3. Dans la phase 3, il vérifie qu'il y a un bord ou et suppose un état d'acceptation s'il en trouve un.( m , j )(j,m)(m,j)

Cela peut en fait presque être fait de gauche à droite (alors pourrait décider de façon non déterministe d'aller d'abord pour ou dans la phase 2). Cependant, si le 2ème bord se présente sous la forme , doit d'abord lire puis , c'est-à-dire qu'un seul pas à gauche est nécessaire ici.( j , m ) ( m , j ) ( m , i ) A i mA(j,m)(m,j)(m,je)UNEjem

Il devrait en résulter des automates avec des états pour -Clique pour en devinant d'abord un ensemble de taille et en vérifiant que les nœuds de sont reliés par paires par des arêtes et , pour chacun des i, j, m dans ce qui précède, la vérification qu'elles ont des bords à tous les nœuds de .k k > 3 S k - 3 S SO(nk-1)kk>3Sk-3SS

Thomas S
la source
Je ne vois pas comment c'est ? Trois sommets sont suivis. i , j , mO(n2)je,j,m
András Salamon,
Seulement deux à la fois. La lecture en phase 2 se fait en deux transitions. À la lecture de , passe essentiellement de (phase 1, i, j) à (phase 1a, i, j) (indiquant qu'il vient de voir ) et à l'étape suivante dans (phase 2, j, m). À ce stade, cela se fait avec , car il a déjà vu et et seulement doit être vérifié. i A i i ( i , j ) ( i , m ) ( j , m )(je,m)jeUNEjeje(je,j)(je,m)(j,m)
Thomas S
Si le nombre d'arêtes et de sommets est à peu près le même, je pense que cela fonctionne bien, mais le cas intéressant est lorsque . En d'autres termes, je pense que votre approche utilise au moins les états . v ee=Ω(v2)ve
Michael Wehar
1
Je pense que tu as raison. Si l'entrée est donnée dans un format agréable, cela fonctionne. :)
Michael Wehar
1
@Marzio: non, ça dit (non, ça dit déterministe ou non déterministe)
Thomas S