What is meant by “logical purity” in Prolog?
Let us first get used to a declarative reading of logic programs. Declaratively, a Prolog program states what is true. For example natural_number(0). natural_number(s(X)) :- natural_number(X). The first clause states: 0 is a natural number. The second clause states: If X is a natural number, then s(X) is a natural number. Let us now consider … Read more