
Why Software is Abstract, by PolR 

Thursday, October 07 2010 @ 03:40 AM EDT

Why Software Is Abstract
by PolR
[This article is licensed under a Creative Commons License.]
Following the ruling of the Supreme Court
in Bilski, the USPTO asked, in substance, how to tell an abstract idea
from an application of the idea. In this article I propose an answer
to the question of what makes software abstract. It is
a follow up to the previous article, Physical
Aspects of Mathematics.
The logic is to look at why a mathematical
calculation is abstract and then see if the same logic applies to
software. It happens that it does. It is possible to show that software is abstract with
references to the underlying mathematical aspects. This is not, however, the
topic for this article. The argument is presented without any assumption as to
whether or not software is mathematics. I work from the observation
that a mathematical calculation solving a mathematical problem is
abstract. Then I look at what makes it abstract. Then I observe that the
exact same logic is applicable to all software whether or not the law
sees it as an algorithm as defined by Benson. This is not
surprising. Software is mathematics and this makes it abstract, but I
don't use or rely on this fact in making the arguments in this
article.
Abstraction Is SelfContainment
Let's start with experts, who can define for us
what makes mathematics abstract, in some writings on the psychology
of learning. See Mitchelmore,
Michael and White,
Paul — Abstraction
in Mathematics and Mathematical Learning (where you can
download the article as PDF)
We claim that the essence of abstraction
in mathematics is that mathematics is selfcontained: An abstract
mathematical object takes its meaning only from the system within
which it is defined. Certainly abstraction in mathematics at all
levels includes ignoring certain features and highlighting others, as
Sierpinska emphasises. But it is crucial that the new objects be
related to each other in a consistent system which can be operated on
without reference to their previous meaning. Thus, selfcontainment
is paramount.
These authors are university researchers
specializing in the psychology of learning mathematics with a focus
on the role of abstraction. They are authorities on the issue of what
is an abstract idea when the psychology of learning mathematics is
concerned.
Consider a calculation written down on paper.
Let's say you have
128 boxes each containing 48 cans of peas.
How many cans do you have? It is 128 ×
48 = 6144 cans.
This is an arithmetical computation. What is the
difference between this and computing 128 ×
48 in the abstract without referring to boxes, cans, and peas? Does
the computation change if it is cans of mushrooms instead? The
difference is purely semantic. The computation is not changed. The
written numbers do not record such information. The arithmetic
process, the physical manipulation of the digits, is the same no
matter what the written symbols represent in the real world.
This is why arithmetic is abstract. Mathematical
calculations are selfcontained in the sense that they are defined
entirely within mathematics, independent of the realworld meaning of
the numbers. This independence is the abstraction that makes
mathematics an abstract idea.
This same idea of selfcontainment applies to
computers for all type of computations, not only the ones restricted
to computations about numbers. During the actual computation the real
world meaning of the bits is not stored with the bits. Some
mathematical meaning is hardwired in the computer. Boolean and
numerical interpretations of bits are understood by the computer
instruction sets. This is all the meaning computers can understand.
When the computer carries out the computation any information about
realworld meaning is unused and physically absent from the computer.
Only the raw bits are present.
Abstractions may come in layers, each one being
located at its own selfcontained level. For example a particular
program may be written in a programming language with an elaborate
type structure that retains some information about realworld usage.
For example, numbers may be tagged with the unit like inches and
kilograms so we know what the number is used for. This source
language layer of abstraction is selfcontained. The information the
program is able to understand is defined in terms of the capabilities
of the programming language.
Then there is a layer closer to the hardware where
the operations must be the machine implemented instructions. Unless
the hardware has been designed especially for this purpose the
elaborate types of the programming language are not recognized at
this level. This degree of abstraction is also selfcontained.
The activity of the computer is selfcontained,
then, in the sense given by Mitchelmore and White. The activity on
the bits is entirely defined within the architecture of the computer
with no reference to the realworld meaning. This means all
computations made by the computer are abstract in the same manner
that mathematical calculations are abstract.
To confirm that this is true, please examine the
list of instructions from reference material like
The
Art of Assembly Language Programming. All the instructions a CPU
is physically capable of are described in such reference material.
None of the instructions ascribe or require any realworld meaning.
The computer neither knows nor needs to know whether it adds oranges
or apples. A requirement to understand the realworld interpretation
of the bits will prevent computer execution because no computer has
such capability^{1}.
An anonymous user replying to the previous
article mentioned a related issue which is worth repeating here.
This leads to my second point, that of
severability and intent  which was triggered by your analysis of
Alappat. The four circuits in that case _were_ severed, as you
pointed out. As such, they were a general purpose computing device;
general in the sense that they could be used for any purpose where
the mathematical operation they embodied was useful. On the other
hand, a mechanical analogue fire control computer is very limited 
it's pretty hard to think of another use, other than firecontrol,
for such a device. When someone tries to assert claims under various
tests by tying a program to a GP computer, these parts are clearly
severable.
Selfcontainment is not the ability to think of
another use for the same abstraction or the same device. It is not
being general purpose as opposed to being specific purpose in the
sense of this comment. Imagine for example a complex mathematical
model for climatology. It will be very hard to think of another use
of these specialized mathematical formulas^{2}.
But they are still mathematical formulas and abstract in the
selfcontainment sense. If we build a special purpose computer to
carry this computation it would still be selfcontained, even though
this computer might have no other use than climatology.
The Irrelevance of RealWorld Meaning
I understand that case law pays attention to the
realworld meaning of symbols. I am not a lawyer, obviously, but from
what I've read, patent law seems to care when the patent covers a
realworld application, because this is one of the factors that help
determine when the claimed subject matter is patentable. But failure
to factor into the analysis the irrelevance of realworld meaning to
the execution of an algorithm will bring inconsistencies. For an
example, see In re Alappat where the meaning of the numbers was
used to determine that the contested patent passed the useful,
concrete and tangible result test.
As another example, this article
on Patently O discussed Ex Parte Gutta, at a test
to determine whether a machine that involves a mathematical algorithm
is patentable subject matter:
The BPAI's test for a claimed machine (or
article of manufacture) involving a mathematical algorithm asks two
questions. If the a claim fails either part of the twoprong inquiry,
then the claim is unpatentable as not directed to patent eligible
subject matter.
 Is the claim limited to a tangible
practical application, in which the mathematical algorithm is
applied, that results in a realworld use (e.g., “not a mere
fieldofuse label having no significance”)?
 Is the claim limited so as to not
encompass substantially all practical applications of the
mathematical algorithm either “in all fields” of use of the
algorithm or even in “only one field?”
I don't know whether this test is still in use in
the postBilski world. But still its analysis is instructive
and relevant to this discussion.
Both prongs of the inquiry look at the purpose of
the claim in terms of practical applications. In a scenario where the
claimed machine does nothing but execute a computer program, this
test depends exclusively on information that is both unused during
the actual execution of the program and absent from the machine as it
carries out the computation. There are scenarios, then, where the
same machine can simultaneously be nonpatentable subject matter and
subject to several independent patents because this test is based on
information that is irrelevant to its intended purpose. The outcome
of the test depends on the purpose of the user and not on the
technology he is patenting. This outcome may and will vary from user
to user.
This observation applies to special purpose
computers where the computation is carried out by application
specific circuits. It also applies to software to the extent the
courts believe that loading software in memory makes a new
potentially patentable machine. Finally, although the BPAI test is
applicable to machine patents, the observation would also apply to a
similar test for process patents where the process is defined by the
stepbystep execution of the computation on the bits.
If the law uses an inquiry that looks at the
purpose of the claim in terms of practical applications to determine
whether or not the claim is patentable or not because it's an
abstract idea, where the claimed machine does nothing but execute a
computer program, this inquiry would depend on information that is
both unused during the actual execution of the program and absent
from the machine as it carries out the computation. Depending on how
that actual test is defined, there could be scenarios where the same
machine can be simultaneously nonpatentable subject matter and
subject to several independent patents because the inquiry is based
on information that is irrelevant to the actual technology. In this
hypothetical scenario the outcome of the inquiry depends on the
purpose of the user and not on the technology he is patenting. This
outcome may and will vary from user to user.
This observation applies to special purpose
computers where the computation is carried out by
applicationspecific circuits. It also applies to software to the
extent the courts believe that loading software in memory makes a new
potentially patentable machine. Finally the observation would also
apply to a similar test for process patents where the process is
defined by the stepbystep execution of the computation on the bits.
Let me give an example. Suppose someone patents a
method to draw the shape of a parabolic antenna for radio
applications and drafts it as a machine patent on the computer
running the program.
This is a practical application. But the program
nowhere uses the information that it is the shape of an antenna that
is being drawn^{3}.
The program is drawing a tridimensional geometric shape that will be
displayed on screen or printed on paper. The fact that this shape is
the shape of an antenna is totally irrelevant to the execution of the
algorithm and has no effect on the structure of the computer that
executes it. It is only when the output is produced that the human
viewers will interpret the shape as an antenna.
Then along comes an engineer in the field of
acoustics that has a use for a parabolic object. He may patent a
method to draw his object and draft it as a machine patent. This
likewise is a practical application. But both objects have the same
shape and are computed by the same method. The very same computer can
be used for both purposes. The code will be identical if the
programmer so desires. In such a scenario, would a second patent on
the same software be granted because a different application is
contemplated? In such case when a user uses the software the patent
that will be applicable will depend on the user's purpose and not on
the software itself.
Then here comes a mathematician in the field of
solid geometry, looking for a program to draw parabolic 3D objects.
The very same code will work just fine but solid geometry is
theoretical mathematical work and not a tangible practical
application that leads to realworld use. For the purposes of this
mathematician, the same software is not patentable subject matter.
In all three scenarios the "invention" is exactly
the same. It is the same computer running the same software
implementing the same algorithm and executing the same machine
instructions. But this kind of inquiry gives different answers in
each scenario. This indefiniteness is what we get if we ignore the
abstraction inherent in software and give undue consideration to the
realworld meaning of the bits.
Consider Diamond v. Diehr. The patent in
that case involved an algorithm for computing the time required to
cure rubber. But the patented process isn't content to just print the
answer. It actually cures the rubber. It is the actual curing that
separates this industrial process from a mathematical process because
there is a functional relationship with the actual rubber. Such a
relationship wouldn't occur if the process were just printing an
answer.
In Parker v. Flook, the patent uses a
mathematical algorithm to determine conditions that require human
attention. An alarm is sounded where these conditions occur. An
audible alarm is output.^{4}
Its purpose is to convey information. It means a condition
occurred. It answers the question of whether or not something
is worthy of attention. It doesn't act in the real world
beyond communicating the information. The Flook patent covers
a mathematical algorithm because the functional relationship with the
required intervention is not being claimed.
In the antenna example, printing the shape of an
antenna is output. The line between expressing and making a physical
realworld use of the meaning is crossed when the antenna is built.
Printing or displaying the shape of an antenna is a mathematical
algorithm. Building an antenna is not.
Where Are the Boundaries of an Algorithm With
the Real World?
So far we have gathered sufficient facts to answer
two questions:
 Why is software abstract?
 In a process involving software, where are
