[Insight-developers] Linear algebra licensing and ITK 3.18 Release

Tom Vercauteren tom.vercauteren at m4x.org
Mon Mar 15 19:15:10 EDT 2010


Hi Luis,

Thanks for getting back to me.

It looks like lbfgs and lbfgsb is much more of a problem than lsqr...

Indeed, the authors of lsqr chose to also license their software as BSD.
  http://www.stanford.edu/group/SOL/software/BSDlicense.txt
So while ACM might own the copyright of the code for some obscure
reasons, at least we are not willingly infringing the authors will.

L-BFGS L-BFGS-B seems more problematic, there is the same issue of
copyright potentially held by ACM
  http://portal.acm.org/citation.cfm?id=279236
but the authors refer to their software as a GPL one:
  http://www.eecs.northwestern.edu/~nocedal/lbfgsb.html
  http://www.eecs.northwestern.edu/~nocedal/lbfgs.html
even though this is not consistent with what is written on these pages
  "This software is freely available for educational or commercial purposes."
  "This software is freely available [...] all commercial products using it"

We should think moving towards the elastix implementation of it:
  http://elastix.isi.uu.nl/doxygen/a00204.html
which is BSD
  http://elastix.isi.uu.nl/legal.php

Another option could be
  http://www.chokkan.org/software/liblbfgs/

I am adding this info to the bug entry.

Hope this helps,
Tom

