About “trivial” software patents: the IsNot case Jan Bergstra Paul Klint Further info: www.cwi.nl/~paulk/patents 1 Jan Bergstra & Paul Klint: About “Trivial” software patents: the IsNot case
The IsNot patent application abstract ● A system, method and computer-readable medium support the use of a single operator that allows a comparison of two variables to determine if the two variables point to the same location in memory. ● Application by lead developers of Microsoft's Visual Basic team 2 Jan Bergstra & Paul Klint: About “Trivial” software patents: the IsNot case
The Isnot Patent application 1 of 24 claims ● A system for determining if two operands point to different locations in memory, the system comprising: a compiler for receiving source code and generating executable code from the source code, the source code comprising an expression comprising an operator associated with a first operand and a second operand, the expression evaluating to true when the first operand and the second operand point to different memory locations. 3 Jan Bergstra & Paul Klint: About “Trivial” software patents: the IsNot case
The IsNot Patent Application analysis ● Hey, this is about != in C, Java or C#! ● Or about .NE. in Fortran ● Or about BNE in assembler ● Isn't this prior art? ● Does MS really mean that they invented the inequality operator? 4 Jan Bergstra & Paul Klint: About “Trivial” software patents: the IsNot case
The IsNot Patent Application analysis ● Is there some hidden intention in this application? ● Is this about a hidden trick in the Basic compiler? ● Is the intention to challenge the patent system? – You must agree: this is a beauty in its simplicity ● We don't know! We have written an Open Letter to Microsoft to clarify this, see www.cwi.nl/~paulk/patents 5 Jan Bergstra & Paul Klint: About “Trivial” software patents: the IsNot case
How can we reconcile the patent system and the Software Engineering Life Cycle? 6 Jan Bergstra & Paul Klint: About “Trivial” software patents: the IsNot case
Patent Life Cycle Withdrawn Oppose Appeal Apply Revoked Rejected = action by applicant Act on Granted Challenge infringement Extend = action by third party License = end of life Max. duration reached Patent Expired Life cycle 7 Jan Bergstra & Paul Klint: About “Trivial” software patents: the IsNot case
Software Life Cycle Requirements Software engineering Life Cycle V & V Design V & V Implementation V & V Testing V & V Maintenance V & V V &V = Validation and Verification 8 Jan Bergstra & Paul Klint: About “Trivial” software patents: the IsNot case
Patent-aware Software Life Cycle defensive Requirements Patent-aware engineering Software V & V Patent Validation Life Cycle Design V & V Patent Validation Implementation V & V Patent Validation Testing V & V Patent Validation Maintenance V & V Patent Validation V &V = Validation and Verification 9 Jan Bergstra & Paul Klint: About “Trivial” software patents: the IsNot case
Patent-based Software Life Cycle offensive Requirements Patent-based engineering Software V & V Patent Validation Life Cycle Patent Application Design V & V Patent Validation Patent Application Implementation V & V Patent Validation Patent Application Testing V & V Patent Validation Patent Application Maintenance V & V Patent Validation V &V = Validation and Verification Patent Application 10 Jan Bergstra & Paul Klint: About “Trivial” software patents: the IsNot case
IPR-based Software Life Cycle offensive IPR-based Requirements engineering Software V & V Life Cycle IPR Validation IPR Application? Design Keep secret? V & V IPR Validation IPR Application? Implementation Keep secret? V & V IPR Validation IPR Application? Testing Keep secret? V & V IPR Validation IPR Application? Maintenance Keep secret? V & V IPR Validation IPR Application? Keep secret? V &V = Validation and Verification 11 Jan Bergstra & Paul Klint: About “Trivial” software patents: the IsNot case
Observations ● Status of prior art and claims is unclear ● Software patenting badly needs input from software engineers and is a topic for research: – formalization of prior art and claims – inventory of all prior art related to software – alternative patenting systems – automatic infringement detection ● Publicly analyse and annotate software patents: Gauss project ( http://gauss.ffii.org/GaussFrontPage ) 12 Jan Bergstra & Paul Klint: About “Trivial” software patents: the IsNot case
Time for Discussion OSS = Open source: Sense and Simplicity for the software engineer (suggested by a Philips researcher) Further info: www.cwi.nl/~paulk/patents 13 Jan Bergstra & Paul Klint: About “Trivial” software patents: the IsNot case
Recommend
More recommend