Antoni Kreczmar


Antoni Kreczmar, powiązany z Warszawą, urodził się w 1945 roku i zmarł tragicznie 23 października 1996 roku w tym samym mieście. Był wybitnym polskim informatykiem i matematykiem, który zyskał tytuł doktora habilitowanego i przez wiele lat był pracownikiem naukowym Uniwersytetu Warszawskiego.

Jego rodzina, Kreczmarowie, miała długą tradycję w nauczaniu oraz w sztuce teatralnej i filmowej. Antoni był synem Jerzego Kreczmara, co wskazuje na wpływy artystyczne i intelektualne w jego życiu.

W 1973 roku obronił pracę doktorską zatytułowaną „Effectivity problems of Algorithmic Logic”, która została promowana przez znaną profesor Helenę Rasiową. Cztery lata później, w 1977, napisał swoją habilitacyjną pracę „Programmability in fields”, przynosząc tym samym nowe osiągnięcia do obszaru matematyki na Wydziale Matematyki UW.

Antoni Kreczmar spoczywa w rodzinnym grobowcu na cmentarzu Powązkowskim w Warszawie, w kwaterze 190–V–24/25. Jego dorobek oraz wkład w rozwój informatyki i matematyki w Polsce są nie do przecenienia.

Osiągnięcia naukowe

W zakresie logiki algorytmicznej

Doktorat Antoniego Kreczmara był skoncentrowany na oszacowaniu zbioru tautologii logiki algorytmicznej. Jego badania ujawniły, że ów zbiór nie przynależy do jakiejkolwiek klasy arytmetycznej w ramach hierarchii Kleene-Mostowskiego.

Dodatkowo, udowodnił, że ciało liczb wymiernych można scharakteryzować z dokładnością do izomorfizmu, bazując na aksjomatach oraz właściwości algorytmu Euklidesa. Jego wyniki wskazują, że jakakolwiek prawdziwa właściwość algorytmiczna dla programu P operującego w ciele Euklidesowym może być wyprowadzona z aksjomatów tego ciała, wzbogaconych o następującą formułę:

__ ∀ x≥0 ∀ y≥0 { podczas gdy x≠y wykonaj jeśli x>y to x:=x−y w przeciwnym razie y:=y−x koniec } x=y {\displaystyle \color {blue}\qquad \forall _{x\geq 0}\forall _{y\geq 0}\left\{{\begin{array}{l}\mathbf {podczas\ gdy} \ x\neq y\ \mathbf {wykonaj} \\\qquad \mathbf {jeśli} \ x>y\ \mathbf {to} \ x:=x-y\ \mathbf {w\ przeciwnym\ razie} \ y:=y-x\ \mathbf {koniec} \\\mathbf {koniec} \end{array}}\right\}x=y\color {black}} _(Euc)

Formuła ta powinna być interpretowana w kontekście nieujemnych wartości x i y, co oznacza, że program Euklidesa kończy swoje obliczenia. Warto podkreślić, że przedstawione twierdzenie nie jest prawdziwe w kontekście liczb rzeczywistych, czy w obszarze operacji na odcinkach w płaszczyźnie przy odejmowaniu i porównywaniu długości oraz w obszarze liczb zespolonych.

Na podstawie kolejnych badań, Kreczmar wywnioskował, że zbiór algorytmicznych właściwości, które są prawdziwe w zakresie liczb rzeczywistych, to formuły, które można wyprowadzić z aksjomatów liczb formalnie rzeczywistych.

Warto również zauważyć, że jest współautorem pierwszej monografii poświęconej logice algorytmicznej, co podkreśla jego znaczący wkład w ten obszar badań.

W zakresie złożoności obliczeniowej

Antoni Kreczmar wprowadził modyfikacje do algorytmu Strassena, dotyczącego mnożenia macierzy, co skutkowało znacznym zmniejszeniem zapotrzebowania na dodatkową pamięć roboczą. Zmiany te polegały na redukcji wymogu pamięci z:

