Skatter og bidrag
- 13. February 2026
- #mathematics
Denne artikkelen er et tankeeksperiment der vi skal endre det norske skatte- og bidragssystemet. I dag styrer mange mekanismer pengeflyten mellom borgere og staten. Et forenklet bilde ser slik ut:

Kompleksiteten i et slikt system har store kostnader. Staten må holde styr på alle skattene og bidragsordningene: den må oppdatere lovverk, endre satser, vurdere og innvilge søknader, vedlikeholde digital infrastruktur, osv. Borgere må forstå systemet, være informert om støtteordningene og navigere søknadsprosesser. Begge parter kunne vært tjent med en forenkling.
Vi skal kutte nesten alle skatter og samle dem sammen i en funksjon \(T(x)\). Deretter skal vi kutte nesten alle støtteordninger og samle dem sammen i en funksjon \(B(x)\).
Det er ikke åpenbart at disse funksjonene er i stand til å modellere store deler av forholdet mellom staten og borgerne. Vi skal prøve likevel. Resultatet blir at forholdet mellom staten og individet forenkles til følgende diagram.

Alle skatter og bidrag styres av tre parametre \(H\), \(k\) og \(b\), og vi skal estimere disse. Underveis skal vi gi skattelette til folk flest, “ta de rike”, forenkle offentlig sektor, sørge for at det alltid lønner seg å jobbe, og kreve formuesskatt fra alle borgere. Så her er det noe for alle, uansett politisk ståsted.
Inntekt
For å regne ut skatt på en vanlig borgers inntekt må man ta hensyn til trygdeavgift, minstefradrag, personfradrag, skatt på alminnelig inntekt og trinnskatt. Dette er et komplisert regnestykke, og i artikkelen Smooth taxes without brackets viste jeg at beregningen kan reduseres til formelen
der \(T(x)\) er skatten man betaler om man har en brutto inntekt på \(x\) kroner. Parametrene \(H\) og \(k\) bestemmer hvor aggressiv skatten er. \(H\) er den maksimale marginalskatten ettersom \(H = \lim_{x \to \infty} T'(x)\). Figuren nedenfor viser at funksjonen er en meget god tilpasning til dagens inntektsskatt.

I figuren ovenfor viser vi også inntektsfordelingen, som er hentet fra figur 2 i denne SSB-artikkelen. Boks 2.2 i Skatter og avgifter 2025 viser statens egen visualisering av marginalskatten. Denne skattekalkulatoren har 27 felter som kan fylles ut, så den fulle beregningen er enda mer komplisert.
Matematiske egenskaper
Her kommer en rask oppsummering av hvilke spørsmål funksjonen \(T(x)\) svarer på og hvilke egenskaper som er hensiktsmessige for en slik skattefunksjon. Se Smooth taxes without brackets for en grundigere gjennomgang.
- Nettoinntekt: \(x - T(x)\) svarer på spørsmålet “Hvor mye penger har jeg igjen etter at jeg har betalt skatt?”
- Marginalskatt: \(T'(x)\) svarer på “Hvor stor andel må jeg skatte på neste krone jeg tjener?”
- Skatteprosent: \(T(x) / x\) svarer på “Hvilken andel av total inntekt betaler jeg i skatt?”
Eksempel. Dersom \(x=800 \text{ TNOK}\), så er:
Funksjonen \(T(x)\) har to viktige egenskaper bakt inn i definisjonen, for all verdier av \(0 < H \leq 1\) og \(k > 0\):
- Gode insentiver. En skatt \(T(x)\) har gode insentiver dersom marginalskatten \(T'(x) < 1\) for alle \(x\), fordi da ender man alltid opp med økt nettoinntekt dersom man tjener mer.
- Progressiv beskatning. En skatt \(T(x)\) er progressiv dersom skatteprosenten \(T(x)/x\) øker når \(x\) øker. Dersom Ola tjener mer enn Kari, så betaler Ola også en større prosentandel av sin inntekt i skatt.
Hva kan vi forenkle?
Fra en borgers perspektiv er kun skattenivået relevant, ikke hva staten kaller de ulike skattene og fradragene eller hva som finansierer hva. Dersom vi bruker \(T(x)\) kan vi ta bort:
- Minstefradrag
- Personfradrag
- Skatt på alminnelig inntekt
- Trinnskatt
- Arbeidsgiveravgift (det er i praksis en personskatt på 14.1 %)
La oss også samle all inntekt i \(x\): pensjonsgivende inntekt, utbytte fra selskaper, aksjegevinst, styrehonorarer, osv. De som eier et selskap kan i dag velge å enten ta ut penger som inntekt eller som utbytte. Inntekt gir pensjonssparing gjennom folketrygden og rett til sykepenger, men utbytte har lavere marginalskatt. Det er ofte optimalt å først maksimere pensjonssparing ved å ta ut lønn opp til 7.1 G og deretter ta utbytte. Denne typen optimalisering er kun tilgjengelig for et fåtall. Jo enklere skatten er, desto mindre muligheter er det for optimalisering.
Om vi er villige til å fjerne noen flere, mer målrettede insentivordninger, kan vi fjerne:
- Soner og næringsgrupperinger i arbeidsgiveravgift (14 koeffisienter)
- BSU fradrag
- Fagforeningskontingent
- Foreldrefradrag
- Reiseutgifter
Noen av disse fradragene bør modelleres som bidrag, og vi kan legge dem tilbake senere.
Vanlige folks tur
Vi kan gi skattelette til store deler av befolkningen om vi velger en høyere verdi for maksimal marginalskatt \(H\) og løser for \(k\) slik at statens inntekter forblir identiske med dagens nivå (\(H \approx 0.47\)).

Medianpersonen har en inntekt på omtrent 640 TNOK før skatt. Går vi fra dagens skatteregime til \(H=0.55\), vil medianpersonen få skattelette på omtrent 3.8 TNOK per år. Setter vi heller \(H=0.65\) får medianpersonen skattelette på 7.4 TNOK per år. Alle som er under 80 persentilen vil få skattelette, mens de som er over må skatte mer. I dagens system har DNB-sjefen, som tjente 16.9 MNOK i fjor, samme marginalskatt som en dyktig ingeniør (eller lege, advokat, osv.) som tjener en tiendedel av dette.
Tabellen sammenligner dagens scenario med to alternativer. Statens inntekter er identiske.
| \(H=0.474\) | \(H=0.55\) | \(H=0.65\) | |
|---|---|---|---|
| Skattelette for medianperson | 0 NOK | 3800 NOK | 7400 NOK |
| Andel som får skattelette | 0 % | 79 % | 80 % |
| Marginalskatt DNB-sjefen | 47 % | 55 % | 65 % |
| Marginalskatt ingeniør | 47 % | 53 % | 60 % |
| Skatteprosent DNB-sjefen | 46 % | 53 % | 63 % |
| Skatteprosent ingeniør | 37 % | 40 % | 43 % |
Oppsummering: Inntekt
Vi samler alt en person tjener i én felles inntekt \(x\) og beskatter den med \(T(x)\), enten det er ordinær pensjonsgivende inntekt, utbytte fra selskaper, avkastning på aksjefond, styrehonorar, godtgjørelser eller annet. Da vil en rik investor med 10 MNOK i aksjegevinst skatte en høyere andel enn en småsparer, noe som ikke er tilfellet i dag. Mange muligheter for optimalisering forsvinner, og de som får inntekt gjennom utbytte, avkastning og honorarer får samme beregning som folk flest. Ikke minst blir alt mye enklere. Vi kan endre \(H\) og gi skattelette til 80 % av arbeidsstyrken, men insentivene må også vurderes.
Vi kan også inkludere arv i \(x\), ettersom det også er inntekt. Det ville vært en dobbeltbeskatning av penger, men ikke en dobbeltbeskatning av personer. Dersom man arver en villa med nedbetalt lån i Oslo med verdi 20 MNOK, ville man måtte låne 9.1 MNOK i boligen for å betale skatten. Dette ville utjevnet forskjeller og forhindret opphopning av kapital. Alternativt kan vi droppe arveskatt og heller endre formuesskatten, noe vi kommer til senere i artikkelen.
Bidrag og støtteordninger
Det eksisterer mange støtteordninger for mennesker som av ulik grunn har lav inntekt, enten i en periode eller permanent. NAV har over 200 tjenester, og noen av disse er:
- Uføretrygd
- Sykepenger
- Arbeidsavklaringspenger (AAP)
- Dagpenger
- Tiltakspenger
I disse fem kategoriene ble det utbetalt 27.3 milliarder NOK til 166 000 Oslo-borgere i 2024, noe som tilsvarer 164 TNOK per person. I noen bydeler er andelen som mottar utbetalinger relatert til arbeidsliv og sykdom over 40 %, og på landsbasis er den 36 %. Andre støtteordninger inkluderer pleiepenger, omsorgspenger, svangerskapspenger, yrkesskadeerstatning, foreldrepenger og økonomisk sosialhjelp.
Kritikk mot NAV går ofte på at dagens system:
- Er krevende å navigere
- Har dårlige insentiver
Systemet blir lettere å navigere om vi fjerner kompleksitet. Problemstillingen med insentiver kan forstås ved å se på enkeltsaker som viser såkalte bidragsfeller (welfare traps). I noen tilfeller lønner det seg ikke å jobbe fordi da forsvinner bidragene:
- Straffen for å jobbe
- Uføre Jan-Erik fortviler: - Taper nesten 1000 kroner i måneden på å jobbe
- “Tjener” mer på NAV enn på jobb
- Uføretrygd mer lønnsomt enn jobb
NAVs egen rapport fra 2023 anslår at 1 av 4 dagpengemottakere kan tape på å jobbe én dag. Mange mennesker lever i økonomiske bidragsfeller.
Å fange de fattige
Det er fort gjort å konstruere en bidragsfelle. Intensjonene må være så gode at man ikke tenker nøye nok over insentivene. Dersom bidraget er betinget på lønn (enten direkte eller indirekte via arbeidsevne) og kuttes skarpt når inntekt øker, så sitter man i fella. Dersom bidraget derimot senkes sakte, så unngår man feller.
Eksempel - konstant bidragsfelle. Hva om vi gir alle som tjener mindre enn 500 TNOK en utbetaling på 500 TNOK? Anta at vi har fem personer med ulik inntekt. La \(B(x)\) være et bidrag som funksjon av bruttoinntekt \(x\). Vi setter \(B(x)\) lik 500 TNOK dersom \(x\) er mindre enn eller lik 500 TNOK, og null hvis ikke. Visualiseringen viser hva som skjer:

Når man overstiger 500 TNOK i inntekt, så forsvinner hele bidraget \(B(x)\) (øverste underfigur til høyre). Det rasjonelle er å ligge så nær 500TNOK som mulig, men aldri gå over. Dersom summen \(x - T(x) + B(x)\) synker er det ikke noe insentiv for å tjene mer.
Eksempel - lineær bidragsfelle. Hva om vi velger en annen funksjon? Vi kan kompensere de som tjener mindre enn 500 TNOK med en sum slik at alle ender opp med minst 500 TNOK. Matematisk er funksjonen \(B(x) = \max(500\text{ TNOK} -x, 0)\).

For en som har null i inntekt lønner det seg ikke å jobbe i det hele tatt, med mindre personen klarer å tjene ca. 665 TNOK. Selv da får han ikke betydelig mer enn hva han fikk med null inntekt.
Bidrag \(B(x)\) med gode egenskaper
Det finnes bidrag \(B(x)\) som i kombinasjon med \(T(x)\) ikke fører til bidragsfeller. Funksjoner på formen
har gode egenskaper: insentivene er gode og de er billige for staten.
Summen av skatt og bidrag har gode insentiver dersom det alltid lønner seg å jobbe. Matematisk er kravet at
Dersom vi stokker om på likningen og tar grenseverdien \(\epsilon \to 0\) får vi kravet
Vi deriverer skatten \(T(x)\) og substituerer \(T'(x) = H\left(1 - e^{-kx} \right)\). Da blir kravet at
Denne likningen sier at bidragene ikke kan synke fort mot null når inntekten \(x\) øker. Dette gir intuitivt mening; bidrag som forsvinner fort fører til bidragsfeller. Alle funksjoner \(B(x)\) som oppfyller dette kravet er gyldige, og kvalifisert gjetning leder oss til \(B(x) = b e^{-x/b} + C\), som oppfyller kravet \(T'(x) - B'(x) < 1\) når \(b < 1/(Hk)\) (se appendiks).
For eksempel er \(b=200 \text{ TNOK}\) og \(C=0\) gyldig, og gir følgende omfordeling via skatter og bidrag:

Konstantleddet \(C\) kalles gjerne borgerlønn (universal basic income), mens \(b e^{-x/b}\) er i kombinasjon med \(T(x)\) en negativ skatt. Problemet med \(B(x) = C\) er at det er dyrt for staten, fordi alle får bidrag. I resten av artikkelen setter vi \(C=0\) og antar at \(B(x) = b e^{-x/b}\). Legg merke til at \(B(0) = b\), altså er \(b\) summen som en person uten inntekt vil få utbetalt.
Verdien \(b\) må balansere to hensyn: den må være høy nok til at det går an å leve på, samtidig må den være lav nok til å insentivere til arbeid.
Hva kan vi forenkle?
Dersom vi innfører et universelt bidrag \(B(x) = b e^{-x/b}\) kan vi fjerne eller kutte kraftig i uføretrygd, sykepenger, arbeidsavklaringspenger, dagpenger, tiltakspenger og økonomisk sosialehjelp. NAV har 12 000 årsverk og 15 mrd. i driftsutgiver, og deler av dette kan kuttes. Tiden og ressursene som brukes på å sende inn og behandle søknader forsvinner helt.
Staten betaler også bidrag til friske mennesker for å søtte en rekke aktiviteter. Eksempelvis var det 12 000 søkere på statens kunstnerstipend i 2024, og i 2025 ble det bevilget nesten 500 millioner kroner. Mange slike ordninger kan fjernes. Mennesker som ønsker å lage kunst eller gjøre noe helt annet (som kan være vel så samfunnsnyttig men ikke anerkjent av staten), står fritt til å gjøre det—dersom de er villige til å leve på bidraget \(B(x)\). Dersom kunsten selger, vil de få mer inntekt, miste bidrag og betale skatt—men de vil alltid ende opp med mer penger.
En realistisk beregning
I denne seksjonen forsøker vi grovt å regne ut hva \(B(x)\) vil koste. Her er noen store utgiftsposter, hentet fra NAVs årsrapport 2024:
- Uføretrygd: 125 269 MNOK
- Sykepengetilfeller: 68 068 MNOK
- Arbeidsavklaringspenger: 46 926 MNOK
- Dagpenger: 13 300 MNOK
- Hjelpemidler: 10 321 MNOK
Til sammen er dette 264 milliarder kroner. I følge SSB er 622 000 personer i yrkesaktiv alder utenfor arbeidslivet (omtrent 18 %). Fordeler vi 264 milliarder på 622 000 personer kan hver person få 424 TNOK.
Ettersom \(B(x)\) også deler ut penger til de som ikke har null i inntekt, må vi ta hensyn til de 82 % som er i arbeidslivet. Jeg fant ingen gode data som viser inntektsfordeling for alle i Norge, men om vi baserer oss på fulltidsekvivalenter for de 82 % som er i arbeidslivet og kombinerer det med de 18 % som er utenfor, kommer vi frem til at 264 milliarder kan finansiere \(b = 271 \text{ TNOK}\). At vi bruker fulltidsekvivalenter gjør at \(b\) overestimeres. At vi verken inkluderer flere støtteordninger eller administrative kostnader gjør at \(b\) underestimeres. Disse effektene kansellerer hverandre til en viss grad, og i sum er nok \(b\) estimert noelunde riktig.

Men hvor mye bør staten dele ut? Det finnes ingen klar fasit, men her er to ankerpunkter:
- SIFOs referansebudsjett er på omtrent 190 TNOK i året (eksl. bolig, ferier og helsetjenester). Boliginformasjon kan vi finne hos SSB, som estimerer typisk boligkostnad for eiere til 130 TNOK per år og leietakere til 111 TNOK per år. En person trenger derfor omtrent 190 + 120 = 310 TNOK per år for å leve greit.
- Lavinntekstsgrensa måler relativ fattigdom og er definert til å være 60% av medianinntekt etter skatt. Grensa er på 285 TNOK i 2025. Oppsummert har staten råd til \(b \approx 271 \text{ TNOK}\), og dette nivået samsvarer godt med SIFOs referansebudsjett og fattigdomsgrensen.
Oppsummering: Bidrag og støtteordninger
Bidrag og støtteordninger er i hovedsak til for syke og arbeidsledige. Dagens systemer kan være vanskelige å navigere, kreve mye dokumentasjon, og kan disinsentivere arbeid. Staten må bedømme hva som er verdifullt for samfunnet, selv om det kanskje ikke er kommersielt levedyktig. Stipendordninger kan føre til habilitetsutfordringer og staten må bruke ressurser på å bestemme hvem som får hva.
Vi innfører en bidragsfunksjon \(B(x)\), som sammen med \(T(x)\) gir negativ skatt til de som tjener lite. Dette krever ingen søknadsprosess eller vurdering fra statens side. Vi fjerner ikke tiltak som jobbsøkerkurs og økonomisk veiledning, ei heller bidrag til rullestoler, proteser, osv. Bidragene kunne vært satt til omtrent 300 TNOK per år, men det eksakte beløpet er en subjektiv vurdering. I hvilken grad barn, studenter og pensjonister omfattes av ordningen kan diskuteres. Det enkleste er å gi bidrag til disse gruppene og fjerne eksisterende støtteordninger.
Formuesskatt
Denne delen av artikkelen er uten sammenheng med resten, som i hovedsak handler om inntekt og bidrag, men la oss se på formueskatt også.
Den marginale formueskatten har to trinn: ett på 1.76 MNOK (1 %) og ett på 20.7 MNOK (1.1 %). Den er med andre ord langt mindre progressiv enn inntektsskatt, og den slår inn relativt tidlig. Effekten er nedjustert av verdsettingsrabatter; eksempelvis har primærbolig en rabatt på hele 75 % mens aksjer har en rabatt på 20 %.
De rike blir rikere på grunn av renters-rente effekten. Den brede aksjeindeksen S&P 500 har hatt en gjennomsnittlig inflasjonsjustert avkastning på 7.65 % de siste 30 årene. En rik person med 100 MNOK investert vil derfor få 7.65 MNOK i avkastning. Anta at denne avkastningen realiseres og beskattes med 3.46 MNOK (med \(T(x)\)) slik at personen står igjen med en gevinst på 4.2 MNOK. Formuen er nå 100 + 4.2 = 104.2 MNOK, og formueskatten blir 1.1 MNOK, så personen står igjen med 103.1 MNOK. Ved å sette pengene i en bred indeks som S&P 500, som ikke krever noe arbeid eller oppfølging, kan personen hente ut 3.1 MNOK per år. Formuen vil ha samme avkastning hvert eneste år.
Figuren nedenfor viser den marginale formueskatten og simuleringer av ulike formuer i S&P 500. Formuene vokser lineært på log skala, altså eksponentielt.

Dagens marginale formueskatt er i praksis flat, og da vil formuene enten vokse evig (om formueskatten er lav) eller gå mot null (om formuesskatten er høy). Ved å konstruere en marginal formuesskatt som er mer progressiv kan vi begrense de rikes formuer.
La \(y\) være formue. Ved å bruke en sigmoid \(z = 1 / (1 + e^{-z})\) på log-skala kan vi konstruere en formuesskatt:
Parameteren \(H\) er maksimal marginal formuesskatt, \(y_0\) er den formuen som gir \(W'(y_0) = H/2\) og \(k > 0\) bestemmer hvor raskt sigmoid-funksjonen vokser. Den marginale formueskatten \(W'(y)\) er gitt av en relativt uskyldig formel, mens \(W(y)\) er uttrykt ved hjelp av en hypergeometrisk funksjon \({_2F_1}\) (se appendiks). Man trenger ikke å vite noe om hypergeometriske funksjoner for å bruke eller forstå denne funksjonen.
Den progressive marginale formuesskatten \(W'(y)\) er vist i figuren nedenfor, og sammenlignet med veksten til ulike formuer.
Parametrene er satt ut fra øyemål for å vise effekten på en tydelig måte.
Merk at veksten til ekstremt store formuer begrenses, mens mindre formuer får vokse.

Med \(W(y)\) betaler alle formuesskatt, men de fleste betaler veldig lite. En formue på 100 TNOK gir 19 kr i formueskatt, 1 MNOK gir 1200 kr, 10 MNOK gir 64 TNOK og 100 MNOK gir 2.2 MNOK.
Alle eksemplene i denne seksjonen antar at formuen er likvid. Dette er ikke tilfellet dersom formuen består av aksjer i selskaper som ikke er på børs, eller om formuen er i eiendom. Formuesskatt kan føre til at man mister kontrollen over sitt eget selskap eller mister sin egen bolig. En bolig gir bruksverdi til eieren på en annen måte enn et selskap, så argumentet for formuesskatt på eiendom er sterkere enn argumentet for formuesskatt på illikvide aksjer. Dersom vi verken har formueskatt eller arveskatt, kan en rik familie sette formuen i aksjemarkedet og oppnå eksponentiell vekst for all fremtid.
Oppsummering
I dette tankeeksperimentet endret vi skattesystemet ved å innføre to funksjoner: \(T(x)\) for skatt og \(B(x)\) for bidrag. Parametrene (\(H\), \(k\) og \(b\)) eliminerer kompleksiteten i skatteberegninger, mange av NAVs støtteordninger og en rekke andre overføringsmekanismer. Den generelle idéen om borgerlønn og negativ inntektsskatt er gammel, mens de spesifikke funksjonene og deres egenskaper er mitt eget bidrag. Les gjerne Civita-notat nr. 38 om borgerlønn for en grundig gjennomgang av borgerlønn i norsk sammenheng.

Økonomiske insentiver som Finnmarksfradraget i skatteberegningen og sletting av gjeld for beboere i Finnmark kan modelleres ved å velge litt andre parametre (f.eks. \(b\) eller \(C\)) i Finnmark. Her bør staten vise måtehold, ettersom mye av poenget forsvinner dersom man får en eksplosjon i antall parametre. Vi viste også at en sigmoid-funksjon \(W(y)\) som marginal formueskatt begrenser ekstrem formuesvekst.
Noen av fordelene med et slikt system er:
- Å øke maksimal marginalskatt \(H\) kan gi skattelette til omtrent 80 % av befolkningen.
- Skatteoptimaliseringsmuligheter som primært kommer de rike til gode fjernes.
- Bidragsfeller som i dag fanger mange NAV-brukere blir eliminert.
- Den administrative besparelsen ville vært stor. Tusenvis av årsverk kuttes og borgere slipper søknadsprosesser.
Det er imidlertid et tankeeksperiment og en øvelse i matematikk, ikke et gjennomtenkt politisk forslag. Mange av kompleksitetene vi ønsker å fjerne reflekterer legitime forsøk på å balansere konkurrerende samfunnsmål. Noen vil mene at det er moralsk riktig å gi støtte ut fra hvem som fortjener det eller ikke, selv om det koster å gjennomføre slike vurderinger. En mer aggressiv formueskatt kan utløse kapitalflukt. Mange ville brukt økonomisk trygghet til å investere i utdanning, starte bedrifter eller ta seg av familie. Andre ville potensielt redusert arbeidsinnsatsen eller i verste fall ty til destruktiv atferd. En implementering ville krevd utredninger av atferdsresponser, overgangsordninger og konsekvenser. Men hvis det er et land som har råd til å utrede, så er det Norge.
Referanser og videre lesing
- Utbetalinger til personer i Norge - Statistikk for 2024 - NAV
- Årsrapport 2024 - NAV
- Nasjonalbudsjettet 2025 - Regjeringen
- Hvorfor snakker vi ikke om borgerlønn? - NRK Ytring (2014)
- Borgerlønn - Civita-notat nr. 38 (2017) 50 tips som kan kutte skatten din - smartepenger.no
- Negative income tax - Wikipedia
- Is There Empirical Evidence on How the Implementation of a Universal Basic Income (UBI) Affects Labour Supply? A Systematic Review - Artikkel
Appendiks A: Bevis for at bidragsfunksjonen har gode insentiver
I dette appendikset skal vi vise at når vi velger funksjoner
med \(0 \leq H < 1\), \(b > 0\), \(k > 0\) og \(A > 0\), så er har vi alltid gode insentiver fordi
for alle \(x > 0\) dersom \(Hkb < A\) og \(0 < A \leq 1\). Det naturlige er å velge \(A=1\), fordi da synker bidraget raskest og det blir billigst for staten.
Bevis. Vi deriverer funksjonene og setter dem inn i ulikheten. Da får vi
Vi ser også at
Dersom \(f(x)\) er positiv og økende når \(x=0\), konvergerer mot et positivt tall og har maksimalt ett ekstremalpunkt når \(x > 0\), så er \(f(x) > 0\) for alle \(x > 0\) og ulikheten er gyldig.
Vi observerer at:
- \(f(0) = -A + 1 \geq 0 \Rightarrow A \leq 1\)
- \(f'(0) = -Hk + A/b > 0 \Rightarrow A > Hkb\)
- \(\lim_{x \to \infty} f(x) = 1 - H > 0\)
- \(f(x)\) har ett ekstremalpunkt fordi \(f'(x) = 0\) har én løsning
Dette gir oss kravene (1) \(A \leq 1\) og (2) \(A > Hkb\). I artikkelen valgte vi \(A=1\), og da blir kravet for \(b\) at \(b < 1/(Hk)\).
Appendiks B: Formuesskatten
I dette appendikset skal vi utlede formuesskatten \(W(y)\) fra den marginale formuesskatten \(W'(y)\). Vi definerte den marginale formuesskatten som
Målet er å evaluere integralet
for å finne den totale formuesskatten ved et beløp \(Y\). Først gjør vi substitusjonen \(u = \ln(z/y_0)\), som transformerer integralet til
Deretter gjør vi substitusjonen \(z = e^{ku}\), som transformerer integralet til
og dette er et kjent integral som kan formuleres som en hypergeometrisk funksjon. Vi kan bruke identiteten
som gir oss vårt endelig svar:
Appendiks C: Kode
Her er Python-kode som implementerer hovedidéene i artikkelen.
import dataclasses # Python 3.12
from abc import ABC, abstractmethod
import numpy as np # 2.3.3
import scipy as sp # 1.16.2
class Transfer(ABC):
"""Abstract base class for transfer functions (taxes, benefits, etc.)."""
@abstractmethod
def marginal(self, x):
"""Marginal rate at income x."""
pass
@abstractmethod
def absolute(self, x):
"""Absolute value at income x."""
pass
def average(self, x):
"""Average rate: absolute(x) / x."""
return self.absolute(x) / x
@dataclasses.dataclass
class Tax(Transfer):
"""Class representing a tax function T(x).
Examples
--------
>>> T = Tax(k=2.787914e-06, H=0.474)
>>> T.absolute(500_000) # Current norwegian tax system: 113643.99
np.float64(109160.85121307125)
>>> T.absolute(1_000_000) # Current norwegian tax system: 313248.14
np.float64(314445.0244402999)
"""
# Defaults that give best-fit to current tax system in 2025,
# weighted by income of population.
k: float = 2.8745e-06
H: float = 0.4772
def __post_init__(self):
assert self.k > 0
assert self.H > 0
def marginal(self, x):
"""Marginal tax rate T'(x)."""
H, k = self.H, self.k
return H - H * np.exp(-k * x)
def absolute(self, x):
"""Absolute value of tax T(x)."""
H, k = self.H, self.k
return (H / k) * (np.exp(-k * x) + k * x - 1)
@dataclasses.dataclass
class Benefit(Transfer):
"""Class representing a benefit function B(x).
Examples
--------
>>> B = Benefit(300_000)
>>> B.absolute(0)
np.float64(300000.0)
>>> B.absolute(300_000) # exp(-1) * 300_000 = 110363
np.float64(110363.8323514327)
"""
b: float = 271_000 # Somewhat realistic value
def __post_init__(self):
assert self.b > 0
def marginal(self, x):
"""Marginal benefit rate B'(x)."""
return -np.exp(-x / self.b)
def absolute(self, x):
"""Absolute value of benefits B(x)."""
return self.b * np.exp(-x / self.b)
@dataclasses.dataclass
class WealthTax(Transfer):
"""Class representing a wealth tax function W(y).
Uses a logistic-based wealth tax with hypergeometric function
for absolute tax calculation.
Examples
--------
>>> W = WealthTax(y_0=10_000_000, H=0.03, k=1.0)
>>> W.marginal(10_000_000) # At threshold, marginal rate is H/2
np.float64(0.015)
>>> W.average(2_000_000) # Average tax on 2 MNOK wealth
np.float64(0.0026517664809068064)
>>> W.average(20_000_000) # Average tax on 20 MNOK wealth
np.float64(0.013520815669978353)
"""
y_0: float = 10_000_000 # Wealth threshold
H: float = 0.03 # Maximum marginal rate
k: float = 1 # Steepness parameter
def __post_init__(self):
assert 0 <= self.H < 1
assert self.y_0 > 0
assert self.k > 0
def marginal(self, y):
"""Marginal wealth tax rate W'(y)."""
y_0, H, k = self.y_0, self.H, self.k
return H / (1 + np.exp(-k * np.log(y / y_0)))
def absolute(self, y):
"""Absolute value of wealth tax W(y)."""
y_0, H, k = self.y_0, self.H, self.k
power = (y / y_0) ** k
factor = H * y * power / (k + 1)
return factor * sp.special.hyp2f1(1, 1 + 1 / k, 2 + 1 / k, -power)
if __name__ == "__main__":
import pytest
pytest.main(["--doctest-modules", __file__])
def numerical_derivative(func, x, h=1e-4):
return (func(x + h) - func(x - h)) / (2 * h)
# Test that derivatives are correct for all classes with defaults
for cls in [Tax, Benefit, WealthTax]:
instance = cls()
x = np.logspace(3, 7)
analytical = instance.marginal(x)
numerical = numerical_derivative(instance.absolute, x)
assert np.allclose(numerical, analytical, rtol=0.01)