the boundaries of its abstract parts?
We know the answer to the first question. It is
the independence of the bits from their realworld meaning that makes
software abstract. Let's answer the second, looking again at a
mathematical example.
Consider a practical example. Here is a twostep
process to compute the circumference of a circle with a precision of
four decimal places:
 Measure the diameter of the circle with a
measuring instrument precise to four decimal places,
 Multiply the diameter by 3.1416. The result
is the circumference.
This is abstract because there is no correlation
with the real world at all. The calculation is selfcontained. A
circle is a geometric figure and the arithmetic operations work on
numbers.
What if we alter the process to make it a process
to compute the circumference of a bottle? Would it make it more
concrete?
Step b) is certainly not more concrete. A
mathematical computation doesn't depend on the realworld meaning of
the numbers. The fact that the diameter is the diameter of a bottle
doesn't change anything about this step. The difference is in step a)
because the measurement is now limited to measuring a bottle.
When a computation is done, the answer may have
practical applications. For instance, the diameter may be used to
compute the quantity of paint needed to paint a line around the
bottle. This will involve some more abstract mathematical
calculations, but eventually you put the exact quantity of paint in
your bottle painting machine for the quantity of bottles you have.
When you reach this point your activity is no longer independent of
the realworld meaning. You are back into the concrete world.
From this example I infer the answers to the
second question. In a process involving mathematics, its abstract
mathematical part starts at the initial input, when the real world is
described in mathematical terms by measurement or otherwise. It stops
after the final output where the answer is provided, at the point
when its meaning is acted upon.
In the actual process there is a flow of
information. This flow starts at the data gathering step where
information about the real world is collected. This information is
represented with a mathematical object like a number or a collection
of bits. This is the input. Then some mathematical operations occur.
An answer in the form of another mathematical object is produced and
communicated. This is the output. The information flow stops when the
information is received by a party, human or device, who interprets
the information to act upon its meaning. Everything that happens
between the data gathering and the acting upon the meaning is
abstract.
This logic is stated in terms of mathematical
calculations. It applies also to abstract bits independently of
whether or not the problem being solved is a mathematical problem in
the sense of Benson. At the initial input when the real world
is represented with bits, the abstract part of software begins. When
the answer is acted upon after the final output the abstract software
part has ended.
Would this not tell us where to draw the line
between an abstract algorithm and an application of one? A court
would know where are the boundaries of the algorithm and why it is
abstract. The court should be able to work out how the law applies to
a specific patent from this knowledge.
This analysis correlates well with the printed
matter doctrine, or more exactly the notion of a functional
relationship between the information and the substrate. Here is how
it goes:
When the realworld data is initially
gathered it is input recorded on some media, be it a piece of paper,
a USB key, a CDROM, a hard disk etc. Then it is printed matter with
no functional relationship with the substrate.
When the realworld data isn't initially
gathered at the computer it must be brought to it somehow. This
could be for example by communication over a network, an input
connection or insertion of the media in a reader device. Again the
realworld data is printed matter with no relationship with the
substrate.
When the data is processed by the computer
the realworld meaning of the data has no functional relationship
with the computer, because the computer never uses this meaning.
This is why the computer program is abstract, and it is part of why
the program is a mathematical algorithm.
When the answer is produced, it is bits
recorded in memory. Again this is printed matter with no functional
relationship with the substrate.
The answer may undergo some more steps. It
may be communicated over a network or recorded on some storage
device. If the answer is text or an image, it could be printed or
displayed. If it is sound or video, it could be played back. In all
scenarios, this is output. Again this is printed matter with no
functional relationship with the substrate.
Once the answer is interpreted and the
realworld meaning is acted upon (as opposed to mere communication)
then a functional relationship with the real world is found.
This analysis focuses exclusively on the
realworld meaning of the data, ignoring its mathematical meaning.
The functional relationship between computers and the mathematical
meaning of the raw bits depends on the mathematically exact
definition of algorithm and how this definition relates to actual
computers.
In the entire chain of events there is no point
where the realworld meaning has a functional relationship with the
underlying computer processing until the end when a functional
relationship with the meaning occurs^{5}.
Therefore, we should ask: do we have in the claim a legally
significant element outside of this chain? If there is none, the
claim is abstract.
This view is putting the emphasis on the claimed
subject matter. Activity which is not explicitly claimed does not
change a mathematical algorithm into a nonmathematical process. The
mere presence of a realworld problem does not suffice to make
software patentable. We also need to ask how this problem is solved.
Is the realworld solution actually claimed? Or is it information
processing that will eventually lead to the solution?
Consider the antilock brake system in a car.
There is an embedded computer controlling the brakes. The software by
itself is abstract. The apparatus formed by loading the software on
the embedded computer is also abstract because it is entirely
enclosed within the boundaries that delimit the abstract portion of
the invention. But if we look at the entire system then the brakes
are outside these boundaries. The brake
system taken as a whole is not abstract.
This analysis implies that when the realworld
problem requires nothing but the production of information from
already known information the resulting patent claim is always
abstract. Computers work in such manner that software solutions to
these problems are always abstract. For example consider a database
of scientific research on the chemistry of rubber with a search
function to help an engineer locate a scientific article. We may say
this is a realworld problem in the field of chemical engineering.
The computer will never use the realworld meaning of the database
content because it can't. It is all pure database algorithms that
rely only on the raw bits. Like the formula to compute the
circumference of a bottle, the solution to this database problem is
abstract, because the processing of the bits is selfcontained.
An Observation On Business Processes
This analysis also brings a partial answer to a
question asked by the USPTO in their request for comments.
The decision in Bilski suggested that it
might be possible to "defin[e] a narrower category or class of
patent applications that claim to instruct how business should be
conducted," such that the category itself would be unpatentable
as "an attempt to patent abstract ideas." Bilski
slip op. at 12. Do any such "categories" exist? If so, how
does the category itself represent an "attempt to patent
abstract ideas?"
My answer would be this: Any process made entirely
of information processing steps with no activity that acts upon the
information is nonpatentable because it is abstract. Communication
of an answer is not enough to make a business process not abstract. A
significant physical use of the realworld meaning of the information
is required. This is true when all agents executing the process are
human beings because then all steps are mental steps. If such a
process is adapted to be implemented in whole or in part on computers
or computer networks, then it remains nonpatentable because no
nonabstract element is introduced in the adaptation.
The
Limitations of SelfContainment in Identifying Mathematical Algorithms
There
is an implicit assumption that is pervasive in the whole article.
It is that the meaning of the bits are external to the computer.
What if the patent claim doesn't meet this assumption?
Suppose
some computer engineer includes in the design of his CPU instructions
to perform binarytoBCD conversions using the Benson algorithm. Is
this abstract? If the instructions are implemented in microcode this
is software and I suppose the Benson Supreme Court precedent
should be applicable. But what if the patent claims it as the making
of a better CPU, calling it a method to set the bits to their right
value in the registers? Can we say that the setting of the bits is
a physical activity that acts on the bits instead of merely referring
to their interpretation?
This
question speaks directly to the issue that was the topic of the previous
answer to the USPTO, Physical
Aspects of Mathematics. Mathematical activity needs a physical
representation in order to be carried out. Therefore the question
as to whether a patent is on an abstract idea can be split into
(at least) two separate questions.
 Whether the patent is on abstract information about a realworld application or about the real thing.
 Whether the patent is on a physical representation of mathematics.
This
relates to the two directions of modeling that were discussed in Physical
Aspects of Mathematics.
 Mathematics is used to provide a model of the physical reality.
This is what happens, for example, when we use mathematics to describe
the laws of physics.
 A physical device of process is used to carry out an abstract
