From: Martin Mares Date: Sun, 10 Jan 2010 20:05:08 +0000 (+0100) Subject: Prednaska o NP-uplnosti X-Git-Url: http://mj.ucw.cz/gitweb/?a=commitdiff_plain;h=5fa108f9e9a17fedc1be8cb2a79c1e2b25ec8256;p=ads2.git Prednaska o NP-uplnosti --- diff --git a/11-np/11-np.tex b/11-np/11-np.tex new file mode 100644 index 0000000..1007575 --- /dev/null +++ b/11-np/11-np.tex @@ -0,0 +1,295 @@ +\input lecnotes.tex + +\prednaska{11}{NP-úplné problémy}{\vbox{\hbox{(zapsali F. Kaèmarik, R. Krivák, D. Remi¹} + \hbox{ Michal Kozák, Vojta Tùma)}}} + +Dosud jsme zkoumali problémy, které se nás ptaly na to, jestli nìco existuje. Napøíklad jsme dostali formuli a problém splnitelnosti se nás ptal, zda existuje ohodnocení promìnných takové, ¾e formule platí. Nebo v~pøípade nezávislých mno¾in jsme dostali graf a èíslo $k$ a ptali jsme se, jestli v~grafu existuje nezávislá mno¾ina, která obsahuje alespoò~$k$ vrcholù. Tyto otázky mìly spoleèné to, ¾e kdy¾ nám nìkdo zadal nìjaký objekt, umìli jsme efektivnì øíci, zda je to objekt, který hledáme. Napøíklad pokud dostaneme ohodnocení promìnných logické formule, staèí jen dosadit a spoèítat, ¾e formule je \ nebo \. Zjistit, ¾e nìjaký objekt je ten, který hledáme, umíme efektivnì. Tì¾ké na tom je takový objekt najít. Co¾ vede k~definici obecných vyhledávacích problémù, kterým se øíká tøída problémù NP. Definujeme si ji poøádnì, ale nejdøíve zaèneme tro¹ièku jednodu¹¹í tøídou. + +\s{Definice:} P je {\I tøída rozhodovacích problémù}, které jsou øe¹itelné v~polynomiálním èase. Jinak øeèeno, problém +$L \in P \Leftrightarrow \exists $ polynom $f$ a~$\exists$ algoritmus $A$ takový, ¾e $\forall x: L(x)=A(x)$ a $A(x)$ dobìhne v~èase $\O(f(x))$. + +Tøída P odpovídá tomu, o èem jsme se shodli, ¾e umíme efektivnì øe¹it. Nadefinujme tedy tøídu NP: + +\s{Definice:} NP je {\I tøída rozhodovacích problémù} takových, ¾e $L \in {\rm NP}$ právì tehdy, kdy¾ $\exists $ problém +$K\in{\rm P}$ a $\exists$ polynom $g$ takový, ¾e pro +$\forall x$ platí $L(x)=1 \Leftrightarrow \exists $ nápovìda $ y: \vert y \vert \leq g(\vert x \vert)$ a souèasnì $K(x,y)=1$. + +\s{Pozorování:} Splnitelnost logických formulí je v~NP. Staèí si toti¾ nechat napovìdìt, jak +ohodnotit jednotlivé promìnné a pak ovìøit, jestli je formule splnìna. Nápovìda je polynomiálnì +velká (dokonce lineárnì), splnìní zkontrolujeme také v~lineárním èase. Odpovíme tedy ano právì +tehdy, existuje-li nápovìda, která nás pøesvìdèí, tedy pokud je formule splnitelná. + +\s{Pozorování:} Tøída P le¾í uvnitø NP. +V~podstatì øíkáme, ¾e kdy¾ máme problém, který umíme øe¹it v~polynomiálním èase bez nápovìdy, tak to zvládneme v~polynomiálním èase i s~nápovìdou. + +Problémy z minulé pøedná¹ky jsou v¹echny v NP (napø. pro nezávislou +mno¾inu je onou nápovìdou pøímo mno¾ina vrcholù deklarující nezávislost), +o jejich pøíslu¹nosti do P ale nevíme nic. +Brzy uká¾eme, ¾e to jsou v jistém smyslu nejtì¾¹í problémy v~NP. +Nadefinujme si: + +\s{Definice:} Problém $L$ je NP-{\I tì¾ký} právì tehdy, kdy¾ je na~nìj pøevoditelný +ka¾dý problém z~NP (viz definici pøevodù z minulé pøedná¹ky). + +Také platí, ¾e pokud umíme øe¹it nìjaký NP-tì¾ký problém v~polynomiálním èase, +pak umíme vyøe¹it v~polynomiálním èase v¹e v~NP, a tedy ${\rm P}={\rm NP}$. + +My se budeme zabývat problémy, které jsou NP-tì¾ké a samotné jsou v~NP. Takovým problémùm se øíká NP-úplné. + +\s{Definice:} Problém $L$ je NP-{\I úplný} právì tehdy, kdy¾ $L$ je NP-tì¾ký a $L \in {\rm NP}$. + +NP-úplné problémy jsou tedy ve~své podstatì nejtì¾¹í problémy, které le¾í v~NP. +Kdybychom umìli vyøe¹it nìjaký NP-úplný problém v~polynomiálním èase, pak +v¹echno v~NP je øe¹itelné v~polynomiálním èase. Bohu¾el to, jestli nìjaký +NP-úplný problém lze øe¹it v~polynomiálním èase, se neví. Otázka, jestli +${\rm P}={\rm NP}$, je asi nejznámìj¹í otevøený problém v~celé teoretické +informatice. + +Kde ale nìjaký NP-úplný problém vzít? K~tomu se nám bude velice hodit následující vìta: + +\s{Vìta (Cookova):} SAT je NP-úplný. + +\>Dùkaz je znaènì technický, pøibli¾nì ho naznaèíme pozdìji. Pøímým dùsledkem je, ¾e cokoli v~NP je pøevoditelné na SAT. +K dokazování NP-úplnosti dal¹ích problémù pou¾ijeme následující vìtièku: + +\s{Vìtièka:} Pokud problém $L$ je NP-úplný a $L$ se dá pøevést na $M\in{\rm NP}$ ($L \rightarrow M$), pak $M$ je také NP-úplný. + +\proof +Tuto vìtièku staèí dokázat pro NP-tì¾kost, NP-úplnost plyne okam¾itì z~toho, ¾e +problémy jsou NP-tì¾ké a le¾í v~NP (podle pøedpokladu). + +Víme, ¾e $L$ se dá pøevést na~$M$ nìjakou funkcí~$f$. Jeliko¾ $L$ je NP-úplný, +pak pro ka¾dý problém $Q\in{\rm NP}$ existuje nìjaká funkce~$g$, která pøevede +$Q$ na~$L$. Staèí tedy slo¾it funkci~$f$ s~funkcí~$g$, èím¾ získáme funkci pracující +opìt v~polynomiálním èase, která pøevede~$Q$ na~$M$. Ka¾dý problém z~NP se tedy +dá pøevést na problém~$M$. +\qed + +\s{Dùsledek:} Cokoliv, na co jsme umìli pøevést SAT, je také NP-úplné. Napøíklad nezávislá mno¾ina, rùzné varianty SATu, klika v~grafu~\dots + +Jak taková tøída NP vypadá? Pøedstavme si v¹echny problémy tøídy NP, jakoby seøazené +zhora nadolu podle obtí¾nosti problémù (tedy navzdor gravitaci), kde porovnání dvou +problémù urèuje pøevoditelnost (viz obrázek). + +\figure{p-np.eps}{Struktura tøídy NP}{2.5cm} + +Obecnì mohou nastat dvì situace, proto¾e nevíme, jestli ${\rm P}={\rm NP}$. +Jestli ano, pak v¹echno je jedna a ta samá tøída. To by bylo v nìkterých +pøípadech nepraktické, napø. ka¾dá ¹ifra by byla jednodu¹e rozlu¹titelná. +Jestli ne, NP-úplné problémy urèitì nele¾í v P, tak¾e P a NP-úplné problémy +jsou dvì disjunktní èásti NP. Také se dá dokázat (to dìlat nebudeme, ale je +dobré to vìdìt), ¾e je¹tì nìco le¾í mezi nimi, tedy ¾e existuje problém, který +je v~NP, není v~P a není NP-úplný (dokonce je takových problémù nekoneènì mnoho, +v nekoneènì tøídách). + +\s{Katalog NP-úplných problémù} + +Uká¾eme si nìkolik základních NP-úplných problémù. O~nìkterých jsme to dokázali +na~minulé pøedná¹ce, o~dal¹ích si to doká¾eme nyní, zbylým se na~zoubek podíváme +na~cvièeních. + +\itemize\ibull +\:{\I logické:} + \itemize\ibull + \:SAT (splnitelnost logických formulí v~CNF) + \:3-SAT (ka¾dá klauzule obsahuje max.~3 literály) + \:3,3-SAT (a navíc ka¾dá promìnná se vyskytuje nejvý¹e tøikrát) + \:SAT pro obecné formule (nejen CNF) + \:Obvodový SAT (není to formule, ale obvod) + \endlist +\:{\I grafové:} + \itemize\ibull + \:Nezávislá mno¾ina (mno¾ina alespoò~$k$ vrcholù taková, ¾e ¾ádné dva nejsou propojeny hranou) + \:Klika (úplný podgraf na~$k$ vrcholech) + \:3D párování (tøi mno¾iny se zadanými trojicemi, najít takovou mno¾inu disjunktních trojic, ve~které jsou v¹echny prvky) + \:Barvení grafu (obarvit vrcholy $k$~barvami tak, aby vrcholy stejné barvy nebyly nikdy spojeny hranou; NP-úplné u¾ pro~$k=3$) + \:Hamiltonovská cesta (cesta obsahující v¹echny vrcholy [právì jednou]) + \:Hamiltonovská kru¾nice (kru¾nice, která nav¹tíví v¹echny vrcholy [právì jednou]) + \endlist +\:{\I èíselné:} + \itemize\ibull + \:Batoh (nejjednodu¹¹í verze: dána mno¾ina èísel, zjistit, zda existuje podmno¾ina se zadaným souètem) + \:Batoh -- optimalizace (podobnì jako u pøedchozího problému, ale místo mno¾iny èísel máme mno¾inu + pøedmìtù s váhami a cenami, chceme co nejdra¾¹í podmno¾inu její¾ váha nepøesáhne zadanou kapacitu + batohu) + \:Loupe¾níci (rozdìlit mno¾inu na~dvì podmno¾iny se stejným souètem) + \:$Ax=b$ (soustava celoèíslených lineárních rovnic; $x_i$ mohou být pouze 0 nebo 1; NP-úplné i pokud $A_{ij}\in\{0,1\}$ a $b_i\in\{0,1\}$) + \:Celoèíselné lineární programování (existuje vektor nezáporných celoèísených $x$ takový, ¾e $Ax \leq b$) + \endlist +\endlist + +Nyní si uká¾eme, jak pøevést SAT na nìjaký problém. Kdy¾ chceme ukázat, ¾e na +nìco se dá pøevést SAT, potøebujeme obvykle dvì vìci: +konstrukci, která bude simulovat promìnné, tedy nìco, co nabývá dvou stavù +\/\; a nìco, co bude reprezentovat klauzule a umí zaøídit, aby +ka¾dá klauzule byla splnìna alespoò jednou promìnnou. +\h{3D párování (3D matching)} + +\>{\I Vstup:} Tøi mno¾iny, napø. $K$ (kluci), $H$ (holky), $Z$ (zvíøátka) a +mno¾ina $T$ kompatibilních trojic (tìch, kteøí se spolu snesou), + tj. $T \subseteq K\times H\times Z$. + +\>{\I Výstup:} Perfektní podmno¾ina trojic $P\subseteq K\times H \times Z$ -- + tj. taková podmno¾ina trojic, ¾e $(\forall k\in K\ \exists !p\in P, k\in p) + \wedge(\forall h\in H\ \exists !p\in P, h\in p) + \wedge(\forall z\in Z\ \exists !p\in P, z\in p)$ -- tedy ka¾dý byl vybrán + právì jednou. + + +\h { Pøevoditelnost 3,3-SAT na 3D-párování } + +Najdeme si takovouto konfiguraci: + +\fig{3d.eps}{4cm} + +\>4 zvíøátka, 2 kluci, 2 dívky a~takové 4 trojice, které oznaèíme $A, B, C, D$. +Je¹tì pøedpokládáme, ¾e zvíøátka se mohou úèastnit nìjakých jiných trojic, ale +tito ètyøi lidé se vyskytují pouze v~tìchto ètyøech trojicích a~nikde jinde. +V¹imneme si, ¾e existují právì dvì mo¾nosti, jak tento obrázek spárovat. +Abychom spárovali kluka $k_1$, tak si musíme vybrat $A$ nebo $B$. Kdy¾ si +vybereme $A$, $k_1$ i $d_2$ u¾ jsou spárovaní tak¾e si nesmíme vybrat $B$ ani +$D$. Pak jediná mo¾nost, jak spárovat $d_1$ a~$k_2$ je $C$. Jedna mo¾nost je +tedy vybrat si $A$ a $C$ a jeliko¾ je obrázek symetrický, tak kdy¾ vybereme +místo $A$ trojici $B$, dostaneme $B$ a~$D$. V¾dy si tedy vybereme dvì protìj¹í +trojice v~obrázku. + +Takovýto obrázek budeme pou¾ívat k~reprezentaci promìnných. Pro ka¾dou +promìnnou si nakreslíme takový obrázek a~to, ¾e $A$ bude spárované s~$C$, bude +odpovídat tomu, ¾e $x=1$, a~spárování $B$ a~$D$ odpovídá $x=0$. Pokud jsme +pou¾ili $A$ a~$C$, zvíøata se sudými èísly, tj. $z_2$ a~$z_4$, horní a~dolní +jsou nespárovaná a~pokud jsme pou¾ili $B$ a~$D$, zvíøátka $z_1$ a~$z_3$ zùstala +nespárovaná. Pøes tyto nespárovaná zvíøátka mù¾eme pøedávat informaci, jestli +promìnná $x$ má hodnotu \ nebo \ do dal¹ích èástí grafu. + +Zbývá vymyslet, jak reprezentovat klauzule. Klauzule jsou trojice popø. dvojice +literálù, napø. $\kappa = (x \lor y \lor \lnot r) $ kde +potøebujeme zajistit, aby $x$ bylo nastavené na $1$ nebo $y$ bylo nastavené na $1$ nebo $r$ na $0$. + +\fig{klauzule.eps}{4cm} + +\>Pro takovouto klauzuli si poøídíme dvojici kluk-dívka, kteøí budou figurovat +ve tøech trojicích se tøemi rùznými zvíøátky, co¾ mají být volná zvíøátka +z~obrázkù pro pøíslu¹né promìnné (podle toho, má-li se promìnná vyskytnout +s negací nebo ne). A~zaøídíme to tak, aby ka¾dé zvíøátko bylo +pou¾ité maximálnì v~jedné takové trojici, co¾ jde proto, ¾e ka¾dý literál se +vyskytuje maximálnì dvakrát a~pro ka¾dý literál máme dvì volná zvíøátka, +z~èeho¾ plyne, ¾e zvíøátek je dost pro v¹echny klauzule. Pro dvojice se postupuje +obdobnì. + +Je¹tì nám ale urèitì zbude $2p-k$ zvíøátek, kde $p$ je poèet promìnných, $k$ +poèet klauzulí --- ka¾dá promìnná vyrobí 4 zvíøátka, klauzule zba¹tí jedno +a samotné ohodnocení 2 zvíøátka --- tak pøidáme je¹tì $2p-k$ párù +kluk-dìvèe, kteøí milují +v¹echna zvíøátka, a~ti vytvoøí zbývající páry. + +Pokud formule byla splnitelná, pak ze splòujícího ohodnocení mù¾eme vyrobit +párování s~na¹í konstrukcí. Obrázek pro ka¾dou promìnnou spárujeme podle +ohodnocení, tj. promìnná je $0$ nebo $1$ a~pro ka¾dou klauzuli si vybereme +nìkterou z~promìnných, kterými je ta klauzule splnìna. Funguje to také ale +i~opaènì. Kdy¾ nám nìkdo dá párovaní v~na¹í konstrukci, pak z nìho doká¾eme +vyrobit splòující ohodnocení dané formule. Podíváme se, v~jakém stavu je +promìnná, a~to je v¹echno. Z~toho, ¾e jsou správnì spárované klauzule, u¾ +okam¾itì víme, ¾e jsou v¹echny splnìné. + +Zbývá ovìøit, ¾e na¹e redukce funguje v~polynomiálním èase. Pro ka¾dou klauzuli +spotøebujeme konstantnì mnoho èasu, $2p-k$ je také polynomiálnì mnoho a~kdy¾ to +seèteme, máme polynomiální èas vzhledem k~velikosti vstupní formule. Tím je +pøevod hotový a~mù¾eme 3D-párování zaøadit mezi NP-úplné problémy. + + +%RK + + +\h{Náznak dùkazu Cookovy vìty} + +Abychom mohli budovat teorii NP-úplnosti, potøebujeme alespoò jeden problém, o kterém doká¾eme, ¾e je NP-úplný, z definice. Cookova vìta øíká o NP-úplnosti SAT-u, ale nám se to hodí dokázat o tro¹ku jiném problému -- {\I obvodovém SAT-u}. + +\>{\I Obvodový SAT} je splnitelnost, která nepracuje s~formulemi, ale s~booleovskými obvody. Ka¾dá formule se dá pøepsat do booleovského obvodu, který ji poèítá, tak¾e dává smysl zavést splnitelnost i pro obvody. Na¹e obvody budou mít nìjaké vstupy a~jenom jeden výstup. Budeme se ptát, jestli se vstupy tohoto obvodu dají nastavit tak, abychom na výstupu dostali \. + +\>Nejprve doká¾eme NP-úplnost {\I obvodového SAT-u} a~pak uká¾eme, ¾e se dá pøevést na obyèejný SAT v~CNF. Tím bude dùkaz Cookovy vìty hotový. Zaènìme s pomocným lemmatem. + +\s{Lemma:} Nech» $L$ je problém v $P$. Potom existuje polynom $p$ a algoritmus, který pro $\forall n \ge 0$ spoète v èase $p(n)$ hradlovou sí» $B_n$ s $n$ vstupy a 1 výstupem takovou, ¾e $\forall x \in \{ 0, 1 \}^{n} : B_n(x) = L(x).$ + +\proof +Náznakem. Na základì zku¹eností z Principù poèítaèù intuitivnì chápeme poèítaèe +jako nìjaké slo¾ité booleovské obvody, jejich¾ stav se mìní v~èase. Uva¾me tedy nìjaký +problém $L \in {\rm P}$ a polynomiální algoritmus, který ho øe¹í. Pro vstup velikosti~$n$ dobìhne v~èase~$T$ polynomiálním v~$n$ a spotøebuje $\O(T)$ bunìk pamìti. +Staèí nám tedy \uv{poèítaè s~pamìtí velkou $\O(T)$}, co¾ je nìjaký booleovský obvod +velikosti polynomiální v~$T$, a~tedy i v~$n$. Vývoj v~èase o¹etøíme tak, ¾e sestrojíme~$T$ +kopií tohoto obvodu, ka¾dá z~nich bude odpovídat jednomu kroku výpoètu a bude +propojena s~\uv{minulou} a \uv{budoucí} kopií. Tím sestrojíme booleovský obvod, +který bude øe¹it problém~$L$ pro vstupy velikosti~$n$ a bude polynomiálnì velký +vzhledem k~$n$. + +\s{Poznámka:} +Je¹tì si dovolíme drobnou úpravu v~definici tøídy NP. Budeme chtít, aby nápovìda +mìla pevnou velikost, závislou pouze na~velikosti vstupu (tedy: $\vert y \vert += g(\vert x \vert)$). Proè je taková úprava BÚNO? Jistì si dovedete pøedstavit, +¾e pùvodní nápovìdu doplníme na po¾adovanou délku nìjakými \uv{mezerami}, které +program ignoruje (tedy upravíme program tak, aby mu nevadilo, ¾e dostane na +konci nápovìdy nìjak kódované mezery). + +\s{Vìta:} Obvodový SAT je NP-úplný. + +\proof +Máme tedy nìjaký problém $L$ z~NP a~chceme dokázat, ¾e $L$ se dá pøevést na obvodový +SAT (tj. NP-tì¾kost). Kdy¾ nám nìkdo pøedlo¾í nìjaký vstup $x$ (chápeme jako vektor $(x_1, x_2, \ldots, x_n)$), +spoèítáme velikost nápovìdy $g(\vert x\vert)$. Víme, ¾e kontrolní +algoritmus~$K$ (který kontroluje, zda nápovìda je správnì) je v~P. Vyu¾ijeme +intuice o~obvodech, abychom získali obvod, který pro konkrétní velikost vstupu +$x$ poèítá to, co kontrolní algoritmus $K$. Na vstupu tohoto obvodu bude $x$ +(vstup problému $L$) a~nápovìda~$y$. Na výstupu nám øekne, jestli je nápovìda +správná. Velikost vstupu tohoto obvodu bude tedy $\vert x\vert + g(\vert x\vert)$, co¾ je polynom. + +\fig{kobvod.eps}{2.3cm} + +\>V tomto obvodu zafixujeme vstup $x$ (na místa vstupu dosadíme konkrétní hodnoty z $x$). Tím získáme obvod, jeho¾ vstup je jen $y$ a~ptáme se, zda za $y$ mù¾eme dosadit nìjaké hodnoty tak, aby na výstupu bylo \. Jinými slovy, ptáme se, zda je tento obvod splnitelný. + +\>Pro libovolný problém z~NP tak doká¾eme sestrojit funkci, která pro ka¾dý vstup~$x$ v~polynomiálním èase vytvoøí obvod, který je splnitelný pravì tehdy, kdy¾ odpovìï tohoto problému na vstup $x$ má být \. Tedy libovolný problém z~NP se dá +v~polynomiálním èase pøevést na obvodový SAT. + +\>Obvodový SAT je v NP triviálnì -- za nápovìdu staèí vzít ohodnocení vstupù, hradla topologicky setøídit a postupnì vyhodnocovat. +\qed + +\s{Lemma:} Obvodový SAT se dá pøevést na 3-SAT. + +\proof +Budeme postupnì budovat formuli v~konjunktivní normální formì. Pro ka¾dé hradlo v~obvodu zavedeme novou promìnnou popisující jeho výstup. Pøidáme klauzule, které nám kontrolují, ¾e toto hradlo máme ohodnocené konzistentnì. Ka¾dý booleovský obvod se dá pøevést na ekvivalentní obvod, ve~kterém se vyskytují jen hradla {\sc and} a {\sc not}, tak¾e staèí najít klauzule odpovídající tìmto hradlùm. + +\>{\I Pøevod hradla \sc not}: na vstupu hradla budeme mít nìjakou promìnnou $x$ (která pøi¹la buïto pøímo ze~vstupu toho celého obvodu nebo je to promìnná, která vznikla na výstupu nìjakého hradla) a na výstupu promìnnou $y$. Pøidáme klauzule, které nám zaruèí, ¾e jedna promìnná bude negací té druhé: +$$\matrix{ (x \lor y), \cr + (\neg{x} \lor \neg{y}). \cr } + \hskip 0.2\hsize +\vcenter{\hbox{\epsfxsize=0.7cm\epsfbox{not.eps}}} +$$ + +\>{\I Pøevod hradla \sc and}: Hradlo má vstupy $x, y$ a~výstup $z$. Potøebujeme pøidat klauzule, které nám popisují, jak se má hradlo {\sc and} chovat. Tyto vztahy pøepí¹eme do~konjunktivní normální formy: +$$ +\left. \matrix{ + x\ \&\ y \Rightarrow z \cr + \neg{x} \Rightarrow \neg{z} \cr + \neg{y} \Rightarrow \neg{z} \cr +} +\ \quad + \right\} +\quad +\matrix{ + (z \lor \neg{x} \lor \neg{y}) \cr + (\neg{z} \lor x) \cr + (\neg{z} \lor y) \cr + } + \hskip 0.1\hsize +\vcenter{\hbox{\epsfxsize=0.7cm\epsfbox{and.eps}}} +$$ + +\>Kdy¾ chceme pøevádìt obvodový SAT na 3-SAT, obvod nejdøíve pøelo¾íme na takový, ve~kterém jsou jen hradla {\sc and} a~{\sc not}, a~pak hradla tohoto obvodu pøelo¾íme na klauzule. Formule vzniklá z~takovýchto klauzulí je splnitelná pravì tehdy, kdy¾ je splnitelný daný obvod. Pøevod pracuje v polynomiálním èase. +\qed + +\s{Poznámka:} +Kdy¾ jsme zavádìli SAT, omezili jsme se jen na formule, které jsou +v~konjunktivní normální formì (CNF). Teï u¾ víme, ¾e splnitelnost obecné +booleovské formule doká¾eme pøevést na obvodovou splnitelnost a tu pak +pøevést na 3-SAT. Opaèný pøevod je samozøejmì triviální, tak¾e obecný SAT +je ve~skuteènosti ekvivalentní s~na¹ím \uv{standardním} SATem pro CNF. + +\bye diff --git a/11-np/3d.eps b/11-np/3d.eps new file mode 100644 index 0000000..755fbcc --- /dev/null +++ b/11-np/3d.eps @@ -0,0 +1,641 @@ +%!PS-Adobe-3.0 EPSF-3.0 +%%Creator: 0.45.1 +%%Pages: 1 +%%Orientation: Portrait +%%BoundingBox: 1 1 234 233 +%%HiResBoundingBox: 1.5714774 1.6 233.87693 232.675 +%%EndComments +%%Page: 1 1 +0 842 translate +0.8 -0.8 scale +0 0 0 setrgbcolor +[] 0 setdash +1 setlinewidth +0 setlinejoin +0 setlinecap +gsave [1 0 0 1 0 0] concat +gsave +0 0 0 setrgbcolor +newpath +147.56738 996.36218 moveto +142.78136 988.61727 lineto +137.5 980.14292 lineto +147.03962 980.12535 lineto +157.5 980.0699 lineto +152.7464 987.83238 lineto +147.56738 996.36218 lineto +closepath +fill +grestore +gsave +0 0 0 setrgbcolor +newpath +147.43262 812.0699 moveto +152.21864 819.81481 lineto +157.5 828.28916 lineto +147.96038 828.30673 lineto +137.5 828.36218 lineto +142.2536 820.5997 lineto +147.43262 812.0699 lineto +closepath +fill +grestore +gsave +0 0 0 setrgbcolor +newpath +238.29228 904.7948 moveto +230.54737 909.58082 lineto +222.07302 914.86218 lineto +222.05545 905.32256 lineto +222 894.86218 lineto +229.76248 899.61578 lineto +238.29228 904.7948 lineto +closepath +fill +grestore +gsave +0 0 0 setrgbcolor +newpath +56 904.92956 moveto +63.74491 900.14354 lineto +72.21926 894.86218 lineto +72.23683 904.4018 lineto +72.29228 914.86218 lineto +64.5298 910.10858 lineto +56 904.92956 lineto +closepath +fill +grestore +0 0 0 setrgbcolor +[] 0 setdash +1 setlinewidth +0 setlinejoin +0 setlinecap +newpath +87.5 827.86218 moveto +207.5 827.86218 lineto +stroke +0 0 0 setrgbcolor +[] 0 setdash +1 setlinewidth +0 setlinejoin +0 setlinecap +newpath +222.5 964.86218 moveto +222.5 844.86218 lineto +stroke +0 0 0 setrgbcolor +[] 0 setdash +1 setlinewidth +0 setlinejoin +0 setlinecap +newpath +87.5 980.5699 moveto +207.5 980.5699 lineto +stroke +0 0 0 setrgbcolor +[] 0 setdash +1 setlinewidth +0 setlinejoin +0 setlinecap +newpath +71.79228 844.86218 moveto +71.79228 964.86218 lineto +stroke +gsave [1.0140005 0 0 1 -39.553644 -91.24453] concat +gsave +0 0 0 setrgbcolor +newpath +108.04102 913.93093 moveto +109.66699 913.93093 lineto +109.66699 922.00807 lineto +114.49219 917.76296 lineto +116.55762 917.76296 lineto +111.33691 922.36843 lineto +116.77734 927.60671 lineto +114.66797 927.60671 lineto +109.66699 922.79909 lineto +109.66699 927.60671 lineto +108.04102 927.60671 lineto +108.04102 913.93093 lineto +closepath +fill +grestore +grestore +gsave +0 0 0 setrgbcolor +newpath +81.619293 837.61511 moveto +83.069489 837.61511 lineto +83.069489 832.60974 lineto +81.491852 832.92615 lineto +81.491852 832.11755 lineto +83.060699 831.80115 lineto +83.948395 831.80115 lineto +83.948395 837.61511 lineto +85.39859 837.61511 lineto +85.39859 838.36218 lineto +81.619293 838.36218 lineto +81.619293 837.61511 lineto +closepath +fill +grestore +gsave [1.0140005 0 0 1 105.09694 -91.24453] concat +gsave +0 0 0 setrgbcolor +newpath +114.58008 919.2571 moveto +114.58008 913.93093 lineto +116.19727 913.93093 lineto +116.19727 927.60671 lineto +114.58008 927.60671 lineto +114.58008 926.13014 lineto +114.24023 926.71608 113.81103 927.15114 113.29248 927.43532 curveto +112.77392 927.7195 112.15136 927.86159 111.4248 927.86159 curveto +110.23535 927.86159 109.26709 927.38698 108.52002 926.43776 curveto +107.77295 925.48855 107.39941 924.2405 107.39941 922.69362 curveto +107.39941 921.14675 107.77295 919.89871 108.52002 918.94948 curveto +109.26709 918.00027 110.23535 917.52566 111.4248 917.52565 curveto +112.15136 917.52566 112.77392 917.66775 113.29248 917.95192 curveto +113.81103 918.23611 114.24023 918.67117 114.58008 919.2571 curveto +114.58008 919.2571 lineto +closepath +109.06934 922.69362 moveto +109.06933 923.88308 109.31396 924.81618 109.80322 925.49294 curveto +110.29248 926.1697 110.96484 926.50808 111.82031 926.50807 curveto +112.67577 926.50808 113.3496 926.1697 113.8418 925.49294 curveto +114.33398 924.81618 114.58007 923.88308 114.58008 922.69362 curveto +114.58007 921.50417 114.33398 920.57107 113.8418 919.8943 curveto +113.3496 919.21756 112.67577 918.87918 111.82031 918.87917 curveto +110.96484 918.87918 110.29248 919.21756 109.80322 919.8943 curveto +109.31396 920.57107 109.06933 921.50417 109.06934 922.69362 curveto +109.06934 922.69362 lineto +closepath +fill +grestore +grestore +gsave +0 0 0 setrgbcolor +newpath +226.26987 837.61511 moveto +227.72006 837.61511 lineto +227.72006 832.60974 lineto +226.14243 832.92615 lineto +226.14243 832.11755 lineto +227.71127 831.80115 lineto +228.59897 831.80115 lineto +228.59897 837.61511 lineto +230.04916 837.61511 lineto +230.04916 838.36218 lineto +226.26987 838.36218 lineto +226.26987 837.61511 lineto +closepath +fill +grestore +gsave [1.0140005 0 0 1 112.44636 58.755473] concat +gsave +0 0 0 setrgbcolor +newpath +108.04102 913.93093 moveto +109.66699 913.93093 lineto +109.66699 922.00807 lineto +114.49219 917.76296 lineto +116.55762 917.76296 lineto +111.33691 922.36843 lineto +116.77734 927.60671 lineto +114.66797 927.60671 lineto +109.66699 922.79909 lineto +109.66699 927.60671 lineto +108.04102 927.60671 lineto +108.04102 913.93093 lineto +closepath +fill +grestore +grestore +gsave +0 0 0 setrgbcolor +newpath +234.23013 987.61511 moveto +237.32828 987.61511 lineto +237.32828 988.36218 lineto +233.16226 988.36218 lineto +233.16226 987.61511 lineto +233.49918 987.26648 233.9584 986.79846 234.53995 986.21106 curveto +235.12149 985.62366 235.48697 985.245 235.63638 985.07507 curveto +235.92056 984.75574 236.11905 984.48548 236.23184 984.26428 curveto +236.34463 984.0431 236.40103 983.82557 236.40103 983.61169 curveto +236.40103 983.26307 236.27871 982.97889 236.03409 982.75916 curveto +235.78946 982.53943 235.47085 982.42957 235.07828 982.42957 curveto +234.79995 982.42957 234.50625 982.47791 234.19717 982.57458 curveto +233.88809 982.67127 233.55777 982.81775 233.20621 983.01404 curveto +233.20621 982.11755 lineto +233.56363 981.97401 233.89761 981.86561 234.20816 981.79236 curveto +234.51871 981.71912 234.80288 981.6825 235.0607 981.6825 curveto +235.74038 981.6825 236.28238 981.85242 236.68668 982.19226 curveto +237.09097 982.53211 237.29312 982.98621 237.29312 983.55457 curveto +237.29312 983.8241 237.24258 984.07972 237.14151 984.32141 curveto +237.04043 984.56311 236.85659 984.84803 236.59 985.17615 curveto +236.51675 985.26111 236.28384 985.50647 235.89127 985.91223 curveto +235.49868 986.318 234.94497 986.88562 234.23013 987.61511 curveto +234.23013 987.61511 lineto +closepath +fill +grestore +gsave [1.0140005 0 0 1 -44.90306 58.755473] concat +gsave +0 0 0 setrgbcolor +newpath +114.58008 919.2571 moveto +114.58008 913.93093 lineto +116.19727 913.93093 lineto +116.19727 927.60671 lineto +114.58008 927.60671 lineto +114.58008 926.13014 lineto +114.24023 926.71608 113.81103 927.15114 113.29248 927.43532 curveto +112.77392 927.7195 112.15136 927.86159 111.4248 927.86159 curveto +110.23535 927.86159 109.26709 927.38698 108.52002 926.43776 curveto +107.77295 925.48855 107.39941 924.2405 107.39941 922.69362 curveto +107.39941 921.14675 107.77295 919.89871 108.52002 918.94948 curveto +109.26709 918.00027 110.23535 917.52566 111.4248 917.52565 curveto +112.15136 917.52566 112.77392 917.66775 113.29248 917.95192 curveto +113.81103 918.23611 114.24023 918.67117 114.58008 919.2571 curveto +114.58008 919.2571 lineto +closepath +109.06934 922.69362 moveto +109.06933 923.88308 109.31396 924.81618 109.80322 925.49294 curveto +110.29248 926.1697 110.96484 926.50808 111.82031 926.50807 curveto +112.67577 926.50808 113.3496 926.1697 113.8418 925.49294 curveto +114.33398 924.81618 114.58007 923.88308 114.58008 922.69362 curveto +114.58007 921.50417 114.33398 920.57107 113.8418 919.8943 curveto +113.3496 919.21756 112.67577 918.87918 111.82031 918.87917 curveto +110.96484 918.87918 110.29248 919.21756 109.80322 919.8943 curveto +109.31396 920.57107 109.06933 921.50417 109.06934 922.69362 curveto +109.06934 922.69362 lineto +closepath +fill +grestore +grestore +gsave +0 0 0 setrgbcolor +newpath +76.880722 987.61511 moveto +79.978867 987.61511 lineto +79.978867 988.36218 lineto +75.812851 988.36218 lineto +75.812851 987.61511 lineto +76.149764 987.26648 76.608992 986.79846 77.190536 986.21106 curveto +77.772077 985.62366 78.137555 985.245 78.286972 985.07507 curveto +78.571148 984.75574 78.769634 984.48548 78.882431 984.26428 curveto +78.99522 984.0431 79.051617 983.82557 79.05162 983.61169 curveto +79.051617 983.26307 78.929302 982.97889 78.684677 982.75916 curveto +78.440045 982.53943 78.121442 982.42957 77.728867 982.42957 curveto +77.450544 982.42957 77.156843 982.47791 76.847763 982.57458 curveto +76.53868 982.67127 76.208358 982.81775 75.856796 983.01404 curveto +75.856796 982.11755 lineto +76.214217 981.97401 76.548201 981.86561 76.858749 981.79236 curveto +77.169294 981.71912 77.453474 981.6825 77.711288 981.6825 curveto +78.390973 981.6825 78.932964 981.85242 79.337265 982.19226 curveto +79.741557 982.53211 79.943706 982.98621 79.94371 983.55457 curveto +79.943706 983.8241 79.893168 984.07972 79.792099 984.32141 curveto +79.69102 984.56311 79.507183 984.84803 79.240585 985.17615 curveto +79.167339 985.26111 78.934429 985.50647 78.541855 985.91223 curveto +78.149274 986.318 77.595563 986.88562 76.880722 987.61511 curveto +76.880722 987.61511 lineto +closepath +fill +grestore +0 0 0 setrgbcolor +[] 0 setdash +1 setlinewidth +0 setlinejoin +0 setlinecap +newpath +222.5 904.86218 moveto +272.5 904.86218 lineto +stroke +0 0 0 setrgbcolor +[] 0 setdash +1 setlinewidth +0 setlinejoin +0 setlinecap +newpath +21.5 904.86218 moveto +71.5 904.86218 lineto +stroke +0 0 0 setrgbcolor +[] 0 setdash +1 setlinewidth +0 setlinejoin +0 setlinecap +newpath +147.5 777.86218 moveto +147.5 827.86218 lineto +stroke +0 0 0 setrgbcolor +[] 0 setdash +1 setlinewidth +0 setlinejoin +0 setlinecap +newpath +147.5 980.86218 moveto +147.5 1030.8622 lineto +stroke +gsave [1.0140005 0 0 1 167.28409 -17.37197] concat +gsave +0 0 0 setrgbcolor +newpath +107.39941 917.76296 moveto +115.08105 917.76296 lineto +115.08105 919.23952 lineto +108.99902 926.31472 lineto +115.08105 926.31472 lineto +115.08105 927.60671 lineto +107.17969 927.60671 lineto +107.17969 926.13014 lineto +113.26172 919.05495 lineto +107.39941 919.05495 lineto +107.39941 917.76296 lineto +closepath +fill +grestore +grestore +gsave +0 0 0 setrgbcolor +newpath +290.99265 908.69714 moveto +291.41745 908.78797 291.74923 908.97693 291.98801 909.26404 curveto +292.22677 909.55115 292.34616 909.90564 292.34616 910.32751 curveto +292.34616 910.97498 292.1235 911.47595 291.67819 911.83044 curveto +291.23288 912.18494 290.60006 912.36218 289.77975 912.36218 curveto +289.50436 912.36218 289.22091 912.33508 288.92941 912.28088 curveto +288.63791 912.22668 288.33688 912.14539 288.02634 912.03699 curveto +288.02634 911.18005 lineto +288.27243 911.32361 288.54196 911.43201 288.83493 911.50525 curveto +289.1279 911.57849 289.43405 911.61511 289.75339 911.61511 curveto +290.31003 911.61511 290.7341 911.50525 291.0256 911.28552 curveto +291.3171 911.0658 291.46286 910.74646 291.46286 910.32751 curveto +291.46286 909.9408 291.32736 909.63831 291.05637 909.42004 curveto +290.78537 909.20179 290.40817 909.09265 289.92477 909.09265 curveto +289.16013 909.09265 lineto +289.16013 908.36316 lineto +289.95993 908.36316 lineto +290.39645 908.36316 290.73043 908.276 290.96188 908.10168 curveto +291.19333 907.92737 291.30905 907.67615 291.30905 907.34802 curveto +291.30905 907.01111 291.18966 906.75257 290.9509 906.57239 curveto +290.71212 906.39222 290.37008 906.30213 289.92477 906.30212 curveto +289.68161 906.30213 289.42087 906.3285 289.14255 906.38123 curveto +288.86423 906.43397 288.55807 906.516 288.22409 906.62732 curveto +288.22409 905.8363 lineto +288.561 905.74256 288.87668 905.67225 289.17111 905.62537 curveto +289.46554 905.5785 289.74313 905.55506 290.00388 905.55505 curveto +290.6777 905.55506 291.2109 905.70814 291.60349 906.01428 curveto +291.99606 906.32044 292.19235 906.73426 292.19235 907.25574 curveto +292.19235 907.61902 292.08834 907.92591 291.88034 908.17639 curveto +291.67233 908.42688 291.37643 908.60047 290.99265 908.69714 curveto +290.99265 908.69714 lineto +closepath +fill +grestore +gsave [1.0140005 0 0 1 32.28409 120.75547] concat +gsave +0 0 0 setrgbcolor +newpath +107.39941 917.76296 moveto +115.08105 917.76296 lineto +115.08105 919.23952 lineto +108.99902 926.31472 lineto +115.08105 926.31472 lineto +115.08105 927.60671 lineto +107.17969 927.60671 lineto +107.17969 926.13014 lineto +113.26172 919.05495 lineto +107.39941 919.05495 lineto +107.39941 917.76296 lineto +closepath +fill +grestore +grestore +gsave +0 0 0 setrgbcolor +newpath +155.74216 1044.5746 moveto +153.50095 1048.077 lineto +155.74216 1048.077 lineto +155.74216 1044.5746 lineto +closepath +155.50925 1043.8011 moveto +156.62546 1043.8011 lineto +156.62546 1048.077 lineto +157.56149 1048.077 lineto +157.56149 1048.8153 lineto +156.62546 1048.8153 lineto +156.62546 1050.3622 lineto +155.74216 1050.3622 lineto +155.74216 1048.8153 lineto +152.78024 1048.8153 lineto +152.78024 1047.9584 lineto +155.50925 1043.8011 lineto +closepath +fill +grestore +gsave [1.0140005 0 0 1 -106.71591 -17.24453] concat +gsave +0 0 0 setrgbcolor +newpath +107.39941 917.76296 moveto +115.08105 917.76296 lineto +115.08105 919.23952 lineto +108.99902 926.31472 lineto +115.08105 926.31472 lineto +115.08105 927.60671 lineto +107.17969 927.60671 lineto +107.17969 926.13014 lineto +113.26172 919.05495 lineto +107.39941 919.05495 lineto +107.39941 917.76296 lineto +closepath +fill +grestore +grestore +gsave +0 0 0 setrgbcolor +newpath +14.457024 911.61511 moveto +15.907219 911.61511 lineto +15.907219 906.60974 lineto +14.329582 906.92615 lineto +14.329582 906.11755 lineto +15.89843 905.80115 lineto +16.786125 905.80115 lineto +16.786125 911.61511 lineto +18.23632 911.61511 lineto +18.23632 912.36218 lineto +14.457024 912.36218 lineto +14.457024 911.61511 lineto +closepath +fill +grestore +gsave [1.0140005 0 0 1 32.28409 -156.24453] concat +gsave +0 0 0 setrgbcolor +newpath +107.39941 917.76296 moveto +115.08105 917.76296 lineto +115.08105 919.23952 lineto +108.99902 926.31472 lineto +115.08105 926.31472 lineto +115.08105 927.60671 lineto +107.17969 927.60671 lineto +107.17969 926.13014 lineto +113.26172 919.05495 lineto +107.39941 919.05495 lineto +107.39941 917.76296 lineto +closepath +fill +grestore +grestore +gsave +0 0 0 setrgbcolor +newpath +154.06784 772.61511 moveto +157.16599 772.61511 lineto +157.16599 773.36218 lineto +152.99997 773.36218 lineto +152.99997 772.61511 lineto +153.33688 772.26648 153.79611 771.79846 154.37766 771.21106 curveto +154.9592 770.62366 155.32467 770.245 155.47409 770.07507 curveto +155.75827 769.75574 155.95675 769.48548 156.06955 769.26428 curveto +156.18234 769.0431 156.23874 768.82557 156.23874 768.61169 curveto +156.23874 768.26307 156.11642 767.97889 155.8718 767.75916 curveto +155.62716 767.53943 155.30856 767.42957 154.91599 767.42957 curveto +154.63766 767.42957 154.34396 767.47791 154.03488 767.57458 curveto +153.7258 767.67127 153.39548 767.81775 153.04391 768.01404 curveto +153.04391 767.11755 lineto +153.40134 766.97401 153.73532 766.86561 154.04587 766.79236 curveto +154.35641 766.71912 154.64059 766.6825 154.89841 766.6825 curveto +155.57809 766.6825 156.12008 766.85242 156.52438 767.19226 curveto +156.92868 767.53211 157.13082 767.98621 157.13083 768.55457 curveto +157.13082 768.8241 157.08029 769.07972 156.97922 769.32141 curveto +156.87814 769.56311 156.6943 769.84803 156.4277 770.17615 curveto +156.35446 770.26111 156.12155 770.50647 155.72897 770.91223 curveto +155.33639 771.318 154.78268 771.88562 154.06784 772.61511 curveto +154.06784 772.61511 lineto +closepath +fill +grestore +gsave [1.0140005 0 0 1 33.09371 -82.24452] concat +gsave +0 0 0 setrgbcolor +newpath +109.94824 921.34011 moveto +109.94824 926.14772 lineto +112.7959 926.14772 lineto +113.75097 926.14772 114.45849 925.94997 114.91846 925.55446 curveto +115.37841 925.15896 115.60839 924.55398 115.6084 923.73952 curveto +115.60839 922.91921 115.37841 922.31423 114.91846 921.92458 curveto +114.45849 921.53494 113.75097 921.34011 112.7959 921.34011 curveto +109.94824 921.34011 lineto +closepath +109.94824 915.94362 moveto +109.94824 919.8987 lineto +112.57617 919.8987 lineto +113.44335 919.89871 114.08935 919.73611 114.51416 919.41091 curveto +114.93896 919.08572 115.15136 918.58914 115.15137 917.92116 curveto +115.15136 917.25906 114.93896 916.76394 114.51416 916.43581 curveto +114.08935 916.1077 113.44335 915.94363 112.57617 915.94362 curveto +109.94824 915.94362 lineto +closepath +108.17285 914.48464 moveto +112.70801 914.48464 lineto +114.06152 914.48465 115.10448 914.7659 115.83691 915.32839 curveto +116.56933 915.8909 116.93554 916.6907 116.93555 917.7278 curveto +116.93554 918.53054 116.74804 919.16922 116.37305 919.64382 curveto +115.99804 920.11843 115.44726 920.41433 114.7207 920.53151 curveto +115.59374 920.71902 116.27196 921.11013 116.75537 921.70485 curveto +117.23876 922.29958 117.48046 923.04226 117.48047 923.93288 curveto +117.48046 925.10476 117.08202 926.01003 116.28516 926.6487 curveto +115.48827 927.28737 114.35448 927.60671 112.88379 927.60671 curveto +108.17285 927.60671 lineto +108.17285 914.48464 lineto +closepath +fill +grestore +grestore +gsave [1.0140005 0 0 1 97.07912 -16.19228] concat +gsave +0 0 0 setrgbcolor +newpath +117.99902 915.49538 moveto +117.99902 917.36745 lineto +117.40136 916.81082 116.76415 916.3948 116.0874 916.1194 curveto +115.41064 915.84402 114.6914 915.70633 113.92969 915.70632 curveto +112.42968 915.70633 111.28125 916.16482 110.48438 917.0818 curveto +109.6875 917.99881 109.28906 919.32449 109.28906 921.05886 curveto +109.28906 922.78738 109.6875 924.11013 110.48438 925.02712 curveto +111.28125 925.94411 112.42968 926.40261 113.92969 926.40261 curveto +114.6914 926.40261 115.41064 926.26491 116.0874 925.98952 curveto +116.76415 925.71413 117.40136 925.29812 117.99902 924.74147 curveto +117.99902 926.59597 lineto +117.37792 927.01784 116.7202 927.33425 116.02588 927.54518 curveto +115.33153 927.75612 114.59765 927.86159 113.82422 927.86159 curveto +111.83789 927.86159 110.27343 927.25368 109.13086 926.03786 curveto +107.98828 924.82204 107.41699 923.16238 107.41699 921.05886 curveto +107.41699 918.94949 107.98828 917.28689 109.13086 916.07106 curveto +110.27343 914.85526 111.83789 914.24735 113.82422 914.24733 curveto +114.60937 914.24735 115.34911 914.35135 116.04346 914.55934 curveto +116.73778 914.76736 117.38964 915.07938 117.99902 915.49538 curveto +117.99902 915.49538 lineto +closepath +fill +grestore +grestore +gsave [1.0140005 0 0 1 32.22032 47.755475] concat +gsave +0 0 0 setrgbcolor +newpath +109.94824 915.94362 moveto +109.94824 926.14772 lineto +112.09277 926.14772 lineto +113.90331 926.14772 115.229 925.73757 116.06982 924.91725 curveto +116.91063 924.09695 117.33104 922.80202 117.33105 921.03249 curveto +117.33104 919.27468 116.91063 917.98709 116.06982 917.1697 curveto +115.229 916.35232 113.90331 915.94363 112.09277 915.94362 curveto +109.94824 915.94362 lineto +closepath +108.17285 914.48464 moveto +111.82031 914.48464 lineto +114.36327 914.48465 116.22948 915.01346 117.41895 916.07106 curveto +118.60839 917.12869 119.20311 918.7825 119.20313 921.03249 curveto +119.20311 923.29421 118.60546 924.95534 117.41016 926.01589 curveto +116.21483 927.07643 114.35155 927.60671 111.82031 927.60671 curveto +108.17285 927.60671 lineto +108.17285 914.48464 lineto +closepath +fill +grestore +grestore +gsave [1.0140005 0 0 1 -32.038585 -16.18349] concat +gsave +0 0 0 setrgbcolor +newpath +112.55859 916.23366 moveto +110.15039 922.76393 lineto +114.97559 922.76393 lineto +112.55859 916.23366 lineto +closepath +111.55664 914.48464 moveto +113.56934 914.48464 lineto +118.57031 927.60671 lineto +116.72461 927.60671 lineto +115.5293 924.2405 lineto +109.61426 924.2405 lineto +108.41895 927.60671 lineto +106.54688 927.60671 lineto +111.55664 914.48464 lineto +closepath +fill +grestore +grestore +grestore +showpage +%%EOF diff --git a/11-np/3d.svg b/11-np/3d.svg new file mode 100644 index 0000000..6719637 --- /dev/null +++ b/11-np/3d.svg @@ -0,0 +1,314 @@ + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + k 1 + d 1 + k 2 + d 2 + + + + + z 3 + z 4 + z 1 + z 2 + B C D A + diff --git a/11-np/Makefile b/11-np/Makefile new file mode 100644 index 0000000..e5d9652 --- /dev/null +++ b/11-np/Makefile @@ -0,0 +1,3 @@ +P=11-np + +include ../Makerules diff --git a/11-np/and.eps b/11-np/and.eps new file mode 100644 index 0000000..a167b6f --- /dev/null +++ b/11-np/and.eps @@ -0,0 +1,266 @@ +%!PS-Adobe-3.0 EPSF-3.0 +%%Creator: 0.45.1 +%%Pages: 1 +%%Orientation: Portrait +%%BoundingBox: 1 1 40 99 +%%HiResBoundingBox: 1.6 1.5999861 39.328186 98.400018 +%%EndComments +%%Page: 1 1 +0 842 translate +0.8 -0.8 scale +0 0 0 setrgbcolor +[] 0 setdash +1 setlinewidth +0 setlinejoin +0 setlinecap +gsave [1 0 0 1 0 0] concat +gsave [1.0140005 0 0 1 -92.302418 67.48622] concat +gsave +0 0 0 setrgbcolor +newpath +115.59082 920.41209 moveto +119.28223 920.41209 lineto +119.28223 920.73729 lineto +118.77245 920.77831 118.39598 920.8911 118.15283 921.07567 curveto +117.90966 921.26024 117.53026 921.81835 117.01465 922.74998 curveto +116.49901 923.68163 115.91894 924.55175 115.27441 925.36034 curveto +115.79589 925.96971 116.26171 926.39598 116.67188 926.63914 curveto +117.08202 926.88231 117.49511 927.00389 117.91113 927.00389 curveto +118.31542 927.00389 118.65819 926.89403 118.93945 926.6743 curveto +119.22069 926.45458 119.41991 926.13085 119.53711 925.70311 curveto +119.8623 925.94041 lineto +119.64549 926.76659 119.29686 927.37596 118.81641 927.76854 curveto +118.33593 928.16112 117.77636 928.35741 117.1377 928.35741 curveto +116.65722 928.35741 116.16942 928.22703 115.67432 927.96629 curveto +115.17919 927.70555 114.63866 927.26463 114.05273 926.64354 curveto +113.32616 927.28807 112.67138 927.73485 112.08838 927.98387 curveto +111.50537 928.23289 110.88281 928.35741 110.2207 928.35741 curveto +109.2539 928.35741 108.48633 928.09959 107.91797 927.58397 curveto +107.34961 927.06834 107.06543 926.45311 107.06543 925.73827 curveto +107.06543 925.02928 107.32031 924.32176 107.83008 923.61571 curveto +108.33984 922.90966 109.29785 922.1787 110.7041 921.42284 curveto +110.42871 920.81347 110.24121 920.31396 110.1416 919.9243 curveto +110.04199 919.53466 109.99218 919.16113 109.99219 918.80369 curveto +109.99218 917.80175 110.36132 917.0371 111.09961 916.50975 curveto +111.67382 916.09961 112.32714 915.89453 113.05957 915.89452 curveto +113.75683 915.89453 114.32519 916.10107 114.76465 916.51414 curveto +115.20409 916.92724 115.42382 917.43554 115.42383 918.03905 curveto +115.42382 918.66015 115.21142 919.20507 114.78662 919.67381 curveto +114.36181 920.14257 113.61034 920.65526 112.53223 921.2119 curveto +113.27636 922.53612 114.05273 923.74901 114.86133 924.85057 curveto +115.89257 923.62011 116.40819 922.583 116.4082 921.73924 curveto +116.40819 921.46972 116.3203 921.22948 116.14453 921.01854 curveto +116.01562 920.86034 115.83105 920.76659 115.59082 920.73729 curveto +115.59082 920.41209 lineto +closepath +112.2334 920.64061 moveto +112.95995 920.29491 113.50341 919.90234 113.86377 919.46287 curveto +114.22411 919.02343 114.40429 918.53417 114.4043 917.9951 curveto +114.40429 917.57324 114.27392 917.2246 114.01318 916.9492 curveto +113.75243 916.67382 113.4287 916.53613 113.04199 916.53612 curveto +112.53222 916.53613 112.14697 916.71337 111.88623 917.06785 curveto +111.62548 917.42236 111.49511 917.76953 111.49512 918.10936 curveto +111.49511 918.39648 111.54492 918.71728 111.64453 919.07176 curveto +111.74414 919.42626 111.94042 919.94921 112.2334 920.64061 curveto +112.2334 920.64061 lineto +closepath +113.5957 926.13377 moveto +112.82226 925.07909 112.28613 924.30858 111.9873 923.82225 curveto +111.68847 923.33593 111.36035 922.73241 111.00293 922.0117 curveto +110.2998 922.41601 109.77099 922.86132 109.4165 923.34764 curveto +109.06201 923.83397 108.88476 924.36132 108.88477 924.92967 curveto +108.88476 925.55663 109.08691 926.10741 109.49121 926.58202 curveto +109.8955 927.05663 110.44043 927.29393 111.12598 927.29393 curveto +111.49511 927.29393 111.85107 927.22069 112.19385 927.0742 curveto +112.53661 926.92772 113.0039 926.61424 113.5957 926.13377 curveto +113.5957 926.13377 lineto +closepath +fill +grestore +grestore +0 0 0 setrgbcolor +[] 0 setdash +1 setlinewidth +0 setlinejoin +0 setlinecap +newpath +2.5 969.86216 moveto +42.5 969.86216 lineto +42.5 969.86216 lineto +42.5 969.86216 lineto +43 969.86216 lineto +stroke +0 0 0 setrgbcolor +[] 0 setdash +1 setlinewidth +0 setlinejoin +0 setlinecap +newpath +2.5 1009.8622 moveto +42.5 1009.8622 lineto +42.5 1009.8622 lineto +42.5 1009.8622 lineto +43 1009.8622 lineto +stroke +0 0 0 setrgbcolor +[] 0 setdash +1 setlinewidth +0 setlinejoin +0 setlinecap +newpath +42.625 969.36216 moveto +42.625 1009.3622 lineto +42.625 1009.3622 lineto +42.625 1009.3622 lineto +42.625 1009.8622 lineto +stroke +0 0 0 setrgbcolor +[] 0 setdash +1 setlinewidth +0 setlinejoin +0 setlinecap +newpath +2.625 969.36216 moveto +2.625 1009.3622 lineto +2.625 1009.3622 lineto +2.625 1009.3622 lineto +2.625 1009.8622 lineto +stroke +0 0 0 setrgbcolor +[] 0 setdash +1 setlinewidth +0 setlinejoin +0 setlinecap +newpath +35.0532 929.86216 moveto +35.0532 969.86216 lineto +stroke +gsave [0 0.7113249 -0.7113249 0 704.66756 798.22153] concat +gsave +0 0 0 setrgbcolor +newpath +242 941.36218 moveto +236 944.82628 lineto +230 948.29039 lineto +230 941.36218 lineto +230 934.43398 lineto +236 937.89808 lineto +242 941.36218 lineto +closepath +fill +grestore +grestore +0 0 0 setrgbcolor +[] 0 setdash +1 setlinewidth +0 setlinejoin +0 setlinecap +newpath +22.75 1009.8622 moveto +22.75 1049.8622 lineto +stroke +gsave [0 0.7113249 -0.7113249 0 692.36436 878.22155] concat +gsave +0 0 0 setrgbcolor +newpath +242 941.36218 moveto +236 944.82628 lineto +230 948.29039 lineto +230 941.36218 lineto +230 934.43398 lineto +236 937.89808 lineto +242 941.36218 lineto +closepath +fill +grestore +grestore +gsave [1.0140005 0 0 1 -68.993601 15.599206] concat +gsave +0 0 0 setrgbcolor +newpath +112.19824 928.52077 moveto +111.74121 929.69264 111.29589 930.45729 110.8623 930.81472 curveto +110.42871 931.17213 109.84863 931.35084 109.12207 931.35085 curveto +107.83008 931.35085 lineto +107.83008 929.99733 lineto +108.7793 929.99733 lineto +109.22461 929.99733 109.57031 929.89186 109.81641 929.68093 curveto +110.0625 929.46999 110.33496 928.97194 110.63379 928.18679 curveto +110.92383 927.4485 lineto +106.94238 917.76296 lineto +108.65625 917.76296 lineto +111.73242 925.46218 lineto +114.80859 917.76296 lineto +116.52246 917.76296 lineto +112.19824 928.52077 lineto +closepath +fill +grestore +grestore +gsave [1.0140005 0 0 1 -81.31463 105.59921] concat +gsave +0 0 0 setrgbcolor +newpath +107.39941 917.76296 moveto +115.08105 917.76296 lineto +115.08105 919.23952 lineto +108.99902 926.31472 lineto +115.08105 926.31472 lineto +115.08105 927.60671 lineto +107.17969 927.60671 lineto +107.17969 926.13014 lineto +113.26172 919.05495 lineto +107.39941 919.05495 lineto +107.39941 917.76296 lineto +closepath +fill +grestore +grestore +0 0 0 setrgbcolor +[] 0 setdash +1 setlinewidth +0 setlinejoin +0 setlinecap +newpath +11.053184 929.86216 moveto +11.053184 969.86216 lineto +stroke +gsave [0 0.7113249 -0.7113249 0 680.66756 798.22153] concat +gsave +0 0 0 setrgbcolor +newpath +242 941.36218 moveto +236 944.82628 lineto +230 948.29039 lineto +230 941.36218 lineto +230 934.43398 lineto +236 937.89808 lineto +242 941.36218 lineto +closepath +fill +grestore +grestore +gsave [1.0140005 0 0 1 -92.993616 15.599212] concat +gsave +0 0 0 setrgbcolor +newpath +116.28516 917.76296 moveto +112.72559 922.553 lineto +116.46973 927.60671 lineto +114.5625 927.60671 lineto +111.69727 923.73952 lineto +108.83203 927.60671 lineto +106.9248 927.60671 lineto +110.74805 922.45632 lineto +107.25 917.76296 lineto +109.15723 917.76296 lineto +111.76758 921.26979 lineto +114.37793 917.76296 lineto +116.28516 917.76296 lineto +closepath +fill +grestore +grestore +grestore +showpage +%%EOF diff --git a/11-np/and.svg b/11-np/and.svg new file mode 100644 index 0000000..3ae8675 --- /dev/null +++ b/11-np/and.svg @@ -0,0 +1,141 @@ + + + + + + + image/svg+xml + + + + + + + + & + + + + + + + + y z + + x + diff --git a/11-np/klauzule.eps b/11-np/klauzule.eps new file mode 100644 index 0000000..4dc848f --- /dev/null +++ b/11-np/klauzule.eps @@ -0,0 +1,483 @@ +%!PS-Adobe-3.0 EPSF-3.0 +%%Creator: 0.45.1 +%%Pages: 1 +%%Orientation: Portrait +%%BoundingBox: 1 1 179 162 +%%HiResBoundingBox: 1.6 1.6 178.08 161.11924 +%%EndComments +%%Page: 1 1 +0 842 translate +0.8 -0.8 scale +0 0 0 setrgbcolor +[] 0 setdash +1 setlinewidth +0 setlinejoin +0 setlinecap +gsave [1 0 0 1 0 0] concat +gsave [0.040720268 0 0 0.038217082 2.87536 946.2306] concat +gsave +0 0 0 setrgbcolor +newpath +233.1031 866.93117 moveto +115.56895 664.27546 lineto +-14.129498 442.533 lineto +220.14257 442.0733 lineto +477.0264 440.62238 lineto +360.28848 643.73779 lineto +233.1031 866.93117 lineto +closepath +fill +grestore +grestore +gsave [0.040720268 0 0 0.038217082 102.87536 946.2306] concat +gsave +0 0 0 setrgbcolor +newpath +233.1031 866.93117 moveto +115.56895 664.27546 lineto +-14.129498 442.533 lineto +220.14257 442.0733 lineto +477.0264 440.62238 lineto +360.28848 643.73779 lineto +233.1031 866.93117 lineto +closepath +fill +grestore +grestore +gsave [0.040720268 0 0 0.038217082 202.87536 946.2306] concat +gsave +0 0 0 setrgbcolor +newpath +233.1031 866.93117 moveto +115.56895 664.27546 lineto +-14.129498 442.533 lineto +220.14257 442.0733 lineto +477.0264 440.62238 lineto +360.28848 643.73779 lineto +233.1031 866.93117 lineto +closepath +fill +grestore +grestore +gsave [0.1162791 0 0 0.1162791 43.11395 798.15726] concat +gsave +0 0 0 setrgbcolor +newpath +165 655.36218 moveto +165 679.11042 145.74824 698.36218 122 698.36218 curveto +98.251756 698.36218 79 679.11042 79 655.36218 curveto +79 631.61394 98.251756 612.36218 122 612.36218 curveto +145.74824 612.36218 165 631.61394 165 655.36218 curveto +closepath +fill +grestore +grestore +gsave [0.1162791 0 0 0.1162791 153.11395 798.15726] concat +gsave +0 0 0 setrgbcolor +newpath +165 655.36218 moveto +165 679.11042 145.74824 698.36218 122 698.36218 curveto +98.251756 698.36218 79 679.11042 79 655.36218 curveto +79 631.61394 98.251756 612.36218 122 612.36218 curveto +145.74824 612.36218 165 631.61394 165 655.36218 curveto +closepath +fill +grestore +grestore +0 0 0 setrgbcolor +[] 0 setdash +1 setlinewidth +0 setlinejoin +0 setlinecap +newpath +2.5 963.16218 moveto +57.1 874.56218 lineto +stroke +0 0 0 setrgbcolor +[] 0 setdash +1 setlinewidth +0 setlinejoin +0 setlinecap +newpath +102.3 963.16218 moveto +57.3 874.36218 lineto +stroke +0 0 0 setrgbcolor +[] 0 setdash +1 setlinewidth +0 setlinejoin +0 setlinecap +newpath +202.3 963.16218 moveto +57.3 874.16218 lineto +stroke +0 0 0 setrgbcolor +[] 0 setdash +1 setlinewidth +0 setlinejoin +0 setlinecap +newpath +22.1 963.16218 moveto +167.3 873.96218 lineto +stroke +0 0 0 setrgbcolor +[] 0 setdash +1 setlinewidth +0 setlinejoin +0 setlinecap +newpath +122.1 963.16218 moveto +167.3 874.36218 lineto +stroke +0 0 0 setrgbcolor +[] 0 setdash +1 setlinewidth +0 setlinejoin +0 setlinecap +newpath +222.1 963.16218 moveto +167.3 874.36218 lineto +stroke +0 0 0 setrgbcolor +[] 0 setdash +1 setlinewidth +0 setlinejoin +0 setlinecap +newpath +112.4 979.06218 moveto +112.4 1029.0622 lineto +stroke +0 0 0 setrgbcolor +[] 0 setdash +1 setlinewidth +0 setlinejoin +0 setlinecap +newpath +212.4 979.16218 moveto +212.4 1029.1622 lineto +stroke +0 0 0 setrgbcolor +[] 0 setdash +1 setlinewidth +0 setlinejoin +0 setlinecap +newpath +12.4 979.26218 moveto +12.4 1029.2622 lineto +stroke +gsave [1.0140005 0 0 1 -103.41591 120.75547] concat +gsave +0 0 0 setrgbcolor +newpath +107.39941 917.76296 moveto +115.08105 917.76296 lineto +115.08105 919.23952 lineto +108.99902 926.31472 lineto +115.08105 926.31472 lineto +115.08105 927.60671 lineto +107.17969 927.60671 lineto +107.17969 926.13014 lineto +113.26172 919.05495 lineto +107.39941 919.05495 lineto +107.39941 917.76296 lineto +closepath +fill +grestore +grestore +gsave +0 0 0 setrgbcolor +newpath +21.980175 1033.4402 moveto +20.20039 1035.8352 lineto +22.07246 1038.3621 lineto +21.118847 1038.3621 lineto +19.68623 1036.4285 lineto +18.253613 1038.3621 lineto +17.299999 1038.3621 lineto +19.21162 1035.7869 lineto +17.462597 1033.4402 lineto +18.41621 1033.4402 lineto +19.721386 1035.1936 lineto +21.026562 1033.4402 lineto +21.980175 1033.4402 lineto +closepath +fill +grestore +gsave +0 0 0 setrgbcolor +newpath +18.367872 1049.6151 moveto +21.466017 1049.6151 lineto +21.466017 1050.3622 lineto +17.300001 1050.3622 lineto +17.300001 1049.6151 lineto +17.636914 1049.2665 18.096142 1048.7985 18.677687 1048.2111 curveto +19.259227 1047.6237 19.624705 1047.245 19.774122 1047.0751 curveto +20.058299 1046.7557 20.256785 1046.4855 20.369581 1046.2643 curveto +20.48237 1046.0431 20.538767 1045.8256 20.538771 1045.6117 curveto +20.538767 1045.2631 20.416452 1044.9789 20.171827 1044.7592 curveto +19.927195 1044.5394 19.608592 1044.4296 19.216017 1044.4296 curveto +18.937694 1044.4296 18.643993 1044.4779 18.334913 1044.5746 curveto +18.02583 1044.6713 17.695508 1044.8178 17.343946 1045.014 curveto +17.343946 1044.1176 lineto +17.701367 1043.974 18.035351 1043.8656 18.3459 1043.7924 curveto +18.656444 1043.7191 18.940624 1043.6825 19.198439 1043.6825 curveto +19.878123 1043.6825 20.420115 1043.8524 20.824415 1044.1923 curveto +21.228707 1044.5321 21.430856 1044.9862 21.430861 1045.5546 curveto +21.430856 1045.8241 21.380319 1046.0797 21.279249 1046.3214 curveto +21.17817 1046.5631 20.994333 1046.848 20.727736 1047.1761 curveto +20.654489 1047.2611 20.421579 1047.5065 20.029005 1047.9122 curveto +19.636424 1048.318 19.082714 1048.8856 18.367872 1049.6151 curveto +18.367872 1049.6151 lineto +closepath +fill +grestore +gsave [1.0140005 0 0 1 96.99786 120.75547] concat +gsave +0 0 0 setrgbcolor +newpath +107.39941 917.76296 moveto +115.08105 917.76296 lineto +115.08105 919.23952 lineto +108.99902 926.31472 lineto +115.08105 926.31472 lineto +115.08105 927.60671 lineto +107.17969 927.60671 lineto +107.17969 926.13014 lineto +113.26172 919.05495 lineto +107.39941 919.05495 lineto +107.39941 917.76296 lineto +closepath +fill +grestore +grestore +gsave +0 0 0 setrgbcolor +newpath +221.15468 1034.196 moveto +221.06385 1034.1433 220.96498 1034.1045 220.85805 1034.0796 curveto +220.75111 1034.0547 220.63319 1034.0422 220.50429 1034.0422 curveto +220.04725 1034.0422 219.69642 1034.1909 219.4518 1034.4883 curveto +219.20717 1034.7856 219.08485 1035.2126 219.08485 1035.7693 curveto +219.08485 1038.3621 lineto +218.27187 1038.3621 lineto +218.27187 1033.4402 lineto +219.08485 1033.4402 lineto +219.08485 1034.2048 lineto +219.25477 1033.906 219.47597 1033.6841 219.74843 1033.5391 curveto +220.02089 1033.394 220.35194 1033.3215 220.74159 1033.3215 curveto +220.79725 1033.3215 220.85878 1033.3252 220.92616 1033.3325 curveto +220.99354 1033.3398 221.06825 1033.3508 221.15028 1033.3655 curveto +221.15468 1034.196 lineto +closepath +fill +grestore +gsave +0 0 0 setrgbcolor +newpath +218.17079 1049.6151 moveto +219.62099 1049.6151 lineto +219.62099 1044.6097 lineto +218.04335 1044.9261 lineto +218.04335 1044.1176 lineto +219.6122 1043.8011 lineto +220.49989 1043.8011 lineto +220.49989 1049.6151 lineto +221.95009 1049.6151 lineto +221.95009 1050.3622 lineto +218.17079 1050.3622 lineto +218.17079 1049.6151 lineto +closepath +fill +grestore +gsave [1.0140005 0 0 1 -3.415905 120.75551] concat +gsave +0 0 0 setrgbcolor +newpath +107.39941 917.76296 moveto +115.08105 917.76296 lineto +115.08105 919.23952 lineto +108.99902 926.31472 lineto +115.08105 926.31472 lineto +115.08105 927.60671 lineto +107.17969 927.60671 lineto +107.17969 926.13014 lineto +113.26172 919.05495 lineto +107.39941 919.05495 lineto +107.39941 917.76296 lineto +closepath +fill +grestore +grestore +gsave +0 0 0 setrgbcolor +newpath +119.93673 1038.8192 moveto +119.70821 1039.4052 119.48556 1039.7875 119.26876 1039.9662 curveto +119.05196 1040.1449 118.76192 1040.2343 118.39864 1040.2343 curveto +117.75265 1040.2343 lineto +117.75265 1039.5575 lineto +118.22726 1039.5575 lineto +118.44991 1039.5575 118.62276 1039.5048 118.74581 1039.3993 curveto +118.86886 1039.2938 119.00509 1039.0448 119.1545 1038.6522 curveto +119.29952 1038.2831 lineto +117.3088 1033.4403 lineto +118.16573 1033.4403 lineto +119.70382 1037.2899 lineto +121.24191 1033.4403 lineto +122.09884 1033.4403 lineto +119.93673 1038.8192 lineto +closepath +fill +grestore +gsave +0 0 0 setrgbcolor +newpath +118.36787 1049.6151 moveto +121.46602 1049.6151 lineto +121.46602 1050.3622 lineto +117.3 1050.3622 lineto +117.3 1049.6151 lineto +117.63692 1049.2665 118.09614 1048.7985 118.67769 1048.2111 curveto +119.25923 1047.6237 119.62471 1047.245 119.77412 1047.0751 curveto +120.0583 1046.7557 120.25679 1046.4855 120.36958 1046.2643 curveto +120.48237 1046.0431 120.53877 1045.8256 120.53877 1045.6117 curveto +120.53877 1045.2631 120.41645 1044.9789 120.17183 1044.7592 curveto +119.9272 1044.5394 119.60859 1044.4296 119.21602 1044.4296 curveto +118.9377 1044.4296 118.644 1044.4779 118.33492 1044.5746 curveto +118.02583 1044.6713 117.69551 1044.8178 117.34395 1045.014 curveto +117.34395 1044.1176 lineto +117.70137 1043.974 118.03535 1043.8656 118.3459 1043.7924 curveto +118.65645 1043.7191 118.94063 1043.6825 119.19844 1043.6825 curveto +119.87812 1043.6825 120.42012 1043.8524 120.82442 1044.1923 curveto +121.22871 1044.5321 121.43086 1044.9862 121.43086 1045.5546 curveto +121.43086 1045.8241 121.38032 1046.0797 121.27925 1046.3214 curveto +121.17817 1046.5631 120.99433 1046.848 120.72774 1047.1761 curveto +120.65449 1047.2611 120.42158 1047.5065 120.02901 1047.9122 curveto +119.63643 1048.318 119.08272 1048.8856 118.36787 1049.6151 curveto +118.36787 1049.6151 lineto +closepath +fill +grestore +gsave [1.0140005 0 0 1 -56.415644 -62.244525] concat +gsave +0 0 0 setrgbcolor +newpath +108.04102 913.93093 moveto +109.66699 913.93093 lineto +109.66699 922.00807 lineto +114.49219 917.76296 lineto +116.55762 917.76296 lineto +111.33691 922.36843 lineto +116.77734 927.60671 lineto +114.66797 927.60671 lineto +109.66699 922.79909 lineto +109.66699 927.60671 lineto +108.04102 927.60671 lineto +108.04102 913.93093 lineto +closepath +fill +grestore +grestore +gsave +0 0 0 setrgbcolor +newpath +65.539528 851.21802 moveto +65.539528 853.13843 lineto +66.682106 851.92993 lineto +67.136204 851.45533 67.562474 851.21802 67.960915 851.21802 curveto +68.116184 851.21802 68.241428 851.25464 68.336647 851.32788 curveto +68.431857 851.40113 68.479465 851.49634 68.479469 851.61353 curveto +68.479465 851.72779 68.442111 851.81861 68.367409 851.88599 curveto +68.292697 851.95337 68.207004 851.98706 68.110329 851.98706 curveto +68.025364 851.98706 67.912571 851.94898 67.77195 851.8728 curveto +67.631321 851.79663 67.522923 851.75855 67.446754 851.75854 curveto +67.294407 851.75855 67.125951 851.85816 66.941383 852.05737 curveto +66.17234 852.88794 lineto +67.622536 854.70728 lineto +67.874485 855.02368 68.208469 855.18774 68.624489 855.19946 curveto +68.624489 855.36206 lineto +67.200661 855.36206 lineto +65.539528 853.20435 lineto +65.539528 855.36206 lineto +64.810036 855.36206 lineto +64.810036 852.90112 lineto +64.810035 852.41773 64.790992 852.11377 64.752907 851.98926 curveto +64.71482 851.86475 64.628394 851.80249 64.493629 851.80249 curveto +64.411598 851.80249 64.311989 851.82447 64.194801 851.86841 curveto +64.133278 851.71021 lineto +65.346169 851.21802 lineto +65.539528 851.21802 lineto +closepath +fill +grestore +gsave [1.0140005 0 0 1 53.58394 -62.499408] concat +gsave +0 0 0 setrgbcolor +newpath +114.58008 919.2571 moveto +114.58008 913.93093 lineto +116.19727 913.93093 lineto +116.19727 927.60671 lineto +114.58008 927.60671 lineto +114.58008 926.13014 lineto +114.24023 926.71608 113.81103 927.15114 113.29248 927.43532 curveto +112.77392 927.7195 112.15136 927.86159 111.4248 927.86159 curveto +110.23535 927.86159 109.26709 927.38698 108.52002 926.43776 curveto +107.77295 925.48855 107.39941 924.2405 107.39941 922.69362 curveto +107.39941 921.14675 107.77295 919.89871 108.52002 918.94948 curveto +109.26709 918.00027 110.23535 917.52566 111.4248 917.52565 curveto +112.15136 917.52566 112.77392 917.66775 113.29248 917.95192 curveto +113.81103 918.23611 114.24023 918.67117 114.58008 919.2571 curveto +114.58008 919.2571 lineto +closepath +109.06934 922.69362 moveto +109.06933 923.88308 109.31396 924.81618 109.80322 925.49294 curveto +110.29248 926.1697 110.96484 926.50808 111.82031 926.50807 curveto +112.67577 926.50808 113.3496 926.1697 113.8418 925.49294 curveto +114.33398 924.81618 114.58007 923.88308 114.58008 922.69362 curveto +114.58007 921.50417 114.33398 920.57107 113.8418 919.8943 curveto +113.3496 919.21756 112.67577 918.87918 111.82031 918.87917 curveto +110.96484 918.87918 110.29248 919.21756 109.80322 919.8943 curveto +109.31396 920.57107 109.06933 921.50417 109.06934 922.69362 curveto +109.06934 922.69362 lineto +closepath +fill +grestore +grestore +gsave +0 0 0 setrgbcolor +newpath +175.53911 850.96313 moveto +175.53911 852.88354 lineto +176.68169 851.67505 lineto +177.13578 851.20044 177.56205 850.96314 177.96049 850.96313 curveto +178.11576 850.96314 178.24101 850.99976 178.33623 851.073 curveto +178.43144 851.14624 178.47905 851.24146 178.47905 851.35864 curveto +178.47905 851.4729 178.44169 851.56372 178.36699 851.6311 curveto +178.29228 851.69849 178.20658 851.73218 178.10991 851.73218 curveto +178.02494 851.73218 177.91215 851.6941 177.77153 851.61792 curveto +177.6309 851.54175 177.5225 851.50367 177.44633 851.50366 curveto +177.29399 851.50367 177.12553 851.60327 176.94096 851.80249 curveto +176.17192 852.63306 lineto +177.62212 854.45239 lineto +177.87407 854.7688 178.20805 854.93286 178.62407 854.94458 curveto +178.62407 855.10718 lineto +177.20024 855.10718 lineto +175.53911 852.94946 lineto +175.53911 855.10718 lineto +174.80962 855.10718 lineto +174.80962 852.64624 lineto +174.80962 852.16284 174.79057 851.85889 174.75249 851.73438 curveto +174.7144 851.60987 174.62797 851.54761 174.49321 851.54761 curveto +174.41118 851.54761 174.31157 851.56958 174.19438 851.61353 curveto +174.13286 851.45532 lineto +175.34575 850.96313 lineto +175.53911 850.96313 lineto +closepath +fill +grestore +grestore +showpage +%%EOF diff --git a/11-np/klauzule.svg b/11-np/klauzule.svg new file mode 100644 index 0000000..3dd1f73 --- /dev/null +++ b/11-np/klauzule.svg @@ -0,0 +1,250 @@ + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + + + + + + + z x + 2 + z r + 1 + z y + 2 + k κ + d κ + + diff --git a/11-np/kobvod.eps b/11-np/kobvod.eps new file mode 100644 index 0000000..76d7815 --- /dev/null +++ b/11-np/kobvod.eps @@ -0,0 +1,538 @@ +%!PS-Adobe-3.0 EPSF-3.0 +%%Creator: 0.45.1 +%%Pages: 1 +%%Orientation: Portrait +%%BoundingBox: 1 1 104 103 +%%HiResBoundingBox: 1.6000036 1.5999861 103.78458 102.40005 +%%EndComments +%%Page: 1 1 +0 842 translate +0.8 -0.8 scale +0 0 0 setrgbcolor +[] 0 setdash +1 setlinewidth +0 setlinejoin +0 setlinecap +gsave [1 0 0 1 0 0] concat +gsave [1 0 0 1 13.730725 16.499966] concat +gsave +0.80000001 0.80000001 0.80000001 setrgbcolor +newpath +116 968.86218 moveto +116 982.66218 93.6 993.86218 66 993.86218 curveto +38.4 993.86218 16 982.66218 16 968.86218 curveto +16 955.06218 38.4 943.86218 66 943.86218 curveto +93.6 943.86218 116 955.06218 116 968.86218 curveto +closepath +fill +grestore +grestore +0 0 0 setrgbcolor +[] 0 setdash +1 setlinewidth +0 setlinejoin +0 setlinecap +newpath +109.73073 924.86212 moveto +109.73073 964.86212 lineto +stroke +gsave +0 0 0 setrgbcolor +newpath +109.73074 965.36212 moveto +107.26664 961.09417 lineto +104.80253 956.82622 lineto +109.73074 956.82622 lineto +114.65893 956.82622 lineto +112.19484 961.09417 lineto +109.73074 965.36212 lineto +closepath +fill +grestore +0 0 0 setrgbcolor +[] 0 setdash +1 setlinewidth +0 setlinejoin +0 setlinecap +newpath +79.730725 1009.8622 moveto +79.730725 1049.8622 lineto +stroke +gsave +0 0 0 setrgbcolor +newpath +79.730728 1050.3622 moveto +77.266628 1046.0942 lineto +74.80252 1041.8263 lineto +79.730728 1041.8263 lineto +84.65893 1041.8263 lineto +82.194829 1046.0942 lineto +79.730728 1050.3622 lineto +closepath +fill +grestore +gsave [1.0140005 0 0 1 4.7910955 10.599166] concat +gsave +0 0 0 setrgbcolor +newpath +112.19824 928.52077 moveto +111.74121 929.69264 111.29589 930.45729 110.8623 930.81472 curveto +110.42871 931.17213 109.84863 931.35084 109.12207 931.35085 curveto +107.83008 931.35085 lineto +107.83008 929.99733 lineto +108.7793 929.99733 lineto +109.22461 929.99733 109.57031 929.89186 109.81641 929.68093 curveto +110.0625 929.46999 110.33496 928.97194 110.63379 928.18679 curveto +110.92383 927.4485 lineto +106.94238 917.76296 lineto +108.65625 917.76296 lineto +111.73242 925.46218 lineto +114.80859 917.76296 lineto +116.52246 917.76296 lineto +112.19824 928.52077 lineto +closepath +fill +grestore +grestore +0 0 0 setrgbcolor +[] 0 setdash +1 setlinewidth +0 setlinejoin +0 setlinecap +newpath +49.730816 924.86212 moveto +49.730816 964.86212 lineto +stroke +gsave +0 0 0 setrgbcolor +newpath +49.730833 965.36212 moveto +47.266733 961.09417 lineto +44.802625 956.82622 lineto +49.730833 956.82622 lineto +54.659035 956.82622 lineto +52.194934 961.09417 lineto +49.730833 965.36212 lineto +closepath +fill +grestore +gsave [1.0140005 0 0 1 -107.13477 14.431197] concat +gsave +0 0 0 setrgbcolor +newpath +115.01074 913.93093 moveto +114.75586 915.27565 lineto +113.20898 915.27565 lineto +112.62304 915.27566 112.19677 915.39139 111.93018 915.62282 curveto +111.66357 915.85428 111.46582 916.27762 111.33691 916.89284 curveto +111.16113 917.76296 lineto +113.82422 917.76296 lineto +113.58691 919.01979 lineto +110.92383 919.01979 lineto +109.25391 927.60671 lineto +107.62793 927.60671 lineto +109.30664 919.01979 lineto +107.75977 919.01979 lineto +107.98828 917.76296 lineto +109.53516 917.76296 lineto +109.66699 917.07741 lineto +109.88964 915.91727 110.28076 915.10281 110.84033 914.63405 curveto +111.3999 914.16531 112.28027 913.93094 113.48145 913.93093 curveto +115.01074 913.93093 lineto +closepath +fill +grestore +gsave +0 0 0 setrgbcolor +newpath +116.03027 913.93093 moveto +117.64746 913.93093 lineto +117.25195 915.97878 lineto +115.63477 915.97878 lineto +116.03027 913.93093 lineto +closepath +115.29199 917.76296 moveto +116.90918 917.76296 lineto +114.98438 927.60671 lineto +113.36719 927.60671 lineto +115.29199 917.76296 lineto +closepath +fill +grestore +gsave +0 0 0 setrgbcolor +newpath +128.52832 917.76296 moveto +124.01074 922.58815 lineto +126.7793 927.60671 lineto +124.9248 927.60671 lineto +122.8418 923.70436 lineto +119.2207 927.60671 lineto +117.26074 927.60671 lineto +122.10352 922.42116 lineto +119.52832 917.76296 lineto +121.38281 917.76296 lineto +123.27246 921.32253 lineto +126.56836 917.76296 lineto +128.52832 917.76296 lineto +closepath +fill +grestore +gsave +0 0 0 setrgbcolor +newpath +136.06055 913.9485 moveto +134.50781 915.88797 133.34912 917.72928 132.58447 919.47243 curveto +131.81982 921.2156 131.4375 922.89577 131.4375 924.51296 curveto +131.4375 925.43874 131.54882 926.3572 131.77148 927.26833 curveto +131.99414 928.17946 132.32812 929.08327 132.77344 929.97975 curveto +131.36719 929.97975 lineto +130.82812 928.97194 130.42676 927.99196 130.16309 927.03981 curveto +129.89941 926.08767 129.76758 925.15456 129.76758 924.2405 curveto +129.76758 922.50027 130.17041 920.77615 130.97607 919.06813 curveto +131.78173 917.36014 132.99902 915.65359 134.62793 913.9485 curveto +136.06055 913.9485 lineto +closepath +fill +grestore +gsave +0 0 0 setrgbcolor +newpath +145.28906 917.76296 moveto +141.72949 922.553 lineto +145.47363 927.60671 lineto +143.56641 927.60671 lineto +140.70117 923.73952 lineto +137.83594 927.60671 lineto +135.92871 927.60671 lineto +139.75195 922.45632 lineto +136.25391 917.76296 lineto +138.16113 917.76296 lineto +140.77148 921.26979 lineto +143.38184 917.76296 lineto +145.28906 917.76296 lineto +closepath +fill +grestore +gsave +0 0 0 setrgbcolor +newpath +144.94629 929.97975 moveto +146.50488 928.0403 147.66504 926.19899 148.42676 924.45583 curveto +149.18847 922.71267 149.56933 921.0325 149.56934 919.4153 curveto +149.56933 918.48953 149.45947 917.57107 149.23975 916.65993 curveto +149.02002 915.74881 148.6875 914.845 148.24219 913.9485 curveto +149.64844 913.9485 lineto +150.1875 914.96219 150.58886 915.9407 150.85254 916.88405 curveto +151.11621 917.82742 151.24804 918.75613 151.24805 919.67018 curveto +151.24804 921.41628 150.84228 923.14919 150.03076 924.86891 curveto +149.21924 926.58864 148.00488 928.29225 146.3877 929.97975 curveto +144.94629 929.97975 lineto +closepath +fill +grestore +grestore +gsave [1.0140005 0 0 1 0.443587 52.557702] concat +grestore +gsave [1.0140005 0 0 1 5.7032684 54.80528] concat +grestore +gsave [1 0 0 1 -86.775134 22.557937] concat +gsave +0 0 0 setrgbcolor +newpath +139.81055 954.05616 moveto +139.23242 954.05617 138.77539 954.28176 138.43945 954.73292 curveto +138.10351 955.1841 137.93555 955.80226 137.93555 956.58741 curveto +137.93555 957.37257 138.10254 957.99074 138.43652 958.44191 curveto +138.77051 958.89308 139.22851 959.11866 139.81055 959.11866 curveto +140.38476 959.11866 140.83984 958.8921 141.17578 958.43898 curveto +141.51171 957.98585 141.67968 957.36867 141.67969 956.58741 curveto +141.67968 955.81007 141.51171 955.19386 141.17578 954.73878 curveto +140.83984 954.28371 140.38476 954.05617 139.81055 954.05616 curveto +139.81055 954.05616 lineto +closepath +139.81055 953.1421 moveto +140.74804 953.14211 141.48437 953.4468 142.01953 954.05616 curveto +142.55468 954.66554 142.82226 955.50929 142.82227 956.58741 curveto +142.82226 957.66164 142.55468 958.50441 142.01953 959.11573 curveto +141.48437 959.72706 140.74804 960.03273 139.81055 960.03273 curveto +138.86914 960.03273 138.13183 959.72706 137.59863 959.11573 curveto +137.06543 958.50441 136.79883 957.66164 136.79883 956.58741 curveto +136.79883 955.50929 137.06543 954.66554 137.59863 954.05616 curveto +138.13183 953.4468 138.86914 953.14211 139.81055 953.1421 curveto +139.81055 953.1421 lineto +closepath +fill +grestore +gsave +0 0 0 setrgbcolor +newpath +149.31445 956.58741 moveto +149.31445 955.79445 149.15136 955.17238 148.8252 954.7212 curveto +148.49902 954.27004 148.05078 954.04445 147.48047 954.04445 curveto +146.91015 954.04445 146.46191 954.27004 146.13574 954.7212 curveto +145.80957 955.17238 145.64648 955.79445 145.64648 956.58741 curveto +145.64648 957.38039 145.80957 958.00246 146.13574 958.45363 curveto +146.46191 958.9048 146.91015 959.13038 147.48047 959.13038 curveto +148.05078 959.13038 148.49902 958.9048 148.8252 958.45363 curveto +149.15136 958.00246 149.31445 957.38039 149.31445 956.58741 curveto +149.31445 956.58741 lineto +closepath +145.64648 954.2964 moveto +145.87304 953.90578 146.15918 953.61574 146.50488 953.42628 curveto +146.85058 953.23683 147.26367 953.14211 147.74414 953.1421 curveto +148.54101 953.14211 149.18847 953.45851 149.68652 954.09132 curveto +150.18456 954.72414 150.43359 955.55617 150.43359 956.58741 curveto +150.43359 957.61867 150.18456 958.4507 149.68652 959.08351 curveto +149.18847 959.71632 148.54101 960.03273 147.74414 960.03273 curveto +147.26367 960.03273 146.85058 959.938 146.50488 959.74855 curveto +146.15918 959.55909 145.87304 959.26906 145.64648 958.87843 curveto +145.64648 959.8628 lineto +144.5625 959.8628 lineto +144.5625 950.74562 lineto +145.64648 950.74562 lineto +145.64648 954.2964 lineto +closepath +fill +grestore +gsave +0 0 0 setrgbcolor +newpath +151.44727 953.3003 moveto +152.58984 953.3003 lineto +154.64063 958.80812 lineto +156.69141 953.3003 lineto +157.83398 953.3003 lineto +155.37305 959.8628 lineto +153.9082 959.8628 lineto +151.44727 953.3003 lineto +closepath +fill +grestore +gsave +0 0 0 setrgbcolor +newpath +161.86523 954.05616 moveto +161.28711 954.05617 160.83008 954.28176 160.49414 954.73292 curveto +160.1582 955.1841 159.99023 955.80226 159.99023 956.58741 curveto +159.99023 957.37257 160.15722 957.99074 160.49121 958.44191 curveto +160.82519 958.89308 161.2832 959.11866 161.86523 959.11866 curveto +162.43945 959.11866 162.89453 958.8921 163.23047 958.43898 curveto +163.5664 957.98585 163.73437 957.36867 163.73438 956.58741 curveto +163.73437 955.81007 163.5664 955.19386 163.23047 954.73878 curveto +162.89453 954.28371 162.43945 954.05617 161.86523 954.05616 curveto +161.86523 954.05616 lineto +closepath +161.86523 953.1421 moveto +162.80273 953.14211 163.53906 953.4468 164.07422 954.05616 curveto +164.60937 954.66554 164.87695 955.50929 164.87695 956.58741 curveto +164.87695 957.66164 164.60937 958.50441 164.07422 959.11573 curveto +163.53906 959.72706 162.80273 960.03273 161.86523 960.03273 curveto +160.92383 960.03273 160.18652 959.72706 159.65332 959.11573 curveto +159.12012 958.50441 158.85351 957.66164 158.85352 956.58741 curveto +158.85351 955.50929 159.12012 954.66554 159.65332 954.05616 curveto +160.18652 953.4468 160.92383 953.14211 161.86523 953.1421 curveto +161.86523 953.1421 lineto +closepath +fill +grestore +gsave +0 0 0 setrgbcolor +newpath +170.97656 954.2964 moveto +170.97656 950.74562 lineto +172.05469 950.74562 lineto +172.05469 959.8628 lineto +170.97656 959.8628 lineto +170.97656 958.87843 lineto +170.74999 959.26906 170.46386 959.55909 170.11816 959.74855 curveto +169.77246 959.938 169.35742 960.03273 168.87305 960.03273 curveto +168.08008 960.03273 167.43457 959.71632 166.93652 959.08351 curveto +166.43848 958.4507 166.18945 957.61867 166.18945 956.58741 curveto +166.18945 955.55617 166.43848 954.72414 166.93652 954.09132 curveto +167.43457 953.45851 168.08008 953.14211 168.87305 953.1421 curveto +169.35742 953.14211 169.77246 953.23683 170.11816 953.42628 curveto +170.46386 953.61574 170.74999 953.90578 170.97656 954.2964 curveto +170.97656 954.2964 lineto +closepath +167.30273 956.58741 moveto +167.30273 957.38039 167.46582 958.00246 167.79199 958.45363 curveto +168.11816 958.9048 168.5664 959.13038 169.13672 959.13038 curveto +169.70703 959.13038 170.15625 958.9048 170.48438 958.45363 curveto +170.81249 958.00246 170.97656 957.38039 170.97656 956.58741 curveto +170.97656 955.79445 170.81249 955.17238 170.48438 954.7212 curveto +170.15625 954.27004 169.70703 954.04445 169.13672 954.04445 curveto +168.5664 954.04445 168.11816 954.27004 167.79199 954.7212 curveto +167.46582 955.17238 167.30273 955.79445 167.30273 956.58741 curveto +167.30273 956.58741 lineto +closepath +fill +grestore +gsave +0 0 0 setrgbcolor +newpath +179.13867 958.87843 moveto +179.13867 962.3589 lineto +178.05469 962.3589 lineto +178.05469 953.3003 lineto +179.13867 953.3003 lineto +179.13867 954.2964 lineto +179.36523 953.90578 179.65136 953.61574 179.99707 953.42628 curveto +180.34277 953.23683 180.75586 953.14211 181.23633 953.1421 curveto +182.0332 953.14211 182.68066 953.45851 183.17871 954.09132 curveto +183.67675 954.72414 183.92577 955.55617 183.92578 956.58741 curveto +183.92577 957.61867 183.67675 958.4507 183.17871 959.08351 curveto +182.68066 959.71632 182.0332 960.03273 181.23633 960.03273 curveto +180.75586 960.03273 180.34277 959.938 179.99707 959.74855 curveto +179.65136 959.55909 179.36523 959.26906 179.13867 958.87843 curveto +179.13867 958.87843 lineto +closepath +182.80664 956.58741 moveto +182.80663 955.79445 182.64355 955.17238 182.31738 954.7212 curveto +181.99121 954.27004 181.54296 954.04445 180.97266 954.04445 curveto +180.40234 954.04445 179.9541 954.27004 179.62793 954.7212 curveto +179.30176 955.17238 179.13867 955.79445 179.13867 956.58741 curveto +179.13867 957.38039 179.30176 958.00246 179.62793 958.45363 curveto +179.9541 958.9048 180.40234 959.13038 180.97266 959.13038 curveto +181.54296 959.13038 181.99121 958.9048 182.31738 958.45363 curveto +182.64355 958.00246 182.80663 957.38039 182.80664 956.58741 curveto +182.80664 956.58741 lineto +closepath +fill +grestore +gsave +0 0 0 setrgbcolor +newpath +189.51563 954.30812 moveto +189.39453 954.23781 189.26269 954.18605 189.12012 954.15284 curveto +188.97753 954.11965 188.82031 954.10305 188.64844 954.10304 curveto +188.03906 954.10305 187.57129 954.30129 187.24512 954.69777 curveto +186.91894 955.09425 186.75586 955.66359 186.75586 956.40577 curveto +186.75586 959.8628 lineto +185.67188 959.8628 lineto +185.67188 953.3003 lineto +186.75586 953.3003 lineto +186.75586 954.31984 lineto +186.98242 953.9214 187.27734 953.62551 187.64063 953.43214 curveto +188.0039 953.23879 188.44531 953.14211 188.96484 953.1421 curveto +189.03906 953.14211 189.12109 953.14699 189.21094 953.15675 curveto +189.30078 953.16652 189.40039 953.18117 189.50977 953.2007 curveto +189.51563 954.30812 lineto +closepath +fill +grestore +gsave +0 0 0 setrgbcolor +newpath +193.20117 954.05616 moveto +192.62304 954.05617 192.16601 954.28176 191.83008 954.73292 curveto +191.49414 955.1841 191.32617 955.80226 191.32617 956.58741 curveto +191.32617 957.37257 191.49316 957.99074 191.82715 958.44191 curveto +192.16113 958.89308 192.61914 959.11866 193.20117 959.11866 curveto +193.77539 959.11866 194.23046 958.8921 194.56641 958.43898 curveto +194.90234 957.98585 195.07031 957.36867 195.07031 956.58741 curveto +195.07031 955.81007 194.90234 955.19386 194.56641 954.73878 curveto +194.23046 954.28371 193.77539 954.05617 193.20117 954.05616 curveto +193.20117 954.05616 lineto +closepath +193.20117 953.1421 moveto +194.13867 953.14211 194.87499 953.4468 195.41016 954.05616 curveto +195.94531 954.66554 196.21288 955.50929 196.21289 956.58741 curveto +196.21288 957.66164 195.94531 958.50441 195.41016 959.11573 curveto +194.87499 959.72706 194.13867 960.03273 193.20117 960.03273 curveto +192.25976 960.03273 191.52246 959.72706 190.98926 959.11573 curveto +190.45605 958.50441 190.18945 957.66164 190.18945 956.58741 curveto +190.18945 955.50929 190.45605 954.66554 190.98926 954.05616 curveto +191.52246 953.4468 192.25976 953.14211 193.20117 953.1421 curveto +193.20117 953.1421 lineto +closepath +fill +grestore +gsave +0 0 0 setrgbcolor +newpath +163.74023 966.11476 moveto +164.92383 966.11476 lineto +164.92383 969.81202 lineto +168.84961 966.11476 lineto +170.37305 966.11476 lineto +166.03125 970.19288 lineto +170.68359 974.8628 lineto +169.125 974.8628 lineto +164.92383 970.64991 lineto +164.92383 974.8628 lineto +163.74023 974.8628 lineto +163.74023 966.11476 lineto +closepath +fill +grestore +grestore +gsave [1.0140005 0 0 1 -25.259407 114.38609] concat +gsave +0 0 0 setrgbcolor +newpath +107.18555 921.86671 moveto +109.11914 921.86671 lineto +110.42578 915.13429 lineto +108.24023 915.55616 lineto +108.44531 914.53663 lineto +110.61914 914.11476 lineto +111.80859 914.11476 lineto +110.29688 921.86671 lineto +112.22461 921.86671 lineto +112.03711 922.8628 lineto +106.99219 922.8628 lineto +107.18555 921.86671 lineto +closepath +fill +grestore +gsave +0 0 0 setrgbcolor +newpath +118.125 914.11476 moveto +119.16797 914.11476 lineto +114.20508 923.97609 lineto +113.16797 923.97609 lineto +118.125 914.11476 lineto +closepath +fill +grestore +gsave +0 0 0 setrgbcolor +newpath +122.68359 913.95655 moveto +123.47656 913.95656 124.083 914.22024 124.50293 914.74757 curveto +124.92284 915.27492 125.13281 916.03273 125.13281 917.02101 curveto +125.13281 917.77101 125.03417 918.51613 124.83691 919.25636 curveto +124.63964 919.9966 124.36327 920.65968 124.00781 921.24562 curveto +123.64453 921.83156 123.21777 922.27589 122.72754 922.57863 curveto +122.2373 922.88136 121.69531 923.03273 121.10156 923.03273 curveto +120.33594 923.03273 119.74414 922.7671 119.32617 922.23585 curveto +118.9082 921.7046 118.69922 920.94874 118.69922 919.96827 curveto +118.69922 919.22609 118.7998 918.48293 119.00098 917.73878 curveto +119.20215 916.99465 119.48242 916.33156 119.8418 915.74952 curveto +120.20117 915.16359 120.62207 914.71828 121.10449 914.41359 curveto +121.58691 914.10891 122.11328 913.95656 122.68359 913.95655 curveto +122.68359 913.95655 lineto +closepath +122.61328 914.89405 moveto +122.3164 914.89406 122.03418 914.97316 121.7666 915.13136 curveto +121.49902 915.28957 121.25781 915.52297 121.04297 915.83155 curveto +120.68359 916.34719 120.39746 916.99074 120.18457 917.76222 curveto +119.97168 918.53371 119.86523 919.3257 119.86523 920.1382 curveto +119.86523 920.78273 119.97949 921.27003 120.20801 921.60011 curveto +120.43652 921.93019 120.77343 922.09523 121.21875 922.09523 curveto +121.53125 922.09523 121.82031 922.01613 122.08594 921.85792 curveto +122.35156 921.69972 122.59179 921.46632 122.80664 921.15773 curveto +123.1621 920.64601 123.44433 920.00441 123.65332 919.23292 curveto +123.8623 918.46144 123.96679 917.6675 123.9668 916.85109 curveto +123.96679 916.20656 123.85253 915.71926 123.62402 915.38917 curveto +123.3955 915.0591 123.05859 914.89406 122.61328 914.89405 curveto +122.61328 914.89405 lineto +closepath +fill +grestore +grestore +grestore +showpage +%%EOF diff --git a/11-np/kobvod.svg b/11-np/kobvod.svg new file mode 100644 index 0000000..3db0939 --- /dev/null +++ b/11-np/kobvod.svg @@ -0,0 +1,162 @@ + + + + + + + image/svg+xml + + + + + + + + + + + + + y + + fix(x) obvoddsfsad yo obvod proK 1/0 + diff --git a/11-np/not.eps b/11-np/not.eps new file mode 100644 index 0000000..7749942 --- /dev/null +++ b/11-np/not.eps @@ -0,0 +1,170 @@ +%!PS-Adobe-3.0 EPSF-3.0 +%%Creator: 0.45.1 +%%Pages: 1 +%%Orientation: Portrait +%%BoundingBox: 1 1 35 99 +%%HiResBoundingBox: 1.6 1.5999861 34.8 98.400018 +%%EndComments +%%Page: 1 1 +0 842 translate +0.8 -0.8 scale +0 0 0 setrgbcolor +[] 0 setdash +1 setlinewidth +0 setlinejoin +0 setlinecap +gsave [1 0 0 1 0 0] concat +0 0 0 setrgbcolor +[] 0 setdash +1 setlinewidth +0 setlinejoin +0 setlinecap +newpath +2.5 969.86216 moveto +42.5 969.86216 lineto +42.5 969.86216 lineto +42.5 969.86216 lineto +43 969.86216 lineto +stroke +0 0 0 setrgbcolor +[] 0 setdash +1 setlinewidth +0 setlinejoin +0 setlinecap +newpath +2.5 1009.8622 moveto +42.5 1009.8622 lineto +42.5 1009.8622 lineto +42.5 1009.8622 lineto +43 1009.8622 lineto +stroke +0 0 0 setrgbcolor +[] 0 setdash +1 setlinewidth +0 setlinejoin +0 setlinecap +newpath +42.625 969.36216 moveto +42.625 1009.3622 lineto +42.625 1009.3622 lineto +42.625 1009.3622 lineto +42.625 1009.8622 lineto +stroke +0 0 0 setrgbcolor +[] 0 setdash +1 setlinewidth +0 setlinejoin +0 setlinecap +newpath +2.625 969.36216 moveto +2.625 1009.3622 lineto +2.625 1009.3622 lineto +2.625 1009.3622 lineto +2.625 1009.8622 lineto +stroke +0 0 0 setrgbcolor +[] 0 setdash +1 setlinewidth +0 setlinejoin +0 setlinecap +newpath +22.75 1009.8622 moveto +22.75 1049.8622 lineto +stroke +gsave +0 0 0 setrgbcolor +newpath +22.750001 1050.3622 moveto +20.285901 1046.0942 lineto +17.821793 1041.8263 lineto +22.750001 1041.8263 lineto +27.678203 1041.8263 lineto +25.214102 1046.0942 lineto +22.750001 1050.3622 lineto +closepath +fill +grestore +gsave [1.0140005 0 0 1 -81.31463 105.59921] concat +gsave +0 0 0 setrgbcolor +newpath +112.19824 928.52077 moveto +111.74121 929.69264 111.29589 930.45729 110.8623 930.81472 curveto +110.42871 931.17213 109.84863 931.35084 109.12207 931.35085 curveto +107.83008 931.35085 lineto +107.83008 929.99733 lineto +108.7793 929.99733 lineto +109.22461 929.99733 109.57031 929.89186 109.81641 929.68093 curveto +110.0625 929.46999 110.33496 928.97194 110.63379 928.18679 curveto +110.92383 927.4485 lineto +106.94238 917.76296 lineto +108.65625 917.76296 lineto +111.73242 925.46218 lineto +114.80859 917.76296 lineto +116.52246 917.76296 lineto +112.19824 928.52077 lineto +closepath +fill +grestore +grestore +0 0 0 setrgbcolor +[] 0 setdash +1 setlinewidth +0 setlinejoin +0 setlinecap +newpath +22.750191 929.86216 moveto +22.750191 969.86216 lineto +stroke +gsave +0 0 0 setrgbcolor +newpath +22.750208 970.36216 moveto +20.286108 966.09421 lineto +17.822 961.82626 lineto +22.750208 961.82626 lineto +27.678409 961.82626 lineto +25.214309 966.09421 lineto +22.750208 970.36216 lineto +closepath +fill +grestore +gsave [1.0140005 0 0 1 -81.296609 15.599212] concat +gsave +0 0 0 setrgbcolor +newpath +116.28516 917.76296 moveto +112.72559 922.553 lineto +116.46973 927.60671 lineto +114.5625 927.60671 lineto +111.69727 923.73952 lineto +108.83203 927.60671 lineto +106.9248 927.60671 lineto +110.74805 922.45632 lineto +107.25 917.76296 lineto +109.15723 917.76296 lineto +111.76758 921.26979 lineto +114.37793 917.76296 lineto +116.28516 917.76296 lineto +closepath +fill +grestore +grestore +gsave [1.0140005 0 0 1 -92.084684 64.763572] concat +gsave +0 0 0 setrgbcolor +newpath +106.88339 922.20106 moveto +119.61489 922.20106 lineto +119.61489 927.49615 lineto +118.11364 927.49615 lineto +118.11364 923.6674 lineto +106.88339 923.69067 lineto +106.88339 922.20106 lineto +closepath +fill +grestore +grestore +grestore +showpage +%%EOF diff --git a/11-np/not.svg b/11-np/not.svg new file mode 100644 index 0000000..18cc599 --- /dev/null +++ b/11-np/not.svg @@ -0,0 +1,121 @@ + + + + + + + image/svg+xml + + + + + + + + + + + + + + y + + x ¬ + diff --git a/11-np/p-np.eps b/11-np/p-np.eps new file mode 100644 index 0000000..0cd4e36 --- /dev/null +++ b/11-np/p-np.eps @@ -0,0 +1,350 @@ +%!PS-Adobe-3.0 EPSF-3.0 +%%Creator: 0.45.1 +%%Pages: 1 +%%Orientation: Portrait +%%BoundingBox: 1 1 122 162 +%%HiResBoundingBox: 1.5999993 1.5999983 121.60003 161.59997 +%%EndComments +%%Page: 1 1 +0 842 translate +0.8 -0.8 scale +0 0 0 setrgbcolor +[] 0 setdash +1 setlinewidth +0 setlinejoin +0 setlinecap +gsave [1 0 0 1 0 0] concat +gsave [1 0 0 1 2 -2.0000026] concat +gsave +1 1 1 setrgbcolor +newpath +149.85837 952.36221 moveto +149.85837 1007.5124 116.34314 1052.2205 75.000013 1052.2205 curveto +33.656885 1052.2205 0.14165707 1007.5124 0.14165707 952.36221 curveto +0.14165707 897.21198 33.656885 852.50388 75.000013 852.50388 curveto +116.34314 852.50388 149.85837 897.21198 149.85837 952.36221 curveto +149.85837 952.36221 lineto +closepath +eofill +grestore +0 0 0 setrgbcolor +[] 0 setdash +0.28331581 setlinewidth +0 setlinejoin +0 setlinecap +newpath +149.85837 952.36221 moveto +149.85837 1007.5124 116.34314 1052.2205 75.000013 1052.2205 curveto +33.656885 1052.2205 0.14165707 1007.5124 0.14165707 952.36221 curveto +0.14165707 897.21198 33.656885 852.50388 75.000013 852.50388 curveto +116.34314 852.50388 149.85837 897.21198 149.85837 952.36221 curveto +149.85837 952.36221 lineto +closepath +stroke +gsave +0.80000001 0.80000001 0.80000001 setrgbcolor +newpath +125.00001 902.36221 moveto +125.00813 916.1722 102.61999 927.36955 75.000014 927.36955 curveto +47.380038 927.36955 24.991899 916.1722 25.000015 902.36221 curveto +24.991899 888.55223 47.380038 877.35487 75.000014 877.35487 curveto +102.61999 877.35487 125.00813 888.55223 125.00001 902.36221 curveto +closepath +fill +grestore +gsave [1 0 0 1 -349.14842 218.39392] concat +gsave +0 0 0 setrgbcolor +newpath +395.02734 678.77101 moveto +396.62109 678.77101 lineto +399.03516 686.27101 lineto +400.5 678.77101 lineto +401.6543 678.77101 lineto +399.94922 687.51905 lineto +398.34961 687.51905 lineto +395.94141 679.97218 lineto +394.47656 687.51905 lineto +393.32227 687.51905 lineto +395.02734 678.77101 lineto +closepath +fill +grestore +gsave +0 0 0 setrgbcolor +newpath +404.00391 678.77101 moveto +406.74023 678.77101 lineto +407.5371 678.77102 408.14453 678.95656 408.5625 679.32765 curveto +408.98046 679.69875 409.18945 680.24172 409.18945 680.95655 curveto +409.18945 681.9175 408.88085 682.66554 408.26367 683.2007 curveto +407.64648 683.73586 406.77929 684.00343 405.66211 684.00343 curveto +404.17383 684.00343 lineto +403.48828 687.51905 lineto +402.29883 687.51905 lineto +404.00391 678.77101 lineto +closepath +405 679.74366 moveto +404.36719 683.03077 lineto +405.85547 683.03077 lineto +406.52734 683.03078 407.04296 682.8589 407.40234 682.51515 curveto +407.76171 682.1714 407.9414 681.67922 407.94141 681.03859 curveto +407.9414 680.62844 407.81933 680.31008 407.5752 680.08351 curveto +407.33105 679.85695 406.98828 679.74367 406.54688 679.74366 curveto +405 679.74366 lineto +closepath +fill +grestore +gsave +0 0 0 setrgbcolor +newpath +413.77148 683.75148 moveto +416.92969 683.75148 lineto +416.74805 684.71241 lineto +413.57813 684.71241 lineto +413.77148 683.75148 lineto +closepath +fill +grestore +gsave +0 0 0 setrgbcolor +newpath +421.99805 684.91749 moveto +422.76563 680.95655 lineto +423.84961 680.95655 lineto +423.08203 684.87648 lineto +423.04297 685.06789 423.01465 685.23195 422.99707 685.36866 curveto +422.97949 685.50539 422.9707 685.61867 422.9707 685.70851 curveto +422.9707 686.04054 423.07226 686.29738 423.27539 686.47902 curveto +423.47851 686.66066 423.76562 686.75148 424.13672 686.75148 curveto +424.71484 686.75148 425.21484 686.55617 425.63672 686.16554 curveto +426.05859 685.77492 426.33398 685.24953 426.46289 684.58937 curveto +427.18359 680.95655 lineto +428.26172 680.95655 lineto +426.99023 687.51905 lineto +425.91211 687.51905 lineto +426.12891 686.4878 lineto +425.82421 686.87062 425.46191 687.16652 425.04199 687.3755 curveto +424.62207 687.58448 424.17578 687.68898 423.70313 687.68898 curveto +423.1289 687.68898 422.68164 687.53175 422.36133 687.2173 curveto +422.04101 686.90284 421.88086 686.46437 421.88086 685.90187 curveto +421.88086 685.78468 421.89062 685.6382 421.91016 685.46241 curveto +421.92969 685.28664 421.95898 685.10499 421.99805 684.91749 curveto +421.99805 684.91749 lineto +closepath +426.92578 677.9214 moveto +428.0918 677.9214 lineto +425.75391 680.12452 lineto +424.85156 680.12452 lineto +426.92578 677.9214 lineto +closepath +fill +grestore +gsave +0 0 0 setrgbcolor +newpath +434.76563 683.47609 moveto +434.76562 682.90187 434.64062 682.46242 434.39063 682.15773 curveto +434.14062 681.85304 433.78125 681.7007 433.3125 681.7007 curveto +432.99218 681.7007 432.68652 681.78273 432.39551 681.94679 curveto +432.10449 682.11086 431.8457 682.34914 431.61914 682.66163 curveto +431.39648 682.97023 431.21875 683.34328 431.08594 683.78077 curveto +430.95312 684.21828 430.88672 684.65187 430.88672 685.08155 curveto +430.88672 685.62843 431.01172 686.04933 431.26172 686.34425 curveto +431.51172 686.63917 431.86718 686.78663 432.32813 686.78663 curveto +432.66796 686.78663 432.98339 686.70656 433.27441 686.5464 curveto +433.56542 686.38624 433.81445 686.15382 434.02148 685.84913 curveto +434.24414 685.52882 434.42382 685.15187 434.56055 684.71827 curveto +434.69726 684.28468 434.76562 683.87062 434.76563 683.47609 curveto +434.76563 683.47609 lineto +closepath +431.42578 681.95265 moveto +431.71484 681.57375 432.05566 681.28664 432.44824 681.09132 curveto +432.84082 680.89601 433.27734 680.79836 433.75781 680.79835 curveto +434.42968 680.79836 434.95117 681.01808 435.32227 681.45753 curveto +435.69335 681.89699 435.8789 682.5132 435.87891 683.30616 curveto +435.8789 683.95461 435.76366 684.57277 435.5332 685.16066 curveto +435.30273 685.74855 434.9707 686.27492 434.53711 686.73976 curveto +434.24804 687.04835 433.92187 687.2837 433.55859 687.44581 curveto +433.19531 687.60792 432.8125 687.68898 432.41016 687.68898 curveto +431.94531 687.68898 431.55468 687.5923 431.23828 687.39894 curveto +430.92187 687.20558 430.68555 686.91749 430.5293 686.53468 curveto +429.85547 690.01515 lineto +428.77734 690.01515 lineto +430.54102 680.95655 lineto +431.61914 680.95655 lineto +431.42578 681.95265 lineto +closepath +fill +grestore +gsave +0 0 0 setrgbcolor +newpath +438.62695 678.40187 moveto +439.70508 678.40187 lineto +437.92969 687.51905 lineto +436.85156 687.51905 lineto +438.62695 678.40187 lineto +closepath +fill +grestore +gsave +0 0 0 setrgbcolor +newpath +446.44336 683.55812 moveto +445.67578 687.51905 lineto +444.5918 687.51905 lineto +445.35938 683.59913 lineto +445.39453 683.41554 445.42187 683.25343 445.44141 683.1128 curveto +445.46093 682.97218 445.4707 682.86086 445.4707 682.77882 curveto +445.4707 682.4507 445.36718 682.19484 445.16016 682.01124 curveto +444.95312 681.82765 444.66406 681.73586 444.29297 681.73585 curveto +443.71484 681.73586 443.21679 681.92824 442.79883 682.313 curveto +442.38086 682.69777 442.10742 683.22023 441.97852 683.88038 curveto +441.25781 687.51905 lineto +440.17969 687.51905 lineto +441.45117 680.95655 lineto +442.5293 680.95655 lineto +442.3125 681.9878 lineto +442.61328 681.6089 442.97461 681.31594 443.39648 681.1089 curveto +443.81836 680.90187 444.26171 680.79836 444.72656 680.79835 curveto +445.30468 680.79836 445.75292 680.95461 446.07129 681.2671 curveto +446.38964 681.57961 446.54882 682.01906 446.54883 682.58546 curveto +446.54882 682.72609 446.54003 682.87648 446.52246 683.03663 curveto +446.50488 683.19679 446.47851 683.37062 446.44336 683.55812 curveto +446.44336 683.55812 lineto +closepath +fill +grestore +gsave +0 0 0 setrgbcolor +newpath +453.14648 683.65187 moveto +453.1582 683.58937 453.16699 683.52492 453.17285 683.45851 curveto +453.17871 683.39211 453.18163 683.3257 453.18164 683.25929 curveto +453.18163 682.78273 453.04199 682.40578 452.7627 682.12843 curveto +452.48339 681.85109 452.10351 681.71242 451.62305 681.71241 curveto +451.08789 681.71242 450.61523 681.88137 450.20508 682.21925 curveto +449.79492 682.55715 449.48437 683.03664 449.27344 683.65773 curveto +453.14648 683.65187 lineto +closepath +454.08398 684.49562 moveto +449.06836 684.49562 lineto +449.04492 684.64406 449.0293 684.76125 449.02148 684.84718 curveto +449.01367 684.93312 449.00976 685.00734 449.00977 685.06984 curveto +449.00976 685.61281 449.17676 686.03273 449.51074 686.3296 curveto +449.84472 686.62648 450.3164 686.77491 450.92578 686.77491 curveto +451.39453 686.77491 451.83789 686.72218 452.25586 686.61671 curveto +452.67382 686.51124 453.06249 686.35695 453.42188 686.15382 curveto +453.2168 687.22023 lineto +452.83007 687.37648 452.43066 687.49366 452.01855 687.57179 curveto +451.60644 687.64991 451.1875 687.68898 450.76172 687.68898 curveto +449.85156 687.68898 449.15137 687.4712 448.66113 687.03566 curveto +448.1709 686.60011 447.92578 685.98195 447.92578 685.18116 curveto +447.92578 684.49757 448.04785 683.86183 448.29199 683.27394 curveto +448.53613 682.68605 448.89453 682.16164 449.36719 681.7007 curveto +449.67187 681.41164 450.03418 681.18898 450.4541 681.03273 curveto +450.87402 680.87648 451.32031 680.79836 451.79297 680.79835 curveto +452.53515 680.79836 453.12597 681.02101 453.56543 681.46632 curveto +454.00488 681.91164 454.2246 682.50929 454.22461 683.25929 curveto +454.2246 683.43898 454.21288 683.63136 454.18945 683.83644 curveto +454.16601 684.04152 454.13085 684.26125 454.08398 684.49562 curveto +454.08398 684.49562 lineto +closepath +453.12891 677.9214 moveto +454.29492 677.9214 lineto +451.95703 680.12452 lineto +451.05469 680.12452 lineto +453.12891 677.9214 lineto +closepath +fill +grestore +grestore +gsave [1.0794981 0 0 1.1120691 -10.146435 2.3213619] concat +gsave +0.80000001 0.80000001 0.80000001 setrgbcolor +newpath +125.19378 899.26141 moveto +125.2013 911.67969 104.4619 921.74863 78.87596 921.74863 curveto +53.290018 921.74863 32.550621 911.67969 32.55814 899.26141 curveto +32.550621 886.84313 53.290018 876.77419 78.87596 876.77419 curveto +104.4619 876.77419 125.2013 886.84313 125.19378 899.26141 curveto +closepath +fill +grestore +grestore +gsave [1 0 0 1 32.998062 -15.126589] concat +gsave +0 0 0 setrgbcolor +newpath +40.027344 1013.1148 moveto +42.763672 1013.1148 lineto +43.560541 1013.1148 44.167963 1013.3003 44.585938 1013.6714 curveto +45.003899 1014.0425 45.212883 1014.5855 45.212891 1015.3003 curveto +45.212883 1016.2612 44.90429 1017.0093 44.287109 1017.5444 curveto +43.669916 1018.0796 42.80273 1018.3472 41.685547 1018.3472 curveto +40.197266 1018.3472 lineto +39.511719 1021.8628 lineto +38.322266 1021.8628 lineto +40.027344 1013.1148 lineto +closepath +41.023438 1014.0874 moveto +40.390625 1017.3745 lineto +41.878906 1017.3745 lineto +42.550777 1017.3745 43.066401 1017.2027 43.425781 1016.8589 curveto +43.78515 1016.5152 43.964838 1016.023 43.964844 1015.3823 curveto +43.964838 1014.9722 43.842768 1014.6538 43.598633 1014.4273 curveto +43.354487 1014.2007 43.011714 1014.0874 42.570313 1014.0874 curveto +41.023438 1014.0874 lineto +closepath +fill +grestore +grestore +gsave [1 0 0 1 108.07718 103.22423] concat +gsave +0 0 0 setrgbcolor +newpath +19.985352 936.01589 moveto +22.375977 936.01589 lineto +28.194336 946.99343 lineto +28.194336 936.01589 lineto +29.916992 936.01589 lineto +29.916992 949.13796 lineto +27.526367 949.13796 lineto +21.708008 938.16042 lineto +21.708008 949.13796 lineto +19.985352 949.13796 lineto +19.985352 936.01589 lineto +closepath +fill +grestore +gsave +0 0 0 setrgbcolor +newpath +35.225586 937.47487 moveto +35.225586 942.40554 lineto +37.458008 942.40554 lineto +38.284173 942.40554 38.922844 942.19168 39.374023 941.76393 curveto +39.825187 941.33621 40.050773 940.72683 40.050781 939.93581 curveto +40.050773 939.15066 39.825187 938.54422 39.374023 938.11647 curveto +38.922844 937.68875 38.284173 937.47488 37.458008 937.47487 curveto +35.225586 937.47487 lineto +closepath +33.450195 936.01589 moveto +37.458008 936.01589 lineto +38.928704 936.0159 40.040519 936.34842 40.793457 937.01345 curveto +41.546377 937.6785 41.922841 938.65262 41.922852 939.93581 curveto +41.922841 941.23074 41.546377 942.20925 40.793457 942.87136 curveto +40.040519 943.53347 38.928704 943.86453 37.458008 943.86452 curveto +35.225586 943.86452 lineto +35.225586 949.13796 lineto +33.450195 949.13796 lineto +33.450195 936.01589 lineto +closepath +fill +grestore +grestore +grestore +grestore +showpage +%%EOF diff --git a/11-np/p-np.svg b/11-np/p-np.svg new file mode 100644 index 0000000..f2a44b9 --- /dev/null +++ b/11-np/p-np.svg @@ -0,0 +1,213 @@ + + + + + + + image/svg+xml + + + + + + + + + + NP - úplné + P NP + + + + + + + + image/svg+xml + + + + + + + + + + NP - úplné + P NP +