Nowy Traktat Logiczno-Filozoficzny

Dla mnie „Traktat Logiczno Filozoficzny”1 to dzieło o granicach racjonalności napisane bez należytej dbałości o precyzję. Na dodatek upływ czasu sprawił, że wiele terminów których Wittgenstein używa bez podania definicji ma dzisiaj bardzo konkretne znaczenie – odmienne od tego jak on je rozumiał. Dlatego Traktat pozostaje żerowiskiem filozofów żyjących z wyjaśniania tego co autor miał na myśli. Natomiast jego przesłanie – aby było żywe – trzeba napisać od nowa. Chcąc podjąć dzieło Wittgensteina, trzeba zacząć od krytycznej analizy tego, co on napisał. Nie chodzi przy tym o interpretację treści, ale o wykorzystanie zestawu poruszonych zagadnień do refleksji nad drogą do wyznaczonego celu.

Pierwsza część tekstu zawiera analizę głównych zagadnień poruszonych w Traktacie. Druga część to podjęcie próby odsłonięcia granic racjonalności przy zastosowaniu wniosków z wykonanej analizy.

Na koniec tego wprowadzenia wyjaśnię krótko dlaczego zdecydowałem się stworzyć niniejszy tekst. Motywacje były trzy:

1) cel jaki postawił sobie Wittgenstein pozostaje aktualny – może teraz w czasach „postprawdy” bardziej niż kiedykolwiek;

2) negatywna ocena środowiska naukowego sprawia, że nie widzę żadnych szans na to, by to potrzebne dzieło zostało przez naukowców i filozofów wykonane (nie spodziewam się też, że moja praca zostanie przez nich dostrzeżona i doceniona);

3) języki programowania pełnią rolę o jakiej marzyli twórcy pozytywizmu logicznego (umożliwiają ścisły opis rzeczywistości); wydaje się ogromnie dziwne, że nie zostało to dostrzeżone przez spadkobierców tej tradycji; nie jestem filozofem (w sensie zawodowym), ale jestem programistą i dostrzegam doniosłość powyższego odkrycia.

Czytaj więcej: Nowy Traktat Logiczno-Filozoficzny

Czas i paradoksy logiczne

Czas a logika klasyczna1

Zdania w logice klasycznej opisują fakty (stan), a nie ich zmiany w czasie! Jeśli uznajemy zdanie za prawdziwe (fałszywe), tym samym uznajemy iż jego wartość logiczna nie zmienia się w czasie.
Na przykład zdanie 'jutro będzie padać deszcz' nie jest zdaniem logiki, gdyż nie umiemy ustalić jego wartości logicznej.

Możemy powiedzieć: 'dodając do liczby 2 liczbę 3 otrzymamy 5'. Wydaje się, że wyrażono tu jakiś ciąg czynności w czasie. Ale to jedynie opis zdeterminowanego wyniku działania. Wynik jest z góry przesądzony i dlatego możemy go podać. To, że posługujemy się przy tym czasownikiem jest jedynie środkiem wyrazu. Analogicznie możemy traktować każdy program komputerowy jako sieć logiczną2. Zamiana tego zapisu na instrukcje działania wykonywane w czasie powoduje jedynie zmniejszenie złożoności sieci logicznej na złożoność czasową (zamiast jednego złożonego działania ciąg prostszych wykonywanych w kolejnych chwilach czasu). Trudno więc mówić, że w ten sposób uwzględniono w komputerze czas taki jakim my go rozumiemy (jako doświadczaną zmienność). Prawdą pozostaje teza postawiona na początku: jeśli uznajemy zdanie za prawdziwe/fałszywe, tym samym uznajemy iż jego wartość logiczna nie zmienia się w czasie.

Opis działania komputera jest równoważny opisowi jego struktury, który da się przedstawić jako zbiór wyrażeń logicznych. Zauważmy przy tym, że takie wyrażenia nie są nigdy zapisem zdań fałszywych – nawet gdy dają na wynik 0 (fałsz). Na przykład zdanie: „koniunkcja daje na wynik fałsz, gdy wartości obu czynników koniunkcji (wejście) są fałszywe” jest prawdą! Opis działania komputera jest równoważny ze zbiorem zdań prawdziwych!

Dotyczy to wszystkich układów (maszyn) deterministycznych. Wątpliwości mogą dotyczyć jedynie tego, czy mamy do czynienia z determinizmem (jak w zdaniu 'jutro wzejdzie słońce'). Problemem jest też próba uwzględnienia czasu ciągłego (a nie dyskretnego). Prowadzi to do paradoksów związanych z nieskończonością. Z uwagi na to w tym artykule problem czasu ciągłego nie został poruszony.

Logika modalna i światy możliwe

