pmint copyright WAS integral of 1/(x^4+3*x^2+1) fails



There is a series of issues here:

1) Is there a valid copyright on pmint?
2) Assuming there is, what does it cover?
3) Assuming it covers the Maxima translation, can we legally include
it in our share file?
4) Assuming we cannot legally include it, what are the implications of
including it anyway?

I am not a lawyer, but I think I do understand copyright law moderately well.

1) I am pretty confident there is a valid copyright on pmint.
Software can be copyrighted, there is a prima facie valid copyright
notice on it (not that that is required), and everyone seems to agree
that Bronstein wrote it. The fact that the code is posted to the INRIA
Web site has no effect on the validity of the copyright. Indeed, the
*whole point* of copyright is that you can publish something widely
and still hold rights to it.

2) Copyrights cover the *expression* of ideas, not the ideas
themselves (which are the province of patents). They also cover
"derived works" like translations into other languages.  However, the
line between an idea and its expression can be hard to determine in
the case of algorithms/programs. See
http://www.softwarefreedom.org/resources/2007/originality-requirements.html.
So this is unclear. It would be much safer to write an implementation
of the Maxima code based on a high-level description of the algorithm
than to translate a running implementation.

3) Supposing the copyright covers the Maxima translation, can we
legally include it in a Maxima distribution? Bronstein's statements
about how easy it is to port, how it is a "cheap" implementation (in
either sense) etc. do not seem to be any sort of license grant to in
fact port it (even ignoring formalities).  After all, you could just
as well interpret them as part of a sales pitch to a potential
licensee.  And though it might well be fair use to *run* a program
published on a Web site (or in a book) or to experiment with it on
your personal machine, I don't know of any fair use doctrine that
allows you to *redistribute* a program like this (except possibly to
students in a class).  And I'm not sure what the characterization of
pmint as "free" means.  It is also "free" to read the New York Times
on the Web; that doesn't mean the NYT will allow you to redistribute
their content.

4) So it doesn't look obvious on the face of it that the Maxima
project has the legal right to redistribute a translation of pmint. It
also does not look as though the Maxima project can benefit from the
"safe harbor" provision of the DMCA which protects ISPs, search
engines, and presumably SourceForge from copyright infringements by
their users (as long as the service provider takes down content upon
complaint), since we are not "service providers" in the DMCA sense.
The fact that other CASs distribute pmint is irrelevant here.

So it seems to me that there are three possibilities left:

a) Obviously the easiest and safest way is to get a statement from
INRIA licensing pmint under a license compatible with our distribution
-- not necessarily compatible with GPL, since it is distributed as a
separate program in share.

b) We make sure that our version of pmint is not a translation of a
copyright-protected version. Since it is hard to know whether the
published executable code is protected by copyright, the safest thing
would be to write a version from scratch based on the description of
the algorithm.

c) We make a pragmatic decision that neither Bronstein's estate nor
INRIA is likely to sue the Maxima project or its participants.  Since
the Maxima project doesn't even have a legal existence, let alone
assets, it is not clear what or whom they would sue.  I suppose they
could sue say Robert Dodier (as the de facto leader -- which makes his
caution understandable) or the person who submitted the code, or both.
 Maybe even our employers if it is determined that some of us work on
Maxima as part of our employment. And maybe even a deep-pocketed user
-- suppose (say) Boeing or Alcatel was a heavy user of Maxima -- this
could theoretically have a "chilling effect" on Maxima usage.  But
frankly, it all seems rather far-fetched.  I don't see INRIA, a branch
of the French state, persuing such messy, uncertain, and unprofitable
litigation against Maxima, its developers, and its users. And it is
not clear what sort of damages they could extract.  On the other hand,
you'd think that if they cared, and if indeed Maple and Mathematica
include pmint as part of their distribution, that they'd go after
them.... There may be a laches issue here too, especially if INRIA has
been clearly informed as to our intent.

To reduce uncertainty, it makes sense to try approach (a), and perhaps
someone can look into approach (b), basing his/her work on the
published description of the algorithm.  The risks of (c) seem
far-fetched, but if we can easily avoid them entirely....

                   -s