2011-01-10 47 views
0

我一直在嘗試習慣在Prolog中使用DCG並失敗。序言:簡單的DCG a^n b^n

如何定義一組語法規則來接受語言a^n b^n?

E.g. aaaabbbb或ab等...

謝謝:)。

回答

5
ab --> []. 
ab --> [a], ab, [b]. 
+0

謝謝。用你的規則,它接受ab([a,a,a,b,b,b],[])。就像我期望的那樣,但是有沒有什麼好方法讓它接受ab(aaabbb,[])。除了使用輔助謂詞將aaabbb分解爲[a,a,a,b,b,b]?謝謝 :)。 – ale 2011-01-10 18:12:53