Na początku tekstu podkreślone zostało to, że zdania logiczne służą do opisu faktów (stanu rzeczy). Kiedy fakty nie są znane w pełni, też możemy je opisać w sposób ścisły - choć niekoniecznie szczegółowy. Na przykład: 'jeśli rzucimy kostką do gry to otrzymamy ilość oczek od 1 do 6'. W tym przypadku można też skorzystać z pewnego rozszerzenia logiki klasycznej, a mianowicie logiki modalnej. W logice tej wprowadza się dwa operatory: jest konieczne oraz jest możliwe. Możemy więc powiedzieć: 'jest możliwe że rzucając kostką do gry otrzymamy 6 oczek'. Nie stanowi to istotnego wyłomu w deterministycznym charakterze logiki. Powszechnie takie zdania modalne interpretuje się w ten sposób, że pojawia się kilka światów możliwych. W każdym z nich wynik jest zdeterminowany. A więc na przykład w jednym ze światów możliwych rzucenie kostką da na pewno wynik 1 a w innym 6. Jeden z tych światów możliwych jest naszym światem realnym (choć możemy nie wiedzieć który). Operator „jest możliwe” oznacza że istnieje co najmniej jeden świat możliwy w którym zdanie jest prawdziwe. Operator „jest konieczne” zaś oznacza, że w każdym świecie możliwym rozważane zdanie jest prawdziwe.

Czytaj więcej: Czas i paradoksy logiczne

Współczesne interpretacje argumentu św Anzelma

Święty Anzelm przedstawił następujące rozumowanie (nazwane argumentem ontologicznym), obalające tezę, że Bóg nie istnieje:1

  1. Nawet głupiec rozumie pojęcie „Bóg” gdy twierdzi, że „Bóg nie istnieje”.
  2. Pod pojęciem tym rozumiemy coś najdoskonalszego, czyli coś takiego, że nie możemy nawet pomyśleć o czymś doskonalszym.
  3. Jednak coś co istnieje naprawdę jest doskonalsze niż coś co istnieje tylko w umyśle.
  4. Jeśli głupiec twierdzi, że Boga nie ma, to uważa że jedynie rozumie (ma w umyśle) pojęcie, które do niczego się nie odnosi.
  5. Ale przecież może sobie wyobrazić, że tej doskonałości w jego umyśle odpowiada coś istniejącego naprawdę. Czyli może sobie wyobrazić coś doskonalszego. To przeczy tezie, że najdoskonalsze jest/było pojęcie Boga nie istniejącego. Musi zatem Bóg istnieć realne – bo tylko odnoszące się do niego pojęcie może być pojęciem doskonałości.

Historia tego argumentu jest bardzo ciekawa, bo pokazuje zmiany w relacji między nauką i religią.

Religia przestała być podstawowym sposobem objaśniania świata. Dlatego takie argumenty należą obecnie do sfery kultury i nie są oparte na dedukcji. Pozbawiony pretensji do ścisłości argument ontologiczny może wyglądać następująco:

  1. Samo istnienie idei Boga stanowi wystarczającą podstawę do tego, by rozważać Jego istnienie. Ta myśl św Anzelma została podjęta przez Jana Pawła II w encyklice "Fides at Ratio". Papież pisze tam2: "Już sama zdolność poszukiwania prawdy i stawiania pytań podsuwa pierwszą odpowiedź. Człowiek nie podejmowałby poszukiwania czegoś, o czym nic by nie wiedział i co uważałby za absolutnie nieosiągalne."

  2. Akceptując pojęcie Boga jako bytu najdoskonalszego, musimy uznać iż byt ten istnieje realnie. Skoro bowiem Bóg jest bytem najdoskonalszym, to „w taki sposób realnie istnieje, że nawet nie można pomyśleć, iż nie istnieje” [Mieczysław Gogacz3].

W zupełnie odwrotnym kierunku rozwija się światopogląd naukowy, którego wielu wyznawcom marzy się „dyktatura racjonalności”. Kultura i religia może według nich odpowiadać na pewne potrzeby ludzi, ale na pewno nie jest to dobry sposób na dotarcie do fundamentalnych prawd o świecie w którym żyjemy.

Podstawowym wnioskiem z opisanej poniżej historii jest jednak to, że ścisłe oraz pewne odpowiedzi mogą być udzielone wyłącznie wtedy, gdy postawimy właściwe pytania. Pytania te pozostają różne dla religii i nauki. Argument ontologiczny pojawia się w punkcie ich styczności.

Czytaj więcej: Współczesne interpretacje argumentu św Anzelma

Cyfrowe oczyszczanie logiki

Logika jest trudna i pełna paradoksów.

Logika jest łatwa – bo to tylko uogólniony opis poprawnego rozumowania, znany każdemu myślącemu człowiekowi.

Które z powyższych zdań jest prawdziwe?

