[eclipse-clp-users] help with gcc_matrix

From: Moon, Geoff <gmoon_at_...217...>
Date: Wed, 10 Feb 2010 14:30:05 +1100
Hi again, and thanks Thorsten for your advice. I am now getting results
from gcc_matrix that seem (to me!) to be incorrect.

Using the code below, and changing only the gcc parameters: 

 :- lib(ic).
 :- lib(ic_global).
 go:-

 dim(M,[2,2]),
 M #:: 1..4,

 Rows = [[gcc(0,1,1),gcc(0,1,2),gcc(0,1,3),gcc(0,1,4)], 
         [gcc(0,1,1),gcc(0,1,2),gcc(0,1,3),gcc(0,1,4)]],
 Cols = [[gcc(0,1,1),gcc(0,1,2),gcc(0,1,3),gcc(0,1,4)],
         [gcc(0,1,1),gcc(0,1,2),gcc(0,1,3),gcc(0,1,4)]],

 write("Rows ="),writeln(Rows),
 write("Cols ="),writeln(Cols),

 gcc_matrix(Rows,Cols,M),

 labeling(M),
 write("Matrix ="),writeln(M).


Base case - correct
Rows =[[gcc(0,1,1),gcc(0,1,2),gcc(0,1,3),gcc(0,1,4)],
       [gcc(0,1,1),gcc(0,1,2),gcc(0,1,3),gcc(0,1,4)]]
Cols =[[gcc(0,1,1),gcc(0,1,2),gcc(0,1,3),gcc(0,1,4)],
       [gcc(0,1,1),gcc(0,1,2),gcc(0,1,3),gcc(0,1,4)]]
Matrix =[]([](1,2),[](2,1))

Force a 3 into row 1 - correct
Rows =[[gcc(0,1,1),gcc(0,1,2),gcc(1,1,3),gcc(0,1,4)],
       [gcc(0,1,1),gcc(0,1,2),gcc(0,1,3),gcc(0,1,4)]]
Cols =[[gcc(0,1,1),gcc(0,1,2),gcc(0,1,3),gcc(0,1,4)],
       [gcc(0,1,1),gcc(0,1,2),gcc(0,1,3),gcc(0,1,4)]]
Matrix =[]([](1,3),[](2,1))

Force two 3s into row 1 - correct
Rows =[[gcc(0,1,1),gcc(0,1,2),gcc(2,2,3),gcc(0,1,4)],
       [gcc(0,1,1),gcc(0,1,2),gcc(0,1,3),gcc(1,1,4)]]
Cols =[[gcc(0,1,1),gcc(0,1,2),gcc(0,1,3),gcc(0,1,4)],
       [gcc(0,1,1),gcc(0,1,2),gcc(0,1,3),gcc(0,1,4)]]
Matrix =[]([](3,3),[](1,2))

Force a 3 into row 2 - incorrect?
Rows =[[gcc(0,1,1),gcc(0,1,2),gcc(0,1,3),gcc(0,1,4)],
       [gcc(0,1,1),gcc(0,1,2),gcc(1,1,3),gcc(0,1,4)]]
Cols =[[gcc(0,1,1),gcc(0,1,2),gcc(0,1,3),gcc(0,1,4)],
       [gcc(0,1,1),gcc(0,1,2),gcc(0,1,3),gcc(0,1,4)]]
Matrix =[]([](1,2),[](2,1))

Force two 3's into row 2 - correct
Rows =[[gcc(0,1,1),gcc(0,1,2),gcc(0,1,3),gcc(0,1,4)],
       [gcc(0,1,1),gcc(0,1,2),gcc(2,2,3),gcc(1,1,4)]]
Cols =[[gcc(0,1,1),gcc(0,1,2),gcc(0,1,3),gcc(0,1,4)],
       [gcc(0,1,1),gcc(0,1,2),gcc(0,1,3),gcc(0,1,4)]]