dawnych 11/3 n² na aktualne 2/3 n², co przekłada się na bardziej efektywne wykorzystanie pamięci przy operacjach na macierzach.

Kreczmar był również pionierem w Polsce, prowadząc wykład dotyczący złożoności obliczeniowej, a także współautorował tłumaczenie książki „Projektowanie i analiza programów komputerowych”, która stała się ważnym podręcznikiem dla wielu pokoleń informatyków.

Kolejne jego osiągnięcia obejmują współautorstwo trzech książek poświęconych analizie algorytmów, m.in.: Elementy analizy algorytmów, Analiza algorytmów i struktur danych oraz Analysis of Algorithms and Data Structures.

W zakresie języków programowania obiektowego

Kreczmar był współautorem języka programowania obiektowego Loglan’82, gdzie zaprezentował swoje innowacyjne podejście do tworzenia systemu zarządzania pamięcią obiektów. Wykazał, że możliwe jest bezpieczne usuwanie niepotrzebnych obiektów, eliminując ryzyko pojawienia się wiszących referencji, a także umożliwił przeprowadzenie operacji w czasie stałym.

Opracował także unikalny mechanizm, który rozwiązywał pytania dotyczące identyfikatorów w programach oraz możliwości zachowania mechanizmu Display Vectora. Jego system zarządzania pamięcią był kompleksowy, umożliwiając operacje takie jak: tworzenie nowego obiektu, kompresja kopca obiektów, a także bezpieczeństwo operacji usuwania obiektów.

Specjalne rozwiązania, jakie wprowadził, pozwalały na deterministyczne zachowanie i zapobiegały zjawisku wiszących referencji. Koszt operacji kill był stały, niezależny od liczby wskaźników na dany obiekt.

W kontekście zarządzania współprogramami, Kreczmar zaktualizował system, eliminując sprzeczności z występującymi w Simula67. Był także współautorem nie zrealizowanej wersji Loglan oraz stworzył running system dla języka Loglan’88.

model A (Loglan’82)Model B (C++ 1986)Model C (Java 1995, Python)
Stan przedObiekt jest wskazywany przez zmienne x1, x2, …, xn.
Instrukcja kill(xi) delete(xi)x1=null;x2=null; … xn=null;
Po wykonaniu gc() obiekt zostanie usunięty.
Stan poWszystkie zmienne mają wartość none. Obiekt został usunięty.Obiekt został usunięty. x jest równy null. Inne zmienne wskazują na zwolnione miejsce – to niebezpieczny błąd – wisząca referencja.Obiekt usunięty, pod warunkiem, że wszystkie zmienne wskazujące na obiekt o zostały zaktualizowane.
KosztyStałe (niewielkie)Stałe (niewielkie).Znaczny, zależny od liczby zmiennych oraz całkowitego rozmiaru zajmowanej pamięci (koszt gc()).
RyzykoBrak(!).
Dostęp do obiektu o generuje wyjątek reference to none.
Duże ryzyko (przy n>1) błędu wiszących referencji
Wysokie prawdopodobieństwo sprzecznych informacji.
Istnieje ryzyko, że programista zapomni o usunięciu niepotrzebnej referencji do obiektu.

Inne

Antoni Kreczmar jest postacią, która ma znaczący wpływ na rozwój nauki i technologii w Polsce. W czasie swojej kariery wypromował pięciu doktorantów, z których dwóch osiągnęło tytuł profesora.

Za swoje osiągnięcia naukowe został odznaczony nagrodą państwową pierwszego stopnia w kategorii zespołowej za stworzenie oraz realizację języka programowania obiektowego Loglan’82, co miało miejsce w roku 1986.

Warto także podkreślić, że Kreczmar przyczynił się do dynamicznego rozwoju internetu w Polsce, szczególnie w latach dziewięćdziesiątych dwudziestego wieku. W 1989 roku miał istotny wkład jako współorganizator konferencji związanej z podstawami matematycznymi informatyki, która odbyła się w Porąbce.

