Which one of the following is the correct implementation of the meta-predicate “not” in PROLOG (Here G represents a goal)?
- not(G):- !, call(G), fail. not(G).
- not(G):- call(G), !, fail. not(G).
- not(G):- call(G), fail, !, not(G).
- not(G):- call(G), !, fail.not(G):- !.