Question: Algorithms and Decision Procedures for Context-Free Languages Given a CFG G, complete the pseudocode-style procedure that returns true if G generates an infinite number of
Given a CFG G, complete the pseudocode-style procedure that returns true if G generates an infinite number of strings that end with ab, and false otherwise. You may use any of the algorithm and decision procedures presented in chapter 14, and you may find the ones below to be especially helpful: decideCFLInfinite(p)-where p is a PDA. Returns true if L(p) is infinite, and false otherwise. regLangtoFSM(n)-where rl is a regular expression or a characteristic function defining a regular language. Returns an FSM accepting L(rl). For example, FSM f = regLangtoFSM({w: |w| is odd}) CFGtoPDA(g)-where g is a CFG. Returns a PDA accepting L(g). intersectPDAandFSM(p, f)-where p is a PDA and f is an FSM. Returns a PDA accepting L(p) intersection L(f) boolean abEndingsInfinite(CFG G) { }
Step by Step Solution
There are 3 Steps involved in it
Get step-by-step solutions from verified subject matter experts
