...

Quante sono le funzioni calcolabili?

by user

on
Category: Documents
6

views

Report

Comments

Transcript

Quante sono le funzioni calcolabili?
- Quante sono le funzioni aritmetiche (Nn → N)?
- Quante sono le funzioni calcolabili?
Le basi teoriche dell’IA: Teoria della computabilità - 3
Trasparenza #1
öö ô
ô
öö ô
ô
ô
öö ô
Le basi teoriche dell’IA: Teoria della computabilità - 3
Trasparenza #2
öö
öö
öö
1
2
3
4
5
6
Le basi teoriche dell’IA: Teoria della computabilità - 3
ô
ô
ôô
ô
ô
1
2
3
4
5
6
Trasparenza #3
öö ô
ô
öö ô
ô
ô
öö ô
Le basi teoriche dell’IA: Teoria della computabilità - 3
Trasparenza #4
Definizione - A si dice equipotente a B (A ≈ B) sse esiste ϕ biiettiva ϕ: A → B
Definizione - Se A e B sono equipotenti si dice che hanno stessa cardinalità o lo stesso numero
cardinale (in simboli Card(A) = Card(B))
Definizione - Se A è equipotente a un sottoinsieme di B (se cioè esiste ϕ iniettiva ϕ: A → B) si
dice che la cardinalità di A è minore o uguale a quella di B (in simboli Card(A) ≤ Card(B)).
Se A è finito: Card(A) = n (dove n è il numero di elementi di A)
Chiamiamo infinito qualunque insieme che si può porre in corrispondenza biunivoca con una sua
parte propria; finito altrimenti
Le basi teoriche dell’IA: Teoria della computabilità - 3
Trasparenza #5
Insiemi numerabili
Definizione - A si dice numerabile sse può essere posto in corrispondenza biunivoca con N
ossia: sse esiste ϕ biiettiva ϕ: N → A (oppure sse esiste ψ biiettiva ψ: A → N)
Quindi: se A è numerabile, i suoi elementi possono essere disposti in una successione infinita
senza ripetizioni (e viceversa).
Le basi teoriche dell’IA: Teoria della computabilità - 3
Trasparenza #6
Sono numerabili ad esempio:
- l’insieme dei numeri naturali pari
- l’insieme dei numeri dispari
- l’insieme delle potenze di 2
- l’insieme dei numeri primi (tutti sottoinsiemi propri di N)
Infatti:
0, 2, 4, 6, 8, 10, 12, 14, 16,......
1, 3, 5, 7, 9, 11, 13, 15, 17,......
1, 2, 4, 8, 16, 32, 64, 128, 256,......
2, 3, 5, 7, 11, 13, 17, 19, 23, 29,......
Anche l’insieme Z dei numeri interi relativi è numerabile:
0, +1, –1, +2, –2, +3, –3, +4, –4,......
Le basi teoriche dell’IA: Teoria della computabilità - 3
Trasparenza #7
Sia A0, A1, A2,..., An,... una successione infinita di insiemi numerabili
La loro unione è a sua volta numerabile:
A0
a 00 ,
a01 ,
a 02 ,
a 03 ,
a04 ,
…
A1
a 10 ,
a11 ,
a 12 ,
a 13 ,
a14 ,
…
A2
a 20 ,
a21 ,
a 22 ,
a 23 ,
a24 ,
…
A3
a 30 ,
a31 ,
a 32 ,
a 33 ,
a34 ,
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
Le basi teoriche dell’IA: Teoria della computabilità - 3
Trasparenza #8
Sia A0, A1, A2,..., An,... una successione infinita di insiemi numerabili
La loro unione è a sua volta numerabile:
A0
a 00 ,
a01 ,
a 02 ,
a 03 ,
a04 ,
…
A1
a 10 ,
a11 ,
a 12 ,
a 13 ,
a14 ,
…
A2
a 20 ,
a21 ,
a 22 ,
a 23 ,
a24 ,
…
A3
a 30 ,
a31 ,
a 32 ,
a 33 ,
a34 ,
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
Le basi teoriche dell’IA: Teoria della computabilità - 3
Trasparenza #9
Analogamente, il prodotto cartesiano di due insiemi numerabili è un insieme numerabile
Si dimostra anche che:
l’insieme di tutte le n-ple di elementi di un insieme numerabile A è numerabile
Infatti:
2
A è numerabile
3
2
A = A × A è numerabile
…
k+1
k
A
= A × A è numerabile
…
i
L’unione di tutti gli A è numerabile
(perché è una successione infinita di insiemi numerabili)
Le basi teoriche dell’IA: Teoria della computabilità - 3
Trasparenza #10
Linguaggio L:
- alfabeto A (finito o numerabile)
- insieme E di espressioni (stringhe finite di elementi dell’alfabeto)
L’insieme E delle espressioni di un linguaggio è finito o numerabile
Le basi teoriche dell’IA: Teoria della computabilità - 3
Trasparenza #11
Insiemi più che numerabili
- L’insieme G costituito da tutte le successioni di 0 e 1 è più che numerabile
per assurdo:
ϕ(0)
ϕ(1)
ϕ(2)
ϕ(3)
ϕ(4)
ϕ(5)
….
0
1
0
1
1
1
…
1
0
1
1
1
1
…
Le basi teoriche dell’IA: Teoria della computabilità - 3
1
1
1
0
1
0
…
0
0
1
0
0
0
…
0
1
1
1
1
0
…
1
1
0
0
0
1
…
…
…
…
…
…
…
…
Trasparenza #12
Insiemi più che numerabili
- L’insieme G costituito da tutte le successioni di 0 e 1 è più che numerabile
per assurdo:
ϕ(0)
ϕ(1)
ϕ(2)
ϕ(3)
ϕ(4)
ϕ(5)
….
0
1
0
1
1
1
…
1
0
1
1
1
1
…
Le basi teoriche dell’IA: Teoria della computabilità - 3
1
1
1
0
1
0
…
0
0
1
0
0
0
…
0
1
1
1
1
0
…
1
1
0
0
0
1
…
…
…
…
…
…
…
…
Trasparenza #13
Insiemi più che numerabili
- L’insieme G costituito da tutte le successioni di 0 e 1 è più che numerabile
per assurdo:
ϕ(0)
ϕ(1)
ϕ(2)
ϕ(3)
ϕ(4)
ϕ(5)
….
0
1
0
1
1
1
…
1
0
1
1
1
1
…
1
1
1
0
1
0
…
0
0
1
0
0
0
…
0
1
1
1
1
0
…
1
1
0
0
0
1
…
…
…
…
…
…
…
…
1 1 0 1 0 0 …..
Le basi teoriche dell’IA: Teoria della computabilità - 3
Trasparenza #14
- L’insieme R dei numeri reali è più che numerabile
per assurdo:
ϕ(0)
ϕ(1)
ϕ(2)
ϕ(3)
ϕ(4)
ϕ(5)
….
0,
0,
0,
0,
0,
0,
5
9
0
1
1
7
…
3
2
5
1
7
7
…
8
3
8
6
5
4
…
6
3
3
3
0
0
…
3
1
1
9
5
0
…
1
4
0
4
0
1
…
…
…
…
…
…
…
…
- se ≠ 5 ⇒ 5
- altrimenti 8
8 5 5 5 8 5 ….
Le basi teoriche dell’IA: Teoria della computabilità - 3
Trasparenza #15
- L’insieme P(N) dei sottoinsiemi di N è più che numerabile
Si definisce una funzione biiettiva ϕ: P(N) → G:
A = {3, 5, 9, 12}
B = {0, 2, 4, 6, 8,...}
C = {1, 2, 4, 8, 16,...}
ϕ(A) = 0,0,0,1,0,1,0,0,0,1,0,0,1,0,0,0,0,....
ϕ(B) = 1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,....
ϕ(C) = 0,1,1,0,1,0,0,0,1,0,0,0,0,0,0,0,1,0,0,...
n
- L’insieme Φ delle funzioni di tipo N → N è più che numerabile
(appartengono a Φ le funzioni caratteristiche di tutti i sottoinsiemi di N)
Le basi teoriche dell’IA: Teoria della computabilità - 3
Trasparenza #16
Insiemi numerabili
Insiemi più che numerabili
Insieme N dei numeri naturali
Insieme R dei numeri reali
Insieme I dei numeri irrazionali
Insiemi P e D dei numeri pari e dispari
Insieme dei punti di una retta
Insieme Q dei numeri quadrati
Insieme dei numeri primi
Insieme dei punti di un segmento
Insieme delle potenze di 2
Insieme dei punti di un quadrato
Insieme Z dei numeri interi
Insieme dei punti di un cubo
Insieme delle frazioni
Insieme P(N) potenza di N
Insieme Q dei numeri razionali
Insieme delle proprietà di N
Insieme delle relazioni in N
Insieme S delle successioni di 0 e 1
costituite da 0 da un certo punto in poi
Insieme F delle n-ple di numeri naturali Insieme G delle successioni di 0 e 1
Insieme delle espressioni di un
Insieme Φ delle funzioni di tipo
linguaggio
N→N
Insieme prodotto cartesiano di due
Insieme delle funzioni continue di
insiemi numerabili
tipo R → R
Le basi teoriche dell’IA: Teoria della computabilità - 3
Trasparenza #17
“Incalcolabilità” della calcolabilità
L’insieme di tutti gli algoritmi è numerabile (v. sopra)
n
Quindi: l’insieme delle funzioni aritmetiche (di tipo N → N) che sono calcolabili per mezzo
di un algoritmo è numerabile
n
L’insieme di tutte le funzioni di tipo N → N è più che numerabile (v. sopra)
Quindi:
n
Esistono infinite funzioni aritmetiche (di tipo N → N)
che non sono calcolabili per mezzo di un algoritmo
Le basi teoriche dell’IA: Teoria della computabilità - 3
Trasparenza #18
Perché le funzioni parziali?
l’insieme delle funzioni aritmetiche a un argomento (di tipo N → N) totali che sono
calcolabili per mezzo di un algoritmo è numerabile
quindi:
l’insieme ∆ degli algoritmi che calcolano funzioni aritmetiche a un argomento
(di tipo N → N) totali è numerabile
quindi:
esiste una funzione biettiva ϕ: N → ∆
Le basi teoriche dell’IA: Teoria della computabilità - 3
Trasparenza #19
ma:
ϕ non è computabile
ϕ(1) = Alg1
ϕ(2) = Alg2
ϕ(3) = Alg3
…
Sia la funzione ϕi (a un argomento) calcolata da Algi
Quindi ϕ enumera (con ripetizioni) tutte di tipo N → N totali:
ϕ(1) → ϕ1
ϕ(2) → ϕ2
ϕ(3) → ϕ3
…
Le basi teoriche dell’IA: Teoria della computabilità - 3
Trasparenza #20
per assurdo: assumiamo che ϕ sia computabile
ne segue che la funzione:
f(x) = ϕx(x) + 1
è computabile:
inizio
prendi in input x
a partire da x
ottieni Algx
dai x in input ad Algx ed
esegui
il calcolo – metti in y
l’output che ottieni
aggiungi 1 a y
produci in output y
fine
Le basi teoriche dell’IA: Teoria della computabilità - 3
Trasparenza #21
ma f è diversa da ogni ϕi:
0
1
2
3
4 .....
ϕ0 ϕ0(0) ϕ0(1) ϕ0(2) ϕ0(3) ϕ0(4) .....
ϕ1 ϕ1(0) ϕ1(1) ϕ1(2) ϕ1(3) ϕ1(4) .....
ϕ2 ϕ2(0) ϕ2(1) ϕ2(2) ϕ2(3) ϕ2(4) .....
ϕ3 ϕ3(0) ϕ3(1) ϕ3(2) ϕ3(3) ϕ3(4) .....
....
....
.....
.....
.....
.....
.....
.....
.....
.....
.....
.....
.....
.....
Infatti se, secondo l’ipotesi d’assurdo, supponessimo che, per qualche k, f = ϕk, si avrebbe:
f (k) = ϕk(k) = ϕk(k) + 1
Le basi teoriche dell’IA: Teoria della computabilità - 3
Trasparenza #22
l’insieme delle funzioni aritmetiche a un argomento (di tipo N → N) parziali che sono
calcolabili per mezzo di un algoritmo è numerabile
quindi:
esiste una funzione biettiva ϕ: N → ∆
nel caso di funzioni parziali però ϕ può essere computabile
infatti:
f (k) = ϕk(k) = ϕk(k) + 1
non è una contraddizione se ϕk(k) = ⊥
Le basi teoriche dell’IA: Teoria della computabilità - 3
Trasparenza #23
inizio
prendi in input x
a partire da x
ottieni Algx
dai x in input ad Alg x ed
esegui
il calcolo – metti in y
l’output che ottieni
aggiungi 1 a y
produci in output y
fine
Le basi teoriche dell’IA: Teoria della computabilità - 3
Trasparenza #24
inizio
prendi in input x
prendi in input x
a partire da x
ottieni Algx
a partire da x
ottieni Alg x
dai x in input ad Alg x ed
esegui
il calcolo – metti in y
l’output che ottieni
dai x in input ad Algx ed
esegui
il calcolo – metti in y
l’output che ottieni
aggiungi 1 a y
aggiungi 1 a y
produci in output y
produci in output y
fine
Le basi teoriche dell’IA: Teoria della computabilità - 3
Trasparenza #25
inizio
prendi in input x
prendi in input x
prendi in input x
a partire da x
ottieni Algx
a partire da x
ottieni Alg x
a partire da x
ottieni Algx
dai x in input ad Alg x ed
esegui
il calcolo – metti in y
l’output che ottieni
dai x in input ad Algx ed
esegui
il calcolo – metti in y
l’output che ottieni
dai x in input ad Alg x ed
esegui
il calcolo – metti in y
l’output che ottieni
aggiungi 1 a y
aggiungi 1 a y
aggiungi 1 a y
produci in output y
produci in output y
produci in output y
fine
Le basi teoriche dell’IA: Teoria della computabilità - 3
Trasparenza #26
Fly UP