Girish Mahajan (Editor)

Well founded semantics

Updated on
Edit
Like
Comment
Share on FacebookTweet on TwitterShare on LinkedInShare on Reddit

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

History

The well-founded semantics was defined by Van Gelder, et al. in a 1991 paper.

Relations to other models

The well-founded semantics can be viewed as a three-valued version of the stable model semantics. 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.

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 to derive as many two-valued facts as possible, even though some consequences may remain unknown.

Complexity and algorithms

The fastest known algorithm to compute the WF-Semantics in general, is of quadratic complexity.

References

Well-founded semantics Wikipedia