Hacker Newsnew | comments | ask | jobs | submitlogin
mrcharles 1069 days ago | link | parent

Sorry to all, I specifically meant software patents. Hardware patents are different as they often rely on physical creation of objects and a non-trivial investment in materials/development.

Conversely a software idea can be thought up in a few minutes and implemented in the same. In app purchases isn't exactly a clever idea or something that was revelatory. It was simple software evolution.



HeyLaughingBoy 1069 days ago | link

No, there is no difference. If you're going to claim that they're different because one may require a "non-trivial investment (1)" then you have to specify that hardware patents that only require a trivial investment are similarly invalid.

The bottom line is that patents are patents. It's inconsistent to be against one type and not another. I understand why patents exist, but I also agree with the Carmack statement above.

(1) This is clearly not true. I know someone who patented an idea relating to battery management hardware that occurred to him as he was describing a problem to me. It was novel and "not apparent to a similarly skilled person.. etc." But it didn't take any more investment than pen and paper to think through the concept.

-----

Locke1689 1069 days ago | link

Software is a mathematical equation. Math isn't patentable.

Edit: Since people aren't convinced of my postulate that all algorithms are mathematical equations, here's a proof sketch:

All programs can be rewritten to be expressed in Haskell. All Haskell functions can be expressed as equations in the typed lambda calculus. The lambda calculus and its variants are all subsets of mathematical equations. Therefore, all programs can be expressed as mathematical equations.

-----

mseebach 1069 days ago | link

I'm fairly sceptical towards software patents but I'd argue that the math argument is a red herring. Software is clearly not math in the sense that the people who wrote that word into the law understands math. And as someone else pointed out: If this argument gets any traction, and if the powers that be want patentable software, they're going to clarify the language, not get into semantics over what people who couldn't in their wildest dreams imagine computers might have thought. It just a law and laws change all the time.

-----

Locke1689 1069 days ago | link

A fair point. I concede that may be true.

-----

amalcon 1069 days ago | link

Any system with known, fully-specified constraints is "math". That's the only definition of "math" that actually covers all the things mathematicians do. Algebra/calculus, set/group theory, logic (various forms), graph theory, and such are all undisputed branches of "mathematics". I defy anyone to come up with a definition of "mathematics" that includes things like the above, but does not include computing. (And no cheating: simply listing existing branches of mathematics is not persuasive.)

That said, this argument is a bit of a non-starter: software is mathematics, sure, but mathematics are not patentable by legislation (at least in the U.S.). Legislation is easy to change, and it likely will be when people finally accept the "mathematics = software" argument.

-----

anigbrowl 1069 days ago | link

I don't agree. And algorithm is not the same thing as an equation, and I don't think your argument would stand up in court. If it were that simple to overturn software patents it would have happened years ago.

-----

Locke1689 1069 days ago | link

How about this:

All programs can be rewritten to be expressed in Haskell. All Haskell functions can be expressed as equations in the typed lambda calculus. The lambda calculus and its variants are all subsets of mathematical equations. Therefore, all programs can be expressed as mathematical equations.

-----

anigbrowl 1069 days ago | link

Sounds great, but the other side is just going to raise Godel's incompleteness theorem in the form of the church-Turing thesis to show that the truth of your argument is formally undecidable ;-)

Seriously, though, the legal issue arises from the fact that the patent is not (or rather should not be) granted for a pure mathematical abstraction, but for a product which applies such abstractions to some novel purpose. Mathematical discoveries are not considered properly patentable because mathematics is held to be part of nature's bounty - a highly debateable philosophical proposition, but there it is. But being able to describe a thing in mathematical terms does not equate to that thing being a mathematical statement and therefore unpatentable.

Let's consider the steam engine, for example. The interplay of pressure, volume, and temperature can be modeled with very simple mathematics, as can the mechanics of a drive train to convert the motion of a piston into work by turning a wheel. You could write down all the math necessary to accurately model a steam engine or indeed a train in a few pages. Likewise, we could argue that that the giant boiler on wheels that constitutes a train is no more than a restatement of those same mathematics, along with a few supplementary remarks about the properties of the materials used to express the primary equations of the system (eg the tensile strength of iron, the viscosity of the lubricating oil and so forth). This is true enough in a philosophical sense, but talk is cheap. Building a working steam engine is a lot harder than coming along afterwards and observing that its characteristics could be reformulated as a mathematical statement.

Now software is different, insofar as we can take the source code or even the object code and convert it back to a set of mathematical equations with considerably greater ease. But again, it's not the underlying mathematical statements for which a patent is (ideally) sought: it's for the black-box implementation that allows someone with zero knowledge of the underlying math to make use of the invention. If you rely on the philosophical argument that all code is inherently an agglomeration of mathematical statements, then you must agree that, say, Farmville or Pac Man are in fact part of nature's bounty as well, due to their mathematical foundation as computer programs. That's an argument which would be extremely hard to sell, either in court or to the general public, and with good reason - most people consider the development of a computer game to be a creative effort rather than something that was sitting about waiting to be discovered like the law of gravity.

