ASP vs. Prolog like programming ASP is adequate for: –NP-complete problems –situation where the whole program is relevant for the problem at hands èIf the problem is polynomial, why using such a complex system? èIf only part of the program is relevant for the desired query, why computing the whole model?
ASP vs. Prolog For such problems top-down, goal-driven mechanisms seem more adequate This type of mechanisms is used by Prolog –Solutions come in variable substitutions rather than in complete models –The system is activated by queries –No global analysis is made: only the relevant part of the program is visited
Problems with Prolog Prolog declarative semantics is the completion –All the problems of completion are inherited by Prolog According to SLDNF, termination is not guaranteed, even for Datalog programs (i.e. programs with finite ground version) A proper semantics is still needed
Well Founded Semantics Defined in [GRS90], generalizes SMs to 3- valued models. Note that: –there are programs with no fixpoints of –but all have fixpoints of 2 P = {a not a} ({a}) = {} and ({}) = {a} There are no stable models But: ({}) = {} and ({a}) = {a}
Partial Stable Models D A 3-valued intr. (T U not F) is a PSM of P iff: T = P 2 (T) T (T) F = H P - (T) The 2nd condition guarantees that no atom is both true and false: T F = {} P = {a not a}, has a single PSM: {} a not bc not a b not ac not c This program has 3 PSMs: {}, {a, not b} and {c, b, not a} The 3rd corresponds to the single SM
WFS definition T [WF Model] Every P has a knowledge ordering (i.e. wrt ) least PSM, obtainable by the transfinite sequence: T 0 = {} T i+1 = 2 (T i ) T = U < T , for limit ordinals Let T be the least fixpoint obtained. M P = T U not (H P - (T)) is the well founded model of P.
Well Founded Semantics Let M be the well founded model of P: –A is true in P iff A M –A is false in P iff not A M –Otherwise (i.e. A M and not A M) A is undefined in P
WFS Properties Every program is assigned a meaning Every SM extends one PSM –If WFM is total it coincides with the single SM It is sound wrt to the SMs semantics –If P has stable models and A is true (resp. false) in the WFM, it is also true (resp. false) in the intersection of SMs WFM coincides with the perfect model in locally stratified programs (and with the least model in definite programs)
More WFS Properties The WFM is supported WFS is cumulative and relevant Its computation is polynomial (on the number of instantiated rule of P) There are top-down proof-procedures, and sound implementations –these are mentioned in the sequel
LP and Default Theories D Let P be the default theory obtained by transforming: H B 1,…,B n, not C 1,…, not C m into: B 1,…,B n : ¬C 1,…, ¬C m H T There is a one-to-one correspondence between the SMs of P and the default extensions of P T If L WFM(P) then L belongs to every extension of P
LPs as defaults LPs can be viewed as sets of default rules Default literals are the justification: –can be assumed if it is consistent to do so –are withdrawn if inconsistent In this reading of LPs, is not viewed as implication. Instead, LP rules are viewed as inference rules.
LP and Auto-Epistemic Logic D Let P be the AEL theory obtained by transforming: H B 1,…,B n, not C 1,…, not C m into: B 1 … B n ¬ L C 1 … ¬ L C m H T There is a one-to-one correspondence between the SMs of P and the (Moore) expansions of P T If L WFM(P) then L belongs to every expansion of P
LPs as AEL theories LPs can be viewed as theories that refer to their own knowledge Default negation not A is interpreted as “A is not known” The LP rule symbol is here viewed as material implication
LP and AEB D Let P be the AEB theory obtained by transforming: H B 1,…,B n, not C 1,…, not C m into: B 1 … B n B ¬C 1 … B ¬C m H T There is a one-to-one correspondence between the PSMs of P and the AEB expansions of P T A WFM(P) iff A is in every expansion of P not A WFM(P) iff B ¬A is in all expansions of P
LPs as AEB theories LPs can be viewed as theories that refer to their own beliefs Default negation not A is interpreted as “It is believed that A is false” The LP rule symbol is also viewed as material implication
SM problems revisited The mentioned problems of SM are not necessarily problems: –Relevance is not desired when analyzing global problems –If the SMs are equated with the solutions of a problem, then some problems simple have no solution –Some problems are NP-complete. So using an NP- complete language is not a problem. –In case of NP-complete problems, the efficient gains from cumulativity are not really an issue.
SM versus WFM Yield different forms of programming and of representing knowledge, for usage with different purposes Usage of WFM: –Closer to that of Prolog –Local reasoning (and relevance) are important –When efficiency is an issue even at the cost of expressivity Usage of SMs –For representing NP-complete problems –Global reasoning –Different form of programming, not close to that of Prolog Solutions are models, rather than answer/substitutions