Occorre innanzitutto proporre un automa improprio
(Mealy) che risolva il problema. Successivamente, bisogna accertarsi della
sua minimalità, verificando che esso sia in forma ridotta e che
ogni suo stato risulti raggiungibile dallo stato in cui ci si trova prima
di procedere all'interrogazione. Qualora l'automa proposto non sia minimo,
si deve utilizzare l'algoritmo di Paull-Unger per la determinazione delle
classi di indistinguibilità. Si ottiene così un automa equivalente
in forma ridotta, dal quale vanno poi eliminati gli stati non raggiungibili
dallo stato in cui ci si trova prima di procedere all'interrogazione.
INGRESSI
Gli ingressi dell'automa sono sette:
1= lettura del carattere "1" |
2 = lettura del carattere "2" |
3 = lettura del carattere "3" |
4 = lettura del carattere "4" |
5 = lettura di un qualsiasi carattere diverso
da "1","2","3" o "4" |
6 = inizio
dell'interrogazione |
7 = interruzione
(fine) dell'interrogazione |
-
USCITE
Le uscite dell'automa sono due:
1 = esame della registrazione in corso, oppure
registrazione non di interesse, oppure registrazione contenente
dati errati, oppure nessuna registrazione |
2 = registrazione di interesse |
STATI:
È necessario poter distinguere le seguenti
situazioni:
- sistema spento (è un particolare stato);
- nessuna registrazione in esame (è un
altro particolare stato);
- ritrovamento del primo carattere di una registrazione
(sono più stati, poichè esistono più possibilità);
- ritrovamento del secondo carattere di una
registrazione (sono più stati, poichè esistono più
possibilità).
Ciò è consentito, ad esempio, da
un automa A che possegga i seguenti dieci stati:
1 sistema spento |
2 nessuna registrazione |
3 primo carattere: "1" |
4 primo carattere: "2", oppure "3" |
5 primo carattere: "4" |
6 primi due caratteri: "11" |
7 primi due caratteri: "12" |
8 primi due caratteri: "41" |
9 primi due caratteri: "42" |
10 primi due caratteri: "22" o "32" |
TABELLE DI TRANSIZIONE
E DI USCITA
Ogni automa di Mealy
x(t+1) = f(x(t),u(t)) |
y(t) = h(x(t)) |
è rappresentato da una coppia di funzioni
f e h, assegnabili, ad esempio, attraverso due tabelle
dotate di n righe ed m colonne, dove m = numero
degli ingressi, n = numero degli stati.
Nel caso di f, la casella (i,j)
contiene lo stato futuro mentre, nel caso di g, indica l'uscita.
È quindi necessario procedere alla compilazione
delle seguenti tabelle, nelle quali alcune righe sono state riempite
a titolo di esempio.
|