User:Michael Gelfond/Draft ASSemantics
From Wikipedia, the free encyclopedia
Contents |
[edit] Answer Set Semantics
[edit] Introduction
The Answer Set Semantics are a declarative, non-monotonic semantics for logic programs with negation as failure introduced by Michael Gelfond and Vladimir Lifschitz. Unlike standard Prolog, the Answer Set Semantics define the models (in this context called Answer Sets) of a logic program independently of a particular inference mechanism. In contrast with other non-monotonic logics, the Answer Set Semantics are not super-classical; Instead, they use a collection of new logical connectives.
[edit] Syntax
A program
consists of a signature
and a collection of rules of the form:

where
's are literals (an atom
or its negation
) from
. The logical connectives
and
are called negation as failure or default negation and epistemic disjunction respectively.
Given a rule
,

[edit] Satisfiability
A set
of literals satisfies a literal
if
.
A set
satisfies a rule
if one of the following conditions hold:

[edit] Semantics
The Answer Set Semantics assigns to a logic program
a collection of answer sets: consistent sets of literals over signature
. Logic programs under the Answer Set Semantics may have one, many or zero answer sets.
The precise definition of the answer sets is given in two parts: first for programs whose rules do not contain default negation, and then extended to arbitrary programs using the concept of the reduct of a program.
[edit] Answer Set - Part One
Let program
consists of rules of the form:

An Answer Set of
is a consistent set
of literals satisfying the following conditions:
-
satisfies the rules of
.
-
is minimal. i.e. no proper subset of
satisfies the rules of
.
[edit] Reduct
Let
by an arbitrary logic program and
be a consistent set of literals. The reduct,
, of
relative to
is the program obtained from
by:
i) removing all rules containing
such that
.
ii) removing all other premises containing not.
Notice that
is a logic program without default negation.
[edit] Answer Set - Part Two
A consistent set of literals
is an answer set for logic program
if and only if
is an answer set for
.
[edit] Entailment
A program
entails a literal
,
if
is satisfied by every answer set of
.
[edit] Answer to a Query
A logic program
's answer to a query
is 'yes' if
; 'no' if
and 'unknown' otherwise.

