W niniejszym rozdziale omówimy miary złożoności drzew obliczeniowych w kontekście struktur 1-predykatowych (1PSM), ze szczególnym uwzględnieniem złożoności opisów problemów oraz minimalnej złożoności drzew obliczeniowych, które rozwiązują dany problem w sposób deterministyczny lub niedeterministyczny. Rozważymy również zależności między tymi miarami, które mają kluczowe znaczenie przy analizie obliczeniowej takich struktur.

Zacznijmy od wprowadzenia kilku definicji. Miara złożoności ψ\psi będzie nazywana ograniczoną (limited), jeśli dla dowolnych elementów α1,α2,α3P\alpha_1, \alpha_2, \alpha_3 \in P^* spełnione są trzy warunki:

  • ψ(α1α2)ψ(α1)+ψ(α2)\psi(\alpha_1 \alpha_2) \leq \psi(\alpha_1) + \psi(\alpha_2),

  • ψ(α1α2α3)ψ(α1α3)\psi(\alpha_1 \alpha_2 \alpha_3) \geq \psi(\alpha_1 \alpha_3),

  • ψ(α1)α1\psi(\alpha_1) \geq |\alpha_1|, gdzie α1|\alpha_1| oznacza długość α1\alpha_1.

Miara złożoności ψ\psi nazywana jest silnie ograniczoną (strongly limited), jeśli ψ(λ)=0\psi(\lambda) = 0, gdzie λ\lambda oznacza element pusty.

Miary złożoności, takie jak głębokość drzewa obliczeniowego, mogą być również rozszerzane na zbiór PP^*. Zdefiniowana na tym zbiorze funkcja ψ(α)\psi(\alpha) jest wtedy miarą złożoności drzewa obliczeniowego, które mierzy głębokość tego drzewa, przy czym ψ(α)=i=1mψ(pi)\psi(\alpha) = \sum_{i=1}^m \psi(p_i), gdzie α=p1pm\alpha = p_1 \dots p_m.

Ważną klasą miar jest miara ściśle ograniczona (strictly limited, skrócone sl), która spełnia dodatkowy warunek: jeśli α2λ\alpha_2 \neq \lambda, to ψ(α1α2α3)>ψ(α1α3)\psi(\alpha_1 \alpha_2 \alpha_3) > \psi(\alpha_1 \alpha_3). Głębokość i każda obliczalna miara głębokości są przykładami miar ściśle ograniczonych.

Równocześnie analizujemy problemy obliczeniowe na strukturach 1-predykatowych. Takie problemy mogą być dwu- lub wielowartościowe. W przypadku problemów z wieloma decyzjami wartościowymi mamy (n+1)(n+1)-elementową krotkę z=(ν,p1,,pn)z = (\nu, p_1, \dots, p_n), gdzie ν\nu to funkcja mapująca na zbiór P(ω)\mathcal{P}(\omega) (zbiór wszystkich niepustych skończonych podzbiorów ω\omega). Problem ten polega na znalezieniu liczby w zbiorze ν(p1(a),,pn(a))\nu(p_1(a), \dots, p_n(a)) dla danego aAa \in A, gdzie AA jest zbiorem elementów struktury.

Jeśli mówimy o drzewach obliczeniowych rozwiązujących te problemy, możemy mówić o dwóch przypadkach: rozwiązaniu deterministycznym i niedeterministycznym. Drzewo obliczeniowe rozwiązuje problem w sposób niedeterministyczny, jeśli dla każdej ścieżki ξ\xi w drzewie spełniony jest warunek: jeśli element aa należy do zbioru AA, to τ(ξ)z(a)\tau(\xi) \in z(a). Drzewo rozwiązujące problem w sposób deterministyczny jest drzewem, które w sposób deterministyczny prowadzi do rozwiązania problemu, które w przypadku niedeterministycznym zostało osiągnięte przez różne ścieżki.

