如何为以下语言构建上下文无关语法:
L = {a^l b^m c^n d^p | l+n==m+p; l,m,n,p >=1}
我首先尝试:
S -> abcd | aAbBcd | abcCdD | aAbcdD | AabBcCd
进而A
=其他东西...但我无法让它工作。
.
我想知道我们如何记住应该为 no 增加多少个 c。 b 的增加?
例如:
string : abbccd
语法是:
S1-> 一个S1 d | S2
S2 -> S3 S4
S3-> 一个S3乙|厄普西隆
S4 -> S5 S6
S5-> bS5c |厄普西隆
S6-> cS6d |厄普西隆
规则 1 添加相同数量的 a 和 d。
规则 3 添加相同数量的 a 和 b。
规则 5 添加了相同数量的 b 和 c。
规则 6 添加相同数量的 c 和 d
这些规则还确保根据给定的语言维持字母顺序。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)