Un automa finito deterministico (DFA) è un modello di macchina a stati in grado di accettare tutti e solo i linguaggi regolari. I DFA possono essere (e solitamente sono) definiti in modo tale che ogni stato deve fornire una transizione per tutti gli elementi dell'alfabeto di input; in altre parole, la funzione di transizione dovrebbe essere una funzione (totale).
Immagina quello che chiameremo un automa finito doppiamente deterministico (DDFA). È definito in modo simile a un DFA, con due eccezioni: primo, invece della transizione che conduce da uno stato a un altro stato per ogni possibile simbolo di input, deve portare a due stati distinti; secondo, per accettare una stringa, tutti i potenziali percorsi devono soddisfare l'una o l'altra delle seguenti condizioni:
- Tutti i potenziali percorsi attraverso il DDFA portano a uno stato accettante (lo chiameremo DDFA di tipo 1).
- Tutti i potenziali percorsi attraverso il DDFA portano allo stesso stato di accettazione (lo chiameremo DDFA di tipo 2).
Ora per la mia domanda:
Quali lingue accettano i DDFA di tipo 1 e di tipo 2? In particolare, è possibile che , o ? Nel caso in cui , esiste una facile descrizione di ?L ( D D F
Le prove (o almeno schizzi moderatamente arricchiti) sono apprezzate, se non sono troppo complicate.