Jeśli chodzi o problemy z pojedynczymi decyzjami wartościowymi, to krotka z=(ν,p1,,pn)z = (\nu, p_1, \dots, p_n) ma postać, w której ν\nu jest funkcją mapującą na zbiór liczb całkowitych, a elementy p1,,pnPp_1, \dots, p_n \in P są predykatami w strukturze. Z kolei drzewo rozwiązujące taki problem deterministycznie oznacza, że dla każdej ścieżki ξ\xi w drzewie, jeśli aAa \in A, to τ(ξ)=z(a)\tau(\xi) = z(a).

W tym kontekście, oprócz zrozumienia podstawowych definicji miar złożoności, istotne jest również zrozumienie roli globalnych typów dla par (U,ψ)(U, \psi), gdzie UU jest strukturą 1-predykatową, a ψ\psi miarą złożoności. Istnieje wiele zależności pomiędzy trzema głównymi miarami złożoności: złożonością opisu problemu, złożonością rozwiązania deterministycznego i złożonością rozwiązania niedeterministycznego. Zdefiniowane funkcje, takie jak UbcψU_{bc}^\psi i LbcψL_{bc}^\psi, pozwalają na wyznaczenie górnej i dolnej granicy tych złożoności w zależności od parametrów problemu.

Punktem centralnym jest zrozumienie globalnego typu pary miary złożoności i struktury 1-predykatowej, który jest zdefiniowany jako tabela, w której opisane są zależności między miarami złożoności dla różnych typów drzew obliczeniowych. Typy funkcji ψ\psi zależą od tego, jak rozkładają się zestawy Dom(g)\text{Dom}(g), Dom+(g)\text{Dom}^+(g) i Dom(g)\text{Dom}^-(g), co pozwala na klasyfikację zachowań miar w kontekście różnych rodzajów problemów.

Zrozumienie tych zależności jest kluczowe nie tylko w kontekście rozwiązywania problemów obliczeniowych w strukturach 1-predykatowych, ale także przy analizie wydajności obliczeniowej oraz przy wyborze odpowiednich algorytmów rozwiązywania problemów w zależności od struktury i miary złożoności.

Czym jest rozszerzenie elementarne i jak wpływa na n-typy struktur?

Rozszerzenie struktury U1U_1 do struktury U2U_2, gdzie U1U2U_1 \subset U_2, nazywamy rozszerzeniem, a dokładniej — jeśli dla dowolnego wzoru φFn(σ)\varphi \in Fn(\sigma) i dowolnego n-wyrazu aˉA1n\bar{a} \in A_1^n zachodzi równoważność: U1φ(aˉ)U_1 \models \varphi(\bar{a}) wtedy i tylko wtedy, gdy U2φ(aˉ)U_2 \models \varphi(\bar{a}), mówimy o rozszerzeniu elementarnym U2U_2 względem U1U_1, zapisując U1U2U_1 \prec U_2. W takim przypadku U1U_1 jest podstrukturą elementarną U2U_2.

Struktury U1U_1 i U2U_2 nazywamy elementarnie równoważnymi, jeśli dla każdego zdania φ\varphi w języku σ\sigma zachodzi, że U1φU_1 \models \varphi wtedy i tylko wtedy, gdy U2φU_2 \models \varphi, co zapisujemy jako U1U2U_1 \equiv U_2. Wynika stąd, że rozszerzenie elementarne zachowuje teorię struktury.

Zlematów 6.8 i 6.9 wynika, że rozszerzenie elementarne nie zmienia zbiorów n-typów Sn(U)S_n(U), które opisują możliwe typy zachowań nn-elementowych krotek w strukturze. W praktyce oznacza to, że wzbogacając strukturę do jej rozszerzenia elementarnego, nie tracimy informacji o typach, a jedynie potencjalnie je realizujemy na większym zbiorze elementów.

