How to negate in Prolog
prolog
Solution
`\+/1` is the ISO Prolog predicate to "negate". Note that "negate" means here not provable at that point.
You can refer to this excellent answer by @false for more on the subject
Problem
I'm new to PROLOG and am at the very beginning of the exercises on this page. Given the rules parent(X, Y) and male(X), I'm trying to define a rule mother(X, Y) as ``` mother(X, Y) :- not(male(X)), parent(X, Y). ``` However, in GNU Prolog I get the following error: ``` | ?- mother(lina, julia). uncaught exception: error(existence_error(procedure,not/1),mother/2) | ?- ```