mathematical operation. This is what happens, for example, when we use
a calculator to carry out a calculation.
Selfcontainment
is good at identifying the first type of issues. It is effective at
telling whether the patent is on an abstract computation on abstract
bits used to represent the external world as opposed to the real thing.
This approach has the merit to work without having to get into the complexities
of defining and identifying the notion of mathematical algorithm.
Selfcontainment by itself does not suffice to answer the second type
of issues because they require recognizing when a mathematical calculation
is done by physical means. This is not an inquiry of whether the actual
processing is done at a level of abstraction different from the realworld
application.
References Cases
Bilski
v. Kappos The Supreme Court decision
Diamond
v. Diehr, 450 U.S. 175, 182 (1981)
Gottschalk
v. Benson, 409 U.S. 63, 7172 (1972)
In
re Alappat, U.S. Court of Appeals Federal Circuit, 33 F.3d 1526
July 29, 1994
In
re Bilski the Court of Appeals for the Federal Circuit decision
In
re Gulak, 703 F.2d 1381
Parker
v. Flook 437 U.S. 584 (1978)
Footnotes
1 This
bit level degree of abstraction may also be independent from actual
hardware references. It is frequent that the computer is emulated in
software. In such case the instructions are executed on foreign
hardware that has no native ability to execute them. The universe of
reference that defines the software is not the actual hardware. It
is its abstract specifications.
2 Perhaps
someone with more imagination or a better understanding of
climatology than I can find a way to reuse these mathematical
equations. This is a feature of defining “abstract” as the
inability to reuse. This is a definition that depends on the amount
of knowledge and ability to imagine of human beings. It is always
possible that some people will find creative reuse where others can't.
This information may be present in descriptions of the algorithm
like patent claims. But when writing the actual code this
information does not translate into computer instructions. It has
only documentation value. The instructions only depend on the
abstract geometric properties of the antenna and not on the fact
that it is an antenna.
3 This
information may be present in descriptions of the algorithm like
patent claims. But when writing the actual code this information
does not translate into computer instructions. It has only documentation
value. The instructions only depend on the abstract geometric
properties of the antenna and not on the fact that it is an antenna.
4
In engineering the definition of symbols is recognizable physical
states that can be used to represent information. A sound emitted vs
no sound emitted is a pair of recognizable physical states. This is
a pair of symbols able to convey a Yes/No type of information:
whether or not something needs human attention.
5 This
is applicable to analog information such as sound and video. When
the inputs and outputs of a computer do nothing but a conversion
between the analog and digital domains the boundaries of the
abstract part of the process may extend across the analog portion
until the points where the information is initially captured or
eventually used. This is because even in analog format the
information is selfcontained, independent from the substrate
carrier. I believe this too fits well with the printed matter
doctrine because it is my understanding that this doctrine is
applicable to analog information. For example the TV show that is
aired is not patentable subject matter while equipment using
radiofrequencies for television broadcasting is patentable.


Authored by: bugstomper on Thursday, October 07 2010 @ 03:44 AM EDT 
Please put a summary error>correction or s/error/correction/ in the Title
box for everyone's convenience scanning the thread[ Reply to This  # ]


