new optional (or experimental) package CSDP?

102 views
Skip to first unread message

Dima Pasechnik

unread,
Apr 10, 2013, 11:52:30 PM4/10/13
to sage-...@googlegroups.com, Mehdi Ghasemi, e.va...@qmul.ac.uk
Dear all, 
we'd like to add CSDP, (a fast semidefinite programming solver, one of the very best around), 
as an optional package.
https://projects.coin-or.org/Csdp/ 
It is a C library+headers, and I've written almost all what is needed (besides spkg-install etc)
to have it seamlessly installable (using autotools) into Sage, here:

One major "customer" of CSDP in Sage is Flagmatic, see http://flagmatic.org/

We are also working on a Cython interface to CSDP, and hope to have it ready soon.
CSDP itself has a GPL-incompatible license imposed by the employer of the developer of CSDP, so 
it itself cannot become standard.

I understand that we need to vote on this. (Needless to say I'm committed to support CSDP as an optional
package of Sage for the coming N years).
Please vote on the following options:

1) Yes to CSDP becoming an optional package

2) no to 1), but yes to CSDP becoming an experimental package.

3) no, no, just go away.

Thanks,
Dima

Nils Bruin

unread,
Apr 11, 2013, 12:32:56 AM4/11/13
to sage-devel
On Apr 10, 8:52 pm, Dima Pasechnik <dimp...@gmail.com> wrote:
> 2) yes to CSDP becoming an experimental package.

Doing that requires no different work from preparing it to be an
optional package, so why not do that first? Once that's done I would
expect it'll be pretty smooth sailing into optional status.

Julien Puydt

unread,
Apr 11, 2013, 12:56:45 AM4/11/13
to sage-...@googlegroups.com
Le 11/04/2013 06:32, Nils Bruin a �crit :
+1

Snark on #sagemath

Nathann Cohen

unread,
Apr 11, 2013, 5:25:08 AM4/11/13
to sage-...@googlegroups.com
+1

I had never heard of Flagmatic before. Looks GREAT :-D

Nathann

On Thursday, April 11, 2013 6:56:45 AM UTC+2, Snark wrote:
Le 11/04/2013 06:32, Nils Bruin a �crit :

Dima Pasechnik

unread,
Apr 12, 2013, 8:38:20 AM4/12/13
to sage-...@googlegroups.com
On 2013-04-11, Nathann Cohen <nathan...@gmail.com> wrote:
> ------=_Part_629_6688666.1365672308379
> Content-Type: text/plain; charset=ISO-8859-1
> Content-Transfer-Encoding: quoted-printable
>
> +1
>
> I had never heard of Flagmatic before. Looks GREAT :-D
it implements a range of recent ideas due to Razborov et al, which
produced a lot of progress in extremal (hyper)graph theory recently.

Dima
>
> Nathann
>
> On Thursday, April 11, 2013 6:56:45 AM UTC+2, Snark wrote:
>>
>> Le 11/04/2013 06:32, Nils Bruin a =EF=BF=BDcrit :=20
>> > On Apr 10, 8:52 pm, Dima Pasechnik<dimp...@gmail.com> wrote:=20
>> >> 2) yes to CSDP becoming an experimental package.=20
>> >=20
>> > Doing that requires no different work from preparing it to be an=20
>> > optional package, so why not do that first? Once that's done I would=20
>> > expect it'll be pretty smooth sailing into optional status.=20
>>
>> +1=20
>>
>> Snark on #sagemath=20
>>

Nathann Cohen

unread,
Apr 12, 2013, 5:09:52 PM4/12/13
to Sage devel
>> I had never heard of Flagmatic before. Looks GREAT :-D
> it implements a range of recent ideas due to Razborov et al, which
> produced a lot of progress in extremal (hyper)graph theory recently.

I had no idea it had evolved into an open source project already :-)

Nathann

Dima Pasechnik

unread,
Apr 29, 2013, 9:00:40 AM4/29/13
to sage-...@googlegroups.com, Mehdi Ghasemi, e.va...@qmul.ac.uk, P Purkayastha
here is the ticket adding CSDP as an experimental package:

Nathann Cohen

