{{TIN065 Prednášky}}

Máme tu siedmu prednášku, čo znamená, že by sme mali byť už za polovicou.

Na minulej prednáške sme sa začali zaoberať aritmetickou hierarchiou. Tak trochu s nadhľadom sme vynechávali premenné. Tiež sme si povedali, že hierarchie nie sú až tak zriedkavá vec. Jednu nájdeme v zložitosti - tam máme kvantifikátory obmedzené polynómom (asi ako "niečo existuje a je to nájditeľné v polynomiálnom čase"). Tiež je istá paralela medzi kvantifikátormi a operáciami zjednotenie a prienik (patrí do každej množiny, patrí do aspoň jednej množiny).

Pre pripomenutie: Σ\Sigma sú tie, ktoré začínajú existenčným kvantifikátorom a Π\Pi sú tie, čo začínajú všeobecným. Triedy Σ0\Sigma_0 a Π0\Pi_0 sú základné predikáty (bez kvantifikátorov, takže Σ0=Π0\Sigma_0=\Pi_0). V Σn\Sigma_n a Πn\Pi_n sú zasa tie predikáíty, ktoré sú vyjadriteľné ako predikáty s Σn\Sigma_n alebo Πn\Pi_n prefixom, čiže pred sebou majú n striedajúcich sa skupín kvantifikátorov. Dôležité je tiež, že prefix sa dá redukovať (v každej skupine ostane len jeden kvantifikátor) a obmedzené kvantifikátory nám nevadia (vieme sa ich zbaviť).

Aritmetický predikát je taký, ktorý má jeden z našich prefixov a zvyšok je záležitosťou predikátovej logiky (sú tam nejaké spojky a tak).

Presnejšie značenie je Σn0\Sigma_n^0, kde 0 znamená, že kvantifikujeme cez základné objekty (prirodzené čísla). 1 by znamenalo kvantifikovať cez funkcie, vyššie čísla cez niečo vyššie. To robiť nebudeme. V zložitosti sa dá stretnúť s označením Σnp\Sigma_n^p, kde p znamená polynomiálnu hierarchiu. V značení je trochu neporiadok.

Celá hierarchia sa dá relativizovať a vzniknú nám Σn0,A\Sigma_n^{0,A} predikáty.

Príklad: Tot je Π2\Pi_2.

