Well-founded semantics
|
|
This article needs attention from an expert on the subject. See the talk page for details. WikiProject Computer science or the Computer science Portal may be able to help recruit an expert. (February 2009) |
In logic programming, the well-founded semantics is one definition of how we can make conclusions from a set of logical rules. In logic programming, we give a computer a set of facts, and a set of "inference rules" about how these facts relate. There are several different ways that we might want the computer to apply these rules; the well-founded semantics is one of these ways.
Contents |
[edit] History
The well-founded semantics was defined by Van Gelder, et al. in a 1991 paper [1].
[edit] Relations to other models
The well-founded semantics can be viewed as a three-valued version of the stable model semantics.[2] 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.
[edit] Applications
The well-founded semantics is also a way of making safe inferences in the presence of contradictory data such as noisy data, or data acquired from different experts who may posit differing opinions. Many two-valued semantics simply won't consider such a problem state workable. The well-founded semantics, however, has a built-in mechanism to circumvent the presence of the contradictions and proceeds in the best way that it can.
[edit] Complexity and algorithms
The fastest known algorithm to compute the WF-Semantics in general, is of quadratic complexity.
[edit] References
| This formal methods-related article is a stub. You can help Wikipedia by expanding it. |