Matrix =[]([](1,2),[](3,3))

Force a 3 into column 1 - incorrect?
Rows =[[gcc(0,1,1),gcc(0,1,2),gcc(0,1,3),gcc(0,1,4)],
       [gcc(0,1,1),gcc(0,1,2),gcc(0,1,3),gcc(0,1,4)]]
Cols =[[gcc(0,1,1),gcc(0,1,2),gcc(1,1,3),gcc(0,1,4)],
       [gcc(0,1,1),gcc(0,1,2),gcc(0,1,3),gcc(0,1,4)]]
Matrix =[]([](1,2),[](2,1))

Force two 3s into column 1 - correct
Rows =[[gcc(0,1,1),gcc(0,1,2),gcc(0,1,3),gcc(0,1,4)],
       [gcc(0,1,1),gcc(0,1,2),gcc(0,1,3),gcc(1,1,4)]]
Cols =[[gcc(0,1,1),gcc(0,1,2),gcc(2,2,3),gcc(0,1,4)],
       [gcc(0,1,1),gcc(0,1,2),gcc(0,1,3),gcc(0,1,4)]]
Matrix =[]([](3,1),[](3,2))

Force a 3 into column 2 - incorrect?
Rows =[[gcc(0,1,1),gcc(0,1,2),gcc(0,1,3),gcc(0,1,4)],
       [gcc(0,1,1),gcc(0,1,2),gcc(0,1,3),gcc(0,1,4)]]
Cols =[[gcc(0,1,1),gcc(0,1,2),gcc(0,1,3),gcc(0,1,4)],
       [gcc(0,1,1),gcc(0,1,2),gcc(1,1,3),gcc(0,1,4)]]
Matrix =[]([](1,2),[](2,1))

Force two 3s into column 2 - correct
Rows =[[gcc(0,1,1),gcc(0,1,2),gcc(0,1,3),gcc(0,1,4)],
       [gcc(0,1,1),gcc(0,1,2),gcc(0,1,3),gcc(0,1,4)]]
Cols =[[gcc(0,1,1),gcc(0,1,2),gcc(0,1,3),gcc(0,1,4)],
       [gcc(0,1,1),gcc(0,1,2),gcc(2,2,3),gcc(0,1,4)]]
Matrix =[]([](1,3),[](2,3))



Notes:
1. Forcing values to NOT appear (ie gcc(0,0,X)) is always correct.
2. The low limit can be larger than the high limit without causing an
error. 
3. I am using build #121 for windows.

Any assistance/advice will be appreciated

Regards

Geoff


******************************************************************

The information in this e-mail is confidential and may be legally
privileged. It is intended solely for the addressee. Access to this
e-mail by anyone else is unauthorised. If you have received this
communication in error, please notify us immediately by return
e-mail with the subject heading "Received in error" or telephone
+61 2 93357000, then delete the email and destroy any copies of it.
If you are not the intended recipient, any disclosure, copying,
distribution or any action taken or omitted to be taken in reliance
on it, is prohibited and may be unlawful. Any opinions or advice
contained in this e-mail are subject to the terms and conditions
expressed in the governing KPMG client engagement letter. Opinions,
conclusions and other information in this e-mail and any
attachments that do not relate to the official business of the firm
are neither given nor endorsed by it. 

KPMG cannot guarantee that e-mail communications are secure or
error-free, as information could be intercepted, corrupted,
amended, lost, destroyed, arrive late or incomplete, or contain
viruses. 

KPMG, an Australian partnership and a member firm of the KPMG
network of independent member firms affiliated with KPMG
International Cooperative (“KPMG International”) is a Swiss entity.
 KPMG International provides no services to clients.  

Liability limited by a scheme approved under Professional Standards
Legislation. 

******************************************************************
Received on Wed Feb 10 2010 - 03:31:15 CET

This archive was generated by hypermail 2.2.0 : Mon Jul 09 2018 - 02:05:29 CEST