Loading...
Loading...
Understand automata, grammars, Turing machines and what computers can and cannot do, with clear worked examples.
Free, no-obligation chat · Affordable plans that fit your budget · Start this week
About this course
Theory of computation is abstract, and many students feel lost on the first day. Designing automata, proving a language is not regular and showing that a problem is undecidable all need creative proofs, not just a method to follow, and it is hard to know whether your answer is complete.
This course follows the standard university syllabus used with the textbooks by Sipser and by Hopcroft, Motwani and Ullman: finite automata and regular languages, pumping lemmas, context-free grammars and pushdown automata, Turing machines, decidability and the halting problem, and an introduction to complexity classes P and NP.
It is taught through affordable 1:1 mentoring. Your mentor builds each idea from small examples, shows how to design machines and write proofs, and reviews your reasoning as you practise questions like those on your problem sets and exams. Message us on WhatsApp or email, or fill in the short form, for a free, no-obligation chat. We will suggest a plan that fits your budget and flexible timings in your time zone, and you can start this week.
Outcomes
Detailed syllabus
Every module lists its topics and what you will be able to do. Your mentor plans sessions around them and your own goals.
Sets, strings, languages and proofs used throughout the course.
By the end of this module you can
Covered in 1:1 mentoring sessions
Machines with a fixed amount of memory.
By the end of this module you can
Covered in 1:1 mentoring sessions
Describing regular languages in different ways.
By the end of this module you can
Covered in 1:1 mentoring sessions
Showing that some languages need more than a finite automaton.
By the end of this module you can
Covered in 1:1 mentoring sessions
Grammars that describe nested structure.
By the end of this module you can
Covered in 1:1 mentoring sessions
Automata with a stack.
By the end of this module you can
Covered in 1:1 mentoring sessions
A simple model of general computation.
By the end of this module you can
Covered in 1:1 mentoring sessions
What no algorithm can solve.
By the end of this module you can
Covered in 1:1 mentoring sessions
What can be solved efficiently, and what probably cannot.
By the end of this module you can
Covered in 1:1 mentoring sessions
Ways to learn
A mentor who knows this course plans sessions around your goal, explains each idea with fresh examples and checks your understanding. Personal attention, flexible timings in your time zone and affordable plans that fit your budget.
Talk to our teamHow it works
Four simple steps to start Theory of Computation with a mentor. A real person replies to you; there is no booking system.
Message us on WhatsApp or email, or fill in the short form. The first chat is free, with no obligation.
We listen to your goal, level and deadlines, then suggest a plan that fits your budget and timings.
Online 1:1 sessions with a mentor who knows your course, explains clearly and checks your understanding.
Keep going between sessions with practice, and watch your confidence grow week by week.
Learn by doing
Write a program that reads a DFA table and tests whether strings are accepted, showing the state path.
Implement Thompson construction for a small set of operators and run the NFA on example strings.
Build a simulator that runs a transition table on a tape and use it to run a binary incrementer.
Collect worked pumping lemma and reduction proofs, each with a note on the key idea and common mistakes.
Your progress
Milestones from the start, middle and end of the syllabus.
Use language operations precisely
Early on
Write a grammar for a given context-free language
Halfway
Explain what P, NP and NP-complete mean
By the end
FAQs
Free, no-obligation chat
Tell us what you need. Our support team replies within one working day, by email or WhatsApp, whichever you prefer, and arranges your mentor.
Prefer to talk first?
Message the support team directly. We usually reply the same day.
Our mentors teach and explain. They never complete graded work, tests or assessments for students.
Keep going
Logic, proofs, sets, relations, counting, probability, graphs and recurrences.
Lexing, parsing (LL, LR), semantic analysis, intermediate code, optimisation, code generation.
Asymptotics, recurrences, divide and conquer, greedy, DP, graphs, network flow and NP-completeness.
Data representation, ISA, datapath, pipelining, caches, memory and I/O.
Complexity, arrays, lists, trees, graphs, sorting, greedy and dynamic programming.
Last reviewed
Message us on WhatsApp or email, or fill in the short form. Our team replies with a plan that fits your goal and budget, and you can start this week.
Talk to us about a mentor