Re: [eclipse-clp-users] eplex: Unable to linearise / type error

From: Ulrich Scholz <Ulrich.Scholz_at_eml-d.villa-bosch.de>
Date: Thu, 11 Sep 2008 15:34:57 +0200
Thanks Joachim,

now this error went away.  Maybe you should note the predecence issue in the
eplex description.  (Maybe you do and I missed it)

Best,

Ulrich


On Thu, Sep 11, 2008 at 12:27:29AM +0100, Joachim Schimpf wrote:
> Kish Shen wrote:
> > Ulrich Scholz wrote:
> >> Dear all,
> >>
> >> I try to write a CP problem with the eplex constraint solver.  Below you
> >> find my code.
> >>
> >> I use decision variables to select one of a list of values.  On the call
> >>
> >>   :- generateSubcomponents(3, S). 
> >>
> >> I get the following error:
> >>
> >> Eplex warning: Unable to linearise my_instance : Utility =:= [3, 1, 6] * [_184, _186, _188]
> >> type error in eplex : (my_instance : Utility =:= [3, 1, 6] * [_184, _186, _188])
> >> Abort
> >>
> ...
> >>     
> >>     my_instance: Utility $= Utilities * DVs,
> >>     
> >>     Subcomponent = [Utility, DVs, Utilities].
> >> --------------
> >>
> > Hi,
> > 
> > You are not using the correct syntax -- you cannot simply use lists in 
> > expression.
> 
> 
> Actually, the List*List syntax is legal in lib(eplex) and lib(ic).
> The problem is the relative precedence of the : and the $= operator.
> The : binds stronger than the $=, so you have to add parentheses like
> 
>   my_instance:(Utility $= Utilities * DVs)
> 
> 
> Cheers,
> -- Joachim

-- 
Ulrich Scholz            

Phone: +49-6221-533244
Email: ulrich.scholz at eml-d.villa-bosch.de

--

European Media Laboratory GmbH
Schloss-Wolfsbrunnenweg 33
69118 Heidelberg

Amtsgericht Mannheim / HRB 335719
Managing Partner: Dr. h.c. Klaus Tschira, Scientific and Managing
Director: Prof. Dr.-Ing. Andreas Reuter

www.eml-d.villa-bosch.de
   
Received on Thu Sep 11 2008 - 06:35:09 CEST

This archive was generated by hypermail 2.2.0 : Thu Feb 02 2012 - 02:31:58 CET