Un automate Xor non déterministe (NXA) est syntaxiquement un NFA, mais un mot est dit accepté par NXA s'il a un nombre impair de chemins d'acceptation (au lieu d'au moins un chemin d'acceptation dans le cas NFA).
Il est facile de voir que pour un langage régulier fini , il existe un NFA minimal qui ne contient aucun cycle (si un cycle était à la fois accessible depuis l'état initial et que vous passez de celui-ci à un état acceptant - votre langue n'est pas fini).
Ce n'est pas nécessairement le cas pour les NXA.
Notons la complexité d'état xor d'un langage L ,
et par la complexité d'état xor acyclique de L (c'est-à-dire la taille du plus petit NXA acyclique qui accepte L ).
Est-il vrai que pour tout langage fini : a x s c ( L ) = x s c ( L ) ?
Réponses:
Je pense que la réponse est affirmative. Il y a peut-être une preuve plus simple, mais voici un croquis d'une preuve qui utilise l'algèbre linéaire.
Comme domotorp, nous verrons une configuration d'un automate XOR à n états comme un vecteur dans V = GF (2) n .
Soit L un langage fini sur un alphabet Σ = {1,…, k }, et considérons un automate XOR pour L avec le nombre minimum d'états. Soit n le nombre d'états. Nous supposons que les états sont étiquetés 1,…, n et l'état 1 est l'état initial.
Nous avons d'abord mis en place la notation. Soit v 0 = (1, 0,…, 0) T ∈ V le vecteur élémentaire correspondant à l'état initial, et soit s le vecteur ligne dont la i ème entrée est 1 si et seulement si l'état i est un état accepteur. Le sous-espace R = { v : s v = 0} de V correspond aux vecteurs de configuration rejetés.
Pour chaque a ∈Σ, soit A a la matrice n × n sur GF (2) qui représente la transition provoquée par la lettre a . Par exemple, le vecteur de configuration après lecture de la chaîne d'entrée a b est A b A a v 0 . Pour une chaîne σ = a 1 … a t , on note le produit A a t … A a 1 par M ( σ ). Soit S = { A 1,…, A k }.
Un sous - espace W de V est dit S - invariant lorsque A W ⊆ W pour chaque A ∈ S . Dans notre contexte, cela signifie qu'une fois que le vecteur de configuration passe dans W , il n'y a aucun moyen de sortir de W en lisant plus de lettres.
Parce que cet automate XOR a le nombre minimum d'états, nous avons les propriétés suivantes.
Parce que L est fini, laisser m soit un nombre entier plus grand que la longueur d'une chaîne de caractères dans L .
Lemme 1 . Pour toute chaîne σ de longueur au moins m , nous avons que M ( σ ) = 0.
Preuve. Premièrement, nous prouvons que pour toute chaîne σ de longueur au moins m , nous avons que M ( σ ) v 0 = 0. Soit W le sous-espace de V étendu par { M ( σ ) v 0 : σ est une chaîne de longueur au moins m }. Par définition, W est S -variant. Parce que l'automate XOR en question rejette ces chaînes σ , W est contenu dans R . Par conséquent W = {0}, ce qui signifie queM ( σ ) v 0 = 0 pour toutes ces chaînes σ .
Considérons maintenant tout vecteur v ∈ V . Parce que le seul sous-espace S -invariant de V qui contient v 0 est V lui-même, v peut être écrit comme une combinaison linéaire de vecteurs de la forme M ( τ ) v 0 pour certaines chaînes τ . Parce que M ( σ ) M ( τ ) v 0 = M ( τ σ ) v 0= 0 (cette dernière égalité découle du paragraphe précédent car la longueur de τ σ est au moins m ), elle considère que M ( σ ) v = 0. ■
Nous avons besoin d'un fait de plus de l'algèbre linéaire.
Lemme 2 . Soit A 1 , ..., A k être n × n matrices sur un corps, et définissent M ( σ ) comme ci - dessus. S'il y a m ≥0 tel que M ( σ ) = 0 pour chaque chaîne σ de longueur au moins m , alors les matrices A 1 ,…, A k sont simultanément similaires à des matrices triangulaires strictement inférieures (c'est-à-dire qu'il existe un n × n matrice non singulière P telle que les matrices P -1 A1 P ,…, P −1 A k P sont des triangles strictement inférieurs).
Le cas de k = 1 est une caractérisation bien connue des matrices nilpotentes, et le lemme 2 peut être démontré de la même manière.
Considérons maintenant l' automate XOR à n états dans lequel la matrice de transition correspondant au symbole a ∈Σ est donnée par P −1 A a P , le vecteur de configuration initial est donné par P −1 v 0 , et le vecteur caractéristique (ligne) de les Etats acceptant est donnée par s P . Par construction, cet automate XOR accepte le même langage L. Parce que les matrices de transition sont strictement triangulaires inférieures, chaque front de transition dans cet automate XOR passe d'un état avec un index plus petit à un état avec un index plus grand, et donc cet automate XOR est acyclique. Bien que le vecteur de configuration initial puisse avoir plus d'un 1, il est facile de convertir cet automate XOR en un automate XOR habituel avec un seul état initial pour le même langage sans augmenter le nombre d'états ou ruiner l'acyclicité.
la source
Je pense que je peux prouver que les cycles n'aident pas l'alphabet unaire.
Considérez la matriceM plus de F2 décrivant à partir de quel état dans quel état nous pouvons obtenir en une seule étape et le vecteur vn plus de F2 décrivant les états possibles de l'automate mod2 après n étapes, donc vn= Mnv0 , où v0= ( 1 , 0 , . . , 0 ) décrit l'état de départ. Si nous savons qu'après un certain tempst pas s ⋅ v = 0 (où s est le vecteur caractéristique des états accepteurs), cela signifie que nous sommes dans un certain sous-espace. La dimension deMn est strictement monotone décroissant pendant un certain temps, puis constant. Cela signifie que nous devons atteindre le subsapces ⋅ vn= 0 après au plus autant d'étapes, autant d'états que l'automate a. Mais il y a ensuite un automate sans cycle qui ne compte que la longueur du mot.
la source