|
Authored by: PolR on Monday, October 15 2012 @ 12:37 AM EDT |
I hear you. Perhaps those who write amicus to the Federal Circuit will follow
your suggestion.
One more thing. The part of math which is relevant to software is not a part of
math primarily concerned with numbers. It is a part about symbols. They could be
used to represent numbers. They could be used to represent other things as well,
like boolean values and machine instructions.
This may come as a surprise to people who have grown accustomed to associate
math with numbers. There is indeed such a thing as a part of math about
symbols.
[ Reply to This | Parent | # ]
|
|
Authored by: scav on Monday, October 15 2012 @ 07:26 AM EDT |
Would this be persuasive?
The word "algorithm" has a specific meaning in mathematics,
which is also the accepted meaning as a term of art in
related fields (such as software engineering). It is
undisputed by experts in all these fields where the word
"algorithm" is used, that an algorithm per se is an abstract
mathematical construct or idea.
A physical machine or a compiled computer program running on
one does not *contain* an algorithm as a component. Nor does
a computer program in the form of source code (a sequence of
symbols). It may *express* the steps of the algorithm in
various ways depending on the computer language chosen and
the writing style of the programmer. The algorithm itself is
an abstract idea. It just happens to be an abstract idea
that can be expressed with mathematical precision.
Therefore at the very least, the algorithmic intent of a
computer program is not patentable subject matter, and the
form of expression of the program is already protected by
copyright. If there is some other part of a computer program
that is neither the algorithm it expresses, nor the
mathematical notation used to express it, then I don't know
what it might be. I am content to let the USPTO answer that
one.
The phrase "software is mathematics" can then be taken as
shorthand for "software consists of specialised mathematical
notation precisely expressing the steps of an algorithm, and
an algorithm is indisputably an abstract mathematical idea."
Anyone see any holes that need filled there?
---
The emperor, undaunted by overwhelming evidence that he had no clothes,
redoubled his siege of Antarctica to extort tribute from the penguins.[ Reply to This | Parent | # ]
|
- Ummm... - Authored by: jesse on Monday, October 15 2012 @ 09:12 AM EDT
|
Authored by: Ian Al on Monday, October 15 2012 @ 08:21 AM EDT |
First of all, the symbols '1', '0', 'on', 'off', 'true' and false binary values
in most computers are represented by pairs of voltage levels (as PolR explained.
I think he meant to say 5v and 3.3v, but even this is not accurate. One needs to
refer to the international standards for RTL, TTL and MOS logic levels to be
sure. We don't even know what the equivalents are inside memory and inside
processors). There can be lots or little current flowing to produce these
electrical symbols depending on the circuits chosen by the designers.
(In passing, switching a simple transistor stage 'on' causes the voltage across
the transistor - and thus the voltage output - to drop to below one volt and the
current through the transistor to change to the maximum the circuit will allow.
Turning it 'off' pushes the output almost to the supply rail (5v in the good old
days) and the current to drop to a minimum for the circuit. In other words,
switching the transistor 'on' produces a '0', 'False' and 'Off' symbol at the
output.)
The computing engine does not use electrical switches. As PolR also explains,
the computing part of the computer does all of its work by applying these
symbolic voltages to electrical circuits that produce output symbol voltages by
applying the boolean functions of OR, AND and NOT (although, there are
alternative boolean equivalents that may be used and that is something which has
a mathematical proof).
The word software is a good one, if used correctly. It means something that is
ephemeral rather than permanent or hard. We cannot produce the complex files of
executable symbols needed for computers these days without using higher levels
of computer language. Without the word 'software' what else are we to call the
result of 'programming'?
I think I can see your point, though. Software has come to mean the temporary
stuff that allows you to do things using your computer device. In the same way,
a magic wand is what you use to produce a rabbit from a hat.
The machine code symbols are electrical values that are passed to the boolean
logic gates inside the processor and other computer parts like memory. Some of
the symbols are accepted as instructions to the processor and others are used as
the symbols to be manipulated. The voltage represented symbols are math
language.
Source code is human readable math algorithms when presented as a text
representation to the programmer. The symbology is not a one-for-one match to
machine code symbols. The source code bunch of symbols can be compiled to a
fully equivalent bunch of machine code symbols. When stored in the computer the
source code symbols are translated into binary-based, voltage-based symbols that
can be passed to processor and memory. These bunches of symbols have a
one-to-one relationship with the bunches of text symbols represented to the
programmer.
The term software, further subdivided into source code, intermediate code and
machine code, is essential to explain to courts, in detail, why software is
math. If you use another term, the lawyers will wonder why you are taking the
trouble to explain all this stuff.
---
Regards
Ian Al
Software Patents: It's the disclosed functions in the patent, stupid![ Reply to This | Parent | # ]
|
|
Authored by: Anonymous on Monday, October 15 2012 @ 12:34 PM EDT |
The problem is with this is that you are only referring to
the written
instructions that are covered by copyright.
Those instruction include code in
some computer language,
bytecode, assembly and perhaps machine code. You are
forgetting that there is an outcome from that
software.
What is
ignored is that those instructions produce a result.
While a recipe can be
copyrighted to a very limited extent
(such as in a cooking book), an automated
coffee making
machine are patented (well, aspects are). Just put a pod or
similar to get that ideal cup of coffee/hot
chocolate/tea/etc. Each pod
has some instructions that the
machine reads and follows with potential user
overrides.
The point is that software creates a product that is more
than
just the sum of the pieces. It is not sufficient to
ignore that just because
some of that product is not
physical, it should not be patentable.
The real
reason why software is not usually patentable is
that there is a huge amount of
prior art. Likewise, much of
the single-serve coffee machines are not covered
by any
patents or even copyrights.
[ Reply to This | Parent | # ]
|
|
Authored by: mcinsand on Monday, October 15 2012 @ 12:41 PM EDT |
Sorry, but I can't help myself:
>>The computer, since it is electrical, can basically only
>>recognize current and no current.
Probably better to say 'voltage and no voltage.' Many of the transistors in a
computer are Field Effect Transistors, which respond to voltage, rather than
current. These are the transistors that are static-sensitive. BJT's (Bipoloar
Junction Transistors) are current amplifiers, and there are some in the
computer, as well. Except for special cases where we might have inductive
systems with flowing current inducing voltage, the existence of current depends
on voltage while the existence of voltage does not depend on current (static
electricity, anyone?). So, if viewed that way, the BJT's depend on the voltage
to drive base->emitter current for their signal response.
Regards,
mc[ Reply to This | Parent | # ]
|
|
|
|
|