Authored by: bugstomper on Thursday, October 07 2010 @ 03:45 AM EDT 
Please be off topic here. Use HTML mode to make your links clickable. [ Reply to This  # ]

 Progress! MSIE now below 50% share  Authored by: Anonymous on Thursday, October 07 2010 @ 05:53 AM EDT
 Now Motorola sues Apple re patents  Authored by: Anonymous on Thursday, October 07 2010 @ 12:11 PM EDT
 OT: tracking sex offenders  Authored by: Peter H. Salus on Thursday, October 07 2010 @ 04:41 PM EDT
 But when can we expect the Court Of Appeals ...  Authored by: Anonymous on Thursday, October 07 2010 @ 06:03 PM EDT
 What Did Microsoft and Adobe Chiefs Talk About?  Authored by: SpaceLifeForm on Thursday, October 07 2010 @ 06:51 PM EDT
 Microsoft May Acquire Adobe  Authored by: Anonymous on Friday, October 08 2010 @ 10:07 AM EDT
 Canada  Supreme Court: No right to lawyer during police interrogation  Authored by: Anonymous on Friday, October 08 2010 @ 11:11 AM EDT
 Why Nobel Prize winner Andre Geim Never Patented Graphene  Authored by: betajet on Friday, October 08 2010 @ 12:18 PM EDT
 Microsoft may bid for RIMBlackberry: The Economist  Authored by: Anonymous on Friday, October 08 2010 @ 03:40 PM EDT
 Smoke? Fire? or just Rant?  Authored by: Anonymous on Friday, October 08 2010 @ 09:10 PM EDT
 TwentyFirst Century Communications and Video Accessibility Act of 2010  Authored by: Anonymous on Saturday, October 09 2010 @ 03:30 AM EDT
 CBC Bans Use of Creative Commons Music on Podcasts  Authored by: squib on Saturday, October 09 2010 @ 08:02 AM EDT
 CBC unBans etc  Authored by: Anonymous on Saturday, October 09 2010 @ 03:30 PM EDT
 Partially OnT, partially OffT  a suggestion for the USPTO  Authored by: Anonymous on Tuesday, October 12 2010 @ 12:59 PM EDT

Authored by: bugstomper on Thursday, October 07 2010 @ 03:47 AM EDT 
Pick your news here. Please put the title of the News Pick in the Title box and
include an HTML link to the article for when the article scrolls off the News
Picks column.[ Reply to This  # ]

 What's wrong with Microsoft's "good idea" for sick PCs.  Authored by: reiisi on Thursday, October 07 2010 @ 07:52 AM EDT
 Who defines Malware?  Authored by: chriseyre2000 on Thursday, October 07 2010 @ 08:01 AM EDT
 Anti Virus? I dont run Anti programs.  Authored by: Kilz on Thursday, October 07 2010 @ 08:15 AM EDT
 What's wrong with Microsoft's "good idea" for sick PCs.  Authored by: Anonymous on Thursday, October 07 2010 @ 08:44 AM EDT
 Bingo!!!  Authored by: JamesK on Thursday, October 07 2010 @ 08:58 AM EDT
 Bingo!!!  Authored by: N_au on Thursday, October 07 2010 @ 09:35 AM EDT
 Bingo!!!  Authored by: lordshipmayhem on Thursday, October 07 2010 @ 11:12 AM EDT
 Bingo!!!  Authored by: Anonymous on Thursday, October 07 2010 @ 04:30 PM EDT
 A Throwing Chairs Idea (vs the VirusBusting Chips! and Why Intel Paid Billions for McAfee).  Authored by: Anonymous on Thursday, October 07 2010 @ 09:18 AM EDT
 The reason being ..  Authored by: Anonymous on Thursday, October 07 2010 @ 09:19 AM EDT
 you forgot to include  Authored by: Anonymous on Thursday, October 07 2010 @ 10:08 AM EDT
 What's wrong with Microsoft's "good idea" for sick PCs.  Authored by: Rhialto on Thursday, October 07 2010 @ 11:28 AM EDT
 What's wrong with Microsoft's "good idea" for sick PCs.  Authored by: Anonymous on Thursday, October 07 2010 @ 12:51 PM EDT
 "netsurfing" permits  Authored by: artp on Thursday, October 07 2010 @ 01:50 PM EDT
 What's REALLY wrong with Microsoft's "good idea" for sick PCs.  Authored by: Anonymous on Thursday, October 07 2010 @ 03:00 PM EDT
 certification minima  Authored by: Anonymous on Thursday, October 07 2010 @ 04:07 PM EDT
 What's wrong with Microsoft's "good idea" for sick PCs.  Authored by: luvr on Friday, October 08 2010 @ 02:48 AM EDT
 PR not science  Authored by: NigelWhitley on Friday, October 08 2010 @ 12:52 PM EDT
 ZDNet: ITC may help Apple and Microsoft force Google to negotiate  Authored by: Anonymous on Thursday, October 07 2010 @ 09:42 AM EDT
 ABC News receives Gates Foundation support  Authored by: Anonymous on Thursday, October 07 2010 @ 05:19 PM EDT
 If you reduce the population of potential hosts  Authored by: Anonymous on Thursday, October 07 2010 @ 05:45 PM EDT
 Boies Schiller Sued by Former Client Over Fees  Authored by: tiger99 on Friday, October 08 2010 @ 03:42 AM EDT
 SCOTUS  Breyer gone loopy  Authored by: Anonymous on Friday, October 08 2010 @ 02:07 PM EDT
 Task list window for use in an integrated development environment  Authored by: Anonymous on Friday, October 08 2010 @ 03:48 PM EDT
 Is Microsoft running out of steam?  Authored by: Anonymous on Friday, October 08 2010 @ 05:14 PM EDT

Authored by: bugstomper on Thursday, October 07 2010 @ 03:49 AM EDT 
Keep those Comes transcripts coming. Post using HTML markup posted as Plain Old
Text to make it easy for PJ to copy and paste.[ Reply to This  # ]


Authored by: DaveJakeman on Thursday, October 07 2010 @ 04:43 AM EDT 
This is all the meaning computers can
understand.
The information the program is able to
understand is defined in terms of the capabilities of the programming
language.
Computers and computer programs don't understand; they
simply execute. It is humans that do the understanding. By its very
definition, understanding is abstract (meaning it occurs in the mind) and is not
part of the computer or computer program.
It's easy to think in terms of
computers "understanding things", but they don't. They just do what they are
told and that's it. It's possible to write programs that give the impression
the computer or computer program understands (Adventure anyone?), but the
computer still just does what it is told. [ Reply to This  # ]


Authored by: DaveJakeman on Thursday, October 07 2010 @ 04:48 AM EDT 
2 A physical device of process is used to carry out an abstract
mathematical operation. This is what happens, for example, when we use a
calculator to carry out a calculation.
Would the following be a
better example?
2 A physical device of process is used to carry out
an abstract mathematical operation. This is what happens, for example, if we
used a slide rule to carry out a calculation.
(Avoids possible
confusion over what the abstract part of the operation is.)[ Reply to This  # ]


Authored by: DaveJakeman on Thursday, October 07 2010 @ 04:50 AM EDT 
Presents a very clear and easytounderstand view of why software is abstract.
No mindbending required.[ Reply to This  # ]


Authored by: Anonymous on Thursday, October 07 2010 @ 05:10 AM EDT 
I feel there is something missing from your analysis. You correctly note that a
particular algorithm can be
applied in many situations, however what you fail to address (unless I've missed
it) is that a key step in software
is the abstraction of a physical problem to an abstract concept that can be
manipulated by mathematics. I.e. a
piece of software to design parabolic antennae is not simply an algorithm to
define the shape of the antennae but
also contains the knowledge that the antennae can be abstracted to the
mathematical formula. As such the use of a
particular algorithm in a new situation could indeed be novel and therefore
potentially patentable as what is
inventive is the recognition of the underlying mathematical truth for a given
situation.
To put it another way, it could be argued that advances are made in the physical
arts when a new way is found to
map the physical world to a mathematical abstraction. If as a virtue of this
mapping a new process is found that
is patentable why does it matter if it is implemented in software? The advance
is the new mapping to mathematics.
Now is that mapping abstract? Not really as it relies on the physical world as
one "end" of the mapping.
So what if there isn't a new mapping involved? In that case is there a novel
application of mathematics to an
existing abstraction? Is that abstract? Yes, as it is a different use of
mathematics. Patentable? I simply
haven't absorbed the rulings enough to tell.
NB I really should create an account one day...[ Reply to This  # ]

 Novel abstraction is still abstract  Authored by: DaveJakeman on Thursday, October 07 2010 @ 05:36 AM EDT
 Disagree  Authored by: billyskank on Thursday, October 07 2010 @ 06:52 AM EDT
 Disagree  Authored by: Anonymous on Thursday, October 07 2010 @ 07:07 AM EDT
 Disagree  Authored by: billyskank on Thursday, October 07 2010 @ 07:43 AM EDT
 Disagree  Authored by: PolR on Thursday, October 07 2010 @ 11:07 AM EDT
 Disagree  Authored by: Anonymous on Monday, October 11 2010 @ 07:42 PM EDT
 Disagree  Authored by: PJ on Thursday, October 07 2010 @ 08:18 AM EDT
 Agree  Authored by: Ian Al on Thursday, October 07 2010 @ 08:52 AM EDT
 Why Software is Abstract, by PolR  Authored by: PolR on Thursday, October 07 2010 @ 07:19 AM EDT
 Why Software is Abstract, by PolR  Authored by: PJ on Thursday, October 07 2010 @ 08:20 AM EDT
 The newly shape for an antenna is the invention  Authored by: Anonymous on Thursday, October 07 2010 @ 04:48 PM EDT
 The relationship between math and the real world is called physics  Authored by: Anonymous on Friday, October 08 2010 @ 12:52 AM EDT
 Why Software is Abstract, by PolR  Authored by: Anonymous on Monday, October 11 2010 @ 07:53 PM EDT

Authored by: Anonymous on Thursday, October 07 2010 @ 05:14 AM EDT 
Would not the mathematical formula that describes aspects of the process for
curing rubber only be part of a patent if actually used for curing rubber?
So you can use the formula and print an answer on any computer, but unless you
use it to make a machine that actually cures rubber, or if you use it to cure
rubber by hand, you do not infringe the patent.
So the process would have to be patentable wether it uses the mathematical
algorithm or not.
[ Reply to This  # ]


Authored by: Anonymous on Thursday, October 07 2010 @ 05:22 AM EDT 
Android is here.
[ Reply to This  # ]


Authored by: Ian Al on Thursday, October 07 2010 @ 06:58 AM EDT 
I want to explore the principle that Abstraction Is SelfContainment and use it
to show that transforming information within a computer file makes no real world
changes and is, therefore, the physical embodiment of selfcontained and thus
abstract ideas. If you want mathematical proof, then you must revisit POiR's two
stories.
As usual, I whine on interminably and so my ramblings are given in a sibling
post. Just to keep you interested, it shows that you cannot patent software
processes.

Regards
Ian Al
SCOG, what ever happened to them? Whatever, it was less than they deserve.[ Reply to This  # ]


Authored by: Anonymous on Thursday, October 07 2010 @ 07:11 AM EDT 
Here is a twostep process to compute the circumference of a circle
with a precision of four decimal places:
 Measure the diameter of the
circle with a measuring instrument precise to four decimal places,
 Multiply
the diameter by 3.1416. The result is the circumference.
This is
abstract because there is no correlation with the real world at
all.
I'm pretty sure that it was discovered by practical
experiment that the circumference of a round thing was a little over 3 times its
diameter long before it was proved analytically to be πd. Fortunately, you
can't patent the laws of nature any more than you can patent the laws of
mathematics, so that doesn't make the process patentable.
Also, applying
abstract logic to the problem would only tell you that the answer was πd and
that you could never actually write it accurately as a number. You've
"correlated" the process with the real world by observing that 4 decimal places
is sufficient accuracy for your purposes. Fortunately, there's plenty of prior
art on that "innovative step" (although, sadly, the USPTO would probably give
you a patent for measuring circles to appropriate accuracy on a mobile
phone :) )
Software is mathematics and this makes it
abstract, but I don't use or rely on this fact in making the arguments in this
article.
I like what you're trying to do  but (even if your
assertion above is logically correct) you've still used the mword in
every other paragraph and relied a lot on overtly mathematical examples. Perhaps
if you'd focussed more on abstract procedures for sorting, searching or
recommending books, rather than calculating the shape of the curve? Logically,
it makes no difference, but strategically it makes the argument more convincing
to nonmathematicians if you talk about processes which can be visualised
without thinking about numbers or geometry. [ Reply to This  # ]


Authored by: Anonymous on Thursday, October 07 2010 @ 07:17 AM EDT 
If a patent for a novel process of X describes the use of a
particular mathematical formula using a device, would you
infringe if you perform the same calculation in your head or
by hand?[ Reply to This  # ]


Authored by: Anonymous on Thursday, October 07 2010 @ 07:32 AM EDT 
For me there's too many math comparisons.
The problem is being over analyzed.
Let's take punched tape.
You can have a patent on the device that sticks some pins through the holes (if
there are any) and generates a signal
You can have a patent on the new improved whizzy super upgraded faster device
that uses light instead of pins to generate the signal.
You can have a patent on the device that does something with that signal.
You can have a patent on the device that makes the holes in the tape.
You can have a patent on the whatsit that spools the tape.
You can even have a patent on special types of tape.
You cannot have a patent on the arrangement of holes in the tape, any more than
you can have a patent on the arrangement of dots on a musical score.
Too much of a leap?
Have a look at the history of the Jacquard Loom. Yes, you can have a patent on
the device, but not on the holes in the card.
Freedictionary.com gives this definition of "hole"
9. Physics A vacant position in a crystal left by the absence of an electron,
especially a position in a semiconductor that acts as a carrier of positive
electric charge
thus....A vacant place defined by an absence
something empty as a result of something not there.
How mush more "abstract" does it need to be in legalese, mathematics
or any other language.
Despite the complexity, miniaturisation, improved functionality,storage mediums,
additional peripherals, complex input and output devices, GUIs, touch screens,
parallelism, connectivity, programming languages and a whole bunch more,
software is still the holes in the punched tape.
Discuss.
[ Reply to This  # ]


Authored by: Anonymous on Thursday, October 07 2010 @ 08:23 AM EDT 
If all "software is mathematics" please educate us all as to the
mathematics of something commonplace: creating a variable sized popup window
(MessageBoxW() in Windows), coupled with the user pushing the "ok"
button. Are there algorithms involved? Yes. Is this abstract? Probably. But
so is cursive script. Do I think that the original concept of having a GUI was
patentable? Yes. Remember that user interfaces (and some hardware) is
nondeterministic. Partly because people are nondeterministic, and have
nondeterministic response rates and unpredictable failure rates. Mathematics
is inherently deterministic. So claiming all software is mathematics is overly
simplistic.[ Reply to This  # ]

 That isn't the thrust of the article (n/t)  Authored by: DaveJakeman on Thursday, October 07 2010 @ 08:29 AM EDT
 You hinted at the answer yourself  Authored by: billyskank on Thursday, October 07 2010 @ 08:42 AM EDT
 Why Software is Abstract, by PolR  Authored by: Anonymous on Thursday, October 07 2010 @ 08:52 AM EDT
 Why Software is Abstract, by PolR  Authored by: PolR on Thursday, October 07 2010 @ 11:20 AM EDT
 Why Software is Abstract, by PolR  Authored by: Wol on Thursday, October 07 2010 @ 01:25 PM EDT
 Why Software is Abstract, by PolR  Authored by: Anonymous on Thursday, October 07 2010 @ 03:23 PM EDT
 Why Software is Abstract, by PolR  Authored by: Anonymous on Friday, October 08 2010 @ 05:06 AM EDT

Authored by: Ian Al on Thursday, October 07 2010 @ 09:33 AM EDT 
Benson is selfcontained and demonstrates an abstract idea as defined by the
Bilski opinion.
In Bilski the Supremes highlight claims 1 and 4 which are a written description
of how hedging is done (1) and the conversion of that to mathematics (4). They
called this an attempt to patent an abstract idea.
This is because neither the exercise of the ideas in (1) nor the exercise of the
math in (4) result in a real world outcome as a result of running the process.
It can be clearly seen that the ideas in (1) and the math in (4) are
selfcontained.
If there had been a link between, say, doing the math and ending up with more
profitable and less risky hedged deals then it would not have been
selfcontained and might have been upheld.
In Benson, the algorithm was selfcontained. There were no process steps that
made an external or real world change. Thus the patent would have been on a
selfcontained, algorithmic process expressed as a computer program and this
meets the Bilski definition of an abstract idea.
For a general purpose computer there is no escaping this situation. If the
conversion had been enshrined in a processor electronics it would no longer be a
process patent but a machine patent. Maths can only be used as a tool to make
the machine. The patentable invention can only be defined by the structure of
the components. Claiming a structure of components that executed an algorithm
fails in the same way as Alappat.
I think the rule is rock solid. If no real world change comes from the process
step or if the real world change of the whole process is not altered by the
process step then the process step is selfcontained and is, by definition
(Bilski), an abstract idea.

Regards
Ian Al
SCOG, what ever happened to them? Whatever, it was less than they deserve.[ Reply to This  # ]

 Bingo.  Authored by: jesse on Thursday, October 07 2010 @ 10:43 AM EDT
 Bingo.  Authored by: PolR on Thursday, October 07 2010 @ 11:23 AM EDT
 How about this then  Authored by: jesse on Thursday, October 07 2010 @ 11:48 AM EDT
 Bingo.  Authored by: Wol on Thursday, October 07 2010 @ 01:17 PM EDT
 Bingo.  Authored by: Ian Al on Thursday, October 07 2010 @ 03:58 PM EDT
 Bingo.  Authored by: PolR on Thursday, October 07 2010 @ 05:27 PM EDT
 Bingo.  Authored by: Ian Al on Friday, October 08 2010 @ 06:59 AM EDT
 Bingo.  Authored by: Anonymous on Friday, October 15 2010 @ 08:13 PM EDT

Authored by: Anonymous on Thursday, October 07 2010 @ 11:27 AM EDT 
Consider a thermostat that controls my central heating.
The one in my house currently consists of a bimetallic strip and spring
arrangement that switches an electrical switch on or off depending on the
temperature. Clearly a lump of patentable hardware.
Now I replace this with a micro controller that can read the temperature using a
thermocouple and a bit of A/D hardware, and can toggle an output on or off
depending on some preset threshold. This device contains a program. This is
clearly still patentable.
Some clever chappy thinks of a brandnew way of using this piece of hardware by
reprogramming it. Is this new device patentable?[ Reply to This  # ]


Authored by: Anonymous on Thursday, October 07 2010 @ 11:39 AM EDT 
First impression after reading the article: software is "abstract",
because it is more useful when it is "abstract". Software that is not
"abstract", can usually easily be made "abstract".
It doesn't take much to write some program that does a particular thing on a
particular machine. As time moves on and the machine doesn't work anymore it
will occur to change the program to work on the new machine as well.
Of course, compilers help making software abstract, after all, they produce
machine code that is supposed to correspond to the programs they compile, on any
target machine that they support.
At the same time, computers as different as they are, do have commonalities so
that changes that the compiler cannot perform, can sometimes be easily applied
to the original program. See for example:
http://www.justlinux.com/forum/showthread.php?t=152322
Because of this, I got the impression the article went off in the wrong
direction.[ Reply to This  # ]

 Because you can  Authored by: Anonymous on Thursday, October 07 2010 @ 01:44 PM EDT

Authored by: Anonymous on Thursday, October 07 2010 @ 11:44 AM EDT 
Your definition of abstract is missing! Are you refering to just
to numerical
operations or more general operation on text, number
etc?
In your example,
you are using a formula without stating it and you are using it
incorrectly
because you are missing the units!
Consider a calculation written down on
paper. Let's say you
have 128 boxes each of boxes each containing 48 cans of
peas. How
many cans do you have? It is 128 × 48 = 6144 cans.
This is
actually 128 boxes of pea cans * 48 peas cans
per
box = 144
pea cans.
This is an arithmetical computation. What is the
difference
between this and computing 128 × 48 in the abstract without
referring to boxes, cans, and peas? Does the computation change
if it is cans
of mushrooms instead?
If you use the formula correctly then obviously,
the answer is
yes! But not if used incorrectly as units matter:
128 boxes
of pea cans* 48 mushroom cans per box is
not 144 mushroom cans.
So you can
not be abstract with this example. It is worse when
converting say mass into
energy such as when if the mass is in
tons or kgs). Furthermore, computer have
their own
rules so example 22 divided by 7 is an approximation for pi. But
is
it 3 or 3.14285714285714 or something else? Both are correct
depending on
whether or not you use a integer representation or a
64bit floating point
representation or some other precision.
The difference is purely
semantic. The computation is not
changed.
These are not true because all
your education has taught you to
automatically convert the problems into
specific formulas. That
is, you know that you have to multiple 128 by 48
rather
than divide 128 by 48. Thus, the potential patent not that
actually
calculation but whether you have to multiple or add or
subtract or divide or do
some other operation on that specific
combination.
While there is simple
mathematics involved, there is
critical nonabstractable process to get the
correct inputs and
perform the correct calculation.Thus, my quandary, at some
point
an idea eventually becomes an very specific set of operations
that are
patentable. Yet those operations are usually specific to
say an application or
operating system as just how a number is
stored can vary.
[ Reply to This  # ]


Authored by: Anonymous on Thursday, October 07 2010 @ 01:49 PM EDT 
Thanks for the great article! It would be interesting to invite Mr. Mitchelmore
and Mr. White to review this and comment, since their work was pivotal in
writing this article.[ Reply to This  # ]


Authored by: Anonymous on Thursday, October 07 2010 @ 02:49 PM EDT 
Software is abstract because by looking at the code it is
not evident without a huge effort in reverse engineering, to
figure out what it is that is patentable in it, be that
methods, algorithms, data structures etc.  whatever it is
that is claimed to be patentable (which in most cases would
take a much greater amount of effort than the patenter put
into coming up with the idea in the first place). I would
challenge anybody who argues otherwise.
My response to anybody arguing otherwise would be to give a
piece of source code to a patent office patent assessor, and
ask him/her to write down all the patentable material in it
that he/she would check in order to check if it contained
prior art that may be used to challenge other patent
applications. I can guarantee that the USPTO patent examiner
would come up with a blank every time.
The problem with the abstractness of software patents is
even worse than that, because most code and therefore most
prior art is proprietary and therefore secret or at least
obfuscated further by translating it into machine code. So
the highly abstract code that the patent examiner is unable
to fathom is even more abstract when you consider that most
of the prior art that is present is secret, and therefore
unsearchable.
To summarize, software is abstract because the things that
are claimed to be patentable and for which patents are being
granted cannot be ascertained without extensive reverse
engineering of the concepts from the code. As a result, the
USPTO hasn't got a hope in hell of checking for prior art in
the existing art  the mass of code already produced, and
the USPTO is not therefore doing any sensible check for
prior art before granting patents. Indeed the only check at
all that is being carried out by the USPTO is to look at
software patents which are granted, which represent only a
tiny subset of the known art since it is only used for
patent trolling, patent defence, and exclusion of
competition. [Nobody in industry files a patent first and
then uses that to develop software. Instead software is
developed without looking or thinking about patents, and in
a separate process unconnected with development of software,
patent lawyers draw up patents that can be used against
competitors or to extort from others who have independently
come up with the same (and by the fact, obvious) idea].
I believe this is what was meant by "abstract" in patent
law, and a very sensible measure it was. Indeed it is the
only sensible meaning for the term "abstract" in the context
of patents. Basically it means you cannot patent something
that does not allow prior art to be readily checked because
it is too "abstract".
Dictionary.com also agrees by the way
ab·stract
–adjective
1. thought of apart from concrete realities, specific
objects, or actual instances: an abstract idea.
2. expressing a quality or characteristic apart from any
specific object or instance, as justice, poverty, and
speed.
3. theoretical; not applied or practical: abstract science.
4. difficult to understand; abstruse: abstract speculations.[ Reply to This  # ]


Authored by: Anonymous on Thursday, October 07 2010 @ 03:11 PM EDT 
All computer data are just numbers, and binary numbers at that. Try stuffing a
real orange or apple into your computer. You can stuff counts of apples or
oranges into a computer, or pictures of them, or diagrams of their internal
structure, or their chemical compositions, or models of how they deform when
shot with a high powered rifle. All those inputs have to be expressed in binary
numbers, though, because that is all computers can work with. Mouse movements
are numbers relative to the upper left corner of the screen. Mouse clicks and
keyboard presses are expressed as numbers. We attach some meaning to those
numbers but to the computer they are simply more yummy, crunchable numbers to
process.
In fact, a computer program itself is simply a large binary number, as far as
the computer is concerned. How large? Big. Really big. Lets look at why that
is, and what it means.
A program that is 128 bytes long has 1024 bits and it is considered very small.
It is a binary number that is 1024 digits long and it can represent every base
10 value from 0 to
179,769,313,486,231,590,772,930,519,078,902,473,361,797,697,894,230,657,273,430,
081,157,732,675,805,500,963,132,708,477,322,407,536,021,120,113,879,871,393,357,
658,789,768,814,416,622,492,847,430,639,474,124,377,767,893,424,865,485,276,302,
219,601,246,094,119,453,082,952,085,005,768,838,150,682,342,462,881,473,913,110,
540,827,237,163,350,510,684,586,298,239,947,245,938,479,716,304,835,356,329,624,
224,137,216. And that is a small program. Many realworld programs are
hundreds of millions of binary digits long (or thousands of times that size). A
program that size could be one of an astronomically immense number of possible
values.
The same scale applies to data too, which is unsurprising because computer
programs themselves are just data as far as the computer is concerned.
(Donald Knuth and some of the other well known computer scientists considered
programming to be very advanced applied mathematics. What I am saying about the
scale of data and programs isn't new by any means.)
So programming is the art of creating just the right number to control the
computer as it processes input (a huge range of possible numbers) to produce
output (another huge range of possible numbers). Notice that all the mouse
clicks, webcam images, key presses, sensor inputs, and so on constitute a single
large number when considered all together. All the output is similarly just a
very large number. That output number may be displayed as windows, images, and
so on. Designers take serious advantage of that characteristic. It isn't a
mere byproduct, it is a fundamental principle that drives many complex
programming systems such as the web server on which you are viewing this page.
So data can be unimaginably large numbers and programs are data so they are
unimaginably large numbers too. Where does that lead us?
As an aside, this reveals the nature of “bugs” in software. If you don't have
exactly the right program (number) to produce the expected output based on the
input, then you need a slightly different program (number), one that generates
the correct output for that input. The problem is that we can't test most
programs against all possible inputs (numbers) for a variety of very practical
reasons, all related to the vastness of the sets of inputs and outputs
(numbers). So we try to choose as many inputs as we can reasonably hope to test
and hope that is mostly sufficient. Lots of hoping going on in the programming
world.
All the difficulties we have with programming computers come back to the fact
that all programs and input/output are enormously large numbers, each having an
astronomical set of possible values.
Oh, yes, sorry, I was going somewhere with this, wasn't I?
Every possible input, output, and program is a number of some length. Those
numbers simply have no intrinsic meaning to the computer. We may use our
knowledge of the problem at hand while we create the program (number), but that
is a strictly human endeavor with no meaning to the computer, even if the
program (number) we generate has embedded in it things that we would recognize,
such as inches or centimeters. Our intent, though, has no meaning to the
computer, only the numbers have meaning.
The size of the numbers we deal with makes computer programming an application
of mathematics bordering on the insane, but in the end it is all about dealing
with many mind boggling large numbers. Indeed the very nature of the word
“computer”, a device that does computations, points to the purely mathematical
nature of these devices. Patent law explicitly says that numbers and
mathematics can't be patented.
Do the math, it isn't that hard to arrive at the correct answer. ;)[ Reply to This  # ]


Authored by: Imaginos1892 on Thursday, October 07 2010 @ 06:01 PM EDT 
You need to carry your argument one step further:
Even the bits inside
the computer are abstractions! So a computer program consists of a series
of
abstract operations performed on a bunch of abstract entities. We call
them "bits" for convenience.
Where are the bits? Open up your computer and
show me a bit.
The bits in your computer are implemented as tiny
electrical circuits composed of monocrystalline
silicon with traces of other
elements infused into it in microscopic patterns. This forms
specific
arrangements of atoms which conduct electrical currents in
predictable ways. These arrangements of
atoms are not changed by the
currents passing through them (unless their Absolute Maximum Limits
are
exceeded  then they emit Mysterious Blue Smoke, turn crispy, and cease to do
anything at all).
They form the substrate, or medium, within which the
abstractions we refer to as "bits" are expressed.
The circuits are not the
bits, and the bits do not modify the circuits. Bits exist only as
transient
electrical potentials. Even with the most powerful microscope, you
can't tell whether one of those
circuits is expressing "1", or "0", or even
if it's powered on.
The collection of circuits we call "CPU" detects
the voltage levels present in some of the circuits
designated as "memory"
and alters its internal voltages based on them. It then modulates
signals
and alters some voltages in another part of the "memory". There is
no structural difference between
the circuits it detected the initial
voltages from, and the ones where it changed voltages. Indeed,
it is
perfectly capable of changing the voltages in the circuits it's supposed to be
using as a
reference, and has no idea that you'd prefer that it didn't do
that.
That is what happens inside your computer. Any meaning you may
attach to these goingson is entirely
in your head. You and the programmers
may choose to agree that it all represents a different set of
abstractions,
but that is irrelevant to the computer's
operations.

"Congratulations on our glorious
victory! It... was a glorious victory, wasn't it?"
"No, but if we
think fast we might live to lie about it!"[ Reply to This  # ]


Authored by: Anonymous on Thursday, October 07 2010 @ 07:34 PM EDT 
In light of this discussion, I'm curious. Is device driver software patentable?
Diehr would seem to suggest "yes".[ Reply to This  # ]


Authored by: Anonymous on Thursday, October 07 2010 @ 08:18 PM EDT 
I think the parent article somewhat misstates some of the key points
which
make up the thesis of the work by Mitchelmore and White (M&W). M&W
were
careful to distinguish between what they called abstract
apart
from
what they called abstractgeneral. Mathematics is
abstractapart because it is
selfcontained and unaffected by outside
considerations.
To emphasise the special meaning of
abstraction in mathematics, we shall say
that mathematical objects are
abstractapart. Their meanings are defined
within the world of mathematics, and
they exist quite apart from any external
reference.
But the
M&W also identify another kind of abstraction, based on what
they call
empirical abstraction. Empirical abstraction is often derived from
observations
of similarities between realworld observations, which lead to
certain
recognitions of common underlying structures and the formation of
empirical
concepts. They quote Skemp as writing:
Abstracting is an
activity by which we become aware of similarities ... among
our experiences.
Classifying means collecting together our experiences on the
basis of these
similarities. An abstraction is some kind of lasting change, the
result of
abstracting, which enables us to recognise new experiences as
having the
similarities of an already formed class. ... To distinguish between
abstracting
as an activity and abstraction as its endproduct, we shall ... call
the latter
a concept. (p. 21, italics in original)
The important point is
that M&W carefully distinguish abstractapart
from
abstractgeneral.
We have already referred to mathematical
objects as abstractapart. To
emphasise the distinction between abstraction in
mathematics and
mathematics learning, we shall call empirical concepts
abstractgeneral: Each
concept embodies that which is general to the objects
from which the
similarity is abstracted.
Another important
observation is that new advancements in
mathematics, in the abstractapart
context, is defined by a process they call
theoretical
abstraction.
The formation of new ideas within mathematics is
well described by the
Schwarz HershkowitzDreyfus Nested RBC Model of
Abstraction. They define
abstraction as “an activity of vertically reorganizing
previously constructed
mathematics into a new mathematical structure” [F121].
New mathematical
objects are constructed by “the establishment of connections,
such as
inventing a mathematical generalization, proof, or a new strategy of
solving a
problem” [F121]. This abstraction process is quite different from
empirical
abstraction, and is best described as theoretical abstraction.
Sierpinska’s
ignoring/highlighting process is another example of theoretical
abstraction.
These distinctions between various kinds of
abstraction are relevant to
this discussion. M&W include a valuable graph
in their conclusion that shows
the world divided into two blocks, one
representing the abstractapart realm
of mathematics and the second
representing the experience of the physical
and social world. A subset of the
mathematical world is labeled "fundamental
mathematical objects", while a
subset of the physical world is labeled
mathematics related concepts. The two
subsets are linked by an arrow
representing the process of formalization, where
empirical concepts are
matched with corresponding mathematical objects. Outside
of the empirical
concepts that are linked with mathematical objects is shown an
even larger
subset in the physical world that represents other empirical
concepts that
have not been formalized with mathematics.
So why does
this all matter? It means that there are different kinds of
abstraction.
Mathematical abstraction is only one of them. So when PoIR
includes a subtitle
that says "Abstraction Is SelfContainment", he is only
really correct when
talking about the abstractapartness of
mathematics.
In addition, this
type of abstraction is almost certainly not the same
meaning of abstraction
that the courts have intended when they created the
exceptions to patentability
under section 101. These exceptions are not
found in the statutes, but have
arisen from precedentsetting rulings made
by the courts. The Supreme Court in
Diehr said this:
Our conclusion regarding respondents' claims
is not altered by the fact that in
several steps of the process a mathematical
equation and a programmed
digital computer are used. This Court has undoubtedly
recognized limits to §
101 and every discovery is not embraced within the
statutory terms. Excluded
from such patent protection are laws of nature,
natural phenomena, and
abstract ideas. See Parker v. Flook, 437 U. S. 584
(1978); Gottschalk v.
Benson, supra, at 67; Funk Bros. Seed Co. v. Kalo
Inoculant Co., 333 U. S.
127, 130 (1948). "An idea of itself is not
patentable," RubberTip Pencil Co. v.
Howard, 20 Wall. 498, 507 (1874). "A
principle, in the abstract, is a
fundamental truth; an original cause; a
motive; these cannot be patented, as
no one can claim in either of them an
exclusive right." Le Roy v. Tatham, 14
How. 156, 175 (1853). Only last Term, we
explained:
"[A] new mineral discovered in the earth or a new plant
found
in the wild is not patentable subject matter. Likewise, Einstein could
not
patent his celebrated law that E=mc[2]; nor could Newton have patented the
law of gravity. Such discoveries are `manifestations of . . . nature, free to
all
men and reserved exclusively to none.'" Diamond v. Chakrabarty, 447 U. S.,
at
309, quoting Funk Bros. Seed Co. v. Kalo Inoculant Co., supra, at
130.
The three exceptions are laws of nature,
natural phenomena, and
abstract ideas. Exceptions must fall within one of
these three categories.
They have specifically not excluded all mathematics, so
even
claiming that all software is math is not sufficient to gain an exception
to
statutory patentability under Section 101. Mathematics may be excluded only
so far as it falls under the category of abstract ideas. What PoIR has cited
M&W for is the proposition that mathematics is abstractapart, something
that "exists quite apart from any external reference." This is clearly not the
same level of abstraction as found in many software patent claims, since most
software claims are grounded in specific external references tied to the real
world. So while pure mathematics seems to qualify as a form of abstract
apart
abstraction that is exempt from statutory patentability, many software
patent
claims are not.
That leaves the second form of abstraction discussed by
M&W, empirical
abstraction, to be considered. M&W showed in their
illustration that there are
at least two types of empirical abstraction, those
that can be formalized with
mathematics and those that have not. It might
plausibly be argued that
empirical abstractions that can also be formalized in
abstractapart
mathematical terms belong under the umbrella of abstract ideas
that should
be exempted for patentability. That still leaves a large number of
empirical
abstractions that have not been formalized in mathematics but which
people
attempt to employ in realworld applications. These might include
solutions
to problems where finding optimum results cannot be done
deterministically
and heuristics must be employed, where outcomes are
probabilistic or are the
result of chaotic processes. These kinds of problems
often require solutions
where mathematical formulations are inadequate, and
empirically based
approaches are required.
This empiricaldriven
approach to deriving solutions is precisely the act
of invention that the
patent system is designed to protect. This aligns with the
desire by the courts
that patents not be granted for inventions that foreclose
all other
alternatives because the patent preempts a fundamental principle.
Such patents
could easily be seen to retard progress. However, patents for
inventions that
claimed only to cover a specific solution in a space of many
possible solutions
derived from empirical processes would not necessarily
retard progress, but
could in fact stimulate others to continue the search for
even better
solutions.
The article by M&W shows that it is important to not just
question
whether software patent claims are abstract, but also what kind of
abstraction
is being contemplated and whether it is the kind of abstraction
that the courts
have decided should be exempt from
patentability.
bystander1313 [ Reply to This  # ]


Authored by: Anonymous on Thursday, October 07 2010 @ 08:31 PM EDT 
... is computationally as powerful as any modern computer
running software (ChurchTuring Thesis) and a UTM can be shown
as an abstraction with any number of physical implementations,
e.g. a UTM can be modeled by a person placing rocks in
railroad squares (Computability and Logic  George Boolos).[ Reply to This  # ]


Authored by: halfhuman on Friday, October 08 2010 @ 01:13 AM EDT 
I have yet to read the article thoroughly, and I note the interesting
qualification referring to M+W's distinction between `abstractapart' and
`abstractgeneral' but i want to throw in what may be an important point.
`selfcontained' can never be an adequate definition of mathematics, firstly for
the obvious reason that in fact the practice of mathematics is done by in the
real world by real persons (and possibly by machines, which is the thorny issue
here), secondly for the more subtle reasons involved in the longstanding
debate in philosophy of mathematics on platonism. Are mathematical objects
entirely and completely ideal? if so, how can they possibly interact with the
real world, in particular, how can us gross real people grasp ideal objects with
our wet brains? But if not ideal, how can mathematical objects provide the basis
for the absolute and indubitable proofs that mathematicians claim? (Not that
they claim all proofs, but i suggest all mathematicians claim some proofs as
absolute).
Me, I don't think maths is ideal so I think the issue doesn't arise. PoIR, I
think, avoids the issue by taking maths as something rather narrower than usual.
For most people, mathematicians included, the usual meaning is across all orders
of logic and reference. However, if i am not mistaken, PoIR, invaluably careful
as always, uses a definition that steers clear of many pitfalls.
In particular, s/he takes as read that we need not enquire how this
selfcontained world comes about. Invented or discovered? Created by humans or
preexistent? Are sets or categories the true basis of mathematics? Irrelevant!
All we want is a simple basis for the abstractions of mathematics, or at least,
for all those abstractions that could possibly be relevant to software.
I hope I'm right!
However, the subtlety of saying: "For this argument, please take a narrow
view of mathematics, one that is just wide enough to furnish an explanation of
why computation is an abstract process. It is enough just to understand that, so
ignore all the issues about the nature of abstract objects, the mathematical
basis of physics, the problems of selfreference, and let's proceed." Might
be worth spelling it out.[ Reply to This  # ]


Authored by: alisonken1 on Friday, October 08 2010 @ 02:36 AM EDT 
A composer (programmer) writes music notations (software).
A musician (compiler) interprets the notations (software).
An instrument (computer) produces the results (executes).
So far, only the musical instrument (computer) is patentable.

 Ken 
import std_disclaimer.py
Registered Linux user^W^WJohn Doe #296561
Slackin' since 1993
http://www.slackware.com
[ Reply to This  # ]


Authored by: Ian Al on Friday, October 08 2010 @ 06:02 AM EDT 
Following the ruling of the Supreme Court in Bilski, the USPTO
asked, in substance, how to tell an abstract idea from an application of the
idea. In this article I propose an answer to the question of what makes software
abstract.
I follow the threads of your argument fairly well and I
don't see anything that strikes me as hard to accept. However, my irritating
boss used to demand of me 'How does that pass the so what test?'. My next boss
was even more irritating. When I had summarised my inescapable logic he would
follow with the phrase 'Which means that?'.
It strikes me that
'software is abstract' is true, but is not an answer to 'how do you tell an
abstract idea from an application of the idea?'. Not as a selfcontained
statement it isn't!
Looking at it from the judges viewpoint, an
abstract idea can be changed to a nonabstract idea (when applied to a process
or method) both by means of writing the process/method steps on a piece of paper
and actioning them or by means of writing software such that it follows the
process steps and automatically actions them without human intervention.
Software makes computers work, ergo software that actions process steps is not
by definition (as given by Bilski) an abstract idea.
All of your
arguments refine the separation of informationprocessing software or processes
implementing a Bilski abstract idea and software or processes implementing an
idea made into statutory subject matter. The comment I made in the membersonly
predecessor still holds. Not all patentable processes are information processing
processes. Some involve stirring a vat of bubbling natural rubber with a big
stick.
You frazzle our brains by correctly pointing out that even the
stirring of the rubber can me modelled mathematically and that the math can be
usefully done with a computer with the added advantage of colourful and
graphical results. The math works as an information flow and processing task
even though the actual patented idea does not.
In a legal context, the
statement 'software is abstract' does not pass the 'so what' test in the same
way that 'ideas are abstract' also fails. If an idea is applied in a way which
passes the legal rules of a patentable process or method then it can get a
patent, ergo if software is applied in a way which passes the legal rules of a
patentable process or method then it can get a patent.
We
claim that the essence of abstraction in mathematics is that mathematics is
selfcontained: An abstract mathematical object takes its meaning only from the
system within which it is defined.
I'm glad you put this first as
I think it is key. I would suggest that it needs to be expanded somewhat in the
following way.
In the Bilski opinion we find the same principle
extended to the analysis of process patent claims. They found, in effect, that
claims 1. and 4. were selfcontained. There were no process steps or methods
that took those claims and actioned a real world change. They were
selfcontained ideas that, when followed, merely communicated information on the
idea of hedging.
Flook is another example of a selfcontained idea
that merely communicated an alarm indication.
'Peas' is a practical example of
a selfcontained process (a mathematical one, in this case) which is modelled
with real world elements.
Benson is an example of the attempt to patent
a selfcontained program that did not even communicate information. It is just
like the 'Peas' example except that the result of the math was not communicated
by the terms of the patent. If the process in Benson were executed there would
be no indication that the process had done anything. The results of the process
would have to be inferred by some other feature of the computer.
An abstract
idea cannot be transformed into a nonabstract idea by using real world elements
to model it. Neither can it be so changed by embodying it in a computer
program.
A realworld, nonabstract idea does not remain so when
modelled by math and/or by computer program. If the math or computer program is
selfcontained then it is an abstract idea as defined in Bilski. The 'parabolic'
example is of a realworld, nonabstract idea (when actioned as an antenna or an
audio component), but a model of the idea whether as a computer program or math
on a sheet of paper that does not action the idea in the real world
(selfcontained) is an abstract idea. If running the program actioned the
machining of an antenna then the software is no longer selfcontained and the
whole process is not an abstract idea.
Although the examples given are
of information processing, the principle applies to all ideas whether expressed
on paper or by computer program.
The legal boundary between abstract
and nonabstract is the boundary between informing and actioning. The general
test is that selfcontained processes and methods that merely inform are
abstract ideas. Processes that action an idea are not abstract ideas. Applying
that to a computer program, if it is claimed as a process or method and merely
informs (See, Flook) then it is self contained and is an abstract idea. If it is
a computer program and the whole process actions the idea by means of the
computer running the program (with additional, external process steps, if
claimed) then it is a nonabstract idea.
I think the link between the
arguments you make and the challenge that the courts and the USPTO face needs to
be clear rather than implied. Otherwise, they are likely to ask 'So
what?'. Regards
Ian Al
SCOG, what ever happened to them? Whatever, it was less than they deserve. [ Reply to This  # ]


Authored by: Anonymous on Friday, October 08 2010 @ 08:59 AM EDT 
A second major point made by PoIR in his article seems to be the idea
that
software is unpatentable as an abstraction because the code that runs on
a
general purpose computer is devoid of much of the context which makes an
invention patentable in the first place. This view suffers from a disconnect
between what is actually being claimed for patent protection, versus details
which are not considered as part of the patent process. In short, PoIR appears
to confuse the irrelevant issue of patentability of software syntax versus the
relevant issue of patentability of software semantics.
Software claims
seldom include any specifications for how
computers implement the
details of the invention, concentrating instead on
what is being done.
That means that virtually all issues regarding
syntax of an implementation are
not relevant. This includes the particular
programming language being used, the
instruction set architecture of the
processor the software might run on, the
number of hardware registers in the
physical processors, etc. While it may be
true that these are abstract, that
characteristic is irrelevant in the
evaluation of the patentability of most
claimed inventions.
It is
important to note that software code representations are almost
never the
subject matter of patent claims. Source code can always be
transformed into
other forms, including textual forms that are directly
runnable through an
interpreter or virtual machine, intermediate binary forms
that are created by
compilers, or even circuits that are synthesized into
custom hardware. Just as
the code formats can vary, so can the hardware
platforms on which the code
executes. From the standpoint of patent claim
evaluation, it doesn't matter
whether the platform is a generalpurpose
processor or a custom configuration
of hardware components. Those are all
syntactical details which are
unimportant.
PoIR also makes the claim that realworld meaning is
irrelevant when
considering the patentability of software. I contend just the
opposite, that
realworld meaning in the form of software semantics is a key
factor (that the
courts have acknowledged) in determining whether software is
statutory or
not.
The example given with the twopart test from Ex
Parte Gutta is
puzzling, because the argument does not easily follow from the
example. PoIR
says that:
In a scenario where the claimed
machine does nothing but execute a
computer program, this test depends
exclusively on information that is both
unused during the actual execution of
the program and absent from the
machine as it carries out the
computation.
This is puzzling because the first rule is
intended to prevent patents from
being issued under this exact same scenario,
where the claimed invention
does not use any specific inputs nor produce any
specific outputs directed to
the claimed field of use. The rule holds that
merely stating a field of use is
insufficient, if the actual claims do not
support how the invention is truly
specific to the field. Under this rule, the
hypothetical example PoIR gives of a
software program for drawing 3d parabolic
shapes would not be eligible for a
patent by itself in more specific fields of
use without limitations in the claims
specifying attributes specific to those
fields. The rule works to exclude the
kind of scenario PoIR claims supports his
argument.
PoIR writes about his scenario saying:
The
outcome of the test depends on the purpose of the user and not on the
technology he is patenting. This outcome may and will vary from user to
user.
This is an incorrect reading of the rule. The outcome of
the test depends
on the limitations of the claims supporting any assertion
about the intended
field of use. It has nothing to do with an arbitrary purpose
of a user of an
invention, and everything to do with how the invention performs
in its stated
field of use. That a component, whether software or not, may be
found in a
variety of patented and unpatented inventions at the same time is
nothing
new. A simple gear can have many different uses, some of which may be
in
the operation of patented inventions. The potential multiplicity of roles
does
not prohibit the patentability of inventions utilizing that component. The
first
rule merely ensures that the patent scopes are properly limited to
eligible
fields of use.
The example cited, giving three alleged
instances of patents being issued
for different fields of use for the same
invention, is unrealistic. It emphasizes
the "practical application" aspect of
the cited rule, but ignores the equally
important second aspect of the rule
which requires inventions in different
fields of use to show actual significant
limitations in their claims to
demonstrate that the distinctions between
claimed fields of use are real and
not merely illusory. The example he cites
simply doesn't pass the rule, and
patents would not be issued for the three
different inventions under the
scenario given.
One problem with PoIR's
analysis in general is that it overemphasizes one
aspect of software, its
abstract qualities, while failing to account for its
equally important
characteristic, how it enables computerdriven applications
to affect the world
around us. He states:
This indefiniteness is what we get if we
ignore the abstraction inherent in
software and give undue consideration to the
realworld meaning of the
bits.
This ignores the lesson given
by M&W that tells us one of the great values
of abstractapart mathematics
is its ability to enable relatively accurate
predictions of realworld
conditions, and from those predictions to make
better realworld
actions.
But calculational facility would be useless if the
results did not predict reality.
Predictions are successful to the extent that
mathematics models appropriate
aspects of reality, and whether they are
appropriate can be validated by
experience. In fact, one can go further and
claim that the mathematics we
know today has been developed
(in preference to
any other that might be imaginable) because it does model
significant aspects
of reality faithfully.
This is possible because the system of
mathematics we are most familiar
with has been consciously developed to closely
align with many observable
aspects of reality. Yes, mathematics is abstract,
but it is also closely tied with
empirical observations of the real world. In
the same way, software shares
many of the abstract qualities of mathematics,
but is even more firmly
grounded in the requirements and constraints of
performing actions in a
physical world. Just as scientists have discovered that
many fundamental
elements can exhibit a dual nature (such as photons behaving
as both waves
and particles), so too can software be said to have firm roots in
both abstract
and physical worlds. This dual nature means that simply claiming
that
software is abstract is insufficient to justify banning all software from
being
granted patents, as this would arbitrarily remove a legitimate
technological
field from patent protection in seeming contradiction to the
tenets stated in
our Constitution.
bystander1313 [ Reply to This  # ]


Authored by: Ian Al on Saturday, October 09 2010 @ 05:59 AM EDT 
The majority opinion in AT&T v. Microsoft has invalidated the AT&T v.
Microsoft majority opinion.
The effect of this is to eliminate software machine patents.
It is a large comment and, this time, I am not so frazzled that I cannot give it
to a child to deliver.

Regards
Ian Al
SCOG, what ever happened to them? Whatever, it was less than they deserve.[ Reply to This  # ]


Authored by: reiisi on Saturday, October 09 2010 @ 10:32 PM EDT 
Hopefully, I can make a little more sense this time.
Starting with a little motivation, it's always a little surprising to remember
that the old saw about the state that tried to legislate the value of pi to
something a little easier for the children to remember is not just a bit of
USian mythology. The problem with this as a starting point is that the instant
reaction is that math is just numbers, and that's not true, and we aren't
talking about just numbers, of course.
For what it's worth, the latin root of the words, "number", and
"numeral" are the same as the root of the word, "name".
Math is intimately related to human language, or, should we say, Chomsky pointed
out that our language is intimately related to our math, and it's hard to
imagine a functional society in which it would not be so. Maybe impossible.
Math is therefore an intimate part of everything we do, including law.
But it's not just language. One of the more fundamental branches of mathematics
is logic. (And I think the basics of logic should be taught in parallel with the
basics of arithmetic, starting with "true and true" not more than a
day later than we start with "one and one", and continuing in
parallel.)
Law is squishy, as PJ likes to point out, but without being able to handle
logic, lawyers are going to have a really, really hard time applying either the
squishy part or the hard part. Or telling the difference between them.
(One serious problem area is understanding  and admitting  the difference
between mathematical logic and rhetorical logic, and talking about the limits of
our understanding that require us to sometimes give the rhetorical logic
priority.)
But the connection between mathematics and law is even deeper. One of the
currently harder branches of math  harder because we don't treat boolean math
as importantly as arithmetic  is the mathematics of rules. Definition is math.
Rules are math. The interaction of rules is math.
Law itself is an advanced application of math. The fact that lawyers and
legislators seem unaware of this is one of the points where future history books
will say our society failed. (Or succeeded, if we can defeat the momentum and
correct this now.)
And this is the irony of the patent situation we are in.
The very field of math of which law is an advanced application is the same field
which is being incorrectly invoked in the arguments for making software somehow
patentable.
PoIR has been doing a much better job than I could of exposing the underlying
principles. I assume he is heading the same place as I. What I'm not sure of is
whether it would help to point out the end of the road at this point, but fools
jump in where angels fear to tread, so I will.
Abstract machines have nothing nonmathematical about them. Abstract machines
are collections of definitions and rules and the interactions thereof. (Speaking
a little loosely here, but I think in this context the description is okay.)
Not coincidentally, mathematical languages are also the same, collections of
definitions and rules and the interactions of them.
Programming languages are, by definition, mathematical languages. I don't think
we have any lawyers who will argue with that, although certain large
corporations seem to be doing exactly that in many of the patents they file.
The question that is before the courts now is whether software, which is
constructed of mathematical languages (plural, yes) can be nonabstract enough
to merit patent.
Mathematically, the only thing you can build with a mathematical language, or
even a collection of them, is more mathematical languages.
I find myself hesitating to make the final rhetorical step here. The
consequences of what I'm saying here, and the disaster that looms, not just for
industries, if the courts and legislatures get it wrong, should be obvious.
But if I take that final step here, I'll be labeled a wingnut of the left or
right variety, so I'll leave it implicit.
But that should be the end of the argument.
[ Reply to This  # ]


Authored by: Anonymous on Monday, October 11 2010 @ 06:53 PM EDT 
A database application is software. But is it abstract? No.
A database application takes a series of specific instructions (analogous to a
"Work Instruction" in the ISO world) to do one or more out of a very
limited set of possibilities (four possibilities):
A. Create "Records" by arranging very small physical objects called
atoms into a consistent, predetermined pattern so as to make the resulting
"Record" easily recoverable (see item B.)
B. Retrieve "Records" by detecting how the very small physical objects
called atoms are arranged on the physical storage medium so as to make it
possible for the data user to determine if and how to modify the retrieved
dataset (see items C and D.)
C. Update "Records" by rearranging very small physical objects called
atoms into different, yet still predetermined, patterns according the data
user's desire
D. Delete "Records" by rearranging very small physical objects called
atoms on the storage medium such that the "Records" are no longer
Retrievable nor editable (steps C. and D.)
In Software Design, the above is described as a "CRUD check" because
when all is said and done, all data operations fall within the CRUD. And every
database application works in exactly the same way  the hardware retrieves the
very physical manifestation of the application (by detecting how the physical
pits and/or electrons are arranged) on the storage media. .
The end result of data operations is that there are very physical changes done
at a very small microscopic scale. They may be minute changes invisible to the
human eye, but they are still concrete changes nonetheless.
So the instructions themselves are ultimately stored in a very concrete (not
abstract) manner and the data itself is stored in a very concrete (not abstract)
manner.
Notice, I didn't use even a single iota of what could be considered mathematical
in nature to post this  not a single digit, or numeral  even for the outline
of the CRUD process.
I know it's hard for some of you to stomach, but if you were taught that all
software is mathematics, you were taught incorrectly. It's high time for such
people to take the tack that Rene Descartes did when he first declared
"Cogito ergo sum".
[ Reply to This  # ]




