finitisme og konstruktivisme - ruc.dkmatematikfilosofi.ruc.dk/finitisme_og_konstruktivisme.pdf ·...

26
Finitisme og Konstruktivisme 22. November 2010

Upload: others

Post on 06-Jun-2020

8 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Finitisme og Konstruktivisme - RUC.dkmatematikfilosofi.ruc.dk/finitisme_og_konstruktivisme.pdf · algoritmer: Turing-maskiner, Churchs λ-kalkyle, Post-algoritmer, Markov-algoritmer,

Finitisme og Konstruktivisme

22. November 2010

Page 2: Finitisme og Konstruktivisme - RUC.dkmatematikfilosofi.ruc.dk/finitisme_og_konstruktivisme.pdf · algoritmer: Turing-maskiner, Churchs λ-kalkyle, Post-algoritmer, Markov-algoritmer,

Fraktaler

HilbertMandelbrot

Feigenbaum Lorenz

Page 3: Finitisme og Konstruktivisme - RUC.dkmatematikfilosofi.ruc.dk/finitisme_og_konstruktivisme.pdf · algoritmer: Turing-maskiner, Churchs λ-kalkyle, Post-algoritmer, Markov-algoritmer,

Lorenz-Ligningerne

σ

= 10

β

= 8/3

ρ

=28

Page 4: Finitisme og Konstruktivisme - RUC.dkmatematikfilosofi.ruc.dk/finitisme_og_konstruktivisme.pdf · algoritmer: Turing-maskiner, Churchs λ-kalkyle, Post-algoritmer, Markov-algoritmer,

Logistisk vækst

x -> rx(1-x)

Page 5: Finitisme og Konstruktivisme - RUC.dkmatematikfilosofi.ruc.dk/finitisme_og_konstruktivisme.pdf · algoritmer: Turing-maskiner, Churchs λ-kalkyle, Post-algoritmer, Markov-algoritmer,

Mandelbrots fraktal

z -> Pc

(z) = z2+c

0-> Pc

(0) ->Pc

(Pc

(0))-> …

Page 6: Finitisme og Konstruktivisme - RUC.dkmatematikfilosofi.ruc.dk/finitisme_og_konstruktivisme.pdf · algoritmer: Turing-maskiner, Churchs λ-kalkyle, Post-algoritmer, Markov-algoritmer,

Sammenhæng mellem Mandelbrot og Feigenbaum

fraktalerne

