Answer Set Programming

Answer Set Programming

The 3-colorablitiy problem can be solved by answer set programming (ASP), which is a form of declarative programming oriented towards difficult (primarily NP-hard) search problems.
Given an undirected graph, for each edge from a node X to node Y you define the fact:
edge(X,Y).
The program looks as follows:

node(X) :- edge(X,Y).
node(Y) :- edge(X,Y).
col(red,X) v col(green,X) v col(blue,X) :- node(X).
:- edge(X,Y), col(C,X), col(C,Y).

With the tool DLV (http://www.dbai.tuwien.ac.at/proj/dlv/), which was developed at the University of Calabria and the Vienna University of Technology, you can compute all stable models (answer sets) of the program and thus get a valid 3-coloring of the graph.

What's a proper programming language for Semantic Web reasoning?

As I already mentioned, the internet is one big database. But how much is the information worth? Obviously not all the information on the internet is true and not all information is worth to be taken into consideration by solving problems. As I see it, the Semantic Web is still in its child shoes. New technologies and ideas come up, each and every day. The progress of structuring date using W3C recommendations has just begun. That allows to make more and more data being read- and understoodable by machines. But in the end, intelligent software (e.g. agents) has to do some kind of reasoning to solve their given problems. The software has to decide on its own, which information is worth to be taken into consideration and which information isn't. Moreover, the software has to decide how to use the given data. Logic Programming is one way to go. Lot's of (semantic web related) artificial intelligent and search problems could be solved by Logic Programming technologies such as Answer Set Programming (ASP). The simpleness and elegancy of ASP may perfectly fit to Semantic Web tasks, such as information collection and interpretation from standardized Semantic Web knowledge bases or intelligent software design. Does there already exist some languages that fulfills this description? Does there exist logic programming languages that are able to be used with modern Semantic Web technologies, such as XML, RDF and OWL? Yes it does.....
Subscribe to Answer Set Programming