Journal of the Japanese Society for Artificial Intelligence
Online ISSN : 2435-8614
Print ISSN : 2188-2266
Print ISSN:0912-8085 until 2013
Constraint Solver Based on the Prolog Program Trasformation with Constraints in a Class of Negation
Tatsunori MORIHiroshi NAKAGAWA
Author information
MAGAZINE FREE ACCESS

1995 Volume 10 Issue 6 Pages 980-987

Details
Abstract

In natural language processing, various kinds of information are represented as constraints. To deal with such constraints, the logic-based constraint solver based on the Prolog program transformation is one of the most potent schemes. Constraints in the scheme are written as programs of pure Prolog. Although this kind of constraint programming scheme gives us a good way to express some constraints, we cannot use negative expressions, which are usually represented by the 'negation as failure (NAF)' in Prolog programs. It is due to the fact that the Prolog program transformation cannot process programs which contain cut operators. However, it is pointed out that negative expressions are not only useful for making representations be concise, but also essential in some cases. Fortunately, we have already had the method, called 'Negation Technique', to derive a program whose meaning is the negation of the given program without NAF. Even if we use the method, we still have to deal with universally quantified 'not-equal' goals, which the output programs of Negation Technique usually include. One of naive ways to cope with the problem is to adopt the lazy evaluation, in which the evaluation of not-equal goals will be suspended until all variables will be bound. But it is not efficient and not suitable for the scheme of the Prolog program transformation. Accordingly, we propose a method to decompose a not-equal goal with universal quantifiers into the not-equal goals which hold the essential information of the original not-equal goal in terms of the Prolog program transformation. In the method, the program corresponding to a certain not-equal goal is dynamically calculated by using the unifier of two terms in the not-equal relation. With this method and 'Negation Technique', we can represent negative constraint to a great extent. Our method can also treat feature structures, which are widely used in recent natural language processing systems.

Content from these authors
© 1995 The Japaense Society for Artificial Intelligence
Previous article Next article
feedback
Top