Theory of Computation

  1. Context-Free Languages
    1. Context-Free Grammars
      1. CFG Components
        1. Variables (Nonterminals)
          1. Terminal Symbols
            1. Production Rules
              1. Start Variable
              2. Derivations
                1. Derivation Steps
                  1. Leftmost Derivations
                    1. Rightmost Derivations
                      1. Derivation Trees
                      2. Parse Trees
                        1. Tree Construction
                          1. Yield of Parse Tree
                            1. Relationship to Derivations
                            2. Ambiguity
                              1. Ambiguous Grammars
                                1. Ambiguous Languages
                                  1. Inherent Ambiguity
                                    1. Disambiguation Techniques
                                  2. Pushdown Automata
                                    1. PDA Definition
                                      1. Stack Alphabet
                                        1. Stack Operations
                                          1. Transition Function
                                            1. Configuration
                                            2. PDA Computation
                                              1. Instantaneous Descriptions
                                                1. Computation Sequences
                                                  1. Acceptance Conditions
                                                  2. Acceptance Methods
                                                    1. Final State Acceptance
                                                      1. Empty Stack Acceptance
                                                        1. Equivalence of Methods
                                                        2. Deterministic vs Nondeterministic PDAs
                                                          1. DPDA Limitations
                                                            1. NPDA Power
                                                              1. Deterministic Context-Free Languages
                                                            2. Equivalence of CFGs and PDAs
                                                              1. CFG to PDA Construction
                                                                1. Stack-Based Parsing
                                                                  1. Top-Down Approach
                                                                  2. PDA to CFG Construction
                                                                    1. Variable Encoding
                                                                      1. Production Rule Generation
                                                                    2. Normal Forms
                                                                      1. Chomsky Normal Form
                                                                        1. CNF Definition
                                                                          1. Conversion Algorithm
                                                                          2. Greibach Normal Form
                                                                            1. GNF Definition
                                                                              1. Conversion Process
                                                                                1. Left Recursion Elimination
                                                                                2. Grammar Simplification
                                                                                  1. Useless Symbol Removal
                                                                                    1. Epsilon Production Elimination
                                                                                      1. Unit Production Removal
                                                                                    2. Properties of Context-Free Languages
                                                                                      1. Pumping Lemma for CFLs
                                                                                        1. Statement and Proof
                                                                                          1. Pumping Length
                                                                                            1. Application Examples
                                                                                            2. Closure Properties
                                                                                              1. Union
                                                                                                1. Concatenation
                                                                                                  1. Kleene Star
                                                                                                    1. Substitution
                                                                                                      1. Homomorphism
                                                                                                      2. Non-Closure Properties
                                                                                                        1. Intersection
                                                                                                          1. Complement
                                                                                                            1. Difference
                                                                                                            2. Decision Problems
                                                                                                              1. Membership Problem (CYK Algorithm)
                                                                                                                1. Emptiness Problem
                                                                                                                  1. Finiteness Problem
                                                                                                                    1. Equivalence Problem (Undecidable)