An Explanation of Computation Theory for Lawyers
groklaw.net
groklaw.net
I am a lawyer. I am also a software guy. But I'll be the first to say that this is WAY too technical of an explanation for 99% of lawyers to follow, let alone be persuaded.
It reads like notes from an Intro to Algorithms class, rather than as a magazine article. It is not written in the form that lawyers are used to. It appeals solely to pure logic (logos) and not at all to emotion (pathos).
Lists like "1. A synthetic language with a defined syntax; 2. An explicit list of logical inference rules; 3. An explicit list of axioms" will just scare lawyers away.
If you want to convince lawyers, you have to speak their (often strange) language. This document does not do so.
Other than that, you've nailed it. This is going to be a clean miss with lawyers. After much frustration in dealing with lawyers (who I know and like, even), I've come to the conclusion that this type of argument is so foreign to the legal mind that when you speak in these terms to a lawyer, it feels frustratingly like they're not even hearing you. They're probably not. This argument starts from simple base premises and builds upward to a conclusion. It seems to me that most arguments pertaining to law, start with the conclusion and then circle it, surrounding it with (often disjointed and sometimes even contradictory) arguments until a pile large enough to ensure victory is amassed. I think engineers are sometimes afflicted with the tendency to favor tall, thin towers of logic, even when there are probably better approaches.
It is exceedingly frustrating at first for the engineering mind to talk to the legal mind, even in personal settings that have noting to do with law. What I've found easiest is to quit using if-then's and start using and's. Imagine a heap, not a tower.
It's ineffective for another reason. Arguments such as "We can make one by listing all possible programs in alphabetic order. Any program that one may write is sitting in this list waiting to be written. In such a case, could a program be considered an invention in the sense of patent law? Or is it a discovery because the program is a preexisting mathematical abstraction that is merely discovered?" are irrelevant, because a court would observe that it takes effort and intention for a programmer to write a program, just as it takes effort and intention for an author to write a novel. (And for the same reason, any argument that novels can't be copyrighted because they are merely "discovered" would fall flat on its face.)
The law takes into account the thoughts and intentions of people, which trump logical mathematical arguments, however sound. I recommend the essay "What Colour are your bits?" at http://ansuz.sooke.bc.ca/lawpoli/colour/2004061001.php which goes into this point in more detail.
That doesn't mean it's pointless to try to get judges to understand computers better. When they order things that're impossible -- such as telling an ISP to filter all traffic that infringes copyright, including on encrypted data -- they are clearly in need of education.
In fact "invent" and "discover" originally had the same definition. (The Latin root invenire meant to find or come upon.) Scientists of the Renaissance era referred to their scientific discoveries as "inventions".
An argument along these lines inevitably becomes one of semantics; it doesn't actually shed any light on the subject of whether software can or ought to be patented.
Though this depends on your definition of "discover" and "invent", I would be inclined to disagree. I personally find that the process of writing software has more in common with engineering that mathematics.
Another argument: 'x was discovered', in some sense, implies that x could likely have been discovered by another intelligent being in another time and place. 'x was invented' implies that such was unlikely. Though I would agree that algorithms are discovered (intelligent alien races are as likely to know quicksort as they are relativity and calculus), I don't agree that complex software systems are discovered.