Upload
nasnan
View
59
Download
0
Embed Size (px)
DESCRIPTION
Przyczynek do problemu Collatza. Andrzej Salwicki 24 lutego 2004. Historia problemu. Problem jest starszy ode mnie Wielu ludzi uważa się za autora problemu: Collatz, Kakutani, Erdos, Thwaite, ... Ustanowiono nagrody pieniężne za rozwiązanie problemu: 50$, 500$,1400$ i ... nic - PowerPoint PPT Presentation
Citation preview
Przyczynek do problemu Collatza
Andrzej Salwicki
24 lutego 2004
Historia problemu
• Problem jest starszy ode mnie
• Wielu ludzi uważa się za autora problemu: Collatz, Kakutani, Erdos, Thwaite, ...
• Ustanowiono nagrody pieniężne za rozwiązanie problemu: 50$, 500$,1400$ i ... nic
• strona J. Lagariasa www.cecm.sfu.ca/organics/papers/lagarias
Problem
Niech f będzie funkcją określoną w następujący sposób
Czy prawdą jest, że dla każdego n istnieje taka iteracja i funkcji f, że f i(n)=1 ?
ąnieparzystliczbąjestngdy13
parzystąliczbąjestngdy2div)(
n
nnf
Problem (ujęcie współczesne)
Czy prawdą jest, że następujący program P zatrzymuje sięP: while n1 do if even(n) then n:= n div 2 else n:=3*n+1 fi
done
dla każdej liczby naturalnej n>0?
Strona wyników
• łatwo uruchomimy ten program, stąd większa obecnie popularność drugiego sformułowania,
• strona Rosendaala zawiera wiele rekordów obliczeń dla problemu Collatza:personal.computrain.nl/eric/wondrous/np. program P zatrzymuje się dla wszystkich n<258 (luty 2004)
Mój przyczynek
• Arytmetyka Peano nie zawiera twierdzenia:„program P zatrzymuje się dla każdej liczby naturalnej n”– ponieważ własność stopu tego programu nie jest
wyrażalna w języku arytmetyki Peano
– ale... wiele programów ma formuły stopu będące formułami aytmetyki.
Spostrzeżenie
• program P nie musi wykonywać mnożeń ani dzieleń, 3*n = n+n+n n jest parzyste (y) y+y=n n div 2 =y y+y=n
• obliczenia można przeprowadzać w niestandardowym modelu arytmetyki liczb naturalnych z dodawaniem
Model niestandardowy M1
• Rozważamy system <U, o, i, +> w którym uniwersum U jest zbiorem par <k, w> ZQ+ , takich, że w=0 k0 ,
• dodawanie jest określone „po współrzędnych”<k,w>+ <k’,w’> =df <k+k’, w+w’>
• o =df <0, 0>
• i =df <1, 0>
Przyjmując naturalną definicję mniejszości x<y ( z) x+z+i=y
dostrzegamy, że liczby naturalne czyli pary <k, 0> są
mniejsze od elementów niestandardowych tego modelu.
<k,0> < <l,w> bo <k,0>+<l-k-1,w>+<1,0> = <l,w>
Obliczenie programu P w M1
Niech w będzie liczbą wymierną 0. Para <0,w> jest liczbą parzystą, <0,w>=<0,w/2>+<0, w/2>.
Obliczenie programu P dla n=<0, w> jest więc nieskończone.
Można zauważyć, że dla każdej pary <k,w>, w 0, obliczenie programu P jest nieskończone bo nie można osiągnąć elementu i=<1,0>.
A więc dla każdego elementu niestandardowego program P ma obliczenie nieskończone !
Wniosek
Elementarna teoria liczb naturalnych z dodawaniem nie zawiera twierdzenia o zatrzymywaniu się programu P.
Nie oznacza to, że hipoteza Collatza jest fałszywa. Jeśli program P zatrzymuje się dla każdej liczby naturalnej n, to w języku arytmetyki z dodawaniem nie ma formuły stopu dla programu P. Gdyby taka formuła istniała i była twierdzeniem to program musiałby zatrzymywać się także w modelach niestandardowych dla każdego elementu modelu.
Czy mnożenie pomoże? Nie.Można wykazać, że istnieje taki niestandardowy model arytmetyki Peano w którym program P ma obliczenie nieskończone.
Arytmetyka Peano Teoria liczb naturalnych z dodawaniem i mnożeniem.
Ax1) (x) x+1 0
Ax2) x+1=y+1 x=y
Ax3) x+0=x
Ax4) x+(y+1)= (x+y)+1
Ax5) x*0 = 0
Ax6) x*(y+1) = x*y + x
Axind) ((x/0) (x)((x)(x/x+1)) (x)(x))
w tym schemacie indukcji wyrażenie jest dowolną formułą w której jako symbole pozalogiczne występują tylko 0, 1, +, * i =.
Niestandardowy model M2
Zbudujemy nieskończony ciąg teorii {Ti}. Teoria T0 to arytmetyka Peano. Język teorii T1 to rozszerzenie języka teorii T0 o nową stałą 1. Aksjomaty teorii T1 zawierają wszystkie aksjomaty teorii T0, formułę (Ey) y+y= 1 oraz nieskończony zbiór formuł postaci
0< 1 , 1< 1 , 2< 1 , ...
Teoria T1 jest niesprzeczna i posiada model.[AG str.264]
Załóżmy, że dla j<i teoria Tj jest niesprzeczna. Określamy teorię Ti w następujący sposób:
- język teorii Ti jest wzbogacony o stałą i ,
Niestandardowy model M2 II
Aksjomatami teorii Ti są wszystkie aksjomaty teorii Ti, a ponadto formuła (Ey)y+y= i oraz nieskończony zbiór formuł postaci
0< i , 1< i , 2< i , ...
Lemat Teoria Ti jest niesprzeczna i posiada model.
W dowodzie wykorzystujemy własność zwartości: wystarczy wykazać, że każdy skończony podzbiór zbioru aksjomatów teorii Ti jest niesprzeczny by uzyskać niesprzeczność całego zbioru.
Niestandardowy model M2 III
Jako model zbioru Z weźmiemy standardowy model liczb naturalnych z dodawaniem i mnożeniem, trzeba tylko określić znaczenie występujących w nim stałych i.
Niech n0 będzie największym liczebnikiem występującym w formułach zbioru Z. Niech k będzie najwyższym wskażnikiem stałej k występujacej w zbiorze Z. Jako
znaczenie tej stałej wystarczy przyjąć liczbę p parzystą większą niż n0. Kładziemy dalej k-1 = 2*p, k-2 =4*p, ...
0 =2k*p. W ten sposób stworzyliśmy model dla dowolnie wybranego podzbioru Z zbioru aksjomatów teorii Ti. A więc teoria ta jest niesprzeczna.
Niestandardowy model M2 IV
LematTeoria T = i N Ti jest niesprzeczna i posiada model, oznaczmy go przez M2.
Fakt
Obliczenie programu P wykonywanego w modelu M2 dla n= 1 jest nieskończone.
(meta)Twierdzenie
Zbiór twierdzeń Arytmetyki Peano nie zawiera formuły wyrażającej własność stopu programu P.
Pytanie
• Czy tu nie ma sprzeczności z faktem, że w Arytmetyce Peano można zapisać własność liczba w jest kodem skończonego ciągu liczb s1, ... ,sn, który to ciąg reprezentuje obliczenie programu?
Dwie odpowiedzi• Nie, semantyka programów z instrukcją while jest
dana a priori tak jak pojęcie spełniania(prawdy). Tam jednak stosujemy liczby naturalne standardowe. Chcę o tym powiedzieć parę słow póżniej.
• Można pójść tropem tej formuły i zbudować semantykę programów while w oparciu o nią. Będzie to niestandardowa logika dynamiczna (zob. I. Nemeti, H. Andreka, I. Sain). A nasz program P zawsze się zatrzyma, tyle, że po pewnej niestandardowej liczbie kroków. No i ?
Języki teorii algorytmicznych
Trzy (a nie dwa) zbiory wyrażeń poprawnie zbudowanych:
• termy • formuły• programy
zbiór formuł zawiera formuły pierwszego rzędu, a ponadto formuły algorytmiczne w trzech smakach:
K „po wykonaniu programu K zachodzi ”
K „istnieje iteracja K taka, że ”
K „dla każdej iteracji K zachodzi ” gdzie K jest programem a jest formułą algorytmiczną
Pojęcie spełnialności
• Jak zwykle, ponadto pojęcie znaczenia programu jako funkcji ze zbioru W wartościowań w zbiór W (można nieco inaczej podając pojęcie obliczenia)
• Niech v, v’ będą wartościowaniami zmiennych. Znaczeniem programu [x :=t] jest funkcja [x:=t]A przyporządkowująca wartościowaniu v wartościowanie v’ takie, że v’(z)= v(z) dla z <>x i v’(x) = tA(v)
Programy
• Def. pojęcia programu
Formuła stopu
• Program formuła stopu K halt(K)
• DefinicjaFormuła wyraża własność stopu programu K: obliczenie programu K w systemie M i dla stanu początkowego v jest skończone M(v)=true
Tabela
Program Zatrzymuje się? Formuła stopuw jęz. 1 rzędu
N tak nie istn.
P ? ? (nie)
PF4 nie istnieje
G ? istnieje
1
2
4
8
16
32
64
128
256
512
1024
2048
4096
8192
16384
32768
5
21
85
341
...
682
170
340
680 113
42
84
168
336
672
10
20
4080
160
320
6401280
2560
5120
3
13
26
52