Pełnił również kluczową rolę w administracji, będąc dyrektorem departamentu Informatyki w Ministerstwie Finansów w latach 1994–1996. Niestety, zmarł podczas realizacji projektu związanego z budową systemu POLTAX, który miał na celu rozwój informatycznego systemu podatkowego w Polsce.

Po swojej śmierci został uhonorowany Krzyżem Kawalerskim Orderu Odrodzenia Polski, co jest dowodem na jego znaczny wkład w dziedzinie nauki oraz technologii.

Wybrane publikacje

W dorobku publikacyjnym Antoniego Kreczmara można znaleźć szereg znaczących prac, które obejmują różnorodne tematy związane z informatyką oraz logiką algorytmiczną. Wśród nich wyróżniają się m.in.:

  • [Kreczmar 1977a] Antoni Kreczmar. Problemy efektywności w logice algorytmicznej. „Fundamenta Informaticae”, 1977,
  • [Kreczmar 1977b] Antoni Kreczmar. Programowalność w polach. „Fundamenta Informaticae”, s. 195-230, 1977,
  • [Kreczmar, Cioni 1984] Antoni Kreczmar, Gianna Cioni. Programowana dealkalizacja bez wiszącego odniesienia. „Information Processing Letters”, s. 179-187, 1984,
  • [Banachowski, Kreczmar 1989] Lech Banachowski, Antoni Kreczmar: Elementy analizy algorytmów. Warszawa: WNT, 1989, s. 197. ISBN 83-204-1147-5,
  • [Banachowski, Kreczmar, Rytter 1987] Lech Banachowski, Antoni Kreczmar, Wojciech Rytter: Analiza algorytmów i struktur danych. Warszawa: WNT, 1987, s. 217. ISBN 83-204-0717-6,
  • [Banachowski, Kreczmar, Rytter 1991] Lech Banachowski, Antoni Kreczmar, Wojciech Rytter: Analiza algorytmów oraz struktur danych. Nowy Jork: Addison-Wesley, 1991, s. 300. ISBN 0-201-41693-X,
  • [Loglan 82] W.M. Bartol i in.: Raport o języku programowania Loglan’82. Warszawa-Łódź: PWN, 1984, s. 165,
  • [Kreczmar 1976] Antoni Kreczmar: Wymagania dotyczące pamięci algorytmu Strassena. T. Proc. MFCS’76. Berlin: Springer, 1976, s. 404-407, seria: LNCS. ISBN 3-540-07854-1,
  • [Grabowski, Kreczmar 1978] Michał Grabowski, Antoni Kreczmar: Dynamiczne teorie liczb rzeczywistych i zespolonych. T. Proc. MFCS’78. Berlin: Springer Vlg, 1978, s. 239-249, seria: LNCS 64. ISBN 0-387-08921-7,
  • [Kreczmar, Oktaba, Ratajczak, Litwiniuk 1983] Antoni Kreczmar, W.M. Bartol, H. Oktaba, A.I. Litwiniuk: Semantyka i implementacja prefiksowania na wielu poziomach. T. proc. Logics of Programs and their Applications. Berlin: Springer Vlg, 1983, s. 45-80, seria: LNCS 148. ISBN 0-387-11981-7,
  • [Kreczmar i in. 1984] Antoni Kreczmar, Manfred Krause, Hans Langmaack, Andrzej Salwicki: Problemy specyfikacji i implementacji języków programowania odpowiednich dla typów danych hierarchicznych. T. Rep. 8410. Kiel: Institut für Informatik, Uniwersytet w Kilonii, 1984,
  • [Kreczmar 1982] Antoni Kreczmar: Język programowania Loglan’82 podstawowe konstrukcje i możliwości. Warszawa: Uniwersytet Warszawski, 1982, s. 66,
  • [Kreczmar i in. 1986] Antoni Kreczmar, Manfred Krause, Hans Langmaack, Marek Warpechowski: Konkatenacja modułów programowych – algebraiczne podejście do problemów semantycznych i implementacyjnych. Berlin: Springer, 1986, s. 134-156, seria: LNCS 208,
  • [Kreczmar, Salwicki, Warpechowski 1990] Antoni Kreczmar, Andrzej Salwicki, Marek Warpechowski: Loglan’88 – Raport o języku programowania. Berlin: Springer Vlg, 1990, s. 133, seria: LNCS 414. ISBN 0-387-52325-1,
  • [Cioni, Kreczmar 1989] Gianna Cioni, Antoni Kreczmar: Moduły w językach programowania wysokiego poziomu. T. Advanced Programming Methodologies. Londyn: Academic Press, 1989, s. 247-340. ISBN 0-12-174690-9,
  • [Cioni, Kreczmar, Vitale 1989] Gianna Cioni, Antoni Kreczmar, Ricardo Vitale: Zarządzanie pamięcią. T. Advanced Programming Methodologies. Londyn: Academic Press, 1989, s. 341-366. ISBN 0-12-174690-9,
  • [Kreczmar, Mirkowska 1989] Antoni Kreczmar, Grażyna Mirkowska: Matematyczne podstawy informatyki. Berlin: Springer Vlg, 1989, s. 620, seria: LNCS. ISBN 978-3-540-51486-2,
  • [Kreczmar 1977] Antoni Kreczmar: O obliczeniach skończonych i nieskończonych. T. Proc. FCT’77. Bonn: Springer Vlg, 1977, s. 441-446, seria: LNCS 56. ISBN 0-387-08442-8,
  • [Kreczmar 1977] Antoni Kreczmar. O nieskończonych zbiorach relacji wielomianowych. „Bull.Acad.Pol.Sci.Ser.Astr.Math.Phys.”. 25, 1977. PWN. brak numeru strony,
  • [Kreczmar 1979] Antoni Kreczmar: Kilka uwag historycznych na temat logiki algorytmicznej. T. Algorytmy w nowoczesnej matematyce i informatyce. Berlin: Springer Vlg, 1979, s. 999-1000, seria: LNCS. ISBN 0-12-345678-9,
  • [Banachowski i in.] Lech Banachowski, Antoni Kreczmar, Grażyna Mirkowska, Helena Rasiowa, Andrzej Salwicki: Wprowadzenie do logiki algorytmicznej – metamatematyczne badania teorii programów. T. 2: Publikacje Centrum Banacha. Warszawa: PWN, 1977, s. 7-99, seria: Publikacje Centrum Banacha. ISBN 123.

