Wahlpflichtfach Bachelor Informatik 4. Semester Ausgewählte ... · Lektion 6: utm- und...

50
Lektion 6: utm- und smn-Theorem Wahlpflichtfach Bachelor Informatik 4. Semester Ausgewählte Kapitel Diskreter Mathematik mit Anwendungen Lektion 6: utm- und smn-Theorem Kurt-Ulrich Witt Sommersemester 2011 Kurt-Ulrich Witt Diskrete Mathematik Lektion 6 1/28

Transcript of Wahlpflichtfach Bachelor Informatik 4. Semester Ausgewählte ... · Lektion 6: utm- und...

Lektion 6: utm- und smn-Theorem

Wahlpflichtfach Bachelor Informatik 4. Semester

Ausgewählte Kapitel Diskreter Mathematikmit Anwendungen

Lektion 6: utm- und smn-Theorem

Kurt-Ulrich Witt

Sommersemester 2011

Kurt-Ulrich Witt Diskrete Mathematik • Lektion 6 1/28

Lektion 6: utm- und smn-Theorem

Inhaltsverzeichnis

Anforderungen an BerechenbarkeitskonzepteGödelisierung von µRNummerierung von Putm-Theoremsmn-Theorem

Kurt-Ulrich Witt Diskrete Mathematik • Lektion 6 2/28

Lektion 6: utm- und smn-Theorem

Anforderungen an BerechenbarkeitskonzepteGödelisierung von µRNummerierung von Putm-Theoremsmn-Theorem

Sowohl aus Theoretischer als auch aus praktischer Sicht

(1) Existenz einer berechenbaren universellen Funktion

(2) Möglichkeit der Parametrisierung(effektive Programmierung)

Kurt-Ulrich Witt Diskrete Mathematik • Lektion 6 3/28

Lektion 6: utm- und smn-Theorem

Anforderungen an BerechenbarkeitskonzepteGödelisierung von µRNummerierung von Putm-Theoremsmn-Theorem

Sowohl aus Theoretischer als auch aus praktischer Sicht

(1) Existenz einer berechenbaren universellen Funktion

(2) Möglichkeit der Parametrisierung(effektive Programmierung)

Kurt-Ulrich Witt Diskrete Mathematik • Lektion 6 3/28

Lektion 6: utm- und smn-Theorem

Anforderungen an BerechenbarkeitskonzepteGödelisierung von µRNummerierung von Putm-Theoremsmn-Theorem

Sowohl aus Theoretischer als auch aus praktischer Sicht

(1) Existenz einer berechenbaren universellen Funktion

(2) Möglichkeit der Parametrisierung(effektive Programmierung)

Kurt-Ulrich Witt Diskrete Mathematik • Lektion 6 3/28

Lektion 6: utm- und smn-Theorem

Anforderungen an BerechenbarkeitskonzepteGödelisierung von µRNummerierung von Putm-Theoremsmn-Theorem

Codierung σ der Nullfunktionen und Projektionen

(Code-) Alphabet:

