Newsgroups: comp.constraints
Path: cantaloupe.srv.cs.cmu.edu!das-news2.harvard.edu!news2.near.net!news.mathworks.com!hookup!swrinde!cs.utexas.edu!news.sprintlink.net!EU.net!julienas!news.fnet.fr!ilog!lepape
From: lepape@ilog.fr (Claude Le Pape)
Subject: Re: Solving a conjunction of X <= Y clauses
Message-ID: <1995Jan10.111623.5807@ilog.fr>
Reply-To: lepape@ilog.fr (Claude Le Pape)
Organization: ILOG S.A., Gentilly, France
Date: Tue, 10 Jan 95 11:16:23 GMT
Lines: 61


In article <1995Jan10.080339.28739@ilog.fr>, puget@ilog.ilog.fr (Jean-Francois Puget) writes:

|> In article <D25DLK.Jwo@ips.cs.tu-bs.de>, zeller@ips.cs.tu-bs.de (Andreas Zeller) writes:
|>
|>|> Let n denote numerical constants, and x, y variables.  Let T be a
|>|> boolean conjunction of constraints where each constraint has one of
|>|> the forms
|>|>
|>|>  1.  x OP n   with OP in { <, <=, =, >=, >, <> }
|>|>  2.  x OP y   with OP in { <, <=, =, >=, >, <> }
|>|>
|>|> The problem is to find out whether T is satisfiable (i.e. there exists
|>|> a variable assignment such that all constraints are satisfied), or
|>|> not.
|>
|> If you exclude the <> constraint, i.e. when the constraints are:
|>    3.  x OP y   with OP in { <, <=, =, >=, >}
|> then a polynomial time algorithm is known.
|>
|> ...
|>
|> If you include the <> constraint, then the satisfiability is an
|> NP-complete problem.

More precisely, there are three issues to consider:
	- whether you allow:
		(a) constraints of type (1) only
		(b) constraints of type (2) only
		(c) constraints of both types
	- whether you
		(d) allow <> constraints
		(e) disallow <> constraints
	- whether your numerical domain is
		(f) finite
		(g) infinite but discrete (integers)
		(h) infinite and dense (rational or real numbers)

I am assuming the numerical domain is totally ordered.

(a)
constraints of type (1) only
--> The problem is polynomial - you just have to check that each
    variable accepts at least one possible value.

(b)(e) or (c)(e)
--> The problem is polynomial (cf. the references given by J.-F. Puget)

(b)(d)(f) or (c)(d)(f) or (c)(d)(g)
--> The problem is NP-complete (at least as general as graph colorability).

(b)(d)(g) or (b)(d)(h) or (c)(d)(h)
--> The problem is polynomial.

Claude Le Pape

-- 
  Claude LE PAPE			net: lepape@ilog.fr
  ILOG S.A.				tel: +33 1 46 63 66 66
  2 Avenue Gallieni - BP 85		fax: +33 1 46 63 15 82   
  F-94253 Gentilly Cedex - FRANCE	url: http://www.ilog.fr