Logika nauczana w szkołach średnich jest łatwa (w zasadzie całość tej wiedzy można zmieścić na jednej niezbyt pojemnej stronie1). Logika rozwijana na uniwersytetach jest trudna (czasem nawet można użyć określenia „hermetyczna”).

Ponieważ logika to także narzędzie odkrywania prawdy – występowania tych dwóch skrajności nie można lekceważyć. Powszechne nauczanie logiki (może nawet należałoby rozpocząć je wcześniej niż w liceum) jest procesem uświadamiania i poznawania niezawodnych reguł rozumowania. Jaki zaś jest / powinien być cel logiki uniwersyteckiej (poza umysłową rozrywką ludzi, którzy najwyraźniej mają bardzo dużo czasu)? Spór o to wybuchł na początku XX wieku, gdy proces oczyszczania logiki z wszelkich związków ze zmysłowym poznaniem sprawiał, że przestawała ona być intuicyjnie zrozumiała. Jednym z wielkich krytyków takiego kierunku rozwoju był francuski matematyk, filozof i logik Henri_Poincare. Uważał on, że fundamentalne zasady winne być zgodne z intuicją („zdrową psychologią”). W jednym z komentarzy pisał2: „Russell odpowie mi bez wątpienia, że chodzi nie o psychologię, ale logikę i teorię poznania, na co musiałbym replikować, że nie istnieje żadna logika i teoria poznania niezależne od psychologii. To wyznanie wiary zakończyłoby jednak prawdopodobnie dyskusję, ponieważ ujawnia ona nieprzezwyciężalne różnice poglądów”.

 

Czy jednak pragmatyzm charakterystyczny dla XXI wieku nie pozwala na zupełnie nowe podejście do tego sporu?

Czytaj więcej: Cyfrowe oczyszczanie logiki

Problemy wirtualnej rzeczywistości

Cyfrowy świat (wirtualną rzeczywistość), który możemy obecnie badać został zbudowany w oparciu o logikę. Jakby to dziwacznie nie brzmiało, wszystkie komputerowe obliczenia są równoważne z wyliczeniem wartości zbioru wyrażeń logicznych. Poza tym w odniesieniu do cyfrowego (wirtualnego) świata prawdziwe są następujące dwie tezy:

  1. Każde wyrażenie sformułowane w języku klasycznego rachunku zdań może zostać zaimplementowane w postaci układu cyfrowego badającego dla zadanych wartości zmiennych wynik tego wyrażenia.

  2. Dla każdego rozstrzygalnego problemu logicznego można zbudować algorytm i zaimplementować go w postaci programu komputerowego rozwiązującego ten problem.

W sytuacji niesamowitej ekspansji komputerów (może się wręcz wydawać, że nie ma przed nimi granic) pojawiają się fundamentalne pytania:

  1. Skoro cały cyfrowy świat sprowadza się do wyrażeń logicznych możliwych do automatycznego wyliczenia, to jakim cudem istnieją problemy nierozstrzygalne (i równoważny im problem stopu)?

  2. Wszystkie komputery można teoretycznie połączyć w jedną sieć działającą jak jeden super-komputer. Tymczasem wiemy, że w każdej ścisłej teorii można sformułować sensowne tezy, które nie są w niej rozstrzygalne. Możemy jednak rozszerzyć teorię tak, by pozwalała na rozstrzygnięcie każdej tezy. Czy to znaczy, że świat realny zawsze będzie bogatszy od świata cyfrowego?

  3. Komputery łączą się ze światem poprzez interfejsy wejścia, które mogą być niezdeterminowane i wyjścia, które dla danego stanu (w tym stanu wejścia) są zdeterminowane. Komputer działa więc tak jak wyobrażali sobie XIX wieczni materialiści działanie człowieka (nie ma w umyśle/pamięci niczego czego nie dostarczają zmysły/interfejsy wejściowe). Jednak znana nam rzeczywistość nie pasuje do tego modelu, gdyż dokonując pomiaru wpływamy na jego wynik. Ponadto posługując się metodami nauki potrafimy formułować tezy zanim rozstrzygnie je doświadczenie. W strukturze komputerów są natomiast zawarte wszystkie możliwe odpowiedzi, jakich potrafią one udzielić. Czy zatem komputery mogą się rozwijać wyłącznie dzięki interakcji z ludźmi?

  4. Skoro komputerom wystarcza klasyczny rachunek zdań, to jakie znaczenie mają bogatsze języki używane w logice? Czy to tylko dające się zredukować do rachunku zdań dialekty, czy też możliwe jest zapisywanie w nich bogatszych treści?

  5. Co sprawia, że traktujemy treści zawarte w pamięciach komputerów jako informację o świecie? Czy to my nadajemy sens uzyskiwanym treściom, czy też istnieją one obiektywnie?

 

 