Σ = { |,#,O, π, ν, C,PRK, µ, [, ] , ; , , }

Codierung:σ : µR → Σ+

mit

σ(Ok ) = O|k , k ≥ 0

σ(πki ) = π|k #|i , 1 ≤ i ≤ k , k ≥ 1

Beispiele:

σ(O3) = O|||σ(π5

2) = π|||||#||

Kurt-Ulrich Witt Diskrete Mathematik • Lektion 6 4/28

Lektion 6: utm- und smn-Theorem

Anforderungen an BerechenbarkeitskonzepteGödelisierung von µRNummerierung von Putm-Theoremsmn-Theorem

Codierung σ der µ-rekursiven Funktionen

sowieσ(x) = x für x ∈ { ν, C,PRK, µ, [, ] , ; , , }

undσ(x1x2 . . . xn) = σ(x1)σ(x2) . . . σ(xn)

für

xi = Ok , k ≥ 0

xi = πki , 1 ≤ i ≤ k , k ≥ 1

xi ∈ { ν, C,PRK, µ, [, ] , ; , , }

Beispiel add :PRK

[π1

1 , C[ν;π3

3]]

Codierung:

σ(PRK[π1

1 , C[ν;π3

3]]

) = PRK [π|#|, C [ν;π|||#|||]]

Kurt-Ulrich Witt Diskrete Mathematik • Lektion 6 5/28

Lektion 6: utm- und smn-Theorem

Anforderungen an BerechenbarkeitskonzepteGödelisierung von µRNummerierung von Putm-Theoremsmn-Theorem

Nummerierung von µR

ρ : Σ→ {1,2, . . . ,12 }definiert durch

ρ(|) = 1 ρ(π) = 4 ρ(PRK) = 7 ρ( ]) = 10ρ(#) = 2 ρ(ν) = 5 ρ(µ) = 8 ρ(; ) = 11ρ(O) = 3 ρ(C) = 6 ρ([ ) = 9 ρ(,) = 12

Es sei pi ∈ P die i-te Primzahl, dann sei die Abbildung

g : Σ+ → Ndefiniert durch

g(x1 . . . xn) = pρ(x1)1 · . . . · pρ(xn)

n

Kurt-Ulrich Witt Diskrete Mathematik • Lektion 6 6/28

Lektion 6: utm- und smn-Theorem

Anforderungen an BerechenbarkeitskonzepteGödelisierung von µRNummerierung von Putm-Theoremsmn-Theorem

Beispiele

id = π11

Es giltσ(id) = π|#|

undg(π|#|) = 24 · 31 · 52 · 71 = 8 400

d.h. der (µ-rekursiven Implementierung der) Funktion id wirddie Nummer 8 400 zugeordnet.

Kurt-Ulrich Witt Diskrete Mathematik • Lektion 6 7/28

Lektion 6: utm- und smn-Theorem

Anforderungen an BerechenbarkeitskonzepteGödelisierung von µRNummerierung von Putm-Theoremsmn-Theorem

Beispiele

1 = C[ν;O0

]Es gilt

σ(1) = C [ν;O]

und

g (C [ν;O]) = 26 · 39 · 55 · 711 · 113 · 1310

= 1 428 273 264 576 872 238 279 737 182 200 000

d.h. der (µ-rekursiven Implementierung der) Funktion 1 wird dieNummer

1 428 273 264 576 872 238 279 737 182 200 000

zugeordnet.Kurt-Ulrich Witt Diskrete Mathematik • Lektion 6 8/28

Lektion 6: utm- und smn-Theorem

Anforderungen an BerechenbarkeitskonzepteGödelisierung von µRNummerierung von Putm-Theoremsmn-Theorem

Nummerierung von µR

Durch die Funktionτ : µR → N

definiert durchτ = g ◦ ρ

werden den µ-rekursiven Funktionen (sehr große) Nummernzugeordnet.

Kurt-Ulrich Witt Diskrete Mathematik • Lektion 6 9/28

Lektion 6: utm- und smn-Theorem

Anforderungen an BerechenbarkeitskonzepteGödelisierung von µRNummerierung von Putm-Theoremsmn-Theorem

Umkehrung von τ

Die Funktion τ ist injektiv und damit umkehrbar.

Berechne zu einer Zahl n ∈ N, die die Nummer einerµ-rekursiven Funktion f ist, f = τ−1(n):

(1) Zerlege n in seine Primfaktoren

(2) Ordne diese der Größe nach

(3) Fasse gleiche Faktoren zu Potenzen zusammen

(4) Decodiere die Potenzen gemäß Codetabelle

Kurt-Ulrich Witt Diskrete Mathematik • Lektion 6 10/28

Lektion 6: utm- und smn-Theorem

Anforderungen an BerechenbarkeitskonzepteGödelisierung von µRNummerierung von Putm-Theoremsmn-Theorem

Umkehrung von τ

Die Funktion τ ist injektiv und damit umkehrbar.

Berechne zu einer Zahl n ∈ N, die die Nummer einerµ-rekursiven Funktion f ist, f = τ−1(n):

(1) Zerlege n in seine Primfaktoren

(2) Ordne diese der Größe nach

(3) Fasse gleiche Faktoren zu Potenzen zusammen

(4) Decodiere die Potenzen gemäß Codetabelle

Kurt-Ulrich Witt Diskrete Mathematik • Lektion 6 10/28

Lektion 6: utm- und smn-Theorem

Anforderungen an BerechenbarkeitskonzepteGödelisierung von µRNummerierung von Putm-Theoremsmn-Theorem

Umkehrung von τ

Die Funktion τ ist injektiv und damit umkehrbar.

Berechne zu einer Zahl n ∈ N, die die Nummer einerµ-rekursiven Funktion f ist, f = τ−1(n):

(1) Zerlege n in seine Primfaktoren

(2) Ordne diese der Größe nach

(3) Fasse gleiche Faktoren zu Potenzen zusammen

(4) Decodiere die Potenzen gemäß Codetabelle

Kurt-Ulrich Witt Diskrete Mathematik • Lektion 6 10/28

Lektion 6: utm- und smn-Theorem

Anforderungen an BerechenbarkeitskonzepteGödelisierung von µRNummerierung von Putm-Theoremsmn-Theorem

Umkehrung von τ

Die Funktion τ ist injektiv und damit umkehrbar.

Berechne zu einer Zahl n ∈ N, die die Nummer einerµ-rekursiven Funktion f ist, f = τ−1(n):

(1) Zerlege n in seine Primfaktoren

(2) Ordne diese der Größe nach

(3) Fasse gleiche Faktoren zu Potenzen zusammen

(4) Decodiere die Potenzen gemäß Codetabelle

Kurt-Ulrich Witt Diskrete Mathematik • Lektion 6 10/28

Lektion 6: utm- und smn-Theorem

Anforderungen an BerechenbarkeitskonzepteGödelisierung von µRNummerierung von Putm-Theoremsmn-Theorem

Beispiel

Beispiel:

172 821 065 013 801 540 831 848 199 046 200 000

Kanonische Faktorisierung:

26 · 39 · 55 · 711 · 115 · 1310

woraus sich mithilfe der Codetabelle die µ-rekursive Funktion

C [ν; ν]

ergibt.

Kurt-Ulrich Witt Diskrete Mathematik • Lektion 6 11/28

Lektion 6: utm- und smn-Theorem

Anforderungen an BerechenbarkeitskonzepteGödelisierung von µRNummerierung von Putm-Theoremsmn-Theorem

Totalisierung von τ−1

Die Funktion τ ist nicht surjektiv, d.h. ihre Umkehrung τ−1 istnicht total, d.h. es gibt Zahlen n ∈ N, die nicht Nummer einerµ-rekursiven Funktion sind.

Beispiele: alle Primzahlen größer als 5

30 hat die Faktorisierung 21 · 31 · 51, woraus sich gemäßCodetabelle die Zeichenkette ||| ergibt, die keine µ-rekursiveFunktion darstellt.

Kurt-Ulrich Witt Diskrete Mathematik • Lektion 6 12/28

Lektion 6: utm- und smn-Theorem

Anforderungen an BerechenbarkeitskonzepteGödelisierung von µRNummerierung von Putm-Theoremsmn-Theorem

Totalisierung von τ−1

Surjektive Ergänzung von τ−1:

Wähle irgendeine Funktion aus µR, z.B.

ω : N0 → N0

definiert durchω(n) =⊥

Es gilt Def (ω) = ∅ω ist µ-rekursiv, denn für

f = C[add ; C

[ν;π2

2

], π2

1

]gilt

ω = µ [f ]

(Übliche Notation: f (x , y) = ν(y) + x .)

Kurt-Ulrich Witt Diskrete Mathematik • Lektion 6 13/28

Lektion 6: utm- und smn-Theorem

Anforderungen an BerechenbarkeitskonzepteGödelisierung von µRNummerierung von Putm-Theoremsmn-Theorem

Totalisierung von τ−1

Total definierte Umkehrung der Funktion τ−1:

h : N→ µR

mit

h(i) =

{f , falls i ∈W (τ) und τ(f ) = iµ[C[add ; C

[ν;π2

2], π2

1]], sonst

Die Funktion τ stellt eine sogenannte Gödelisierung von µRdar.

Kurt-Ulrich Witt Diskrete Mathematik • Lektion 6 14/28

Lektion 6: utm- und smn-Theorem

Anforderungen an BerechenbarkeitskonzepteGödelisierung von µRNummerierung von Putm-Theoremsmn-Theorem

Gödelisierung

Mit Gödelisierung (Gödelnummerierung) bezeichnet man eine effektiveCodierung von Wörtern durch natürliche Zahlen. Im Allgemeinen ist für einAlphabet A eine Gödelnummerierung gegeben durch eine Abbildung(Gödelabbildung)

g : A∗ → N0

mit folgenden Eigenschaften:

(i) g ist injektiv, d.h. für x1, x2 ∈ A∗ mit x1 6= x2 ist g(x1) 6= g(x2).

(ii) g ist berechenbar.

(iii) Die Funktion χg : N0 → { 0, 1 } definiert durch

χg(n) =

(1, falls ein x ∈ A∗ existiert mit g(x) = n0, sonst

ist berechenbar.

(iv) g−1 ist berechenbar.

Kurt-Ulrich Witt Diskrete Mathematik • Lektion 6 15/28

Lektion 6: utm- und smn-Theorem

Anforderungen an BerechenbarkeitskonzepteGödelisierung von µRNummerierung von Putm-Theoremsmn-Theorem

Nummerierung von P

Nummerierungϕ : N0 → P

der partiell berechenbaren Funktionen:

ϕ(i) = f genau dann, wenn h(i) die Funktion f berechnet

Es ist also ϕ(i) = f genau dann, wenn f von der µ-rekursivenFunktion berechnet wird, die durch die Nummer i codiert ist.

Kurt-Ulrich Witt Diskrete Mathematik • Lektion 6 16/28

Lektion 6: utm- und smn-Theorem

Anforderungen an BerechenbarkeitskonzepteGödelisierung von µRNummerierung von Putm-Theoremsmn-Theorem

Nummerierung von P

µR

σ

Σ+

g

N0

τh

ϕP

Kurt-Ulrich Witt Diskrete Mathematik • Lektion 6 17/28

Lektion 6: utm- und smn-Theorem

Anforderungen an BerechenbarkeitskonzepteGödelisierung von µRNummerierung von Putm-Theoremsmn-Theorem

Nummerierung von P

µR

σ

Σ+

g

N0

τh

ϕP

Kurt-Ulrich Witt Diskrete Mathematik • Lektion 6 17/28

Lektion 6: utm- und smn-Theorem

Anforderungen an BerechenbarkeitskonzepteGödelisierung von µRNummerierung von Putm-Theoremsmn-Theorem

Nummerierung von P

µR

σ

Σ+

g

N0

τ

h

ϕP

Kurt-Ulrich Witt Diskrete Mathematik • Lektion 6 17/28

Lektion 6: utm- und smn-Theorem

Anforderungen an BerechenbarkeitskonzepteGödelisierung von µRNummerierung von Putm-Theoremsmn-Theorem

Nummerierung von P

µR

σ

Σ+

g

N0

τh

ϕP

Kurt-Ulrich Witt Diskrete Mathematik • Lektion 6 17/28

Lektion 6: utm- und smn-Theorem

Anforderungen an BerechenbarkeitskonzepteGödelisierung von µRNummerierung von Putm-Theoremsmn-Theorem

Nummerierung von P

µR

σ

Σ+

g

N0

τh

ϕP

Kurt-Ulrich Witt Diskrete Mathematik • Lektion 6 17/28

Lektion 6: utm- und smn-Theorem

Anforderungen an BerechenbarkeitskonzepteGödelisierung von µRNummerierung von Putm-Theoremsmn-Theorem

Nummerierung von P

µR

σ

Σ+

g

N0

τh

ϕP

Kurt-Ulrich Witt Diskrete Mathematik • Lektion 6 17/28

Lektion 6: utm- und smn-Theorem

Anforderungen an BerechenbarkeitskonzepteGödelisierung von µRNummerierung von Putm-Theoremsmn-Theorem

Nummerierung von P

µR

σ

Σ+

g

N0

τh

ϕP

Kurt-Ulrich Witt Diskrete Mathematik • Lektion 6 17/28

Lektion 6: utm- und smn-Theorem

Anforderungen an BerechenbarkeitskonzepteGödelisierung von µRNummerierung von Putm-Theoremsmn-Theorem

Nummerierung von P

id wird von h(8400) berechnet:

τ(π11) = 8400 h(8400) = π1

1 ϕ(8400) = id

µR

h

N08400 ∈ 3 id

π11 ∈

ϕP

τ

Kurt-Ulrich Witt Diskrete Mathematik • Lektion 6 18/28

Lektion 6: utm- und smn-Theorem

Anforderungen an BerechenbarkeitskonzepteGödelisierung von µRNummerierung von Putm-Theoremsmn-Theorem

Nummerierung von P

1 wird von h(1 428 273 264 576 872 238 279 737 182 200 000)berechnet:

τ(C [ν;O]) = 1 428 . . . h(1 428 . . .) = τ(C [ν; ν]) ϕ(1 428 . . .) = 1

µR

h

N01 428 . . . ∈ 3 1

C [ν;O] ∈

ϕP

τ

Kurt-Ulrich Witt Diskrete Mathematik • Lektion 6 19/28

Lektion 6: utm- und smn-Theorem

Anforderungen an BerechenbarkeitskonzepteGödelisierung von µRNummerierung von Putm-Theoremsmn-Theorem

Nummerierung von P

h(30) = µ[C[add ; C

[ν;π2

2

], π2

1

]]ϕ(30) = ω

µR

h

N030 ∈ 3 ω

µ[C[add ; C

[ν;π2

2], π2

1]]∈

ϕP

τ

Kurt-Ulrich Witt Diskrete Mathematik • Lektion 6 20/28

Lektion 6: utm- und smn-Theorem

Anforderungen an BerechenbarkeitskonzepteGödelisierung von µRNummerierung von Putm-Theoremsmn-Theorem

Nummerierung von P

Schreibweise:

ϕi = f

anstelle vonϕ(i) = f

um „doppelte Argumente“ zu vermeiden:

ϕi(x1, . . . , xk ) = f (x1, . . . , xk )

anstelle vonϕ(i)(x1, . . . , xk ) = f (x1, . . . , xk )

Kurt-Ulrich Witt Diskrete Mathematik • Lektion 6 21/28

Lektion 6: utm- und smn-Theorem

Anforderungen an BerechenbarkeitskonzepteGödelisierung von µRNummerierung von Putm-Theoremsmn-Theorem

Abstrakte Programmiersprache

(N0,P, ϕ):

N0 enthält alle Programme dieser Programmiersprache.

P enthält alle Fuktionen, die von Programmen dieserProgrammiersprache berechnet werden können.

ϕ ordnet jedem Programm (Syntax) seine Bedeutung(Semantik) zu.

Kurt-Ulrich Witt Diskrete Mathematik • Lektion 6 22/28

Lektion 6: utm- und smn-Theorem

Anforderungen an BerechenbarkeitskonzepteGödelisierung von µRNummerierung von Putm-Theoremsmn-Theorem

Abstrakte Programmiersprache

(N0,P, ϕ):

N0 enthält alle Programme dieser Programmiersprache.

P enthält alle Fuktionen, die von Programmen dieserProgrammiersprache berechnet werden können.

ϕ ordnet jedem Programm (Syntax) seine Bedeutung(Semantik) zu.

Kurt-Ulrich Witt Diskrete Mathematik • Lektion 6 22/28

Lektion 6: utm- und smn-Theorem

Anforderungen an BerechenbarkeitskonzepteGödelisierung von µRNummerierung von Putm-Theoremsmn-Theorem

Abstrakte Programmiersprache

(N0,P, ϕ):

N0 enthält alle Programme dieser Programmiersprache.

P enthält alle Fuktionen, die von Programmen dieserProgrammiersprache berechnet werden können.

ϕ ordnet jedem Programm (Syntax) seine Bedeutung(Semantik) zu.

Kurt-Ulrich Witt Diskrete Mathematik • Lektion 6 22/28

Lektion 6: utm- und smn-Theorem

Anforderungen an BerechenbarkeitskonzepteGödelisierung von µRNummerierung von Putm-Theoremsmn-Theorem

Abstrakte Programmiersprache

(N0,P, ϕ):

N0 enthält alle Programme dieser Programmiersprache.

P enthält alle Fuktionen, die von Programmen dieserProgrammiersprache berechnet werden können.

ϕ ordnet jedem Programm (Syntax) seine Bedeutung(Semantik) zu.

Kurt-Ulrich Witt Diskrete Mathematik • Lektion 6 22/28

Lektion 6: utm- und smn-Theorem

Anforderungen an BerechenbarkeitskonzepteGödelisierung von µRNummerierung von Putm-Theoremsmn-Theorem

Existenz einer universellen Funktion

Es sei (N0,P, ϕ) eine Nummerierung. Dann gibt es eineberechenbare Funktion uϕ ∈ P mit

uϕ(i , x) = ϕi(x)

uϕ heißt universelle Funktion von (N0,P, ϕ).

Da uϕ ∈ P ist,

existiert Funktion Uϕ ∈ µR, die alle µ-rekursivenFunktionen f ∈ µR berechnet: Uϕ(f , x) = f (x);existiert k ∈ N0 mit uϕ = ϕk , d.h. mit

ϕk (i , x) = uϕ(i , x) = ϕi(x)

Kurt-Ulrich Witt Diskrete Mathematik • Lektion 6 23/28

Lektion 6: utm- und smn-Theorem

Anforderungen an BerechenbarkeitskonzepteGödelisierung von µRNummerierung von Putm-Theoremsmn-Theorem

Existenz einer universellen Funktion

Es sei (N0,P, ϕ) eine Nummerierung. Dann gibt es eineberechenbare Funktion uϕ ∈ P mit

uϕ(i , x) = ϕi(x)

uϕ heißt universelle Funktion von (N0,P, ϕ).

Da uϕ ∈ P ist,

existiert Funktion Uϕ ∈ µR, die alle µ-rekursivenFunktionen f ∈ µR berechnet: Uϕ(f , x) = f (x);

existiert k ∈ N0 mit uϕ = ϕk , d.h. mit

ϕk (i , x) = uϕ(i , x) = ϕi(x)

Kurt-Ulrich Witt Diskrete Mathematik • Lektion 6 23/28

Lektion 6: utm- und smn-Theorem

Anforderungen an BerechenbarkeitskonzepteGödelisierung von µRNummerierung von Putm-Theoremsmn-Theorem

Existenz einer universellen Funktion

Es sei (N0,P, ϕ) eine Nummerierung. Dann gibt es eineberechenbare Funktion uϕ ∈ P mit

uϕ(i , x) = ϕi(x)

uϕ heißt universelle Funktion von (N0,P, ϕ).

Da uϕ ∈ P ist,

existiert Funktion Uϕ ∈ µR, die alle µ-rekursivenFunktionen f ∈ µR berechnet: Uϕ(f , x) = f (x);existiert k ∈ N0 mit uϕ = ϕk , d.h. mit

ϕk (i , x) = uϕ(i , x) = ϕi(x)

Kurt-Ulrich Witt Diskrete Mathematik • Lektion 6 23/28

Lektion 6: utm- und smn-Theorem

Anforderungen an BerechenbarkeitskonzepteGödelisierung von µRNummerierung von Putm-Theoremsmn-Theorem

Existenz einer universellen Funktion

Es sei (N0,P, ϕ) eine Nummerierung. Dann gibt es eineberechenbare Funktion uϕ ∈ P mit

uϕ(i , x) = ϕi(x)

uϕ heißt universelle Funktion von (N0,P, ϕ).

Da uϕ ∈ P ist,

existiert Funktion Uϕ ∈ µR, die alle µ-rekursivenFunktionen f ∈ µR berechnet: Uϕ(f , x) = f (x);existiert k ∈ N0 mit uϕ = ϕk , d.h. mit

ϕk (i , x) = uϕ(i , x) = ϕi(x)

Kurt-Ulrich Witt Diskrete Mathematik • Lektion 6 23/28

Lektion 6: utm- und smn-Theorem

Anforderungen an BerechenbarkeitskonzepteGödelisierung von µRNummerierung von Putm-Theoremsmn-Theorem

Beispiel für Parametrisierung (effektives Programmieren)

„Eingaben als Daten oder als Programme interpretieren“:

Beispiel: mult : N0 × N0 → N0 mit mult(x , y) = x · y .

Dann z.B. x = 5 und y = 3, also mult(3,5) möglich,

aber auch x = (a + b)2 und y = (c − d).

Damit ergibt sich die neue Funktion m : N40 → N0 definiert durch

m(a,b, c,d) = mult((a + b)2, (c − d)) = (a + b)2(c − d)

bzw.

m(a,b, c,d) = mult(sqr(add(a,b)),minus(c,d))

Kurt-Ulrich Witt Diskrete Mathematik • Lektion 6 24/28

Lektion 6: utm- und smn-Theorem

Anforderungen an BerechenbarkeitskonzepteGödelisierung von µRNummerierung von Putm-Theoremsmn-Theorem

Beispiel für Parametrisierung (effektives Programmieren)

Durch Funktionen als aktuelle Parameter wird also aus

mult = PRK[O1, C

[add ;π3

1, π33

]]die neue Funktion

m = C[mult ; C

[sqr ; C

[add ;π4

1, π42

]], C[minus;π4

3, π44

]]generiert.

Kurt-Ulrich Witt Diskrete Mathematik • Lektion 6 25/28

Lektion 6: utm- und smn-Theorem

Anforderungen an BerechenbarkeitskonzepteGödelisierung von µRNummerierung von Putm-Theoremsmn-Theorem

Allgemeines Prinzip der Parametrisierung

Es sei (N0,P, ϕ) eine Nummerierung. Dann gibt es für allei ∈ N0 sowie für alle (x1, . . . , xm) ∈ Nm

0 und (y1, . . . , yn) ∈ Nn0

eine total berechenbare Funktion s : Nm+10 → N0, so dass

ϕi(x1, . . . , xm, y1, . . . , yn) = ϕs(i,x1,...,xm)(y1, . . . , yn)

gilt.

Die Parameter x1, . . . , xm können als Programme interpretiertwerden. Die Funktion s generiert aus dem Progamm i und denProgrammen x1, . . . , xm das Programm s(i , x1, . . . , xm).

Wichtig: Dieser Generator existiert allgemein, d.h. für alle iund alle (x1, . . . , xm): s ∈ R (sogar s ∈ PR).

Kurt-Ulrich Witt Diskrete Mathematik • Lektion 6 26/28

Lektion 6: utm- und smn-Theorem

Anforderungen an BerechenbarkeitskonzepteGödelisierung von µRNummerierung von Putm-Theoremsmn-Theorem

Beispiel für Parametrisierung (effektives Programmieren)

Angewendet auf obiges Beispiel:i ist die Codierung der µ-rekursiven Funktion für mult

x1 die Codierung der µ-rekursiven Funktion fürC[sqr ; C

[add ;π4

1, π42]]

x2 die Codierung der µ-rekursiven Funktion fürC[minus;π4

3, π44]

y1 = a, y2 = b, y3 = c und y4 = dDie Funktion s würde dann aus den Codierungen von mult ,C[sqr ; C

[add ;π4

1, π42]]

und C[minus;π4

3, π44]

die Codierung vonm generieren.

Kurt-Ulrich Witt Diskrete Mathematik • Lektion 6 27/28

Lektion 6: utm- und smn-Theorem

Anforderungen an BerechenbarkeitskonzepteGödelisierung von µRNummerierung von Putm-Theoremsmn-Theorem

Beispiel für Parametrisierung (effektives Programmieren)

Angewendet auf obiges Beispiel:i ist die Codierung der µ-rekursiven Funktion für multx1 die Codierung der µ-rekursiven Funktion fürC[sqr ; C

[add ;π4

1, π42]]

x2 die Codierung der µ-rekursiven Funktion fürC[minus;π4

3, π44]

y1 = a, y2 = b, y3 = c und y4 = dDie Funktion s würde dann aus den Codierungen von mult ,C[sqr ; C

[add ;π4

1, π42]]

und C[minus;π4

3, π44]

die Codierung vonm generieren.

Kurt-Ulrich Witt Diskrete Mathematik • Lektion 6 27/28

Lektion 6: utm- und smn-Theorem

Anforderungen an BerechenbarkeitskonzepteGödelisierung von µRNummerierung von Putm-Theoremsmn-Theorem

Beispiel für Parametrisierung (effektives Programmieren)

Angewendet auf obiges Beispiel:i ist die Codierung der µ-rekursiven Funktion für multx1 die Codierung der µ-rekursiven Funktion fürC[sqr ; C

[add ;π4

1, π42]]

x2 die Codierung der µ-rekursiven Funktion fürC[minus;π4

3, π44]

y1 = a, y2 = b, y3 = c und y4 = dDie Funktion s würde dann aus den Codierungen von mult ,C[sqr ; C

[add ;π4

1, π42]]

und C[minus;π4

3, π44]

die Codierung vonm generieren.

Kurt-Ulrich Witt Diskrete Mathematik • Lektion 6 27/28

Lektion 6: utm- und smn-Theorem

Anforderungen an BerechenbarkeitskonzepteGödelisierung von µRNummerierung von Putm-Theoremsmn-Theorem

Beispiel für Parametrisierung (effektives Programmieren)

Angewendet auf obiges Beispiel:i ist die Codierung der µ-rekursiven Funktion für multx1 die Codierung der µ-rekursiven Funktion fürC[sqr ; C

[add ;π4

1, π42]]

x2 die Codierung der µ-rekursiven Funktion fürC[minus;π4

3, π44]

y1 = a, y2 = b, y3 = c und y4 = d

Die Funktion s würde dann aus den Codierungen von mult ,C[sqr ; C

[add ;π4

1, π42]]

und C[minus;π4

3, π44]

die Codierung vonm generieren.

Kurt-Ulrich Witt Diskrete Mathematik • Lektion 6 27/28

Lektion 6: utm- und smn-Theorem

Anforderungen an BerechenbarkeitskonzepteGödelisierung von µRNummerierung von Putm-Theoremsmn-Theorem

Beispiel für Parametrisierung (effektives Programmieren)

Angewendet auf obiges Beispiel:i ist die Codierung der µ-rekursiven Funktion für multx1 die Codierung der µ-rekursiven Funktion fürC[sqr ; C

[add ;π4

1, π42]]

x2 die Codierung der µ-rekursiven Funktion fürC[minus;π4

3, π44]

y1 = a, y2 = b, y3 = c und y4 = dDie Funktion s würde dann aus den Codierungen von mult ,C[sqr ; C

[add ;π4

1, π42]]

und C[minus;π4

3, π44]

die Codierung vonm generieren.

Kurt-Ulrich Witt Diskrete Mathematik • Lektion 6 27/28

Lektion 6: utm- und smn-Theorem

Anforderungen an BerechenbarkeitskonzepteGödelisierung von µRNummerierung von Putm-Theoremsmn-Theorem

Beispiel für Parametrisierung (effektives Programmieren)

Angewendet auf obiges Beispiel:i ist die Codierung der µ-rekursiven Funktion für multx1 die Codierung der µ-rekursiven Funktion fürC[sqr ; C

[add ;π4

1, π42]]

x2 die Codierung der µ-rekursiven Funktion fürC[minus;π4

3, π44]

y1 = a, y2 = b, y3 = c und y4 = dDie Funktion s würde dann aus den Codierungen von mult ,C[sqr ; C

[add ;π4

1, π42]]

und C[minus;π4

3, π44]

die Codierung vonm generieren.

Kurt-Ulrich Witt Diskrete Mathematik • Lektion 6 27/28

Lektion 6: utm- und smn-Theorem

Anforderungen an BerechenbarkeitskonzepteGödelisierung von µRNummerierung von Putm-Theoremsmn-Theorem

Kurt-Ulrich Witt Diskrete Mathematik • Lektion 6 28/28