Article Categories
- All Categories
-
Data Structure
-
Networking
-
RDBMS
-
Operating System
-
Java
-
MS Excel
-
iOS
-
HTML
-
CSS
-
Android
-
Python
-
C Programming
-
C++
-
C#
-
MongoDB
-
MySQL
-
Javascript
-
PHP
Articles by Bhanu Priya
Page 77 of 106
Explain the Closure Under Kleene Star of CFL in TOC?
If L is a CFL, then L*is a CFL. Here CFL refers to Context Free Language.StepsLet CFG for L has nonterminal S, A, B, C, . . ..Change the nonterminal from S to S1.We create a new CFG for L* as follows −Include all the nonterminal S1, A, B, C, . . . from the CFG for L.Include all productions of the CFG for L.Add new nonterminal S and new productionS → S1S | ∧We can repeat last productionS → S1S → S1S1S → S1S1S1S → S1S1S1S1S → S1S1S1S1∧ → S1S1S1S1Note that any word in L* can be generated by ...
Read MoreExplain the context free language closure under concatenation?
Here CFL refers to Context Free Language. Now, let us understand closure under concatenation.Closure under ConcatenationsIf L1 and L2 are CFLs, then L1L2 is a CFL.Follow the steps given below −L1 CFL implies that L1 has CFG1 that generates it.Assume that the nonterminals in CFG1 are S, A, B, C, . . ..Change the nonterminal in CFG1 to S1, A1, B1, C1, . . ..Don’t change the terminals in the CFG1.L2 CFL implies that L2 has CFG2 that generates it.Assume that the nonterminals in CFG2 are S, A, B, C, . . ..Change the nonterminal in CFG2 to S2, A2, ...
Read MoreGenerate a Context-free grammar for the language L = {anbm| m≠n}?
A context-free grammar is a quadruple G = (N, T, P, S), Where, N is a finite set of nonterminal symbols, T is a finite set of terminal symbols, N ∩ T = ∅, P is a finite set of productions of the form A → α, Where A ∈ N, α ∈ (N ∪ T)*, S is the start symbol, S ∈ N.Construct a Context free grammar for the language, L = {anbm| m ≠n}Case 1n > m − We generate a string with an equal number of a’s and b’s and add extra a’s on the left −S ...
Read MoreGive implementation-level descriptions of a Turing machine?
A Turing machine (TM) can be formally described as seven tuples −(Q, X, ∑, δ, q0, B, F)Where, Q is a finite set of states.X is the tape alphabet.∑ is the input alphabet.δ is a transition function:δ𝛿:QxX->QxXx{left shift, right shift}.q0 is the initial state.B is the blank symbol.F is the final state.A Turing machine T recognises a string x (over ∑) if and only when T starts in the initial position and x is written on the tape, T halts in a final state.T is said to recognize a language A, if x is recognised by T and if and ...
Read MoreExplain Type-1 grammar in TOC
Chomsky Hierarchy represents the class of languages that are accepted by the different machines.Chomsky hierarchyHierarchy of grammars according to Chomsky is explained below as per the grammar types −Type 0. Unrestricted grammars Turing Machine (TM)Type 1. Context-sensitive grammars Linear Bounded Automaton (LBA)Type 2. Context-free grammars Pushdown Automaton (PDA)Type 3. Regular grammars Finite Automaton (FA)Type-1 Context Sensitive Grammar (CSG)Type 1 grammar is also known as context sensitive grammarThe context sensitive grammar is used to represent context sensitive languageThe CSG follows some rules, which are as follows −The context sensitive grammar may have more than one symbol on the left hand side ...
Read MoreExplain the balancing parenthesis of PDA
Pushdown Automata (PDA) are the finite automata (FAs), but with the ability to push and pop symbols to/from a stack.PDA accepts strings if there is a legal path from start state to acceptance state for input. Otherwise, the string is rejected.A PDA can be represented by a 7-tuple(Q, ∑, ℾ, q0, ha, ∆, δ)WhereThe PDA is to finite subsets of Q ☓ (ℾ ∪ {∆})*.Parentheses are balanced ifWhile reading string, number of opening parentheses >= number of closing parentheses.When string is read, number of opening parentheses = number of closing parentheses.Examples(())() − Balanced((()() − Not balanced)()(() − Not balancedThe context ...
Read MoreDesign a PDA which recognizes the language
ProblemGenerate the push down automata (PDA) that recognizes the language E={aibj| i is not equal to j and I is not equal to 2j}.SolutionConsider the two languages as given below −L1={aibj|i,j>=0 and i>2j}L2={aibj|i,j>=0 and iaA A->aaAb|aA|epsilonIn L2, the number of a's are less than double the number of b'sSo the CFG for L2 becomes as follows − S2->Bb|aBb B->Bb|aBb|aaBb|epsilon S->S1|S2L1: {aibj:i>2j}L2:{aibj: i
Read MoreState the worst case number of states in DFA and NFA for a language?
A Deterministic Finite automata (DFA) is a five tuplesM=(Q, ∑, δ, q0, F)Where, Q − Finite set called states.∑ − Finite set called alphabets.δ − Q × ∑ → Q is the transition function.q0 ∈ Q is the start or initial state.F − Final or accept state.Let’s see the worst case number of states in DFA for the language A∩B and A*Let A and B be the two states, |A| = number of states = nA|B| = number of states = nBDFA = |A∩B| =nA.nB|A ∪ B| =nA.nB|A*|=3/4 2nA|AB| = nA (2nB-2nB-1)NFAThe non-deterministic finite automata (NFA) also have five states ...
Read MoreDesign an unambiguous CFG in CNF that generates E?
ProblemDefine the language, E={aibj|i not equal to j and i not equal to 2j} and design an unambiguous context free grammar (CFG) in Chomsky normal form (CNF) that generates E.SolutionThe unambiguous CFG for the given language is as follows −S->AC|CBA->aA|aB->Bb|bC->aCb|aaCb|epsilonNow, convert this CFG into CNF. You can follow the below mentioned steps for the successful conversion.Step 1First add a new start symbol S0 S0->S S->AC|CB A->aA|a B->Bb|b C->aCb|aaCb|epsilonStep 2Next eliminate the epsilon symbol in the production other than the start symbol. C->epsilon is a null productionAfter eliminating null production, the new productions are as follows − S0->S S->AC|CB A->aA|a B->Bb|b ...
Read MoreExplain if the CFG is recognized by Non-deterministic push down automata
Context Free Grammars (CFG) are definitely recognized by Non-deterministic push down automata (NPDA), but Programming languages are translated to binary (Machine Code) via Deterministic PDA.This is because it has the following below mentioned impacts −If Programming languages were supposed to be translated via NPDA then for one given program instance we will have multiple versions of binary(Machine code) generated for the same program, which ideally shouldn't be the scenario.For a given program only 1 version of binary code should be generated and that should remain consistent across all OS Platforms.Outputs will vary significantly: If we have multiple object files, then ...
Read More