Non-Deterministic Grammar

Duration: 5 min

This video lesson is available to enrolled students.

Return to /learn/BIHAR-POLYTECHNIC-LECTURER-COMPUTER-SCIENCE/paper-2-compiler-design/grammar-cfg/left-factoring-prefixes/asset-non-deterministic-grammar after enrolling

Inside: a video lesson and guided study material.

Module outline

  1. Discrete Mathematics: Permutation, Combination and Probability / क्रमचय, संचय एवं प्रायिकता, Set Theory, Relations, Functions, Propositional and Predicate Logic, Graph Theory, Group Theory
  2. Digital Logic: Digital Systems & Boolean Basics, Boolean Expression, Boolean Minimization, Logic Gates & Hardware, Combinational Circuit, Sequential Circuits, Number System, Number Representation, Floating Point Rep
  3. Computer Organization and Architecture: Basics of COA, Programming the Basic Computer, Cache Memory Organization, Input Output Organisation, Instr Formats & Modes, Register Transfer and Microoperations, Control Unit Design, Pipelining, Multiprocessors
  4. Programming: Language Design, C Fundamentals, Control Flow, Functions, Arrays & Pointers, Storage Classes, Structures & Enums, DMA, Macros, Scoping & File Handling, OOPS with C++
  5. Data Structures: Introduction to DS, Array, Linked List, Stack, Queue, Tree, Graphs, Hashing
  6. Algorithms: Algorithm Analysis, Time Complexity Analysis, Sorting Algorithms, Greedy Algorithms, Dynamic Programming, Minimum Spanning Trees, Shortest Path Algos, Advanced Algorithms
  7. Theory of Computation: Grammar, Regular Language Properties, Moore & Mealy Machines, Turing Machines
  8. Compiler Design: Intro to Compilers, Lexical Analysis, Grammar & CFG, Syntax Analysis: Top-Down, Syntax Analysis: Bottom-Up, Semantic Analysis & SDT, Intermediate Code Gen, Code Optimization, Run Time Environment, Introduction to TOC, Deterministic FA (DFA), Non-Deterministic FA, Regular Expressions, Pushdown Automata & CFG, Complexity Theory
  9. Operating Systems: Introduction to OS, Process Management, CPU Scheduling, Process Synchronization, Threads & Process Creation, Deadlock, Memory Management, Virtual Memory, Disc Scheduling, File Management, Unix OS, Linux OS, Security
  10. Database Management Systems: Basics of DBMS, ER Diagram, Relational Model & Functional Dependencies, Keys & Integrity Constraints, Normalization (1NF - BCNF), Decomposition Properties & 4NF, File Organization & Indexing, Relational Algebra, SQL, Relational Calculus, Transaction Management, Concurrency Control, ORDBMS, NoSQL
  11. Computer Networks: Introduction to CN, Data Communication, DLL: Access Control, DLL: Flow Control, DLL: Error Control, DLL: Framing, Data Link Layer - Ethernet, Net Layer: IPv4 & Proto, Net Layer: IP Addressing, Net Layer:Routing Protocol, Transport Layer Services, TL: Congestion & UDP, Application Layer, Hardware basics, Network Security
AI summary & chapters

AI Summary

An AI-generated summary of this video lecture.

The lecture introduces the concept of Non-Deterministic Grammars, specifically focusing on grammars that contain common prefixes in their production rules. The instructor explains that such grammars are problematic because they require backtracking during parsing, which is inefficient. The core of the lesson is the introduction of Left Factoring as a method to eliminate these common prefixes, thereby converting a non-deterministic grammar into a deterministic one.

Chapters

  1. 0:00 – 2:00 00:00-02:00

    The video begins with a slide titled Non-Deterministic Grammar. The text states, The grammar with common prefix is known as Non-Deterministic Grammar. An example production rule is displayed: A -> αβ1 / αβ2. The instructor emphasizes the term common prefix by underlining it in red. He explains that when two productions for a non-terminal A start with the same symbol sequence α, the parser cannot immediately decide which production to use. To illustrate this, he draws the symbol α followed by β on the right side of the screen. He circles the terms αβ1 and αβ2 to highlight the shared prefix α. This visual aid helps students understand that the ambiguity arises from the identical starting symbols.

  2. 2:00 – 4:53 02:00-04:53

    The slide content changes to discuss the implications of common prefixes. The text reads, The grammar with common prefixes requires a lot of Back-tracking, back-tracking is very time consuming. It further states, To avoid the back-tracking, we need to remove the common prefixes, i.e. we need to convert the non-deterministic Grammar into Deterministic. The instructor then demonstrates the solution by writing new rules on the slide. He introduces a new non-terminal B and rewrites the rules as A -> αB and B -> β1 / β2. He circles these new rules and writes Left factoring underneath. Finally, a definition slide appears: Left Factoring: - The process of conversion of Non-Deterministic grammar into deterministic grammar is known as Left-Factoring. It shows the general transformation pattern.

The lecture logically progresses from identifying a problem common prefixes causing non-determinism to providing a specific algorithmic solution Left Factoring. By extracting the common prefix into a new production rule, the grammar becomes deterministic, allowing for more efficient parsing without backtracking.

Loading lesson…