Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

What is the application of automata?

In other words, why should I learn about it? When am I going to say... oh I need to know about push down automata or turing machines for this.

I am not able to see the applications of the material. Thanks

like image 246
SwimBikeRun Avatar asked Dec 30 '25 14:12

SwimBikeRun


2 Answers

You should learn about automata theory because it will help you understand what is computationally possible in a given system. People who understand the difference between a push-down automata and a universal turing machine understand why trying to parse HTML with regular expressions is a bad idea. People who don't think it is just fine to try to parse HTML with REs.

like image 63
ObscureRobot Avatar answered Jan 02 '26 06:01

ObscureRobot


There are problems that are nice fit to this kind of solutions, some of which are:

  • parsers
  • simulations of stateful systems
  • event-driven problems

There are probably many others. If you start writing code that has some ad-hoc state variable depending on which some functions can do this or that, you can probably benefit from proper FSA.

like image 36
Slartibartfast Avatar answered Jan 02 '26 06:01

Slartibartfast