unread,
Apr 29, 2013, 9:09:44 AM4/29/13
to Sage devel, Mehdi Ghasemi, e.va...@qmul.ac.uk, P Purkayastha
> here is the ticket adding CSDP as an experimental package:
> http://trac.sagemath.org/sage_trac/ticket/14505

Wow. Cool !

Why do you prefer to create 2 tickets for that ? It feels a bit weird to review an interface between Sage and a spkg which is not included, and it feels weird to add to Sage a spkg which is not interfaced with it.

Though if the two tickets depend on each other, then no problem ;-)

Nathann

Dima Pasechnik

unread,
Apr 29, 2013, 10:25:08 AM4/29/13
to sage-...@googlegroups.com, Mehdi Ghasemi, e.va...@qmul.ac.uk, P Purkayastha


On Monday, 29 April 2013 21:09:44 UTC+8, Nathann Cohen wrote:
> here is the ticket adding CSDP as an experimental package:
> http://trac.sagemath.org/sage_trac/ticket/14505

Wow. Cool !

Why do you prefer to create 2 tickets for that ? It feels a bit weird to review an interface between Sage and a spkg which is not included, and it feels weird to add to Sage a spkg which is not interfaced with it.

e.g. Flagmatic only needs csdp executable installed.
So, in a way, it already makes sense without anything extra.

Nathann Cohen

unread,
Apr 29, 2013, 10:26:37 AM4/29/13
to Sage devel, Mehdi Ghasemi, e.va...@qmul.ac.uk, P Purkayastha
> e.g. Flagmatic only needs csdp executable installed.
> So, in a way, it already makes sense without anything extra.

Oh. I see !

Haveyou already created a ticket for the interface ?

Nathann

Dima Pasechnik

unread,
Apr 29, 2013, 10:47:33 AM4/29/13
to sage-...@googlegroups.com, Mehdi Ghasemi, e.va...@qmul.ac.uk, P Purkayastha
not yet, it's in the works still.
 
Nathann

Nathann Cohen

unread,
Apr 29, 2013, 10:50:57 AM4/29/13
to Sage devel, Mehdi Ghasemi, Emil Vaughan, P Purkayastha, Jernej
> not yet, it's in the works still.

Ok, cool ! Send me a line when you will begin to work on that. And to
Jernej too, whom I added to this email. He may be part of GSOC this
summer, and may want to work on that too.

Could you send an email to sage-devel to ask them "how the hell we are
supposed to libtoolize things without modifying upstream" ? I don't
know either, but I still have scars from the first spkg I put in Sage
and in which I modified upstream : Cliquer :-P

Admittedly it was not a very nice piece of work, though. I mean, what
I did with it of course ! :-D

Nathann

Dima Pasechnik

unread,
Apr 29, 2013, 11:39:40 AM4/29/13
to sage-...@googlegroups.com
In this case all my changes are perfectly traceable on github.
I don't see a point in packaging these in one big patch.
As we hopefully are moving towards a saner sources management model,
big patches should be dying away, IMHO...

Dima


>
> Nathann
>

Dima Pasechnik

unread,
Apr 29, 2013, 11:47:51 AM4/29/13
to sage-...@googlegroups.com, jernej....@gmail.com, nathan...@gmail.com
In gmane.comp.mathematics.sage.devel, you wrote:
>> not yet, it's in the works still.
>
> Ok, cool ! Send me a line when you will begin to work on that. And to
> Jernej too, whom I added to this email. He may be part of GSOC this
> summer, and may want to work on that too.
The code is here:
https://github.com/mghasemi/pycsdp
(written by our new postdoc)

it still lacks docstrings, etc etc.

Dima

Nathann Cohen

unread,
Apr 29, 2013, 11:49:57 AM4/29/13
to Dima Pasechnik, Sage devel, jernej....@gmail.com
> The code is here:
> https://github.com/mghasemi/pycsdp
> (written by our new postdoc)
>
> it still lacks docstrings, etc etc.

O_o

But how do you get this into Sage ? I don't get how you work...
Probably further on the GIT road than I can understand right now :-P

Nathann

Dima Pasechnik

