22

Assuming a copyright license (I'll reference Apache 2.0, but that's an example only) that allows derivations, at what point are those derivations so extensive that the Apache license no longer applies? If every line of code is replaced, classes refactored, packages renamed, moved, merged, and split, to the point that every character has, at one point or another, been replaced, and code structure and flow has been changed, does the Apache license still apply?

What about with copyleft licenses? If there were numerous small changes, then, obviously, each change would have to be licensed under the original copyleft license, so the degree of deviation is irrelevant. But, if there was one big update that changed everything, would it still count as a "derivative" and the copyleft license still apply?

I'm not concerned with what is provable in court; assume the history of the code can be proven without doubt.

For those who don't know the reference, Theseus' Paradox is a thought experiment that goes as follows: if the Argo (the ship of Jason and the Argonauts) has had every single wooden part replaced, is it still, fundamentally, the same ship?

0

2 Answers 2

9

The license used, is actually completely irrelevant. The question lies purely in copyright.

What you need to figure out, is whether your changes will constitute a derivative work. Derivative work means that the new code is derived from the existing code. Generally, a good way of thinking of this is asking yourself the following question: Can my work effectively exist had the old code not existed (assuming you did not write your own code from scratch)?

Theseus' Paradox is interesting here: If you replace every wooden part of the ship, and you show the new ship to a third-party, they may say it is still the old ship. The ship may be new, but the old idea lies.

This is where a fundamental difference kicks in: ideas cannot be copyrighted.

Since ideas can't be copyrighted, the rebuilt ship would be considered a completely different ship. Rewritten code would be considered a new library.

4
  • 1
    This answer is mostly good: a jurisdiction's interpretation of derivative works is the relevant consideration to consult, in statute and in case law, and certainly ideas can't be copyrighted. However, I don't know what jurisdiction (if any) could allow downstream authors to iteratively make derivative works in such that "only the idea" of the original remains. That is, I question whether the known pedigree of the downstream work as a derivative could ever be overcome by sufficiently large dissimilarity to the original work.
    – apsillers
    Aug 19, 2016 at 16:54
  • 5
    In other words, in some derivative chain A=>B=>C=>...=>Y=>Z, as long as each step is decidedly a derivative of the previous work under copyright, I don't know of any case law (not that my knowledge is absolute by any means) that would allow the author of Z to successfully claim Z is not a derivative of A. In order for the claim to be successful, I would expect some specific step in the chain would need to fail to qualify as a derivative. This still leaves the subjective question of what causes some particular link to be non-derivative. (You know, maybe I'll just write my own answer. :D)
    – apsillers
    Aug 19, 2016 at 17:00
  • As an example, lame mp3 ebcoder was thus relicensed when all old code was replaced - lame.sourceforge.net/about.php Aug 19, 2016 at 18:42
  • @apsillers Hmm... You're absolutely right. I'm starting to wonder whether porting disputes my claim - if I remember correctly, ports are new works.
    – Zizouz212
    Aug 19, 2016 at 21:40
12

In the United States, a determination of copyright infringement is based on two broad considerations:

  1. the author's access to the original work
  2. the new work's similarity to the original work

If you choose to re-implement some software without ever viewing its source code, then you can nullify the first consideration and avoid infringement (provided you can successfully prove the negative of never having seen the source code). This is the "clean room" approach to re-implementing software.

If you have looked at the original work, though, we must examine the second consideration. What makes one written work "similar" to another in copyright terms?

Copyright applies to creative expression. Ideas are ineligible for copyright, per the idea-expression divide. This is closely related to the "merger doctrine": if an idea can be expressed in a very limited number of ways, then the idea and it only possible expression are considered merged -- the expression is the idea. For example, describing the rules of a game in a purely mechanical way ("Draw one card, then play one card that matches a color on the board...") can only be done in a few reasonable ways.

We know, then, that some aspects of a work are not copyrightable (i.e., those on the "idea" side of the divide), and other aspects are copyrightable (on the "expression" side). A naive hope would be that a complete removal of all original code would eliminate all derivative copyright concerns, but a work can be derivative without actual lexical similarity. That is, the elements of a work that are protected by copyright extend beyond the exact words, or lines of code, or chords of a song.

Consider that literary characters are protected by copyright, and the creation of a new work that uses a copyrighted character -- even absent any infringing text from the original work -- can be infringement. While I am not aware of any relevant case law, there may be analogous considerations for the creative decision-making that goes into writing a computer program. The structure of a program, or the organization of code into files and classes might be sufficiently creative to qualify for copyright protection.

The point here, I suppose, is that it's all a bit murky. In my understanding, if you could theoretically identify all the copyrightable elements of a program and remove them and replace them with your own work, you'd have a work that is no longer a derivative of the original. That is, if you logically strip the program down to its barest idea-from and then build it back up with your own expression, then you have freed yourself from the original copyright. I think this sounds difficult to do feasibly, but it is an approach that might possibly pass in a court of law if you could do it.

If there exists a later work, down a chain of derivatives, that contains no trace of copyrightable elements from the original (including non-literal copyrightable elements), then probably the downstream work is no longer legally a derivative of the original, since it fails the similarity test. I am not prepared to say whether it would be possible to create such a work.

2
  • 4
    The BSD operating system is an example of a Ship of Theseus: all the original UNIX code from AT&T was systematically rewritten at UC Berkeley in order to obtain a freely distributable OS. However, it is not a usable precedent: the resulting litigation was settled, and the details of the case were dependent on the pre-1978 U.S. copyright regime where copyright had to be asserted explicitly in order to be valid (which, conveniently, AT&T forgot to do in some parts of UNIX).
    – amon
    Jul 6, 2018 at 9:15
  • 3
    @amon, that was (more or less) a "clean room" replacement of the offending pieces.
    – vonbrand
    Jul 9, 2018 at 15:02

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.