Computazione deterministica

Quando una macchina deterministica si trova in un dato stato e legge un certo simbolo, lo stato successivo è univocamente determinato

Computazione non deterministica

Il non determinismo è una generalizzazione del determinismo

Un automa finito non deterministico (NFA) permette di avere

Come computa un NFA

Se un NFA è in uno stato e, leggendo un simbolo $a$ dell’alfabeto, si trova davanti a più scelte (più archi uscenti etichettati con $a$):

Se una copia di un NFA legge un simbolo che non si trova su alcun arco uscente da quello stato, allora quella copia della macchina muore insieme a tutto il suo ramo di computazione

Accettazione:

Se un NFA è in uno stato con uno o più archi etichettati con $\epsilon$, si comporta come segue:

Definizione formale

Sia $\sum_\epsilon = \sum \cup \{\epsilon\}$