πŸŽ“ Computer Science & Engineering Portal

Master Engineering Disciplines with Structured Notes

Comprehensive academic lecture notes, exam-oriented unit summaries, laboratory manuals, and previous year question papers designed strictly for university students.

πŸ“‘

University Syllabi

AKTU & AICTE aligned semester guidelines.

πŸ“

Exam Question Papers

Previous 5 years solved university papers.

πŸ’‘

Lab Manuals & Viva

Practical codes with outputs & interview Qs.

Core Subjects & Units Hub

Click on any specific unit to immediately view its lecture notes below

Viewing All Lectures

Derivation Tree

Derivation Tree

Derivation tree is a graphical representation for the derivation of the given production rules for a given CFG. It is the simple way to show how the derivation can be done to obtain some string from a given set of production rules. The derivation tree is also called a parse tree.

Parse tree follows the precedence of operators. The deepest sub-tree traversed first. So, the operator in the parent node has less precedence over the operator in the sub-tree.

A parse tree contains the following properties:

  1. The root node is always a node indicating start symbols.
  2. The derivation is read from left to right.
  3. The leaf node is always terminal nodes.
  4. The interior nodes are always the non-terminal nodes.

Example 1:

Production rules:

E = E + E  

E = E * E  

E = a | b | c  

Input

a * b + c  

Step 1:

Derivation Tree

Step 2:

Derivation Tree

Step 2:

Derivation Tree

Step 4:

Derivation Tree

Step 5:

Derivation Tree

Note: We can draw a derivation tree step by step or directly in one step.

Example 2:

Draw a derivation tree for the string "bab" from the CFG given by

S β†’ bSb | a | b  

Solution:

Now, the derivation tree for the string "bbabb" is as follows:

Derivation Tree

The above tree is a derivation tree drawn for deriving a string bbabb. By simply reading the leaf nodes, we can obtain the desired string. The same tree can also be denoted by,

Derivation Tree

Example 3:

Construct a derivation tree for the string aabbabba for the CFG given by,

S β†’ aB | bA  

A β†’ a | aS | bAA  

B β†’ b | bS | aBB  

Solution:

To draw a tree, we will first try to obtain derivation for the string aabbabba

Derivation Tree

Now, the derivation tree is as follows:

Derivation Tree

Example 4:

Show the derivation tree for string "aabbbb" with the following grammar.

S β†’ AB | Ξ΅  

A β†’ aB  

B β†’ Sb  

Solution:

To draw a tree we will first try to obtain derivation for the string aabbbb

Derivation Tree

Now, the derivation tree for the string "aabbbb" is as follows:

Derivation Tree

Labels: ,

Discussion & Queries (<$I18NNumComments$>):

<$CommentPager$>
<$I18NAtCommentTimeWithPermalink$>, <$I18NCommentAuthorSaid$>

<$BlogCommentBody$>

<$BlogCommentDeleteIcon$>
<$CommentPager$>