🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: comp.lang.misc
Article #5195

Re: constraint satisfaction programming

#5195
From: Paul Voda
Date: Tue, 01 Mar 1988 05:09
74 lines
3230 bytes
In article <5070@pyr.gatech.EDU> parvis@pyr.gatech.EDU (FULLNAME) writes:
>
>I'm looking for some interesting research in the topic of constraint logic
>programming or constraint satisfaction programming. ...


Trilogy is a logic programming language with constraints:

In the domain of integers Trilogy solves arbitrary linear forms
(Diophantine systems). For instance the query:

   x >= 0 & y >= 0 & 6*x + 8*y = 46

will solve without any backtracks to

   x = 5  y = 2  and  x = 1 y = 5

Linear forms can can be combined into formulas involving ands, ors and
existential quantifiers. Trilogy simplifies arbitrary such formulas. In other
words, Trilogy implements the full decision procedure for the Presburger
arithmetic.

Trilogy contains arrays. In this domain it solves constraints of
the form

   a(i) = v

where an unknown (logical) array a is constrained in an unknown point i
to the unknown value v. For instance the query

  a::[0..2]->[4..6] & a(0) < a(i) & a(i) < a(2)

where a is a logical array of three elements with the values constrained to
the interval [4..6] will solve without any backtracks to

  a = [4,5,6] & i = 1

See also the article 538 for the solution of the Triangle Puzzle in Trilogy.
This contribution discusses a declarative technique which eliminates
most of the uses of the "var" predicate of Prolog.

The March issue of the Byte magazine contains a review of Trilogy.
You can read there more about the language which integrates
logic programming with procedural and data-base programming while
remaining within the first order logic (that's why the name Trilogy:
three languages within logic) Trilogy does not contain a
single extralogical feature.

You can also obtain from me two papers of mine on Trilogy:

   The Constraint Language Trilogy: Semantics and Computations

and

   Types of Trilogy

The papers discuss the logic foundations of computations and the types of
Trilogy.

The Byte review is admittedly, quite terse. Moreover, the reviewer
criticized Trilogy for certain shortcomings when his programs
were incorrectly programmed (for instance the Tower of Hanoi). But overall,
the review is quite good considering the fact that the author never
encountered another constraint language since Trilogy is the first
commercially available logic language with constraints.

Trilogy, which sells for $99.95 (US), was developed
for the IBM-PCs and compatibles by

     Complete Logic Systems Inc.
     741 Blueridge Ave.
     N. Vancouver, BC
     Canada V7R2J5
     ph: (604) 986-3234
Technical Details
Message-ID: <1866@ubc-cs.UUCP>
Path: arc1-ca.pugleaf.net!utzoo!mnetor!uunet!lll-winken!lll-lcc!ames!mailrus!tut.cis.ohio-state.edu!bloom-beacon!mit-eddie!uw-beaver!ubc-vision!ubc-cs!voda
References: <5070@pyr.gatech.EDU>

Show Full Headers
Complete Article Headers
Path: arc1-ca.pugleaf.net!utzoo!mnetor!uunet!lll-winken!lll-lcc!ames!mailrus!tut.cis.ohio-state.edu!bloom-beacon!mit-eddie!uw-beaver!ubc-vision!ubc-cs!voda
From: voda@ubc-cs.UUCP (Paul Voda)
Newsgroups: comp.lang.misc,comp.lang.prolog
Subject: Re: constraint satisfaction programming
Message-ID: <1866@ubc-cs.UUCP>
Date: 1 Mar 88 05:09:25 GMT
References: <5070@pyr.gatech.EDU>
Sender: nobody@ubc-cs.UUCP
Reply-To: voda@ubc-cs.UUCP (Paul Voda)
Organization: UBC Department of Computer Science, Vancouver, B.C., Canada
Lines: 73
Keywords: Trilogy, constraint satisfaction, logic programming
Summary: Constraint logic language Trilogy