One could say that Pac Man was in fact sitting around in 'the space of all possible games yet to be implemented,' but then again one could put someone in prison and say that freedom is a state of mind too, or kill a person and argue that it doesn't really matter because they're still alive in the past. These are interesting philosophical avenues to explore, but only on a voluntary basis. Courts are a reflection of the society in which they operate, and theoretical arguments like this which take no account of pragmatic considerations usually go badly for the proponent.

But let's say that you argue there's an important principle at stake here, and get the court to agree about the fundamentally mathematical nature of computers and the programs that run on them. How then do we deal with the fact that board games are patentable? After all, a board game is just a set of tokens and some rules for manipulating them, whose utility lies in its capacity to entertain or edify the players. If we outlawed software patents tomorrow, then couldn't patent trolls simply switch to patenting 'games' in which their algorithms are presented as rule systems? True, few people would fancy playing Super Bubble Sort or Mem Cache Plus all night, but patents are not granted on the basis of popularity.

Again, I'm not out to defend software patents - I'm just bringing up these arguments to point out why 'programs = math, therefore software patents = invalid' isn't the irrefutable legal argument that so many people seem to think it is. Where to draw the line of what can be patented is a much trickier question than it may at first appear, and if our approach to this Gordian knot is to get rid of the patent system altogether, then one needs to address the problems that predated its creation.

-----

burgerbrain 1069 days ago | link

"I don't agree."

The neat part about mathematics is that your approval, or anyones approval for that matter, is not necessary. If the proofs are solid, it holds. If you want to properly "disagree", demonstrated rigorously why the proofs are flawed.

"If it were that simple to overturn software patents it would have happened years ago."

You assume that the people in the position to make decisions are competent.

-----

anigbrowl 1069 days ago | link

I articulated my reasoning in the following sentence.

You assume that the people in the position to make decisions are competent.

Not at all; there's a large volume of patent litigation, and it's reasonable to assume that at least some of the decision makers are competent to evaluate such elementary arguments. Your argument requires universal incompetence by litigators and/or decision-makers.

-----

burgerbrain 1069 days ago | link

"Your argument requires universal incompetence by litigators and/or decision-makers."

Incompetent and or comprimised. Yes.

-----

anigbrowl 1069 days ago | link

So basically you think the entire patent system is a giant conspiracy?

-----

burgerbrain 1069 days ago | link

No. Cooperation between individual entities is not required. All that is required is that a certain critical mass of the people involved be too incompetant to understand the math, too corrupt to care, or just malicious.

Seeing as we're talking about lawyers and politicians here, I don't think this is all to stunning.

-----

anigbrowl 1068 days ago | link

Ah, if you're talking about politicians that's a completely different issue - then you have a good point, because changing the law requires getting a majority of legislators to vote in favor of reform. I'm talking strictly about litigation.

-----

bostonpete 1069 days ago | link

Software is an application of mathematical equations perhaps, but then hardware is an application of material properties and other laws of physics. Since material properties and laws of physics can't be patented, you're presumably against hardware patents as well?

-----

burgerbrain 1069 days ago | link

The capability of modelling a physical system with math does not mean that physical systems are math.

On the other hand, the numerous proofs that software is math are fairly trivial for anyone with a modest background in mathematics.

-----

bostonpete 1069 days ago | link

> The capability of modelling a physical system with math does not mean that physical systems are math.

It's the modeling of physical systems that its patented, not the physical object itself. Those patents usually protect the inventor from people creating any number of variations on their exact design because it's the approach to solving a particular problem that is being patented.

I think there are a lot of people who take an absolute position against software patents and end up going through all sorts of contortions to differentiate between why ideas in the physical realm should be protected and ideas in the software realm should not.

That said, I certainly agree that most software patents are far too obvious and not deserving of any sort of protection. The challenge, of course, is how to fix the system to afford protections to real innovators and not to those who simply connect the dots.

-----

Locke1689 1069 days ago | link

Physical devices (even models thereof) are applications of physics equations, not physics equations themselves. These have been ruled time and again as being patentable.

Algorithms are mathematical equations. They cannot be patented.

-----

bostonpete 1069 days ago | link

Software = math, math can't be patented, therefore software can't be patented.

I know the mantra. I just don't buy it. Math provides the building blocks used to produce creative (and sometimes very innovative) solutions to problems in the form of software. Material properties and laws of physics similarly provide the building blocks used to produce creative solutions to problems in the form of physical devices or mechanisms.

