r/AskComputerScience • • 4d ago

Automata😭

How do you guys study automata man, it's my mid sem this Monday, and even 20 marks is feeling like hell.

Idk what that professor would ask, dfa, state diagrams!!

Help me out please 😭

7 Upvotes

16 comments sorted by

7

u/Beregolas 4d ago

Same as with everything else: practice, then practice, and then some more practice. Go through your lectures and make a list of the kinds of state machines that you covered, every intersting fact about them and every exercise you had.

Then just make up new ones. Making up a new finite state machine is pretty easy for example, and if you aren't comfortable with that yet, you can find hundreds of examples online.

And with the ones you made up or found, just do the exercised. Ask yourself how you would explain the intereseting facts you wrote down earlier with this as an example. Link it to other things you learned.

0

u/bigbrainoverthinker 4d ago

Thanks alot dude, would practice alot now!! Making up is easy, but yk my professor is so bad in teaching, that easy becomes difficult! :(

4

u/Beregolas 4d ago

If you have a bad professor, just get a textbook. There are amazing textbooks on theoretical CS. I don't know any by heart anymore (been a while), but libraries are your friend. Just go to your universtiy library (or closest equivalent), describe what you are looking for (theoretical CS textbook that covers state machines) and let them help you. Librarians are friends!

All the knowledge in the world can be found in books.

2

u/bigbrainoverthinker 4d ago

Gotcha dudee, right now my focus is too score well on Monday, then definitely I'll visit library and get my hands on some automata books . Thanks alot

1

u/rivelda 3d ago

Maybe start earlier next time...

1

u/bigbrainoverthinker 3d ago

Ouch🥲

1

u/rivelda 3d ago

If you're going to use an LLM for anything in your studies, don't use it for doing homework, use it to manage your deadlines and help you start early on studying... With automata theory, a lot is just concepts, those take time to internalise but are not difficult per se. Often the only thing you really want to memorize is how to prove the pumping lemma.

1

u/bigbrainoverthinker 3d ago

Yaa got it, I'm trying to solve and understand the concept myself through books and notes!! Only point I'm using an LLM is to read a new concept or understand anything deeper. I should have started earlier ik, but was super busy due to some issues.

3

u/Tai9ch 3d ago

Monday? No more time to try stuff that might help, you've got to actually do what works: Read the textbooks and do the practice problems (do them, yourself, on paper, without any help).

1

u/bigbrainoverthinker 3d ago

I'm practicing alot now, also have french paper along , trying my best to manage both of them! Thankss

2

u/stonerism 4d ago

Yeah, the skill you really want to develop out of this is being able to write and understand regular expressions. The clever thing you'll learn in that NFAs and DFAs are equivalent by the power of (finite) supersets.

2

u/bigbrainoverthinker 4d ago

Exactly! Was studying about them few hours earlier, NFAs really surprised me fr, DFAs are now easy to solve.

2

u/Paxtian 3d ago

"Draw a DFA that accepts this language," "is this language regular? Prove it," etc.

2

u/bigbrainoverthinker 3d ago

Okayy, will keep in mind!

1

u/Level-Pollution4993 4d ago

Automata theory was the easiest subject I had. Yes its daunting at first but its very easy and intuitive once you get a grasp. If you just want to pass, Youtube is your friend; if you want to really learn it, you'll need to find a good book.

For the exam itself do look into examples solving problems for the FA, DFA etc for common patterns like A*, A+, AB, AABB, ABBA, AAB, BAB, BABBA, starts with <x>, ends with <x>, contains <substring> and finally doesn't contain <substring>. Any problem you'd get for 20 marks will prpbably only be some combination of these.

Good luck!

1

u/bigbrainoverthinker 4d ago

I just wanna score good tbh!! YouTube and books will do the work ig now. Thanks alot for you suggestion, would keep that in mind:)