ParseError: KaTeX parse error: Undefined control sequence: \mbox at position 1: \̲m̲b̲o̲x̲{Tot} = \{x:\fo…

Iný príklad: Rek:

ParseError: KaTeX parse error: Undefined control sequence: \mbox at position 1: \̲m̲b̲o̲x̲{Rek} = \{x:W_x…

. Každá WxW_x je rekurzívne spočetná (to vieme), len niektoré nie sú rekurzívne.xRek    Wxx \in Rek \iff \overline{W_x} je rekurzívne spočetná (Postová veta)     y(Wx=Wy)\iff \exists y (\overline{W_x} = W_y)    y(WxWy=N&WxWy=)\iff \exists y (W_x \cup W_y = \mathbb{N} \And W_x \cap W_y = \emptyset)    y(z(zWxWy)&z(zWxWy))\iff \exists y (\forall z (z \in W_x \cup W_y) \And \forall z (z \notin W_x \cap W_y))    y(zs(zWx,sWy,s)&z,s(zWx,sWy,s))\iff \exists y (\forall z \exists s (z \in W_{x,s} \cup W_{y,s}) \And \forall z, s (z \notin W_{x,s} \cap W_{y,s})). V poslednom kroku už máme iba kvantifikátory na rekurzívnej podmienke (s je ako vždy počet krokov) a celé je to tvaru (&)\exists (\forall \exists \And \forall), z čoho sa dá "wen:Tarski–Kuratowski%20algorithm" nejak vyhrabať

ParseError: KaTeX parse error: Undefined control sequence: \mbox at position 26: …orall \exists (\̲m̲b̲o̲x̲{rek. podm.})

, takže to celé bude v Σ3\Sigma_3. Keby ostal čas a nezabudlo sa na to, na konci by sme si povedali prečo to lepšie nejde. Podobným spôsobom sa ukáže, že Fin je Σ2\Sigma_2.

Vetičky

#BΣn    BΠnB\in \Sigma_n \iff \overline{B} \in \Pi_n

#

ParseError: KaTeX parse error: Undefined control sequence: \mbox at position 16: B\in \Sigma_n (\̲m̲b̲o̲x̲{resp. } \Pi_n)…

pre m>nm>n #

ParseError: KaTeX parse error: Undefined control sequence: \mbox at position 31: …B\in \Sigma_n (\̲m̲b̲o̲x̲ ̲{resp. } \Pi_n)…

Dôkaz:

#Triviálne z De Morganových pravidiel (teda, z toho, že ¬¬\exists \neg \equiv \neg \forall a opačne).

#Druhé tvrdenie je len vyjadrením toho, že ak niečo ide jednoducho, ide to aj zložito. Ak potrebujem pridať kvantifikátor, tak si pridám fiktívnu premennú, ktorá nič nezmení a nepokazí. A kvantifikátor pridávam na koniec reťazca (akurát keď potrebujem zmeniť Σ\Sigma na Π\Pi alebo späť, tak pridám jeden na začiatok) tak, by sa striedali. #Mali sme vetu, ak AmBA \leq_m B a B je rekurzívne spočetná, tak aj A je rekurzívne spočetná. Táto veta má rovnaký dôkaz. Ale predsa aspoň niečo: Nech B=Q(x,y1,,yn)B = \exists \forall \cdots Q(x, y_1, \ldots, y_n). Keďže sú m-prevoditeľné, tak existuje ORF f, že xA    f(x)B    Q(f(x),y1,,yn)x \in A \iff f(x) \in B \iff \exists \forall \ldots Q(f(x), y_1, \ldots, y_n), kde to na konci je už vyjadrenie A v Σn\Sigma_n (pre Πn\Pi_n podobne).

Zaujíma nás, ako zapisovať množiny čo najjednoduchšie a ako táto hierarchia súvisí so skokom. A tiež nás zaujíma numerácia a indexácia.

Numerácia a indexácia

Vieme, že Σ0=Π0\Sigma_0=\Pi_0 nemajú univerzálny ORP. (sporom: Nech je R(e,x)R(e, x) e-ty ORP. Tak si vezmime ¬R(x,x)\neg R(x, x), ktorý bude mať číslo e0e_0 a keď pustíme R(e0,e0)R(e_0, e_0), tak sa to bude rovnať svojej negácii).

Tiež vieme, že Σ1\Sigma_1 má univerzálny Σ1\Sigma_1 predikát. Ten pre jednu premennú má premenné dve a je tvaru sT1(e,x,s)\exists s T_1(e, x, s) a platí tam s-m-n veta.

Veta: Pre n1\forall n \geq 1 triedy Σn\Sigma_n a Πn\Pi_n majú univerzálny Σn\Sigma_n a Πn\Pi_n predikát. Dôsledkom je, že sa dá zaviesť pojem Σn\Sigma_nindex, prípadne Σn\Sigma_ngoedelového čísla. Univerzálny predikát nám poskytuje indexáciu a numeráciu a my vieme povedať, čo je to etý predikát.

Dokazuje sa to indukciou. Pre n=1n=1 máme pre Σ1\Sigma_1 predikát sT1(e,x,s)\exists s T_1(e, x, s) a pre Π1\Pi_1 s¬T1(e,x,s)\forall s \neg T_1(e, x, s). K Π1\Pi_1: Π1\Pi_1 je negáciou Σ1\Sigma_1, a z ¬sT1(e,x,s)\neg \exists s T_1(e,x,s) vzniklo s¬T1(e,x,s)\forall s \neg T_1(e,x,s). Rovnako z univerzálneho predikátu k Σn\Sigma_n vytvoríme univerzálny k Πn\Pi_n.

Nech n je nepárne. Náš Σn\Sigma_n reťazec končí na \exists a vyzerá asi takto: Q(x,y1,,yn)\exists \forall \ldots \exists Q(x, y_1, \ldots, y_n). Odrežeme to pred posledným kvantifikátorom a dostaneme ynQ(x,y1,,yn)\exists y_n Q(x, y_1, \ldots, y_n), kde všetky premenné okrem yny_n sú voľné. To je ekvivalentné s univerzálnym Σ1\Sigma_1 predikátom pre n premenných: ynTn(e,x,y1,,yn)\exists y_n T_n(e, x, y_1, \ldots, y_n) a k tomu prilepíme odtrhnuté kvantifikátory: y1y2ynTn(e,x,y1,,yn)\exists y_1 \forall y_2 \ldots \exists y_n T_n(e, x, y_1, \ldots, y_n), kde e je číslo predikátu a x je vstup.

Pre párne n je postup skoro rovnaký, len pri odtrhnutí \forall prejdem k negácii: z Q()\forall Q() sa stane jednou negáciou ¬Q()\exists \neg Q(), ktoré je ekvivalentné univerzálnemu Tn()\exists T_n() a z toho druhou negáciou späť na ¬Tn()\forall \neg T_n(). A k tomu pridám odrezané kvantifikátory.

Pre Πn\Pi_n sa to dokazuje rovnako.

Pekným zistením je, že KΣ1Π1K\in \Sigma_1 - \Pi_1 (K je rekurzívne spočetná, ale jej doplnok už nie). Máme dokonca vetu:

Veta: n1:ΣnΠn\forall n \geq 1 : \Sigma_n - \Pi_n \neq \emptyset.

Dôkaz: rovnaký ako pre n=1. Nech Univ(n)(e,x)Univ^{(n)}(e, x) je univerzálny predikát pre Σn\Sigma_n. Vezmem P(x)=Univ(n)(x,x)P(x) = Univ^{(n)}(x,x). To, že je v Σn\Sigma_n je vidieť a keby bol v Πn\Pi_n, tak jeho negácia by musela byť v Σn\Sigma_n. Tá má svoje číslo e0e_0 a je teda Univ(n)(e0,x)Univ^{(n)}(e_0, x). Teda ¬Univ(n)(x,x)=Univ(n)(e0,x)\neg Univ^{(n)}(x, x) = Univ^{(n)}(e_0, x), čo pre x=e0x=e_0 dá spor. Takže P(x)P(x) je v Σn\Sigma_n ale nie v Πn\Pi_n.

Fakt: Σ1Π1=Σ0=Π0\Sigma_1 \cap \Pi_1 = \Sigma_0 = \Pi_0 (to je Postova veta).

Uvidíme ale, že to neplatí pre vyššie Σn\Sigma_n. Už pre dvojku Σ1Π1\Sigma_1\cup \Pi_1 je vlastnou podmnožinou Σ2Π2\Sigma_2 \cap \Pi_2.

Veta o hierarchii: #n1:n\forall n \geq 1: \emptyset^n je Σn\Sigma_n úplná.

#A je rekurzívne spočetná v n    AΣn+1n0\emptyset^n \iff A \in \Sigma_{n+1} \forall n \geq 0 #ATn    AΣn+1Πn+1A \leq_T \emptyset^n \iff A\in \Sigma_{n+1} \cap \Pi_{n+1}

Túto vetu si dokážeme nabudúce.

Poznámky: {A:AT}\{A: A \leq_T \emptyset^{\prime}\} je viac ako Σ1Π1\Sigma_1 \cup \Pi_1

Σ1\Sigma_1 sú rekurzívne spočetné množiny a Π1\Pi_1 ich doplnky. Ale už netriviálna kombinácia množín z Σ1\Sigma_1 a Π1\Pi_1 bude T-prevoditeľná na \emptyset^{\prime}, ale nebude v Σ1Π1\Sigma_1 \cup \Pi_1.

Príkladom je množina K×KK\times \overline{K}. Tá je T-prevoditeľná na \emptyset^{\prime}. Ale zároveň K1K×KK \leq_1 K\times \overline{K} (napr. funkciou x<x,z0>x\to <x, z_0> a K1K×K\overline{K} \leq_1 K\times \overline{K} napríklad funkciou x<z0,x>x\to <z_0, x>. A teda ak by K×KK\times \overline{K} bolo v Σ1\Sigma_1, tak by tam musela byť aj K\overline{K} a ak by K×KK\times \overline{K} bolo v Π1\Pi_1, tak by tam musela byť aj KK. A tie ako vieme tam nie sú.

A ešte definíciu pojmu, ktorý sme vo vete o hierarchii použili: A je Σn\Sigma_n úplná ak je v Σn\Sigma_n a hocijaká B zo Σn\Sigma_n sa dá 1-previesť na A.

Poznámka: prečo v zložitosti nevieme tak pekne zistiť niektoré vzťahy (či niektoré triedy sú alebo nie sú zhodné)? Pretože si nemôžeme pomôcť univerzálnym polynómom. Taký proste nemáme.