28.6.06

Frege a Fitzcarraldo (z teoriomnogościową definicją funkcji w tle)

Jeżeli tropikalne upały, które nawiedziły ostatnio Warszawę, spędza się czytając dzieła semantyczne Fregego (w tłumaczeniu Wolniewicza), nie ma co się dziwić, że skojarzenia ma się co najmniej dziwne. Dlatego nie dziwiłem się wcale, że Frege zaczął mi się kojarzyć przede wszystkim z filmem Fitzcarraldo Wernera Herzoga, z Klausem Kinskym i Claudią Cardinale.



Fitzcarraldo opowiada, jak niektórzy może wiedzą, o miłośniku opery opętanym myślą o wybudowaniu opery z prawdziwego zdarzenia w Iquitos, który aby zdobyć pieniądze na realizację swojego szalonego przedsięwzięcia stara się m.in. przetransportować parostatek przez górę w dżungli, w celu wytyczenia nowej drogi transportu kauczuku. Całość kończy się (jak można było przewidzieć) efektowną katastrofą (Fitzcarraldo nie dogaduje się z Indianami, którzy widzą w statku narzędzie realizacji swojego proroctwa religijnego, więc odcinają go z cum i dryfują w kierunku wielkiego wodospadu), jednak Fitzcarraldo ma jeszcze tyle pieniędzy, aby sprowadzić Caruso i resztę ekipy aby zaśpiewali na łódkach dla niego -- mamy więc happy end. Pikanterii całemu filmowi dodaje fakt, że Herzog bardzo nie lubił efektów specjalnych i na potrzeby filmu zużył dwa parostatki, z czego jeden faktycznie przeniósł przez górę, a drugi puścił z prądem przez wodospad (cały czas filmując w środku).

Dlaczego akurat z tym filmem mi się Frege skojarzył? Frege starał się zrobić coś, co na pierwszy rzut oka (na drugi zresztą też) wydaje się być nieco szalone: stworzyć ideografię, która pozwoliłaby mu zapisywać myśli (tzn. chodzi o to, aby zdania zapisane za pomocą tejże ideografii posiadały tylko jeden określony sens). Nie sądzę, aby ten cel udało mu się w pełni zrealizować (o niedostatkach liniowo uporządkowanych kwantyfikatorów pisze np. Hintikka), jednakże to właśnie dzięki Fregemu logika europejska wyrwała się z okowów sylogistyki, dając Gottlobowi zasłużone miejsce w panteonie obok Arystotelesa, Gödla i Tarskiego. Czyli poniekąd sytuacja podobna do filmu Herzoga: jest happy end, ale na nieco mniejszą skalę niż chciałby główny bohater (pomińmy fakt, że Frege swojego happy endu się nie doczekał).

Gottlob Frege

Za życia Frege był dość mocno niedoceniony (na jego zaawansowane wykłady z ideografii logicznej uczęszczały trzy osoby: Carnap, kolega Carnapa i pewien niewymieniony z nazwiska emerytowany wojskowy), zdarzały mu się też niezłe gafy, jak polemika z nieżyjącym oponentem, Brunonem Kerrym.

Uważany za jednego z ojców założycieli filozofii analitycznej, w niektórych jego pismach nie brak fragmentów całkiem ładnych literacko i wręcz poetyckich, jak na przykład w artykule Myśl. Studium logiczne. Leciutki żar mistyczny da się odczuć, gdy pisze on o Trzecim Królestwie (czyli, mówiąc po ludzku, platońskim niebie).

Wreszcie, miałem pewną zagwozdkę z analizą następującego fragmentu artykułu Co to jest funkcja? (1904):
Osobliwości znaków funkcyjnych, zwanej przez nas nienasyceniem, odpowiada naturalnie coś w samych funkcjach. Je także można nazwac nienasyconymi, pokreślając tym samym ich zasadniczą odmienność od liczb. Nie jest to oczywiście definicja, bo żadnej definicji podać się nie da.

Chciałoby się rzec, że tutaj wielki Frege najzwyczajniej w świecie źle przewidział, bo obecnie byle student filozofii po logice 1 jest w stanie podać teoriomnogościową definicję funkcji jako zbioru par uporządkowanych spełniających warunek jednoznaczności. Przeszukawszy Internet, przeczytałem jednak, że nowoczesną definicję funkcji mieli podać niezależnie Dirichlet i Łobaczewski, w pierwszej połowie XIX wieku. Czyżby Frege aż tak nie zdãżał?

Dalsze poszukiwania dowiodły jednak, że to Wikipedia słabo zdãża. Definicja Dirichleta z 1937 roku jest dość problematyczna (za tym artykułem):
If a variable y is so related to a variable x that whenever a
numerical value is assigned to x, there is a rule according to which a
unique value of y is determined, then y is said to be a function of the
independent variable x.

Cały problem ukrywa się w niewinnym, zdawałoby się, sformułowaniu a rule according to which. Jaka ma być ta zasada? Co to jest zasada? Czy ma ona być obliczalna, czy...? Definicja jest co najmniej problematyczna.

Jak się okazuje, w XIX-wiecznej matematyce była cała wielka dyskusja na temat definicji funkcji. Szukano ,,naturalnej'' definicji funkcji, wszystkie jednak definicje okazywały się za wąskie -- udawało się wymyślić dla nich odpowiedniego potworka.

Nie udało mi się znaleźć, kto w końcu sformułował teoriomnogościową definicję funkcji. W jednym artykule podaje się jako autora Patryka Suppesa, jednak mi się wydaje dość mocno podejrzane, żeby dokonano tego dopiero w 1960 roku. Pytanie to mnie zafrapowało do tego stopnia, że aż wysłałem w tej sprawie list do Pryncypała...

Wracając zaś do Fregego: może się pomylił, ale był to błąd poniekąd wybitny... NIe powinniśmy mieć o to do niego pretensji, tak jak nie będziemy mieli pretensji do adherentów róznych hipotez odnośnie do problemu P vs NP, jak (jeśli) kiedyś wreszcie zostanie rozwiązany.

edit@29/06/2006 11:35: w odpowiedzi na mojego mejla z pytanie o pochodzenie definicji funkcji Pryncypał napisał:
Zgodnie z moim rozeznaniem takie pojęcie funkcji niewątpliwie pojawia się w
Principia Mathematica i bardzo możliwe, że pochodzi od Russella.

Nawiasem mówiąc podane określenie Łobaczewskiego jest zgodne z tym
rozumieniem funkcji.

Póki co jestem uziemiony (nie poświęcę egzaminu z filozofii analitycznej aby jechać przeglądać Principia, a wersja oferowana przez Gógla do przeglądania jest okrojona), więc odwołanie się do autorytetu Pryncypała musi szanownym czytelnikom wystarczyć.

25.6.06

O polskiej recepcji Wittgensteina

W najbliższy piątek mam egzamin z filozofii analitycznej i w związku z tym czytam sobie Dociekania filozoficzne Ludwiczka W. Ku mojemu zaskoczeniu, czynność ta okazała się dość irytująca, a to z powodu tłumaczenia (Bogusława Wolniewicza). Nie chodzi tu o jakieś błędy językowe — język jest bardzo ładny. Ani o konstrukcję zdań — czyta się bardzo dobrze (nie ma się wrażenia wyrwy czasoprzestrzennej między kropką a początkiem następnego zdania, jak w przekładach Czcigodnego Chwedona). O cóż więc chodzi? Pozwolę sobie na cytat:

20. Ale teraz wydaje się, że gdy ktoś powiada: ,,Przynieś mi płytę!”, to mógłby przecież rozumieć to wyrażenie jako jeden długi wyraz: odpowiednio do pojedynczego wyrazu ,,Płyta!”. —– Czy można je zatem rozumieć raz jako jeden wyraz, a raz jako cztery? A jak rozumie się je zazwyczaj? —– Sądzę, że tutaj skłonni bylibyśmy rzec: jako złożone z czterech wyrazów rozumiemy to zdanie wtedy, gdy używamy go w opozycji do innych zdań, takich jak: ,,Podaj mi płytę”, ,,Podaj mu płytę”, ,,Przynieś dwie płyty” itd., a więc w przeciwieństwie do zdań, które zawierają słowa naszego rozkazu w innych połączeniach.

Kursywa jest wittgensteinowska, pogrubienie jest moje. Powstaje zagadka filozoficzna: dlaczego Ludwik, do jasnej anielki, chce rozpatrywać zdanie trzywyrazowe raz jako jeden wyraz, a raz jako cztery?

Oczywiście, jest to pomyłka tłumacza: w wersji angielskiej jest ,,Bring me a slab”, które ewidentnie składa się z czterech wyrazów (po niemiecku, o ile się orientuję, zapewne również). Niby nie jest to duża pomyłka, bo z kontekstu sens da się jak najbardziej wyłapać. Z drugiej jednak strony, od tłumacza dowolnego tekstu (a szczególnie — filozoficznego) oczekujemy, że będzie go czytał ze zrozumieniem. Tutaj ten warunek niestety okazuje się nie być spełniony. Pomyślcie sobie jeszcze, że zanim Dociekania trafiły w moje łapki, ktoś je przejrzał, korektę przeszły… I nic nikt nie zauważył!

Teraz, tłumaczem dwóch najważniejszych (i chyba najpowszechniej czytanych) dziełek Wittgensteina jest ta sama osoba — Bogusław Wolniewicz. Podejrzewam, że większość polskich filozofów miała do czynienia głównie z tłumaczeniem. W tłumaczeniu znajdujemy takie kwiatki już na najniższym poziomie treściowym (niżej to jest już chyba tylko syntaktyka). Pytanie — co może się dziać wyżej, w tzw. trudniejszych kawałkach?

Nie chcę krakać, ale polska recepcja Wittgensteina może być dość… hm, specyficzna.

11.6.06

Głupie problemy z liczbą 2

Wyobraźmy sobie, że ktoś ma głupi problem związany z liczbą 2: chce wiedzieć, jaka jest ostatnia cyfra (w zapisie dziesiętnym, rzecz jasna, bo w binarnym to chyba oczywiste) 2217 (2, do potęgi dwa do siedemnastej). Czy można mu jakoś szybko udzielić odpowiedzi na to dziwne pytanie?

Trywialnym sposobem rozwiązania tego problemu wydaje się po prostu napisać program, który policzy nam 2217 i powiedzenie delinkwentowi ostatniej cyfry. Czasem jednak będziemy daleko od komputera. Co wtedy? Strzelać? Szanse mamy jedną na cztery: potęga dwójki nie będzie nieparzysta, nie będzie też się kończyć na 0 (wtedy byłaby podzielna przez pięć), zostają nam zatem 2, 4, 6, 8

Nie ma po co strzelać, bo odpowiedź jest bardzo prosta: 6. Jak ktoś nie wierzy, może sprawdzić tutaj (uwaga, jest to ponad 39 tysięcy cyfr!). I będzie to również prawdą nie tylko dla 2217, ale również dla dowolnej liczby postaci 22n, przy założeniu, że n>1. Dlaczego?

22n = 22n-1·2 = (22)2n-1, co jest równe 42n-1. Musimy pokazać, że taka liczba będzie się kończyła na 6. Równie dobrze jednak się nada odrobinę mocniejsze twierdzenie: każda parzysta potęga czwórki kończy się cyfrą sześć (2n-1 będzie parzyste dla każdego n różnego od 0).

Popatrzmy, co się dzieje z ostatnimi cyframi kolejnych potęg czwórki:

4
16,
64,
256,
1024,
4096, ...

Łatwo zauważyć, że mamy raz czwórkę, raz szóstkę. Dzieje się tak ponieważ mnożenie przez cztery modulo 10 będzie zawsze prowadzić do cyklu, a jeżeli zaczniemy od 1, będzie on wyglądał właśnie tak: 4, 6, 4, 6, 4, 6... Czwórka pojawia się jak podnosimy nieparzystą ilość razy, szóstka jak parzystą.

Podobny cykl występuje przy mnożeniu modulo dziesięć przez dwa: 2, 4, 8, 6, 2, ... . Pozwala nam to łatwo określać ostatnie cyfry potęg dwójki. Na przykład, aby potęga dwójki kończyła się ósemką, wykładnik musi być równy k·n-1, dla pewnych naturalnych k i n.

Cały problem należy do klasy problemów nietrudnych i niepoważnych, jak jednak pokazała szybka ankieta via GG i na seminarium, nie jest również oczywisty. A to sprawia, że jest zabawny.

forum kognitywistyczne i Sumerowie

Na dzisiejszym spotkaniu Forum Kognitywistycznego Jerzy Tyszkiewicz i Wojciech Jaworski mówili o tabliczkach z pismem klinowym, a dokładniej: o swoim (jako matematyków) udziale w dziele ich odszyfrowywania. Artykuł na ten temat pojawił się niedawno w Gazeta.pl, jednak referat niesformatowany pod kątem przeciętnego czytelnika GW zawsze będzie ciekawszy.

Tabliczki z pismem klinowym są w pewnym sensie zarówno marzeniem, jak i najgorszym koszmarem badacza. Marzeniem, ponieważ jest ich dużo (ponad 40 000 sztuk) i są świetnie zachowane. Koszmarem z dość podobnych powodów: jest ich dużo, są świetnie zachowane i... przeraźliwie nudne: mówią głównie o tym, kto co przyjął, od kogo i w jakiej ilości. Biurokracja sprzed czterech tysięcy lat, zapisana w istotnie wieloznacznym systemie ideograficzno-sylabicznym.

Język Sumerów sam w sobie stanowi zagwozdkę, ponieważ był aglutynacyjny i nie ma obecnie żadnego żywego (ani lepiej znanego wymarłego) języka, który byłby podobny. Dlatego wiedza na jego temat pochodzi głównie z tabliczek Akadów (mówiących językiem semickim), którzy byli na tyle mili, że sporządzali coś w rodzaju słowników sumeryjsko-akadzkich. Minus jest taki, że wiemy na przykład, że Sumerowie, w przeciwieństwie do Akadów, używali głoski ,,o'', jednak ci siłą rzeczy jej nie zapisali, zatem nie mamy pojęcia, gdzie mogła się znajdować.

Tabliczki zostały w sporej części sklasyfikowane, przetransliterowane i wrzucone do wielkiej bazy danych. Jest ona dostępna w Internecie, z możliwością jej przeszukiwania. Ma ona też swoje wiki (bardzo w duchu Web 2.0). Mam takie przeczucie, że pismo klinowe może stać się konikiem Nº 1 historyków-amatorów będących zarazem geekami. Praktycznie wszystko, czego potrzeba do dokonania być może nawet znaczących odkryć jest przecież dostępne w sieci...

W związku z tym, że tabliczek jest aż tak dużo i stanowią aż tak mało przyjemny materiał dla człowieka, aż kusi, aby do ich analizy zaprzęgnąć komputer. I właśnie o tym jak to się robi opowiadali dzisiejsi referenci.

Pierwszy pomysł polega na tym, aby poszukiwać tabliczek zawierających podobne dane liczbowe: jeśli, powiedzmy, dwie tabliczki zawierają liczbę 84 (mocno nieokrągłą w ich systemie liczbowym), jest bardziej niż prawdopodobne, że tabliczki są w jakiś sposób powiązane. Jeżeli udałoby się zidentyfikować grupę tabliczek jako pochodzących z jednego warsztatu, można by próbować wyciągnąć jakieś wnioski na temat demografii sumeryjskiej.

Drugi pomysł jest nieco bardziej subtelny (choć zarazem może gubić część tego, co poprzedni mógłby znaleźć) i polega na opracowaniu gramatyki tabliczki klinowej. Na przykład, jeżeli wiemy, że większość tabliczek jest zapisem pewnej transakcji (np. urzędnik Iksemesz przyjął 4 owce nieokreślonej płci od Igrek-Kidu, w czwartym miesiącu roku za panowania Szulgiego, gdy założono świątynię w Ninurcie), możemy sobie zrobić parser, które wydobędzie z rekordu tabliczki interesujące nas dane. Z efektów jego działania będziemy mogli sporządzić sobie ładną tabelkę, ustawić chronologicznie i wnioskować, na przykład, że w takim a takim roku pogorszyła się koniunktura lub, jeśli byśmy nagle natrafili na kryzys po kilku latach urodzaju, że państwo zostało splądrowane przez Amorytów lub coś w tym stylu.

Swoją drogą, najbardziej mnie zafrapowało to, że narzędzia programistyczne potrzebne do tego typu zabaw są stosunkowo proste i doskonale znane. Ośmielę się zaryzykować nawet mocniejszą tezę: normalnie wyposażony Unix posiada out of the box prawie wszystkie narzędzia konieczne do tego typu analiz, nawet bez konieczności jakiegoś zakrojonego na szeroką skalę programowania. Jeśli chodzi o metodę pierwszą, do głowy przychodzi mi filtr napisany w perlu wykrywający za pomocą wyrażeń regularnych liczby w tabliczkach, stary dobry diff(1), wreszcie baza danych gromadząca wyniki. Oczywiście, miło by było mieć jeszcze jakąś metodę rozpoznawania naprawdę cennych podobieństw (szansa, że dwie niepowiązane tabliczki zawierają liczbę 2 jest dużo większa niż że zawierają one liczbę 84), jednak wciąż: z technicznego punktu widzenia nie wydaje się to stanowić wyzwania.

Wniosek z tego wszystkiego może być następujący: nie chodzi o to, aby się bawić nowymi, skomplikowanymi narzędziami bądź takie wymyślać. Czasem lepsze może być twórcze zastosowanie narzędzi prostych i doskonale znane.

6.6.06

Tegoroczna sesja

