|
Irish Linux Groups Write Their MEPs About SW Patents |
|
Wednesday, March 16 2005 @ 11:46 AM EST
|
The Irish Free Software Organisation, the Irish Linux
Users' Group and KDE (Ireland)
have sent a briefing document on software patents to Ireland's MEPs.
Following that thread, I came across a list posted earlier on ISFO's web site, 10 Reasons Why Software Ideas Must Remain Free From Patentability. I thought it would be helpful to share them with you, particularly with those attending the UK workshops, and I wanted to ask if those of you who are either lawyers, patent searchers or programmers could please explain number 7 in more detail? I'd like to understand that point better: 7. Software is abstract, like math. Software ideas can be described in any number of ways, so searches for software patents would be hit-and-miss. Reliably avoiding patent infringement would be impossible. Number 9 is compelling, as well. Here's the entire list.
***************************
1. There are currently no costs, waiting periods, or application forms required for software development. Patentability would radically change this and would invalidate many development and business models.
2. Software already has "ownership rights" via the copyright system. Copyright is instant, costs nothing, and doesn't interfere with independent development.
3. If companies could purchase exclusive rights to the use of techniques required by their defacto standards, they could choose their competitors. "Competition" would become an inside joke, and preventing competition would be completely legal and above board.
4. Small and medium enterprises can't afford patents, they can't spare time for patent searches and they can't risk the cost of contesting an accusation in court.
5. The patent term (20 years) is absurdly long in terms of the software industry.
6. Innovation in software is incrimental, new ideas build on the old. To advance the state of the art, developers must be permitted to build on top of the state of the art.
7. Software is abstract, like math. Software ideas can be described in any number of ways, so searches for software patents would be hit-and-miss. Reliably avoiding patent infringement would be impossible.
8. Engineering, manufacturing, and pharmacutical patents are industrial regulations. Software idea patents would place restrictions on what all businesses and all individual computer owners can do with their computer.
9. In the USA, to get around the burden of software idea patents, the Big Players of the software industry have formed cartel-like patent sharing agreements. Small and medium enterprises cannot afford to join these agreements, and NONE of the Big Players are European companies.
10. For Europe to develop it's own software industry, we must retain the right to write our own software - without having to ask permission or pay royalties to current (foreign) market leaders.
|
|
Authored by: roboteye on Wednesday, March 16 2005 @ 12:01 PM EST |
and if possible - links.
Format is : <a href="http://example.com">click here!</a>
and post mode should be HTML
Many thanks[ Reply to This | # ]
|
- ot - " EDS: Linux is insecure, unscalable" on zdnet - Authored by: Anonymous on Wednesday, March 16 2005 @ 12:34 PM EST
- SCOXE crash - Authored by: Anonymous on Wednesday, March 16 2005 @ 12:41 PM EST
- OT Here please - Authored by: frk3 on Wednesday, March 16 2005 @ 02:09 PM EST
- OT Here please - Authored by: Anonymous on Wednesday, March 16 2005 @ 06:45 PM EST
- Letter by a Peruvian Congressman (at OSI) - Authored by: Anonymous on Wednesday, March 16 2005 @ 02:13 PM EST
- interesting GPL vs. IP - Authored by: thinman on Wednesday, March 16 2005 @ 02:26 PM EST
- USPTO job requirements for computer patent processing - Authored by: pfusco on Wednesday, March 16 2005 @ 02:35 PM EST
- OT - OpenServer 6 Announcement - Authored by: rbillings on Wednesday, March 16 2005 @ 04:56 PM EST
- Philip Albert in Technewsworld seems to have his wires crossed. - Authored by: Anonymous on Wednesday, March 16 2005 @ 07:22 PM EST
- OT: An interesting possible GPL violation - how to proceed? - Authored by: Anonymous on Wednesday, March 16 2005 @ 08:05 PM EST
- ot - winknoppix - Authored by: Anonymous on Wednesday, March 16 2005 @ 08:17 PM EST
- Caldera supported Software patents in December 2001. - Authored by: Anonymous on Wednesday, March 16 2005 @ 08:57 PM EST
- India: Govt to introduce Patent Bill next week - Authored by: warner on Thursday, March 17 2005 @ 04:00 AM EST
|
Authored by: roboteye on Wednesday, March 16 2005 @ 12:04 PM EST |
Not that there should be any, but you never know :-) [ Reply to This | # ]
|
- "maths", not "math" - Authored by: Anonymous on Wednesday, March 16 2005 @ 12:16 PM EST
- Corrections here S.V.P. - Authored by: Anonymous on Wednesday, March 16 2005 @ 12:27 PM EST
- Corrections here S.V.P. - Authored by: talexb on Wednesday, March 16 2005 @ 12:40 PM EST
- pharmacutical->pharmaceutical - Authored by: Tom on Wednesday, March 16 2005 @ 12:53 PM EST
- Corrections here S.V.P. - Authored by: Anonymous on Wednesday, March 16 2005 @ 12:58 PM EST
- Corrections here S.V.P. - Authored by: Anonymous on Wednesday, March 16 2005 @ 01:03 PM EST
- ISFO's web site -> IFSO's web site - Authored by: Anonymous on Wednesday, March 16 2005 @ 01:12 PM EST
- If it’s it’s, it’s it is. If it’s its, it’s its - Authored by: Anonymous on Wednesday, March 16 2005 @ 02:01 PM EST
- incrimental -> incremental - Authored by: Anonymous on Wednesday, March 16 2005 @ 05:32 PM EST
|
Authored by: Anonymous on Wednesday, March 16 2005 @ 12:04 PM EST |
"7. Software is abstract, like math. Software ideas can be described in any
number of ways, so searches for software patents would be hit-and-miss. Reliably
avoiding patent infringement would be impossible."
The number '5' could be expressed as
6-1, 7-2, 8-3, 1+4, Square Root of 25 etc.
If you want to express the number '5', you might come stuck if someone had
patented "96-1".
I think this is what they are getting at PJ.
Regards
PaulB.[ Reply to This | # ]
|
- A more 'real world' and therefor slightly less simple example. - Authored by: aug24 on Wednesday, March 16 2005 @ 12:15 PM EST
- Irish Linux Groups Write Their MEPs About SW Patents - Authored by: Anonymous on Wednesday, March 16 2005 @ 12:18 PM EST
- Trying to find the patent - Authored by: droth on Wednesday, March 16 2005 @ 12:43 PM EST
- Try 'Hello World' - Authored by: Anonymous on Wednesday, March 16 2005 @ 12:53 PM EST
- Two aspects. - Authored by: Anonymous on Wednesday, March 16 2005 @ 01:22 PM EST
- Irish Linux Groups Write Their MEPs About SW Patents - Authored by: Trepalium on Wednesday, March 16 2005 @ 03:13 PM EST
- Irish Linux Groups Write Their MEPs About SW Patents - Authored by: Trepalium on Wednesday, March 16 2005 @ 03:29 PM EST
- Analogy - Authored by: Kybos on Wednesday, March 16 2005 @ 04:27 PM EST
- Analogy - Authored by: lithium on Wednesday, March 16 2005 @ 09:37 PM EST
- Analogy - Authored by: marbux on Wednesday, March 16 2005 @ 10:37 PM EST
- Bad examples are causing bad understanding - Authored by: emmenjay on Thursday, March 17 2005 @ 05:41 AM EST
- Irish Linux Groups Write Their MEPs About SW Patents - Authored by: joeblakesley on Sunday, March 20 2005 @ 09:25 AM EST
|
Authored by: aug24 on Wednesday, March 16 2005 @ 12:06 PM EST |
Text of his reply in child post for neatness.
I suggest all you Europeans do the same, and I hope you all get a reply like
this.
Justin.
---
--
You're only jealous cos the little penguins are talking to me.[ Reply to This | # ]
|
|
Authored by: Nivuahc on Wednesday, March 16 2005 @ 12:18 PM EST |
Here is my feeble attempt to explain. I'm a newbie at C so forgive me if I hose
this all up.
Something as simple as this:
printf("You are %d
years old.\n",age);
can be described in many, many
different ways.
- It prints information to the screen
- It
prints formatted information to the screen
- It reads the value of a
variable and modifies a statement based on that value
- It enables the
use of variables when manipulating a string of text
And plenty of
other things that I'm sure you could come up with.--- My Doctor says I
have A.D.D... He just doesn't understand. It's not like... Hey! Look at that
chicken! [ Reply to This | # ]
|
|
Authored by: AdamBaker on Wednesday, March 16 2005 @ 12:23 PM EST |
I posted this under the last article but it is more relevant here.
I found a
link to something that nicely documents the EU directive process
http://europa.eu.i
nt/eur-lex/en/about/abc/abc_21.html . Of course
google found it for me via a
post in an FSF Europe mailing list as free software
developers seem to be the
main source of interest in the EU process!
From my reading the procedure
that applies is the co-decision procedure. The
good news is
"The co-decision
procedure denies the Council the right to adopt its common
position if efforts
to reach agreement with Parliament fail."
Basically, although an absolute
majority of MEPs are required to reject a
proposed directive at second reading,
only a simple majority is required at 3rd
reading. The idea behind that seems to
be to ensure that there is an opportunity
for the concilliation process between
2nd and 3rd readings.
It would still be best if we can get an ammended
directive that really does block software patents. Apparently new ammendments
are permitted which are based on earlier ones but not completely new ones during
2nd reading. Anything goes during conciliation but only a few MEPs are involved
in that. The 3rd reading is a final yay or nay with no ammendment possible at
that stage. [ Reply to This | # ]
|
|
Authored by: Anonymous on Wednesday, March 16 2005 @ 12:27 PM EST |
11. Government and large corporate software development tends to be contracted
to the large consultancies who are not generally party to patent sharing. The
risk that any large development, or even simply deployment, will infringe
software patents is very high and therefore large consultancies will simply add
a risk premium to all development - making aleady very expensive contracts even
more so.[ Reply to This | # ]
|
|
Authored by: Anonymous on Wednesday, March 16 2005 @ 12:29 PM EST |
You invented a new distributer for cars. It has special gearing to adjust the
timing advance as the engine speed changes. You can patent this device and I
agree that you should.
I look at your device and say, "That could be done with a program...".
So I attach a monitor to the CAM shaft to get it's speed and interface into the
igension (sp).
Questions:
1) Should I be able to patent my invention?
2) Would I have to show your patent as prior work?
3) Would my Invention be in violatation of your patent?[ Reply to This | # ]
|
- SW Patents... - Authored by: Anonymous on Wednesday, March 16 2005 @ 01:02 PM EST
- SW Patents... - Authored by: Pyro on Wednesday, March 16 2005 @ 01:03 PM EST
- SW Patents... - Authored by: Anonymous on Wednesday, March 16 2005 @ 01:23 PM EST
- SW Patents... - Authored by: Yobgod on Wednesday, March 16 2005 @ 01:50 PM EST
- SW Patents... - Authored by: Anonymous on Wednesday, March 16 2005 @ 06:31 PM EST
- SW Patents... - Authored by: Anonymous on Thursday, March 17 2005 @ 01:29 AM EST
- #3 is a kicker, no? - Authored by: Anonymous on Thursday, March 17 2005 @ 02:42 AM EST
|
Authored by: swmcd on Wednesday, March 16 2005 @ 12:51 PM EST |
Here's one problem. From
http://lpf.ai.mit.edu/Patents/against-software-patents.html
The Patent Office does not have a workable scheme for classifying software
patents. Patents are most frequently classified by end results, such as
"converting iron to steel;" but many patents cover algorithms whose
use in a program is entirely independent of the purpose of the program. For
example, a program to analyze human speech might infringe the patent on a
speedup in the Fast Fourier Transform; so might a program to perform symbolic
algebra (in multiplying large numbers); but the category to search for such a
patent would be hard to predict.[ Reply to This | # ]
|
|
Authored by: Anonymous on Wednesday, March 16 2005 @ 01:00 PM EST |
This number #7 can be described as a theoritical question.
Given any
two programs do these two programs produce the same output for all
inputs?
This has been answered by many researchers.
Alan Turning,
Post, I am sure there are others that are not at the top of my head right
now.
This problem belongs to a class of problems which is called
NP-complete. That is just a fancy way of saying that it can not be computed in
polynomial time. Which just means that the problem does not scale nice. The
biger the inputs (program size and input size the longer it takes maybe not in a
predictable amount of time).
If fact the situation is even worse. No
computer program known (or that can be constructed with know computing methods)
can answer this question for any to given general program and be stop in finite
time or to find the answer in bounded time.
That is the therodical
result is has been established. If you find a counter example you will be
famious and I think there is a prize you can collect as well on the internet. In
short the results look sure.
(A book that does explain the background
for this is "Godel, Escher,Bach:" by Douglas R. Hofstadter. (c) 1979 by Basic
books. Library of Congress number QA9.8.H63 1980) There are other books that
talk on this same subject but I like this one. It even has something for people
that are new to the ideas involved so even beginers can get something out of
this book).
Now how to describe this to someone without the
necessary theory background. (this is easy to see if with example but
there are some easy objections too).
Take a simple discription
like
"print out all primes 2-n for a given n.
but the programs which
implemet this can look very different.
1)
#include
"math.h"
int primes(int n)
{ int i; int j, ok;
printf("primes for [2
- %d] are:n",n);
for (i=2; i
{
ok=1;
for (j=2; j
{
i%j==0 ? ok=0 : ;
}
if (ok) printf("%d
",i);
}
2)
int primes(int n)
{
int i,j,
ThisIsNotAPrime;
printf("primes 2-%d are:n", n);
for (i=2; i
{
ThisIsNotAPrime=0;
for (j=2; j
{
if
((i/j)*j == i)
{
ThisIsNotAPrime=1;
}
}
if (ThisIsNotAPrime)
printf("%dn");
}
printf("done!n");
}
3)
#include
void
FindPrimes(int n)
{
char *memory;
int i;
memory = (char *)
calloc(n);
for (i=2; i
{
for (j=i; j
memory[j]=0;
}
printf("primes are: n");
for (i=2; i
{
if (!memory[i])
printf("%d", i);
}
free(memory);
}
All thress of these
should print out primes.
Now will they all produce the same answere for all
n.
[Hint: what I happend if I run on a machine with only 32K of memory
free].
[Note: also while these three programs are correct in
theory.
I have not compiled them nor debuged them. But I think a good
programmer could take any one of them and debug it to get the correct results.
My point is to show an example not to have running code. I can not do that on my
lounch hour].
I hope this helps. It may have been a little long but I
hope it does give a feeling for the type of problem.
a florida
resident.
[ Reply to This | # ]
|
|
Authored by: Anonymous on Wednesday, March 16 2005 @ 01:21 PM EST |
Software Patents themselves are not really the problem,
its the fact that the Patenting authority (USPTO in the
states), is unable to provide the measures necessary to
make the system work.
I beleive that the raw naken idea of being able to patent
some software processes is legitimate. So if we lived in
a more idealistic world, I would be for patents.
However, the patent system cannot keep up with the sheer
volume of patents taht are being presented, and are not
qualified to determine if something is obvious or even
existed previously.
Because of that reason, I am against software patents the
way they currently are being handled in the real world.
First off, 20 years is too long for a patent in the
software industry.
In my vision of what should be, there probably wouldnt be
more than a couple hundred software patents taht I could
think of that I would concider legitimately patentable.
For example, if you set of a seizmic charge, and use some
equipment that measures the underground sound-waves that
are produced, and then used some software to process that
information to tell you what kinds of things are under the
ground, such as oil, or metals, etc. That is something
taht I would concider as legitimately patentable.
Preferably, I would hope taht the technology would be
developed at a university by a government grant and made
available to all in the country. But still...
An example of something that I do NOT think should be
patented would be "a system that displays a graphical
image on a viewing device". This second example should
be stopped by the PTO and certainly not granted.
To fix this volume of patents being issued, I beleive that
a second layer to the process needs to be implemented.
Right now there are corporations, patent attorneys, and
the PTO.
The PTO should be the records keeping service. The patent
attorneys will get things rolling for a company, but a
third entity should be an entity that verifies the patent,
certifies it as non-obvious in the field that it is
intended, and that there is no prior art. If this
imaginary entity certifies a patent, and it ends up in a
legal disbute and it is determined that there WAS prior
art, or it was obvious, then all patents taht the
certifier certified become immediately suspect and
corporations that used taht certifier could immediately
demand some compensation for damages, as well as paying
some hefty fines, and possibly jail-time if it is
warrented. That the certifiers make damn sure that a
patent is legitimate before putting their reputation and
fortune on the line.
This would allow corporations to submit and pay for as
many applications as they like without putting undue
burdon on tax payers to pay for an army of government
workers to do all this work.
Private individuals or small companies could request a
business grant from the government to help with the costs
of applying for a patent (and certification), and can only
receive a certain number of these in a lifetime. The govt
can afford this because the PTO is so much more
stream-lined.
I know that this is all a fantasy that wont come true, but
thats my answer to the problem.
- cjdj, not logged in. [ Reply to This | # ]
|
|
Authored by: Anonymous on Wednesday, March 16 2005 @ 01:30 PM EST |
The problem of clearly and universally describing something is not unique to
software (eg. the bubble sort or the token to wavelength examples), it is an
issue for inventions which are derived/dependent from/on mathematical
principles.
As an example I am familiar with, consider the development of an electrical
circuit to determine the angular position of a motor's rotor (the thingie which
spins in a motor) based on the measurements of the motor's voltage and current.
Since we'll assume that there is no software involved, this will fall within the
'normal' and ok to patent space.
Mathematical expressions can and have been written which describe the physical
relationships between the motor's voltage, current, rotor position, torque,
power, etc. These expressions can then be combined and re-written in order to
solve for the rotor position as a function of the motor current and voltage.
Using these equations, an appropriate
circuit can be designed since there are well known relationships between
mathematical operations and electrical circuits.
Since the underlying mathematical expression can't be patented, the description
of the circuit is instead and this causes the same problems highlighted by the
software examples.
In the case of my motor example, a key portion of the rotor position calculation
is the mathematical integration of a voltage and there are patents which use
this description in their claims. So far so good, but here is the rub. The
concept of low pass filtering (letting the bass sounds
through, but not the treble sounds) is mathematically nothing more than an
integration, so other folks have patented _exactly_the_same_circuit_ but instead
of claiming that an integrator is used, they claimed they are low pass
filtering. Different words, but exactly the same thing...
This is a flaw in patenting things which are based on mathematics and is not
unique to software, although software patents do make it much more glaringly
obvious...
Eric Benedict[ Reply to This | # ]
|
|
Authored by: OK on Wednesday, March 16 2005 @ 01:58 PM EST |
Consider this quote:
"Perhaps the most obvious way to sort by exchanges
is to compare K1
with K2, interchanging R1
and
R2 if the keys are out of order; then
do the same to records
R2 and R3,
R3 and R4,
etc. During
this sequence of operations, records with large keys tend
to move to the right,
and in fact the record with the largest key will
move up to become
RN. Repetiotions of the process will
get the approprate records into
positions RN-1,
RN-2, etc., so that all records
will
ultimately be sorted."
And this:
"Compare two adjacent
values in the list and swap them if first one is
less than the second one.
Repeat for the next pair of keys, until you
reach the end of the list. Then
start from the beginning. List will be
sorted when you compare all adjacent
values from the beginning to the
end and did not have to swap a single
one."
How much in common is here? Both describe the same simple
sorting
algorithm - bubble sort. First one is a quote from Donald E. Knuth "The
Art of Computer Programming",
vol 3, "Sorting and Searching"
and the
second one I came up with myself. If you see the second
description in the
patent clause, and are not aware that it is commonly
called The Bubble
Sort,
how likely will you be able to find the first quote as prior art? I
am
not talking about determining that they are describing the same method,
I am
talking about simple ability to
find it.
--- The one I was... [ Reply to This | # ]
|
|
Authored by: Anonymous on Wednesday, March 16 2005 @ 02:18 PM EST |
Judges, as a group, have wide discretion over what evidence, and what kinds of
evidence, they allow to be presented. They don't just allow any random
artifact, writing, person, or concept to be presented to a jury as a source of
facts.
In my view, we are getting to the point where a patent is no longer a fact.
It's just paper created by the patent office and not indicative of any novelty
or creative ownership. Judges in patent cases should remove the presumption
that patents are valid, and shift the burden of proof in these cases to the
holder of the patent.
I'm not saying patents are useless or should be ignored, but that before a
patent can be enforced by a court of law, it should be validated, much the way
other facts are vetted during the discovery process.
Thoughts?[ Reply to This | # ]
|
|
Authored by: Anonymous on Wednesday, March 16 2005 @ 02:20 PM EST |
The basic difference between patent and copyright, as
applied to software, is that copyright protects the means,
but patent protects the end result.
For example, take the following (very simple) examples:
x = 5 * 5;
i = 15 + 10;
These two snippets of C both return the number 25, but do
it in different ways. Under copyright, both are legal -
they aren't identical, and they use a different approach.
However, if 'A method or device for producing a
representation of a quarter-hundred numerical value' is
patented, all code which generates the number '25' becomes
infringing, no matter what method they use to do it. [ Reply to This | # ]
|
|
Authored by: Anonymous on Wednesday, March 16 2005 @ 02:53 PM EST |
"7. Software is abstract, like math. Software ideas can be
described in any number of ways, so searches for software
patents would be hit-and-miss. Reliably avoiding patent
infringement would be impossible."
Software and math have more in common than the above point
indicates. I've been writing software for 20 years. Software
<b>is</b> math. Both are intangible abstractions that cannot be
seen, heard, touched, felt, or smelled. They are not processes
that can yield tangible products, but are processes that
manipulate concepts. All math and all software deconstruct into
arithmetic. Software is merely the set of instructions that tell the
processor how to add and subtract.
For an example in pseudo-C:
if (a > b) {do stuff}
The processor may internally do "a minus b" and then check the
sign. If the sign is positive and the flag that detects "zero" is not
set, then the statement is true (a is greater than b) and the
program "does stuff". All software reduces to this type of math.
Our programming constructs allow us to express this basic
arithmetic in an infinite number of ways, though sometimes only
one expression for a particular objective is useful on a practical
level.
Our mathematical constructs also allow us to express this basic
arithmetic in an infinite number of ways for convenience. The
cos(x) function (when it qualifies as a function), for example, can
be deconstructed into basic additions and substractions.
However, doing so is orders of magnitude harder to work with
than the abstraction that is cos(x). This is identical to software,
which is not surprising since software is purely math.
We have higher level programming constructs that let us express
software's mathematical abstractions without having to work with
the enormous complexities of basic arithmetic that lay under the
hood.
Patents on software are patents on abstract math. They are not
patents on methods of production or procedure. They are
patents on methods of mathematical expression. Since the lines
between methods of expression naturally defy delineation (the
same mathematical sequence can be expressed in a staggering
number of combinations), someone who gains a patent on a
software procedure can easily claim that is covers other
processes not originally covered by the software patent.
A search for any given mathematical, and therefore software,
process cannot possibly be done exhaustively since you can
always derive patented expression A from unpatented
expression B (and vice-versa) through mathematical
transformation. Hence all software potentially infringes on all
software patents.
The relationships between two given mathematical/software
processes are usually not obvious, and are just waiting to be
discovered by some clever individual. These processes are
frequently seen as distinct initially. But over time, their abstract
relationships are uncovered through mathematical
transformations. When this happens with software (and it can
happen with <b>any</b> given software), lawsuits result.
Hence, reliable prior art searches on software processes are
impossible.
Tony O'Bryan
stormreaver@fordlandmall.com
[ Reply to This | # ]
|
- Software and math - Authored by: Anonymous on Wednesday, March 16 2005 @ 07:04 PM EST
|
Authored by: Anonymous on Wednesday, March 16 2005 @ 02:53 PM EST |
Many arguments against software patenting can easily
be turned around to be arguments for software patenting:
Quote:
1. There are currently no costs, waiting periods, or
application forms required for software development.
Patentability would radically change this and would
invalidate many development and business models.
Endquote.
It follows that is it cheap to work around a software
patent. That makes the software patent less valuable.
As a result of this, patents on software are already
generally avoiding the areas covered by open source.
Quote:
2. Software already has "ownership rights" via the
copyright system. Copyright is instant, costs nothing, and
doesn't interfere with independent development.
Endquote.
See answer to 1.
Quote:
3. If companies could purchase exclusive rights to the use
of techniques required by their defacto standards, they
could choose their competitors. "Competition" would become
an inside joke, and preventing competition would be
completely legal and above board.
Endquote.
Defacto standards are prior art, and can not
be patented because of that. At least not normally in
Europe.
Quote:
4. Small and medium enterprises can't afford patents, they
can't spare time for patent searches and they can't risk
the cost of contesting an accusation in court.
Endquote.
They don't have to. Software development around an
existing patent is a lot cheaper. How many times
has this already been necessary in Europe?
Quote:
5. The patent term (20 years) is absurdly long in terms of
the software industry.
Endquote.
Correct. Why pay 20 years of fees to keep a patent alive
on something that has been worked around 19.9 years ago
in other (open source) software?
Quote:
6. Innovation in software is incrimental, new ideas build
on the old. To advance the state of the art, developers
must be permitted to build on top of the state of the art.
Endquote.
A patent must be published to get the rights to exclusion,
so the same is true for any patented technology. However,
with patents in the loop the speed of innovation is
just about nothing compared to open source software.
Quote:
7. Software is abstract, like math. Software ideas can be
described in any number of ways, so searches for software
patents would be hit-and-miss. Reliably avoiding patent
infringement would be impossible.
Endquote.
If a search is hit and miss, so is detecting infringement.
Inventions are about technology, not about math, at least
in Europe.
Quote:
8. Engineering, manufacturing, and pharmacutical patents
are industrial regulations. Software idea patents would
place restrictions on what all businesses and all
individual computer owners can do with their computer.
Endquote.
Any law places restrictions on individual freedom.
That is the point of law.
Quote:
9. In the USA, to get around the burden of software idea
patents, the Big Players of the software industry have
formed cartel-like patent sharing agreements. Small and
medium enterprises cannot afford to join these agreements,
and NONE of the Big Players are European companies.
Endquote.
No comment.
Quote:
10. For Europe to develop it's own software industry, we
must retain the right to write our own software - without
having to ask permission or pay royalties to current
(foreign) market leaders.
Endquote.
There is a better argument:
Open source software has delivered innovation at a much
higher speed than innovation from patents.
Does Europe want the advantages of this high speed
innovation, or not?
When yes, how much does the current European patent
law need to change?
[ Reply to This | # ]
|
|
Authored by: beserker on Wednesday, March 16 2005 @ 03:05 PM EST |
I'll take a stab at this... IANAL, etc.
7. Software is abstract,
like math. Software ideas can be described in any number of ways, so searches
for software patents would be hit-and-miss. Reliably avoiding patent
infringement would be impossible.
The basic idea seems to be
that there is no "standard" way of specifying what a software idea is. Without
reliable descriptions there is no reliable way to search for an already patented
idea. Any code examples in a patent are unreliable. Since a particular piece of
example code written in whatever language is an expression of the idea
and not the idea itself, I don't think that the code per se is patentable
(although since its an expression its certainly coyprightable). The first thing
that I thought about for expressing the underlying software ideas was UML but I
have no idea how, say, a googleized patent search on the concepts implied by
diagrams would work.
I think that this list misses the mark in one very
major respect. The EU is not allowing software patents. If fact the
note by Ms Bowles explicitly mentioned this. The EU wants instead to allow
inventions that "include" software , appearently by requiring that the invention
produce a "technical effect" (whatever that is). To me, this makes these patents
more about the technical effect that is being produced than about the software
per se. This shouldn't affect the writing of a piece of software unless it
results in the same technical effect. Fine, so computer science areas like
arithmetic algorithms (sorting, pi, sqrt, etc) should be out-of-bounds. But, it
all seems to come back to the meaning of "technical effect". For instance if the
interaction between two programs can possibly be interpreted as resulting in or
from a technical effect then it theoretically could be possible to patent away
inter-operability. Ideally, inter-operability considerations need to be a valid
patent defense.
Another problem that I see is best summarized by the phrase
"Control the language, control the debate" (not mine, ?Avi Davis?). This battle
will be fought on the home turf of the lawyers and legislators. "technical
effect" and "industrial application" are just two examples of this. Most of the
arguments that I see make fine sense when i'm wearing my normal technical hat
but I literally don't know the language within which this will play out.
In
short, the list is not a bad start but it preaches to the choir and also glosses
over some fundamental issues that should be front and center.
---
"Outside of a dog, a book is man's best friend,
Inside of a dog, its too dark to read."
- Groucho Marx [ Reply to This | # ]
|
|
Authored by: Dark on Wednesday, March 16 2005 @ 04:03 PM EST |
Even without knowing the Haskell programming language, you can probably
appreciate the list of 24 ways to write the same function in The Evolution
of a Haskell Programmer. Just scan the list to get an idea of the diversity
of ways to implement this simple function.
The code fragments all behave
identically (they compute the factorial, e.g. fac 5 = 5 times 4 times 3 times 2
times 1 = 120), but they look wildly different. They are all written in the same
programming language; the differences between most of them are structural, not
superficial. But a single patent on the computation of factorials would cover
them all.
[ Reply to This | # ]
|
|
Authored by: AdamBaker on Wednesday, March 16 2005 @ 05:45 PM EST |
The EPO decision to grant patents on computer programs is described in its
official journal.
This can be downloaded from
http://www.european-patent-office.org/epo/pubs/oj97/fts_index.htm#1999 .
Select the Oct 99 volume then unzip it and read file 10_6090.pdf [ Reply to This | # ]
|
|
Authored by: Anonymous on Wednesday, March 16 2005 @ 06:02 PM EST |
A thing I don't see discussed often is that fact that many software patents, and
many of the most troubling, are not patents on clever software
implementation techniques. Instead, they're patents on ideas about using
software to solve certain problems.
I've worked at a large multinational
technology company of considerable familiarity to Groklaw. This company prides
itself on its immense patent portfolio. I participated as a senior reviewer for
a significant (500 developer) portion of the company for a year or two. I myself
am listed as an inventor on about 10 patents.
In the case of all my patents
on many that I reviewed, no actual software was written to implement the
patented ideas. I have a strong suspicion that in the case of most of my
patents, nothing was ever implemented concerning the patents.
The
patents I was familiar with most often took the form of describing a computer
program that solved a certain set of problems. So, lets say you're faced with
the problem of distributing some sort of software tool to a set of workstations
in a network, and the tool needs to configure itself based on some local
characteristics of the workstation. The first thing to do is get a
patent:
Abstract: A software system involving (1) a subsystem in the
form of a component "client" (2) a subsystem in the form of a central "server"
(3) a set of zero or more "secondary servers" (4) a transmission subsystem
capable of using remote procedure call, remote file transfer, HTTP (Hypertext
Transfer Protocol) requests, or a combination of those methods to transmit
"client" subsystem to selected computers attached to or reachable from a
computing network (5) a communication protocol implemented among the listed
subsystems enabling two-way communications across a computer network.
The
"client" subsystems once distributed are capable of remotely-triggered
installation (via remote procedure call or HTTP request or another generalized
remote invocation mechanism available on the computer network infrastructure)
and will perform automatic discovery of local computing resources of interest to
one or more high-level application software systems. Such information is
communicated back using the communication subsystem to one or more server
components or secondary server components. The discovered configuration
information may be stored in a data repository such as a relational database
system or XML document.
Now note that we've got no actual
implementation, nor do we describe much about how we'll do those things. Indeed,
in my experience, part of the work of coming up with the patent claims is
figuring out how to word them so that any implementation is covered.
Thus, what we're doing is identifying a problem that can be solved with
computing technology, and patenting that: the use of computing technology to
solve problem X.
(That fake abstract is vaguely like several of the patents
out there with my name on them. Most of them make less sense :) [ Reply to This | # ]
|
|
Authored by: KontinMonet on Wednesday, March 16 2005 @ 07:24 PM EST |
Software is abstract, like math.
A better description (and proved
by Alan Turing, Alonso Church et al) is that a software process is an
algorithm.
Courts in the US seem mightily confused by this. For
example, in the Alappat decision, it was stated that a software invention
was held to be patentable in that it did not constitute a 'disembodied
mathematical concept' but rather 'a useful, concrete and tangible result'. I
bet all mathematicians who have created a vast body of useful algorithms to
solve a massive number of problems must be very non-plussed by this decision.[ Reply to This | # ]
|
|
Authored by: zeth on Wednesday, March 16 2005 @ 08:09 PM EST |
I went to the first one and made a blog
href="http://www.zeth.info/2005/03/uk-patent-workshop-on-technical.html">post
> about it. [ Reply to This | # ]
|
|
Authored by: k12linux on Wednesday, March 16 2005 @ 11:06 PM EST |
Here is a real-life example that I ran into. While it didn't involve patents,
it should be useful to understand why software patents are such a problem.
A former employer manufactured products which were measured to fractions of an
inch (down to 1/32nds.)
Depending on what was being done and measured, they might need to round to the
nearest 1/4th inch, nearest 1/16th of an inch, or round down/up even. (ie:
Rounding 1.124 to the nearest 1/8th would give you 1.125 or 1 and 1/8th.
Rounding the same number down would give you 1.0")
My predecessor wrote some code which, could probably be defined in a patent
application as "A program which, given a decimal number, a fractional
denominator and a rounding option returns a decimal number correctly rounded to
a fractional decimal equivalent."
The one he wrote, however, was terribly inefficient. If called to round a
number down to a 1/32, it would create an array of all 32 possible decimal
equivalents. (ie: 1/32=0.03125, 2/32=0.0625, 3/32=0.09375, etc.) Then it would
drop the whole part of the number and walk through the
array until it found a value higher than the one it was comparing. Finally it
would and return the next value down in the array plus the whole part of the
original number.
Yes, it worked. It did exactly what it was supposed to do. But process a 1/2
million records and the extra time building and searching the array added up in
a hurry. And what if the function had to work with numbers to the nearest
1/128th? Now it would be at least 4x slower!
If that was patented as described above it could have never been improved except
by the company who owned the patent. And why should they? They don't have to
worry about competition. Anybody who builds a better version can be sued.
The replacement program was much faster. It took the passed number, multiply by
the fractional denominator, rounded and then divided it back out again. In
other words, 2.0314 * 32 = 65.0048. Round down to 65. 65/32 = 2.03125 (or 2 and
1/32.)
I never learned binary floating point math, but I'm certain that someone who had
could refine things even further. A function written in assembly language or C
using binary math would probably put what I did to shame in a speed test.
Of course if a patent was issued to a large corporation as described above,
nobody would try to improve things. If they did, they might get sued... or even
just threatened with a lawsuit. Unless they had gobs of cash laying around I
doubt they would fight it in court.
Imagine not being able to implement something so basic in *ANY* programming
language or with *ANY* improvements because a patent existed for the mere
concept of rounding decimal numbers to fractional equivalents.
---
- SCO is trying to save a sinking ship by drilling holes in it. -- k12linux[ Reply to This | # ]
|
|
Authored by: agdolla on Thursday, March 17 2005 @ 03:39 AM EST |
Microsoft + SAP
http://www.microsoft-sap.com/showpr.asp?id=47
As part of the alliance, the two companies entered into a patent cross-license
to provide a better environment for joint technical collaboration and solutions
development. “This cross-license signifies a growing relationship between
Microsoft and SAP to benefit customers with both innovation and peace of mind
that we stand behind the intellectual property in our products,” said Shai
Agassi, member of the executive board at SAP. “The license brings together two
of the world’s most significant software innovators and provides a way for both
companies to offer more compelling solutions for our customers. Our work
together is a strong example of open collaboration and innovation on behalf of
customers in the IT industry.”
Microsoft + Siemens
http://www.microsoft.com/presspass/press/2004/may04/05-03SiemensMicrosoftCrossLi
censePR.asp
[ Reply to This | # ]
|
|
Authored by: Willu on Thursday, March 17 2005 @ 08:55 AM EST |
Hi, and welcome to my first Groklaw post,
PJs highlighting of
"Software is abstract, like math" reminded me of Dr
Dave Touretzky's fight
against the DMCA in the US. In particular, he pointed
out that software is
simply a formal description of a process. There is
no difference
between a formal description of an algorithm and
an executable program. The
difference is only in the machine required to
execute it. I give more support
for this assertion below, but first let's look at
some of the fun
consequences.
Software patents bring up the following
scenario:
- Alice writes a formal description of a patented algorithm in
English.
At the time, there is no automatic process for converting her formal
description into an executable program. She distributes her
prose.
- Bob then comes along and writes a program that converts Alice's
formal
description into an executable program. In computer parlance, Bob
writes a
compiler for Alice's language. Note that to do this, Bob does not
need to
know anything about the patented algorithm; he simply needs to know the
style of English Alice used to describe it. Bob distributes his
program.
- Clarise then takes Alice's description and Bob's compiler and
combines
them to produce an executable in the privacy of her own home. She has
her
computer execute the patented algorithm.
What has
happened here?
- Did Alice violate the patent by distributing English
prose?
- Did Bob violate the patent by distributing a generic program
that has
nothing to do with the patent?
- Did Clarise violate the patent
when she combined the two, or is that
covered by the fact that you are allowed
to use patented technology for
private use in your own home?
- What
happens if a web site happens to have both Alice's description and
Bob's
compiler available? How close do they have to be before that becomes
a patent
violation? What about if they're on different web sites, but a third
web site
has a link to both?
In case anyone thinks this is an
unrealistic example, Dr Touretzky gives a
whole series of similar examples
which came to light during the litigation
over the CSS DVD encryption scheme.
I highly recommend his Gallery of CSS
Descramblers and his description of why
source code and object code are
indistinguishable. Omri Schwarz has some
programs that will
automatically translate any 'C' program into English text, and back again.
Finally, a US circuit court has ruled that software can be protected speech
(see
the eff copy of the decsision). Note,
I'm not
claiming that US courts are the final arbiter of the truth of this, just
that
they have recognised it in some situations.
For those who don't have
time for those details, the argument is simple.
An algorithm is a series of
things that must be done in a certain order. That
can certainly be described
in English, or any other human language. If you
are careful about the style of
language you use, then you can use language
simple enough that a computer
program can understand it. The limits on
how simple you have to make the
English prose seem to depend only on how
much time you want to spend writing
the program that will "read" it.
I hope this post has been food for
thought,
Bon apetite,
Will
[ Reply to This | # ]
|
|
Authored by: Anonymous on Thursday, March 17 2005 @ 09:44 AM EST |
I have a differnet point of view on this as a US stock holder.
I think the US just kind of purchased the EU for the price of a few months of
operating expenses at Microsoft.
I own microsoft stock and indirectly in my 401K mutual funds.
This is a great thing for me. Microsoft is a monopoly, and they will soon move
in and have control of Europe. A US company will basically be able to charge
what ever it needs to in order to keep my stock price attractive.
The EU can slap any penalty on Microsoft they want for media players, internet
explorer, whatever. It doesn't matter, a monopoly can just increase the price to
cover the "extra" overhead of doing business overseas.
The Irish had it correct when they were talking about the "big
players" basically owning them.
Its nice to be in the USA!!!!!!
We win, you loose....
[ Reply to This | # ]
|
|
Authored by: Anonymous on Thursday, March 17 2005 @ 10:40 AM EST |
At the outset, I don't personally like software patents for a similar set of
reasons. And I have some, because the company wants them and I do what they
say in that regard.
Anyway, the problem I see with this list is the sort of
thing that was revealed by the word substitution (removal) argument made in the
MS/XML discussion thread. If you take out the word "software", almost all of
the same arguments can be made against patents in general. While that might be
desirable for some folks (I'm undecided), it is a far tougher sell policitally
to say "all patents should be abolished". Many of them are absurd, or for
things seem like minor changes that ought to be obvious.
One of the basic
issues is: is the job of a patent office to grant patents, or to reject them?
For the Good of the People, you could say the best thing to do would be to
reject most, which would encourage competition For the Good of the Economy,
you might want to grant more, because it supports monopolies that enhance
margins and profitability. The argument is basically whether there is enough
incentive to invent without as many patents as there are. I personally think
too many are granted now, but that is not a view held by the status quo.
-
Anonymous Coward.
[ Reply to This | # ]
|
|
Authored by: j00b4k4 on Thursday, March 17 2005 @ 04:42 PM EST |
7. Software is abstract, like math. Software ideas can be described in any
number of ways, so searches for software patents would be hit-and-miss. Reliably
avoiding patent infringement would be impossible.
The way I see it,
the above is describing two distinct problems. I was a bit confused on the
first read as well. The problem that software ideas can be described in a
number of ways is fairly obvious, but a big part of the problem is a consequence
of using natural language to describe these processes. It's difficult enough to
find equivalent expressions in a structured language (as somebody already
mentioned), but it can be - and often is - impossible to determine if just two
natural language expressions are equivalent; never mind checking thousands of
them against each other.
Append the result to a list.
Insert
returned value into a queue.
Concatenate the original structure with the
lvalue of the previous step....
I also perceive that there's much less
regard for confining the invention to its proposed problem space than there is
for physical inventions. I don't believe a [dinner] fork would infringe a
patent on a comb just because you can comb your hair with it, but I do believe
that the result could be the opposite with software patents. (For instance, say
the fork is a routine that moves new items from a group into a more prominent
view, and the comb is a routine that cleans up a group of items by removing the
old ones and displaying the remaining items.) This is where the "software is
abstract" argument comes in.
I wouldn't say necessarily that software is
mathematical by definition, but algorithms - as a proof of concept - are for
certain mathematical, and the latter is what shows up in patent applications as
a "system and/or method". Math is abstract not only because one result can be
applied to many phenomena, but also because the results run together in strange
ways. The same method might produce a completely different result when applied
in different problem spaces, or alternatively, different methods might produce
the same result in different spaces. This is an important concept, because
software can infringe a patent even when operating in a completely different
problem space.
Here's what I see as the core problem with these patents: An
algorithm is not an invention; it's a discovery. By allowing these discoveries
to be treated as inventions here in the US, we've created a sort of gold rush
where people can lay claim to what is essentially a natural
process.
Though the implications aren't as far reaching in practice,
it's not unlike saying that only one person is legally allowed to water plants,
because they discovered the system and method by which falling drops of water
can be used to enrich topsoil. (Thank God the "obviousness" clause works in
many of the categories.) And now I've gone on for so long that I don't remember
what I meant to get at with all this. I hope I have made some good points.
:-) [ Reply to This | # ]
|
|
Authored by: Anonymous on Friday, March 18 2005 @ 11:20 AM EST |
My take is this:
Software inovation is better served by sharing - as per scientific publishing -
than by locking software methods up in a patent.
The biggest reason in my mind is that software patents are necessarily
over-broad, and usually obvious.
Over-broad
Software is based on logic, which is a branch of Mathematics. Everything in
software is mathematical. Everything. Without any exceptions whatsoever.
Imagine patenting pythagoras' method for determining the length of the
hypotenuse. May not seem much - but that one equation is use throughout
software.
Every idea in software has applications outside it's inital purpose. This is
obvious in mathematics, but for some reason non-software people don't make the
connection.
If mathematicians throughout history locked up their ideas, and charged for
their *use*, we'd be in the dark ages.
Say someone patents a method of processing the items on a series of purchase
orders such that the number of trucks coming in on a particular day never
exceeds a threshold - that method could be used in, say, scheduling tasks in an
operating system. Or scheduling raw materials in a machine.
Obvious
I have yet to see a non-obvious software patent. Take any software patent and
ask 50 software developers with 10 years experience whether there was any
innovation in the patent. The majority answer will rarely be yes.
This is SO true in software, that the same idea tends to pop up in many
different places at once. Usually it's an idea that has been used before, but
applied to a new field or application - although the author hasn't necessarily
seen the earlier application.
The exact same thing (unsurprisingly) happens in mathematics. When you look at
the origins of certain mathematical ideas you'll see that they are very commonly
ascribed to several people all working seperately.
How many of you guys have had an idea only to find it's not original - or that
others have the same idea around the same time? Please comment.[ Reply to This | # ]
|
|
Authored by: steelneck on Friday, March 18 2005 @ 12:38 PM EST |
Number 7
Software is its own descripton. So, to describe it without
handing out product at the same time, you have to step up at least one step in
abstraction, and by that you naturally get abstract descriptions. If it gets
concrete, it is code, making the PTO infringe by spreading the code and thus the
product. Compare to a piece of patented machinery, many times you do not even
need the the description, only the drawings to recreate the machinery. But
software...
You could also se it this way:
Think of the painting Mona
Lisa, it is the expression
that has copyright, the protection is not derived
from the description "painting of a lady" (the up-step in abstraction). And the
reason is quite obvious, we do not want one creator to prejudice the next ones
rights, that would be like copyright on unwritten books or unpainted paintings.
That would eventually dry up the stream of devolopable ideas, this is why ideas
cannot be owned, it would hurt scociety and freedom of
speach/expression
This also explains why software patents tends to be
inherently broad. [ Reply to This | # ]
|
|
Authored by: Anonymous on Sunday, March 20 2005 @ 04:56 PM EST |
Interoperability is inherent to competition in software. This is demonstrated
by vendor lock-in.
Software patents impose a toll on interoperability, and therefore on
competition. That restricts competition to moneyed players.
Writing software, sans patents, does not require money -- witness all the
software written as a hobby.
Competition drives innovation. This is inherent to human endeavor. The obvious
example is the stagnation of IE after MS killed Netscape, the only viable
competition.[ Reply to This | # ]
|
|
|
|
|