Hi Alex,
I'm new to Prolog, I wonder if there is a 'not/1' or something similar to use in Ciao, or do I have to write it myself?
The standard negation operator in ciao is +
This implements "negation-as-failure", so `+ G` means that it is impossible to prove goal G.
I've seen other prologs offer this as not/1, but I dont think it's done in Ciao. SWI-Prolog, another popular open-source prolog implementation, provides not/1 for compatibility but recommends that + be used for new code.
If you use the module "iso", you can also get the operator =, which means that two terms don't unify. Here are some quick examples:
Succeed:
+ 3 is 1 + 1. + a = b. a = b.
Fail:
+ 4 is 2 + 2. f(a,b) = f(a,b)
Hope that helps,
Ryan