BNR Prolog

Constraint logic programming language From Wikipedia, the free encyclopedia

BNR Prolog, also known as CLP(BNR), is a declarative constraint logic programming language based on relational interval arithmetic developed at Bell-Northern Research in the 1980s and 1990s. Embedding relational interval arithmetic in a logic programming language differs from other constraint logic programming (CLP) systems like CLP(R) or Prolog-III in that it does not perform any symbolic processing. BNR Prolog was the first such implementation of interval arithmetic in a logic programming language.[1] Since the constraint propagation is performed on real interval values, it is possible to express and partially solve non-linear equations.[2]

Example rule

The simultaneous equations:

are expressed in CLP(BNR) as:

?- {X>=0,Y>=0, tan(X)==Y, X**2 + Y**2 == 5}.

and a typical implementation's response would be:

X = _58::real(1.0966681287054703,1.0966681287054718),
Y = _106::real(1.9486710896099515,1.9486710896099542).
Yes

See also

References

General references

Loading related searches...

Wikiwand - on

Seamless Wikipedia browsing. On steroids.