Niniejszy wpis podejmuje dyskusję z kluczową tezą książki dra Marcina Miłkowskiego „Explaining the Computational Mind” (the MIT Press 2013), do której odnoszę się dalej skrótem ECM, rzeczoną zaś tezę określam skrótowo jako KRM — Kluczowa Równoważność Miłkowskiego.
KRM. Proponuję, żeby pojęcia przetwarzania informacji i obliczania traktować jako zamienne. Dzięki temu wszelkie wypowiedzi dotyczące przetwarzania informacji można będzie przekładać na precyzyjne terminy obliczeniowe.
Jest to przekład następującego tekstu kończącego rozdział 1 (str.24).
I propose that the notions of computation and information processing be used interchangeably. This will allow us to translate all talk of information processing into clear computational terms.
Jako czytelnik ECM starałem się tę tezę dobrze zrozumieć, dostrzegając jej podstawową w książce rolę. Z tych prób zrozumienia zrodziły się następujące pytania, które odróżniam numerami poprzedzanymi znakiem §.
§1. Czy zgodne jest z intencją Autora rozumienie terminu „zamiennie” jako wskazującego na stosunek równozakresowości (a nie np. równoznaczności)?
§2.1. Jeśli tak, to skąd wiadomo, że te pojęcia są równozakresowe? Równozakresowość rozumiem tu w myśl następującej parafrazy propozycji KRM (gwiazdka wskazuje, że jest to parafraza).
KRM*. x jest procesem Przetwarzania INformacji (PIN) m w informację n wtedy i tylko, gdy x jest procesem OBLiczania (OBL) funkcji n=f(m).
Widzę dwie możliwe odpowiedzi (A,B) na pytanie, jak uzasadnić równozakresowość.
(A) Przyjmuje się KRM* jako postulat znaczeniowy.
(B) Dowodzi się na podstawie określonych założeń, że z każdej ze stron równoważności KRM* wynika druga strona.
§2.2. Czy parafraza KRM* oddaje intencje KRM?
§2.3. Poprawna jest odpowiedź A czy B?
§2.4. Jeśli A, to czy jest ten postulat definicją sprawozdawczą, projektującą czy regulującą?
§2.5. Jeśli B, to z jakich założeń wynika każda z implikacji:
PIN(x)=>OBL(x) oraz OBL(x)=>PIN(x)?
§3.1. Zarówno przy odpowiedzi A jak i B powstaje pytanie: w jakim sensie brany jest predykat OBL? Odróżnijmy następujące znaczenia:
OB/T (OBliczanie w sensie Turinga): obliczyć = znaleźć wartość funkcji obliczalnej w sensie Turinga 1936, czyli przez zastosowanie jakiegoś algorytmu.
OB/S (OBliczanie w sensie Szerszym): obliczyć = (a) znaleźć wartość funkcji obliczalnej lub (b) funkcji nieobliczalnej lub (c) wykazać, że równanie wyrażające daną funkcję nie ma rozwiązania.
Co się tyczy punktu b, Turing 1939 („Systems of Logic Based on Ordinals”) określał metaforycznie takie „obliczanie” jako czynność wyroczni (oracle); w zwyczajowym idiomie matematycznym mówi się w tym przypadku o postępowaniu intuicyjnym. Jako osiagnięcie wyroczni podawał Turing przykładowo rozumowanie prowadzące do znalezienia liczby będącej numerem zdania gödlowskiego.
Jako inny znaczący przykład postępowania intuicyjnego podałbym Andrew Wilesa słynny dowód Wielkiego Twierdzenia Fermata (1995), o którym wiemy na pewno, że ten 200-stronicowy tekst nie jest dowodem sformalizowanym, a więc jest obliczaniem w sensie szerszym — dopuszczającym postępowanie, które nie jest algorytmiczne (mamy tu przypadek c z definicji OB/S). Pozostaje sprawą otwartą, czy problem Fermata jest rozstrzygalny na drodze algorytmicznej (tj. w sensie OB/T); to jest, czy da się skonstruować program, który umożliwiłby komputerowi samodzielne (tj. bez wspomagania heurystykami) wykonanie tego dowodu, poczynając od punktu, z którego startował Wiles.
§3.2. Czy przy takiej interpretacji OB/S zgodne będzie z intencją Autora domniemywać, że w KTM* przyjmuje on szerokie pojęcie obliczania (OB/S)? Opierałbym to domniemanie na deklarowanym przez Autora pluralistycznym ujmowaniu kognitywistyki, przy czym ów pluralizm mieści w sobie hiperkomptacjonizm (por.str.49, gdzie dopuszcza się hyper-Turing functions). Ten zaś polega (jeśli dobrze rozumiem) na uwzględnianiu funkcji nieobliczalnych jako jednego z możliwych przedmiotów poznania, mianowicie poznania intuicyjnego w matematyce.
§4. Nawet przy tak szerokim pojęciu obliczania, utożsamienie go z wszelkim przetwarzaniem informacji zdaje się napotykać na kontrprzykłady, które są może do uchylenia, ale pod warunkiem dodatkowych wyjaśnień. Wprawdzie przy rozumieniu szerokim możemy zaliczyć do obliczeń takie procesy przetwarzania informacji, jak twórcze pomysły, nie mające wsparcia w żadnym algorytmie. Wtedy, stwierdzając, że nie jest to obliczanie Turingowskie, można domniemywać, że mamy tu obliczanie jakiejś „hyper-Turing function” (por.3.2 wyżej).
Jak jednak będziemy kwalifikować np. marzenia senne? W potocznym rozumieniu są to jakieś przetworzenia informacji, gdy np. przechowane w pamięci realistyczne obrazy z minionego dnia przekształcają się w jakieś zwidy surrealistyczne. Jest to czy nie jest przekształcanie? Jeśli jest, a przy tym nie ma powodu, żeby taki proces uznać za obliczanie w jakimkolwiek sensie, to będziemy mieć wyraźny kontrprzykład do KRM*.
Oczywiście, można zdecydować, że sny itp. procesy przekształcania obrazów i myśli w wyniku przygodnych asocjacji (np. w luźnej pogawędce) nie należą do kategorii „information processing, nawet jeśli przemawiają za tym nawyki języka potocznego. Wolno tak postanowić, o ile czyni się to świadomie i z odpowiednią motywacją.
Czy taka jest właśnie strategia Autora?