3 ms·
The “Software is Math” is both poorly reasoned and probably not desirable. I think the vast majority of us will benefit from software continuing to be classifi
by aranchelk 5y ago
The “Software is Math” is both poorly reasoned and probably not desirable.
I think the vast majority of us will benefit from software continuing to be classified as creative works so we can use copyright law to either protect commercial interests and/or as the underpinning for open source copyleft.
- throwawaygh 5y ago> The “Software is Math” is both poorly reasoned and probably not desirable. Hey! Don't you know everyone programs in Coq these days and every CSS style sheet is backed by proof? /s
- paulmd 5y agoThe concept of "illegal numbers" is indeed quite interesting when you consider the countability of Turing Machines. Lemma 1: The computation performed by any program or function (algorithm) operating on a Turing Machine can be represented by an initial Turing Machine state and the rules of turing machine computation Lemma 2: There are countably many turing machines Lemma 3: Therefore, a unique integer can be assigned to each Turing-machine program that could ever possibly exist. Lemma 4: All implementations of a function, regardless of language, can therefore be concisely and uniquely represented by a particular integer. Contradiction: Implementations of a function can be copyrighted, and yet integers cannot. Contradiction: Abstract algorithms can be patented, and yet integers cannot. Computer programs and algorithms are very akin to numbers. Most of them are useless, they don't perform any useful computation, many of them are not "correct", and most of them never even halt, most likely. However, there are certain "interesting" numbers that have useful properties due to emergent properties of the mathematical systems in which they exist. This is highly akin to, for example, prime numbers. Can you patent a prime number? Well, I can patent computer program 389355935, and just by giving you that number, I've given you all the information needed to implement that particular Turing Machine.
- baggy_trough 5y agoIsn’t that like arguing you shouldn’t be able to copyright a book because the text could be encoded as a number?
- paulmd 5y agoedit: actually per the sibling comment, this is not true! There are not countably many possible books that could ever exist. Therefore, I can't tell you "I just wrote book 394343" and have that convey any useful information. You can do that with computer programs. Computer programs are integers. At least for Turing Machines. "Useful" computer programs are like "primes" or other "interesting numbers", they are scattered around the (integer) number line and they need to be discovered, but they are emergent mathematical properties of the system, not novel innovations. The innovation comes from deciding that particular computation is useful - like primes can be used as a basis for cryptography. Cryptography is patentable. The primes that go into it are not. Those are just numbers that happen to have some useful property for this application.
- deleted 5y ago[deleted]
- baggy_trough 5y ago> Therefore, I can't tell you "I just wrote book 394343" and have that convey any useful information. You can do that with computer programs. I don’t see why there is any difference between books and programs in this regard.
- throwawaygh 5y ago> There are not countably many possible books that could ever exist. A book is a sequence of characters c_1,...,c_n where each c_1 comes from a finite set. The set of all books is definitely countable. > Therefore, I can't tell you "I just wrote book 394343" and have that convey any useful information. True. > You can do that with computer programs. But USPTO won't give a shit. Go ahead and compute some Goedelian encoding of your program, file it, and let me know how that goes. You have to convey useful information about how the program behaves. > Computer programs are integers I mean at the end of the day a book is just a shitload of bits you're streaming to some printer.
- throwawaygh 5y agoThere's a trivial bijection between the natural numbers the set of all strings. Every patent application is a finite string.
- aranchelk 5y agoI think lemma 4 glosses over the immense variety of ways computation can be expressed in higher level languages. At one end of the spectrum is source code that’s so poorly written it’s practically impossible to understand or edit. OTOH, well written code with good abstractions can make changes trivial; it can also document relevant information and educate engineers. There’s a lot of value and creativity embodied in well written applications beyond the derived object code and those qualities are (in my mind) distinct from compiled algorithms.
- throwawaygh 5y ago> There’s a lot of value and creativity embodied in well written applications My experience writing patents: 1. Engineer/scientist writes up a very clear and understandable description of the thing. Perhaps including some pseudo-code, diagrams, or derivations along the way, but in any case definitely a high value add description rather than a dump from a git repo. On this we can agree. 2. Engineer/scientist presents this description to lawyer(s), often in the form of a powerpoint. 3. Lawyers then mangle the clean description beyond recognition. There's something very, very, very broken about the patent application/review process. Patents should be written for makers to use and only incidentally comprehensible to legal professionals, not the other way around. After all, isn't encourage dissemination of knowledge the whole point of patents?
- aranchelk 5y agoThe quoted statement is in support of the idea that software constitutes a creative work and should continue to be be eligible for copyright, not anything in support of patents. I’m not in favor of software patents, but I believe the legal repercussions of successfully convincing people that complex applications should be treated as mathematical algorithms will be almost entirely negative. I imagine the process of creating software patent applications probably varies by org. I agree the review process seems quite flawed, that’s supported by comments I’ve heard from several lawyers as well as high-profile screw ups, e.g failing to research prior art or applying the requirement of non-obviousness both inconsistently and sometimes incomprehensibly. Regarding dissemination of information, yes, my understanding is patents are a trade between the public and the inventor, the inventor receives a period of legally enforceable exclusivity in exchange for disclosing the invention to the public. My opinion is this is overkill in the software industry as we already get exclusivity (and without the need to disclose): we can conceal our source code and assert copyright protections on object code. Conditions are quite different in other industries, for instance manufacture of physical devices.