Question: Write recursive Prolog predicates to determine if a list of letters satisfies the following regular expressions or grammar rules. Use pattern matching. a + listOfa(L)
Write recursive Prolog predicates to determine if a list of letters satisfies the following regular expressions or grammar rules. Use pattern matching.
a+ listOfa(L) returns true only if L is a list of one or more as
b + listOfb(L) returns true only if L is a list of one or more bs
c+ listOfc(L) returns true only of L is a list of one or more cs
a+b+ listOfab(L) returns true only if L is a list of as followed by bs
a+b+c+listOfabc (L) returns true only if L matches the pattern a+b+c+
bba*bbb regExpr1(L) returns true only if L matches the pattern bba*bbb
(aa |cc)+regExpr2(L) returns true only if L matches the pattern (aa | cc)+
a*b*c* regExpr3(L) return true only if L matches pattern a*b*c*
anban gRule1(L) returns true only if L is of the form anban for n >=0
Step by Step Solution
There are 3 Steps involved in it
Get step-by-step solutions from verified subject matter experts
