Logic Programming in Wikipedia Update
Robert Kowalski
Imperial College, London
U.K.
|
|
Editor: Enrico Pontelli
|
Download: PDF
I did not know, when I wrote my wikipedia article for the Feb./Mar.
2007 ALP newsletter, that Carl Hewitt had been “banned from
autobiographical editing regarding himself and his work or that of his
students.” The ban, which took effect on 16 February 2006,
included “creation of links and categories which refer to that
work.”1 Up until the time of the ban, Hewitt had been the main editor to the Logic Programming article.
The ban had more to do with his promoting “in various
articles on quantum mechanics such as quantum indeterminacy a view of
the incompleteness of quantum mechanics that is not generally accepted
and which does not belong in mainstream quantum mechanics pages”
than it had to do with anything concerning logic programming. But it
applied to the logic programming article as well.
Carl Hewitt started editing the logic programming article again on 30
March 2007, apparently believing that, after a year, the ban was no
longer in force. This resulted in an editing war, in which I was
compelled to take part. The war lasted until 11 April 2007, when an
administrator protected the logic programming article, “enforcing
Carl Hewitt's ban on autobiographical editing”.
The editing war of 30 March to 11 April 2007 was very unpleasant. Among
other things, I was challenged to explain exactly how my notion of
logic programming differed from Carl Hewitt’s.2
I suggested starting a separate article with the title, “logical
programming”, which seemed to satisfy some of some of
Hewitt’s supporters. But the administrator enforcing the ban
decided against it.
The current version of the article has been rated as B class, meaning
among other things that it is assessed as “useful to many, but
not all, readers. A casual reader flipping through articles would feel
that they generally understood the topic, but a serious student or
researcher trying to use the material would have trouble doing so, or
would risk error in derivative work.”3 I agree with that assessment.
Among other problems, there are many important topics, such as
abductive logic programming, answer set programming, constraint logic
programming, datalog, disjunctive logic programming, inductive logic
programming, meta-programming and parallelism missing from the article.
Moreover, there are a large number of idiosyncratic references at the
end of the article, which ought to be cleaned up.
It is a great shame that the logic programming article is in such poor
shape. However, many other articles related to logic programming are in
even worse condition. Take the article on stable model semantics, for
example. The last paragraph states that “the stable model
semantics defines a whole family of models of (or 'answers to') a logic
program and the minimal of
these models according to the knowledge of information ordering is
considered as the favourite, and is one-to-one related with the
so-called well-founded semantics.”
The article on well-founded semantics, written by the same editor in
February 2006, similarly states: “The well-founded semantics is a
three-valued version of the stable semantics. That is, instead of only
assigning propositions true or false, it also allows for a value representing ignorance. For example, if we know that
Specimen A is a moth if specimen A does not fly during daylight.
but we do not know whether or not specimen A flies during the day, the well-founded semantics would assign the proposition "specimen A is a moth" the value bottom which is neither true nor false.
You do not need to be an expert to realize that there is something seriously wrong with these articles.
The stable model semantics and well-founded semantics articles have
been tagged as in need of expert attention, since January 2007. In
February of this year, it was suggested that the stable model semantics
article should be merged with the article on answer set programming.
However, in the discussion about the proposed merger, an anonymous user
claimed that “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.”4 This claim, stated with such authority, stopped the proposal in its tracks.
In my previous call for help, I was hoping for individual
contributions. However, given the problems I encountered, I can
understand that others may have been reluctant to subject themselves to
the same experiences. Maurice Bruynooghe, in an email comment on my
earlier article, suggested that it might be more useful to set up some
kind of network, where people can contribute in different ways. For
example, by writing a to-do list or a preliminary draft of some article
or section of an article, or reviewing the current version of some
subtopic or of a draft of a revision. It would help if we could set up
a mailing list where we could discuss these issues internally first,
before opening them up to everyone on wikipedia. However, neither
Maurice nor I are very knowledgeable about how to go about creating
such an internet network. Maybe this is something the ALP could take
under its wing.
1 http://en.wikipedia.org/wiki/Wikipedia:Requests_for_arbitration/Carl_Hewitt
2 http://en.wikipedia.org/wiki/Talk:Logic_programming#What_is_Logic_Programming.3F
3 http://en.wikipedia.org/wiki/Wikipedia:Version_1.0_Editorial_Team/Assessment
4 http://en.wikipedia.org/wiki/Talk:Answer_set_programming