Re: Extensibility: Fallback vs. Monolithic

Axel Polleres wrote:

> As for adding (locally) stratified negation to horn, I can say that 
> ignoring rules with stratified negation would simply give you 
> incomplete models, but all
> inferred atoms would still be sound.
>  If I understood correctly, Sandro was with his nnotion of "impact" 
> talking about different treatments of "fallback", e.g. something like 
> (this probably only applies to deductive rules though):
>
> a) ignoring X will lead to sound inferences only but inferences
>    might be incomplete
> b) ignoring Y will lead preserve completeness but unsound inferences
>    might arise
> c) ignoring z will neither preserve soundness nor completeness
>
> etc.
> while the latter two are probvably pointless, I could well imagine use 
> cases for a) e.g. when doing query answering over a rule base
> I might be happy to get sound answers but not requiring all answers
>
> example:
>
>   p(a) <- p(b).
>   p(b).
>   q(c).
>   r(d).
>
>   p(X) <- not q(X).
>
> When I now ask for
>  p(X).
>
> I'd get p(a) and p(b) in all cases even if I ignore the last rule.
> p(c) would only get inferred when having the last rule.

actually you'll get p(a) twice rather than p(c).

But I see your point.  My points are
1. you need quite a bit of detail in the fallback mechanism to know that 
not handling "not" must fallback to ignoring the containing *rule*.  
Just ignoring the *term* containing "not" would be very bad.
2. this fallback doesn't work in the presence of some extensions (like 
classical negation) and would be ill-advised (though technically sound, 
I guess) in the presence of "world-closing" extensions like aggregation

-- 


Oracle <http://www.oracle.com>
Gary Hallmark | Architect | +1.503.525.8043
Oracle Server Technologies
1211 SW 5th Avenue, Suite 800
Portland, OR 97204

Received on Wednesday, 27 June 2007 22:25:08 UTC