Om några patologiska men kontinuerliga funktioner

Analys 360
En webbaserad analyskurs
Analysens Grunder
Om några patologiska
men kontinuerliga
funktioner
Anders Källén
MatematikCentrum
LTH
[email protected]
Om några patologiska men kontinuerliga funktioner
1
1 (10)
Introduktion
Begreppet kontinuitet formaliserades inte förrän under 1800-talets andra hälft, och då
mycket under ledning av den tyske matematikern Karl Weierstrass (1815-1897) som
införde den moderna δ-definitionen. Fram till dess hade man en mer intuitiv bild av
vad kontinuitet var. I den intuitiva bilden låg att man trodde att en kontinuerlig funktion
var deriverbar utom i eventuellt i en mängd punkter som var “liten” i någon mening. En
kontinuerlig funktion av en variabel var mycket en funktion som man kunde rita utan att
lyfta pennan, och fick den knappast vara icke-deriverbar i mer än uppräkneligt många
punkter.
Den definition av kontinuitet som Weierstrass’ införde gjorde det visserligen möjligt att
strängt bevisa de satser om man kontinuerliga funktioner som man till dess hade tagit
för givna. Men den bar samtidigt på en del överraskningar, av vilka några ska diskuteras
i detta kapitel.
2
Kontinuerliga men ingenstans deriverbara funktioner
Den första chocken kom när Weierstrass konstruerade ett exempel på en kontinuerlig
funktion som inte var deriverbar i någon punkt. Han gjorde detta 1872, men hävdar att
han hört från en elev till Bernhard Riemann (1826-1866) att Riemann redan 1861 påstod
att den kontinuerliga funktionen
f (x) =
∞
X
sin(k 2 x)
k=1
k2
inte är deriverbar någonstans. Men Riemann hade inte publiserat något bevis och Weierstrass lyckades inte hitta något heller. Men hans ansträngningar ledde honom till att
konstruera funktionen
∞
X
bk cos(ak πx),
f (x) =
k=0
där a är ett udda heltal och 0 < b < 1. Eftersom
0 < b < 1 följer det från Weierstrass’ majorantsats
att detta är en kontinuerlig funktion. Däremot visade Weierstrass att om ab > 1 + 3π/2 så är den inte
deriverbar någonstans.
b
1
0.5
0
0
10
20
30
40
50
a
En typisk bild av hur Weierstrass funktion ser ut i en
period [−π, π] i inte allt för stor förstoring ses i bilden nedan, där endast fyra termer
är medtagna. Men man får en inblick i hur själva funktionen ser ut, med oerhörda täta
svängningar.
Om några patologiska men kontinuerliga funktioner
2 (10)
y
2
1
0
−3
−2
−1
0
1
2
3
x
−1
−2
Efter att Weierstrass konstruktion blev känd kom fler exempel, många av vilka byggde
på idén att ta
∞
X
bk φ(ak x)
f (x) =
k=0
där φ är en lämplig periodisk funktion. Ett enkelt exempel upptäcktes av van der Waerden:
∞
X
3
f (x) =
( )k φ(4k x),
4
k=0
där φ definieras av att φ(x) = |x| då −1 ≤ x ≤ 1 och fortsätts till en 2-periodisk
funktion på hela den reella axeln. Även den är naturligtvis kontinuerlig p.g.a. Weierstrass’
majorantsats.
y
1
0.5
0
−4
−3
−2
−1
0
1
2
3
4
x
Vi ska nu se varför van der Waerdens funktion inte har någon derivata i någon punkt.
Låt x ∈ R och tag ett heltal m ≥ 1 och plocka ut heltalsdelen k = [4m x] av 4m x. Om vi
sätter
(
1 −m
4
då 4m x − k ≤ 12
2
δm =
− 12 4−m då 4m x − k > 12
så kommer intervallet ]4m x, 4m (x + δm )[ inte innehålla något heltal. Vi har därför att
1
|φ(4m (x + δm )) − φ(4m x)| = |4m δm | = ,
2
Om några patologiska men kontinuerliga funktioner
3 (10)
eftersom φ är en linjär funktion mellan 4m x och 4m (x + δm ).
Om n ≥ m + 1 har vi att 4n δm = ±2 · 4n−m−1 som är ett jämnt tal. Eftersom φ(x) har
perioden 2 följer att
|φ(4n (x + δm )) − φ(4n x)| = 0
för alla sådana n.
Om istället n ≤ m + 1 kan vi använda att triangeloliketen ger att |φ(x) − φ(y)| ≤ |x − y|,
från vilket vi ser att
|φ(4n (x + δm )) − φ(4n x)| ≤ 4n |δm |.
Samlar vi nu ihop all denna information ser vi att
m
X 3
n
n
n
|f (x + δm ) − f (x)| = ( ) (φ(4 (x + δm )) − φ(4 x)) ≥
4
n=0
m−1
m−1
X
3 m1 X 3 n n
3m − 1
3m + 1
m
( )
−
( ) 4 |δm | = 3 |δm | − |δm |
3n = |δm |(3m −
) = |δm |
.
4 2 n=0 4
2
2
n=0
När m → ∞ gäller att δm → 0, men samtidigt har vi att
f (x + δm ) − f (x) 3m + 1
≥
→ ∞ då m → ∞.
δm
2
Det följer att f inte kan vara differentierbar.
Att bevisa att Weierstrass funktion inte heller är differentierbar i någon punkt följer
motsvarande räkningar, de är bara mer komplicerade p.g.a. att man behöver använda
identiteter för de trigonometriska funktionerna.
Anmärkning Vad gäller Weierstrass funktion kan man observera dess musikaliska tolkning
och den musikaliska paradox den innehåller.
Vi börjar med att observera följande relation
f (at) =
∞
X
1
bk cos(ak+1 πt) = cos(aπt) + f (t).
b
k=0
En funktion A sin(aπt) representerar en harmonisk svängning med frekvens f = a/2 och
amplitud (ljudstyrka) A. Weierstrass funktion är därför sammansatt av en “kakafoni”
av sådana svängningar, och kan därför tänkas på som ljud. Dock är det ju så att vårt
hörområde är begränsat, svarande mot frekvenser i intervallet 10–20000 Hertz, så vi kan
inte höra alla termerna i summan. Vi kan därför sätta b = 1, eftersom b:s roll är att få
den oändliga summan att konvergera, och har då att f (at) = f (t).
Tag nu a = 213/12 . Då har vi att
f (2t) = f (a(2−1/12 t) = f (2−1/12 t).
Detta betyder att om vi spelar in ljudet från Weierstrass’ funktion och sedan spelar
upp det med dubbel hastighet, så kommer frekvensen att gå ner med en faktor 2−1/12 . I
musikaliska termer, istället för att höra ljudet en oktav högre, kommer det att höras en
halvton lägre.
Om några patologiska men kontinuerliga funktioner
4 (10)
Hur är det då med Riemanns funktion? Det är nästan sant att den inte har derivata i
någon punkt. Den är nämligen deriverbar i alla punkter på formen (2p + 1)π/(2q + 1)
där p och q är positiva heltal. Derivatan i de punkterna är −1/2. Däremot är den inte
deriverbar i någon annan punkt! Den fulla lösningen på detta kom inte förrän 1971.
Anmärkning Så Weierstrass funktion visar att man inte kan rita alla kontinuerliga kurvor?
Kanske inte ändå. För att rita något måste man använda en penna (eller motsvarande)
som har en viss tjocklek. De verkligt fina detaljerna kan vi därför inte fånga. Och då
reparerade Weierstrass delvis vad han ställt till med genom att några år senare visa sin
berömda approximationssats, som säger att på ett begränsat intervall [a, b] kan en man
till en godtyckligt vald kontinuerlig funktion och ett godtyckligt > 0 alltid finna ett
polynom sådant att
|f (x) − p(x)| ≤ a ≤ x ≤ b.
Och ett polynom är bland det snällaste i funktionsväg vi har!
3
Djävulstrappan och Cantors nollmängd
Vi ska nu konstruera en annan funktion som inte är vad man tycker borde gälla för
kontinuerliga funktioner. Det är en kontinuerlig funktion som är växande från 0 till 1 på
intervallet [0, 1] men för vilken derivatan är noll i “nästan alla punkter”.
Konstruktionen bygger på att vi börjar med att konstruera en svit av mindre och minde
slutna mängder
F0 ⊃ F1 ⊃ F2 ⊂ . . . ⊃ Fm ⊃ . . .
Konstruktionen tillgår så att vi börjar med intervallet F0 = [0, 1]. Sedan tar vi bort den
(öppna) mellersta tredjedelen och får kvar mängden
2
1
F1 = [0, ] ∪ [ , 1].
3
3
Sedan gör vi samma sak på varje delintervall här, vilket ger oss 4 intervall och en mängd
1
2 1
2 7
8
F2 = [0, ] ∪ [ , ] ∪ [ , ] ∪ [ , 1].
9
9 3
3 9
9
Sedan fortsätter vi på detta sättet, så att Fm kommer att bestå av 2m slutna intervall av
längden 3−n . Den sammanlagda längden på Fm är därför (2/3)m .
Om några patologiska men kontinuerliga funktioner
5 (10)
Vi ska nu för varje m definiera en styckvis linjär funktion fm sådan att fm (0) = 0, fm (1) =
1. För m = 0 tar vi f0 (x) = x och för m = 1 tar vi

3x

då 0 ≤ x ≤ 13
2
f1 (x) = 12
då 13 ≤ x ≤ 32

 3x 1
− 2 då 23 ≤ x ≤ 1.
2
Dess karakteristiska är att den är konstant på det borttagna intervallet och har konstant
derivata 3/2 på de återstående bitarna.
Vi upprepar sedan denna process för m = 2. Vi får då
en funktion som är konstant lika med 1/4 på intervallet [1/9, 2/9], med 1/2 på samma intervall som ovan
och 3/4 på intervallet [7/9, 8/9]. På de återstående
intervallen har den en konstant derivata som är lika
med (1/4)/(1/9) = (3/2)2 .
Sedan fortsätter vi på samma sätt. Funktionen fm har
då konstanta värden j/2m , j = 1, 2 . . . , 2m −1 på borttagna intervall och är styckvis linjär med linjestycken
som har lutning (3/2)m på de kvarvarande intervallen. Funktionen för några små m är ritade i figuren
till höger.
Från konstruktionen är det nu uppenbart att för n >
m ≥ 1 gäller att
y
1
0.9
0.8
0.7
0.6
0.5
0.4
0.3
0.2
0.1
0
0
y
0.5
1
x
1
0.9
0.8
0.7
|fn (x) − fm (x)| ≤ 2−m
0.6
0.5
så vi har att sviten fn konvergerar likformigt mot en
växande kontinuerlig funktion f sådan att f (0) =
0, f (1) = 1. Nämnda egenskaper ärvs direkt av att
alla fn har dem. Vidare gäller att fm (x) är konstant
på varje öppen komponent av [0, 1]\Fm . För n > m
gäller att fn (x) = fm (x) på den mängden, så det
måste också gälla f : gränsfunktionen är konstant på alla mängder [0, 1]\Fm . Men unionen
av dem är lika med intervallet [0, 1] med mängden
0.4
0.3
0.2
0.1
0
0
C=
∞
[
0.5
1
x
Fm
m=1
och det är en mängd som har längden noll, eftersom den ligger i alla Fm och längden av
Fm går mot noll då m → ∞.
Vi ser att vi har konstruerat en kontinuerlig, växande, funktion f : [0, 1] → [0, 1] för
vilken det gäller att derivatan är lika med noll i alla punkter utom de i nollmängden C.
Man säger att derivatan är noll nästan överallt. Denna funktion kallas djävulstrappan och
nollmängden C kallas Cantors nollmängd.
Det som gör funktionen konstig är att Cantors nollmängd inte är en uppräknelig mängd.
Man trodde länge att en kontinuerlig funktion var deriverbar i alla utom högst uppräkneligt
Om några patologiska men kontinuerliga funktioner
6 (10)
många punkter (Ampère trodde sig t.o.m. ha bevisat att så var fallet), och speciellt måste
detta gälla en växande funktion. Djävulstrappan, som inte är deriverbar i de punkter som
ligger i C, visar att så inte är fallet, varför det finns anledning att titta på varför Cantors
nollmängd inte är uppräknelig.
Det första vi ska notera är då att från konstruktionen följer att x ∈ C om och endast om
vi kan skriva
∞
X
x=
ak 3−k ,
k=0
där ak är antingen 0 eller 2. Vi ser då att
f (x) =
∞
X
bk 2−k ,
k=0
där bk = ak /2. Men varje tal i [0, 1] kan skrivas på denna senare form, det är den binära
utvecklingen av talet, så vi ser att varje reellt tal i [0, 1] svarar mot (minst) ett tal i C.
Det finns (minst) lika många tal i Cantors nollmängd som det finns i intervallet [0, 1]!
Anmärkning Minst syftar på att samma tal i Cantormängden kan ha två olika utvecklingar. På samma sätt som 0.9999 . . . = 1 i vanlig decimalutveckling.
4
Kurvor som fyller ut ett område i planet
Som ett sista exempel på hur “lite ordning” kontinuitet i sig garanterar ska vi konstruera
en funktion från de reella talen till enhetskvadraten i planet som är sådan att den fyller
ut den senare. Sådana kurvor kallas ofta Peano-kurvor efter Giuseppe Peano (1858-1932)
som 1890 konstruerade den första.
Innan vi går in på en relativt enkel konstruktion som bygger på idéerna från ovan låt oss
göra följande observation: intervallet [0, 1] och enhetskvadraten [0, 1] × [0, 1] innehåller
“lika många element” i den meningen att det finns en bijektion mellan dem. Om vi
nämligen skriver elementen (x, y) i enhetskvadraten i sina decimalutvecklingar
x = 0.x1 x2 x3 . . . ,
y = 0.y1 y2 y3 . . . ,
så kan vi definiera till vart och ett av dem ett element
z = 0.x1 y1 x2 y2 x3 y3 . . .
i [0, 1]. Som avbildning från enhetsintervallet till enhetskvadraten betraktad är den väldigt
långt från att vara kontinuerlig, men den innehåller en av idéerna i den konstruktion som
nu kommer.
Vi börjar med att definiera funktionen


0
g(t) = 3t − 1


1
då 0 ≤ t ≤ 31
då 13 ≤ t ≤ 23 ,
då 23 ≤ t ≤ 1
Om några patologiska men kontinuerliga funktioner
7 (10)
och sedan fortsätta den till hela linjen som en jämn, 2-periodisk funktion. Vi definierar
sedan följande två funktioner
x(t) =
∞
X
−k
2k
2 g(3 t)
och
y(t) =
k=0
∞
X
2−k g(32k+1 t)
k=0
för t ∈ [0, 1]. Dessa är båda kontinuerliga funktioner enligt Weierstrass’ majorantsats.
Vidare är det klart att 0 ≤ x(t), y(t) ≤ 1, så kurvan vars parametrisering ges av [0, 1] 3
t → (x(t), y(t)) ligger helt i enhetskvadraten.
För att visa att den fyller ut enhetskvadraten ska vi visa att om (x, y) ligger i enhetskvadraten så finns ett t0 ∈ [0, 1] sådant att x(t0 ) = x och y(t0 ) = y. För att göra
detta skriver båda talen på binär form, men vi gör det lite listigt vad gäller indexeringen.
Vi skriver
∞
∞
X
X
−k
x=
b2k−1 2 ,
y=
b2k 2−k ,
k=1
k=1
där alla bi är noll eller ett. Notera att vi har en talföljd bk där de jämna talen hör till y
och de udda till x.
Vi skriver nu ak = 2bk och sätter
t0 =
∞
X
ak 3−k
k=1
(vilket blir ett tal i Cantors nollmängd enligt ovan). Den viktiga observationen nu är att
g(3k t0 ) = bk+1 ,
k = 0, 1, 2, . . . .
Låt oss först se att det är sant för k = 0. Om b1 = 0 gäller att t0 ∈ [0, 1/3], vilket betyder
att g(t0 ) = 0, medan om b1 = 1 gäller att t0 ∈ [2/3, 1], och då gäller att g(t0 ) = 1. I båda
fallen har vi alltså att g(t0 ) = b1 .
Vidare har vi att
3k t0 =
∞
X
j=1
aj 3k−j =
k
X
j=1
aj 3k−j +
∞
X
ak+j 3−j
j=1
där den första termen i högerledet är ett jämnt heltal. Eftersom g(t) är 2-periodisk följer
att
∞
X
g(3k t0 ) = g(
ak+j 3−j ) = bk+1 ,
j=1
där sista likheten följer av fallet k = 0 ovan.
Sätter vi in dessa uttryck i formlerna för x(t0 ) och y(t0 ) ser vi att x(t0 ) = x, y(t0 ) = y.
Eftersom punkten var godtycklig följer att kurvan går genom varje punkt i enhetskvadraten.
Det finns en annan konstruktion av en kurva som fyller ut enhetskvadraten som i många
avseenden är enklare att förstå. Den är påhittad av David Hilbert och bygger på att vi
istället för att skriva tal i enhetsintervallet i bas 3, så skriver vi dem i bas 4. Och sedan
ritar vi ut dem i enhetskvadraten.
Om några patologiska men kontinuerliga funktioner
8 (10)
Mer precist, ett tal t ∈ [0, 1] kan skrivas
t=
∞
X
−k
ak 4
0.1
0.2
0.0
0.3
= (0.a1 a2 a3 . . .)4 ,
k=1
där varje ak är något av talen 0, 1, 2, 3. Vi ska nu rita ut detta
tal i enhetskvadraten på följande sätt. Först delar varje sida på
enhetskvadraten på mitten så att vi får fyra kvadrater. Tal som
börjar på 0.0 i bas 4-utveckling ska hamna längst ner till vänster,
tal som börjar på 0.1 i kvadraten och, de som börjar på 0.2 på
kvadraten till höger om den och de som börjar på 0.3 i kvadraten
nere till höger. Vi definierar också kurvan H1 som den som i
denna ordning förbinder mittpunkterna på de fyra kvadraterna.
Sedan delar vi varje var och en av dessa i fyra kvadrater och
placerar in tal med de två första “decimalerna” på motsvarande
platser och definierar en kurva H2 som den som förbinder mittpunkterna i respektive kvadrat enligt samma schema. Detaljer
framgår av figuren till höger.
0.11
0.1
0.01
0.0
0.12
0.13
0.02
0.03
0.21
0.2
0.31
0.3
0.22
0.23
0.32
0.33
Vi kan sedan fortsätta denna process hur många gånger vi
vill. Gör vi det n gånger får vi en kurva Hn som förbinder
mittpunkterna i kvadrater med sidan 2n som i sin tur innehåller tal utifrån sina n första “decimaler”. Det är inte
svårt att tro på att gränskurvan H(t) = limn→∞ Hn (t) kommer att fylla ut hela enhetskvadraten och att den dessutom
är kontinuerlig. Att den är kontinuerlig följer av att två tal
som har samma första n “decimaler” i bas 4-utvecklingen
kommer att hamna i samma kvadrat och
ligga på
√ alltså
n
ett avstånd från varandra som är högst 2/2 . Figuren till
höger visar H8 .
Anmärkning Däremot är H inte en injektiv funktion. T.ex. gäller att talen 0.214 och 0.134
båda hamnar i samma punkt i enhetskvadraten, nämligen i det gemensamma hörnet för
de två kvadrater med sidan 1/4 som innehåller talen som börjar med dessa utvecklingar.
Anmärkning Travelling Salesman Problem
5
Lipschitzkontinuitet
Om Weierstrass hade velat undvika dessa i många stycken patologiska funktioner och
infört ett kontinuitetsbegrepp som mer stämde med vad hans samtida tyckte det skulle
betyda kanske han skulle infört kontinuitet som det vi idag kallar Lipschitzkontinuitet.
Vi kan motivera det som följer.
Vi vet att en funktion är differentierbar i en punkt a om det gäller att
f (x) − f (a) = A(a, x)(x − a)
där funktionen x → A(a, x) är kontinuerlig i x = a. Låt oss anta att den endast är
begränsad. Det ger oss följande definition
Om några patologiska men kontinuerliga funktioner
9 (10)
Definition En funktion f sägs vara Lipschitzkontinuerlig på en öppen mängd Ω ⊂ Rn
om det gäller att det finns en konstant L sådan att
|f (x) − f (y)| ≤ L|x − y|,
x, y ∈ Ω.
Vi ser att detta är ekvivalent med att |A(a, x)| ≤ L för alla aktuella a och x. Eftersom en
kontinuerlig funktion är begränsad ser vi att varje differentierbar funktion är Lipschitzkontinuerlig. Och varje Lipschitzkontinuerlig funktion är naturligtvis kontinuerlig.
Men för Lipschitzkontinuerliga funktioner gäller att de är deriverbara “nästan överallt”.
Sats 1 (Rademacher’s sats) En Lipschitz-kontinuerlig funktion f : (a, b) → R är deriverbar utom på en mängd av Lebesgue-mått noll.
Innan vi går in på beviset behöver vi en övertäckningssats av annan typ än Heine-Borels
lemma. För detta definierar vi en Vitaliövertäckning av en mängd X ⊂ R är en familj av
intervall sådana att det för varje x ∈ X och > 0 gäller att övertäcknigen innehåller ett
intervall av längd < sådant att x ligger i det.
Sats 2 (Vitalis övertäckningslemma) Låt V vara en Vitaliövertäckning av en mängd
X ⊂ R med ändligt yttre mått. Till varje > 0 finns då ändligt många intervall av parvis
disjunkta element i V sådant att
[
X\ Ii < i
Anmärkning Vi antar för enkelhets skull att X är mätbar, men det behövs inte. Om man
använder yttre mått i formuleringen av satsen.
Bevis. Tag först en öppen mängd U ⊃ X sådan att |U | < |X|+1 och ta bort alla intervall
i V som inte ligger i U (resultatet är alltjämt en Vitalliövertäckning).
Vi ska nu successivt
Sn−1
Ii och sådan att längden
bestämma intervall In i V sådana att In är disjunkt till i=1
L(In ) av In är större än
sup{L(I); I ∩ (∪n−1
Ii ) = ∅}.
1
Om det inte finns något sådant I är vi klara. IPannat fall får vi en oändlig svit In av
disjunkta intervall som alla ligger i U och alltså ∞
1 |Ik | ≤ |U |, som är ändlig. Det gäller
bara att se att dessa övertäcker X. Om x ∈
/ X så finns ett intervall I0 ∈ V sådan att
x ∈ I0 och om I0 ∩ Ik = ∅ för k = 1, . . . , l − 1, så måste längden av I0 vara mindre än två
gånger längden av |Il |. Eftersom |Ik | → 0 finns ett första Il som skär I0 . Om vi gör Il 5
gånger större så kommer det att innehålla I0 . Alltså: den del av X som inte ligger i ∪N
1 Ik
˜k m där I˜k har samma mittpunkt som Ik men är 5 gånger större. Eftersom
ligger i ∪∞
I
N +1
c
∞ ˜
X ∩ (∪N
I
1 k ) ⊂ ∪N +1 Ik , så har vi att den mindre mängden har sammanlagd längd som är
< 5.
En Lipschitz-kontinuerlig funktion är av begränsad variation, och sådana kan skrivas som
skillnaden mellan två växande funktioner. Rademacher’s sats följer därför ur följande
sats.
Sats 3 (Lebesgue) En växande, reellvärd, funktion på ett kompakt intervall [a, b] är
deriverbar utom på en nollmängd.
Om några patologiska men kontinuerliga funktioner
10 (10)
Bevis. Det vi ska visa är att funktionen A(x, h) som definieras av relationen f (x + h) −
f (x) = A(x, h)h har gränsvärde då h → 0 i nästan alla punkter x. Eftersom f är växande
gäller att A ≥ 0 överallt. För ett rationell tal p inför vi nu mängden
Ep = {x; lim inf A(x, h) < p}.
h→0
Vi ska då först visa att
|f (Ep )| ≤ p|Ep |.
Tag ett godtyckligt > 0. Tag därefter en öppen omgivning U till Ep sådan att |U | < s+.
För varje x ∈ Ep gäller då för tillräckligt små h att f (x) − f (x − h) < ph. Sådana intervall
[x − h, x], valda så små att de ligger i U , bildar en Vivaldiövertäckning av Ep . Vi kan
därför ta ut en ändlig delövertäckning Ik = [xk − hk , xk ] vars sammanlagda längd är
> |Ep | − . Då har vi
N
N
X
X
|f (Ep )| =
(f (xk ) − f (xk − hk )) < p
phk < p(|Ep | + ).
1
1
Eftersom > 0 är godtyckligt följer påståendet.
På motsvarande sätt kan vi visa att om (q är rationellt)
Eq = {x; lim sup A(x, h) > q} så är q|Eq | ≤ |f (Eq )|.
h→0
Tag sedan p < q och betrakta mängden
Epq = {x; lim inf A(x, h) < p < q < lim sup A(x, h)}.
h→0
h→0
Från resonemanget ovan får vi då att
q|Epq | ≤ |f (Epq )| ≤ p|Epq |.
Det följer att |Epq | = 0, vilket betyder att lim inf h→0 A(x, h) = lim suph→0 A(x, h) utom
på en nollmängd. Eftersom vidare dessa är ändliga utom på en nollmängd följer satsen.