3

根据您对翻译和类型 2 语法的了解,回忆一下示例,定义如下:

G = {N, T, S, P} 
T = {x, y, z} 
N = {A, B, C} 
S = A 
P = 
< A> ::= x<B>
< A> ::= x<C> 
< B> ::= x<B> 
< B> ::= y 
< C> ::= x<C> 
< C> ::= z

编写 Prolog 规则来表示这个语法。使用以下列表进行测试:

[x,x,x,z]. 
[x, x, y]. 
[x]. 
[x, y, z]. 
[ ] 

有人可以帮我解决这个问题吗?我不知道如何在序言中表示这一点,因为网上的大多数例子都非常不同!

谢谢!

4

1 回答 1

1

只是一个提示,完成你的作业,为每个生产添加一个子句

'A' --> [x], 'B'.
...

以这种方式测试它

?- phrase('S', [x,x,x,z], []).
于 2012-11-22T21:09:15.603 回答