decoration decoration
Stories

GROKLAW
When you want to know more...
decoration
For layout only
Home
Archives
Site Map
Search
About Groklaw
Awards
Legal Research
Timelines
ApplevSamsung
ApplevSamsung p.2
ArchiveExplorer
Autozone
Bilski
Cases
Cast: Lawyers
Comes v. MS
Contracts/Documents
Courts
DRM
Gordon v MS
GPL
Grokdoc
HTML How To
IPI v RH
IV v. Google
Legal Docs
Lodsys
MS Litigations
MSvB&N
News Picks
Novell v. MS
Novell-MS Deal
ODF/OOXML
OOXML Appeals
OraclevGoogle
Patents
ProjectMonterey
Psystar
Quote Database
Red Hat v SCO
Salus Book
SCEA v Hotz
SCO Appeals
SCO Bankruptcy
SCO Financials
SCO Overview
SCO v IBM
SCO v Novell
SCO:Soup2Nuts
SCOsource
Sean Daly
Software Patents
Switch to Linux
Transcripts
Unix Books

Gear

Groklaw Gear

Click here to send an email to the editor of this weblog.


You won't find me on Facebook


Donate

Donate Paypal


No Legal Advice

The information on Groklaw is not intended to constitute legal advice. While Mark is a lawyer and he has asked other lawyers and law students to contribute articles, all of these articles are offered to help educate, not to provide specific legal advice. They are not your lawyers.

Here's Groklaw's comments policy.


What's New

STORIES
No new stories

COMMENTS last 48 hrs
No new comments


Sponsors

Hosting:
hosted by ibiblio

On servers donated to ibiblio by AMD.

Webmaster
The capability of bits | 335 comments | Create New Account
Comments belong to whoever posts them. Please notify us of inappropriate comments.
Corrections Thread Here...
Authored by: lnuss on Sunday, March 10 2013 @ 09:20 PM EDT
...

---
Larry N.