unread,
Apr 29, 2013, 11:54:37 AM4/29/13
to sage-...@googlegroups.com
On 2013-04-29, Nathann Cohen <nathan...@gmail.com> wrote:
>> The code is here:
>> https://github.com/mghasemi/pycsdp
>> (written by our new postdoc)
>>
>> it still lacks docstrings, etc etc.
>
> O_o
>
> But how do you get this into Sage ? I don't get how you work...
I'm telling him for a month already to get a Sage trac account, you
know...
Well, I hope it will happen, and I don't have to scream... :)
Anyhow, that's the most unpleasant part of the inteface done, creating
linked with pointers C structs to be passed to the solver.

> Probably further on the GIT road than I can understand right now :-P
no, it's nothing to do with git per se.

Dima
>
> Nathann
>

kcrisman

unread,
Apr 29, 2013, 1:23:00 PM4/29/13
to sage-...@googlegroups.com


On Wednesday, April 10, 2013 11:52:30 PM UTC-4, Dima Pasechnik wrote:
Dear all, 
we'd like to add CSDP, (a fast semidefinite programming solver, one of the very best around), 
as an optional package.
https://projects.coin-or.org/Csdp/ 

I assume this works on Linux as well - there were some remarks in the flagmatic user guide that indicated not, but maybe that wasn't because of CSDP.  I guess I recall that optional packages should work on all (most?) platforms we support Sage on. 

Thierry Dumont

unread,
Apr 29, 2013, 3:43:41 PM4/29/13
to sage-...@googlegroups.com
Le 29/04/2013 19:23, kcrisman a �crit :
>
>
> On Wednesday, April 10, 2013 11:52:30 PM UTC-4, Dima Pasechnik wrote:
>
> Dear all,
> we'd like to add CSDP, (a fast semidefinite programming solver, one
> of the very best around),
> as an optional package.
> https://projects.coin-or.org/Csdp/ <https://projects.coin-or.org/Csdp/>
>

A very good ide! BUT: have you seen that, on
https://projects.coin-or.org/Csdp/ the first links you can see are broken ?

>
> I assume this works on Linux as well - there were some remarks in the
> flagmatic user guide that indicated not, but maybe that wasn't because
> of CSDP. I guess I recall that optional packages should work on all
> (most?) platforms we support Sage on.
>
> --
> You received this message because you are subscribed to the Google
> Groups "sage-devel" group.
> To unsubscribe from this group and stop receiving emails from it, send
> an email to sage-devel+...@googlegroups.com.
> To post to this group, send email to sage-...@googlegroups.com.
> Visit this group at http://groups.google.com/group/sage-devel?hl=en.
> For more options, visit https://groups.google.com/groups/opt_out.
>
>

tdumont.vcf

Dima Pasechnik

unread,
Apr 29, 2013, 11:08:13 PM4/29/13
to sage-...@googlegroups.com
On 2013-04-29, kcrisman <kcri...@gmail.com> wrote:
> ------=_Part_5928_32884296.1367256180205
> Content-Type: text/plain; charset=ISO-8859-1
of course my spkg works on Linux, and even on cygwin... ;)
Didn't check Solaris yet.

Flagmatic has been fixed since, too.

>

Dima Pasechnik

unread,
Apr 29, 2013, 11:16:35 PM4/29/13
to sage-...@googlegroups.com
On 2013-04-29, Thierry Dumont <tdu...@math.univ-lyon1.fr> wrote:
> This is a multi-part message in MIME format.
> --------------060206000403010900080606
> Content-Type: text/plain; charset=ISO-8859-1; format=flowed
> Content-Transfer-Encoding: quoted-printable
>
> Le 29/04/2013 19:23, kcrisman a =E9crit :
>>
>>
>> On Wednesday, April 10, 2013 11:52:30 PM UTC-4, Dima Pasechnik wrote:
>>
>> Dear all,
>> we'd like to add CSDP, (a fast semidefinite programming solver, one
>> of the very best around),
>> as an optional package.
>> https://projects.coin-or.org/Csdp/ <https://projects.coin-or.org/Csdp=
> />
>>
>
> A very good ide! BUT: have you seen that, on=20
> https://projects.coin-or.org/Csdp/ the first links you can see are broken ?
..."Last modified 3 years ago"

Well, the CSDP code works, and is very popular.

Reply all
Reply to author
Forward
0 new messages