Useful Links
Computer Science
Computer Science Fundamentals
Theory of Computation
1. Introduction to Theory of Computation
2. Automata Theory and Regular Languages
3. Context-Free Languages
4. Context-Sensitive and Unrestricted Languages
5. Turing Machines and Computability
6. Computational Complexity Theory
7. Advanced Topics in Computation
Automata Theory and Regular Languages
Finite Automata
Deterministic Finite Automata
Formal Definition
State Set
Input Alphabet
Transition Function
Initial State
Final States
State Diagrams
Graphical Representation
State Transitions
Accepting Paths
Language Recognition
String Acceptance
Computation Traces
Language of a DFA
DFA Construction Examples
Simple Pattern Recognition
Modular Arithmetic
String Properties
Nondeterministic Finite Automata
NFA Definition
Nondeterministic Transitions
Multiple Next States
Epsilon Transitions
NFA Computation
Parallel Computation Paths
Acceptance Criteria
Tree of Computations
NFA vs DFA Power
Expressive Equivalence
Computational Differences
NFA to DFA Conversion
Subset Construction Algorithm
State Set Construction
Transition Function Definition
Complexity Analysis
Epsilon-NFA Handling
Epsilon Closure
Modified Subset Construction
Regular Expressions
Regular Expression Syntax
Basic Symbols
Union Operator
Concatenation
Kleene Star
Precedence Rules
Regular Expression Semantics
Language Denoted by RE
Recursive Definition
Examples and Interpretations
Extended Regular Expressions
Plus Operator
Question Mark Operator
Character Classes
Complement and Intersection
Equivalence of Models
Regular Expressions to NFA
Thompson Construction
Base Cases
Inductive Cases
Union Construction
Concatenation Construction
Star Construction
DFA to Regular Expression
State Elimination Method
Elimination Order
Regular Expression Updates
Final Expression
Matrix Method
Closure Under Regular Operations
Union Closure
Concatenation Closure
Star Closure
Properties of Regular Languages
Decision Problems
Membership Problem
Emptiness Problem
Equivalence Problem
Finiteness Problem
Pumping Lemma for Regular Languages
Statement and Proof
Pumping Length
Application Techniques
Non-regularity Proofs
Myhill-Nerode Theorem
Distinguishability Relation
Equivalence Classes
Minimal Automata
Closure Properties
Union
Intersection
Complement
Concatenation
Kleene Star
Reversal
Homomorphism
DFA Minimization
Equivalent States
State Distinguishability
Equivalence Testing
Minimization Algorithms
Table-Filling Algorithm
Partition Refinement
Hopcroft's Algorithm
Uniqueness of Minimal DFA
Canonical Form
Isomorphism of Minimal DFAs
Previous
1. Introduction to Theory of Computation
Go to top
Next
3. Context-Free Languages