Question: Regarding the question: either two stack PDA OR one stack PDA One stack PDA Describe PDAs for the following languages: (a) {w {a,b} | 2
Regarding the question: "either two stack PDA OR one stack PDA" One stack PDA
Describe PDAs for the following languages:
(a) {w {a,b} | 2 #a(w) > 3 #b(w)}, where #a(w) denotes the number of as in w. Suggestion: Use the PDAs stack to represent an integer counter, as follows:
Conceptually think of your PDA as an NFA with a counter. Keep track of 2 #a(w) 3 #b(w). Carefully consider how to update the value in the counter (especially taking into account all cases of positive, zero, negative for the starting value of the counter, and the possibility of the counters value changing signs).
(b) Describe a PDA for the following language: {xcy | x,y {a,b} and rev(x) is a substring of y}
In other words, strings that contain a single c character, where the part of the string occurring before c appears reversed somewhere after the c. 
2. Describe PDAs for the following languages: (a) { w {a, b)' | 2 . #a(w) > 3 . #b(w)) , where "#a(w)" denotes the number of a's in w Suggestion: Use the PDA's stack to represent an integer counter, as follows: | | ! -3 0 Conceptually think of your PDA as an NFA with a counter. Keep track of 2#a(w)- 3#b(w). Carefully consider how to update the value in the counter (especially taking into account all cases of positive, zero, negative for the starting value of the counter, and the possibility of the counter's value changing signs) (b) Describe a PDA for the following language: {xcy | x,y E {a, b}* and rev(x) is a substring of yb In other words, strings that contain a single c character, where the part of the string occurring before c appears reversed somewhere after the c. Example: aaabb c abababbbaaabba is in the language. 2. Describe PDAs for the following languages: (a) { w {a, b)' | 2 . #a(w) > 3 . #b(w)) , where "#a(w)" denotes the number of a's in w Suggestion: Use the PDA's stack to represent an integer counter, as follows: | | ! -3 0 Conceptually think of your PDA as an NFA with a counter. Keep track of 2#a(w)- 3#b(w). Carefully consider how to update the value in the counter (especially taking into account all cases of positive, zero, negative for the starting value of the counter, and the possibility of the counter's value changing signs) (b) Describe a PDA for the following language: {xcy | x,y E {a, b}* and rev(x) is a substring of yb In other words, strings that contain a single c character, where the part of the string occurring before c appears reversed somewhere after the c. Example: aaabb c abababbbaaabba is in the language
Step by Step Solution
There are 3 Steps involved in it
Get step-by-step solutions from verified subject matter experts
