Monoids Let You Run Automata in Parallel

Finite automata are awesome but inherently sequential. On the other hand, finite monoid machines solve the same problems while being amenable to parallel execution.