Un Generic Non deterministic Finite state Automaton è una tupla , dove .
Accettazione: un GNFA accetta se ed:
:
Conversione NFA GNFA
Dato un qualsiasi automa non deterministico a stati finiti (NFA) è facile ottenere un GNFA equivalente.
Ad esempio questo NFA

Può essere convertito in questo GNFA

Algoritmo
Sia il numero di stati di .
- Se , ci sono solo e e l’arco . Output: .
- Se , scelgo .
- Creo un GNFA
- (si costruisce progressivamente, seguendo la forma canonica degli NFA)

Affermazione: è equivalente a . Cioè l’etichetta finale tale che è l’espressione regolare equivalente al GNFA di partenza.
Dimostrazione:
- è banale.
- caso induttivo: suppongo vera l’affermazione per GNFA con stati, è vero pure per stati.
Dimostriamolo per stati.
Ma in effetti:
- se accetta , ci sarà ramo di computazione che attraversa . Due casi:
- non è uno degli stati intermedi allora non è cambiato nulla ( è compreso nell’unione).
- è uno degli stati intermedi: è ok per lo stesso motivo ma relativo a ovvero tutti i modi per andare da a passando per .
Esercizi
1. Trasformare in NFA.
2. Trovare l’espressione regolare equivalente al seguente NFA
