Talk:Answer set programming

From Wikipedia, the free encyclopedia

Contents

[edit] tail/body

"An answer set program is composed of a set of rules, each rules being composed of an head and a tail: 'head <-- body'" is that supposed to be "head <-- tail"?

Actually, it's "body" the correct term; "tail" was my mistake. Changed. - Liberatore(T) 23:03, 12 May 2006 (UTC)

Afaik there are no negations allowed in the head, so my guess is that these examples are wrong Kermesbeere 16:05, 8 January 2007 (UTC)

V. Lifschitz (2002) disagrees with you: "The negation as failure symbol is allowed to occur in the head of a rule, and not only in the body as in traditional logic programming." (page 41, lines 8-9). If don't have access to that article see [1]. Tizio 17:00, 8 January 2007 (UTC)
Negation as failure in the head may well be permissible in the language discussed in that paper, but that should be considered as an extension -- and not part of the usual syntax for answer set programs Zootalures 17:59, 18 February 2007 (UTC)

[edit] Start of Clean up

I've made a go at cleaning up the article a bit, although it's still not perfect. The Math sections which were in the syntax section before looked messy (and IMHO the example rules given were not representative of the "standard" ASP syntax (see for instance [2] for a good overview of the "basic" syntax and a number of extensions).

I'd prefer it if the rule sections that i've added were in math blocks using the "formal" syntax (i.e. \neg and \leftarrowinstead of - and :- , but the latex converter was a bit fickle and it was hard to get a given program to look consistent (parts seemed to be translated to png, and others to HTML, which looked ugly).

It would be nice to see some coverage of disjunction and choice in the head (i.e. dlv head choice and smodels choice rules), also something about variable expansion, and function symbols (and possibly how they are considered in relation to predicates in prolog)

Also there should probably be some context and history relating to Datalog but I'm not well enough versed to provide this.

There should also be a link to or merge with Stable model semantics.

Zootalures 00:41, 19 February 2007 (UTC)

From stable model semantics you get both ASP (credulous reasoning) and Well-founded Semantics as implemented e.g. by XSB using the SLG-WAM which are two competing ways to represent knowledge. ASP is not synonymous with stable models. --anon user

Hello! Ricardo.6ik 01:39, 19 June 2007 (UTC)

I have significantly extended Stable model semantics, and I plan to add a few more sections about constructs used in ASP -- classical negation, constraints, disjunctive rules, choice rules and aggregates. Then that article will completely supersede the current version of Answer set programming. Here is my proposal: let's rewrite Answer set programming from scratch, with a different emphasis. It will be about ASP as a programming methodology, about applications of stable models and answer set solvers, such as smodels, to knowledge representation and search. For theoretical background related to stable models, the reader will be referred to Stable model semantics.

That would require that we replace the current version of Answer set programming by a new stub. If there are no objections then I'll try to do that. Vlifschitz 20:54, 7 September 2007 (UTC)

The earlier version is replaced by a new stub, with apologies to the editors who have invested their time in cleaning up the original text. Vlifschitz 19:03, 3 October 2007 (UTC)

[edit] Merge with answer set programming

The recent edit by Vladimir Lifschitz confirms that stable models have an independent significance from answer set programming. This article is worth keeping separate. —Preceding unsigned comment added by Logperson (talkcontribs) 20:25, August 29, 2007 (UTC)

[edit] The computational process

It would be useful to have more information in the article about the computational process. Otherwise, it is hard to be sure that answer set programs are really declarative. The link to the DPLL algorithm does not give enough information about the treatment of negation.136.187.112.90 (talk) 02:22, 25 March 2008 (UTC)