[ Reply to This | # ]

Off Topic Thread Here...
Authored by: lnuss on Sunday, March 10 2013 @ 09:22 PM EDT
...

---
Larry N.

[ Reply to This | # ]

Newspicks Thread Here...
Authored by: lnuss on Sunday, March 10 2013 @ 09:23 PM EDT
...

---
Larry N.

[ Reply to This | # ]

COMES Thread Here...
Authored by: lnuss on Sunday, March 10 2013 @ 09:24 PM EDT
...

---
Larry N.

[ Reply to This | # ]

Seconded...
Authored by: lnuss on Sunday, March 10 2013 @ 09:41 PM EDT
I'll second Timinski's comment -- these four suggestions are extremely well
done, and easy to follow.

---
Larry N.

[ Reply to This | # ]

Groklaw's Proposed Response to the USPTO's Request for Suggested Topics for Future Discussion - Care to Help? ~pj
Authored by: Anonymous on Sunday, March 10 2013 @ 09:47 PM EDT
Patenting a business practice because it is implimented on a computer
is wrong. Huntington Bank has a patent on providing 24 hours grace on
overdraft and sending an email notice on fund shortage. This is a
business practice. The same thing can be done by phone.

The fat 32bit file system is simply a set of rules for writing bits on a disk.

The only signifigance is the pattern is recognized by another computer.
This should not be patentable.

These are two examples of problems the questions should expose.

[ Reply to This | # ]

Is there a PDF of this?
Authored by: BJ on Sunday, March 10 2013 @ 10:28 PM EDT
Although I hesitate to give input since not a US citizen.


bjd


[ Reply to This | # ]

Groklaw's Proposed Response to the USPTO's Request for Suggested Topics for Future Discussion - Care to Help? ~pj
Authored by: swmcd on Sunday, March 10 2013 @ 10:54 PM EDT
This text
There are roughly 634,000 firms in the United States with 20 or more employees. While not all of these firms produce software, many of the 1.7 million firms with 5 to 19 employees do.
seems confused. It distinguishes firms by size, but the point of the distinction is unclear. Many of the firms with 20 or more employees also produce software.

[ Reply to This | # ]

Suggested topic 3
Authored by: swmcd on Sunday, March 10 2013 @ 11:11 PM EDT
The explanation for this topic is too long, too repetitive, and too abstract. The goal of the submission is just to get the topics in front of the USPTO. The supplement can go into detail. I would condense it to
The current interpretation of patent law is plagued with what developers view as erroneous conceptions of how computers work. Other than the current USPTO request for input, developers feel shut out of decisions, and yet they are the very ones who understand what software is and how it does what it does.

Textbooks describe in detail what mathematical algorithms are, but no one seems to understand or to reference these sources. Instead, we see courts using standard dictionaries, and the result is confusion about what algorithms are. An unrealistic distinction between so-called mathematical algorithms and those that purportedly are not mathematical has been the result. Since this impacts the controversy of when a computer-implemented invention is directed to a patent-ineligible abstract idea, it's a serious omission.

Second, it seems some, including some courts, believe the functions of software are performed through the physical properties of electrical circuits, incorrectly treating the computer as a device which operates solely through the laws of physics. This approach is factually and technically incorrect because not everything in software functions through the laws of physics. Bits are symbols, and they have meanings. The meaning of bits is essential to performing the functions of software. The capability of bits to convey meaning is not a physical property of the computer.

Software developers don't write software by working with the physical properties of circuits. Developers define the meaning of data and implement operations of arithmetic and logic that apply to the meaning. They debug software by reading the meaning of the data stored in the computer and verifying whether the correct operations are performed. The aspects of software related to meaning cannot be explained solely in terms of the physical properties of the computer.

This erroneous physical view of the computer is the basis of an oft-stated argument. Some claim that software alters the computer it runs on. This is used to justify the view that software patents are actually a subcategory of hardware patents. But to demonstrate what is wrong with that argument, let's compare a printing press with a computer.

Imagine a claim on a printing press configured to print a specific book, say Tolkien's Lord of the Rings. This is a claim on a machine which operates according to the laws of physics. Printing is a physical process for laying ink on paper. It functions without the intervention of a human mind. But still this process involves the meaning of a book. The claim is infringed only if the book has the recited meaning.

Imagine now that every time a printing press prints a new book, you could patent that printing press as a new machine because it printed a new book. That is exactly what patent law does with software, purporting to create a new machine because new software running on the computer supposedly creates a new machine. And yet the computer, like a printing press, can run any software at all that you can devise, just as a printing press can print any book you write.

No one would allow a patent on a previously existing printing press just because it is now configured to print a new novel. Yet that is exactly what is allowed with software.

The consequence is a proliferation of patents on the expressions of ideas.

[ Reply to This | # ]

Very nice, but ...
Authored by: Anonymous on Sunday, March 10 2013 @ 11:14 PM EDT
There is not a single person in the Judiciary or at the patent office with the
intelligence to understand a word of it. They will pretend to read it, shake
their heads, and ask the big corporations that bribe them what they should do.

[ Reply to This | # ]

The capability of bits
Authored by: BJ on Sunday, March 10 2013 @ 11:26 PM EDT
"The capability of bits to convey meaning is not a physical property of the
computer."

That capability lies wholly outside of the computer, I'd venture.

bjd



[ Reply to This | # ]

Supplement paragraph 2
Authored by: swmcd on Sunday, March 10 2013 @ 11:32 PM EDT
Currently the distinction between the two, function and algorithm, is not made correctly in software patents.

[ Reply to This | # ]

typo
Authored by: swmcd on Sunday, March 10 2013 @ 11:36 PM EDT
These sign-vehicles are turned into signs by semiosis when a human interpreter reads meanings into them.

[ Reply to This | # ]

recast
Authored by: swmcd on Sunday, March 10 2013 @ 11:46 PM EDT
Here are the is a collection of requirements for a procedure to be an algorithm

[ Reply to This | # ]

typo
Authored by: swmcd on Sunday, March 10 2013 @ 11:50 PM EDT
The requirements of finite description and precise definition

[ Reply to This | # ]

typo
Authored by: swmcd on Sunday, March 10 2013 @ 11:51 PM EDT
This burden typically varyies according to the size of the inputs.

[ Reply to This | # ]

Patent Construction
Authored by: rsteinmetz70112 on Monday, March 11 2013 @ 12:00 AM EDT
I have begun wondering whether a large part of the problem is the legal practice
of patent law where everyone agrees that the patent bar seek to enlarge the
scope of a patent.

Suppose the courts were to adopt a common principle of "Contra
Proferentem" which generally holds that ambiguous terms are construed
against the drafter. This would encourage patent applicants to define their
inventions precisely.

Expansion of earlier definitions to apply to later technologies which should be
improvement patents for a new use of an existing technology should not be
allowed.

---
Rsteinmetz - IANAL therefore my opinions are illegal.

"I could be wrong now, but I don't think so."
Randy Newman - The Title Theme from Monk

[ Reply to This | # ]

typo
Authored by: swmcd on Monday, March 11 2013 @ 12:13 AM EDT
Each error either disregards or denyies the role of symbols ...

[ Reply to This | # ]

typo or reword
Authored by: swmcd on Monday, March 11 2013 @ 12:16 AM EDT
Historically the courts have had problems understanding the term "mathematical algorithm".

OR

Historically the courts have had problemdifficulty understanding the term "mathematical algorithm".

[ Reply to This | # ]

typo
Authored by: swmcd on Monday, March 11 2013 @ 12:24 AM EDT
2. The vast majority of algorithms can be carried out in practice for smaller inputs and are impractical for larger inputs.

[ Reply to This | # ]

typo
Authored by: swmcd on Monday, March 11 2013 @ 12:27 AM EDT
the burden of carrying out the steps onof an algorithm

[ Reply to This | # ]

typo or reword
Authored by: swmcd on Monday, March 11 2013 @ 12:30 AM EDT
There are a few exceptions, but typical algorithms...

OR

There are fewsome exceptions, but typical algorithms...

[ Reply to This | # ]

2. The vast majority of algorithms can carried out in practice for smaller inputs and are imprac
Authored by: swmcd on Monday, March 11 2013 @ 12:36 AM EDT
Consider omitting these two paragraphs
We may compare algorithms with legal arguments. ...

Computations are mathematical written utterances ...

They may bring more confusion that clarity.

A particular concern is that they encourage lawyers to think of algorithms in terms of their own legal documents. While this is a possibly interesting comparison, right now what we are trying to do is get lawyers to understand and accept the mathematical definition of an algorithm, which is a very different thing.

[ Reply to This | # ]

typo
Authored by: swmcd on Monday, March 11 2013 @ 12:38 AM EDT
There is no difference in a computer structure between doing a calculation for the samesake of knowing the numerical answer and doing a calculation because the numbers mean something in the real world.

[ Reply to This | # ]

recast or omit
Authored by: swmcd on Monday, March 11 2013 @ 12:45 AM EDT
The transition between these two sentences needs to be more clear
If we use a computer to compute the trajectories of satellites in orbit the satellite and their trajectories are not computer parts. There are only instructions for manipulating numbers.
Or just omit the two sentences. I don't think they are essential to the flow of the argument.

[ Reply to This | # ]

typo
Authored by: swmcd on Monday, March 11 2013 @ 12:46 AM EDT
DoeDo you see a difference in the calculator circuit?

[ Reply to This | # ]

typos
Authored by: swmcd on Monday, March 11 2013 @ 12:48 AM EDT
Second, the difference between a pure mathematical calculation and and application of mathematics

[ Reply to This | # ]

typo
Authored by: swmcd on Monday, March 11 2013 @ 12:51 AM EDT
A computer may be connected to a printedr.

[ Reply to This | # ]

typo
Authored by: swmcd on Monday, March 11 2013 @ 12:53 AM EDT
transform any algorithm into non-executable data

[ Reply to This | # ]

typo
Authored by: swmcd on Monday, March 11 2013 @ 12:56 AM EDT
The issue of meaning arises whether or not the human mind is an element of the process.

[ Reply to This | # ]

Missing the most important argument of all
Authored by: jimrandomh on Monday, March 11 2013 @ 12:56 AM EDT
The primary problem with software patents is that in practice they have been used primarily as a vehicle for racketeering and barratry. To software practitioners, the patent system is no longer a business regulation but a personal threat of being extorted. The public sentiment towards software patents, among actual independent inventors, is fear and anger, and it appears to be justified. That - not any legal issue or cost-benefit analysis - is the real heart of the issue.

[ Reply to This | # ]

typos
Authored by: swmcd on Monday, March 11 2013 @ 01:05 AM EDT
When computing, the computer writes symbols that have the same semantical relationships.

[ Reply to This | # ]

typo or reword
Authored by: swmcd on Monday, March 11 2013 @ 01:07 AM EDT
Computers use electrical, magnetic and optical phenomenonsa to represent bits.

OR

Computers use electrical, magnetic and optical phenomenonsmedia to represent bits.

[ Reply to This | # ]

typos
Authored by: swmcd on Monday, March 11 2013 @ 01:09 AM EDT
Finally, the numbers means whatever in the universe

[ Reply to This | # ]

typo
Authored by: swmcd on Monday, March 11 2013 @ 01:12 AM EDT
This is part of the mathematical foundations of computer science.

[ Reply to This | # ]

typo
Authored by: swmcd on Monday, March 11 2013 @ 01:20 AM EDT
Most modern general purpose computers are buildt according to the stored program computer architecture.

[ Reply to This | # ]

  • typo - Authored by: OpenSourceFTW on Monday, March 11 2013 @ 01:33 AM EDT
  • Request - Authored by: Anonymous on Monday, March 11 2013 @ 09:51 AM EDT
Another line of reasoning
Authored by: Anonymous on Monday, March 11 2013 @ 02:06 AM EDT
Compare a computer to an abacus. The beads are the bits of data. Moving the
beads does not create a new machine.

[ Reply to This | # ]

a software function is not the same thing as a mathematical function
Authored by: Wol on Monday, March 11 2013 @ 06:14 AM EDT
Actually, when I started programming in the 80s, I understood that there was
quite strong feeling that they should be.

Some compilers - FORTRAN in particular - would assume that given the same input,
they would always get back the same output. And they didn't like it if that rule
got broken!

In that sense, a software function IS a mathematical function - the calling
program cares nothing about the function internals, the compiler merely cares
that the output is consistent from one use to the next.

Cheers,
Wol

[ Reply to This | # ]

Trade Dress - Care to Help? ~pj
Authored by: Anonymous on Monday, March 11 2013 @ 06:43 AM EDT
One problem with software patents is the issue of Trade Dress. The old
look and feel issue. If slide to unlock is a Trade Dress patent, then a
whole class of actions are blocked, even if software patents are
eliminated.

The length of software patents is too long. Putting look and feel under
patent protection, instead of copyright protection does have the
advantage of much less than life of the author plus 75 years. But with
the speed of computer development even patent protection is too long.

[ Reply to This | # ]

Groklaw's Proposed Response to the USPTO's Request for Suggested Topics for Future Discussion - Care to Help? ~pj
Authored by: rebentisch on Monday, March 11 2013 @ 09:43 AM EDT
I am sorry to tell but the "software is math" argument against patenting does not sell. It is lucid evidence for mathematicians and computer scientists but not taken seriously in the legal community.
"Software consists of algorithms, in other words mathematics, and data, which is being manipulated by the algorithms. Mathematics is not patentable subject matter and neither is data. On what basis, then, is software patentable subject matter?"
The question fails to address why mathematics isn't patentable. In principle (the specific legal situation aside) everything is patentable that someone wants to be patentable and could describe with a abstract "technical" description, the "invention". The lucid proof to say software is math, math is unpatentable, thus software unpatentable completely misses the point. If software/math is not patentable it is because a decision is made that the scope of inventions does not extend to software/math.

[ Reply to This | # ]

Don't go meta
Authored by: swmcd on Monday, March 11 2013 @ 11:00 AM EDT
I'm really concerned about this paragraph
There is room to argue whether a number is an interpretant, a thought in the mind of humans, or an abstract referent, something that exists in a parallel abstract universe. This is a controversial topic in the philosophy of mathematics. A similar question may be raised with such concepts as commodity hedging. The law shouldn't be concerned with this debate. Either way the mathematical entities are abstract and not patentable. It should be acceptable to assimilate abstract referents with interpretants for legal purposes.
It brings in a level of meta-analysis that is probably unnecessary, likely to confuse, and will give the courts more word-fodder for their misguided and incorrect opinions.

The courts are running around saying that algorithms aren't abstract if they can be implemented on a physical computer and programming a computer makes it a different machine. They don't have the basic concepts that they need to deal with software patents. We are trying to give them a semiotic framework that distinguishes between sign-vehicle, interpretant, and referent. And then we say

It should be acceptable to assimilate abstract referents with interpretants for legal purposes.
They are going to read this as word-salad and go on their merry way patenting algorithms, because, you know, it's all just math stuff anyway.

If this paragraph stands, then at the very least we need to

  • define abstract referent
  • write assimilate ... into in place of assimilate ... with and be very clear about what is being assimilated into what.

[ Reply to This | # ]

Groklaw's Proposed Response to the USPTO's Request for Suggested Topics for Future Discussion - Care to Help? ~pj
Authored by: ukjaybrat on Monday, March 11 2013 @ 11:17 AM EDT
I'm not sure where this would fit in to any of these four
topics or if anyone even shares these feelings.

If after all of this settles we are still awarding what we
consider bogus software patents, the 20 year monopoly is
extremely too long. When patent concepts first came up, i'm
sure that someone did an analysis and determined 20 years
was about right. But software is always moving, changing,
innovating. Something you bought last month is already
deprecated due to the next newest thing. a 20 year monopoly
on a technology that, unencumbered by a patent, could be re-
innovated upon in much less time. But because there is legal
20 year monopoly, the holder of said patent has no
obligation to do anything with that technology.

I'm sure a lot of what i just said was duplicate material
covered in the section about "software patents hinder
innovation" ... but my point is that if we are stuck with
software patents, the duration should be much much less than
20 years... 5 years even seems a bit much but at least more
reasonable than 20 years.

thoughts?

---
IANAL

[ Reply to This | # ]

This is not a useful response
Authored by: Anonymous on Monday, March 11 2013 @ 11:31 AM EDT
Here's Groklaw's proposed response to the USPTO's request for suggested topics for discussion in the future by the Software Partnership, as it calls it.

Please try to provide the topics and not the rhetoric! As a reader, I very much dislike having to read a response to a question when the only thing asked was the question. I know it is hard but USPTO appears to want topics and may of these digress into rhetoric of what is wrong. Also please note that the USPTO only cares about the USPTO so things should be framed in terms of helping the USPTO.

Missing in Topic 3 are the aspects of clearly defining patents. I thought that may people commented on the fact that software patents should be more expressive of the software implementation. Many software patents appears to be written in terms of a physical machine but the reality is virtual. It would be much easier for the USPTO if software patents had a specific set of requirements especially to find and understand prior art. For example, determining that a patent claim is just a numerical method to solve an equation.

In Topic 4 you are missing the aspects from the Mayo ruling where there was the view that a combination of unpatentable ideas may in fact be patentable. If such a combination is patented then do you have to have just that specific combination to infringe? Also, can software patents be valid as part of some new physical machine like a self- ware robot?

Topic 4 is incorrectly focused on the mathematics when really software patents are about an algorithm (as in a specific set of predefined steps). This totally avoids any misunderstandings of what is and is not mathematics or laws of nature. Really software is a recipe (that can be patented) patent on software need to have similar rules to recipe patents.

[ Reply to This | # ]

Groklaw's Proposed Response to the USPTO's Request for Suggested Topics
Authored by: Anonymous on Monday, March 11 2013 @ 12:08 PM EDT
Fair warning, I am in no ways a legal writer/expert/anything so these are all from a layman's perspective

Section A (part?) 2 at the bottom of "A function is not an algorithm"
Despite the similarly sounding words, a software function is not the same thing as a mathematical function. However the two concepts are closely related. If we look at the underlying principles of mathematics which are at the foundations of computer science the functions of software are described with mathematical functions. The methods used to perform the functions of software are implemented using mathematical algorithms.
It really just leaves me confused about what you are trying to say. A function isn't a software function, a software function is described by a function, the 'methods used to perform the functions of software' (whatever that means) are 'implemented' (but aren't actually?) using mathematical algorithms.

Section A (part?) 4 paragraph 3:
For the sake of comparison, here is an example of a procedure which is not an algorithm: Interim Examination Instructions For Evaluating Subject Matter Eligibility Under 35 U.S.C. ยง 101 (PDF). Legal procedures such as this one require the human to consider the meaning of the information and then inject additional information based on his experience, knowledge, and convictions to reach a decision. They require a lot of insight and ingenuity to be executed and for this reason they are not mathematical algorithms.
Nitpicky, but using the words "They require a lot of insight" seems to imply that minimal amounts of insight might be ok... which they aren't...

Section B (part?) 3 paragraph 3:
What kind of non mathematical meanings must be given to the numbers to make a patent eligible difference in the calculator circuit? Answer: it can't happen
The answer doesn't feel right for the question, it says "it can't happen" but what is trying to happen in the first place? Reword somehow?

Section C (part?) 1

This whole part feels wrong to me. Addition is no less abstract if it only works on numbers between 1 and 10, nor are computers made to handle infinite data sets (limits on available memory). In fact if a requirement to be "Abstract" is to handle a "potentially infinite range of inputs" then no computer program (though probably quite a few patents these could be easily we worded) are abstract ideas, for they all use concepts such as "ints" and "floats" that have limited ranges to represent numbers.

section D (part?) 1 repeats stuff about the number of patent lawyers needed to keep up with new software patents from a previous section, I'm not sure if this is considered bad.

Also in D 1 you have one calculation using 10 minutes to examine a patent and one using 1 hour, again I'm not sure if this is considered a bad thing.

[ Reply to This | # ]

Is the semiotic jargon necessary to explain the steps?
Authored by: Anonymous on Monday, March 11 2013 @ 12:32 PM EDT
I tend to think in terms of simpler language -- if I hear "referent"
and "interpretant" my brain begins to melt. On the other hand, I have
a background in computer languages, so I tend to think in terms of that
language, so... I might be biased. :P

Anyways, here's an alternative version of the argument with my field's language
used. We can think of anything that can be drawn or written as a
"symbol" (the "sign-entity" of semiotic theory). I'll be
using the term "sign" to mean "sign-entity" here, although
they are distinct. In parsing, we'd call those "tokens". In
cartography they'd be called "maps". I intentionally chose cartography
as my secondary domain of discourse because it also can be a graphical
explanation of the ideas. The same can be said of "equations" and
"graphs" in algebra and calculus. I'll use parsing as my primary
domain though.

In parsing, we divide up an input text into "tokens". These can be
placed into a "structure" of tokens -- a sequence, like a list, or a
graph structure. Any of these can be drawn, so they are symbols. A control-flow
graph (which traces function calls in a program) is also a symbol, because it
can also be represented as text or it can be drawn, as can a data-flow graph or
the non-directed graphs used to represent functional programs (for lazy
functional languages which use substitution and graph reduction as their
calculation method). In fact, any representation of software falls into this
category. (The same can be said of any representation of data that can be
expressed on a computer.)

An interpretant in semiotics is probably better called an
"interpretation" or "inference" in normal, everyday speech,
although those terms have another meaning in computer science and language
theory. Really, the interpretation can be thought of as how a human gets meaning
from data -- the ideas inferred from what we're reading. A map is a symbol (it
can be drawn), and the interpretation of the map is the idea you get in your
head of the shape of the land based on the symbol. But there's an old saying --
the map is not the territory, just as your interpretation of the map is not the
land itself (which is the referent). In software, the interpretation of the
program is the input, the output and the actual steps performed when you're
trying to figure out how it does what it does. You may well write out sample
data on paper and perform the same steps the computer would, also on paper, to
figure out where the bugs in a program are. The paper-based writing is still
just symbols, and your thoughts are the meaning. The symbols themselves don't
have meaning without someone giving it to them.

As for the referent, I tend to think of that as the real-world object being
described, but "object" also has a different meaning in the computer
field. Maybe "physical object" or "subject" would be better.
In cartography, you can think of this as the actual land. You can't build a
house on a map, nor on the idea you have in your head as to the shape of the
land by reading one. It's the subject of the map, the land itself, that's real,
that's usable for construction. Most software doesn't have such a physical
correspondence with the real world. Considering programming a computer to make a
new machine is the same as considering dialing a specific phone number to create
a new phone system -- they both make changes in the state of the wiring in the
system, which results in the circuit pathways being changed. It's possible to
have an automated system set up so that when you dial certain numbers you
perform different mathematical operations (when you dial one number, you get an
automated adder that asks you to input two numbers on the phone, adds them, and
reads the result back). A list of phone numbers with a list of numbers to enter
in when you reach them is probably not patentable, but is analogous to machine
instructions and their arguments (assuming you never have to redial due to a
busy signal -- or maybe that condition's not even needed, since that can be
thought of similarly to data bus contention and wait states).

To go to algebra and calculus, the equation y=+/-square_root(1-x^2) is a symbol.
You think of the graph of that equation in your head, in which case it can be
the interpretation of the equation. In this case, the physical object is also a
symbol, that is, a circle of radius one. As a result, it's really an abstraction
on multiple levels.

The first thing a computer scientist is taught is that all software is
abstraction -- we substitute symbols for real things, for ideas, and for other
symbols. We try to simplify problems by breaking them down into smaller and
smaller pieces, each of which is symbolic of a subset of the larger problem.
Even the term functional decomposition, which is the main task of computer
science, is indicative of abstractions and simplifications, and the mathematical
consequences thereof.

I do have to say that the contributor who suggested semiotics as the basis for a
test was pretty sharp. I can't imagine a better starting point.

(By the way, in terms of patents, one can also note that they are, themselves,
symbols -- the words on paper represent the idea of how to make the product, but
only the product itself is covered by the patent. You can make as many copies of
the patent paperwork itself as you want, and you can read it and understand it
if you want, without infringing. Theoretically, unless certain companies get
their way. :P )

[ Reply to This | # ]

Who exactly is the audience?
Authored by: Guil Rarey on Monday, March 11 2013 @ 12:51 PM EDT
In particular the discussion of semiotics struck the wrong note for me. The
explanation was too much "trying to explain graduate level topics to high
school students.". Either the audience can handle an adult level discussion

of semiotics or they can't. if they can it should perhaps be revisited for
tone. if they can't, perhaps the whole thing needs to be shifted to the
supporting materials.

---
If the only way you can value something is with money, you have no idea what
it's worth. If you try to make money by making money, you won't. You might con
so

[ Reply to This | # ]

The analogy to a printing press is exceptionally apt.
Authored by: Anonymous on Monday, March 11 2013 @ 01:26 PM EDT

In fact a particular aspect of that analogy springs to mind in which the computer is clearly more abstract than the printing press.

As a hobby, I do letterpress printing. Consider the delightful piece of engineering that is the Heidelberg Windmill press - many of which, like the one shown on this youtube video, are still running despite being manufactured in the 50's and 60's. (My own press is significantly less of an engineering marvel)

As delivered from the factory, this one and a half tons of (mostly) iron and steel could not print a single word, could neither die-cut paper and card nor score it for folding. It could not hot-stamp foil designs onto paper. (these latter functions other than transferring ink to paper are the main reason many commercial print shops still keep a platen letterpress around)

To go to the cabinet, take a case with its font of type over to the workbench and compose a form, lock it into the chase and fit that chase into the press has definitely added hardware in the form of a couple pounds of metal, but it hasn't made a new machine. The machine operates as it always had, but now every cycle, every turn of that monster flywheel, results in whatever symbols I composed being transferred from my imagination to a page.

The computer and its software are even more abstract than that - the symbols it manipulates have no "real" instantiation until ephemerally displayed or transferred to a more permanent medium.In fact there is a clear progression visible in the handling of information from well before the printing press to todays computers, with the accompanying increase in the abstraction of that information from the means by which it is handled.

Prior to Gutenberg, symbols denoting information were inscribed by hand as complete words, their informational content recited mentally by the scribe even as his hands directed his pen to transfer the symbols to the page. Gutenberg provided the first abstraction here, with mechanically reproduced movable type where the physical reality of the symbols was reduced to the individual letters, those individual pieces of type being stored between jobs and reassembled into more complex symbols carrying different information at each re-use. Essentially the exact same process I perform every time I set type for my more modern press.

The next stage in abstraction is of course the hot metal methods of printing, where even the individual letters do not survive in physical form between jobs. In machines such as the linotype you bash on a keyboard to arrange molds of your letters and the machine casts them as required - and they then get locked up into a press and printed from, only to be melted down again when the job is done. The printing press still works exactly the same way, it makes no difference whether the form of type being inked and printed is composed of individual re-usable letters or whether it is an ephemeral block of cast lines destined to lose its form again in the melt-pot.

The computer provides the final abstraction - there is no physical reality to the symbols carrying the information until the moment of impression where a computer printer places ink directly on the paper. In a very real sense, particularly when one considers phenomena such as just-in-time publishing, the computer has abstracted not only the physical representation of the symbols but also the press itself from the process.

The information, the meaning, the actual true nature of the symbols themselves and the process by which that meaning is manipulated, however, remains unchanged.

[ Reply to This | # ]

A second draft of the document is needed
Authored by: Tkilgore on Monday, March 11 2013 @ 01:44 PM EDT
Several people have obviously worked very hard on this document, so I hope that
nobody takes this the wrong way. But the following is difficult not to notice:

A disproportionate number of the comments are devoted to nothing else but to
point out typos and errors in grammar, spelling, or style. These comments are
already of such a number that I do not see how anybody could assimilate them all
and correct them all, one by one. I have read through the document and I have
found quite a few places where such corrections are needed, myself. But I found
so many small corrections that are needed, that I have no idea whether or not
the many comments calling for corrections have covered everything I found
myself, or not. The situation shows a danger of becoming chaotic, and I
understand that there is a deadline to meet.

Thus, quite aside from any discussions about content, it strikes me that what is
most urgently needed is a good proofreading and resulting cleanup of the
document. Then perhaps we can start over again about looking for typos and small
corrections, not to mention continuing the more substantive discussions?

From past experience, I am well aware that I am not the world's best
proofreader. But having pointed out in public the need to do this, I am of
course willing to take on some of the work.

[ Reply to This | # ]

ENIAC
Authored by: swmcd on Monday, March 11 2013 @ 04:06 PM EDT
I'm not sure the contrast between ENIAC and modern computers advances our case.
Some old general purpose computers like the ancient ENIAC were programmed by physically rewiring the computer using a plug board. This kind of programming makes a particular circuit for each program. This is an obsolete design. Most modern general purpose computers are build according to the stored program computer architecture. They are not programmed with plug boards or equivalent devices. These computers are programmed through a combination of two techniques: (a) defining the meaning of data, and, (b) giving some input to an already implemented algorithm. These two techniques, taken alone or in combination, do not configure the computer to make a specific machine. They leave the structure of the machine unchanged.
(a) The programmers who programmed ENIAC with cables and plug boards also had to define the meaning of data.

(b) Does "input" here refer to the data that is provided to the program, or does it refer to the program itself, which is regarded as input the instruction cycle that is implemented by the CPU?

Rather than allowing that their "new machine" doctrine applies only to obsolete hardware, lawyers and judges may consider that replugging an ENIAC and flipping bits in RAM are exactly the same sort of operations: they both reconfigure the hardware to create a new machine.

[ Reply to This | # ]

Player pianos
Authored by: swmcd on Monday, March 11 2013 @ 04:14 PM EDT
I think the printed matter doctrine is one of our stronger arguments. Any chance
we could cite player pianos as another kind of machine that falls under under
this doctrine?

If the courts are going to insist that every computer program creates a new,
patentable machine, then I want a patent on my player piano with the Mozart
sonata #1 roll installed, and a patent on my player piano with the Mozart sonata
#2 roll installed, and a patent on my player piano with the ...

[ Reply to This | # ]

Groklaw's Proposed Response to the USPTO's Request for Suggested Topics for Future Discussion - Care to Help? ~pj
Authored by: albert on Monday, March 11 2013 @ 05:02 PM EDT
The abstract is excellent.

Bearing in mind the non-technical audience it's
written for:

Topic 1; good

Topic 2; too much text on the impossibility of s/w patent searches (for want of
a better term). Cite it, then cite a study or two showing the actual economic
effects of s/w patent lawsuits, both in legal cost terms, and, more importantly,
the freezing effect of lawsuits on product development.

Topic 3; I still like the printing press analogy.

Topic 4; Don't introduce alien terminology. Leave semiotics out entirely. Use an
analogy like a simple pictographic (no text) road sign. Everyone can understand
the difference between the 'sign holder' (plate and pole), the 'symbol' affixed
thereto (pictograph), and the 'meaning' of the symbol.

Overall, an excellent effort. Kudos, and thanks to PJ and all the groklawers
(groklawians?) who contributed to this project.

[ Reply to This | # ]

The supplement still needs bulleting
Authored by: IMANAL_TOO on Monday, March 11 2013 @ 07:03 PM EDT
Now the structure layout of the Supplement solely relies on formatting, not the
subtitle ordering.

The Letter A's (of Factual background) centered alignment is the only thing that
tells you it is superordinate to the following "1." (of Semiotics).

If you watch the document on a small screen (Android, iPad etc) you immediately
get lost as there are several unnumbered subtitles beginning with
"1."

1. Semiotics defines the concepts
1. The proper understanding
1. Mathematical algorithms
1. Clearing all patents rights

Of course there are several which begin with 2., 3., etc.

While redundant on a large computer monitor it would be most useful (at least to
me) have them numbered, perhaps like:

A.1. Semiotics defines the concepts
B.1. The proper understanding
C.1. Mathematical algorithms
D.1. Clearing all patents rights

Yes, expanding it one level as A.1.1 may be too clumsy, but would also be useful
for some of us.

That way you don't lose track of your reading, if you like me have to stop
reading your smartphone every five minutes or so beccause you get interrupted.

The supplement still needs bulleting, for those who read it on a smartphone or
don't necessarily have a quiet office.



---
______
IMANAL


.

[ Reply to This | # ]

Additional questions (please add more, or comment)
Authored by: pdundas on Tuesday, March 12 2013 @ 08:46 AM EDT
Some additional questions, not in the list. Feel free to add
more here...

5. What are costs to the economy of software patents? What
is the aggregate dollar value of all these
costs?

6. What are the benefits to the economy of software patents?
Does the value outweigh the costs above?

7. Can innovation in computing be adequately (or more
efficiently) protected by copyright law, rather than
patent law?

8. Is the current term of patent protection appropriate for
software patents? Should it be shorter? If so,
how short?

9. Should software patents require working code, or well
defined pseudo-code, to enable practitioners
normally skilled in the art (even patent attorneys) to
understand what is being described?

10. Exactly what additional technical or other requirement
is necessary above and beyond an algorithm
running on a general-purpose computer, for an invention to
be patentable?

[ Reply to This | # ]

Does generic computer + text file = patent?
Authored by: Anonymous on Tuesday, March 12 2013 @ 04:55 PM EDT
Software exists in a set of one or more text files. Sometimes a text file is
treated as data. Other times the text file is executed. There is no universal or
clear basis for making the distinction between data and executable text. If the
US patents text files, the US patents data, writings, information, APIs, ABIs,
mathematics, physics, science. These are written artifacts of human thought, not
patentable systems or processes.

Since any software patent "subsumes all hardware as commodity", any
such US patent is a legal monopoly over all possible computer solutions with
similar inputs and outputs. Text files are the only evidence to support a
software patent.

While patenting hardware has proven economic value, patenting all solutions with
similar inputs/outputs is obviously bad for business. So, business will continue
to leave the US along with all the US profits. Any five year old knows the
difference. Patent the hardware. Copyright the software. One cannot patent
mathematics or data. One cannot patent all solutions to a problem. Any kid knows
that is bad for business.

There is more... Few US software patents actually contain anything close to an
approximation of a practical solution to a problem, just inputs/outputs. An
expert in the field would not gain any knowledge from the granted patents. The
US is patenting all computerized systems with similar inputs/outputs. This is
tantamount to patenting mathematical function signatures (i.e., inputs,
outputs). The US is patenting APIs sans implementations.

The US patent system is functioning at the primitive level of a "cargo
cult" with respect to computers. In the movie "The Gods Must Be
Crazy" it was an aborigine finding an empty coke bottle (not even knowing
it had been full of soda, drunk, and tossed out). In US patent courts, US judges
are commenting out loud that a text file is large and complex, these judges not
even knowing it is been full of 1+1=2, etc. Epically clueless.

Many US software patents exist even though US legal experts claim they do not.
Patent thickets are an existential risk to US industries. US patent courts are
inventing US law from whole cloth, but the SCOTUS could stop them. The US
legislature is failing to deal with patent law. Intellectual property across the
globe is at risk. More flawed, draconian laws will only hasten the systemic
collapse. After S&L, dot com, and residential real estate failures, an IP
failure is lined up to go next.

It has been estimated there are 1,500 to 2,500 existing patents applicable to
any smart phone. Patent trolls think the number is much higher.

[ Reply to This | # ]

Thanks a lot!
Authored by: Anonymous on Wednesday, March 13 2013 @ 04:48 PM EDT
pj and everyone at Groklaw, thanks a lot for the work you've been putting into
this! I sincerely hope it will help to make my daily legal again - I write
hundreds of lines of code every day and I simply have no idea how many patents
and laws a break by doing that.

This is insane.

[ Reply to This | # ]

Another argument
Authored by: Anonymous on Wednesday, March 13 2013 @ 04:51 PM EDT
I'm not feeling well, so please bear with me if this has been mentioned before
but I just can't read all the text and the comments right now :-(

There is a simple way to turn any computer program into a number:

- Read the code into a byte array
- result = 0
- for each byte: result = result * 256 + byte

The result you get is a numeric representation of the program. It's a huge
number, sure, but how can a number ever be patentable?

[ Reply to This | # ]

Groklaw © Copyright 2003-2013 Pamela Jones.
All trademarks and copyrights on this page are owned by their respective owners.
Comments are owned by the individual posters.

PJ's articles are licensed under a Creative Commons License. ( Details )