Re: beginner's question: Difference between CWA and NAF



Hi, thanks for your answer !

Mauro Di Nuzzo schrieb:
> CWA (Reiter, 1978), also called "negation as infinite failure", is a
> mechanism that allow us to draw negative conclusions based on the lack of
> positive information.
> NAF (Clark, 1978), also called "negation as finite failure", is a weaker
> notion of CWA in which "false" means FINITELY failed.

So you mean NAF is a Top-Down-progress ?
on every substitution given, it'll ask the SLD-tree down?
Then how can it decide wether it do fail finitely or not (ain't that
undecidable?)

>
> A very very stupid example is the following.
>
> f(a).
> f(b).
> f(X) :- f(X).
>
> "not f(c)" follows from CWA, but cannot be concluded by NAF (the SLD-tree is
> infinite).

ok, then we need a "safe" rule like:
p(X) :- s(X), not f(X).
(and another fact like s(c). )

but this would be a program with stratifikation, therefore all provable
facts of f can be found by a bottom-up progress like fixpoint
iteration.
(this should be equivalent to an infinite top-down progress by CWA, or
am I wrong?)
And after that the p(x) line is computable.

Of course - like you said : CWA is used to compute all provable facts.
But how can NAF work when only using a top-down SLD-tree?
I thought NAF was created to simply compute the given negation, but
isn't it undecideable ?

>
> Please consider to search on the net... g**gle

Believe me , I did...

But thank you again for your answer - now I see some difference between
NAF and CWA ..

.



Relevant Pages