You can subscribe to this list here.
2005 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
(1) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2006 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
(23) |
Nov
(29) |
Dec
(21) |
2007 |
Jan
(48) |
Feb
(9) |
Mar
(49) |
Apr
(49) |
May
(33) |
Jun
(28) |
Jul
(34) |
Aug
(51) |
Sep
(52) |
Oct
(26) |
Nov
(15) |
Dec
(26) |
2008 |
Jan
(21) |
Feb
(22) |
Mar
(19) |
Apr
(35) |
May
(23) |
Jun
(62) |
Jul
(11) |
Aug
(20) |
Sep
(35) |
Oct
(46) |
Nov
(22) |
Dec
(3) |
2009 |
Jan
(45) |
Feb
(59) |
Mar
(24) |
Apr
(19) |
May
(10) |
Jun
(17) |
Jul
(16) |
Aug
(30) |
Sep
(41) |
Oct
(55) |
Nov
(37) |
Dec
(18) |
2010 |
Jan
(13) |
Feb
(103) |
Mar
(64) |
Apr
(134) |
May
(35) |
Jun
(47) |
Jul
(31) |
Aug
(27) |
Sep
(29) |
Oct
(6) |
Nov
(5) |
Dec
(8) |
2011 |
Jan
(20) |
Feb
(6) |
Mar
(8) |
Apr
(19) |
May
(36) |
Jun
(23) |
Jul
(10) |
Aug
(14) |
Sep
(54) |
Oct
(15) |
Nov
(29) |
Dec
(19) |
2012 |
Jan
(20) |
Feb
(11) |
Mar
(21) |
Apr
(7) |
May
(17) |
Jun
(3) |
Jul
(9) |
Aug
(10) |
Sep
(19) |
Oct
(46) |
Nov
(22) |
Dec
(3) |
2013 |
Jan
(6) |
Feb
(27) |
Mar
(9) |
Apr
(13) |
May
(9) |
Jun
(18) |
Jul
(33) |
Aug
(32) |
Sep
(10) |
Oct
(16) |
Nov
(3) |
Dec
(16) |
2014 |
Jan
(3) |
Feb
(4) |
Mar
|
Apr
(3) |
May
(5) |
Jun
(4) |
Jul
(1) |
Aug
(13) |
Sep
(9) |
Oct
(5) |
Nov
(12) |
Dec
(39) |
2015 |
Jan
(14) |
Feb
(15) |
Mar
(5) |
Apr
(4) |
May
(3) |
Jun
(12) |
Jul
(6) |
Aug
|
Sep
(1) |
Oct
(15) |
Nov
(6) |
Dec
(5) |
2016 |
Jan
|
Feb
(11) |
Mar
(17) |
Apr
|
May
(1) |
Jun
(6) |
Jul
(3) |
Aug
(1) |
Sep
(9) |
Oct
|
Nov
(7) |
Dec
|
2017 |
Jan
(5) |
Feb
|
Mar
|
Apr
|
May
(3) |
Jun
(6) |
Jul
|
Aug
(3) |
Sep
(6) |
Oct
(2) |
Nov
(1) |
Dec
(1) |
2018 |
Jan
(1) |
Feb
(8) |
Mar
|
Apr
(5) |
May
(4) |
Jun
|
Jul
(2) |
Aug
|
Sep
|
Oct
|
Nov
(2) |
Dec
|
2019 |
Jan
(3) |
Feb
(1) |
Mar
|
Apr
(1) |
May
(5) |
Jun
|
Jul
|
Aug
|
Sep
(8) |
Oct
(1) |
Nov
(1) |
Dec
(5) |
2020 |
Jan
(1) |
Feb
|
Mar
(3) |
Apr
(6) |
May
|
Jun
|
Jul
(2) |
Aug
|
Sep
|
Oct
|
Nov
|
Dec
(4) |
2021 |
Jan
|
Feb
(1) |
Mar
|
Apr
(4) |
May
|
Jun
(13) |
Jul
(10) |
Aug
(4) |
Sep
(1) |
Oct
(4) |
Nov
|
Dec
(1) |
2022 |
Jan
(1) |
Feb
(4) |
Mar
(1) |
Apr
(3) |
May
|
Jun
(1) |
Jul
(1) |
Aug
|
Sep
(1) |
Oct
(1) |
Nov
(1) |
Dec
(5) |
2023 |
Jan
|
Feb
(6) |
Mar
(11) |
Apr
(3) |
May
(1) |
Jun
(1) |
Jul
(1) |
Aug
(2) |
Sep
|
Oct
|
Nov
|
Dec
(1) |
2024 |
Jan
|
Feb
(1) |
Mar
|
Apr
|
May
(2) |
Jun
(1) |
Jul
(2) |
Aug
(2) |
Sep
(3) |
Oct
(2) |
Nov
(1) |
Dec
(1) |
2025 |
Jan
(2) |
Feb
(1) |
Mar
(1) |
Apr
|
May
(1) |
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
From: Joachim S. <jsc...@co...> - 2016-09-18 11:41:01
|
On 18/09/16 09:15, Daniel Jozsef wrote: > Hello, > > I'm trying to wrap my head around the ic_sets library, and it feels extremely > limited in its abilities. Specifically something I'd need for a model I'm > working on is to be able to define a "A is NOT a subset of B" constraint. > > Given how the only constraint that has a reified form is the simple membership, > no trivial solution seems to present itself. I came up with the following > solution, it works but I don't really like it: > > notsubset(SetA, SetB) :- > SetA :: []..[1,2,3,4], > ic_sets:union(SetA, SetB, U), > #(U, UCard), > #(SetA, ACard), > ACard #< UCard. > > Any idea how this could be done in a more elegant way? One way that comes to mind is notsubset(A, B) :- difference(A, B, D), #(D, DCard), DCard #> 0. or, for short: notsubset(A, B) :- #(A\B) #> 0. -- Joachim |
From: Joachim S. <jsc...@co...> - 2016-09-18 11:28:04
|
On 18/09/16 10:55, talos wrote: > Dear everyone, > I got the following error when using xml > library not found in use_module(library(xml)) > > What may cause this problem? Thanks! The xml library is a third-party contribution and is in the package eclipse_misc.tgz, so you have to download and unpack this file. If you use the Windows installer, make sure you have ticked the "3rd party libraries" option. -- Joachim |
From: Daniel J. <dan...@gm...> - 2016-09-18 08:15:24
|
Hello, I'm trying to wrap my head around the ic_sets library, and it feels extremely limited in its abilities. Specifically something I'd need for a model I'm working on is to be able to define a "A is NOT a subset of B" constraint. Given how the only constraint that has a reified form is the simple membership, no trivial solution seems to present itself. I came up with the following solution, it works but I don't really like it: notsubset(SetA, SetB) :- SetA :: []..[1,2,3,4], ic_sets:union(SetA, SetB, U), #(U, UCard), #(SetA, ACard), ACard #< UCard. Any idea how this could be done in a more elegant way? Thanks ;) |
From: Kish S. <kis...@gm...> - 2016-09-17 14:23:09
|
I have uploaded the latest Mac OS X build of ECLiPSe 6.1 (#222) to our sourceforge download page: https://sourceforge.net/projects/eclipse-clp/files/ We have had reports of problems running the GUI version of ECLiPSe (tkeclipse) on some Macs for the previous binaries. If you have any problems running tkeclipse, you are probably seeing the same problem. Please download the tcltk package and read the README file in the download directory for more information on the problem. Kish On Thu, Sep 15, 2016 at 2:05 PM, Daniel Jozsef <dan...@gm...> wrote: > Hey, > > I noticed that the latest MacOS build of Eclipse is 6.1.164 from 2013, > while the Linux and Windows versions are up to date. > > Has MacOS support been discontinued? Is the build missing because newer > releases don't even compile on MacOS, or can I just compile the latest > (6.1.222) source myself? > > If I can, should I? :) > > Thanks a lot! > > Daniel > > ------------------------------------------------------------ > ------------------ > > _______________________________________________ > ECLiPSe-CLP-Users mailing list > ECL...@li... > https://lists.sourceforge.net/lists/listinfo/eclipse-clp-users > > |
From: Kish S. <kis...@gm...> - 2016-09-16 01:02:31
|
Hi Daniel, >I noticed that the latest MacOS build of Eclipse is 6.1.164 from 2013, while the Linux and Windows versions are up to date. There is a somewhat more recent Mac OS X version (6.1#194 from 2014) on Sourceforge: https://sourceforge.net/projects/eclipse-clp/files/Binaries%20x86-64%20MacOSX%2064bit/ The Mac OS X version of ECLiPSe was not really part of the 'official' build, as we did not have any Mac in our build and test infra structure for ECLiPSe. I have a personal Mac which I build the ECLiPSe Mac OS X distribution for Sourceforge. My intention was that the updates there would be more like releases of other software, i.e. when there are sufficient/significant changes for a new update. However I really haven't been updating the sourceforge release as often as I should. I will try and build and put a new update there soon. >or can I just compile the latest (6.1.222) source myself? >If I can, should I? :) I would encourage you to try to compile it, especially if you have a recent (last 2-3 years) version of Mac OS X. My Mac still has Mac OS X 10.6, and the xcode I have compiles ECLiPSe without any problems. However, my xcode is quite old, and Apple have switched to using clang instead of gcc as the C/C++ compiler, and I would be interested to know if the new xcode can compile and build ECLiPSe. I think you may need to install the compiler tool chain for command line use, as everything is only done through an IDE by default now. Also there may be issues with using clang rather than gcc, as we rely on compiling 'computed goto' feature of gcc for efficient ECLiPSe execution. I understand that clang is supposed to be highly compatible with gcc, so it may be able to compile our code that uses computed gotos. Cheers, Kish On Thu, Sep 15, 2016 at 2:05 PM, Daniel Jozsef <dan...@gm...> wrote: > Hey, > > I noticed that the latest MacOS build of Eclipse is 6.1.164 from 2013, > while the Linux and Windows versions are up to date. > > Has MacOS support been discontinued? Is the build missing because newer > releases don't even compile on MacOS, or can I just compile the latest > (6.1.222) source myself? > > If I can, should I? :) > > Thanks a lot! > > Daniel > > ------------------------------------------------------------ > ------------------ > > _______________________________________________ > ECLiPSe-CLP-Users mailing list > ECL...@li... > https://lists.sourceforge.net/lists/listinfo/eclipse-clp-users > > |
From: Daniel J. <dan...@gm...> - 2016-09-15 13:06:02
|
Hey, I noticed that the latest MacOS build of Eclipse is 6.1.164 from 2013, while the Linux and Windows versions are up to date. Has MacOS support been discontinued? Is the build missing because newer releases don't even compile on MacOS, or can I just compile the latest (6.1.222) source myself? If I can, should I? :) Thanks a lot! Daniel |
From: Shrirang E. <shr...@gm...> - 2016-09-07 07:00:16
|
Dear clp users, I have a very specific question regarding peer queues. On the remote side I have to send queue_create.. message on the control connection. This will make eclipse create queue using peer_queue_create/5 without explicitly calling it. After all the handshaking of messages I get queueid on the remote side. Now how can I send messages from eclipse to remote assuming the created queue is of type 'fromec'? After the message is send I also have to send the control message for ec_flushio... I don't have handle of control as well as stream for queue. Kindly help. Regards, Shrirang On Tuesday, 6 September 2016, Shrirang Edgaonkar <shr...@gm...> wrote: > Dear clp users, > > I have managed to pass through the peer_queue_create / 5 and got the > queue id. I went through the kernel source code to understand the messages > along with the documentation. The only issue is now with sending EXDR > messages through the queue. What will be stream through which the messages > will sent across? How will get handle to the stream. > > Thanking in advance. > > Regards, > Shrirang Edgaonkar > > On Tuesday, 6 September 2016, Shrirang Edgaonkar <shr...@gm... > <javascript:_e(%7B%7D,'cvml','shr...@gm...');>> wrote: > >> Dear clp users, >> >> >> I am trying to use peer queues using Eclipse clp. I have read the >> documentation enough to be able to use remote side and Eclipse side(both >> are eclipse) to connect with each other. I could make the sample mentioned >> in the manual work. But to create a queue, one needs to use >> peer_queue_create / 5 which I am using from remote. I am not able to >> understand the next steps. Manual explains about eclipse initiating >> socket_client message. But I could not get the complete meaning. On using >> peer_queue_create / 5 remote end fails with no. How do I send the >> socket_client message from Eclipse. An example would be great. >> >> Thanks and Regards, >> Shrirang Edgaonkar >> > |
From: Shrirang E. <shr...@gm...> - 2016-09-06 09:53:19
|
Dear clp users, I have managed to pass through the peer_queue_create / 5 and got the queue id. I went through the kernel source code to understand the messages along with the documentation. The only issue is now with sending EXDR messages through the queue. What will be stream through which the messages will sent across? How will get handle to the stream. Thanking in advance. Regards, Shrirang Edgaonkar On Tuesday, 6 September 2016, Shrirang Edgaonkar <shr...@gm...> wrote: > Dear clp users, > > > I am trying to use peer queues using Eclipse clp. I have read the > documentation enough to be able to use remote side and Eclipse side(both > are eclipse) to connect with each other. I could make the sample mentioned > in the manual work. But to create a queue, one needs to use > peer_queue_create / 5 which I am using from remote. I am not able to > understand the next steps. Manual explains about eclipse initiating > socket_client message. But I could not get the complete meaning. On using > peer_queue_create / 5 remote end fails with no. How do I send the > socket_client message from Eclipse. An example would be great. > > Thanks and Regards, > Shrirang Edgaonkar > |
From: Shrirang E. <shr...@gm...> - 2016-09-05 17:43:43
|
Dear clp users, I am trying to use peer queues using Eclipse clp. I have read the documentation enough to be able to use remote side and Eclipse side(both are eclipse) to connect with each other. I could make the sample mentioned in the manual work. But to create a queue, one needs to use peer_queue_create / 5 which I am using from remote. I am not able to understand the next steps. Manual explains about eclipse initiating socket_client message. But I could not get the complete meaning. On using peer_queue_create / 5 remote end fails with no. How do I send the socket_client message from Eclipse. An example would be great. Thanks and Regards, Shrirang Edgaonkar |
From: Edgaonkar, S. <Shr...@nt...> - 2016-08-29 03:05:43
|
Dear Developer Team, As per the documentation currently Dbi supports only MySQL as the database. I would like to use PostgreSQL and planning to write interface in C-Language to do the same. I have just made some initial study on its know-how. Hopefully I should progress with your kind help. Thanking you in advance. Thanks and Regards, Shrirang Edgaonkar ______________________________________________________________________ Disclaimer: This email and any attachments are sent in strictest confidence for the sole use of the addressee and may contain legally privileged, confidential, and proprietary data. If you are not the intended recipient, please advise the sender by replying promptly to this email and then delete and destroy this email and any attachments without any further use, copying or forwarding. |
From: Joachim S. <jsc...@co...> - 2016-07-07 12:34:17
|
On 07/07/16 07:52, ms...@an... wrote: > I'd like to be able to read and write bytes (not necessarily characters) > from standard input and output, regardless of locale settings and possibly > including sequences that are not valid in the locale. How can I do this? > > I've been able to find get_stream_info/3, which looks like it will tell me > the current encoding setting for a stream, and it looks like "octet" is > the one I want; but I haven't found any documented way to *set* this. > You can set this immediately when opening a stream, e.g. open(File, read, Stream, [encoding(octet)]) or afterwards with set_stream_property(Stream, encoding, octet) I see the latter is missing from the documentation of set_stream_property/3, I'll update this. Cheers, -- Joachim |
From: <ms...@an...> - 2016-07-07 06:50:12
|
I'd like to be able to read and write bytes (not necessarily characters) from standard input and output, regardless of locale settings and possibly including sequences that are not valid in the locale. How can I do this? I've been able to find get_stream_info/3, which looks like it will tell me the current encoding setting for a stream, and it looks like "octet" is the one I want; but I haven't found any documented way to *set* this. -- Matthew Skala ms...@an... People before principles. http://ansuz.sooke.bc.ca/ |
From: Joachim S. <jsc...@co...> - 2016-07-01 12:02:57
|
On 30/06/16 15:01, Annick Fron wrote: > Hi, > > Your mail helped me a lot. > I rewrote the program , but got some problems to define that all columns must be different. > I wrote something, but which gives me sometimes the same columns. > What is wrong with it ? ... > > differentcols(M,Nb,N):- > (for(I,1,Nb),param(M,N,Nb) do > Col1 is M[I], > Iplus1 is I + 1, > (for(J,Iplus1,Nb),param(M,Col1,N) do > Col2 is M[J], > not(equalcol(Col1,Col2)))). > > equalcol(X,Y,N):-dim(X,[N]),dim(Y,[N]),X#::0..1, Y#::0..1, > ( for(J,1,N),param(X,Y) do A is X[J], B is Y[J], A#=B). Two problems: 1. you are confusing rows and columns (M[I] is the Ith row) 2. you cannot use Prolog negation (not/1 or \+/1) to negate constraints You could do the following: diff_cols(A) :- dim(A, [M,N]), ( for(J,1,N-1), param(A,M,N) do ( for(K,J+1,N), param(A,M,J) do % compare columns J and K ( for(I,1,M), foreach(B,Bs), param(A,J,K) do B #= (A[I,J] #\= A[I,K]) ), sum(Bs) #> 0 % at least one different element ) ). However, depending on your actual problem, it might be better to have a constraint that requires not only that the columns are different, but that they are lexicographically ordered. This will eliminate symmetric solutions, i.e. solutions that differ only in that the columns are permuted. Of course this is only correct if your problem is indeed symmetric with regard to the column order. To impose such an order (which subsumes the difference constraint), use: ordered_cols(A) :- dim(A, [M,N]), ( for(J,1,N-1), param(A,M) do lex_lt(A[1..M,J], A[1..M,J+1]) ). -- Joachim |
From: Annick F. <li...@af...> - 2016-06-30 14:17:29
|
Hi, Your mail helped me a lot. I rewrote the program , but got some problems to define that all columns must be different. I wrote something, but which gives me sometimes the same columns. What is wrong with it ? Best regards Annick :-lib(ic). :-lib(ic_global). :-lib(listut). :-lib(lists). :-lib(arrays). %:- lib(matrix_util). :- import sequence/4 from ic_global_gac. :- import alldifferent_matrix/1 from ic_global_gac. essai(N,Span,Matrix) :- Nb is (N*(N-1)//2), dim(Matrix,[Nb,N]), Matrix#::0..1, ( for(J,1,N), param(Matrix,Nb,Span) do sequence(0,1,Span,Matrix[1..Nb,J]) ), ( for(I,1,Nb), param(Matrix,N) do sum(Matrix[I,1..N]) #= 2 ), differentcols(Matrix,Nb,N), array_flat(1, Matrix, Vars), labeling(Vars). differentcols(M,Nb,N):- (for(I,1,Nb),param(M,N,Nb) do Col1 is M[I], Iplus1 is I + 1, (for(J,Iplus1,Nb),param(M,Col1,N) do Col2 is M[J], not(equalcol(Col1,Col2)))). equalcol(X,Y,N):-dim(X,[N]),dim(Y,[N]),X#::0..1, Y#::0..1, ( for(J,1,N),param(X,Y) do A is X[J], B is Y[J], A#=B). Le 29 juin 2016 à 03:54, Joachim Schimpf <jsc...@co...> a écrit : > On 28/06/16 15:04, Annick Fron wrote: >> Hi, >> >> I have made progress in my program. >> I have almost a solution, but I would need to use : >> >> alldifferent_matrix on the columns, but I can’t find what type is expected. > > alldifferent_matrix/1 takes a matrix (2-dimensional array) > and places alldifferent/1 constraints on its rows AND columns. > > So "alldifferent_matrix on the columns" does not make sense. > > I would anyway recommend that you use individual alldifferent/1 > constraints instead of alldifferent_matrix/1 (it is a prototype that > currently works only for special cases like square matrices). > > > Some further recommendations: > > Do not use lib(matrix_util), it is an old library from the times > before ECLiPSe supported arrays properly. It represents matrices > as lists of lists, which is hardly ever convenient. Use dim/2 > to create matrices (arrays of arrays). > > It is seldom necessary to convert between lists and arrays. > Most constraints, and predicates like labeling/1, accept both. > This would be a more compact version of your code: > > essai(N,Span,M) :- > > Nb is N*(N-1)//2, > > dim(M, [Nb,N]), > M #:: 0..1, > > ( for(J,1,N), param(M,Nb,Span) do > sequence(0,1,Span,M[1..Nb,J]) > ), > > ( for(I,1,Nb), param(M,N) do > sum(M[I,1..N]) #= 2 > ), > > array_flat(1, M, Vars), > labeling(Vars). > > > Cheers, > Joachim > > >> :-lib(ic). >> :-lib(ic_global). >> :-lib(listut). >> :-lib(lists). >> :-lib(arrays). >> :- lib(matrix_util). >> :- import sequence/4 from ic_global_gac. >> :- import alldifferent_matrix/1 from ic_global_gac. >> >> >> essai(N,Span,Cols,Rows) :- >> >> Nb is (N*(N-1)//2), >> matrix(Nb,N,Rows,Cols), >> >> (foreach(XList,Cols),param(Span) do >> array_list(X,XList), >> dim(X,[Nb]), >> X #::0..1, >> sequence(0,1,Span,X) >> ), >> >> (foreach(RowList,Rows),param(N) do >> array_list(Row,RowList), >> dim(Row,[N]), >> Row #:: 0..1, >> sum(Row[1..N]) #= 2 >> >> ), >> (foreach(RowList,Rows),param(N) do >> array_list(Row,RowList), >> labeling(Row)) >> . > > > ------------------------------------------------------------------------------ > Attend Shape: An AT&T Tech Expo July 15-16. Meet us at AT&T Park in San > Francisco, CA to explore cutting-edge tech and listen to tech luminaries > present their vision of the future. This family event has something for > everyone, including kids. Get more information and register today. > http://sdm.link/attshape > _______________________________________________ > ECLiPSe-CLP-Users mailing list > ECL...@li... > https://lists.sourceforge.net/lists/listinfo/eclipse-clp-users |
From: Joachim S. <jsc...@co...> - 2016-06-29 01:54:44
|
On 28/06/16 15:04, Annick Fron wrote: > Hi, > > I have made progress in my program. > I have almost a solution, but I would need to use : > > alldifferent_matrix on the columns, but I can’t find what type is expected. alldifferent_matrix/1 takes a matrix (2-dimensional array) and places alldifferent/1 constraints on its rows AND columns. So "alldifferent_matrix on the columns" does not make sense. I would anyway recommend that you use individual alldifferent/1 constraints instead of alldifferent_matrix/1 (it is a prototype that currently works only for special cases like square matrices). Some further recommendations: Do not use lib(matrix_util), it is an old library from the times before ECLiPSe supported arrays properly. It represents matrices as lists of lists, which is hardly ever convenient. Use dim/2 to create matrices (arrays of arrays). It is seldom necessary to convert between lists and arrays. Most constraints, and predicates like labeling/1, accept both. This would be a more compact version of your code: essai(N,Span,M) :- Nb is N*(N-1)//2, dim(M, [Nb,N]), M #:: 0..1, ( for(J,1,N), param(M,Nb,Span) do sequence(0,1,Span,M[1..Nb,J]) ), ( for(I,1,Nb), param(M,N) do sum(M[I,1..N]) #= 2 ), array_flat(1, M, Vars), labeling(Vars). Cheers, Joachim > :-lib(ic). > :-lib(ic_global). > :-lib(listut). > :-lib(lists). > :-lib(arrays). > :- lib(matrix_util). > :- import sequence/4 from ic_global_gac. > :- import alldifferent_matrix/1 from ic_global_gac. > > > essai(N,Span,Cols,Rows) :- > > Nb is (N*(N-1)//2), > matrix(Nb,N,Rows,Cols), > > (foreach(XList,Cols),param(Span) do > array_list(X,XList), > dim(X,[Nb]), > X #::0..1, > sequence(0,1,Span,X) > ), > > (foreach(RowList,Rows),param(N) do > array_list(Row,RowList), > dim(Row,[N]), > Row #:: 0..1, > sum(Row[1..N]) #= 2 > > ), > (foreach(RowList,Rows),param(N) do > array_list(Row,RowList), > labeling(Row)) > . |
From: Annick F. <li...@af...> - 2016-06-28 14:04:22
|
Hi, I have made progress in my program. I have almost a solution, but I would need to use : alldifferent_matrix on the columns, but I can’t find what type is expected. Regards Annick Fron :-lib(ic). :-lib(ic_global). :-lib(listut). :-lib(lists). :-lib(arrays). :- lib(matrix_util). :- import sequence/4 from ic_global_gac. :- import alldifferent_matrix/1 from ic_global_gac. essai(N,Span,Cols,Rows) :- Nb is (N*(N-1)//2), matrix(Nb,N,Rows,Cols), (foreach(XList,Cols),param(Span) do array_list(X,XList), dim(X,[Nb]), X #::0..1, sequence(0,1,Span,X) ), (foreach(RowList,Rows),param(N) do array_list(Row,RowList), dim(Row,[N]), Row #:: 0..1, sum(Row[1..N]) #= 2 ), (foreach(RowList,Rows),param(N) do array_list(Row,RowList), labeling(Row)) . Le 22 juin 2016 à 13:43, Joachim Schimpf <jsc...@co...> a écrit : > On 22/06/16 11:19, Annick Fron wrote: >> Hi, >> >> I have a small program like this (see below). I want to generate a >> permutationof all matches, and put a sequence constraints on the >> columns, but I am not able to transform the generated list into an >> array, > > To convert a list to an array, use > http://eclipseclp.org/doc/bips/kernel/termmanip/array_list-2.html > > In your program, you know the list length in advance, so you could > also avoid the list completely, create an array in advance (dim/2) > and then fill in the elements. > > >> ... and I get into infinite loops when I ask: >> listeDesMatches(Liste,7), X is Liste[2]. > > The infinite loops happen when you backtrack into listeDesMatches/2. > They are caused by your predicates with the pattern > > p(N,N). > p(I,N) :- I1 is I+1, p(I1,N). > > You can either add the missing logical condition I<N, i.e. > > p(N,N). > p(I,N) :- I<N, I1 is I+1, p(I1,N). > > or, more efficiently, use > > p(I,N) :- > ( I<N -> > I1 is I+1, p(I1,N) > ; > true > ). > > >> What should I do ? > > Here is a different way to make the kind of list you want: > > listeDesMatches(Rows, N) :- > findall(Row, ( > dim(Row,[N]), > Row #:: 0..1, > sum(Row[1..N]) #= 2, > labeling(Row) > ), Rows). > > > -- Joachim > > ------------------------------------------------------------------------------ > Attend Shape: An AT&T Tech Expo July 15-16. Meet us at AT&T Park in San > Francisco, CA to explore cutting-edge tech and listen to tech luminaries > present their vision of the future. This family event has something for > everyone, including kids. Get more information and register today. > http://sdm.link/attshape > _______________________________________________ > ECLiPSe-CLP-Users mailing list > ECL...@li... > https://lists.sourceforge.net/lists/listinfo/eclipse-clp-users |
From: Marco G. <mar...@un...> - 2016-06-25 15:21:58
|
Call for Papers =============== 19th International Symposium on Practical Aspects of Declarative Languages (PADL 2017) http://bit.ly/PADL-2017 Paris, France 16th and 17th January 2017 Co-located with ACM POPL 2017 (http://conf.researchr.org/home/POPL-2017) The two best papers accepted for publication at PADL will be invited to submit an extended version for rapid publication in the journal Theory and Practice of Logic Programming. Conference Description ====================== Declarative languages build on sound theoretical bases to provide attractive frameworks for application development. These languages have been successfully applied to many different real-world situations, ranging from data base management to active networks to software engineering to decision support systems. New developments in theory and implementation have opened up new application areas. At the same time, applications of declarative languages to novel problems raise numerous interesting research issues. Well-known questions include designing for scalability, language extensions for application deployment, and programming environments. Thus, applications drive the progress in the theory and implementation of declarative systems, and benefit from this progress as well. PADL is a forum for researchers and practitioners to present original work emphasizing novel applications and implementation techniques for all forms of declarative concepts, including, functional, logic, constraints, etc. Topics of interest include, but are not limited to: * Innovative applications of declarative languages * Declarative domain-specific languages and applications * Practical applications of theoretical results * New language developments and their impact on applications * Declarative languages and software engineering * Evaluation of implementation techniques on practical applications * Practical experiences and industrial applications * Novel uses of declarative languages in the classroom * Practical extensions such as constraint-based, probabilistic, and reactive languages. PADL 2017 welcomes new ideas and approaches pertaining to applications and implementation of declarative languages. PADL 2017 will be co-located with the Symposium on Principles of Programming Languages (POPL 2017), in Paris, France. Important Dates and Submission Guidelines ========================================= Abstract submission: September 12, 2016 Paper submission: September 19, 2016 Notification: October 18, 2016 Camera-ready: November 1, 2016 Symposium: January 16-17, 2017 Authors should submit an electronic copy of the full paper in PDF using the Springer LNCS format. The submission will be done through EasyChair conference system: https://easychair.org/conferences/?conf=padl17 All submissions must be original work written in English. Submissions must be unpublished and not submitted for publication elsewhere. Work that already appeared in unpublished or informally published workshops proceedings may be submitted but the authors should notify the program chair about the place on which it has previously appeared. PADL 2017 will accept both technical and application papers: * Technical papers must describe original, previously unpublished research results. Technical papers must not exceed 15 pages (plus one page of references) in Springer LNCS format. * Application papers are a mechanism to present important practical applications of declarative languages that occur in industry or in areas of research other than Computer Science. Application papers are expected to describe complex and/or real-world applications that rely on an innovative use of declarative languages. Application descriptions, engineering solutions and real-world experiences (both positive and negative) are solicited. The limit for application papers is 8 pages in Springer LNCS format but such papers can also point to sites with supplemental information about the application or the system that they describe. The proceedings of PADL 2017 will appear in the LNCS series of Springer Verlag ( www.springer.com/lncs ). Two papers accepted for publication at PADL'17 will be nominated for the Most Practical Paper award (one of them as the Student Best Paper), each in cash amount of 250 Euro. These two papers will be invited to submit an extended version of their contribution to the journal "Theory and Practice of Logic Programming" for rapid publication. The extended version should contain at least 30% new content compared to the published conference paper. The extended paper will undergo an additional review process. Program Committee ================= Erika Abraham, RWTH Aachen University Marcello Balduccini, Drexel University Lars Bergstrom, Mozilla Research Bart Bogaerts, Aalto University Edwin Brady, University of St Andrews Martin Brain, University of Oxford Mats Carlsson, SICS Manuel Carro, Technical University of Madrid (UPM) and IMDEA Software Institute Stefania Costantini, University dell'Aquila Marc Denecker, KU Leuven Esra Erdem, Sabanci University Thom Fruehwirth, University of Ulm Marco Gavanelli, University of Ferrara Martin Gebser, University of Potsdam Jeremy Gibbons, University of Oxford Hai-Feng Guo, University of Nebraska at Omaha Jurriaan Hage, Universiteit Utrecht Geoffrey Mainland, Drexel University Henrik Nilsson, University of Nottingham Enrico Pontelli, New Mexico State University Ricardo Rocha, University of Porto Peter Schüller, Marmara University Peter Sestoft, IT University of Copenhagen Martin Sulzmann, Karlsruhe University of Applied Sciences Paul Tarau, University of North Texas Kazunori Ueda, Waseda University Niki Vazou, University of California, San Diego Philip Wadler, University of Edinburgh Daniel Winograd-Cort, University of Pennsylvania Neng-Fa Zhou, CUNY Brooklyn College and Graduate Center Lukasz Ziarek, SUNY Buffalo Program Chairs: Yuliya Lierler, University of Nebraska Omaha Walid Taha, Halmstad University Contacts ======== For additional information about papers and submissions, please contact the Program Chairs: Yuliya Lierler University of Nebraska Omaha, USA http://faculty.ist.unomaha.edu/ylierler/ Walid Taha Halmstad University, Sweden http://www.effective-modeling.org/p/walid-taha.html email: pa...@ea... -- Marco Gavanelli Associate Professor Ph.D. in Computer Science Dept of Engineering University of Ferrara Tel/Fax +39-0532-97-4833 http://docente.unife.it/marco.gavanelli |
From: Joachim S. <jsc...@co...> - 2016-06-22 12:10:35
|
On 22/06/16 11:19, Annick Fron wrote: > Hi, > > I have a small program like this (see below). I want to generate a > permutationof all matches, and put a sequence constraints on the > columns, but I am not able to transform the generated list into an > array, To convert a list to an array, use http://eclipseclp.org/doc/bips/kernel/termmanip/array_list-2.html In your program, you know the list length in advance, so you could also avoid the list completely, create an array in advance (dim/2) and then fill in the elements. > ... and I get into infinite loops when I ask: > listeDesMatches(Liste,7), X is Liste[2]. The infinite loops happen when you backtrack into listeDesMatches/2. They are caused by your predicates with the pattern p(N,N). p(I,N) :- I1 is I+1, p(I1,N). You can either add the missing logical condition I<N, i.e. p(N,N). p(I,N) :- I<N, I1 is I+1, p(I1,N). or, more efficiently, use p(I,N) :- ( I<N -> I1 is I+1, p(I1,N) ; true ). > What should I do ? Here is a different way to make the kind of list you want: listeDesMatches(Rows, N) :- findall(Row, ( dim(Row,[N]), Row #:: 0..1, sum(Row[1..N]) #= 2, labeling(Row) ), Rows). -- Joachim |
From: Annick F. <li...@af...> - 2016-06-22 10:37:29
|
Hi, I have a small program like this (see below). I want to generate a permutation of all matches, and put a sequence constraints on the columns, but I am not able to transform the generated list into an array, and I get into infinite loops when I ask: listeDesMatches(Liste,7), X is Liste[2]. What should I do ? Annick Fron listeDesMatches(Liste,N):- (for(I,1,N) , fromto([],In,Out,Liste),param(N) do listeDesMatches(I,SousListe,N), append(SousListe,In,Out) ). listeDesMatches(N,[],N). listeDesMatches(I,Liste,N):- Iplus1 is I +1, listeDesMatches(I,Liste,N,Iplus1). listeDesMatches(I,[Match],N,N):- match(I,N,Match,N). listeDesMatches(I,[Match|Liste],N,Index):- match(I,Index,Match,N), Indexplus1 is Index +1, listeDesMatches(I,Liste,N,Indexplus1). match(I,J,Match,N):- dim(Match,[N]), Match :: 0..1, (for(K,1,N),param(Match,I,J) do X is Match[K] , X is (or((K#=I),(K#=J)))). |
From: Gibon <gib...@gm...> - 2016-05-20 07:28:49
|
Hello, for my university project I'm working on using Jobshop Scheduling <http://eclipseclp.org/examples/jobshop.html> example with data being fetched from SQL instead of working with predefined benchmarks. For now Im able to read data from database and format it, but I become stuck on using this data. I have tried defining get_bench_custom/6 directive that will get 2 additional params (NJobs and Data from SQL compared to original get_bench/4) and then skipping calling jobshop in my get_bench_custom but I do get instantiation fault. I would be grateful for any help. Thanks in advance Marcin K. |
From: Joachim S. <jsc...@co...> - 2016-03-29 11:59:38
|
Apologies if this is already widely known... Almost anyone who has ever googled for an answer to a computing-related problem has probably come across the popular Q&A website stackoverflow.com. You can find ECLiPSe-related activity there under the 'eclipse-clp' tag http://stackoverflow.com/questions/tagged/eclipse-clp There have been some interesting questions there recently, and it is fun to browse, comment, etc, and spread the word on ECLiPSe... Cheers, Joachim |
From: Joachim S. <jsc...@co...> - 2016-03-29 11:39:56
|
Hello, The following may be of interest to those who want to better follow the progress of search while solving constraint problems. I have uploaded an example http://eclipseclp.org/examples/sudoku_traced.ecl.txt that illustrates how suspended goals can be used to create a user- defined trace of the search process. The advantage of the technique is that it does not require any modification of the search procedure itself, meaning that it works with the built-in black-box labeling/1 or search/6 predicates, as well as with your purpose-written ones. It is a relatively simple technique that should nicely complement the features of the Visualization tools http://eclipseclp.org/doc/visualisation/visualisation.html and CP-Viz http://eclipseclp.org/doc/bips/lib_public/cpviz/index.html Cheers, Joachim |
From: Joachim S. <jsc...@co...> - 2016-03-23 18:20:01
|
On 23/03/16 16:45, Ingo Dahn wrote: > > trying to re-use a software that my team completed writing in Eclipse in 1998 it > seems I have to adapt it to changes in the module system as, for example, > module_interface/1 is no longer supported. Is there any tool or guiding document > that can help doing the required changes in a larger set of Eclipse Prolog files? 1998 means that your code was written for ECLiPSe 3.X or 4.0. You can find the release notes for all subsequent releases at http://eclipseclp.org/relnotes/ The major changes in the module system happened in release 5.0, and are summarily described in http://eclipseclp.org/relnotes/rel50.html More detail (probably more than you want to know) about this change is in http://eclipse-clp.cvs.sourceforge.net/viewvc/eclipse-clp/Eclipse/documents/internal/modules.html?revision=1.1.1.1 , in particular a section on module_interface/1 towards the end. Generally, we have tried to keep things backward-compatible. Even the module_interface/1 directive is still recognized, and interpreted in terms of the newer functionality as far as possible. You will get a warning about the obsolete directive, but much of it should still work. I am always interested in larger ECLiPSe programs for inclusion in our test suite. So, if your software is openly available, and comes with a collection of test cases, I would be interested in including it. Please let us know if you run into porting problems. Regards, Joachim |
From: Ingo D. <da...@un...> - 2016-03-23 16:46:08
|
Hi, trying to re-use a software that my team completed writing in Eclipse in 1998 it seems I have to adapt it to changes in the module system as, for example, module_interface/1 is no longer supported. Is there any tool or guiding document that can help doing the required changes in a larger set of Eclipse Prolog files? Kind regards Ingo Dahn |
From: Edgaonkar, S. <Shr...@nt...> - 2016-03-22 10:29:52
|
Marco, Thanks. Non-logical variables can indeed be used to count the solutions. Thank you once again. Regards, Shrirang > On 22-Mar-2016, at 5:01 PM, Marco Gavanelli <mar...@un...> wrote: > >> On 22/03/16 04:18, Edgaonkar, Shrirang wrote: >> Similar to "once / 1" I would like to write "twice / 1" goal so that >> the first solution backtracks and finds the second solution. I wish >> to get both the solutions. > > In order to get two solutions (without recomputing the first), you need > to store some information in a way that survives backtracks. > > The first idea that comes to my mind is to use assert and retract, that > are standard and work in all Prolog compilers: > > :- dynamic previously_solved/0. > > twice(Goal):- > call(Goal), > (previously_solved > -> !, retract(previously_solved) > ; assert(previously_solved)). > > In ECLiPSe you can have better, reentrant code by using non-logical > storage predicates: > > http://eclipseclp.org/doc/userman/umsroot050.html > > Best, > Marco > > -- > http://docente.unife.it/marco.gavanelli > > ------------------------------------------------------------------------------ > Transform Data into Opportunity. > Accelerate data analysis in your applications with > Intel Data Analytics Acceleration Library. > Click to learn more. > http://pubads.g.doubleclick.net/gampad/clk?id=278785351&iu=/4140 > _______________________________________________ > ECLiPSe-CLP-Users mailing list > ECL...@li... > https://lists.sourceforge.net/lists/listinfo/eclipse-clp-users ______________________________________________________________________ Disclaimer: This email and any attachments are sent in strictest confidence for the sole use of the addressee and may contain legally privileged, confidential, and proprietary data. If you are not the intended recipient, please advise the sender by replying promptly to this email and then delete and destroy this email and any attachments without any further use, copying or forwarding. |