L = {a^i b^j c^k | not(i=j=k)}
提示:将L描述为其他语言的组合
我已经尝试这样做了大约一个星期,但现在做不到。有人可以帮我理解吗?
编辑:
说对了吗?
(i≠j or j≠k)
或(i≠j and j≠k and i≠k)
答案 0 :(得分:0)
是说(i≠j或j≠k)还是(i≠j和j≠k以及i≠k)
说这没错,但这远远超出您的需要。真的,您需要说的只是第一部分:
(i≠j或j≠k)
如果第一部分还不是真的,那么第二部分就不可能成立。从这里,我们可以进一步分解:
i
j或j k
这是四种非常基本的上下文无关语言的结合。如果您分别以开始符号S1,S2,S3和S4分别获得语法G1,G2,G3和G4,则可以添加新的开始符号S和产生式S-> S1 | S2 | S3 | S4为他们的并集获得语法。