It use negation (unlike definite logic program) which make the logical entailment not hold.
-
Program Completion (Clark, 1978): change rule's implication to bi-implication
-
Stable Model Semantic (Gelfond and Lifschitz, 1988): remove negative literals (either the whole rule, or just the literal in the body)
-
Well-Founded Semantic (Van Gelder, 1991): use three-valued logic (true, false, and unkown)