Programvarepatenter er patenter på ideer, ikke på kode. Det er derfor de er så farlige for alle som skriver programvare, og det er derfor to av de mest respekterte stemmene i informatikken har advart mot dem i over 30 år.
Donald E. Knuth, forfatteren av The Art of Computer Programming og skaperen av TeX, og Richard M. Stallman, grunnleggeren av GNU-prosjektet og Free Software Foundation, kommer fra hvert sitt hjørne. Knuth argumenterer som matematiker. Stallman argumenterer som programmerer og frihetsforkjemper. De ender likevel på samme sted: programvare hører ikke hjemme i patentsystemet.
Kampen er ikke over. Europa sa nei til programvarepatenter i 2005, men patentkontorene har fortsatt å innvilge dem. Det gjelder også i Norge.
Knuth: algoritmer er matematikk
Knuths kjerneargument er enkelt: en algoritme er matematikk, og matematikk kan ikke eies. Han la det fram i et brev til det amerikanske patentkontoret 23. februar 1994, skrevet på vegne av en uroet fagmiljø.
Brevet har fire hovedpoenger:
- Skillet er umulig å trekke. Domstolene forsøkte å skille mellom «matematiske» og «ikke-matematiske» algoritmer. Knuth mente det var like absurd som da delstatsforsamlingen i Indiana på 1800-tallet prøvde å vedta at π er lik 3. Det finnes heller ikke noe meningsfullt skille mellom numeriske og ikke-numeriske algoritmer.
- Byggesteiner kan ikke ha eiere. Knuth sammenlignet algoritmepatenter med patenter på enkeltord: «Algoritmer er like grunnleggende for programvare som ord er for forfattere.» Ingen kunne brukt matematikk om man måtte betale lisens hver gang man brukte Pytagoras’ læresetning.
- Det ville stoppet hans eget arbeid. Knuth skrev at han ikke kunne ha laget TeX om programvarepatenter hadde vært vanlige i 1980. TeX brukes fortsatt til det aller meste av publisert matematikk og fysikk.
- Konkrete skader allerede da. Han pekte på patentene på Lempel-Ziv-komprimering og RSA-kryptering, som hindret andre programmerere i å bruke viktige algoritmer.
Knuth er ingen prinsipiell patentmotstander. Han har selv patenter på maskinvare. Poenget hans er at programvare er en annen type ting. Han mente at hele programvarebransjen slik vi kjenner den ikke ville eksistert om algoritmepatenter hadde vært utbredt på 1960- og 70-tallet.
Brevet har også en europeisk side. I april 2009 sendte Knuth det samme brevet til presidenten i Det europeiske patentkontoret (EPO), som innspill til EPOs storkammer i sak G 3/08, der nettopp grensene for programvarepatenter ble prøvd.
Enhetspatentet. Siden 1. juni 2023 har EU hatt et felles enhetspatent og en felles patentdomstol, Unified Patent Court (UPC). Én rettssak kan nå gi forbud i et stort antall land samtidig. Det gjør et innvilget programvarepatent mer verdt for den som eier det, og farligere for alle andre.
Norge: samme smutthull, mindre debatt
Norge har det samme unntaket som resten av Europa, og det samme smutthullet. Patentloven § 1 andre ledd sier at det som «bare utgjør» programmer for datamaskiner, ikke regnes som en oppfinnelse. Bestemmelsen er en gjennomføring av EPC artikkel 52 og skal tolkes i lys av konvensjonen og EPOs praksis. Norge har vært medlem av EPC siden 2008.
I praksis betyr det at norske regler følger EPO. En doktorgrad fra Universitetet i Bergen konkluderte med at adgangen til å patentere informasjonsteknologi går lenger enn mange tror. Den omfatter oppfinnelser som gjelder hvordan en datamaskin håndterer data, uansett formål. Ifølge avhandlingen kan man i Norge få patent på det som i realiteten er «ren programvare», for eksempel algoritmer for rangering av nettsider.
Norge står utenfor EUs enhetspatent og patentdomstolen. Patentstyret presiserer at enhetspatenter ikke gjelder her, og at UPC-avgjørelser ikke gjelder norske valideringer. Et europeisk patent må valideres i Norge for å gjelde her. Det gir en viss beskyttelse. Men norske utviklere som selger til EU-markedet, er like utsatt som alle andre.
For norske utviklere betyr dette:
- Opphavsretten er det reelle vernet. Koden din er beskyttet etter åndsverkloven fra første linje. Det er nok for de aller fleste.
- Patentrisikoen er reell, men usynlig. Den treffer gjerne først når et produkt har blitt populært nok til å være verdt et søksmål.
- Fri programvare er spesielt sårbar. Et prosjekt uten inntekter kan verken betale lisens eller føre en patentsak.
- Debatten er nesten fraværende. Der Europa hadde en stor folkebevegelse mot direktivet i 2005, har det vært lite offentlig debatt i Norge om hvordan Patentstyret og domstolene tolker «som sådan».
Hva vi bør kreve
Knuth og Stallman ba ikke om strengere eller bedre programvarepatenter. De ba om at programvare skulle holdes utenfor patentsystemet. Det kravet er like riktig i dag.
Konkret bør vi kreve:
- At «som sådan» tolkes etter ordlyden. Unntaket i patentloven og EPC bør bety det det sier: programvare kjørt på en vanlig datamaskin er ikke en oppfinnelse, uansett hvor «teknisk» den beskrives.
- At politikerne tar ansvar. Grensen for hva som kan patenteres, er et politisk spørsmål. Den bør ikke avgjøres stille av patentkontorer og storkamre.
- At offentlige standarder er frie. Formater og protokoller som det offentlige krever, må kunne implementeres fritt, uten patentlisenser.
- At norske myndigheter følger med. Når EPO og EU utvider praksisen, påvirker det også Norge. Det fortjener en åpen debatt her.
Knuth kunne skrive TeX fordi ideene han bygde på, var frie. Stallman kunne bygge GNU av samme grunn. Neste generasjon utviklere fortjener den samme friheten.
Kilder
- Donald E. Knuth: brev til U.S. Commissioner of Patents and Trademarks, 23. februar 1994
- Knuths innspill til EPO i sak G 3/08 (2009)
- Richard Stallman: «Software patents – Obstacles to software development», Cambridge 2002
- Europaparlamentet: forkastelse av programvarepatentdirektivet, 6. juli 2005
- LWN: The European software patent vote (2005)
- Osborne Clarke: EPO Decision G1/19 (2021)
- Universitetet i Bergen: «Programvare kan patenteres»
- Patentstyret: Enhetspatentet og den felles patentdomstolen
- Thommessen: EUs nye patentsystem og norske virksomheter