Esiste un'operazione di divisione ben definita su automi finiti?


15

Sfondo:

Dati due automi finiti deterministici A e B, formiamo il prodotto C lasciando che gli stati in C siano il prodotto cartesiano degli stati in A e degli stati in B. Quindi, scegliamo transizioni, stato iniziale e stati finali in modo che la lingua accettata da C è l'intersezione delle lingue per A e B.

Domande:

(1) Possiamo "dividere" C per B per trovare A? A è addirittura unico, fino all'isomorfismo? Teniamo molto ai diagrammi di stato, non alle lingue qui e sotto. Pertanto, non consentiamo di comprimere i diagrammi di stato per ridurre il numero di stati.

(2) Se A è unico, esiste un algoritmo efficiente per trovarlo?

(3) Ogni automa deterministico finito ha una fattorizzazione unica in "numeri primi". Un primo qui significa un automa che non può essere preso in considerazione, cioè scritto come un prodotto di 2 automi più piccoli.

  • Lavora con @MichaelWehar

5
La decomposizione classica è la teoria di Krohn-Rodi - molto da guardare.

2
Considera i derivati ​​di Brzozowski. en.wikipedia.org/wiki/Brzozowski_derivative
Vijay D

2
@halfTrucker La teoria di Krohn-Rodi si occupa del prodotto ghirlanda. L'OP chiede informazioni sul prodotto cartesiano.
scaaahu,

2
Grazie @halfTrucker, questo è davvero interessante! Come dice scaaahu, sto cercando un prodotto cartesiano, ma il tuo riferimento è ancora ottimo.
Whosyourjay,

Risposte:


8

Dai un'occhiata a questo articolo del MFCS 2013 , che studia la composizionalità negli automi. Forse aiuterà.


2
+1 per il collegamento. Citando dalla discussione dell'articolo, mentre il caso generale è ancora aperto , sembra che l'articolo esplori solo il caso degli automi di permutazione. Ci sono sviluppi più recenti per casi generali? Intendo nel senso del prodotto cartesiano? (La teoria di Krohn-Rodi si occupa del prodotto ghirlanda) Grazie.
scaaahu,

3
Non conosco sviluppi recenti. Posso dirti che non vi è stato alcun lavoro di follow-up diretto su questo documento. Ma ciò può indicare che il problema non è in effetti facile.
Shaull

4

Diamo un modo ovvio per recuperare un "fattore" dell'automa del prodotto. Se e A = A 1 × A 2 indica l'automa del prodotto, quindi se definiamo π 1 ( ( q , q ) ) : = q ovvero dimenticandosi di A 2UNio=(Qio,δio,q0io,Fio),io=1,2UN=UN1×UN2

π1((q,q')): =q
UN2o proiettando sul secondo componente, abbiamo , anche se vogliamo conoscere δ 1 ( q , x ) selezionare un po 'di q Q 2 e calcolare nell'automa del prodotto π ( ( δ 1 ( q , x ) , δ 2 ( q , x ) ) = δ 1 ( qQ1=π(Q1×Q2)δ1(q,X)q'Q2 , quindi possiamo anche recuperare la transizione in A 1 .π((δ1(q,X),δ2(q',X))=δ1(q,X)UN1

Quindi, se sappiamo che un automa è un automa cartesiano (o esterno) del prodotto, possiamo recuperare facilmente i fattori.

Ma suppongo che questo non sia ciò che hai in mente riguardo alle tue altre domande. Qui sorgono due domande (di seguito per automa isomorfismo intendo isomorfo come grafico di stato, cioè senza riguardo agli stati iniziali o finali, come hai detto che la lingua non è tanto un problema qui):

1) Dato un automa isomorfo di un automa del prodotto (cioè potrebbe essere decomposto in qualche modo) di un numero finito di automi, questa decomposizione è essenzialmente unica? (dato che i fattori non potrebbero essere ulteriormente decomposti, altrimenti ovviamente no). Ulteriori presicely se per indecomposable automi A i , B j implica questo k = l e AIB π ( i ) per un certo riordino

UN1×...×UNKB1×...×Bl
UNio,BjK=lUNioBπ(io) . Immagino che sia vero, ma non ho ancora prove.π:{1,...K}{1,...K}

2) dati due automi , fa esiste un terzo automa C tale che A = B × C .UN,BCUN=B×C

È facile ricavare le condizioni necessarie affinché ciò avvenga, ma non vedo alcun criterio sufficiente per un automa come fattore di un altro.

π1((δ1(q,X),δ2(q',X))=δ1(q,X)=δ1(π1(q,q'),X)
qQ1,q'Q2πUN1×UN2UN2

UN BBUN

BUN

MNMN

H. Straubing, P. Weil Un'introduzione agli automi finiti e alla loro connessione alla logica,

Sito web del corso con molte informazioni.

Nota : esiste anche un'altra nozione di " quoziente ", vedi Wikipedia: automa del quoziente , ma questa è solo una regola per il collasso degli stati e utilizzata negli algoritmi di apprendimento / inferenza delle lingue o nella minimizzazione degli stati.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.