Ważnym zagadnieniem jest pojęcie nasycenia struktury względem programów (program-saturated structure). Dla struktury UU o uniwersum AA, definiuje się kardy­nał α(U)\alpha(U), który obejmuje zarówno moc zbioru AA, jak i liczby typów αn(U)=Sn(U)\alpha_n(U) = |S_n(U)| dla wszystkich nn. Właśnie dla takich kardynałów rozważa się istnienie rozszerzeń elementarnych nasyconych, czyli takich, które „realizują” wszystkie możliwe typy w sposób maksymalny. Twierdzenie 6.4 potwierdza istnienie takich rozszerzeń elementarnych o kardynale α(U1)\alpha(U_1) — najmniejszym możliwym, jakie spełnia nasycenie programowe.

Konstrukcja takich struktur opiera się na rozszerzeniach ω\omega-nasyconych, gdzie wprowadzane są specjalne podstruktury zawierające realizacje wszystkich typów n-tych, tworząc w ten sposób strukturę nasyconą. Umożliwia to traktowanie takich struktur jako uniwersalnych modeli, które zachowują teorię U1U_1, ale jednocześnie pozwalają na pełną realizację typów — co jest kluczowe w wielu zastosowaniach logiki modelowej i teorii programów.

Przechodząc do programów obliczeniowych, definicje primitive terms i primitive formulas oraz ich implementacje w schematach obliczeniowych podkreślają związek między strukturami a programami opartymi na tych strukturach. Schematy te są określone przez drzewa z węzłami funkcji i predykatów, które wyrażają podstawowe operacje i warunki logiczne w języku σ\sigma. Program obliczeniowy jest więc implementacją takiego schematu na konkretnej strukturze.

Koncepcja program-saturation nabiera szczególnego znaczenia, gdy rozważamy programy obliczeniowe oparte na strukturach — rozbudowane struktury nasycone umożliwiają pełniejsze i bardziej złożone realizacje obliczeń, odwzorowując wszystkie istotne typy zachowań.

Istotne jest także rozumienie kardynałów i ich sukcesorów, gdyż determinują one rozmiar i właściwości rozszerzeń. Kardynał α(U)\alpha(U) jest zdefiniowany tak, by uwzględniać zarówno uniwersum, jak i typy, co umożliwia analizę wielkości i nasycenia struktur w sposób precyzyjny i uogólniony.

Należy podkreślić, że rozszerzenia elementarne nie tylko zachowują własności struktury, ale dają także narzędzia do tworzenia modeli o specyficznych własnościach — nasyconych, realizujących wszystkie typy, co ma fundamentalne znaczenie w logice modelowej i jej zastosowaniach w informatyce, na przykład w analizie programów i drzew obliczeniowych.

Ważne jest zrozumienie, że pojęcia typów i nasycenia odnoszą się do możliwości „sprawdzania” i „realizowania” wszystkich logicznie dopuszczalnych konfiguracji w danej strukturze lub jej rozszerzeniu. To rozumienie pozwala lepiej docenić, w jaki sposób struktury te mogą służyć jako fundamenty do bardziej złożonych konstrukcji logicznych i obliczeniowych.

Jakie są zależności pomiędzy drzewami decyzyjnymi a tabelami decyzyjnymi w kontekście problemów obliczeniowych?

W kontekście analizy problemów decyzyjnych, wiele uwagi poświęca się klasyfikacji problemów za pomocą drzew decyzyjnych. Każdy problem z klasy Probl∞(U) można rozwiązać przy pomocy odpowiedniego drzewa decyzyjnego, a wynik tego rozwiązania może być określony przez tzw. tablicę decyzyjną. Zastępując klasyczne drzewa obliczeniowe drzewami decyzyjnymi, otrzymujemy równoważne podejście do rozwiązywania problemów. Dla problemu, który należy do zbioru Probl∞(U), możemy posłużyć się tylko predykatami zawartymi w jego opisie, aby uzyskać odpowiednie drzewo decyzyjne. Jest to zasada, która pokazuje, że analiza drzew obliczeniowych może być z powodzeniem zastąpiona przez analizę drzew decyzyjnych w kontekście takich problemów.

