Jag tror vi kan bena ut varför det här problemet uppstår genom att prata om abstraktionsnivåer. Ett exempel: Nivå 1: Genom att i en 8085-processor ladda ett ord från minnesadress 0xA040 till register A och utföra en XOR-operation med bitmasken 00010000 uppnås... Nivå 2: Genom att invertera bit 4 uppnås... Nivå 3: Genom att pilla på lämplig bit uppnås... Nivå 4: Man kan i ett datasystem uppnå... Det finns naturligtvis beskrivningsnivåer både över, under och emellan dessa. Ingen av beskrivningarna är felaktig, de behandlar bara ämnet på olika abstraktionsnivåer. Ju högre abstraktionsnivån är, desto bredare blir beskrivningen. Det patentadvokater sysslar med är att göra så abstrakta beskrivningar som möjligt, som fortfarande håller i en rättslig prövning av ett patentintrång. Om vi nu jämför programvara med mekanik eller kemiska processer ur ett patentperspektiv, så kan vi upptäcka en stor skillnad. Programvara består bara av abstraktioner, medan det i kemi och mekanik alltid finns en grund i ett fysikaliskt fenomen. Det gör att vi i det senare fallet har en förmåga att bedöma abstraktionsnivån (och därmed bredden på patentet) gentemot en fysisk verklighet. Eftersom program består av en kombination av ett antal abstraktioner utan en botten i den fysiska verkligheten blir det svårt och ibland omöjligt att bedöma om ett patent är brett eller smalt. (Det bör till och med gå att bevisa att det är omöjligt att bedöma bredden på vissa patent.)