Just because the basic building blocks used to formulate an innovation aren't patentable, it doesn't necessarily follow that the innovation itself shouldn't be patentable if it's truly innovative and worth protecting (which most software patents certainly aren't, but some undoubtedly are).

-----

Locke1689 1069 days ago | link

Then perhaps the issue isn't that software isn't math, but that the statement "math can't be patented" was simply one made in ignorance and not reflective of the underlying spirit of the law?

-----

burgerbrain 1069 days ago | link

Since we can mathematically demonstrate software to be math, let's take that off the table. Arguing that part is idiotic.

That leaves the patentability of math. Man I wish I had a time machine so I could go back in time and convince Pythagorous to patent his little triangle formula in the context of architecture. I could make a killing.

-----

Dylan16807 1069 days ago | link

Hardware is about particular values, not the equations. Software tends to be more about a transformational equation, but not in all aspects.

-----

mrcharles 1069 days ago | link

It takes significantly less effort to create a piece of hardware from scratch if you have a reference design to crib from.

However, if I independently develop a piece of software or an algorithm, there is a very strong chance that it took me the exact same amount of time and effort as the person who originally solved it.

In the former case, it makes sense to enforce a patent, as copying their design directly eases my ability to go to market with something.

In the latter case, it doesn't make sense, as I now have to pay someone else, despite having done the work.

Note that I see copyright, intellectual property, and patents as completely different things. If I'm using someone else's code/libs, then obviously, I feel it is worth the ability to enforce. However, that already exists without the patent system.

-----

stonemetal 1069 days ago | link

It takes significantly less effort to create a piece of hardware from scratch if you have a reference design to crib from.

However, if I independently develop a piece of software or an algorithm, there is a very strong chance that it took me the exact same amount of time and effort as the person who originally solved it.

These two instances are completely different. What about the hardware engineer who independently developed a piece of hardware? It would take him around the same amount of effort to create it as the original. Just like the software engineer who cribbed an existing design would have to do much less work than the original.

0% of the differences in effort have to do with physical vs software, and 100% to do with what references you have available to you before you get started.

-----

notJim 1069 days ago | link

You're saying all software ideas can be thought of and implemented in a few minutes? That is both absurd, and an insult to the innovation that happens in software.

You have 10 minutes, give me an implementation of something that improves upon H.264 by 30%.

-----

barrkel 1069 days ago | link

That's not how it works. If you're familiar with the area, you might come up with an idea that improves it by 3%. If you have 9 of those ideas, you might get a 30% improvement. Where the ideas come from is serendipity combined with fertile ground.

It might be by analogy, a technique from a different domain, from similarity with something you did with lego blocks when you were 9 years old, from a mishearing when discussing something with a fellow developer, from ignorance of the known techniques in a particular area and trying to solve it from first principles, etc. You do need some familiarity and experience in the domain in order to recognize the utility of the novel technique. It might happen once to you, but it's unlikely to happen 9 times.

More importantly, it's also probably going to occur to someone else, sooner or later. New discoveries tend to be repeated, that's a common theme in the history of scientific and mathematical development. By advocating patents for these things, you suggest the mere chance of coming first means you get a government-granted right to extort from other people.

-----

mrcharles 1069 days ago | link

Your reductio ad absurdum does not accurately represent what I'm saying. I'm saying that you could possibly make software in a few minutes that could violate a patent. This is extremely unlikely with hardware of significant complexity to earn a patent.

-----

notJim 1069 days ago | link

I don't think I understand your argument. You said this:

> a software idea can be thought up in a few minutes and implemented in the same.

This is only true for trivial pieces of software. I agree with you that trivial pieces of software should not be patentable. But you're saying that no piece of software should be patentable, regardless of how complex or innovative it is, and there I strongly disagree.

-----

mrcharles 1069 days ago | link

There's too much room for error, if you let there be a line between what is and isn't patentable with respect to software. Better to leave it open and let the cards fall where they may. Software patents actively restrict technological development.

-----

edanm 1069 days ago | link

Why is it better to leave it open?

You both agree that there is major variation in how much "effort" goes into producing patentable work. Your problem is you want a very clear-cut definition specifying what is patentable, and since effort is hard to measure, you'd rather just throw out all patents. You assume this would be better than the current situation (which, I think, takes the other extreme - most things are patentable).

But why do you think the way you suggest is better? Just because the current system sucks?

(Forgive me if I misrepresented your argument).

-----

mrcharles 1069 days ago | link

Ultimately it would be better because it would eliminate patent trolling and foster software innovation. Right now a lot of innovation is hamstrung by software patents. I don't think any company should have the right to enforce what software someone makes, at all, ever.

Half of the tech industry with respect to software is finding something someone else is doing, and building on that but making it better.

-----

sp332 1069 days ago | link

You have 10 years. Write me a patent for something that improves upon H.264 by 30%.

-----




Lists | RSS | Bookmarklet | Guidelines | FAQ | DMCA | News News | Feature Requests | Bugs | Y Combinator | Apply | Library

Search: