Obecnie czytam książkę Romana Murawskiego  Filozofia matematyki i logiki w Polsce międzywojennej” Ksiązka dobra a pod linkiem znajdziecie także krótką audycję „radiową” w której autor omawia jej treść. Swoją droga – jest to pewien standard który mi się bardzo podoba – szkoda że nie wideo, czemu nie – jednogodzinny wywiad z Murawskim?

     Ciekawe są rozważania Łukaszewicza i Leśniewskiego na temat związków logiki z psychologizmem ( w istocie sprowadzają się do negacji istnienia takiego związku). Obaj odrzucają zdecydowanie pomysł, że prawa logiki maja pochodzenie psychologiczne, wynikają z funkcji ludzkiej psychiki. Jednocześnie pada stwierdzenie że logika będąc całkowicie niezależną co do zasady od ludzkiej psychiki znajduje się niejako w sytuacji w jakiej znalazła się geometria po odkryciu systemów geometrii nieeuklidesowych. Logiki wielowartościowe stworzone w miedzywojennej Polskiej Szkole Matematycznej sa tutaj przykładem konstrukcji podobnych do geometrii nieeuklidesowych, zaś pytanie o to jaka logiką posługują się ( w sposób naturalny ) ludzie jest analogiczne do pytania o to jaka geometria właściwie opisuje geometrię fizycznego świata. Jest to zagadnienie nielogiczne, niematematyczne, a przyrodnicze, fizyczne, pytanie na które należy odpowiedzieć na gruncie doświadzcenia a nie spekulacji. Dobrze powiedziane.

Fascynuje mnie problem antropomorficzności wiedzy, opisu świata, w szczególności matematyki. Na ile to co wiemy jest specyficznie ludzkie ( i gdybyśmy nie byli ludźmi ale powiedzmy inteligentnym gatunkiem rozgwiazd byłoby inne)? O ile w wypadku pewnych stwierdzeń empirycznych jest to kwestia blisko związana z poglądem na temat istnienia rzeczywistości i jej postrzegania ( czy istnieją obiektywne sądy o świecie) o tyle w wypadku matematyki czy logiki jest to rzecz bardzo niejasna. Murawski omawiając poglądy polskich logików i matematyków okresu międzywojennego wymienia na przykład znamienne stanowisko bodaj Ajdukiewicza. Mianowicie ważne prace Łukasiewicza dające początek logikom wielowartościowym, w istocie nie rozwiązały ( ba! nawet nie były w istotny sposób związane z żadnym) żadnego problemu w logice czy matematyce. Koncepcje na których Łukasiewicz zbudował swoje logiki wielowartościowe – a więc dyskusja prawdziwości zdań dotyczących zdarzeń z przyszłości ( które przez to nie muszą mięć określonej wartości logicznej ) – daje się sprowadzić do dyskusji zdań logiki dwuwartościowej. Oczywiście modele te maja wartość samą w sobie, w sensie formalnym. Są owocnym narzędziem pozwalającym budować interesujące konstrukcje co znakomicie uzasadnia rozwijanie ich jako dziedziny badawczej. Niemniej – nadal sa głęboko ludzkie, nie wyprowadzają w istotny sposób ( w moim mniemaniu) poza całkiem typowy zakres ludzkiego myślenia. Natomiast podane poniżej przykłady – są jakby znacznie bardziej nieludzkie. A może tylko mniej ludzkie? ;-) A przecież nie ma żadnych powodów by twierdzić a’priori, że ludzkie kategorie pojmowania logiki sa jedynymi. Stąd szukam tu i tam, rzeczy które niejako przekraczają nasze zdolności działania i operowania. Oczywiście – przekraczają w sposób zrozumiały, możliwy do analizy i przedyskutowania. To pewien paradoks i trudność. Nie wydaje mi sie jednak by takie poszukiwania były bezwartościowe co do zasady czy skazane na porażkę z powodów fundamentalnych.

Nie podzielam stanowisk które w matematyce upatrują jakiegoś rodzaju wiedzy absolutnie pewnej czy obiektywnej, nawet w sensie formalnym ( ale jednocześnie nie szukam jakiejś formy relatywizmu, nie o odniesienie prawdziwości do jakichś aksjomatów czy reguł rozumowania tu chodzi). Wydaje mi sie że nie dosyć że możliwe że istnieją inne możliwości to na dodatek ich istnienie wydaje mi się intuicyjnie oczywiste, i musi w jakiś sposób być związane z ograniczeniem ludzkiego aparatu pojęciowego – dwojgiem uszy, dwojgiem oczu, krtani która wypowiada słowa a nie ciągnie bez ustanku trele jak słowik, rękami które mazają znak za znakiem które ktoś musi odcyfrować a nie rozsiewają feromony jak u mrówek kŧóre od razu się czuje i które nie wymagają wyjaśnienia co do znaczenia.

Z drugiej strony nie umiem podać oczywistych przykładów konstrukcji które miałyby być jawnymi przykładami tak rozumianej, ograniczajacej antropomorficzności. W tym sensie jestem niejako gołosłowny, choć pewnie dałoby się tu wymienić kilka punktów wśród których pojęcia takie jak funkcja obliczalna i problem kwantyfikatora ogólnego wydają mi się szczególnie wyraźne. Zagadnienie funkcji obliczalnej a raczej teza Churcha-Turinga – to przykład rozumowania indukcyjnego w matematyce która wedle zapewnień jest nauką dedukcyjną. Zagadnienie to ma bogatą literaturę.

Przez problem kwantyfikatora ogólnego – „dla każdego” – rozumiem zagadnienie:  cóż znaczy zwrot „dla każdego x” zanim zdefiniuje się zbiór w którym x operuje. Na przykład w tym oto aksjomacie występuje kwantyfikator „dla każdego y”. Skąd sie te „y” biora? Wydaje mi się że nie zdefiniowano żadnej wielości do której „y” miałyby należeć, co nawyżej staramy się owa wielość dopiero określić aksjoamtami w tym takzę i tym właśnie. Ale skoro to aksjomat – jeszcze przecież tej wielości nie ma. Jeszcze jest trywialnie nieistniająca ( jeden aksjomat nie wie że istnieją inne). Oczywiście nie chodzi tu o „czasowe następstwo aksjomatów” ale o pytanie: co to za „y” o którym ten aksjomat mówi? Z książki Murawskwego którą mam w ręku mogłoby wynikać, że problem o podobnym znaczeniu  został poruszony także przez Mostowskiego w kontekście teorii mnogości – pod nazwą „problem dowolnego zbioru”. Mostowski widział to z pewnością inaczej niż ja, madrzej, i w innym kontekście ( chodziło raczej o kwestię istnienia, jak w pewniku wyboru), zawsze jednak taka koincydencja, choćby słowna cieszy. A co ja mam tu na myśli? Proszę spojżeć w tym kontekście na Rusella antynomię klas samozwrotnych – cóz to znaczy „dla każdego elementu” w tej konstrukcji, jeśli użyto tego zwrotu w definicji zbioru do którego to pojęcie sie odnosi. W moim mniemaniu jest to bład definicyjny niezależny od kwestii samozwrotności – która nie zawsze prowadzi do antynomii. Zdanie P = „to zdanie jest prawdziwe” jest samozwrotne i nie prowadzi do żadnych problemów. Ciekawe że pytanie o definicje kwantyfikatora na mathoverflow, które tu wysmarzyłem moim kiepskim angielskim, z jednej strony zostało ocenione na -1 – czyli porażka i dyletanctwo – a z drugiej ma 1k wświetleń…

Ok, szukamy dalej…Wpis ponizszy jest zapisem z Google Buzz z 21 kwietnia 2010 roku.

    Wszystkie języki ludzkie używają słów. Słowa sa obecne nawet w tak sztucznych zdawałoby się tworach jak języki programowania i to nie tylko na poziomie skonstruowanym dla człowieka ( wszystko od asemblera w gorę, człowiek ma co najmniej pisać a czasem i czytać te twory) ale nawet na poziomie poniżej, w języku maszynowym gdzie również zaznacza sie podział na „słowa” przetwarzane przez maszynę. Wygląda na to, ze konstrukty ludzkiej myśli nie są w stanie oderwać się od koncepcji „sekwencji słów”.

    Ciekawe sa tu dwie konstrukcje:
    Funkcyjny język programowania z całkowitą lazy evaluation jak w Haskelu. Program zostaje wyliczony w całości a przynajmniej taki jest sens jego wykonania. Mamy tu do czynienia z sytuacja kiedy w wysokim poziomie programowania, nadal posiłkując się „słowami” czyli konstruktami niosącymi dyskretne operacje, składając je, uzyskujemy coś co ma zapewnić „jednostopniową procedurę obliczenia”. Aby zapewnić taką atomowość włożono sporo wysiłku. Uzyskuje się w zamian wysoki poziom determinizmu obliczeń: te same dane co do zasady dają te same wyniki. Oczywiście w praktyce brak pełnej izolacji i 100% pewności. W jakimś sensie jest to nieludzki sposób wykonywania obliczeń. Człowiek żyje w czasie i oblicza w czasie. Przetwarza algorytm krok za krokiem. Jednak jest to czysty antropomorfizm, niekomu niepotrzeny, a w konstrukcjach teoretycznych rezygnacja z tej przpadłości daje dobre efekty.

    Nonfirstorderizability – zjawisko polegające na tym, że pewne wyrażenia logiczne nie dają się zapisać jako zdania w logice pierwszego rzędu. Nic w tym dziwnego, takich stwierdzeń jest bardzo dużo, niektóre całkiem „proste” jak np. „przestrzeń wektorowa skończonego wymiaru”, lub „zbiór o skończone liczbie elementów”. Okazuje się, że istnieje jednak podejście nazywane Branching które ogólnie polega na porzuceniu liniowego następstwa kwantyfikatorów ogólnych ( „dla każdego” …) i wprowadzeniu dodatkowej konwencji że mogą być one używane „jednocześnie”, lub „atomowo w grupie”. Po wprowadzeniu takiej modyfikacji uzyskujemy logikę która nadal jest słabsza niz logika drugiego rzędu ( a więc nie ma kwantyfikacji po zdaniach) jednak jest mocniejsza niż logika pierwszego rzędu. W szczególności pozwala na wyrażanie stwierdzeń o prawdziwej niezależności dwu i więcej zmiennych ( proszę porównać: http://terrytao.wordpress.com/2007/08/27/printer-friendly-css-and-nonfirstorderizability/)

    Ciekawe, że obydwa podejścia czyli lazy evaluation, i branching sa mocnymi pod pewnymi względami narzędziami w których efekt uzyskuje sie porzucając pewnego rodzaju naturalna dla człowieka i języka sekwencyjność, i dopuszczając pewnego rodzaju, nawet ograniczoną jak w branchingu, atomowość, w obu wypadkach na wysokim ( i niejako emulowanym przez bardziej elementarne „rachunki”) poziomie.