On Mon, Mar 15, 2010 at 23:14, Luis Ibanez <luis.ibanez at kitware.com> wrote:
> Hi Tom,
>
>
> A)   Good point,
>       We should have filed a bug entry on this issue.
>
>       I just did so:
>       http://public.kitware.com/Bug/view.php?id=10422
>
>       and added an email trail of the discussions in the mailing list:
>       http://public.kitware.com/Bug/view.php?id=10422#bugnotes
>
>
> B)  At this point the main concern is     "lsqr".
>
>     but, during the weekend we heard (in the Slicer-dev mailing
>     list) that the lbfgsb optimizer may have similar issues.
>
>
> C)  The immediate things to try are:
>
>                    1) test       vnl_sparse_lu
>                    2) test       itpack
>
>      These two, are pieces of code that already in the ITK
>      repository and that could be replacements for "lsqr".
>
>
> D)  My understanding about the "lsqr" problem is that the
>      Fortran version of this routine(s) was published in ACM:
>
>           http://portal.acm.org/citation.cfm?id=355989
>
>       as Algorithm 583:
>
> http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.86.1305&rep=rep1&type=pdf
>
>     and it is listed in the Collection of ACM algorithtms
>
>                    http://calgo.acm.org/
>
>     as
>
>                    http://calgo.acm.org/583.gz
>
>      and that this code is the same as the FORTRAN one in
>
>                  http://www.netlib.org/linalg/lsqr
>
>      that then was put into VXL
>
> http://www.itk.org/cgi-bin/viewcvs.cgi/Utilities/vxl/v3p/netlib/linalg/lsqr.f?revision=1.2&root=Insight&view=markup
>
>      from which the VXL  C version was generated:
>
> http://www.itk.org/cgi-bin/viewcvs.cgi/Utilities/vxl/v3p/netlib/linalg/lsqr.c?root=Insight&view=markup
>
>
> The software in ACM Algorithms is subject to this license
> http://www.acm.org/publications/policies/softwarecrnotice
>
> <quote>
> "Noncommercial Use
> The ACM grants to you (hereafter, User) a royalty-free, nonexclusive
> right to execute, copy, modify and distribute both the binary and
> source code solely for academic, research and other similar
> noncommercial uses, subject to the following conditions:"
> </quote>
>
>
>
>      The key question at this point is
>
>          Who holds the copyright of  "lsqr.f"    ?
>
>       Is it
>
>      1) Association for Computing Machinery, Inc. ?
>
> or
>
>      2) Michael Saunders (http://www.stanford.edu/~saunders/)
>          and Chris Page.
>
>      I'm sending emails to the three of them,
>      and I'm anticipating an interesting set of responses....
>
>      Once we figure out who is the copyright holder,
>      we can ask them about licensing....
>
>
>
>  Thanks for your persistence with this issue...
>
>
>        Luis
>
>
> ----------------------------------------------------------------------------------------
> On Fri, Mar 5, 2010 at 12:09 PM, Tom Vercauteren
> <tom.vercauteren at gmail.com> wrote:
>> Hi Luis and Bill,
>>
>> Sorry to come back to it, but I have to admit I am a bit lost on the
>> linear algebra problem that blocks the 3.18 release.
>>
>> Is there a bug tracker entry that lists the remaining issues that
>> needs to be solved before getting 3.18 out? I am not sure to know what
>> needs to be fixed exactly. Is it only lsqr as implied by your message
>> here:
>>  http://www.itk.org/pipermail/insight-users/2010-January/035063.html
>> or are there other potential problems?
>>
>> If it's only lsqr, are you sure that we are not allowed to use it? If
>> I look at the different lsqr packages here,
>>  http://www.stanford.edu/group/SOL/software/lsqr.html
>> I would be inclined to think that the lsqr code is licensed under the
>> CPL which seems to be incompatible with BSD*.
>> However, lsqr is only one part of the SOL package from Stanford:
>>  http://www.stanford.edu/group/SOL/software.html
>>
>> And from this page, it is clearly stated that
>>  "The software may alternatively be used under the terms of a  BSD License."
>>
>> Could that solve the 3.18 blocker?
>>
>> Anyhow, this raises some other related questions. What is the base
>> plan for 3.18?
>> 1) Find a decent set of patches that answers the licensing issues
>> or
>> 2) Try and get a suitable replacement for the linear algebra package as a whole
>>
>> Similarly is there a defined roadmap on this for ITK 4.0?
>>
>> In the meantime, I have updated the wiki page:
>>  http://www.itk.org/Wiki/Proposals:Sparse_Linear_Solvers
>>
>> Unfortunately, I have not been able to find a decent linear algebra
>> package that covers ITK's needs:
>> - Support high-level dense matrix algorithms (e.g. Cholesky, LU and QR
>> factorization, linear solvers, matrix exponential)
>> - Support high-level sparse matrix algorithm (e.g. least squares
>> solvers, linear solver)
>> - BSD-style license
>> - Maintained code
>>
>> Despites its headers-only LGPL awkwardnesses (see
>> http://public.kitware.com/pipermail/insight-users/2010-February/035070.html
>> ), the closest I can see is still Eigen.
>>
>> Regards,
>> Tom
>>
>> * IANAL
>>
>> On Mon, Mar 1, 2010 at 23:59, Luis Ibanez <luis.ibanez at kitware.com> wrote:
>>> Hi John,
>>>
>>> The ITK 3.18 release is stuck on finding a replacement
>>> for the linear solvers that we use from VNL/VXL.
>>>
>>> The code that we are currently using for solving linear
>>> equations is copyrighted by ACM and its license precludes
>>> commercial use. (therefore it is not compatible with ITK's
>>> license, and has to be removed).
>>>
>>> We have been looking at another linear solvers, but have
>>> not got to the point where we have a suitable replacement.
>>>
>>> You will find a summary of our exploration in the following
>>> Wiki page:
>>>
>>> http://www.itk.org/Wiki/Proposals:Sparse_Linear_Solvers
>>>
>>>
>>> We will appreciate any suggestions,
>>>
>>>
>>>       Thanks,
>>>
>>>
>>>              Luis
>>>
>>>
>>> ------------------------------------------------------------------------------------
>>> On Mon, Mar 1, 2010 at 3:06 PM, John Drescher <drescherjm at gmail.com> wrote:
>>>> On Thu, Dec 3, 2009 at 10:16 PM, Luis Ibanez <luis.ibanez at kitware.com> wrote:
>>>>> The agenda for tomorrow's tcon has been posted at:
>>>>>
>>>>> http://www.itk.org/Wiki/Agenda%26Status_120309
>>>>>
>>>>> It includes a suggested list of items to work on
>>>>> for the release of ITK 3.18 by January 2010.
>>>>>
>>>>
>>>> BTW, What happened to this release?
>>>>
>>>> John
>>>> _____________________________________
>>>> Powered by www.kitware.com
>>>>
>>>> Visit other Kitware open-source projects at
>>>> http://www.kitware.com/opensource/opensource.html
>>>>
>>>> Kitware offers ITK Training Courses, for more information visit:
>>>> http://www.kitware.com/products/protraining.html
>>>>
>>>> Please keep messages on-topic and check the ITK FAQ at:
>>>> http://www.itk.org/Wiki/ITK_FAQ
>>>>
>>>> Follow this link to subscribe/unsubscribe:
>>>> http://www.itk.org/mailman/listinfo/insight-users
>>>>
>>> _____________________________________
>>> Powered by www.kitware.com
>>>
>>> Visit other Kitware open-source projects at
>>> http://www.kitware.com/opensource/opensource.html
>>>
>>> Kitware offers ITK Training Courses, for more information visit:
>>> http://www.kitware.com/products/protraining.html
>>>
>>> Please keep messages on-topic and check the ITK FAQ at:
>>> http://www.itk.org/Wiki/ITK_FAQ
>>>
>>> Follow this link to subscribe/unsubscribe:
>>> http://www.itk.org/mailman/listinfo/insight-users
>>>
>>
>


More information about the Insight-developers mailing list