4)1(1 2−−

=rc

z -> Pc

(z) = z2+c

z -> rz(1-z)

Page 7: Finitisme og Konstruktivisme - RUC.dkmatematikfilosofi.ruc.dk/finitisme_og_konstruktivisme.pdf · algoritmer: Turing-maskiner, Churchs λ-kalkyle, Post-algoritmer, Markov-algoritmer,

Mængden

af

uendelige

binære

følger

er

ikke tællelig

33323130

23222120

13121110

03020100

aaaaaaaaaaaaaaaaa0

=

a1

=

a2

=

a3

=...

{ }1,0∈ija

bn

=1‐ann

Følgen (bn

) kan ikke være med i nummereringen a0

, a1

, a2

, …

Thi, hvis (bn

) = an

, så

ville vi have

bn

= 1‐ann

= ann

hvilket er en modstrid.

Page 8: Finitisme og Konstruktivisme - RUC.dkmatematikfilosofi.ruc.dk/finitisme_og_konstruktivisme.pdf · algoritmer: Turing-maskiner, Churchs λ-kalkyle, Post-algoritmer, Markov-algoritmer,

Mængden

af

de reelle

tal

er

ikke tællelige

C0 

= [0,1]

Cn+1

= Fjærn

den miderste

tredjedel I alle intervallerne i Cn

, dvs.

erstat alle intervaller [a,b] i Cn

med følgende to intervaller

V[a,b] = [a,a+1/3(b‐a)]  

H[a,b] = [a+2/3(b‐a),b]

Svarenden

til

en binær

følge

c, definer følgen

(Fc0

, Fc1

, Fc2

, …) af

lukkede

intervaller

⎩⎨⎧

==

=

=

+ 1)(0)(

]1,0[

1,

0,

nchvisHFnchvisVF

F

F

cn

cnnc

c

Page 9: Finitisme og Konstruktivisme - RUC.dkmatematikfilosofi.ruc.dk/finitisme_og_konstruktivisme.pdf · algoritmer: Turing-maskiner, Churchs λ-kalkyle, Post-algoritmer, Markov-algoritmer,

Mængden

af

de reelle

tal

er

ikke tællelige

2

∩∞

=

=0

,)(n

ncFcf

Funktionen f fra mængden af binære følger ind i de reelle tal defineres ved

Cantors mængde

defineres

som

∩∞

=

=0n

nCC

Funktionen f er en en-en-korrespondance

mellem mængden af binære følger og Cantors

mængde.

Da C er en delmængde af R og C er ækvipotent

med mængden af binære følger, som ikke er tællelig, kan R heller ikke være tællelig.

Page 10: Finitisme og Konstruktivisme - RUC.dkmatematikfilosofi.ruc.dk/finitisme_og_konstruktivisme.pdf · algoritmer: Turing-maskiner, Churchs λ-kalkyle, Post-algoritmer, Markov-algoritmer,

En vigtig Binomial-formel(−1)i

i=0

n

∑ ni

⎝⎜⎞

⎠⎟= 0

Bevis

(−1)i

i=0

n

∑ ni

⎝⎜⎞

⎠⎟= (−1)0 n

0⎛

⎝⎜⎞

⎠⎟+ (−1)i

i=1

n−1

∑ ni

⎝⎜⎞

⎠⎟+ (−1)n n

n⎛

⎝⎜⎞

⎠⎟

= 1+ (−1)i

i=1

n−1

∑ n −1i −1

⎝⎜⎞

⎠⎟+ n −1

i⎛

⎝⎜⎞

⎠⎟⎡

⎣⎢⎢

⎦⎥⎥+ (−1)n

= 1+ (−1)i

i=1

n−1

∑ n −1i −1

⎝⎜⎞

⎠⎟+ (−1)i

i=1

n−1

∑ n −1i

⎝⎜⎞

⎠⎟+ (−1)n

= 1+ (−1)i+1

i=0

n−2

∑ n −1i

⎝⎜⎞

⎠⎟+ (−1)i

i=1

n−1

∑ n −1i

⎝⎜⎞

⎠⎟+ (−1)n

= 1+ (−1)1 n −10

⎝⎜⎞

⎠⎟+ (−1)i+1

i=1

n−2

∑ n −1i

⎝⎜⎞

⎠⎟+ (−1)i

i=1

n−1

∑ n −1i

⎝⎜⎞

⎠⎟+ (−1)n

= 1−1+ (−1)n−1 n −1n −1

⎝⎜⎞

⎠⎟+ (−1)n

= 1−1+ (−1)n−1 + (−1)n

= 0

Page 11: Finitisme og Konstruktivisme - RUC.dkmatematikfilosofi.ruc.dk/finitisme_og_konstruktivisme.pdf · algoritmer: Turing-maskiner, Churchs λ-kalkyle, Post-algoritmer, Markov-algoritmer,

The Sieve Principle

Hvis A1

, A2

, … An

er endelige mængder, så

gælder

hvor αi

er summen af kardinaliteterne

af fællesmængderne af i eksemplarer af 

mængderne A1

, A2

, … An

, dvs

1 11 2 1 2

1

( 1) ( 1)n

i nn i n

i

A A A α α α α− −

=

∪ ∪ ∪ = − = − + + −∑

1 2

1 2

i

i

i k k kk k k

A A Aα≠ ≠ ≠

= ∩ ∩ ∩∑

Hvis

A og

B er

endelige

mængder, så

gælder

Hvia

A, B og

C er

endelige

mængder, så

gælder

A∪ B = A + B − A∩ B

A∪ B∪C = A + B + C − ( A∩ B + A∩C + B∩C ) + A∩ B∩C= α1 −α2 +α 3

Page 12: Finitisme og Konstruktivisme - RUC.dkmatematikfilosofi.ruc.dk/finitisme_og_konstruktivisme.pdf · algoritmer: Turing-maskiner, Churchs λ-kalkyle, Post-algoritmer, Markov-algoritmer,

DerangerproblemetLad A være en mængde med n elementer. Vi betegner elementerne i

A

med tallene 1,2,3,…,n. En permutation på

A er en bijektiv

afbildning på

A. Vi skriver en permutation p således

1 2

1 2

n

np p p

⎛ ⎞⎜ ⎟⎜ ⎟⎝ ⎠

Sætning: Antallet dn

af permutationer, p, hvor intet element overføres i sig selv, dvs. hvor

pi

i er

0

1 1 1 1!(1 ( 1) ) ! ( 1)1! 2! ! !

nn k

nk

d n nn k=

= − + − + − = −∑Bevis: Lad P(n) være mængden af alle permutationer på

A. Lad Ai

være mængden af permutationer p, hvor pi

= i. Nu er

hvor

αr

er antallet af permutationer, som fikserer r givne elementer, for alle mulige valg af r symboler. Dvs.

Indsættes værdien for αr

, fås det ønskede resultat.

2

1 2

( )

! ( 1)n i n

nn

d P n A A A

n α α α

= − ∪ ∪ ∪

= − + − + −

α r =nr

⎝⎜⎞

⎠⎟(n − r)!=

n!r!

1 2 nhvor p p p≠ ≠ ≠

Page 13: Finitisme og Konstruktivisme - RUC.dkmatematikfilosofi.ruc.dk/finitisme_og_konstruktivisme.pdf · algoritmer: Turing-maskiner, Churchs λ-kalkyle, Post-algoritmer, Markov-algoritmer,

Opgaver

1.

En sekretær i en virksomhed skal putte 6 forskellige breve i konvolutter til 6 forskellige kunder. Hun putter brevene tilfældigt i konvolutter. Hvad er sandsynligheden for at alle breve kommer i forkerte konvolutter? (Løsning: 265/720)

2.

Find antallet af måder bogstaverne A, D, E, G, J, U kan arrangeres i en række på, så

ordene DU og JEG ikke forekommer. (Løsning: 582)

Page 14: Finitisme og Konstruktivisme - RUC.dkmatematikfilosofi.ruc.dk/finitisme_og_konstruktivisme.pdf · algoritmer: Turing-maskiner, Churchs λ-kalkyle, Post-algoritmer, Markov-algoritmer,

Derangerproblemetn d(n) n!/e1 0 0,3678794412 1 0,735758882

3 2 2,2072766474 9 8,8291065885 44 44,145532946 265 264,87319767 1854 1854,1123848 14833 14832,899079 133496 133496,0916

10 1334961 1334960,91611 14684570 14684570,0812 176214841 176214840,913 2290792932 229079293214 32071101049 3207110104915 4,81067E+11 4,81067E+1116 7,69706E+12 7,69706E+1217 1,3085E+14 1,3085E+1418 2,3553E+15 2,3553E+1519 4,47507E+16 4,47507E+1620 8,95015E+17 8,95015E+17

0

1 1 1 1!(1 ( 1) ) ! ( 1)1! 2! ! !

nn k

nk

d n nn k=

= − + − + − = −∑

Rekursionsformel

for dnd1

= 0d2

= 1

dn

= (n-1)(dn-1

+ dn-2

), n>2

Approximation

til dndn

= n!/eidet

e−1 =(−1)k

k!k=0

Page 15: Finitisme og Konstruktivisme - RUC.dkmatematikfilosofi.ruc.dk/finitisme_og_konstruktivisme.pdf · algoritmer: Turing-maskiner, Churchs λ-kalkyle, Post-algoritmer, Markov-algoritmer,

Fibonacci-Tallene

Leonardo Fibonacci1170 -

1250

F0

= 0, F1

= 1, F2

= 1, Fn

= Fn-1

+

Fn-2

Page 16: Finitisme og Konstruktivisme - RUC.dkmatematikfilosofi.ruc.dk/finitisme_og_konstruktivisme.pdf · algoritmer: Turing-maskiner, Churchs λ-kalkyle, Post-algoritmer, Markov-algoritmer,

Fibonacci-Tallene

Fn F1 +…+Fn-21123 25 48 7

13 1221 2034 3355 5489 88

144 143233 232377 376610 609987 986

1597 15962584 25834181 41806765 6764

F0

= 0, F1

= 1, F2

= 1, Fn

= Fn-1

+

Fn-2

, n>2

Fn+2

= F1

+F2

+…+Fn

+1

Page 17: Finitisme og Konstruktivisme - RUC.dkmatematikfilosofi.ruc.dk/finitisme_og_konstruktivisme.pdf · algoritmer: Turing-maskiner, Churchs λ-kalkyle, Post-algoritmer, Markov-algoritmer,

Turing-Maskine

Operation: si

qj

ql

skAlan Turing

1912 -

1954

Endelig

mange tilstande:

q1

, q2

, …,qn

Tape

Læsehoved

Page 18: Finitisme og Konstruktivisme - RUC.dkmatematikfilosofi.ruc.dk/finitisme_og_konstruktivisme.pdf · algoritmer: Turing-maskiner, Churchs λ-kalkyle, Post-algoritmer, Markov-algoritmer,

Kodning

af

Turing-maskiner

og symbolsystemer

Alfabetet

a1

, a2

, a3

, …

, an kodes

således

Koden

af

symbolet

ak

betegnes

g(ak

).

1 2

1 2

na a a

n

⎛ ⎞⎜ ⎟↓ ↓ ↓⎜ ⎟⎜ ⎟⎝ ⎠

En symbolstreng ak1

ak2

ak3

…akm

kodes således1 2( ) ( ) ( )

1 2( ) 2 3 ...k k kmg a g a g ak k km mg a a a p=

En Turing-maskine

med alfabet

B,0,1,q1,…,qn

giver koderne

0 1 1

1 2 3 4 3

B q qn

n

⎛ ⎞⎜ ⎟↓↓↓ ↓ ↓⎜ ⎟⎜ ⎟+⎝ ⎠

(1) ( 2) ( 3) ( )(1 2 3 ) 2 3 5 7g g q g q g Bg q q B = ⋅ = 212625000

Page 19: Finitisme og Konstruktivisme - RUC.dkmatematikfilosofi.ruc.dk/finitisme_og_konstruktivisme.pdf · algoritmer: Turing-maskiner, Churchs λ-kalkyle, Post-algoritmer, Markov-algoritmer,

Rekursive Funktioner

A. Klassen af Primitive rekursive funktioner

Nul-funktionen: z(x)=0,for all xEfterfølgerfunktionen: s(x)=x+1,for all xProjektioner: πi,n

(x1

,…xn

)=xi

, for all xi

, 1≤i≤n. Komposition: f(x1

,…,xn

)=g(h1

(x1

,…,xn

),…, hm

(x1

,…,xn

)),for alle g,h1

,…,hmPrimitiv Rekursion: f(x,0)=g(x),for given g

f(x,s(y))=h(x,y,f(x,y)),for

given h

B. Klassen af parielt rekursive funktionerMinimization: h(x1

,…,xn

)=y, hvis f(x1

, …,xn

,y)=0 og ∀t<y(f(x1

, …,xn

,t) er defineret og positiv)= udefineret i andre tilfælde.

Page 20: Finitisme og Konstruktivisme - RUC.dkmatematikfilosofi.ruc.dk/finitisme_og_konstruktivisme.pdf · algoritmer: Turing-maskiner, Churchs λ-kalkyle, Post-algoritmer, Markov-algoritmer,

Ackermanns funktion

Page 21: Finitisme og Konstruktivisme - RUC.dkmatematikfilosofi.ruc.dk/finitisme_og_konstruktivisme.pdf · algoritmer: Turing-maskiner, Churchs λ-kalkyle, Post-algoritmer, Markov-algoritmer,

Church-Turings Tese

Der

finder mange forskellige

forsøg

at karakterisere

klassen

af algoritmer: Turing-maskiner, Churchs

λ-kalkyle, Post-algoritmer, Markov-

algoritmer, Kleenes

partielt rekursive

funktioner, klassen af algoritmer, som kan defineres i et fornuftigt programmeringssprog som f.eks. Pascal eller C, osv

. Det kan ved simple kombinatoriske metoder (igen algoritmiske)

vises,

at alle disse karakteriseringer giver samme klasse af algoritmer. Church- Turings

tese siger derfor, at denne fælles klasse netop udgør klassen af

algoritmer.

Church-Turings

tese er ikke en matematisk sætning, men antages den, har vi en model af klassen af alle algoritmer.

Page 22: Finitisme og Konstruktivisme - RUC.dkmatematikfilosofi.ruc.dk/finitisme_og_konstruktivisme.pdf · algoritmer: Turing-maskiner, Churchs λ-kalkyle, Post-algoritmer, Markov-algoritmer,

Klassen af algoritmer kan nummereres

Enhver algoritme er defineret ved en endelig tekst (dens program, som f.eks. kan være en endelig følge af Turingmaskine

instruktioner si

qj

ql

sk

, sm

qn

qr

st

,…). Disse tekster han nummereres på

en effektiv måde, så

man ud fra et nummer

kan identificere algoritmen, og omvendt ud fra en algoritme man identificere dens nummer. En sådan nummerering kaldes en Gödel-nummerering.

Px

er algoritmen med Gödel-nummer

x. Den partielle funktion, som Px

beregner, betegnes φx

. φx

kaldes partielt rekursiv, algoritmisk eller effektivt beregnelig.

Der findes højst nummerabelt

(tælleligt uendeligt) mange effektivt beregnelige funktioner.

Klassen af alle funktioner på

de naturlige tal er ikke nummerabel, men har en højere grad af uendelighed.

Der findes funktioner, som ikke er effektivt beregnelige.

Page 23: Finitisme og Konstruktivisme - RUC.dkmatematikfilosofi.ruc.dk/finitisme_og_konstruktivisme.pdf · algoritmer: Turing-maskiner, Churchs λ-kalkyle, Post-algoritmer, Markov-algoritmer,

Ikke

alle

algoritmer

kan

være totale

1 1 1 1

2 2 2 2

3 3 3 3

1 2 3(1) (2) (3)(1) (2) (3)(1) (2) (3)

(1) (2) (3) ( )n n n n n

P P P PP P P PP P P P

P P P P P nP(m) = Pm

(m)+1

P er

klart

en algoritme. Den må

derfor

forekomme

I skemaet

som en Pk

. Men så

får

vi Pk

(k) = P(k) = Pk

(k)+1. Pk

er

derfor

ikke defineret

for værdien

k.

Page 24: Finitisme og Konstruktivisme - RUC.dkmatematikfilosofi.ruc.dk/finitisme_og_konstruktivisme.pdf · algoritmer: Turing-maskiner, Churchs λ-kalkyle, Post-algoritmer, Markov-algoritmer,

Cantor’s paring function

Vi skriver

<k1

,k2

> for π(k1

,k2)

Page 25: Finitisme og Konstruktivisme - RUC.dkmatematikfilosofi.ruc.dk/finitisme_og_konstruktivisme.pdf · algoritmer: Turing-maskiner, Churchs λ-kalkyle, Post-algoritmer, Markov-algoritmer,

Den Universelle Algoritme

1 1 1 1

2 2 2 2

3 3 3 3

1 2 3(1) (2) (3)(1) (2) (3)(1) (2) (3)

(1) (2) (3) ( )n n n n n

P P P PP P P PP P P P

P P P P P n

U(x) = Pa

(b), hvor

x=<a,b>

U(x) dekoder

x som

et par <a,b> og

lader algoritmen

Pa

virke på b.

Page 26: Finitisme og Konstruktivisme - RUC.dkmatematikfilosofi.ruc.dk/finitisme_og_konstruktivisme.pdf · algoritmer: Turing-maskiner, Churchs λ-kalkyle, Post-algoritmer, Markov-algoritmer,

Afgørlige

mængder af tal

En mængde af naturlige tal A er rekursivt

afgørlig, såfremt der findes en algoritme P med egenskaben

P(x)=1 hvis x tilhører A

P(x)=0 hvis x ikke tilhører A

En mængde A er rekursivt

afgørlig, hvis der findes to algoritmer P1

og P2

, hvor P1 nummererer A, og P2 nummererer komplementet til A, dvs. N\A.

Der findes mængder, som er ikke rekursivt

afgørlige

(dvs. rekursivt uafgørlige).