Przypisy

  1. Cmentarz Stare Powązki: KRECZMAROWIE, [w:] Warszawskie Zabytkowe Pomniki Nagrobne [dostęp 28.11.2021 r.]
  2. Dr hab. Antoni Kreczmar, [w:] baza „Ludzie nauki” portalu Nauka Polska (OPI PIB) [dostęp 30.12.2015 r.]
  3. Kreczmar, Antoni (1945-1996). Katalog elektroniczny Biblioteki Narodowej. [dostęp 02.02.2017 r.]
  4. Zob. rozdział o Kreczmarach w Olgierd Budrewicz: Sagi warszawskie, czyli sensacyjne i powszednie, romantyczne i prozaiczne dzieje dziesięciu wielkich rodów warszawskich. Warszawa: Czytelnik, 1967.
  5. A.V. Aho, J.E. Hopcroft, J.D. Ullman: Projektowanie i analiza programów komputerowych. Warszawa: PWN, 1983.
  6. Był delegatem Senatu UW w projekcie NASK w latach 90 XX wieku.
  7. E.W. Dijkstra: mechanizm znany jako Display Vector, Numerische Mathematik 2 (1960) 312–318.
  8. Sytuacja w Pythonie wymaga dłuższego opisu.
  9. W r. 1974 w Instytucie Informatyki UW.
  10. Dr hab. Antoni Kreczmar

Oceń: Antoni Kreczmar

Średnia ocena:4.55 Liczba ocen:14