Tegoroczna sesja jest straszna. Bynajmniej nie z tego powodu, że jest najcięższą sesję w mojej dotychczasowej karierze akademickiej -- aż cztery (!) egzaminy (w tym momencie politechnicy prawdopodobnie pospadali z krzeseł). Chodzi o to, że ta sesja jest NUDNA.

W zeszłych latach zawsze był jakiś thrill, który motywował mnie do zwiększonego wysiłku. Pierwszy rok -- wiadomo, w pierwszej sesji człowiek jest zawsze podekscytowany, a historia filozofii starożytnej i średniowiecznej nawet mnie ciekawiły (najwyraźniej nie byłem jeszcze aż tak zblazowany). Drugi rok -- filozofia nowożytna, a zatem Kant. Ciężkie jak diabli, ale jak się wreszcie coś wyczai, satysfakcja gwarantowana. No i, co najważniejsze, logika 2, która nie dość, że była dość trudna, to jeszcze ciekawa i pożyteczna (znacie to wrażenie, że uczycie się czegoś i czujecie, że robicie dla siebie coś dobrego?).

A teraz? Historia filozofii analitycznej -- przerobiłem większość tych tekstów w bardziej sprzyjających warunkach. Filozofia nieanalityczna -- aż nie chcę komentować. Zbyt duże zaangażowanie w lekturę spowoduje, że mózg zamieni mi się w jogurt. Filozofia nauki -- ile można o indukcji, falsyfikacjonizmie, rewolucjach naukowych, ciągle w tej samej kolejności? Etyka -- to, co mnie interesuje w etyce, przez sporą część Instytutu Filozofii zostałoby uznane za nie-filozofię. Jeśli ktoś nie wierzy, proponuję przeczytać moją pracę z etyki.

Oczywiście, z braku laku to bym nawet się pouczył do egzaminów (a Lakatosa to poczytał z przyjemnością). Ale, ja mam po prostu lepsze rzeczy do roboty. Jakie?

Po pierwsze, kupiłem sobie dwie strasznie fajne książki (a dokładniej, jedną kupiłem, drugą dostałem w prezencie):
  • Abelson, Sussman i Sussman, Struktura i interpretacja programów komputerowych. Wspaniały podręcznik do wstępu do programowania, co więcej napisany w Scheme (co poniektórzy znają moje zboczenie na punkcie nawiasów). Tylko włączyć Emacsa i siedzieć i kombinować.
  • Donald E. Knuth TEX. Przewodnik użytkownika. Tej książki nie muszę chyba przedstawiać. Dodam, że jest prezent mojego ojca na urodziny, imieniny i dzień dziecka (trochę mu zajęło zanim uzbierał pieniążki :).
Po drugie, chciałbym pouczyć się logiki. Mostowski kusi Kleenem i Ackermannem, z Konradem nie dokończyłem kwestii kwantyfikatorów rozgałęzionych... Boolos i Undecidable stygną...

Po trzecie, mamy z Julą pomysł na artykuł na temat Deep Structure.

Po czwarte, chciałbym napisać programik do wyciągania z bazy Biblioteki Narodowej opisów bibliograficznych książek na podstawie ich ISBN-u. Bardzo by nam to pomogło w aktualizacji listy naszych książek, która nie jest ruszona od prawie pół roku. Przy okazji nauczyłbym się czegoś więcej na temat Z39.50, co nie wiadomo, kiedy może się przydać.

Te cztery punkty powodują rzecz następującą: jak się uczę do sesji, mam wyrzuty sumienia, że zajmuje się czymś epistemicznie mało wzbogacającym, licząc na pieniądze ze stypendium (materializm na krótką metę: jutro stypendium, pojutrze niższe zarobki, fuj-fuj!). Jak zajmuję się czymkolwiek z czterech powyższych punktów, mam wyrzuty sumienia, że nie uczę się do sesji (nauka i dobry wyniki na egzaminach to przecież mój obowiązek). Jaki jest tego wszystkiego efekt? Kto na tym traci? Otóż, Wy, drodzy czytelnicy. Bo Wam skuczę strasznie w tym blogu, zamiast zająć się czymś pożytecznym.

1.6.06

Moja strona domowa

Zbliżająca się sesja sprzyja, jak wiadomo, pracy twórczej, czego objawem jest nowa wersja mojej strony internetowej. Jeżeli ktoś chce sobie porównać, może wciąż zobaczyć też starą wersję.

Można też na niej znaleźć moje dwa nowe teksty -- czyli pracę roczną z etyki i artykuł, który prezentowałem w Opolu.