Dalsze badania wykazały, że zbiór drzew decyzyjnych dla problemów z klasy Probl∞(U) może być opisany przez klasyfikację tabel decyzyjnych o różnych typach decyzji. Na przykład, dla problemów, które wymagają decyzji binarnych (0-1), odpowiednie tablice decyzyjne mają formę tabel o decyzjach 0-1, które są zamknięte na operacje usuwania atrybutów i zmiany przypisanych decyzji do wierszy. Podobnie, dla problemów z wielowartościowymi decyzjami, odpowiadające im tablice mogą być opisywane jako tabele decyzyjne z wieloma wartościami, z operacjami zmiany przypisania atrybutów.

Równocześnie, dla takich tabel decyzyjnych, istnieje możliwość zastosowania silnych drzew decyzyjnych, które służą do rozwiązywania problemu rozpoznawania decyzji. Należy zauważyć, że dla tabel z jednoznacznymi decyzjami, powiązane drzewa decyzyjne będą deterministyczne, natomiast dla tabel z decyzjami 0-1, w grę wchodzą także drzewa decyzyjne niderministyczne, które mogą rozwiązywać te same problemy w sposób mniej jednoznaczny.

Z tego wynika, że dla dowolnego problemu z klasy Probl∞(U), możemy opracować odpowiadające mu drzewo decyzyjne, które w pełni opisuje proces decyzyjny tego problemu. Drzewa te mogą być zarówno deterministyczne, jak i niderministyczne, a ich struktura może być różna w zależności od typu tabeli decyzyjnej, którą rozważamy. Można zatem przyjąć, że badania nad strukturą drzew decyzyjnych stanowią kluczową metodę analizy problemów obliczeniowych.

Jednym z istotnych zagadnień jest zrozumienie wpływu operacji na tabelach decyzyjnych. Operacje te obejmują między innymi usuwanie atrybutów, zmienianie przypisanych decyzji oraz transformowanie tabel do formy binarnej (0-1). Dla tabel z jednoznacznymi decyzjami, te operacje mogą prowadzić do różnych wyników, w zależności od struktury tabeli i rodzaju decyzji. Ważnym zagadnieniem jest również badanie, jak te operacje wpływają na złożoność obliczeniową rozwiązania problemu.

Równolegle z rozważaniami nad strukturą drzew decyzyjnych, ważnym elementem jest także analiza złożoności obliczeniowej problemu. Można wyróżnić trzy główne parametry złożoności: złożoność opisu problemu, minimalna złożoność drzewa decyzyjnego deterministycznego oraz minimalna złożoność drzewa decyzyjnego niderministycznego. Badanie tych zależności pozwala na określenie, które metody rozwiązywania problemów są najbardziej efektywne w kontekście obliczeniowym.

Zdefiniowane przez nas pary 1psm (struktura 1-predykatowa wraz z miarą złożoności) stanowią punkt wyjścia do dalszych badań nad drzewami decyzyjnymi. Dla każdej pary 1psm istnieją odpowiednie funkcje, które opisują zależności pomiędzy złożonością opisu problemu a złożonością rozwiązań deterministycznych i niderministycznych. Analiza tych zależności jest kluczowa, aby zrozumieć, jak zmienia się złożoność problemów w zależności od typu decyzji i struktury tabeli.

Badania te pozwalają także na określenie tzw. lokalnych typów par 1psm, które opisują możliwe relacje między parametrami złożoności. Istnieje siedem podstawowych typów takich par, które definiują różne scenariusze złożoności obliczeniowej. Zrozumienie tych typów jest niezbędne do dokładnego modelowania problemów w kontekście drzew decyzyjnych i tabel decyzyjnych.

Dla każdego problemu z klasy Probl∞(U), rozważamy funkcje, które opisują zależności między złożonością opisu problemu a złożonością rozwiązania w postaci drzewa decyzyjnego. Istnieje wiele różnych tabel, które ilustrują te zależności, a każde rozwiązanie jest przypisane do konkretnego typu zależności. Z tego wynika, że dla dowolnego problemu możemy znaleźć odpowiedni typ drzewa decyzyjnego, który będzie spełniał wymogi dotyczące złożoności zarówno deterministycznych, jak i niderministycznych rozwiązań.