Maszyna stanu skończonego
Maszyna stanu skończonego lub automat stanu skończonego, czyli zwykła maszyna stanu, jest matematycznym modelem obliczeniowym stosowanym do projektowania zarówno programów komputerowych, jak i układów logicznych sekwencyjnych. Jest to pojęcie abstrakcyjne, które może znajdować się w jednej z ograniczonej liczby stanów. Maszyna jest w jednym stanie naraz; stan, w jakim jest w danym momencie, nazywany jest obecnym stanem. Może on zmieniać się z jednego stanu do drugiego, gdy jest inicjowany przez zdarzenie lub stan wyzwalający; to nazywa się przejściem. Określona FSM jest definiowana przez listę stanów i warunek wyzwalania dla każdego przejścia. Zachowanie maszyn stanowych można zaobserwować w wielu urządzeniach we współczesnym społeczeństwie, które wykonują określoną z góry sekwencję działań w zależności od kolejności zdarzeń, z jaką są prezentowane. Proste przykłady to automaty sprzedające produkty, które są składowane po właściwej kombinacji monet, windy, które opuszczają jeźdźców na wyższych kondygnacjach przed przejściem w dół, światła drogowe, które zmieniają kolejność, gdy samochody czekają, oraz zamki szyfrowe, które wymagają wprowadzenia liczb kombinacyjnych w właściwy porządek.