Znaczenie a oznaczanie

Symbole zazwyczaj coś znaczą (mają sens, są zrozumiałe) i coś oznaczają (do czegoś się odnoszą). Na przykład znak drogowy może wyrażać ostrzeżenie przed pieszymi (znaczenie) i równocześnie oznaczać miejsce w którym jest przejście dla pieszych.

Także wypowiedzi formułowane w dowolnym języku mogą na coś wskazywać i coś znaczyć.

W przypadku nazw własnych możemy uznać, że znaczenie słowa sprowadza się do wskazania obiektu którego nazwa ta dotyczy. Czyli w tym wypadku znaczenie = oznaczanie. Często jednak jesteśmy w stanie wskazać do czego konkretnie odnoszą się słowa (co oznaczają), chociaż je rozumiemy.

Za rozróżnieniem znaczenia (sensu) i oznaczania (referencji) przytacza się dwa argumenty:

  1. Skoro dwa wyrażenia mają takie samo znaczenie, to można je stosować zamiennie. Na przykład „dwie godziny” i „2h” rozumiemy tak samo. Gdyby znaczenie utożsamiać z referencją (oznaczaniem), to analogiczna reguła dotyczyłaby słów wskazujących na to samo. Gottlob Frege sformułował następujący kontrprzykład. Jak wiadomo nazwy “Gwiazda Poranna” i „Gwiazda Wieczorna” oznaczają ten sam obiekt (planeta Wenus). Gdyby “Gwiazda Poranna” i “Gwiazda Wieczorna” miały takie samo znaczenie, można by je stosować zamiennie. Czy jednak stwierdzenie “Gwiazda Poranna = Gwiazda Wieczorna” rozumiemy tak samo jak “Gwiazda Poranna = Gwiazda Poranna”? Nie. W pierwszym przypadku mamy ważne odkrycie a w drugim trywialną tożsamość. Czyli znaczenie (sens, rozumienie) to nie to samo co oznaczanie.

  2. Wyrażenia odnoszące się do obiektów nie istniejących, albo sprzecznych są zrozumiałe, ale nic nie oznaczają. Na przykład „Obecny król Francji” na nic nie wskazuje (nic nie oznacza) ale jest zrozumiałe (ma znaczenie).

Pomimo powyższych problemów, nie zaprzestano prób definiowania znaczenia wypowiedzi poprzez to do czego się te wypowiedzi odnoszą1. Czy jednak nie prościej jest zdefiniować klasę języków dla których utożsamianie znaczenia z oznaczaniem nie sprawia problemów? Takie założenie nie sprawia żadnych problemów w przypadku języków programowania. Są to sztuczne języki służące do programowania komputerów (te języki nie są przeważnie używane w trakcie działania komputera, tylko na etapie jego programowania). Znaczenie terminów w tym języku to miejsce w pewnej przestrzeni (jak to teraz w modzie mówić: wirtualnej), w której jest przechowywana pewna wartość, albo procedura ją obliczająca. Zastanówmy się, czy takiego rozwiązania nie można uogólnić na każdy dostatecznie precyzyjny język.

Czy wyrażenia „2+2” oraz „4” mają identyczne znaczenie i oznaczają to samo? Frege twierdzi, że oba oznaczają liczbę 4, ale ich znaczenie jest inne. Ale przecież języki programowania zawierają arytmetykę. Najwyraźniej więc między poglądami logików i informatyków na ten temat powstaje różnica (informatycy nie są skłonni do teoretycznych sporów, pewnie stąd ta różnica nigdy dotąd nie stanowiła istotnego problemu). Informatyk uzna zapewne, iż “2+2″ to procedura obliczenia sumy z dwóch dwójek, a “4″ to liczba. Nie oznaczają więc tego samego. Frege wykonuje działania w pamięci i ogłasza, że oba wyrażenia oznaczają to samo. Ale on odnosi się w ten sposób do wyniku działania, a nie do wyrażenia opisującego to działanie. To chyba możemy uznać z a błąd. A w konsekwencji - stwierdzić, że w arytmetyce można utożsamiać znaczenie i oznaczanie. Nie widać też żadnych przyczyn, dla których rozciągnięcie tej tezy na całą matematykę stanowiło jakikolwiek problem.

Widzimy więc, że w miejsce sporu o to, czy sens wypowiedzi daje się sprowadzić do ich oznaczania (semantyka referencyjna), należy zapytać o klasę języków w których taka zgodność oznaczania i znaczenia zachodzi.

Czytaj więcej: Znaczenie a oznaczanie

Podkategorie

Refleksje nad istotą obliczeń oraz generowanej przez komputery rzeczywistości.

Pragmatyczne podejście do klasycznych (i nie tylko) problemów filozoficznych.