Answered step by step
Verified Expert Solution
Question
1 Approved Answer
Need help on theory of computation: Def: num(x, y) means the number of times x appears as a substring in y 1. Describe PDAs for
Need help on theory of computation:
Def: num(x, y) means the number of times x appears as a substring in y 1. Describe PDAs for the following languages: (a) wE a, b\* | num(aaa, w)- num(bb, w)) Note: Be careful in your counting: bbbb contains the substring bbb two times. (b) (w E { 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: +5 -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). (c) Describe a PDA for the following language (xcy lx,yE 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 Example: aaabb c abababbbaaabba is in the language. Def: num(x, y) means the number of times x appears as a substring in y 1. Describe PDAs for the following languages: (a) wE a, b\* | num(aaa, w)- num(bb, w)) Note: Be careful in your counting: bbbb contains the substring bbb two times. (b) (w E { 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: +5 -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). (c) Describe a PDA for the following language (xcy lx,yE 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 Example: aaabb c abababbbaaabba is in the languageStep by Step Solution
There are 3 Steps involved in it
Step: 1
Get Instant Access to Expert-Tailored Solutions
See step-by-step solutions with expert insights and AI powered tools for academic success
Step: 2
Step: 3
Ace Your Homework with AI
Get the answers you need in no time with our AI-driven, step-by-step assistance
Get Started