\documentclass[b5paper,10pt]{book}
\usepackage{KnuthAprilis11}
\usepackage{mycolortbl}

\makeindex

\renewcommand{\sfdefault}{ufu}

\setcounter{chapter}{7}
\setcounter{tocdepth}{4}
\setcounter{section}{0}
\setcounter{subsection}{1}
\setcounter{subsubsection}{3}
\setcounter{figure}{0}
\setcounter{equation}{0}
\setcounter{page}{1}


  
\begin{document}
\tableofcontents
\renewcommand\sz[1]{[\textit{#1}]}
\def\figdir{abrak} % ábrakönyvtár átnevezése
\def\CEE/{{\mc C\spacefactor1000}}% the C programming language
\def\MF{{\manfnt META}\-{\manfnt FONT}}%
\def\bool#1{\mathbin{\catcode`\.=12\vcenter{\hbox{$#1$}}}}
\def\nbool#1{\mathbin{\catcode`\.=12     \mkern1.5mu\overline{\mkern-1.5mu#1\mkern-1.5mu}\mkern1.5mu}}
\def\contra{\bool{\bot}} %%% rendben
\def\nimp{\nbool\supset}   %%% rendben
\def\quant{\lower.23ex\hbox{epsfbox{\figdir/v4a.9}}}   %%% ábra kell
\def\lproj{\bool{\epsfbox{\figdir/v4a.10}}}   %%% ábra kell
\def\cnimp{\nbool\subset}    %%% rendben
\def\rproj{\bool{\epsfbox{\figdir/v4a.11}}} %%% ábra kell
\def\xor{\oplus}       %%% rendben
\def\nor{\nbool\lor}   %%% rendben
\def\leqv{\bool\equiv}    %%% rendben
\def\rcomp{\nbool{\rproj}}   %%% ábra kell
\def\cimpl{\bool\subset}   %%% rendben
\def\lcomp{\nbool{\lproj}}   %%% ábra kell
\def\impl{\bool\supset} %%% rendben
\def\nand{\nbool{\land}}  %%% rendben
\def\affirm{\bool{\top}}  %%% rendben
\def\vtiny{\vskip.2pt}    %%% rendben
\def\orie{\rlap{$\,\vec{}$}} % oriented graph modifier
\def\rest{\mathbin{\mid}}


\hyphenation{
adat-rep-re-zen-tá-ció
vissza-kér-dez-zen
}

\index{Boole-függvény = Boolean function|(}

\newpage
{\quoteformat
Yet now and then your men of wit
Will condescend to take a bit.
\author JONATHAN SWIFT, \textsl{Cadenus és Vanessa} (1713) \cite{Swift1713}
\angolnevindex{Swift, Jonathan Dean (1667--1745)}}

\medskip
{\quoteformat
Egy kettes számrendszerbeli számjegy angolul \idez{binary digit}, 
röviden -- Turkey\angolnevindex{Tukey, John Wilder} javaslatára -- bit.
\author CLAUDE E. SHANNON, (1948) \cite{Shannon1948}
\angolnevindex{Shannon, Claude Elwood, Jr. (1916--2001)}}
\medskip
{\quoteformat
bit (bit), \textrm{n} .\thinspace.\thinspace. fárasztó eszköz \ldots
\author JESS STEIN és LAURENCE URDANG, \textsl{Random House Dictionary of the English Language} (1966) \cite{Stein1987}
\angolnevindex{Stein, Jess}\angolnevindex{Urdang, Laurence}}
\bigskip

\markboth{\sf 7. KOMBINATORIKAI KERESÉS (4. kötet 0. rész)}{\sf 7.1. NULLÁK ÉS EGYESEK}
\pagestyle{myheadings}
\section{Nullák és egyesek \label{alfejezet71}}


KOMBINATORIKAI ALGORITMUSOK tervezése során általában nagyon oda kell figyelni a hatékonyságra. A szükséges gyorsaság 
elérésének egyik fontos módszere a megfelelõ adatreprezentáció. Érdemes tehát ismereteinket az alapvetõ reprezentációs 
technikák területén megerõsíteni, mielõtt nekikezdünk a kombinatorikai algoritmusok részletes tanulmányozásának.

A mai számítógépek többnyire a bináris számrendszeren\index{bináris számrendszer = binary number system} alapulnak az ember által 
elõnyben részesített tízes számrendszer közvetlen alkalmazása helyett. A gépek ugyanis különös ügyességgel kezelik a kétállapotú 
kapcsolókat -- ezek állapotait rendszerint a 0 és az 1 számjegyekkel jelöljük. Az elsõ 6 fejezetben nem használtuk ki, 
hogy a bináris számítógépek számos olyan dolgot gyorsan meg tudnak csinálni, amit a decimális számítógépek nem. Egy bináris gép 
a \idez{logikai} vagy \idez{bitenkénti}\index{bitenkénti = bitwise} mûveleteket általában éppen olyan köny\-nyedén tudja 
végrehajtani, mint amilyen könnyen összead vagy kivon. Ezt a lehetõséget eddig azonban ritkán aknáztuk ki. épet bizonyos 
értelemben arra kértük, hogy \idez{félkézzel} dolgozzon. Láttuk, hogy a bináris és decimális számítógépek sok tekintetben 
nem különböznek lényegesen egymástól, de a bináris számítógépet bizonyos értelemben arra kértük, hogy \idez{félkézzel} dolgozzon.

A nulláknak és egyeseknek az a meghökkentõ képessége teszi a bináris számok tanulmányozását különösen értékessé, hogy kódolni 
lehet velük az információt éppúgy, mint az objektumok közötti logikai relációkat, sõt még magukat az információt feldolgozó 
algoritmusokat is. Valójában nem csak a kombinatorikai algoritmusok erõsítésére használjuk majd a bitenkénti mûveleteket, hanem 
azt is látni fogjuk, hogy a kétértékû logika tulajdonságai olyan új kombinatorikai problémákhoz vezetnek, amelyek önmagukban is 
nagyon érdekesek.

A számítástudománnyal foglalkozó kutatók lépésrõl lépésre egyre jobban megszelídítik a zabolátlan nullákat és egyeseket, és 
hasznos trükkökre használják fel õket. De mint ahogyan egy epizodista a színpadon, mi is jobban tesszük, ha alaposan megértjük 
a bináris számok elemi tulajdonságait, mielõtt nekifognánk a magasabb szintû fogalmak és technikák tanulmányozásának. Ezért 
azoknak az alapvetõ eljárásoknak a vizsgálatával kezdünk, melyek segítségével biteket és bitsorozatokat kezelhetünk.

\pagebreak

\markboth{\sf 7. KOMBINATORIKAI KERESÉS (4. kötet 0. rész)}{\sf 7.1.1. LOGIKAI ALAPOK}
\pagestyle{myheadings}

\bigskip

\subsection{Logikai alapok\label{pont711}}
\setcounter{equation}{0}
\setcounter{figure}{5}
16 különbözõ lehetséges olyan $f(x,y)$ függvény van, amelyik adott két bitbõl, mondjuk az $x$ és az $y$ bitekbõl, egy harmadik 
$z=f(x,y)$ bitet állít elõ, hiszen az $f(0,0)$, $f(0,1)$, $f(1,0)$ és $f(1,1)$ függvényértékek mindegyikét kétféleképpen 
választhatjuk meg. A \ref{tablazat71-1}. táblázat azokat az elnevezéseket és jelöléseket tartalmazza, amelyeket a formális 
logikában ezekkel a függvényekkel kapcsolatban hagyományosan használnak; feltéve, hogy 1 az \idez{igaz}\index{igaz = true} és 0 a 
\idez{hamis}\index{hamis = false} igazságértéket jelöli. A négy függvényértékbõl álló $f(0,0)f(0,1)f(1,0)f(1,1)$ sorozatot szokás 
az $f$ függvény \textit{igazságtáblájának}\index{igazságtábla = truth table} hívni.

{
\quoteformat
És akkor képzeljünk el egy olyan algebrát, amelyben az \textrm{x}, \textrm{y}, \textrm{z}  és a \textrm{c} szimbólumok 
a \textrm{0} és \textrm{1} értékeket és egyedül ezeket veszik fel.
\author GEORGE BOOLE, \textsl{An investigation of  the Laws of Thought} (1854) \cite[2. fejezet 15. alfejezete]{Boole1854}
\angolnevindex{Boole, George (1815--1864)}
}
\medskip
{
\quoteformat

Ellenkezõleg viszont -- folytatta Subidu\index{Subidu = Tweedledee} -- ha így volna, akkor így lehetne, 
ha így lenne, akkor így lehetett volna, de mivel nincs így, hát nem így van. Ez logikus. 
\author LEWIS CARROLL,  \textsl{Alice Tükörországban}(1871) \cite[4. fejezet]{Carroll1871} %(fordította Révbíró Tamás Ciceró Könyvstúdió, 2005)
\angolnevindex{Carroll, Lewis (= Dodgson, Charles Lutwidge, 1832--1898)}
}

Ezeket a függvényeket gyakran \idez{Boole-mûveleteknek} nevezzük George Boole 
\cite{Boole1847, Boole1854}\angolnevindex{Boole, George (1815--1864)} iránti tiszteletbõl. Õ vette elõször észre, hogy a 
nullákkal és egyesekkel végzett algebrai mûveleteket fel lehet használni egy olyan kalkulus megalkotására, mely támogatja a 
logikai következtetéseket. Boole azonban sohasem dolgozott a \idez{logikai vagynak} nevezett $\vee$ mûvelettel, szigorúan a 
nullákkal és egyesekkel végzett szokásos aritmetikai mûveletekhez tartotta magát. Így hát a diszjunkció kifejezésére 
$x+y$\koz-t írt, de de ügyelt arra, hogy csak akkor használja a jelölést, ha $x$ és $y$ kölcsönösen kizárták egymást (nem volt 
egyszerre mindkettõ 1). Ha pedig szükséges volt, $x+(1{-}x)y$\koz-t írt, így biztosítva, hogy a diszjunkció eredménye ne lehessen 2.

Amikor Boole angol nyelven elõadást tartott, a $+$ mûveletrõl beszélve olykor azt mondta, \idez{and} (és), máskor pedig 
\idez{or} (vagy). Ez a gyakorlat egy mai matematikus számára különösnek tûnhet, míg rá nem jön, hogy a szóhasználat tulajdonképpen 
teljesen normális; azt mondjuk ugyanis például, hogy \idez{a kisfiúk és kislányok gyerekek}, ugyanakkor 
\idez{a gyerekek kisfiúk vagy kislányok}. 

Jevons \cite[69. \S]{Jevons1864}\angolnevindex{Jevons, William Stanley (1835--1882)} kiterjesztette a Boole-kalkulust a 
szokatlan $x+x=x$ szabállyal, és megmutatta, hogy ha ezt az új $+$ mûveletet használjuk, $(x+y)z$ egyenlõ $xz+yz$\koz-vel. 
Azonban a disztributivitás másik, $xy+z=(x+z)(y+z)$  törvényét\index{disztributivitás törvény = distributive law} 
Jevons nem ismerte fel. Gyaníthatóan a használt jelölés miatt nem vette észre, hisz a második disztributivitási törvénynek 
nincs megfelelõje az aritmetikában. A \ref{tablazat71-1}.~táblázatbeli szimmetrikusabb $x\wedge y$ és $x\vee y$ jelölések 
könnyebbé teszik számunkra, hogy mindkét disztributivitási törvényt megjegyezzük:
\begin{equation}
(x\vee y) \wedge z \ = \ (x \wedge z) \vee (y \wedge z)\koz,\label{keplet711-1}
\end{equation}
\begin{equation}
(x\wedge y)\vee z \ = \ (x\vee z) \wedge (y\vee z)\koz.\label{keplet711-2}
\end{equation}
A (\ref{keplet711-2}) törvényt Peirce \cite{Peirce1867}\angolnevindex{Peirce, Charles Santiago Sanders (1839--1914)} vezette be, 
aki Jevonstól függetlenül rájött, hogyan kell kiterjeszteni a Boole-kalkulust. Egyébként amikor Peirce 
\cite[32. oldal]{Peirce1880} néhány évvel késõbb ezekrõl a korai eredményekrõl írt, hivatkozott is a 
\idez{Jevons-féle összeadással dolgozó \textit{Booli} algebrára}. A \idez{Boole-i} jelzõ manapság szokatlannak tûnõ 
írásmódja hosszú éveken át használatban volt olyannyira, hogy Funk\angolnevindex{Funk, Isaac Kauffman} és 
Wagnalls\angolnevindex{Wagnalls, Adam Willis} nagyszótárában még 1963-ban is így jelent meg.

Igazságértékekkel számolni valójában sokkal régebbi dolog, mint a Boole-algebra. A görög filozófusok már a Kr.~elõtti 
negyedik században kidolgozták az ítéletlogikát. Figyelemre méltó viták folytak akkoriban arról, hogy mi lesz adott $x$ és 
$y$ állítások esetén a \idez{ha $x$, akkor $y$} állítás helyénvaló igazságértéke.
Megarai Philo \cite{PhiloBC300}\angolnevindex{Philo, Megarai (= Philo the Dialectician, {\grk F'ilwn <o~Megar'iths})}
Kr.~e. kb.~300-ban a \ref{tablazat71-1}.~táblázatbeli igazságtáblának megfelelõen definiálta ezt, mely szerint egy implikáció 
igaz, amikor $x$ is, $y$ is hamis. A korai munkák közül sok elveszett, de például 
Galen\angolnevindex{Galenus, Claudius Aelius (129--200)} \cite{Galen150} (Kr.~u. 2.~század) munkáiban vannak olyan részletek, 
melyek hivatkoznak az állításoknak mind a megengedõ, mind a kizáró diszjunkciójára. 
{Lásd Boche\'nski\angolnevindex{Bochen\'nski, Józef (= Innocenty) Maria (1902--1995)} \cite{Bochenski1956}
kitûnõ tanulmányát a logikának az ókortól a 20. századig tartó fejlõdésérõl.}
  
\begin{table}[t!]
\caption{\label{tablazat71-1}}
\centerline{A TIZENHAT KÉTVÁLTOZÓS LOGIKAI MÛVELET} 
\vspace{4mm}
\centering
\small
{\setlength\tabcolsep{1pt}
      \begin{tabular}{@{}cccl@{}}
		  \hline 
igazság-  & régi és új jelölések                                                         & mûveleti     & \hspace{2cm} megnevezések  \\
tábla     &                                                                   &  jel         & \\ \hline
0000      &      0                                                            & $\contra$    & ellentmondás; hamisság; konstans 0 \\
0001      & $xy,\koz x\wedge y,\koz  x \& y$                                   & $\wedge$      & konjunkció; $\ldots$ és $\ldots$; \idez{and} \\
0010      & $x\wedge\bar y,\koz x\bool{{\not\supset}}y,\koz [x>y],\koz x\dotminus y$ & $\nimp$ & differencia; $\ldots$, de $\ldots$ nem \\
0011      &           $x$                                                     & $\lproj$      & bal projekció, elsõ diktátor  \\
0100      & $\bar x\wedge y,\koz x\bool{{\not\subset}}y,\koz [x<y],\koz y\dotminus x$ & $\cnimp$ & nem $\ldots$, de $\ldots$ \\
0101      &           $y$                                                     & $\rproj$      & jobb projekció, második diktátor  \\
0110      & $x\xor y,\koz x\bool{\not\equiv}y,\koz x\bool{\hat{}}y$           & $\xor$        & exkluzív diszjunkció; kizáró vagy; \idez{xor} \\
0111      &   $x\vee y,\koz x|y$                                              & $\vee$        & (inkluzív) diszjunkció; $\ldots$ vagy $\ldots$; \idez{or} \\
1000      & $\bar x\wedge \bar y,\koz \overline{x\vee y},\koz x\nor y,\koz x\downarrow y$ & $\nor$ & együttes tagadás; sem $\ldots$, sem $\ldots$; \idez{nor} \\
1001      & $x\leqv y,\koz x\leftrightarrow y,\koz x\mathbin\Leftrightarrow y$ & $\equiv$    & ekvivalencia; $\ldots$ akkor és csak akkor, ha $\ldots$ \\
1010      & $\bar y,\koz \lnot y,\koz !y,\koz {\sim}y$                        & $\rcomp$      & jobb komplemens \\
1011      & $x\vee\bar y,\koz x\cimpl y,\koz x\Leftarrow y,\koz [x\ge y],\koz x^y$ & $\cimpl$ & fordított implikáció; $\ldots$, ha \\
1100      & $\bar x,\koz \lnot x,\koz !x,\koz {\sim}x$                        & $\lcomp$      & bal komplemens \\
1101      &$\bar x\vee y,\koz x\impl y,\koz x\Rightarrow y,\koz  [x\le y],\koz y^x$ & $\impl$ & implikáció; csak akkor $\ldots$, ha $\ldots$; ha $\ldots$, akkor $\ldots$  \\
1110      &$\bar x\vee\bar y,\koz \overline{x\wedge y},\koz x\nand y,\koz x \vert y$ & $\nand$ & egyszerre nem $\ldots$ és $\ldots$; \idez{nand}          \\
1111      &           1                                                       & $\affirm$    & tautológia; érvényesség; konstans 1  \\ \hline
			\end{tabular}}
\end{table}

Egy kétváltozós $f(x,y)$ függvényt valamilyen alkalmas $\circ$ mûveleti jelet használva gyakran $x\circ y$ formában írunk. 
A \ref{tablazat71-1}.~táblázat mutatja azt a tizenhat mûveleti jelet, amit a kétváltozós Boole-függvények számára kiválasztottunk; 
például $\contra$ jelöli azt a függvényt, melynek az igazságtáblája 0000, $\wedge$ a mûveleti jele  a 0001 függvénynek, $\nimp$ 
a 0010-nek, és így tovább. Írhatjuk, hogy $x\contra y=0,\; x\wedge y=xy,\; x\nimp y=x\dotminus y,\; x\; \lproj \;y=x, 
\dots, x\nand y=\bar x\vee\bar y, \; x\affirm y=1$.

Természetesen a \ref{tablazat71-1}.~táblázatbeli mûveletek nem mind egyformán fontosak. Például az elsõ és az utolsó sorban lévõk 
banálisak, mivel $x$ és $y$ értékétõl függetlenül konstans az értékük. Négy közülük csak az $x$, vagy csak az $y$ függvénye. 
$1 - x$ helyett pedig $\bar x$-et írunk $x$ \textit{komplemense}\index{Boole-függvény komplemense = complement of a Boole function} 
kifejezésére.

Azt a négy mûveletet, melyeknek igazságtáblája egyetlen egyest tartalmaz, könnyû megadni az $\wedge$ mûvelettel: $x\wedge y$,
\index{AND mûvelet $(\wedge)$ = AND mûvelet $(\wedge)$}\index{OR mûvelet $(vee)$ = OR mûvelet $(vee)$}
\index{NAND mûvelet $(\nand)$ = AND mûvelet $(\nand)$}\index{NOR mûvelet $(\nor)$ = NOR mûvelet $(\nor)$} 
$x\wedge\bar y$,\; $\bar x\wedge y$,\; $\bar x\wedge\bar y$, a három egyest tartalmazókat pedig a $\vee$ mûvelettel: 
$x\vee y$,\; $x\vee\bar y$,\; $\bar x\vee y$,\; $\bar x\vee\bar y$. A kiindulási $x\wedge y$ és $x\vee y$ függvények a 
gyakorlatban használhatóbbnak bizonyultak, mint komplemensük vagy félkomplemens párjaik, bár a NOR-nak\index{sem \ldots, sem = NOR} 
és NAND-nak\index{egyszerre nem = NAND} nevezett $x\nor y=\bar x\wedge\bar y$ és $x\nand y=\bar x\vee\bar y$  mûveletek 
is érdekesek, mert könnyû õket megvalósítani a tranzisztoros áramkörökben.

1913-ban Scheffer\angolnevindex{Scheffer, Henry Maurice (1882--1964)} \cite{Scheffer1913} megmutatta, hogy mind a 16 függvényt 
ki lehet fejezni már egyetlen mûvelet segítségével is, akár a $\nor$, akár a $\nand$ mûveletet választjuk (lásd a 
\ref{gyak711-4}.~gyakorlatot). A lényeget tekintve már Peirce is eljutott ugyanehhez az eredményhez 1880 körül, de a témáról 
szóló dolgozata \cite[4.~kötet 12--20.~\S, 264.~oldal]{Peirce1933} haláláig publikálatlan maradt. A \ref{tablazat71-1}. 
táblázatban feltüntettük, hogy a NAND és NOR mûveleteket olykor $x\bool\vert y$ és $x\bool\downarrow y$ alakban írjuk; szokás 
ezeket a jeleket \idez{Sheffer-vonásnak}\index{Sheffer-vonás = Sheffer's stroke} és \idez{Peirce-nyílnak}\index{Peirce-nyil = Peirce'sarrow} 
is nevezni. Manapság legjobb nem használni Sheffer függõleges vonalát a NAND jelölésére, mert az $x\bool\vert y$ jelöli a 
bitenkénti $x\vee y$ mûveletet a \CEE/-hez hasonló programozási nyelvekben.

A \ref{tablazat71-1}.~táblázatban kettõ kivételével már minden függvényt megvizsgáltunk. A kimaradt kettõ az $x\leqv y$ és 
az $x\xor y$, azaz az \idez{ekvivalencia} és a \idez{kizáró vagy}\index{kizáró vagy = exclusive-or}. Ezekkel kapcsolatosak az
\begin{equation}
x\leqv y =\bar x\xor y = x\xor\bar y = 1\xor x\xor y\koz,\label{keplet711-3}
\end{equation}
\begin{equation}
x\xor y =\bar x\leqv y=x\leqv\bar y=0\leqv x\leqv y\label{keplet711-4}
\end{equation}
azonosságok. Mindkét mûvelet asszociatív\index{asszociatív = associative} (lásd a \ref{gyak711-6}. gyakorlatot). Az 
ítéletlogikában az ekvivalencia fogalma fontosabb az épp ellentétes jelentésû  kizáró vagy fogalmánál; amikor azonban 
teljes gépi szavakon bitenként végrehajtandó mûveletekre gondolunk, a \ref{pont713}. pontban látni fogjuk, hogy a helyzet 
éppen fordított: egy tipikus programban a kizáró vagy hasznosabbnak bizonyul az ekvivalenciánál. Annak fõ oka, hogy az 
$x\xor y$-nak jelentõs alkalmazási területei vannak még egyetlen bit esetében is, az a tény, hogy 
\begin{equation}
x\oplus y\;=\;(x+y)\mod 2\koz. \label{keplet711-5}
\end{equation}
Így tehát kételemû testben\index{test = field} (lásd a 4.6. alfejezetben) az $x\oplus y$ és az $x\wedge y$ az összeadást 
és a szorzást jelentik, és $x\oplus y$ nyilván \idez{tisztán} matematikai tulajdonságokkal is bír.

\medskip
\noindent \textbf{Alapvetõ azonosságok.}
Most vessünk egy pillantást az alapvetõ $\wedge$\koz, $\vee$\koz, $\oplus$ és $\bar{\kern.4em}$ mûveletek közötti 
kapcsolatokra; a többi mûvelet ugyanis könnyen kifejezhetõ ennek a négynek a segítségével. A $\wedge$, $\vee$ és 
$\oplus$ mûveletek asszociatívak\index{asszociatív = associative} és kommutatívak\index{kommutatív = commutative}. 
A disztributivitás (\ref{keplet711-1}) és (\ref{keplet711-2}) törvényein\index{disztributivitás törvény = distributive law} 
túl még az
\begin{equation}
(x\oplus y)\wedge z\;=\;(x\wedge z)\oplus(y\wedge z)\label{keplet711-6}
\end{equation}
disztributivitás, továbbá az 
\begin{equation}
(x\wedge y)\vee x\;=\;(x\vee y)\wedge x\;=\;x\label{keplet711-7}
\end{equation}
\textit{elnyelési törvények}\index{elnyelési törvény = absorption law} is érvényesek. A legegyszerûbb, de leghasznosabb 
azonosságok egyike az
\begin{equation}
x\oplus x\;=\;0\koz,\label{keplet711-8}
\end{equation}
mivel maga után vonja többek között azt, hogy
\begin{equation}
(x\oplus y)\oplus x\;=\;y\koz \mbox{ és }
  (x\oplus y)\oplus y\;=\;x\koz,\label{keplet711-9}
\end{equation}
ha felhasználjuk azt a nyilvánvaló tényt, hogy $x\oplus 0=x$. Úgy is fogalmazhatunk, hogy ha ismerjük $x\oplus y$-t, 
továbbá $x$ és $y$ közül az egyiket, akkor a másikat könnyû meghatározni. És ne feledkezzünk el az egyszerû 
\textit{komplementálás törvényérõl}\index{komplementálás törvénye = complementation law} sem:
\begin{equation}
\bar x\;=\;x\oplus1\koz.\label{keplet711-10}
\end{equation}

Egy további fontos azonosságpárt \textit{De Morgan-törvényeknek}\index{De Morgan-törvény = De Morgan's law} nevezünk 
Augustus De Morgan\angolnevindex{De Morgan, Augustus (1806--1871)} után. Õ mondta, hogy: 
\idez{Egy aggregátum ellentettje megegyezik az aggregáltak ellentettjeinek kompozíciójával; egy kompozíció ellentettje pedig 
a komponáltak ellentettjeinek aggregátumával. Tehát $(A,B)$-nek és $AB$-nek $ab$ és $(a,b)$ alakú az ellentettje 
\cite{DeMorgan1858}.} Modernebb jelölésekkel ezek épp azok a törvények, melyeket a \ref{tablazat71-1}.~táblázatbeli 
NAND és NOR mûveletekkel kapcsolatban az igazságtáblából\index{igazságtábla = truth table} olyan magától értetõdõen 
nyertünk, nevezetesen hogy
\begin{equation}
\overline{x\wedge y}\;=\;\bar x\vee\bar y\koz, \label{keplet711-11}
\end{equation}
\begin{equation}
\overline{x\vee y}\;=\;\bar x\wedge\bar y\koz. \label{keplet711-12}
\end{equation}
Egyébként Jevons\angolnevindex{Jevons, William Stanley (1835--1882)} ismerte a (\ref{keplet711-12}) azonosságot, 
de nem ismerte (\ref{keplet711-11})-et: következetesen $\bar AB+\bar BA+\bar A\bar B$\koz -t írt $\bar A+\bar B$ helyett $AB$ komplemensére. Mégsem De Morgan volt az elsõ angol, aki az említett törvényeket feltárta. Két  skolasztikus filozófus, Ockham\angolnevindex{William of Ockham (= Guilelmus ab Occam, kb. 1285--1348)} \cite{Ockham1323} és Burley\angolnevindex{Burley, Walter (kb. 1275--1345)} \cite{Burley1330} 14.~század eleji írásaiban mindkét törvény megtalálható.

A De Morgan-törvényeket és néhány további azonosságot alkalmazva a $\wedge$\koz, $\vee$ és $\oplus$ mûveletek közül bármelyiket 
ki lehet fejezni a másik kettõt felhasználva:
\begin{equation}
x\wedge y =\overline{\bar x\vee\bar y\vphantom h}=x\oplus y\oplus(x\vee y)\koz,\label{keplet711-13}
\end{equation}
\begin{equation}
x\vee y =\overline{\bar x\wedge\bar y\vphantom h}=x\oplus y\oplus(x\wedge y)\koz,\label{keplet711-14}
\end{equation}
\begin{equation}
x\oplus y =(x\vee y)\wedge\overline{x\wedge y}=(x\wedge\bar y)\vee (\bar x\wedge y)\koz.\label{keplet711-15}
\end{equation}
A \ref{pont712}. pont \ref{gyak712-77}. gyakorlata szerint az $x_1\oplus x_2\oplus\cdots\oplus x_n$ kiszámításához, ha csak 
a $\wedge$, $\vee$ és a $\;\bar{}\;$  mûveleteket lehet használni, legalább $4(n-1)$ lépés szükséges; így ez a három mûvelet 
nem igazán jó helyettesítõje $\oplus$-nak.

\medskip
\noindent \textbf{$n$ változós függvények.}
Egy az $x$, $y$ és $z$ Boole-változóktól függõ, azaz háromváltozós $f(x,y,z)$ Boole-függvényt az $f(0,0,0)f(0,0,1)\ldots f(1,1,1)$ 
8 bites igazságtáblával adhatunk meg; és általában is, minden $n$-változós $f(x_1,\ldots,x_n)$ 
Boole-függvényhez\index{nváltozós@$n$-változós Boole-függvény = $n$-ary Boolean function} tartozik egy $2^n$ bites 
igazságtábla\index{igazságtábla = truth table}, mely rendre felsorolja az $f(0,\ldots,0,0)$,\; $f(0,\ldots,0,1)$,\; 
$f(0,\ldots,1,0)$, \dots, $f(1,\ldots,1,1)$ függvényértékeket.

Ezeknek a függvényeknek a számára nem szükséges saját neveket és jelöléseket kitalálni, hiszen ki lehet fejezni õket a 
már megismert kétváltozós függvényekkel. Mint ahogy 
Zsegalkin\angolnevindex{Zsegalkin (= G\'egalkine), Iván Ivanovics (1869--1947, {\rus Zhegalkin, Ivan Ivanovich})} 
\cite{Zhegalkin1928} észrevette, ha $n>0$, alkalmasan választott $g$ és $h$ függvények mellett
\begin{equation}
f(x_1,\ldots,x_n)\;=\;g(x_1,\ldots,x_{n-1})\;\oplus\;h(x_1,\ldots,x_{n-1}) \wedge x_n\koz, \label{keplet711-16}
\end{equation}
ahol 
\begin{equation}
\begin{split}
g(x_1,\ldots,x_{n-1})&=f(x_1,\ldots,x_{n-1},0)\koz,\\
h(x_1,\ldots,x_{n-1})&=f(x_1,\ldots,x_{n-1},0)\oplus
                        f(x_1,\ldots,x_{n-1},1)\koz.\label{keplet711-17}
\end{split}                        
\end{equation}
(A $\wedge$ mûvelet végrehajtása megállapodás szerint megelõzi a $\oplus$ mûveletet, így (\ref{keplet711-16}) jobb oldalán 
nem kell zárójelek közé tenni a $h(x_1,\ldots,x_{n-1})\wedge x_n$ részkifejezést.) Ha ezt az eljárást $g$-vel és $h$-val 
rekurzívan addig ismételjük, amíg 0-változós függvényeket nem kapunk, akkor egy olyan kifejezést nyerünk, amelyben csak 
$\oplus$ és $\wedge$ mûveletek és egy $2^n$ konstansból álló sorozat szerepel. Ráadásul ezeket a konstansokat általában tovább 
lehet egyszerûsíteni, mert
\begin{equation}
x\wedge 0=0\qquad\hbox{és}\qquad x\wedge 1=x\oplus 0=x\koz.\label{keplet711-18}
\end{equation}
Az asszociativitás és a disztributivitás törvényeinek alkalmazása után ott kötünk ki, hogy csak a 0 konstansra van szükségünk, 
ha $f(x_1,\ldots,x_n)$ azonosan 0, és csak az 1 konstansra, ha $f(0,\ldots,0)=1$.

Például
\begin{equation*}
\begin{split}
f(x,y,z)
&=\left(\left(1\oplus0\wedge x\right)\oplus\left(0\oplus 1\wedge x \right)\wedge y\right)\oplus 
\left(\left(0\oplus 1\wedge x\right)\oplus \left(1\oplus 1\wedge x\right)\wedge y\right)\wedge z\\
&=\left(1\oplus x\wedge y\right)\;\oplus\;\left(x\oplus y\oplus x\wedge y\right)\wedge z\\
&=1\;\oplus \;x\wedge y \;\oplus \;x\wedge z\;\oplus\;y\wedge z\;\oplus\; x\wedge y\wedge z\koz.
\end{split}
\end{equation*}
És látjuk, hogy az (\ref{keplet711-5}) szabály miatt simán az 
\begin{equation}
f(x,y,z)\;=\;(1+xy+xz+yz+xyz)\mod2\label{keplet711-19}
\end{equation}
polinommal fejezzük be a munkát, hiszen $x\wedge y=xy$. Vegyük észre, hogy ez a polinom lineáris minden változójában 
(foka $\le\!1$). Hasonló számítással általában is megmutatható, hogy minden $f(x_1,\ldots,x_n)$ Boole-függvénynek egyetlen 
ilyen reprezentációja van; ezt 
\textit{multilineáris reprezentációnak}\inddef{multilineáris reprezentáció = multilinear representation} nevezzük. 
A multilineáris reprezentáció az $1$, $x_1$, $x_2$, $x_1x_2,$ $x_3$, $x_1x_3$, $x_2x_3$, $x_1x_2x_3$, \dots,~$x_1x_2\ldots x_n$, 
$2^n$ darab különbözõ lehetséges kifejezés közül nullának, egynek vagy többnek a modulo 2 összege.

Boole\angolnevindex{Boole, George (1815--1864)} másképpen bontotta fel a Boole-függvényeket. Ez a felbontás a gyakorlatban 
felmerülõ függvények esetében gyakran egyszerûbb. (\ref{keplet711-16}) helyett lényegében az
\begin{equation}
f(x_1,\ldots,x_n)\;=\;\bigl(g(x_1,\ldots,x_{n-1})\wedge\bar x_n\bigr)\,\vee\,
\bigl(h(x_1,\ldots,x_{n-1})\wedge x_n\bigr)\label{keplet711-20}
\end{equation}
összefüggést használta és ezt a \idez{kifejtés törvényének}\index{kifejtés törvénye = law of development} nevezte, 
melyben most egyszerûen a
\begin{equation}
\begin{split}
g(x_1,\ldots,x_{n-1})&=f(x_1,\ldots,x_{n-1},0)\koz,\\
 h(x_1,\ldots,x_{n-1})&=f(x_1,\ldots,x_{n-1},1)\label{keplet711-21}
\end{split}
\end{equation}
egyenlõségeket használjuk (\ref{keplet711-17}) helyett. Boole eljárását újra meg újra megismételve, felhasználva az 
(\ref{keplet711-1}) disztributivitási szabályt és kiküszöbölve a konstansokat, nulla, egy vagy több 
\textit{minterm}\index{minterm = minterm} diszjunkcióját nyerjük, ahol minden egyes minterm egy olyan
konjunkció, mint az $x_1\wedge\nobreak \bar x_2\wedge\nobreak \bar x_3\wedge x_4\wedge x_5$, amelyben jelen van 
minden változó vagy a változó komplemense. Vegyük észre, hogy egy teljes elemi konjunkció\index{teljes elemi konjunkció,  
\textit{lásd} minterm = complete elementary conjunction, \see minterm} (röviden: minterm) egy olyan Boole-függvény, 
ami pontosan egy pontban igaz.

Például vizsgáljuk meg az 
\begin{equation}
1100\,1001\,0000\,1111\label{keplet711-22}
\end{equation}
igazságtáblával\index{igazságtábla = truth table} adott, többé-kevésbé véletlen $f(w,x,y,z)$ függvényt. Ha ezt a függvényt 
kifejtjük Boole (\ref{keplet711-20}) törvényét ismételten alkalmazva, nyolc -- az igazságtábla minden 1 értékéhez egy -- 
minterm diszjunkcióját kapjuk: 
\begin{equation}
\begin{split}
f(w,x,y,z)&= (\bar{w}\wedge \bar{x}\wedge \bar{y}\wedge \bar{z})\vee(\bar{w}\wedge \bar{x}\wedge \bar{y}\wedge 
z)\vee(\bar{w}\wedge x\wedge \bar{y}\wedge \bar{z})\vee(\bar{w}\wedge x\wedge y\wedge z)\\
&\vee(w\wedge x\wedge \bar{y}\wedge \bar{z})\vee(w\wedge x\wedge \bar{y}\wedge z)\vee(w\wedge x\wedge y\wedge 
\bar{z})\vee(w\wedge x\wedge y\wedge z)\koz.\label{keplet711-23}
\end{split}
\end{equation}
defined $\sum_{k=1}^0a_k=0$ and $\prod_{k=1}^0a_k=1$ in Section 1.2.3.\tighten

Szokás mintermek diszjunkcióját \textit{teljes diszjunktív normálformának}\index{teljes diszjunktív normálforma = full disjunctive
normal form} is nevezni. Minden Boole-függvényt ki lehet fejezni ilyen módon, és az eredmény egyértelmû, eltekintve természetesen 
a mintermek sorrendjétõl. \emph{Kukacoskodás:} Speciális eset, amikor $f(x_1,\ldots,x_n)$ azonosan nulla. A 0-ra tag nélküli 
üres diszjunkcióként, az 1-re pedig hasonlóan, üres konjunkcióként is tekinthetünk ugyanazon okok miatt, mint ami miatt 
a $\sum_{k=1}^0a_k=0$ és a $\prod_{k=1}^0a_k=1$ definíciókat az 1.2.3. pontban megadtuk.

Peirce \cite{Peirce1880} észrevette, hogy minden Boole-függvénynek van 
\textit{teljes konjunktív normálformája}\index{teljes konjunktív normálforma = full conjunctive normal form} is, ami az 
$\bar x_1\vee x_2 \vee\bar x_3\vee\bar x_4\vee x_5$ formulához hasonló teljes elemi diszjunkciót 
(röviden minklózok)\index{minklóz = minclause}\index{teljes elemi diszjunkció, \textit{lásd} minklóz = 
full elementary disjunction, \see minclose} konjunkciója. Egy minklóz csak egyetlen pontban 0; így egy ilyen konjunkció 
minden egyes minklóza egy olyan helyrõl ad számot, ahol az igazságtábla 0. Például a (\ref{keplet711-22})-ben és 
(\ref{keplet711-23})-ban megadott függvényünk teljes konjunktív normálformája
\begin{equation}
\begin{split}
f(w,x,y,z)&= (w\vee x\vee \bar{y}\vee z)\wedge(w\vee x\vee \bar{y}\vee \bar{z})\wedge(w\vee \bar{x}\vee y\vee 
\bar{z})\wedge(w\vee \bar{x}\vee \bar{y}\vee z)\\
&\wedge(\bar{w}\vee x\vee y\vee z)\wedge(\bar{w}\vee x\vee y\vee \bar{z})\wedge(\bar{w}\vee x\vee 
\bar{y}\vee z)\wedge(\bar{w}\vee x\vee \bar{y}\vee \bar{z})\koz.\label{keplet711-24}
\end{split}
\end{equation}

Azonban az sem meglepõ, hogy gyakran nem feltétlenül teljes mintermeket vagy minklózokat tartalmazó diszjunkciókkal és 
konjunkciókkal szeretnénk dolgozni. Ezért a következõ terminológiát vezette be Bernays\angolnevindex{Bernays, Paul Issak 
(1888--1977)} \cite{Bernays1918} munkájában: \textit{diszjunktív normálformának}\index{diszjunktív normálforma = disjunctive 
normal form} vagy \idez{DNF}-nek\index{DNF = DNF} szoktuk nevezni konjunkciók diszjunkcióját, azaz egy olyan  
\begin{equation}
\bigvee_{j=1}^m\bigwedge_{k=1}^{s_j}u_{jk}\;=\;
(u_{11}\wedge\cdots\wedge u_{1s_1})\vee\cdots\vee
(u_{m1}\wedge\cdots\wedge u_{ms_m})\label{keplet711-25}
\end{equation}
alakú kifejezést, ahol $u_{jk}$ \textit{literál}\index{literál = literal}, azaz egy $x_i$ változó vagy ennek komplemense. 
Hasonlóan pedig \textit{konjunktív normálformának}\index{konjunktív normálforma =  conjunctive normal form} vagy röviden 
\idez{KNF}-nek\index{KNF = CNF} nevezzük literálok diszjunkcióinak konjunkcióját, azaz egy
\begin{equation}
\bigwedge_{j=1}^m\bigvee_{k=1}^{s_j}u_{jk}\;=\;
(u_{11}\vee\cdots\vee u_{1s_1})\wedge\cdots\wedge
(u_{m1}\vee\cdots\vee u_{ms_m})\label{keplet711-26}
\end{equation}
alakú kifejezést. 

A mai számítógépek lapkáiba beépített rengeteg áramkört 
\idez{programozható logikai tömbökbõl}\index{programozható logikai mátrix = programmable logic array} 
(PLA-kból)\index{PLA = PLA} állítják össze. Ezek -- esetleg komplementált -- bemenõ jelek ÉS-einek VAGY-jai. 
Másképpen fogalmazva egy PLA tulajdonképpen egy vagy több diszjunktív normálformát számít ki. Az ilyen építõelemek 
gyorsak, általános célúak, és aránylag olcsók. Valójában már az 1950-es évek óta kiemelkedõ szerepet játszanak a 
DNF-ek az elektrotechnikában, azóta, amióta a kapcsoló áramköröket megvalósították az olyan többé-kevésbé régimódi készülékekkel, 
mint a jelfogók és a vákuumcsövek. Az emberek régóta próbálják megtalálni a Boole-függvények különbözõ osztályai számára
a legegyszerûbb DNF-eket, és arra számíthatunk, hogy továbbra is fontos marad a diszjunktív normálformák vizsgálata, 
hiszen a technológia is folyamatosan fejlõdik.

Egy DNF tagjait gyakran \textit{implikánsnak}\index{implikáns = implicant} hívjuk, mivel egy diszjunkció bármelyik tagjának 
igazsága maga után vonja (implikálja) az egész formula igazságát. Egy olyan formuláról, mint például az 
$$f(x,y,z)\;=\;(x\wedge\bar y\wedge z)\vee(y\wedge z)\vee(\bar x\wedge y\wedge\bar z)\koz,$$ 
tudjuk, hogy $f$ igaz, amikor $x\wedge\bar y\wedge z$ igaz, azaz amikor $(x,y,z)=\allowbreak(1,0,1)$. Vegyük észre ugyanakkor, 
hogy ebben a példában a rövidebb $x\wedge z$ tag szintén $f$ implikánsa, még ha konkrétan nincs is leírva, hiszen az 
$y\wedge z$ második tag gondoskodik arról, hogy a függvény $y$ értékétõl függetlenül igaz legyen valahányszor $x=z=1$. 
Az $\bar x\wedge y$ hasonlóan implikánsa függvényünknek, így az egyszerûbb 
\begin{equation}
f(x,y,z)\;=\;(x\wedge z)\vee(y\wedge z)\vee(\bar x\wedge y)\label{keplet711-27}
\end{equation}
formulával is dolgozhatunk. Ezen a ponton már nincs több lehetséges törlés az implikánsokban, mivel sem $x$, sem $y$, sem $z$, 
sem $\bar x$ nem elég erõs feltétel ahhoz, hogy $f$ igazságát maga után vonja.

Egy olyan implikánst, amelyiket nem lehet tovább bontani valamelyik literáljának eltávolításával anélkül, hogy túlságosan 
gyengévé ne tegyük, \textit{prímimplikánsnak}\index{prímimplikáns = prime implicant} nevezzük, követve 
Quine\angolnevindex{Quine, Willard Van Orman (1908--2000)} \cite{Quine1952}-beli terminológiáját.

Talán legkönnyebben úgy lehet megérteni ezeket az alapvetõ fogalmakat, ha leegyszerûsítjük a jelölést és szemléletesebb nézõpontot 
választunk. $f(x_1,\ldots,x_n)$ helyett egyszerûen \idez{$f(x)$}-et írhatunk, és $x$-re mint egy $n$ hosszúságú $x_1\ldots x_n$ 
vektorra\index{vektor = vector} vagy bináris füzérre\index{bináris füzér = binary string} tekinthetünk. Például a 
(\ref{keplet711-22}) függvény a
\begin{equation}
\{0000,0001,0100,0111,1100,1101,1110,1111\}\label{keplet711-28}
\end{equation}
halmazbeli sorozatokon igaz, és úgy gondolhatunk ezekre a sorozatokra, mint egy $2\times 2\times 2\times 2$-es 4-dimenziós 
hiperkocka\index{hiperkocka = hypercube} nyolc csúcspontjára. A (\ref{keplet711-28})-beli nyolc pont megfelel azoknak a 
minterm implikánsoknak, amelyek a (\ref{keplet711-23}) teljes diszjunktív normálformában konkrétan megjelennek; bár ezeknek az 
implikánsoknak valójában egyike sem prím. Például (\ref{keplet711-28}) elsõ két pontja a $000{\ast}$, az utolsó négy pontja 
az $11{\ast}{\ast}$ részkockát\index{részkocka = subcube} alkotja, amennyiben csillag karaktereket használunk a dzsóker 
jelölésére, ahogy a 6.5. alfejezetben tettük, amikor az adatbázis-lekérdezéseket tárgyaltuk. Így $\bar w\wedge\bar x\wedge\bar y$ 
és $w\wedge x$ is $f$ implikánsai. Hasonlóan azt is észrevehetjük, hogy a $0{\ast}00$ részkocka a (\ref{keplet711-28})-beli 
nyolc pont közül kettõt fed le és a $\bar w\wedge\bar y\wedge\bar z$ implikánst eredményezi.

Általában ilyen módon minden prímimplikáns megfelel egy olyan \textit{maximális} részkockának, amelyik az $f$-et igazzá tevõ 
pontok halmazán belül marad. (Egy részkocka abban az értelemben maximális, hogy nincs nagyobb olyan, ugyanezzel a tulajdonsággal 
rendelkezõ részkocka, amely õt tartalmazza; nem tudjuk kicserélni semelyik konkrét bitjét csillag karakterre. 
Egy maximális részkocka\index{maximális részkocka = maximal subcube} maximális számú csillag 
karaktert\index{csillag karakter = asterisk} tartalmaz, ennélfogva minimális számú rögzített koordinátát a neki megfelelõ 
implikánsban.) A (\ref{keplet711-28})-beli nyolc pont maximális részkockái
\begin{equation}
000\ast ,\; 0\ast 00,\; \ast 100,\; \ast 111,\; 11\ast\ast\koz,\label{keplet711-29}
\end{equation}
tehát a (\ref{keplet711-23})-beli $f(w,x,y,z)$ függvény prímimplikánsai
\begin{equation}
(\bar w\wedge\bar x\wedge\bar y)\vee
 (\bar w\wedge\bar y\wedge\bar z)\vee
 (x\wedge\bar y\wedge\bar z)\vee
 (x\wedge y\wedge z)\vee(w\wedge x)\koz.\label{keplet711-30}
\end{equation}
Egy Boole-függvény \textit{diszjunktív prímformája}\index{diszjunktív prímforma = disjunctive prime form} az összes 
prímimplikánsának a diszjunkciója. A \ref{gyak711-30}.~gyakorlat egy olyan algoritmust tartalmaz, amely megkeresi az 
összes prímimplikánsát az olyan pontok listájával megadott függvénynek, ahol a függvény igaz. 

A \textit{prímklózt}\index{prímklóz = prime clause} is hasonló módon definiálhatjuk: ez egy olyan $f$ által implikált klóz, 
amelynek nincs ugyanezzel a tulajdonsággal rendelkezõ részklóza. $f$ \textit{konjunktív 
prímformája}\index{konjunktív prímforma = conjunctive prime form} pedig az összes prímklózának a konjunkciója. 
(A \ref{gyak711-19}. gyakorlatban példát adunk erre.)

Egyszerû esetekben egy függvény legrövidebb lehetséges diszjunktív normálformája a diszjunktív prímformája. De gyakran 
tudunk jobbat is csinálni, mivel az összes szükséges pontot képesek lehetünk csak néhány maximális részkockával lefedni. 
Például (\ref{keplet711-27})-ben az $(y\wedge z)$ prímimplikáns felesleges. A (\ref{keplet711-30}) kifejezésben pedig 
nem szükséges egyszerre $(\bar w\wedge\bar y\wedge\bar z)$ és $(x\wedge\bar y\wedge\bar z)$; a többi tag megléte esetén 
az egyik is elegendõ.  

A 7.9.~alfejezetben látni fogjuk, hogy a legjobb diszjunktív normálforma keresésének feladata sajnos NP-teljes, ezért 
általában elég nehéz. Elég kis problémákra sok hasznos gyorsítást dolgoztak ki, ezeket részletesen kifejti 
McCluskey\angolnevindex{McCluskey, Edward Joseph, Jr.} \cite{McCluskey1965} könyve. Újabb gondolatokért lásd 
Fi\v{s}er\angolnevindex{Fi\v{s}er, Petr} és Hlavi\v{c}ka\angolnevindex{Hlavi\v{c}ka, Jan} \cite{Fiser2003} dolgozatát.

Van egy fontos speciális eset, amikor a legrövidebb DNF könnyen meghatározható. Egy Boole-függvényt 
\textit{monotonnak}\index{monoton = monotone} vagy másképp \textit{pozitívnak}\index{pozitív = positive} nevezünk, 
ha értéke nem fog változni 1-rõl 0-ra, amikor változói közül bármelyik is 0-ról 1-re vált. Más szavakkal $f$ akkor és 
csak akkor monoton, ha $f(x)\le f(y)$, amennyiben $x\subseteq y$. Az $y=y_1\ldots y_n$ bitfüzér az $x=x_1\ldots x_n$ 
bitfüzért pontosan akkor tartalmazza vagy lesz vele egyenlõ, ha $x_j\le y_j$ minden $j$-re. Ezzel ekvivalens feltétel 
(lásd a \ref{gyak711-21}.~gyakorlatot), hogy az $f$ függvény vagy konstans, vagy ki lehet fejezni csupán a $\wedge$ és 
$\vee$ mûveletek segítségével, komplemensképzés nélkül.

\medskip
\noindent \textbf{Q tétel.} \textsl{Egy monoton Boole-függvény legrövidebb diszjunktív normálformája a diszjunktív prímformája.}

\medskip
\noindent\textit{Bizonyítás.} [Quine, \cite{Quine1953}] Legyen $f(x_1,\ldots,x_n)$ monoton és legyen 
$u_1\wedge\cdots\wedge u_s$ egyike a prímimplikánsainak. Ekkor nem lehet mondjuk $u_1=\bar x_i$, mert egyébként a monotonitás 
miatt a rövidebb $u_2\wedge\cdots\wedge u_s$ szintén implikáns lenne. Tehát egyetlen prímimplikáns sem tartalmaz 
komplementált változót.

Most ha $u_1\gets\cdots\gets u_s\gets 1$, és minden más változó értéke 0, az $f$ értéke 1 lesz, de $f$ összes többi 
prímimplikánsa eltûnik. Mivel egy legrövidebb DNF minden implikánsa nyilván prím, így
az $u_1\wedge\cdots\wedge u_s$-nek benne kell lennie minden legrövidebb DNF-ben.
\quad\slug

\medskip
\noindent\textbf{Q következmény.} \textsl{Egy diszjunktív normálforma akkor és csak akkor lesz monoton Boole-függvény 
diszjunktív prímformája, ha nincs egyetlen komplementált változó sem benne, és egyetlen implikánsa sincs benne másikban.}\quad\slug

\medskip
\noindent \textbf{Kielégíthetõség.} Egy Boole-függvényt \textit{kielégíthetõnek}\inddef{kielégíthetõ függvény = satisfiable function|(} 
nevezünk, ha nem azonosan nulla, azaz ha van legalább egy implikánsa. A számítástudomány legismertebb megoldatlan problémája 
hatékony módszert találni arra, hogy eldöntsük, vajon egy adott Boole-függvény kielégíthetõ-e, vagy épp kielégíthetetlen. 
Pontosabban azt kérdezzük: van-e olyan algoritmus, ami megkap egy $N$ hosszúságú Boole-formulát és ellenõrzi ennek 
kielégíthetõségét mindig legfeljebb $N^{O(1)}$ lépés végrehajtása után megadva a helyes választ?


Amikor errõl a problémáról elõször hall az ember, kísértésbe eshet, hogy visszakérdezzen: \idez{Hogyhogy?
A számítástudománnyal foglalkozók még komolyan nem találták ki, hogyan oldjanak meg egy ilyen egyszerû feladatot?}

Nos, ha azt gondolja valaki, hogy a kielégíthetõség ellenõrzése egyszerû, kérjük, mondja el nekünk módszerét. Egyetértünk abban, 
hogy a probléma nem mindig nehéz. Ha például a formulánk csak 30 Boole-változót tartalmaz,  $2^{30}$ -- kb. milliárdnyi -- 
esetet a nyers erõ módszerével próbálgatva valóban elintézhetõ dolog. De rengeteg, a gyakorlatban elõforduló - es meg megoldasra 
váró - problémát lehet mondjuk 100 változós Boole-függvényként formalizálni, hiszen a matematikai logika igen hathatós eszközöket 
biztosit fogalmaink leírására. Ezeknek a problémáknak a megoldásai azok az $x=x_1\ldots x_{100}$ vektorok, melyekre $f(x)=1$. 
Úgyhogy csodálatos eredmény lenne a kielégíthetõségi probléma valóban hatékony megoldása.

A kielégíthetõség ellenõrzése a következõ értelmezés mellett nem kíván nagy ötletet:
ha az $f(x_1,\ldots,x_n)$ függvényt találomra úgy választjuk, hogy mind a $2^n$ igazságtábla egyformán valószínû, 
akkor $f$ majdnem biztosan kielégíthetõ, és (átlagban véve) kevesebb, mint 2 próbálkozás után találhatunk olyan $x$-et, 
melyre $f(x)=1$. Hasonlóan, mint érmedobáláskor, míg fejet nem kapunk; ritkán kell sokáig várni. A turpisság természetesen az, 
hogy a gyakorlatban elõforduló problémák igazságtáblái nem véletlenek.\index{véletlen Boole-függvény = random Boolean function}

Rendben van tehát, fogadjuk el, hogy a kielégíthetõség ellenõrzése általában nehéz feladatnak tûnik. Valójában a 
kielégíthetõségi probléma még akkor is nehéznek bizonyul, ha megpróbáljuk azzal a megszorítással egyszerûbbé tenni, hogy a 
vizsgált Boole-függvény legyen \idez{3KNF formula}\index{háromKNF@3KNF = 3CNF}, azaz olyan konjunktív normálforma, amelynek 
minden klózában csak \textit{három} literál van:
\begin{equation}
f(x_1,\ldots,x_n)=(t_1\vee u_1\vee v_1)\wedge
                    (t_2\vee u_2\vee v_2)\wedge \cdots \wedge
                    (t_m\vee u_m\vee v_m)\koz.
\label{keplet711-31}
\end{equation}
Itt minden $t_j$, $u_j$ és $v_j$ valamely $k$-ra vagy $x_k$, vagy $\bar x_k$. 3KNF formulák kielégíthetõségének eldöntési 
problémáját \idez{3SAT}-nak\index{háromSAT@3SAT = 3SAT} nevezzük. A \ref{gyak711-39}. gyakorlat megvilágítja, hogy ez 
valójában miért nem könnyebb, mint általában egy kielégíthetõségi probléma.

Sok példát fogunk meg látni komoly fejtörést okozó 3SAT problémára -- különösen a 7.9. alfejezetben, ahol a kielégíthetõség 
ellenõrzését részletesen tárgyaljuk majd. A helyzet kissé mégis furcsa, hisz a formulának meglehetõsen hosszúnak 
kell lennie ahhoz, hogy szükséges legyen a kielégíthetõségérõl komolyabban elgondolkodni.
Például a legrövidebb kielégíthetetlen 3KNF formula az $(x\vee x\vee x)\wedge(\bar x\vee\bar x\vee\bar x)$; bár nyilván ezt 
nem kihívás észrevenni. Nem kerülünk mély vízbe, csak ha valamelyik klóz három literálja, mondjuk a $t_j$, $u_j$, $v_j$, 
három különbözõ változóhoz kötõdik. Ebben az esetben minden klóz a lehetõségek közül pontosan 1/8 részt kizár, mert $(t_j,u_j,v_j)$ 
hét különbözõ kiértékelése õt igazzá teszi. Következésképpen minden ilyen, legfeljebb hét klózzal rendelkezõ 3KNF formula 
automatikusan kielégíthetõ, és változóinak véletlenszerûen értéket adva $\ge 1-7/8=1/8$ valószínûséggel leszünk sikeresek.

Tehát az érdeklõdésre számot tartó legrövidebb 3KNF formula legalább nyolc klózt tartalmaz. Valóban, van a 8 klózzal rendelkezõ 
formulák között egy érdekes, ami a 6.5. alfejezetben vizsgált Rivest-féle\angolnevindex{Rivest, Ronald Lewis} 
asszociatív blokkrendszeren\index{asszociatív blokkrendszer = associative block design} alapul:
\begin{equation}
\begin{split}
\left(x_2\vee x_3\vee \bar{x}_4\right)\wedge \left(x_1\vee x_3\vee x_4\right)\wedge\left(\bar{x}_1\vee x_2\vee x_4\right)\wedge\left(\bar{x}_1\vee \bar{x}_2\vee x_3\right) \\
\wedge \left(\bar{x}_2\vee \bar{x}_3\vee x_4\right)\wedge\left(\bar{x}_1\vee \bar{x}_3\vee \bar{x}_4\right)\wedge\left(x_1\vee \bar{x}_2\vee \bar{x}_4\right)\wedge\left(x_1\vee x_2\vee \bar{x}_3\right)\koz.\label{keplet711-32}
\end{split}
\end{equation}
Ezen nyolc klóz közül bármely hét kielégíthetõ, mégpedig pontosan kétféleképp, és közben három változó értékét határozza meg. 
Például az elsõ hét miatt $x_1x_2x_3=001$. Ugyanakkor egyidejûleg mind a nyolcat nem lehet kielégíteni.

\medskip
\noindent \textbf{Egyszerû speciális esetek.}
A Boole-függvényeknek meghatározták két olyan fontos osztályát, amelyeken a kielégíthetõségi probléma elég könnyen megoldható. 
Akkor adódnak ezek a speciális esetek, amikor az ellenõrzés alatt álló konjunktív normálforma vagy kizárólag 
\idez{Horn-klózokból}, vagy csak \idez{Krom-klózokból} áll. Egy \textit{Horn-klóz}\index{Horn-klóz = Horn clause} literálok 
VAGY-ja, amelyben minden vagy majdnem minden literál komplementált -- legfeljebb egy literál változó és nem pedig 
változó komplemense. Egy \textit{Krom-klóz}\index{Krom-klóz = Krom clause} pedig pontosan két literál VAGY-ja. Így például 
$$\bar x\vee\bar y,\qquad w\vee\bar y\vee\bar z,\qquad
\bar u\vee\bar v\vee\bar w\vee\bar x\vee\bar y\vee z\quad\hbox{és}\quad x$$
Horn-klózok;
$$x\vee x,\qquad \bar x\vee\bar x,\qquad\bar x\vee\bar y,\qquad
x\vee\bar y,\qquad \bar x\vee y\quad\hbox{és}\quad x\vee y$$
pedig Krom-klózok, közülük csak az utolsó nem Horn-klóz is egyben. (Itt az elsõ példa azért jó, mert $x\vee x=x$.) Vegyük észre, 
hogy egy Horn-klóz akárhány literált tartalmazhat, ha viszont Krom-klózokkal dolgozunk, 2SAT\index{kettõSAT@2SAT = 2SAT} 
problémával van dolgunk. Mindkét esetben látni fogjuk, hogy a kielégíthetõséget lineáris idõben\index{lineáris idõ = linear time}, 
azaz $N$ hosszúságú formula megadásakor csupán $O(N)$ elemi lépés végrehajtásával el lehet dönteni. 

Elõször vizsgáljuk meg a Horn-klózokat. Miért is olyan könnyû kezelni ezeket? A fõ oka az, hogy egy az 
$\bar u\vee\bar v\vee\bar w\vee\bar x\vee\bar y\vee z$\koz-hez hasonló klóz átalakítható 
$\lnot( u\wedge v\wedge w\wedge x\wedge y)\vee z$ formára, ami pedig nem más, mint
$$u\wedge v\wedge w\wedge x\wedge y\;\Rightarrow\;z.\koz$$
Tehát ha $u$, $v$, $w$, $x$ és $y$ mind igazak, akkor $z$-nek is igaznak kell lennie. Emiatt a paraméteres Horn-klózokat 
választották a Prolognak\index{Prolog = Prolog} nevezett programozási nyelv hátterében mûködõ alapvetõ mechanizmusnak. 
Ráadásul könnyen és pontosan jellemezhetõ, hogy mely Boole-függvényeket lehet Horn-klózokkal kifejezni:

\medskip
\noindent \textbf{H tétel.} \textsl{Az $f(x_1,\ldots,x_n)$ Boole-függvény pontosan akkor fejezhetõ ki Horn-klózok 
konjunkciójaként, ha $x_j$ és $y_j$ minden Boole-értékére teljesül, hogy
\begin{equation}
\hbox{\rm ha}f(x_1,\ldots,x_n)=f(y_1,\ldots,y_n)=1\quad\hbox{\rm akkor}\quad
f(x_1\wedge y_1,\ldots,x_n\wedge y_n)=1\koz.\label{keplet711-33}
\end{equation}
}

\medskip
\noindent\textit{Bizonyítás.} [Horn\angolnevindex{Horn, Alfred (1918--2001)} \cite[7.~lemma]{Horn1951}] Ha  
$x_0\vee\bar x_1\vee\cdots\vee\bar x_k=1$ és
             $y_0\vee\bar y_1\vee\cdots\vee\bar y_k=1$, akkor            
\begin{equation*}
\begin{split}
(x_0\wedge y_0)&\vee\overline{x_1\wedge y_1}\vee\cdots\vee
                    \overline{x_k\wedge y_k} \\
&=(x_0\vee\bar x_1\vee\bar y_1\vee\cdots\vee\bar x_k\vee\bar y_k)\wedge
  (y_0\vee\bar x_1\vee\bar y_1\vee\cdots\vee\bar x_k\vee\bar y_k) \\
&\ge(x_0\vee\bar x_1\vee\cdots\vee\bar x_k)\wedge
    (y_0\vee\bar y_1\vee\cdots\vee\bar y_k)\;=\;1\koz.
\end{split}
\end{equation*}
Hasonló (csak egyszerûbb) megfontolást alkalmazunk, amikor a negálatlan $x_0$ és $y_0$ literálok hiányoznak. Tehát 
Horn-klózok konjunkcióira (\ref{keplet711-33}) teljesül.

Fordítva, a (\ref{keplet711-33}) feltétel teljesülése esetén $f$ minden prímklóza Horn-klóz (lásd a \ref{gyak711-44}.~gyakorlatot).   
\quad\slug

\medskip
Ezek után mondjuk azt, hogy a \textit{Horn-függvény}\index{Horn-függvény = Horn function} egy, a (\ref{keplet711-33}) feltételt 
teljesítõ Boole-függvény, és nevezzük \textit{definitnek},\index{definit Horn-függvény = definite Horn function} ha teljesít 
még egy újabb, $f(1,\ldots,1)=1$ feltételt is. Könnyû belátni, hogy Horn-klózok konjunkciója akkor és csak akkor lesz definit, 
ha minden klóznak van (\textit{pontosan}) egy negálatlan literálja, mivel csak egy $\bar x\vee\bar y$-hoz hasonló, 
teljesen negatív klóz lesz hamis, ha minden változó igaz. A definit Horn-függvényekkel némileg egyszerûbb dolgozni, mint általában 
a Horn-függvényekkel, mert nyilván mindig kielégíthetõk. A H tétel szerint ezeknek van egy legkisebb olyan $x$ vektoruk, 
melyre $f(x)=1$, mégpedig azoknak a vektoroknak a bitenkénti ÉS-je, melyek az összes klózt kielégítik. 
Egy definit Horn-függvény \textit{magja}\index{mag = core} azoknak az $x_j$ változóknak a halmaza, melyek igazak ebben 
az $x$ minimális vektorban. Vegyük észre, hogy a magbeli változók igazak, valahányszor $f$ igaz, és így lényegében egyszerûsíthetünk 
velük.

Sokféleképpen kerülhetnek definit Horn-függvények elénk, például játékok elemzésekor (lásd az \ref{gyak711-51}. és \ref{gyak711-52}. 
gyakorlatokat). Egy másik szép példa a fordítóprogramok készítése\index{fordítóprogramok készítése = compiler technology} 
során merül fel. Vizsgáljuk meg egy programozási nyelv\index{programozási nyelv = programming language} algebrai kifejezését 
generáló következõ tipikus (bár leegyszerûsített) nyelvtant\index{nyelvtan = grammar}:
\begin{equation}
\begin{split}
& \left\langle \texttt{kifejezés}\right\rangle\rightarrow \left\langle \texttt{tag}\right\rangle\mid \left\langle 
\texttt{kifejezés}\right\rangle\,+\,\left\langle \texttt{tag}\right\rangle\mid
     \left\langle \texttt{kifejezés}\right\rangle\,-\,\left\langle \texttt{tag}\right\rangle\\
& \left\langle \texttt{tag}\right\rangle\rightarrow \left\langle \texttt{tényezõ}\right\rangle\mid -\left\langle 
\texttt{tényezõ}\right\rangle\mid \left\langle \texttt{tag}\right\rangle\,*\, \left\langle \texttt{tényezõ}\right\rangle\mid
     \left\langle \texttt{tag}\right\rangle\,/\, \left\langle \texttt{tényezõ}\right\rangle\\
&\left\langle \texttt{tényezõ}\right\rangle\rightarrow \left\langle \texttt{változó}\right\rangle\mid \left\langle 
\texttt{konstans}\right\rangle\mid (\left\langle \texttt{kifejezés}\right\rangle)\\
&\left\langle \texttt{változó}\right\rangle\rightarrow \left\langle \texttt{betû}\right\rangle\mid \left\langle 
\texttt{változó}\right\rangle \left\langle \texttt{betû}\right\rangle\mid \left\langle \texttt{változó}\right\rangle \left\langle 
\texttt{számjegy}\right\rangle\\
&\left\langle \texttt{betû}\right\rangle\rightarrow \texttt{a}\mid \texttt{b}\mid \texttt{c}\\
&\left\langle \texttt{konstans}\right\rangle\rightarrow \left\langle \texttt{számjegy}\right\rangle\mid \left\langle 
\texttt{konstans}\right\rangle \left\langle \texttt{számjegy}\right\rangle\\
&\left\langle \texttt{számjegy}\right\rangle\rightarrow 0\mid 1\label{keplet711-34}
\end{split}
\end{equation}
Például az $\texttt{a/(-b0-10)+cc*cc}$ füzér megfelel a $\left\langle \texttt{kifejezés}\right\rangle $ 
szintaxisának és minden nyelvtani szabályt legalább egyszer felhasznál.

Tegyük fel, hogy azt akarjuk tudni, hogy mely karakterpárok jelenhetnek meg egymás mellett egy ilyen kifejezésben. Erre definit 
Horn-klózok adnak választ, hiszen a következõképpen tudjuk megfogalmazni a problémát: jelöljenek \texttt{Xx}, \texttt{xX} 
és \texttt{xy} Boole-állításokat, ahol \texttt{X} rendre a $\left\langle \texttt{kifejezés}\right\rangle, \left\langle 
\texttt{tag}\right\rangle,\dots,\left\langle \texttt{számjegy}\right\rangle$ helyett írt $\{\texttt{E,T,F,V,L,C,D}\}$ 
szimbólumok közül valamelyik, és ahol \texttt{x} és \texttt{y} a $\{\texttt{+,-,*,/,(,),a,b,c,0,1}\}$ halmaz elemei. 
Az \texttt{Xx} állítás azt jelenti, hogy  \idez{végzõdhet \texttt{X}  az \texttt{x} karakterrel}, és hasonlóan \texttt{xX} 
azt jelenti, hogy \idez{kezdõdhet \texttt{X} az \texttt{x} karakterrel}, \texttt{xy} pedig azt jelenti, hogy 
\idez{követheti közvetlenül az \texttt{x} karaktert az \texttt{y} karakter valamely kifejezésben}. 
($7\times 11+11\times 7+11\times 11=275$ állítás van összesen.) Ezután írhatjuk, hogy
\begin{equation}
\begin{tabular}{rc}
\texttt{xT}& $\Rightarrow$  \texttt{xE} \\
\texttt{Tx}& $\Rightarrow$  \texttt{Ex} \\
\texttt{Ex}& $\Rightarrow$ \texttt{x+} \\
\texttt{xT}& $\Rightarrow$ \texttt{+x} \\
\texttt{Ex}& $\Rightarrow$ \texttt{x-} \\
\texttt{xT}& $\Rightarrow$ \texttt{-x} \\
\texttt{xF}& $\Rightarrow$ \texttt{xT} \\
\texttt{Fx}& $\Rightarrow$ \texttt{Tx}
\end{tabular}
\begin{tabular}{rc}
& $\Rightarrow$ \texttt{-T}\\
\hspace{3mm}\texttt{xF}& $\Rightarrow$ \texttt{-x} \\
\texttt{Tx}& $\Rightarrow$ \texttt{x*} \\
\texttt{xF}& $\Rightarrow$ \texttt{*x} \\
\texttt{Tx}& $\Rightarrow$ \texttt{x/} \\
\texttt{xF}& $\Rightarrow$ \texttt{/x} \\
\texttt{xV}& $\Rightarrow$ \texttt{xF} \\
\texttt{Vx}& $\Rightarrow$ \texttt{Fx}
\end{tabular}
\begin{tabular}{rc}
\hspace{3mm}\texttt{xC}& $\Rightarrow$ \texttt{xF}\\
\texttt{Cx}& $\Rightarrow$ \texttt{Fx}\\
& $\Rightarrow$ \texttt{(F}\\
\texttt{xE}& $\Rightarrow$ \texttt{(x}\\
\texttt{Ex}& $\Rightarrow$ \texttt{x)}\\
& $\Rightarrow$ \texttt{F)}\\
\texttt{xL}& $\Rightarrow$ \texttt{xV}\\
\texttt{Lx}& $\Rightarrow$ \texttt{Vx}
\end{tabular}
\begin{tabular}{rc}
\hspace{3mm} \texttt{Vx}$\wedge$ \texttt{yL}& $\Rightarrow$ \texttt{xy}\\
\texttt{Vx}$\wedge$ \texttt{yD}& $\Rightarrow$ \texttt{xy}\\
\texttt{Dx}& $\Rightarrow$ \texttt{Vx}\\
& $\Rightarrow$ \texttt{aL}\\
& $\Rightarrow$ \texttt{La}\\
& $\Rightarrow$ \texttt{bL}\\
& $\Rightarrow$ \texttt{Lb}\\
& $\Rightarrow$ \texttt{cL}
\end{tabular}
\begin{tabular}{rc}
\hspace{3mm}& $\Rightarrow$ \texttt{Lc}\\
\texttt{xD}& $\Rightarrow$ \texttt{xC}\\
\texttt{Dx}& $\Rightarrow$ \texttt{Cx}\\
\texttt{Cx}$\wedge$ \texttt{yD}& $\Rightarrow$ \texttt{xy}\\
& $\Rightarrow$ \texttt{0D}\\
& $\Rightarrow$ \texttt{D0}\\
& $\Rightarrow$ \texttt{1D}\\
& $\Rightarrow$ \texttt{D1}
\end{tabular}
\label{keplet711-35}
\end{equation}
\noindent ahol \texttt{x} és \texttt{y} végigfut a tizenegy $\{\texttt{+},\ldots,\texttt{1}\}$ terminális szimbólumon. 
Ez a sematikus felsorolás összesen $24\times 11+3\times 11\times 11+13\times 1=640$ definit Horn-klózt ad, amit formálisan 
úgy írhatunk le, hogy
$$\bigl(\overline{\texttt{+T}}\vee\texttt{+E}\bigr)\wedge
  \bigl(\overline{\texttt{-T}}\vee\texttt{-E}\bigr)\wedge\cdots\wedge
  \bigl(\overline{\texttt{V+}}\vee\overline{\texttt{0L}}\vee\texttt{+0}\bigr)\wedge
          \cdots\wedge\bigl(\texttt{D1}\bigr)$$
ha jobban szeretjük a Boole-algebra jelképes jelölésrendszeréét, mint (\ref{keplet711-35})ben elõforduló $\Rightarrow$-t.

Miért is csináltuk mindezt? Mert \textsl{ezen klózoknak a lényeges része, magja épp az ebben a speciális nyelvtanban igaz 
állítások halmaza}. Igazolhatjuk például, hogy \texttt{-E} igaz, ezért a \texttt{(-} szimbólumok elõfordulhatnak egymás után 
valamely kifejezésben; de a \texttt{++} és \texttt{*-} szimbólumpárok nem (lásd a \ref{gyak711-46}. gyakorlatot). 

Ráadásul különösebb nehézség nélkül elõ tudjuk állítani definit Horn-klózok tetszõlegesen adott halmazának a magját. Azokból az 
állításokból indulunk ki, amelyek a $\Rightarrow$ jobb oldalán egyedül állnak, miközben a bal oldal üres; a 
(\ref{keplet711-35})-beli állítások között tizenhárom ilyen van. Mihelyt ezeknek az állításoknak az igazságát rögzítjük, máris 
találhatunk néhány olyan klózt, melyeknek a bal oldala igaz. Ezután ezek jobb oldala szintén a maghoz tartozik, és így folytatjuk 
tovább. Az egész eljárás meglehetõsen hasonlít ahhoz, ahogy egy gát mögül a víz lezúdul, míg meg nem találja a saját medrét. 
Valóban, ha megfelelõ adatszerkezetet választunk, ez a sodró folyamat meglehetõsen gyors, csak $O(N+n)$ lépést kíván, ahol $N$ 
a klózok összhosszát jelöli, $n$ pedig a propozícionális változók számát. (Itt feltételeztük, hogy az összes klózban a fenti 
\texttt{x}-hez és \texttt{y}-hoz hasonló paramétereket konkrét terminális jelekre cseréltük, és nem rövidítettük meg.
A tételbizonyítás\index{tételbizonyítás = theorem proving} kifinomultabb technikái is igénybe vehetõk paraméteres klózokkal 
való munka esetén, de ezek kívül esnek a mostani vizsgálódásaink érdeklõdési körén.)

\medskip

\noindent\textbf{C algoritmus}\inddef{C algoritmus = Algorithm C} \textsl{(definit Horn-klózok magjának meghatározására)}.
Ítéletváltozók egy adott $P$ halmaza és egy olyan $C$ klózhalmaz esetén, melynek minden klóza
\begin{equation}
u_1\wedge\cdots\wedge u_k\;\Rightarrow\;v\hbox{ alakú, ahol $k\ge 0$
és $\{u_1,\ldots,u_k,v\}\subseteq P$}\koz,\label{keplet711-36}
\end{equation}
ez az algoritmus megkeresi az ítéletváltozók azon $Q \subseteq P$ halmazat, melyek szükségképpen mindannyiszor igazak, 
valahányszor a klózok mindegyike igaz.

A következõ adatszerkezeteket használjuk egy $c$ klózra, $p$ állításra és $h$ hipotézisre, ahol a 
\idez{hipotézis}\index{hipotézis = hypothesis} egy klóz bal oldalán elõforduló állítás:
\begin{equation*}
\begin{split}
&\mbox{\texttt{KONKLÚZIÓ($c$)}\; a $c$ klóz jobb oldalán szereplõ állítás};\\
&\mbox{\texttt{SZÁMLÁLÓ($c$)}\; $c$ még nem bizonyított hipotéziseinek száma};\\
&\mbox{\texttt{IGAZ($p$)}\; 1, ha $p$ igaz, egyébként 0};\\
&\mbox{\texttt{UTOLSÓ($p$)}\; a legutolsó hipotézis, amelyikben $p$ megjelenik};\\
&\mbox{\texttt{KLÓZ($h$)}\; az a klóz, amelyikben $h$ a bal oldalon megjelenik};\\
&\mbox{\texttt{ELÕZÕ($h$)}\; a $h$ állítást megelõzõ hipotézis}.
\end{split}
\end{equation*}
Fenntartunk továbbá még egy $S_0$, $S_1$, \dots, $S_{s-1}$ vermet az igaznak gondolt, de még nem bizonyított 
állítások kezelésére.\index{verem adatszerkezet = stack structure}.

\algindentset{\hskip\parindent C1}

\algstep C1. (Kezdõértékek beállítása.) Minden egyes $p$ állításra legyen $\texttt{UTOLSÓ($p$)}\gets\Lambda$ és \linebreak $
\texttt{IGAZ($p$)}\gets 0$. Legyen továbbá $s\gets 0$, és a verem pedig üres. Aztán minden (\ref{keplet711-36}) alakú $c$ klóz 
esetén legyen $\texttt{KONKLÚZIÓ($c$)}\gets v$ és $\texttt{SZÁMLÁLÓ($c$})\gets k$. Ha $k=0$ és $\texttt{IGAZ($v$)}=0$, legyen 
$\texttt{IGAZ($v$)}\gets1$, $S_s\gets v$ és $s\gets s+1$. Egyébként ha $1\le j\le k$, hozzuk létre a $h$ hipotézis rekordot 
és legyenek $\texttt{KLÓZ($h$})\gets c$, $\texttt{ELÕZÕ($h$)}\gets \texttt{UTOLSÓ($u_j$})$, $\texttt{UTOLSÓ($u_j$)}\gets h$.

\algstep C2. (A $p$ állítás elõkészítése.) Ha $s=0$, fejezzük be az algoritmust. A kívánt mag most az összes olyan állítást 
tartalmazza, melyre az \texttt{IGAZ} attribútum értéke 1. Egyébként pedig legyenek $s\gets s-1$, $p\gets S_s$ és 
$h\gets \texttt{UTOLSÓ($p$)}$.

\algstep C3. (Kellenek a hipotézisek?) Ha $h=\Lambda$, menjünk vissza \textbf{C2}-re.

\algstep C4. ($h$ jóváhagyása.) Legyenek $c\gets \texttt{KLÓZ($h$)}$ és $\texttt{SZÁMLÁLÓ($c$)}\gets \texttt{SZÁMLÁLÓ($c$)}-1$. 
Ha \texttt{SZÁMLÁLÓ($c$)} új értéke még nem nulla, a \textbf{C6} lépéssel folytassuk.

\algstep C5. (\texttt{KONKLÚZIÓ($c$)} levezetése.) Legyen $p\gets \texttt{KONKLÚZIÓ($c$)}$. Ha $\texttt{IGAZ($p$)}=0$, legyenek 
$\texttt{IGAZ($p$)}\gets1$, $S_s\gets p$, $s\gets s+1$.

\algstep C6. (Ciklus $h$-ra.) Legyen $h\gets \texttt{ELÕZÕ($h$)}$, és menjünk vissza \textbf{C3}-ra.\quad\slug

\smallskip\noindent Vegyük észre, hogy az adatszerkezetek milyen zökkenõmentesen dolgoznak össze a számolás során, kikerülve a 
folytatáshoz szükséges bármiféle helykeresést. A C algoritmus sok szempontból hasonlít a 2.2.3.T  (topologikus 
rendezés)\index{topologikus rendezés = topological sorting} algoritmushoz, ami elsõ példánk volt hajdanán a 2. fejezetben a 
multilista adatszerkezetre\index{multilista adatszerkezet = multilinked data structure}; csakugyan a 2.2.3.T algoritmust úgy is 
tekinthetjük, mint a C algoritmus azon speciális esetét, amikor minden állítás pontosan egy klóz jobb oldalán jelenik meg. 
(Lásd a \ref{gyak711-47}. gyakorlatot.)

A \ref{gyak711-48}.~gyakorlat bemutatja, hogy a C algoritmus egy kis módosítása a Horn-klózok kielégíthetõségi 
problémáját\index{Horn-klózok kielégíthetõségi problémája = satisfiability problem for Horn clauses} általánosan is megoldja. 
A téma további tárgyalását Dowling\angolnevindex{Dowling, William Francis} és Gallier\angolnevindex{Gallier, Jean Henri} 
\cite{Dowling1984} munkájában találhatjuk meg.

Most térjünk vissza a Krom-függvényekre\index{Krom-függvény = Krom function} és a 2SAT problémára. Újból van egy lineáris 
idejû algoritmusunk; de talán leginkább akkor értékelhetjük, ha elõször megint pillantást vetünk egy leegyszerûsített gyakorlati 
alkalmazásra. Tegyük fel, hogy hét komikus megállapodott abban, hogy egy háromnapos 
fesztivál\index{humorfesztivál = comedy festival|(} során mindegyikõjük öt hotel közül kettõben egyestés fellépést tart, de más 
irányú kötelezettségei miatt mindenki csak két nap ér rá:
\begin{equation}
\begin{split}
&\hbox{Tomlinnak az Aladdin és a Caesars hotelekben kellene dolgoznia az 1.~és a 2.~napon.}\\
&\hbox{Unwinnak a Bellagio és az Excalibur hotelekben kellene dolgoznia az 1.~és 2.~napon.}\\
&\hbox{Vegasnak a Desert és az Excalibur hotelekben kellene dolgoznia a 2.~és 3.~napon.}\\
&\hbox{Williamsnek az Aladdin és a Desert hotelekben kellene dolgoznia az 1.~és 3.~napon.}\\
&\hbox{Xienek a Caesars és az Excalibur hotelekben kellene dolgoznia az 1.~és 3.~napon.}\\
&\hbox{Yankovicnak a Bellagio és a Desert hotelekben kellene dolgoznia a 2.~és 3.~napon.}\\
&\hbox{Zanynek a Bellagio és a Caesars hotelekben kellene dolgoznia az 1.~és 2.~napon.}
\end{split}
\label{keplet711-37}
\end{equation}
Be lehet õket osztani úgy, hogy minden adott napon minden adott hotelben pontosan 1 komikus lepjen 
fel?\angolnevindex{Tomlin, Mary Jean (= Lily)}\angolnevindex{Williams, Robin McLaurim}

A probléma megoldásához bevezethetünk hét Boole-változót: $\{t,u,v,\allowbreak w,\allowbreak x,y,z\}$, ahol $t$ (például) azt 
jelenti, hogy Tomlin az Aladdin hotelben játszik az 1.~napon és a Caesars hotelben a 2.~napon, míg $\bar t$ azt jelenti, 
a szóban forgó hotelekben épp fordított sorrendben vannak elõjegyezve ezek a napok. Azután azokat a megszorításokat adjuk meg, 
amelyek biztosítják, hogy két komikus ugyanabban a hotelben ugyanarra a napra ne legyen beosztva:
\begin{equation}
\begin{tabular}{lc}
$\neg (t\wedge w)$ & [A1]\\
$\neg (u\wedge z)$ & [B1]\\
$\neg (\bar u\wedge y)$ & [B2]\\
$\neg (\bar u\wedge \bar z)$ &[B2]
\end{tabular}
\hspace{0.5cm}
\begin{tabular}{lc}
$\neg (y\wedge \bar z)$ & [B2]\\
$\neg (\bar t\wedge x)$ & [C1]\\
$\neg (\bar t\wedge \bar z)$ &[C1]\\
$\neg (x\wedge \bar z)$ &[C1]
\end{tabular}
\hspace{0.5cm}
\begin{tabular}{lc}
$\neg (t\wedge z)$ &[C2]\\
$\neg (v\wedge \bar y)$ &[D2]\\
$\neg (\bar v\wedge w)$ &[D3]\\
$\neg (\bar v\wedge y)$ &[D3]
\end{tabular}
\hspace{0.5cm}
\begin{tabular}{lc}
$\neg (w\wedge y)$ &[D3]\\
$\neg (\bar u\wedge \bar x)$ &[E1]\\
$\neg (u\wedge \bar v)$ &[E2]\\
$\neg (v\wedge x)$ &[E3]
\end{tabular}
\label{keplet711-38}
\end{equation}
Ezeknek a megszorításoknak mindegyike nyilvánvalóan Krom-klóz; ki kell tehát elégítenünk a
\begin{equation}
\begin{split}
(\bar t\vee \bar w)\wedge
(\bar u\vee \bar z)\wedge
(u\vee \bar y)\wedge
(u\vee z)\wedge
(\bar y\vee z)\wedge
(t\vee \bar x)\wedge
(t\vee z)\wedge
(\bar x\vee z)
\\
\wedge
(\bar t\vee \bar z)\wedge
(\bar v\vee y)\wedge
(v\vee \bar w)\wedge
(v\vee \bar y)\wedge
(\bar w\vee \bar y)\wedge
(u\vee x)\wedge
(\bar u\vee v)\wedge
(\bar v\vee \bar x)
\end{split}
\label{keplet711-39}
\end{equation}
formulát. Ráadásul a Krom-klózokat (a Horn-klózokhoz hasonlóan) implikációkként is fel lehet írni:
\begin{equation}
\begin{split}
t\Rightarrow \bar w,\;\;
u\Rightarrow \bar z,\;\;
\bar u\Rightarrow \bar y,\;\;
\bar u\Rightarrow z,\;\;
y\Rightarrow z,\;\;
\bar t\Rightarrow \bar x,\;\;
\bar t\Rightarrow z,\;\;
x\Rightarrow z\koz,
\\
t\Rightarrow \bar z,\;\;
v\Rightarrow y,\;\;
\bar v\Rightarrow \bar w,\;\;
\bar v\Rightarrow \bar y,\;\;
w\Rightarrow \bar y,\;\;
\bar u\Rightarrow x,\;\;
u\Rightarrow v,\;\;
v\Rightarrow \bar x\koz.
\end{split}
\label{keplet711-40}
\end{equation}
Minden ilyen implikációnak van egy másik, \idez{kontrapozíciós}\index{kontrapozíciós = contrapositive} formája:
\begin{equation}
\begin{split}
w\Rightarrow \bar t,\;\;
z\Rightarrow \bar u,\;\;
y\Rightarrow u,\;\;
\bar z\Rightarrow u,\;\;
\bar z\Rightarrow \bar y,\;\;
x\Rightarrow t,\;\;
\bar z\Rightarrow t,\;\;
\bar z\Rightarrow \bar x\koz,
\\
z\Rightarrow \bar t,\;\;
\bar y\Rightarrow \bar v,\;\;
w\Rightarrow v,\;\;
y\Rightarrow v,\;\;
y\Rightarrow \bar w,\;\;
\bar x\Rightarrow u,\;\;
\bar v\Rightarrow \bar u,\;\;
x\Rightarrow \bar v\koz.
\end{split}
\label{keplet711-41}
\end{equation}
De hoppá -- ó jaj -- itt az ördögi kör:
\begin{equation}
u\Rightarrow \bar z\Rightarrow\bar y\Rightarrow \bar v\Rightarrow \bar u\Rightarrow z\Rightarrow \bar t\Rightarrow 
\bar x\Rightarrow u\koz.  
\label{keplet711-42}
\end{equation}
Ez a kör azt is kifejezi, hogy $u$ és $\bar u$ azonos értékû kell legyen, így nincs mód rá, hogy a (\ref{keplet711-37})-beli 
összes kikötést összeegyeztessük. A fesztivál szervezõinek újra kell tárgyalniuk a megállapodást a $\{t,u,v,x,y,z\}$ 
komikusok közül legalább eggyel, ha megvalósítható ütemezést akarnak elérni. (Lásd az \ref{gyak711-53}. gyakorlatot.)

\epskepnagy{\figdir/ch7a.83}{A (\ref{keplet711-40}) és (\ref{keplet711-41})-beli sem $v$-t, sem $\bar v$-t nem tartalmazó 
implikációknak megfelelõ irányított gráf. Az erõs komponensekben a literálokhoz alkalmas értékeket hozzárendelve meg lehet
oldani a bináris ütemezési problémát, ami a 2SAT probléma egy speciális esete.\label{abra70-6}}{width=4cm}

A szervezõk például megpróbálhatják kihagyni az elképzelésbõl $v$-t. Ekkor a (\ref{keplet711-38})-beli tizenhat feltétel közül 
öt kiesne, és a (\ref{keplet711-40}) és (\ref{keplet711-41}) implikációkból csak 22 maradna a \ref{abra70-6}.~ábrán látható 
irányított gráfot eredményezve. Ez a gráf ugyan tartalmaz köröket, mint a $z\Rightarrow\bar u\Rightarrow x\Rightarrow z$
és a $t\Rightarrow\bar z\Rightarrow t$; de nincs olyan kör, amelyik egy változóval együtt a komplemensét is tartalmazza. 
Sõt még azt is láthatjuk a \ref{abra70-6}.~ábrán, hogy a $tuwxyz=110000$ értékek a (\ref{keplet711-39})-beli $v$-t vagy 
$\bar v$-t nem tartalmazó klózok mindegyikét kielégítik. Ezek az értékek olyan ütemezést adnak, mely a (\ref{keplet711-37})-beli 
hét eredeti kikötés közül hatot teljesít úgy, hogy az elsõ nap (Tomlin, Unwin, Zany, Williams, Xie) kezd rendre az 
(Aladdin, Bellagio, Caesars, Desert, Excalibur) szállodákban.

Általánosan is, ha adott egy $n$ Boole-változót tartalmazó és $m$ Krom-klózból álló 2SAT probléma, irányított gráffal ugyanígy 
tudjuk ábrázolni. Egy ilyen gráfban $2n$ csúcs -- minden lehetséges literálhoz egy -- van, ezek az 
$\{x_1,\bar x_1, \ldots, x_n,\bar x_n\}$ csúcsok; és $2m$ él, minden $u\vee v$ klózhoz kettõ: $\bar u\to v$ és $\bar v\to u$. 
Az $u$ és $v$ literálok akkor és csak akkor tartoznak ennek a gráfnak ugyanazon  
\textit{erõs komponenséhez}\index{erõs komponens = strong component}, ha $u$-ból $v$-be és $v$-bõl $u$-ba is vezet irányított 
út. Például a \ref{abra70-6}.~ábrán látható gráfban hat erõs komponens van pontozott vonallal bejelölve. Egy erõs komponens 
összes literáljának ugyanaz kell legyen a Boole-értéke a megfelelõ 2SAT problémához tartozó bármelyik megoldásban.

\medskip  
\noindent\textbf{K tétel.} \textsl{Egy klózonként két-két literált tartalmazó konjunktív normálforma akkor és csak akkor 
elégíthetõ ki, ha a hozzá tartozó irányított gráf egyetlen erõs komponense sem tartalmaz egyszerre egy változót és a 
komplemensét is.}

\medskip
\noindent\textit{Bizonyítás.} [Krom\angolnevindex{Krom, Melven Robert} \cite[2.2.~következmény]{Krom1967}] Ha van $x$-bõl 
$\bar x$-be és $\bar x$-bõl $x$-be vezetõ út is, a formula kétségtelenül kielégíthetetlen.

Most azonban tegyük fel, hogy nincsenek ilyen utak. Bármelyik véges irányított gráfnak van legalább egy olyan erõs komponense, 
vagyis \idez{forrása}\index{forrás = source}, amelybe egyetlen másik erõs komponensbeli csúcsból induló él sem fut be. 
Jelöljük ezt $S$-sel. Továbbá a gráfunk mindig antiszimmetrikus\index{antiszimmetria = antisymmetry} a következõ értelemben, ahogy a 
\ref{abra70-6}.~ábrán is illusztráltuk: $u\to v$ akkor és csak akkor, ha $\bar v\to\bar u$. Így az $S$-beli literálok 
komplemensei egy másik $\overline S\neq S$ erõs komponenst, azaz egy \idez{nyelõt}\index{nyelõ = sink} alakítanak ki, 
amelybõl más erõs komponensbe nincs kivezetõ él. Emiatt az $S$-beli literálokhoz 0 értéket, az $\overline S$-beliekhez pedig 
1 értéket rendelhetünk, azután távolítsuk el ezeket az irányított gráfból, majd ugyanígy folytassuk, 
míg minden literál értéket nem kap. Az eredményül kapott értékekre $u\le v$, ha a gráfban $u\to v$ él; emiatt ezek az értékek 
kielégítik $\bar u\vee v$\koz-t, amennyiben $\bar u\vee v$ a formula klóza.\quad\slug

\smallskip
Tarjan\angolnevindex{Tarjan, Robert Endre} \cite{Tarjan1972} egy algoritmusának köszönhetõen, mely lineáris idõben megtalálja 
az erõs komponenseket, a K tétel közvetlenül a 2SAT probléma hatékony megoldásához vezet. {Lásd még 
Knuth\angolnevindex{Knuth, Donald Ervin Knuth@\string\Knuth} \cite{Knuth1993} dolgozatát.} Tarjan\angolnevindex{Tarjan, Robert Endre} algoritmusát 
a \ref{pont741}.~pontban részletesen fogjuk tanulmányozni. Az \ref{gyak711-54}. gyakorlat pedig azt mutatja meg, hogy a K tétel 
feltétele könnyen ellenõrizhetõ, amikor az algoritmus egy új erõs komponenst tár fel. Továbbá az algoritmus elõször a \idez{nyelõt} 
ismeri fel; így a Tarjan-algoritmussal mellesleg meg tudjuk határozni a kielégíthetõséget megalapozó értékeket is úgy, hogy egy erõs 
komponens minden olyan literáljának, amely a komplemensét megelõzve fordul elõ, 1-es értéket választunk.
\index{kielégíthetõ függvény = satisfiable function|)}\index{humorfesztivál = comedy festival|)}

\medskip
\noindent \textbf{Mediánok.}\index{medián = median|(}
Az $x\vee y$ vagy az $x\xor y$ mûveletekhez hasonló kétváltozós Boole-mûveletekre összpontosítottunk eddig. Van azonban egy 
nevezetes, az $x$, $y$ és $z$ \textit{mediánjának}\inddef{medián = median} nevezett \textit{háromváltozós} mûvelet:
\begin{equation}
\langle xyz \rangle \;= (x\wedge y)\vee(y\wedge z)\vee(x\wedge z)\;=(x\vee y)\wedge(y\vee z)\wedge(x\vee z)\koz.
\label{keplet711-43}
\end{equation}
Alighanem $\langle xyz \rangle$ a legfontosabb háromváltozós mûvelet\index{háromváltozós mûvelet = ternary operation} a világon, 
mert olyan meghökkentõ tulajdonságai vannak, amelyeket folyton újból és újból felfedeznek. 

Elõször is könnyen beláthatjuk, hogy az $\langle xyz \rangle$ mûveletet megadó formula bármely három $x$, $y$ és $z$ 
Boole-érték közül a többször elõforduló értéket adja meg: $\langle 000 \rangle= \langle 001 \rangle =0$ és 
$\langle 011\rangle =\langle 111\rangle =1$. $\langle xyz\rangle$-t mégis \idez{mediánnak} (középsõnek) nevezzük 
\idez{majoritás}\index{majoritás = majority} (többség) helyett, mert ha $x$, $y$
és $z$ tetszõleges \textit{valós} számok és $\wedge$ és $\vee$ a $\min$ és a $\max$ mûveleteket jelölik, akkor
\begin{equation}
\langle xyz \rangle \;=y, \hbox{ ha } x\le y\le z\koz.
\label{keplet711-44}
\end{equation}

Másodszor pedig az alapvetõ $\wedge$ és $\vee$ kétváltozós mûveletek a medián speciális esetei:
\begin{equation}
x\wedge y\;=\;\langle x0y \rangle \hbox{ és }
  x\vee y\;=\; \langle x1y\rangle\koz.
\label{keplet711-45}
\end{equation}
Tehát így \textit{bármelyik} monoton\index{monoton = monotone} Boole-függvényt ki lehet fejezni kizárólag a háromváltozós 
medián mûvelet, továbbá a 0 és 1 konstansok segítségével. Valóban, ha egy csak a mediánt használó világban élnénk, 
megtehetnénk, hogy $\wedge$-vel jelöljük a hamis,\index{hamisság = falsehood} és $\vee$-vel az igaz\index{igazság = truth} 
logikai értéket; ekkor $x\wedge\nobreak y=\langle x{\wedge}y\rangle$ és $x\vee y=\langle x{\vee}y\rangle$ teljesen szabályos 
kifejezés lenne, sõt használhatnánk a $\langle {\wedge}xy\rangle$ és  $\langle{\vee}xy\rangle$ lengyel 
jelölést\index{lengyel jelölés = Polish notation} is, ha ez elõnyösebb lenne. Ugyanez az ötlet vonatkozik a kibõvített valós 
számokra a $\wedge$ és $\vee$ min-max interpretációja mellett, ha a $\wedge=-\infty$ és a $\vee=+\infty$ konstansokkal  
képezzük a mediánokat.

Egy $f(x_1,x_2,\ldots,x_n)$ Boole-függvényt \textit{önduálisnak} nevezünk, ha teljesül rá, hogy
\begin{equation}
\overline{f(x_1,x_2,\ldots,x_n)}\;=\;f(\bar x_1,\bar x_2,\ldots,\bar x_n)\koz.
\label{keplet711-46}
\end{equation}
Leírtuk már, hogy egy Boole-függvény akkor és csak akkor monoton, ha a $\wedge$ és $\vee$ mûveletekkel ki lehet fejezni; a 
(\ref{keplet711-11}) és (\ref{keplet711-12}) De Morgan-törvények szerint így egy monoton formula akkor és csak akkor önduális, 
ha a $\wedge$ és $\vee$ szimbólumokat fel lehet benne cserélni a formula jelentésének változása nélkül. Ezért a 
(\ref{keplet711-43})-ban definiált medián mûvelet monoton és önduális. Tulajdonképpen ez a legegyszerûbb ilyen tulajdonságú 
nemtrivális függvény, mivel a \ref{tablazat71-1}. táblázatban szereplõ bináris mûveletek egyike sem monoton és önduális 
egyszerre, kivéve a $\lproj$ és $\rproj$ projekciókat\index{projekció = projection}.

Ráadásul \textit{bármely}, konstans használata nélkül, csak a medián mûvelettel megadott kifejezés monoton és önduális. 
Például a $\langle w\langle xyz \rangle \langle w\langle uvw \rangle x\rangle \rangle$ függvény önduális, mert 
\begin{equation*}
\begin{split}
\overline{\langle w\langle xyz\rangle \langle w\langle uvw\rangle x\rangle \rangle}\;&=\;\langle \bar 
w\,\overline{\langle xyz\rangle}\,\overline{\langle w\langle uvw\rangle x\rangle} \rangle \\
&=\;\langle \bar w\langle \bar x\bar y\bar z\rangle \langle \bar w \overline{\langle uvw\rangle } \bar x\rangle \rangle \;=\;
\langle \bar w\langle \bar x\bar y\bar z\rangle \langle \bar w\langle \bar u\bar v\bar w\rangle \bar x\rangle \rangle \koz.
\end{split}
\end{equation*}
Emil Post\angolnevindex{Post, Emil Leon (1897--1954)}, miközben a Ph.D. értekezésén \cite{Post1920} dolgozott, bebizonyította, 
hogy a fordított irányú állítás is igaz:

\medskip
\noindent \textbf{P tétel.} \textsl{Minden $f(x_1,\ldots,x_n)$ monoton, önduális Boole-függvényt ki lehet fejezni csupán az 
$\langle xyz\rangle$ medián mûvelettel.}

\medskip
\noindent \textit{Bizonyítás.} \cite{Post1941} Vegyük észre elõször azt, hogy 
\begin{equation}
\begin{split}
\langle x_1 y\langle & x_2 y\ldots y\langle x_{s-1} y x_s\rangle \ldots \rangle\rangle \\
& = \left(\left(x_1\vee x_2\vee\ldots\vee x_{s-1}\vee x_s\right)\wedge y\right)\vee\left(x_1\wedge x_2\wedge\ldots\wedge 
x_{s-1}\wedge x_s\right)\koz.
\end{split}
\label{keplet711-47}
\end{equation}
Ezt az ismételt mediánozást leíró formulát $s$-re vonatkozó indukcióval könnyû bizonyítani.

Most tegyük fel, hogy $f(x_1,\ldots,x_n)$ monoton, önduális és a diszjunktív prímformája
$$f(x_1,\ldots,x_n)\;=\;t_1\vee\cdots\vee t_m,\qquad
          t_j=x_{j1}\wedge\cdots\wedge x_{js_j}\koz,$$
ahol egyetlen $t_j$ prímimplikáns\index{prímimplikáns = prime implicant} sincs valamelyik másikban (Q következmény). Bármelyik 
két prímimplikánsban legalább egy közös literálnak kell lennie. Ugyanis ha mondjuk $t_1=x\wedge y$ és $t_2=u\wedge v\wedge w$, akkor 
azokban az esetekben, amikor $x=y=1$ és $u=v=w=0$, valamint amikor $x=y=0$ és $u=v=w=1$, $f$ értéke 1, és ez az öndualitást 
cáfolja. Így ha valamelyik $t_j$ egyetlen $x$ változóból áll, akkor egyedüli prímimplikánsnak kell lennie -- ebben az esetben $f$ 
a triviális $f(x_1,\ldots,x_n)=x=\langle xxx\rangle$ függvény.

A $g_0$, $g_1$, \dots, $g_m$ függvényeket definiáljuk mediánokkal a következõképpen:
\begin{equation}
\begin{split}
g_0(x_1,\ldots,x_n)&=x_1\koz,\\
g_j(x_1,\ldots,x_n)&=h(x_{j1},\ldots,x_{js_j};g_{j-1}(x_1,\ldots,x_n))\koz,
\hbox{ ha $1\le j\le m$},
\end{split}
\label{keplet711-48}
\end{equation}
ahol $h(x_1,\ldots,x_s;y)$ a (\ref{keplet711-47}) felsõ sorában szereplõ függvényt jelöli. (\ref{keplet711-47}) és 
(\ref{keplet711-48}) felhasználásával $j$-re vonatkozó indukcióval be lehet bizonyítani, hogy $g_j(x_1,\ldots,x_n)=1$, 
valahányszor $t_1\vee\cdots\vee t_j=1$, mert amint láttuk, bármely két primimplikáns tartalmaz közös literált, ezért 
 $(x_{j1}\vee\cdots\vee x_{js_j})\wedge t_k=t_k$, ha $k<j$.

Végül $f(x_1,\ldots,x_n)$ megegyezik a $g_m(x_1,\ldots,x_n)$ függvénnyel, mert mindkettõ monoton és önduális, és megmutattuk, 
hogy $f(x_1,\ldots,x_n)\le g_m(x_1,\ldots,x_n)$ a $0$-k és $1$-esek minden kombinációjára. Ez az egyenlõtlenség elegendõ ahhoz, 
hogy megállapítsuk az egyenlõséget, hisz egy önduális függvény a $2^n$ lehetséges esetnek pontosan a felében 1.\quad\slug

\smallskip
A P tétel egyik következménye az, hogy öt elem mediánját\index{öt elem mediánja = median of five} ki tudjuk fejezni három elem 
mediánja segítségével, mert páratlan számú Boole-változó mediánja nyilván monoton és önduális Boole-függvény. 
Jelöljön $\langle x_1\ldots x_{2k-1}\rangle$ egy ilyen mediánt. Ekkor $\langle vwxyz\rangle$ diszjunktív prímformája
\begin{equation*}
\begin{split}
(v\wedge w\wedge x)\vee (v\wedge w\wedge y)\vee (v\wedge w\wedge z)\vee (v\wedge x\wedge y)\vee (v\wedge x\wedge z) \\
\vee (v\wedge y\wedge z)\vee (w\wedge x\wedge y)\vee (w\wedge x\wedge z)\vee (w\wedge y\wedge z)\vee (x\wedge y\wedge z)\koz,
\end{split}
\end{equation*}
így a P tétel bizonyításában szereplõ konstrukció úgy fejezi ki $\langle vwxyz\rangle$\koz-t mint egy nagy, 2046 darab 
háromváltozós medián mûveletet tartalmazó $g_{10}(v,w,x,y,z)$ formulát. Természetesen ez a kifejezés nem a lehetõ 
legrövidebb; valójában 
\begin{equation}
\langle vwxyz\rangle\;=\;\left\langle v\langle xyz\rangle\langle wx\langle wyz\rangle\rangle\right\rangle\koz.
\label{keplet711-49}
\end{equation}
{Lásd Miiller\angolnevindex{Miiller, Henry Sedwick} és Winder\angolnevindex{Winder, Robert Owen} \cite{Miiller1962} dolgozatát.} 

\medskip
\noindent \textbf{Medián algebrák és medián gráfok.}
Korábban már megjegyeztük, hogy az $\langle xyz\rangle$ háromváltozós mûvelet hasznos, ha $x$, $y$ és $z$ egy rendezett halmaznak, 
például a valós számok halmazának elemei, a $\wedge$ és $\vee$ jeleket pedig minimum-képzésként és maximumképzésként vesszük 
figyelembe. Valójában az $\langle xyz\rangle$ mûvelet sokkal általánosabb körülmények között is hasznos szerepet játszik. 
A \textit{medián algebra} egy olyan $M$ halmaz, melyen egy olyan $\langle xyz\rangle$ háromváltozós mûvelet van definiálva, 
mely $M$ elemeihez $M$ elemeit rendeli és teljesíti a következõ három axiómát:
\begin{align}
 & \langle xxy\rangle =x\quad\hbox{többségi (majoritás) törvény)}; \label{keplet711-50}\\
 & \langle xyz\rangle =\langle xzy\rangle =\langle yxz\rangle =\langle yzx\rangle =\langle zxy\rangle =\langle zyx\rangle \quad
   \!\hbox{(kommutativitás törvény)}; \label{keplet711-51}\\
 & \langle xw\langle ywz\rangle \rangle =\langle \langle xwy\rangle wz\rangle \quad\hbox{(asszociativitás törvény)}.  
 \label{keplet711-52}
\end{align}
Boole-algebrák esetében például az (\ref{keplet711-52}) asszociativitás törvény teljesül, ha $w=0$ és $w=1$, hiszen $\wedge$ és 
$\vee$ asszociatív. A \ref{gyak711-75}. és \ref{gyak711-76}.~gyakorlatokban bizonyítjuk, hogy ebbõl a három axiómából következik a 
mediánokra vonatkozó disztributivitás törvény\index{disztributivitás törvény = distributive law}, melynek egy rövid 
\begin{equation}
\left\langle\langle xyz\rangle uv\right\rangle\;=\;\left\langle x\langle yuv\rangle \langle zuv\rangle\right\rangle
\label{keplet711-53}
\end{equation}
és egy szimmetrikusabb hosszú 
\begin{equation}
\left\langle \langle xyz\rangle uv\right\rangle\;=\;\left\langle \langle xuv\rangle \langle yuv\rangle \langle zuv\rangle\right\rangle
\label{keplet711-54}
\end{equation}
alakja is van. Ennek a ténynek nem ismert egyszerû bizonyítása, de (\ref{keplet711-53}) és (\ref{keplet711-54}) egy 
speciális esetét, amikor  $y=u$ és $z=v$, legalább  ellenõrizhetjük: 
\begin{equation}
\left\langle \langle xyz\rangle yz\right\rangle\;=\;\langle xyz\rangle \koz,
\label{keplet711-55}
\end{equation}
mert mindkét oldal $\langle xy\langle zyz\rangle \rangle$. És valóban, az (\ref{keplet711-52}) asszociativitás törvény 
éppen (\ref{keplet711-53}) $y=u$ speciális esete. Továbbá (\ref{keplet711-55}) és (\ref{keplet711-52}) felhasználásával az 
$x=u$ esetet is ellenõrizhetjük:
$\left\langle \langle uyz\rangle uv\right\rangle
=\left\langle vu\langle yuz\rangle\right\rangle
=\left\langle \langle vuy\rangle uz\right\rangle
=\left\langle \langle yuv\rangle uz\right\rangle
=\left\langle \langle \langle yuv\rangle uv\rangle uz\right\rangle
=\left\langle \langle yuv\rangle u\langle vuz\rangle\right\rangle
=\left\langle u\langle yuv\rangle\langle zuv\rangle\right\rangle$.

Az $M$ medián algebrában egy $C\subseteq M$ halmaz \textit{ideál}\index{ideál = ideal}, amennyiben
\begin{equation}
\langle xyz\rangle\;\in\;C, \hbox{ valahányszor $x\in C$, $y\in C$ és $z\in M$\koz.}
\label{keplet711-56}
\end{equation}
Ha $u$ és $v$ $M$ elemei, az $[u\dts v]$ \textit{intervallumot}\index{intervallum = interval} a következõképpen definiálhatjuk:
\begin{equation}
[u\dts v]\;=\;\left\{\langle xuv\rangle \mid x\in M\right\} \koz.
\label{keplet711-57}
\end{equation}
Azt mondjuk, hogy \idez{$x$ az $u$ és $v$ között van}, ha $x \in [u\dts v]$. Ezeknek a definícióknak az értelmében $u$ és $v$ maguk is az $[u\dts v]$ intervallumhoz tartoznak.

\medskip
\noindent\textbf{M lemma.} \textsl{Minden $[u\dts v]$ intervallum ideál, és $x \in [u\dts v] \Longleftrightarrow x=\langle uxv\rangle$.}

\medskip
\noindent \textit{Bizonyítás.} Legyenek $\langle xuv\rangle$ és $\langle yuv\rangle$ az $[u\dts v]$ elemei. Ekkor (\ref{keplet711-51}) és (\ref{keplet711-53}) alapján minden $z\in M$-re
$$\left\langle \langle xuv\rangle\langle yuv\rangle z\right\rangle\;=\;\left\langle \langle xyz\rangle uv\right\rangle\;\in\;[u\dts v]\koz,$$
ezért $[u\dts v]$ ideál. Továbbá (\ref{keplet711-51}) és (\ref{keplet711-53}) miatt minden $\langle xuv\rangle \in [u\dts v]$ elemre $\langle xuv\rangle = \left\langle u\langle xuv\rangle v\right\rangle$. \quad\slug

\medskip
A mediánra vonatkozó törvények miatt az $[u\dts v]$ intervallumok kellemes tulajdonságokkal rendelkeznek:
\begin{align}
& v\in [u\dts u] \implies u=v\koz; \label{keplet711-58} \\
& x\in [u\dts v] \hbox{ és } y\in [u\dts x] \implies y\in [u\dts v]\koz; \label{keplet711-59} \\
& x\in [u\dts v] \hbox{ és } y\in [u\dts z] \hbox{ és } y\in [v\dts z] \implies y\in [x\dts z]\koz.\label{keplet711-60}
\end{align}
Ezzel ekvivalens megfogalmazásban: $[u\dts u]=\{u\}$; ha $x\in [u\dts v]$, akkor $[u\dts x]\subseteq[u\dts v]$;
és $x\in [u\dts v]$-bõl az is következik, hogy minden $z$-re $[u\dts z]\cap[v\dts z]\subseteq[x\dts z]$. (Lásd a \ref{gyak711-72}.~gyakorlatot.)

Most az $M$ csúcshalmazon definiáljunk a következõ élekkel egy gráfot:
\begin{equation}
u\adj v\quad\Longleftrightarrow\quad u\ne v, \hbox{ és  $\langle xuv\rangle \in\{u,v\}$
minden $x\in M$-re}.
\label{keplet711-61}
\end{equation}
Más szavakkal $u$ és $v$ akkor és csak akkor szomszédosak, ha az $[u\dts v]$ intervallum pontosan két pontot, az $u$-t és a 
$v$-t tartalmazza.

\medskip
\noindent \textbf{G tétel.} \textsl{Ha $M$ véges medián algebra, a (\ref{keplet711-61}) szerint definiált gráf összefüggõ. 
Továbbá az $x$ csúcs akkor és csak akkor tartozik az $[u\dts v]$ intervallumhoz, ha $x$ az $u$-ból $v$-be vezetõ legrövidebb 
úton fekszik.}

\medskip
\noindent \textit{Bizonyítás.} Ha $M$ nem összefüggõ, válasszuk $u$-t és $v$-t úgy, hogy ne vezessen út $u$-ból $v$-be, és az 
$[u\dts v]$ intervallum a lehetõ legkevesebb elemet tartalmazza. $x\in [u\dts v]$ különbözzön $u$-tól és $v$-tõl. 
Ekkor $\langle xuv\rangle =x\neq v$, így $v\notin[u\dts x]$; hasonlóan $u\notin[x\dts v]$. De (\ref{keplet711-59}) alapján 
$[u\dts x]$ és $[x\dts v]$ benne vannak $[u\dts v]$-ben. Így ezek szûkebb intervallumok, és út kell hogy vezessen $u$-ból 
$x$-be és $x$-bõl $v$-be. Ez ellentmondás. 

A tétel másik felét a \ref{gyak711-73}.~gyakorlatban bizonyítjuk.\quad\slug

\smallskip
Az intervallumokra vonatkozó definíciónkból $\langle xyz\rangle\in [x\dts y]\cap [x\dts z]\cap[y\dts z]$ következik, mert 
(\ref{keplet711-55}) szerint $\langle xyz\rangle =\left\langle \langle xyz\rangle xy\right\rangle =\left\langle \langle 
xyz\rangle xz\right\rangle =\left\langle \langle xyz\rangle yz\right\rangle$. A \ref{gyak711-74}. gyakorlatban pedig 
a fordított irányt igazoljuk: ha $w\in [x\dts y]\cap [x\dts z]\cap [y\dts z]$, akkor $w=\langle xyz\rangle$. Másképp 
fogalmazva \textsl{az $[x\dts y]\cap [x\dts z]\cap [y\dts z]$ metszet mindig pontosan egy pontot tartalmaz}, amennyiben  
$x$, $y$ és $z$ $M$ pontjai.

A \ref{abra70-7}. ábra ezt az elvet egy $4\times 4\times 4$-es kocka\index{kocka = cube} segítségével ábrázolja, ahol minden 
egyes $x$ pontot $(x_1,x_2,x_3)$ koordináták írnak le ($0\le x_1,x_2,x_3<4$). Ennek a kockának a csúcsai medián algebrát 
alkotnak, mert $\langle xyz\rangle =\left(\langle x_1y_1z_1\rangle ,\langle x_2y_2z_2\rangle ,\langle x_3y_3z_3\rangle \right)$; 
továbbá a \ref{abra70-7}. ábrán szereplõ gráf élei a (\ref{keplet711-61}) definíciónak megfelelõen azokat a csúcsokat kötik össze, 
melyek koordinátái megegyeznek egyetlen olyan koordináta kivételével, ahol a változás éppen $\pm1$. Három tipikus intervallum, 
az $[x\dts y]$, az $[x\dts z]$ és az $[y\dts z]$ intervallumok láthatók; az a három intervallum egyetlen közös pontja az 
$\langle xyz\rangle=(2,2,1)$ csúcs.

\begin{figure}[!t]
\epsfbox{\figdir/ch7a.80}\epsfbox{\figdir/ch7a.81}\epsfbox{\figdir/ch7a.82}
\caption{Az $x=(0,2,1)$, $y=(3,3,3)$ és $z=(2,0,0)$ csúcsok közötti intervallumok egy $4\times 4\times 4$-es 
kockában.\label{abra70-7}}
\end{figure}

Eddig medián algebrából kiindulva definiáltunk bizonyos tulajdonságokkal rendelkezõ gráfot. De kiindulhatunk egy ilyen 
tulajdonságokkal bíró gráfból is, és felhasználhatjuk a gráfot, hogy medián algebrát definiáljunk. Ha $u$ és $v$ egy 
\textit{tetszõleges} gráf csúcsai, definiáljuk az $[u\dts v]$ intervallumot\index{intervallum = interval} az $u$ és $v$ 
közötti legrövidebb utakon fekvõ pontok halmazával. Egy véges gráfot \textit{medián gráfnak}\inddef{medián gráf = median graph} 
nevezünk, ha pontosan egy csúcs van azon három intervallum $[x\dts y]\cap [x\dts z]\cap [y\dts z]$ metszetében, melyek 
három tetszõlegesen adott $x$, $y$ és $z$ csúcsot kötnek össze; ezt a csúcsot $\langle xyz\rangle$-vel jelöljük. 
A \ref{gyak711-75}.~gyakorlatban bizonyítjuk, hogy az így nyert háromváltozós mûvelet teljesíti a medián axiómákat.

Ennek a definíciónak az értelmében medián gráfnak bizonyul sok fontos gráf. Például egy szabad fáról\index{szabad fa = free tree} 
könnyen belátható, hogy medián gráf; egy másik egyszerû példa pedig az olyan gráf, mint az $n_1\times n_2\times\cdots\times n_m$ 
hipertégla\index{hipertégla = hyperrectangle}. Medián gráfok Descartes-szorzatai\index{Descartes-szorzat = Cartesian product} 
is teljesítik az elõírt feltételeket.

\smallskip
\noindent \textbf{Medián címkék.} Ha $u$ és $v$ egy medián algebra tetszõleges elemei, az $x\mapsto\langle xuv\rangle$ 
hozzárendeléssel megadott $f(x)$ függvény \textit{homomorfizmus}\index{homomorfizmus = homomorphism}; vagyis az 
(\ref{keplet711-54}) hosszú disztributivitás törvény\index{hosszú disztributivitási törvény = long distributive law} miatt 
teljesül, hogy
\begin{equation}
f\left(\langle xyz\rangle \right)\;=\;\left\langle f(x) f(y) f(z)\right\rangle \koz.
\label{keplet711-62}
\end{equation}
(\ref{keplet711-57}) szerint ez az $\langle xuv\rangle$ függvény egy adott $x$ pontot \idez{rávetít}\index{vetít = project} az $[u\dts v]$ intervallumra. És ez különösen érdekes abban az esetben, amikor $u\adj v$ a megfelelõ gráf éle, mert ekkor $f(x)$ kétértékû, lényegében egy Boole-függvény.

Például vizsgáljuk az alább látható nyolc csúccsal és hét éllel rendelkezõ, tipikus szabad fát. Minden egyes $x$ csúcsot 
rávetíthetünk az egyes $[u\dts v]$ élintervallumokra úgy, hogy eldöntjük, $x$ $u$-hoz vagy $v$-hez van-e közelebb:

\begin{equation}
\epsfbox{\figdir/v4a.81}
\hspace{1cm}
\begin{array}{cccccccc}
 &ac&bc&cd&de&ef&eg&dh\\
a\mapsto &a&c&c&d&e&e&d\\
b\mapsto &c&b&c&d&e&e&d\\
c\mapsto &c&c&c&d&e&e&d\\
d\mapsto &c&c&d&d&e&e&d\\
e\mapsto &c&c&d&e&e&e&d\\
f\mapsto &c&c&d&e&f&e&d\\
g\mapsto &c&c&d&e&e&g&d\\
h\mapsto &c&c&d&d&e&e&h
\end{array}
\hspace{0.5cm}
\begin{array}{c}
\\
0000000\\
1100000\\
1000000\\
1010000\\
1011000\\
1011100\\
1011010\\
1010001
\end{array}
\label{keplet711-63}
\end{equation}
A jobb oldalon a vetítéseket nullákra és egyesekre egyszerûsítettük, önkényesen eldöntve, hogy $a\mapsto 0000000$. Az elõálló 
bitsorozatot a csúcsok \textit{címkéinek}\index{címke = label} nevezzük, és azt írjuk például, hogy $l(b)=1100000$. Mivel minden 
vetítés homomorfizmus, bármely három pont mediánját ki lehet számítani úgy, hogy egyszerûen meghatározzuk címkéi egyes komponenseinek 
a Boole-mediánját. Például ahhoz, hogy kiszámítsuk a $\langle bgh\rangle$ értéket, megkeressük $l(b)=1100000$, $l(g)=1011010$ 
és $l(h)=1010001$ bitenkénti mediánját, ami $1010000=l(d)$.

Amikor egy medián gráf éleire vetítünk, lehetséges, hogy azt tapasztaljuk, a bináris címkék két oszlopa azonos. Ilyen helyzet 
nem fordulhat elõ egy szabad fával. De gondoljuk át, mi történne, ha (\ref{keplet711-63})-ban a $g\adj h$ élt hozzáadnánk a 
fához: az eredménygráf medián gráf lenne, de az $\it eg$ és $\it dh$ oszlopok ($e\swap d$ és $g\swap h$ kivételével) azonossá válnának. Továbbá az új $\it gh$ oszlop pedig azonos lenne a $\it de$ oszloppal. Ilyen esetekben a redundáns komponenseket ki kellene törölni a címkékbõl; így a kibõvített gráf csúcsainak a hét bites címkék helyett olyan hat bites címkéi lennének, mint $l(g)=101101$ és $l(h)=101001$.

Ilyen módon egy medián algebra elemei mindig reprezentálhatók címkékkel. Emiatt \textsl{bármelyik, Boole-algebrákban teljesülõ 
azonosság igaz lesz minden medián algebrában is}. Ez a \idez{nulla-egy elv}\index{nulla-egy elv = zero-one principle} lehetõvé 
teszi, hogy ellenõrizzük, vajon két, az $\langle xyz\rangle$ háromváltozós mûvelet felhasználásával felépített kifejezés az 
(\ref{keplet711-50}), az (\ref{keplet711-51}) és az (\ref{keplet711-52}) axiómák következményeként egyenlõnek tekinthetõ-e -- 
bár ha $n$ változós kifejezéseket tesztelünk ezzel a módszerrel, $2^{n-1}-1$ esetet kell ellenõriznünk.

Például az asszociativitás $\left\langle xw\langle ywz\rangle \right\rangle=\left\langle \langle xwy\rangle wz\right\rangle$ 
törvénye\index{asszociativitás törvény = associative law} azt sugallja, hogy bizonyára van mindkét oldalnak olyan szimmetrikus 
interpretációja, amelyik nem zavarodik bele az egymásba skatulyázott zárójelekbe. És valóban, van ilyen formula:
\begin{equation}
\left\langle xw\langle ywz\rangle\right\rangle\;=\;\left\langle \langle xwy\rangle wz\right\rangle\;=\;\langle xwywz\rangle\koz,
\label{keplet711-64}
\end{equation}
ahol $\langle xwywz\rangle$ az $\{x,w,y,w,z\}=\{w,w,x,y,z\}$ ötelemû multihalmaz mediánját jelöli. Alkalmazva a nulla-egy elvet, 
továbbá figyelembe véve, hogy a medián ugyanaz a fogalom, mint Boole-algebrákban a majoritás, be tudjuk bizonyítani ezt a formulát. 
Hasonló módon bizonyíthatjuk (\ref{keplet711-49})-et, és meg tudjuk mutatni, hogy a Post által (\ref{keplet711-47})-ben használt 
függvény leegyszerûsíthetõ:
\begin{equation}
\left\langle x_1y\langle x_2y\ldots y\langle x_{s-1}yx_s\rangle\ldots{}\rangle\right\rangle\;=\;
\langle x_1 y x_2 y\ldots y x_{s-1} y x_s\rangle\koz.
\label{keplet711-65}
\end{equation}
Ez $2s-1$ elem mediánja, melyeknek közel fele $y$.

Egy gráf csúcsainak $C$ halmazát \textit{konvexnek}\index{konvex = convex} nevezzük, ha $[u\dts v]\subseteq C$ minden olyan esetben, 
amikor $u\in C$ és $v\in C$. Másképp fogalmazva, amennyiben egy legrövidebb út végpontjai $C$-hez tartoznak, ezen út minden 
csúcsának szintén meg kell jelennie $C$-ben. (Következésképpen egy konvex halmaz megegyezik azzal, amit néhány oldallal 
ezelõtt \idez{ideálnak}\index{ideál = ideal} hívtunk; csak most az algebra nyelve helyett a geometria nyelvét használtuk.) 
$\{v_1,\ldots, v_m\}$ \textit{konvex burka}\inddef{konvex burok = convex hull} az a legszûkebb konvex halmaz, amely a $v_1$, 
\dots, $v_m$ csúcsok mindegyikét tartalmazza. A fenti elméleti eredményeink megmutatták, hogy minden $[u\dts v]$ intervallum 
konvex; ennélfogva $[u\dts v]$ az $\{u,v\}$ két pontból álló halmaz konvex burka. De valójában sokkal több igaz:

\medskip
\noindent \textbf{C tétel.} \textsl{Egy medián gráfban $\{v_1,v_2,\ldots,v_m\}$ konvex burka a
\begin{equation}
C\;=\;\left\{\langle v_1 x v_2 x\ldots x v_m\rangle\bigm\vert x\in M\right\}
\label{keplet711-66}
\end{equation}
halmaz. Továbbá $x$ akkor és csak akkor van benne $C$-ben, ha $x=\langle v_1 x v_2 x\ldots x v_m\rangle$.}

\medskip
\noindent \textit{Bizonyítás.} Világos, hogy $v_j\in C$, ha $1\le j\le m$. $C$ minden pontjának a konvex burokhoz kell tartoznia, 
mert az $x'=\langle v_2 x\ldots x v_m\rangle$ pont (az $m$-re vonatkozó indukció szerint) a burokban van, és mert 
$\langle v_1 x\ldots x v_m\rangle\in[v_1\dts x']$. A nulla-egy elv biztosít, hogy
\begin{equation}
\left\langle x \langle v_1 y v_2 y\ldots y v_m\rangle\langle v_1 z v_2 z\ldots z v_m\rangle\right\rangle
 =\left\langle v_1 \langle xyz\rangle v_2 \langle xyz\rangle\ldots\langle xyz\rangle v_m\right\rangle\koz;
\label{keplet711-67}
\end{equation}
ezért $C$ konvex. Ebben a formulában ha $x=y$, akkor $\langle v_1 x v_2 x\ldots x v_m\rangle$ $C$-nek $x$-hez legközelebbi pontja, 
és $\langle v_1 x v_2 x\ldots x v_m\rangle\in[x\dts z]$ minden $z\in C$-re.\quad\slug

\medskip
\noindent \textbf{C következmény.} \textsl{A $v_j$ címkéje legyen $v_{j1}\ldots v_{jt}$ $1\le j\le m$-re. Ekkor $\{v_1,\ldots,v_m\}$ 
konvex burka azon $x\in M$ elemek halmaza, melyek $x_1\ldots x_t$ címkéje kielégíti az $x_j=c_j$ feltételt, valahányszor 
$v_{1j} = v_{2j}=\cdots=v_{mj}=c_j$.}\quad\slug

\medskip
Például (\ref{keplet711-63})-ban a $\{c,g,h\}$ konvex burka minden olyan elemet tartalmaz, amelynek a címkéje illeszkedik az  
$10\* \* 0\* \*$ mintára, és ezek $\{c,d,e,g,h\}$.

Amikor egy medián gráf egy 4 hosszúságú $u\adj x\adj v\adj y\adj u$ kört\index{négy hosszúságú kör@4 hosszúságú kör = 4-cycle} 
tartalmaz, az $u\adj x$ és a $v\adj y$ élek ekvivalensek abban az értelemben, hogy mind az $[u\dts x]$-re vetítés, mind a 
$[v\dts y]$-ra vetítés ugyanazt a címke koordinátát adja. A magyarázat erre az, hogy bármely olyan z-re, melyre
$\langle zux\rangle =u$, 
\begin{align*}
y=\langle uvy\rangle &=\left\langle \langle zux\rangle vy\right\rangle\\
 &=\left\langle \langle zvy\rangle \langle uvy\rangle \langle xvy\rangle\right\rangle\\
 &=\left\langle \langle zvy\rangle yv\right\rangle\koz,
\end{align*}
ezért $\langle zvy\rangle =y$. Ehhez hasonlóan $\langle zux\rangle =x$ maga után vonja $\langle zvy\rangle =v$-t. Az $x\adj v$ 
és az $y\adj u$ élek pedig ugyanilyen okok miatt ekvivalensek. A \ref{gyak711-77}.~gyakorlatban többek között megmutatjuk, hogy 
két él akkor és csak akkor eredményez ekvivalens vetítést, ha be lehet bizonyítani ily módon ekvivalenciájukat 4 hosszúságú 
körökbõl nyert ekvivalencia-láncokon keresztül. Következésképpen az egyes csúcs-címkékben a bitek száma a 4 hosszúságú 
körökkel létrehozott élek ekvivalencia-osztályainak száma. Ezt követõen a csúcsok redukált címkéit egyértelmûen 
megállapíthatjuk, amint megadjuk a $00\ldots 0$ címkéjû csúcsot.

\smallbreak
Egy medián gráf csúcs-címkéjének megtalálására remek módszert talált ki Jha\angolnevindex{Jha, Pranava Kumar} és 
Slutzki\angolnevindex{Slutzki, Giora} \cite{Jha1992}, majd  Hagauer\angolnevindex{Hagauer, Johann (= Hans)}, 
Imrich\angolnevindex{Imrich, Wilfried} és Kla\v{z}ar\angolnevindex{Kla\v{z}ar, Sandi} \cite{Hagauer1999} tovább javította a módszert:

\medskip
\noindent \textbf{H algoritmus} \textit{(a medián címkékre)}.\inddef{H algoritmus = Algorithm H} Adott $G$ medián gráf és $a$ 
forrás-csúcs esetén ez az algoritmus meghatározza a $G$ 4 hosszúságú körei által definiált ekvivalencia-osztályokat, és 
kiszámolja minden egyes csúcs $l(v)=v_1\ldots v_t$ címkéjét, ahol $t$ az oszályok száma, továbbá $l(a)=0\ldots 0$.

\algindentset{\hskip\parindent H1}

\algstep H1. (Kezdõértékek beállítása.) Dolgozzuk fel elõzetesen $G$-t úgy, hogy $a$-tól való távolságuk sorrendjében járjuk be 
az összes csúcsát. Egy $u\adj v$ él esetén azt mondjuk, hogy $u$ a $v$ 
\textit{közeli szomszédja}\index{közeli szomszéd = early neighbor}, ha $a$ közelebb van $u$-hoz, mint $v$-hez, ellenkezõ esetben 
$u$ \textit{távoli szomszéd}\index{távoli szomszéd = late neighbor}. Másképp, amire eljutunk $v$-hez, $v$ közeli szomszédjait 
már felkerestük, de a távoli szomszédok még várakoznak erre. Rendezzük át az összes szomszédsági listát úgy, hogy elõször a 
közeli szomszédokat soroljuk fel. Kezdetben helyezzünk minden élt saját ekvivalencia-osztályába; egy a 2.3.3. algoritmushoz 
hasonló \idez{uniókeresõ algoritmust}\index{uniókeresõ algoritmus = union-find algorithm} használunk majd az osztályok 
összefésülésére, amikor az algoritmus rájön, hogy ezek ekvivalensek.

\algstep H2. (Eljáráshívás.) Legyen $j\gets 0$ és hívjuk meg az I eljárást az $a$ paraméterrel. (Az I eljárást lentebb megadjuk. 
A $j$ globális változót arra fogjuk használni, hogy létrehozzuk az $r_j\adj s_j$ élek elsõdleges listáját, ahol $1\le j<n$ és 
$n$ a csúcsok száma; minden $v\neq a$ csúcs esetén lesz egy listaelem, melyre $s_j=v$.) 

\algstep H3. (Címkék meghatározása.) Sorszámozzuk meg az ekvivalencia-osztályokat 1-tõl $t$-ig. Aztán legyen $l(a)$ a 
$t$ bites $0\ldots 0$ sorozat. $j=1, 2,\dots, n-1$ sorrendben állítjuk elõ az $l(s_j)$ sorozatot $l(r_j)$-bõl úgy, hogy 
$k$ bitet módosítunk benne 0-ról 1-re, ahol $k$ az $r_j\adj s_j$ él ekvivalencia-osztályának sorszáma. \quad\slug

\medskip
\noindent \textbf{I eljárás} \textit{($r$ utódjainak feldolgozására)}. Ez az $r$ paraméterrel és a $j$ globális változóval 
dolgozó rekurzív eljárás\index{rekurzív eljárás = recursive subroutine} végzi el a H algoritmus leglényegesebb feladatát az 
$r$ csúcsból elérhetõ csúcsokat tartalmazó gráfon. A feldolgozás során az $r$ csúcs kivételével fel fogunk jegyezni az 
elsõdleges listára minden ilyen csúcsot, és az aktuális gráfból pedig el fogunk távolítani minden köztük futó élt. 
Minden egyes csúcs négy adatmezõvel rendelkezik: \texttt{CSATOLÁS}, \texttt{JELÖLÉS}, \texttt{SZINTSZÁM}, \texttt{PÁR}, 
ezek kezdetben üresek.

\algindentset{I10}

\algstep I1. ($s$ szerinti ciklus.) Válasszunk egy olyan $s$ csúcsot, amelyikre $r\adj s$. Ha nincs ilyen csúcs, térjünk vissza 
az eljárásból.

\algstep I2. (Rögzítsük az élt.) Legyen $j\gets j+1$, $r_j\gets r$ és $s_j\gets s$.

\algstep I3. (Kezdjük el a szélességi keresést\index{szélességi keresés = breadth-first search}.) (Most meg akarjuk keresni és 
ki akarjuk törölni az aktuális gráf összes olyan csúcsát, amelyik $r\adj s$-sel ekvivalens.)
$\texttt{JELÖLÉS}($s$)\gets s$,
$\texttt{SZINTSZÁM}($s$)\gets 1$,
$\texttt{CSATOLÁS}($s$)\gets\Lambda$ és $v\gets q\gets s$.

\algstep I4. (Keressük meg $v$ párját.) Keressük meg $v$ azon $u$ közeli szomszédját, melyre \linebreak $\texttt{JELÖLÉS}($u$)\ne s$. 
(Pontosan egy ilyen $u$ csúcs van. Legyen $\texttt{PÁR}($v$)\gets u$.)

\algstep I5. ($u\adj v$ törlése.) Tegyük az $u\adj v$ és $r\adj s$ éleket ekvivalenssé ekvivalencia-osztályaik egyesítésével. 
$u$-t és $v$-t távolítsuk el egymás szomszédsági listáiból.

\algstep I6. ($v$ szomszédainak osztályozása.) $v$ minden egyes $u$ közeli szomszédjára lépjünk I7-re; $v$ minden egyes $u$ távoli 
szomszédjára lépjünk I8-ra. Aztán lépjünk I9-re.

\algstep I7. (Jegyezzünk fel egy lehetséges ekvivalenciát.) Ha $\texttt{SZINTSZÁM}($u$)=s$ és \linebreak
$\texttt{SZINTSZÁM}($u$)=1$, tegyük az $u\adj v$ élt ekvivalenssé az
$\texttt{PÁR}($u$)\adj\texttt{PÁR}($v$)$ éllel. Térjünk vissza I6-ra.

\algstep I8. ($u$ szintszáma.) Ha $\texttt{JELÖLÉS}($u$)=s$ és $\texttt{SZINTSZÁM}($u$)=1$, térjünk vissza I6-ra. Egyébként 
legyenek $\texttt{JELÖLÉS}($u$)\gets s$ és $\texttt{SZINTSZÁM}($u$)\gets 2$. Legyen $w$ az $u$ elsõ szomszédja (ez közeli 
szomszéd lesz). Ha $w=v$, állítsuk vissza $w$-t $u$ második közeli szomszédjának; de térjünk vissza I6-ra, ha $u$-nak csak 
egy közeli szomszédja van. Ha $\texttt{JELÖLÉS}($w$)\neq s$ vagy $\texttt{SZINTSZÁM}($w$)\neq 2$, legyen 
$\texttt{SZINTSZÁM}($u$)\gets 1$, \linebreak $\texttt{CSATOLÁS}($u$)\gets\Lambda$, $\texttt{CSATOLÁS}($q$)\gets u$ és $q\gets u$. 
Térjünk vissza I6-ra.

\algstep I9. (Folytassuk a szélességi keresést.) Legyen $v\gets\texttt{CSATOLÁS}($v$)$. Térjünk vissza I4-re, ha $v\neq \Lambda$.

\algstep I10. (Az $s$ részgráf feldolgozása.) Hívjuk meg az I eljárást rekurzív módon az $s$ paraméterrel. Aztán térjünk 
vissza I1-re.\quad\slug

\smallskip\noindent
Ezt az algoritmust és eljárást aránylag magas szintû adatszerkezetek nyelvén írtuk le; a további részletezés az olvasóra marad. 
Így például ahhoz, hogy az I5 lépésben az élek könnyedén törölhetõk legyenek, a szomszédsági listáknak két irányban 
láncoltaknak\index{két irányban láncolt lista = doubly linked list} kellene lenniük. Ugyanakkor az ekvivalencia-osztályok 
egyesítésére ebben a lépésben bármilyen alkalmas módszer használható.

A \ref{gyak711-77}.~gyakorlatban elmagyarázzuk az algoritmus által elvégzett munkát megalapozó elképzelést, a \ref{gyak711-78}. 
gyakorlatban pedig igazoljuk, hogy az I4 lépésben minden egyes csúccsal legfeljebb $\lg n$ alkalommal találkozunk. 
A \ref{gyak711-79}. gyakorlatban megmutatjuk továbbá, hogy egy medián gráfnak legfeljebb $O(n\lg n)$ éle van. Tehát ha 
figyelmen kívül hagyjuk a H3 lépésben a bitbeállítást, a H algoritmus teljes futási ideje $O(n(\lg n)^2)$.

\begin{table}[t!]
\caption{\label{tablazat71-2}}
\centerline{NÉGY GENERÁTORON ALAPULÓ SZABAD MEDIÁN ALGEBRÁHOZ CÍMKÉK}
\smallskip
\hrule
\medskip
\hbox{\epsfbox{\figdir/v4a.80}\kern11pt
\hspace{2cm}
\vbox{\halign{\hfil$#$\hfil&&\enspace\hfil$#$\hfil\cr
j&r_j&s_j&l(s_j)\cr
&&w&0000000\cr
1&w&\langle wwxyz\rangle &0000001\cr
2&\langle wwxyz\rangle &\langle wyz\rangle &0010001\cr
3&\langle wyz\rangle &\langle wxyzz\rangle &0010101\cr
4&\langle wxyzz\rangle &\langle xyz\rangle &0010111\cr
5&\langle wxyzz\rangle &z&1010101\cr
6&\langle wyz\rangle &\langle wxyyz\rangle &0010011\cr
7&\langle wxyyz\rangle &y&0110011\cr
8&\langle wwxyz\rangle &\langle wxz\rangle &0000101\cr
9&\langle wxz\rangle &\langle wxxyz\rangle &0000111\cr
10&\langle wxxyz\rangle &x&0001111\cr
11&\langle wwxyz\rangle &\langle wxy\rangle &0000011\cr
}}
}
\medskip
\hrule
\end{table}
\label{tablazat71-2-oldal}

Lehet, hogy az Olvasó szeretné a H algoritmust saját maga végigkövetni a \ref{tablazat71-2}. táblázatbeli medián gráfon, 
melynek csúcsai négy változó, a$w,x,y$ és $z$, tizenkét monoton, önduális 
Boole-függvényét\index{monoton, önduális Boole-függvény = monotone self-dual Boolean function} reprezentálják. Minden ilyen, 
mind a négy változóval ténylegesen dolgozó függvény kifejezhetõ, (\ref{keplet711-64})-hez hasonlóan, öt dolog mediánjaként. 
Az $a=w$ csúccsal kezdve az algoritmus kiszámolja az $r_j\adj s_j$ élek elsõdleges listáját és a táblázatban látható 
bináris címkéket. (A feldolgozás tényleges sorrendje attól a sorrendtõl függ, hogy a csúcsok a szomszédsági listában 
hogy jelennek meg. De a végsõ címkék bármely sorrend esetén az oszlopok sorrendjétõl eltekintve megegyeznek.)

Vegyük észre, hogy az egyes $l(v)$ címkékben az 1-es bitek száma $v$-nek az $a$ kezdõ csúcstól való távolsága. Mivel bármely 
konkrét csúccsal kezdhettünk volna, a címkék egyértelmûsége valójában azt jelenti, hogy  \textsl{két csúcs közötti távolság 
azon bitpozíciók száma, amelyekben címkéik különböznek}.

A \ref{tablazat71-2}. táblázatbeli speciális medián gráfot voltaképpen egészen másképp is kezelhettük volna, a H algoritmus 
bármiféle használata nélkül, mert ebben az esetben a címkék lényegében ugyanazok, mint a megfelelõ függvények 
\textit{igazságtáblái}\index{igazságtábla = truth table}. Ez azért van így, mert a $w$, $x$, $y$ és $z$ egyszerû függvények 
igazságtáblái rendre $t(w)=0000000011111111$, $t(x)=0000111100001111$, $t(y)=0011001100110011$ és $t(z)=0101010101010101$. 
Ekkor $\langle wwxyz\rangle$ igazságtáblája a $\left\langle t(w)t(w)t(x)t(y)t(z)\right\rangle$ bitenkénti 
majoritás\index{majoritás = majority} függvény, nevezetesen a 0000000101111111 füzér. Hasonló számítás adja az összes többi 
csúcs igazságtábláját.

Bármely önduális függvény igazságtáblájának második fele lényegében ugyanaz, mint az elsõ fele, csak éppen az elsõ fél 
komplemensének a fordítottja, így elhagyhatjuk. Továbbá igazságtábláinkban a legbaloldalibb bit mindig nulla, tehát végül a 
\ref{tablazat71-2}.~táblázatbeli hét bites címkékkel fejeztük be ezt a gondolatmenetet. Az egyértelmûség tulajdonsága pedig 
garantálja, hogy az oszlopok sorrendjétõl eltekintve a H algoritmus ugyanezt az eredményt fogja adni, amikor ezen a speciális 
gráfon mutatjuk be a mûködését.

Ezen okoskodás szerint a \ref{tablazat71-2}. táblázatbeli gráf élei megfelelnek azoknak a függvénypároknak, melyeknek 
igazságtáblái majdnem megegyeznek. A szomszédos csúcsok között csak két, az igazságtábláikban szereplõ eltérõ bitnek az 
átváltásával mozgunk. Valójában egy csúcs foka a csúcs által reprezentált monoton önduális függvény diszjunktív 
prímformájában\index{diszjunktív prímforma = disjunctive prime form} a prímimplikánsok\index{prímimplikáns = prime implicant} 
pontos száma (lásd a \ref{gyak711-70}.~és a \ref{gyak711-84}. gyakorlatokat).

\medskip
\noindent \textbf{*Medián halmazok.} Medián halmaz bináris vektorok olyan $X$ halmaza, melyre $\{ x,y,z \} \subseteq X$ esetén 
$\langle xyz \rangle \in X$, ahol a mediánokat koordinátánként számoljuk - úgy, ahogy azt a medián címkékkel tettük.
Schaefer\angolnevindex{Schaefer, Thomas Jerome} 1978-ban észrevette, hogy a medián halmazok a Horn-függvények H tételbeli 
jellemzésének elegáns gondolati ellenpontját szolgáltatják:

\medskip
\noindent \textbf{S tétel.} \textsl{Egy $f(x_1,\ldots,x_n)$ Boole-függvény akkor és csak akkor fejezhetõ ki Krom-klózok 
konjunkciójaként, ha} 
\begin{equation}
\begin{split}
f(x_1,\ldots,x_n)=f(y_1,\ldots,y_n)=f(z_1,\ldots,z_n)=1 \\
\hbox{ \textsl{maga után vonja, hogy} } f(\langle x_1y_1z_1\rangle ,\ldots,\langle x_ny_nz_n\rangle )=1
\end{split}
\label{keplet711-68}
\end{equation}
\textsl{minden $x_j$, $y_j$ és $z_j$ Boole-értékre.}

\medskip
\noindent \textit{Bizonyítás.} {\cite[Lemma 3.1B. lemma]{Schaefer1978} Ha $x_1\vee x_2=y_1\vee y_2=z_1\vee z_2=1$, és mondjuk 
$x_1\le y_1\le z_1$, akkor $\langle x_1y_1z_1\rangle\vee\langle x_2y_2z_2\rangle =y_1\vee\langle x_2y_2z_2\rangle =1$, mivel 
$y_1=0$ maga után vonja, hogy $x_2=y_2=1$. Ezért (\ref{keplet711-68}) szükséges.

Fordítva, ha (\ref{keplet711-68}) teljesül, legyen $u_1\vee\cdots\vee u_k$ $f$ prímklóza, ahol minden $u_j$ literál. 
Ekkor $1\le j\le k$-ra az $u_1\vee\cdots\vee u_{j-1}\vee u_{j+1}\vee\cdots\vee u_k$ klóz nem $f$ klóza; így van egy 
\smash{$x^{(j)}$} vektor, melyre $f(\smash{x^{(j)}})=1$, de $\smash{u_i^{(j)}}=0$ minden $i\neq j$-re. Ha $k \geq 3$, 
akkor az $ \langle x^{(1)}, x^{(2)} x^{(3)} \rangle$ mediánban $u_{i}=0$ minden $1 \leq i \leq k$-ra. Ez azonban lehetetlen, mert 
feltételezésünk szerint $u_{1} \vee...\vee u_{k}$ primklóza $f$-nek. Ezért $k\le 2$. \quad\slug

\medskip\noindent Így egy medián halmaz nem más, mint \idez{2SAT elõfordulások}\index{kettõSAT@2SAT = 2SAT} -- azaz valamely 
$f$ 2KNF\index{kettõNF@2KNF = 2CNF} függvényt kielégítõ pontok -- halmaza.  

Egy medián halmazt \textit{redukáltnak}\inddef{redukált medián halmaz = reduced median set} nevezünk, ha az $x=x_1\ldots x_t$ 
vektorai nem tartalmaznak redundáns\index{redundáns komponens = redundant component} komponenst. Másképp fogalmazva, egy 
redukált medián halmaz\index{redukált medián halmaz = reduced median set} az egyes koordináta-pozíciókra legalább két olyan 
vektort tartalmaz, mondjuk a $k$ pozícióra az \smash{$x^{(k)}$} és \smash{$y^{(k)}$} vektorokat, melyekre \smash{$x^{(k)}_k=0$} 
és \smash{$y^{(k)}_k=1$}, de \smash{$x^{(k)}_i=y^{(k)}_i$}, ha $i\neq k$. Láttuk, hogy egy medián gráf kielégíti ezt a feltételt. 
Valóban, a $k$ koordináta megfelel az $u\adj v$ gráfbeli élnek, $u$ és $v$ címkéinek pedig választhatjuk $x^{(k)}$-t és 
$y^{(k)}$-t. Fordítva, bármely $X$ redukált medián halmaz egy medián gráfot definiál, melyben $X$ minden eleméhez tartozik egy 
csúcs, és $X$ két vektorát pontosan akkor köti össze él, ha egy kivétellel minden megfelelõ koordinátájuk egyenlõ. Ezen csúcsok 
medián címkéinek meg kell egyeznie az $X$-beli eredeti vektorokkal, mert tudjuk, hogy a medián címkék lényegében egyértelmûek.

Jellemezhetjük még a medián címkéket és a redukált medián halmazokat egy másik, az 5.3.4. pontban tanulmányozott 
\textit{összehasonlító modulok}\index{összehasonlító modul = comparator module} hálózatához visszatérõ tanulságos 
módszerrel is. Ebben a pontban megfigyeltük, hogy az ilyen hálózatok hasznosak számok feledékeny 
rendezésére\index{feledékeny rendezés = oblivious sorting}, és észrevettük az 5.3.4.~tételben, hogy összehasonlító 
modulok hálózata akkor és csak akkor fogja rendezni a lehetséges $n!$ input permutációt, ha helyesen rendezi nulláknak 
és egyeseknek az összes, $2^n$ különbözõ kombinációját. Amikor egy összehasonlító modult két vízszintes vonalhoz kapcsolunk, 
melyek balról belépõ $x$ és $y$ bemenettel rendelkeznek, ugyanezt a két kimenetet kapjuk a jobb oldalon, csak a felsõ vonalon 
$\min(x,y)=x\wedge y$-t, az alsó vonalon pedig $\max(x,y)=x\vee y$-t. Terjesszük ki kissé a fogalmunkat olyan 
\textit{átalakító modulok}\index{átalakító modul = inverter module} engedélyezésével, melyek a 0-t 1-re és 1-et 0-ra cserélik. 
Itt van például egy összehasonlító-átalakító hálózat\index{összehasonlító-átalakító hálózat, 
CI-net = comparator-inverter network, CI-net} (vagy röviden CI-net), ami a 0010 bináris értéket 0111-gyé alakítja:
\begin{equation}
\epsfbox{\figdir/v4a.1005} \koz.
\label{keplet711-69}
\end{equation}
(Az egyedül álló pont átalakítót jelöl.) Valóban, ez a hálózat az alábbi átalakítást végez: 
\begin{equation}
\vcenter{\halign{$#\mapsto{}$&$#\hfil$\cr
 0000&0110\koz;\cr
 0001&0111\koz;\cr
 0010&0111\koz;\cr
 0011&0110\koz;\cr
 }}\qquad\vcenter{\halign{$#\mapsto{}$&$#\hfil$\cr
 0100&0111;\cr
 0101&1111;\cr
 0110&1111;\cr
 0111&0111;\cr
 }}\qquad\vcenter{\halign{$#\mapsto{}$&$#\hfil$\cr
 1000&0111;\cr
 1001&0101;\cr
 1010&0101;\cr
 1011&0111;\cr
 }}\qquad\vcenter{\halign{$#\mapsto{}$&$#\hfil$\cr
 1100&0110\koz;\cr
 1101&0111\koz;\cr
 1110&0111\koz;\cr
 1111&0110\koz.\cr
 }}
\label{keplet711-70}
\end{equation}

Tegyük fel, hogy egy CI-net az $x=x_1\ldots x_ t$ bitfüzért az $x'_1\ldots x'_t=f(x)$ bitfüzérré alakítja. Ez az $f$ függvény, 
ami egy $t$-kockát saját magára képez, valójában egy \textit{gráf homomorfizmus}\index{gráf homomorfizmus = graph homomorphism}. 
Másképp fogalmazva az eredmény kockában $f(x)\adj f(y)$, mindahányszor a $t$-kockában $x\adj y$: $x$ egy bitjének megváltoztatása 
$f(x)$ pontosan egy bitjének megváltozását okozza mindig, mert a hálózatban minden modul így mûködik. Másfelõl a CI-netek 
figyelemre méltó kapcsolatban vannak a medián címkékkel is:  

\medskip
\noindent \textbf{F tétel.} \textsl{$t$ bites medián címkék bármely halmaza reprezentálható egy olyan $f(x)$ Boole-függvényt 
kiszámító CI-nettel, melyre $f(x)\in X$ minden $x_1\ldots x_t$ bitvektorra, és $f(x)=x$ minden $x\in X$-re.}

\medskip
\noindent \textit{Bizonyítás.} {Feder\angolnevindex{Feder, Tomás} \cite{Feder1995}-beli 3.37-es lemmája; lásd még 
Wiedemann\angolnevindex{Wiedemann, Douglas Henry} \cite{Wiedemann1986} Ph.~D. értekezését.} Vizsgáljuk a medián címkék $i$ és 
$j$ oszlopait ($1\le i<j\le t$). Ha a címkék teljes halmazát átnézzük, bármelyik ilyen oszloppár a négy lehetséges 
$\{00,01,10,11\}$ értékpár közül legalább hármat tartalmaz, mert a medián címkéknek nincs redundáns oszlopuk. Írjuk rendre azt, 
hogy $\bar\jmath\to i$, $j\to i$, $i\to j$ vagy $i\to\bar\jmath$, ha a 00, a 01, az 10 vagy éppen az 11 hiányzik ebbõl a két 
oszlopból; írhatjuk persze a megfelelõ  $\bar\imath\to j$, $\bar\imath\to\bar\jmath$, $\bar\jmath\to\bar\imath$ vagy 
$j\to\bar\imath$ ekvivalens relációkat az $i$ helyett $\bar\imath$-t használva. Például a \ref{tablazat71-2}.~táblázatbeli címkék az
\begin{equation}
\openup1.5pt\let\\=\overline
\vcenter{\halign{$#$&${}\to#$\hfil\cr
1&\\2,3,\\4,5,\\6,7\cr
2&3,\\4,\\5,6,7\cr
3&\\4,7\cr
4&5,6,7\cr
5&7\cr
6&7\cr}}\qquad
\vcenter{\halign{\hfil$#\to{}$&$\\#$\hfil\cr
2,\\3,4,\\5,6,\\7&1\koz;\cr
\\3,4,5,\\6,\\7&2\koz;\cr
4,\\7&3\koz;\cr
\\5,\\6,\\7&4\koz;\cr
\\7&5\koz;\cr
\\7&6\cr}}
\label{keplet711-71}
\end{equation}
relációkat adják. (A 3.~és az 5.~oszlopok között nem áll fenn reláció, mert mind a négy lehetõség elõfordul ezekben az 
oszlopokban. De $3\to\overline 4$, mert a 3.~és a 4.~oszlopokban nem fordul elõ a 11. A \ref{tablazat71-2}.~táblázatban 
azok a csúcsok, amelyek címkéinek 3.~oszlopa 1, pontosan azok, melyek közelebb vannak $\langle wyz\rangle$-hez, mint $\langle wwxyz\rangle$-hez; 
ezek a címkéik 4.~oszlopában 0-át tartalmazó csúcsok konvex halmazt alkotnak, mert mind közelebb vannak 
$\langle wxxyz\rangle$-hez, mint $x$.) 

Az $\{1,\overline 1,2,\overline 2,\ldots, t,\overline t\}$ literálok közötti relációk nem tartalmaznak kört, így ezek mindig 
elrendezhetok topologikusan egy $u_{1},u_{2},...,u_{2t}$ antiszimmetrikus sorozatba, ahol $u_{2t+1-j}$ komplementuma $u_{j}$.
\index{topologikus rendezés = topological sorting} lehetnek, ahol  $u_{2t+1-j}$ komplemense $u_j$. Például a (\ref{keplet711-71})-beli 
relációknak az
(\ref{keplet711-71})-beli relációk az
\begin{equation}
\let\\=\overline \thinmuskip=9mu \postdisplaypenalty=10000
1\,\\7\,4\,2\,\\3\,\\5\,\\6\,6\,5\,3\,\\2\,\\4\,7\,\\1
\label{keplet711-72}
\end{equation}
sorozat egy ilyen topologikus rendezése. 

A $t$ üres vonalból kiindulva most folytatjuk a hálózat építését úgy, hogy a topologikus sorozatban az $u_k$ és $u_{k+d}$ 
elemeket $k=1$, 2, \dots, $t-\lceil d/2\rceil$-re egymás után megvizsgáljuk $d=2t-2$, $2t-3$, \dots,~1 sorrendben. Ha 
$u_k\le u_{k+d}$ az $i$ és~$j$ ($i<j$) oszlopok között fennálló reláció, a hálózat $i$ és $j$ vonalaihoz hozzáadunk egy 
új modult a következõképpen:
\begin{equation}
\def\\#1#2#3{\vcenter{\halign{\hfil##\hfil\cr
                  Ha $#1\to#2$\cr
                 \noalign{\medskip}
                 \epsfbox{\figdir/v4a.100#3}\cr}}} 
 \\ij6\qquad\qquad 
 \\i{\bar\jmath}7\qquad\qquad
 \\{\bar\imath}j8\qquad\qquad
 \\{\bar\imath}{\bar\jmath}9
\label{keplet711-73}
\end{equation}
Például (\ref{keplet711-71})-bõl és (\ref{keplet711-72})-bõl elõször $1\to7$-et, aztán $1\to\overline4$-et, aztán $1\to\overline2$-t, aztán $\overline7\to\overline4$-et (azaz $4\to7$-et) stb.~hajtjuk végre a következõ hálózatot nyerve:
\begin{equation}
\epsfbox{\figdir/v4a.1001} \koz.
\label{keplet711-74}
\end{equation}
(Nézd meg az ábrát. Nincs mûködõ modul amikor, mondjuk $u_k$ $\overline 7$ és $u_{k+d}$ 3, mert a $\overline 3\to 7$ reláció 
nem jelenik meg (\ref{keplet711-71})-ben.)

A \ref{gyak711-89}. gyakorlatban bebizonyítjuk, hogy a (\ref{keplet711-73})-beli modulok minden egyes új egysége az elõzõ 
egyenlõtlenségeket megõrzi és egy újat kikényszerít. Így ha $x$ input vektor, $f(x)$ az összes egyenlõtlenséget kielégíti; 
így az S tétel szerint $f(x)\in X$. Fordítva, ha $x\in X$, $x$-et a hálózatban a modulok minden egysége változatlanul 
hagyja. \quad\slug

\medskip
\noindent \textbf{F következmény.} \textsl{Az F tételben a medián címkékrõl tegyük fel, hogy a bitenkénti AND és OR mûveletekre  
nézve zártak, azaz $x\;\&\; y\in X$ és $x\mid y\in X$, ahányszor csak $x\in X$ és $y\in X$. Ekkor a koordinátáknak van olyan 
permutációja, mely mellett a címkék reprezentálhatók csak összehasonlító moduloknak a hálózatával.}

\medskip
\noindent \textit{Bizonyítás.} Az összes címke bitenkénti AND-je $0\ldots 0$, és bitenkénti OR-ja $1\ldots 1$. Így az oszlopok 
közötti lehetséges relációk csak $i\to j$ és $j\to i$. Az oszlopok topologikus rendezésével és átnevezésével biztosíthatjuk, 
hogy csak az $i\to j$ forduljon elõ, ha $i<j$; és ebben az esetben a bizonyításbeli konstrukció soha nem használ 
átalakítót. \quad\slug

\smallbreak
Egy $G$ gráf csúcsait ezen csúcsok $X$ részhalmazába képezõ $f$ homomorfizmus\index{homomorfizmus = homomorphism} 
\textit{összehúzás}\index{összehúzó leképezés = retraction mapping}, ha $f(x)=x$ teljesül minden $x\in X$-re; $X$-et pedig $G$ 
\textit{összehúzójának}\index{összehúzó = retract} nevezzük, ha van ilyen $f$. A gráfelméletben ennek a fogalomnak a fontosságát 
elõször Hell\angolnevindex{Hell, Pavol} \cite{Hell1974} emelte ki. Az egyik eredmény például az, hogy az $X$-beli csúcsok 
közötti távolság -- a legrövidebb úton fekvõ élek száma -- ugyanakkora marad akkor is, ha kizárólag az $X$-ben fekvõ utakra 
szorítkozunk. (Lásd a \ref{gyak711-93}.~gyakorlatot.) 

Az F tétel mutatja, hogy medián címkék minden $t$-dimenziós halmaza egy $t$-dimenziós hiperkocka összehúzása. Fordítva, 
a \ref{gyak711-94}.~gyakorlatban megmutatjuk, hogy a hiperkocka összehúzások mindig medián gráfok.\index{medián = median|)}

\medskip
\noindent \textbf{Küszöbfüggvények.}\index{küszöbfüggvény = threshold function} Az $f(x_1,x_2,\ldots,x_n)$ Boole-függvények 
különösen fontos osztálya az, amikor $f$-et az
\begin{equation}
f(x_1,x_2,\ldots,x_n)\;=\;\left[w_1x_1+w_2x_2+\cdots+w_nx_n\ge t\right],
\label{keplet711-75}
\end{equation}
formula definiálja, ahol a $w_1$, $w_2$, \dots, $w_n$ konstansok egész szám \idez{súlyok} és $t$ egy egész \idez{küszöbérték}. 
Fontosak például azok a küszöbfüggvények, amikor minden súly egységnyi:  
\begin{align}
x_1\wedge x_2\wedge\cdots\wedge x_n&=\left[x_1+x_2+\cdots+x_n\ge n\right]; \label{keplet711-76} \\
x_1\vee  x_2\vee \cdots\vee  x_n&=\left[x_1+x_2+\cdots+x_n\ge 1\right]; \label{keplet711-77}\\
\hbox{és}\qquad\langle x_1x_2\ldots x_{2t-1}\rangle &=\left[x_1+x_2+\cdots+x_{2t-1}\ge t\right],
\label{keplet711-78}
\end{align}
ahol $\langle x_1x_2\ldots x_{2t-1}\rangle$ egy olyan multihalmaz medián (vagy majoritás\index{majoritás = majority}) értékét jelenti, amelyik az $\{x_1,x_2,\ldots,x_{2t-1}\}$ tetszés szerinti páratlan sok Boole-értékbõl áll. Speciálisan az $x\wedge y$, $x\vee y$  és $\langle xyz\rangle$ alapleképezések mind küszöbfüggvények, és az
\begin{equation}
\bar x\;=\;\left[ -x\ge 0\right] 
\label{keplet711-79}
\end{equation}
is az.

Általánosabb súlyokkal olyan további érdekes függvényhez jutunk, mint a
\begin{equation}
\left[2^{n-1}x_1+2^{n-2}x_2+\cdots+x_n\ge(t_1t_2\ldots t_n)_2\right],
\label{keplet711-80}
\end{equation}
ami pontosan akkor igaz, ha az $x_1x_2\ldots x_n$ bináris füzér lexikografikusan\index{lexikografikusan = lexicographically} nagyobb vagy egyenlõ, mint egy adott $t_1t_2\ldots t_n$ bináris füzér. Adva van $w_1$, $w_2$, \dots,~$w_n$ méretû objektumoknak egy $n$-elemû halmaza. Ezen objektumok egy részhalmaza pontosan akkor fér bele egy $t-1$ méretû hátizsákba\index{haztizs@hátizsák = knapsack}, ha  $f(x_1,x_2,\ldots,x_n)=0$, ahol $x_j=1$ reprezentálja a $j$ objektumnak a részhalmazban való megjelenését. Az eredetileg McCullough\angolnevindex{McCullough, Warren Sturgis} és Pitts\angolnevindex{Pitts, Walter Harry} által \cite{McCullough1943}-ben javasolt egyszerû neuronmodell küszöbfüggvényekbõl felépülõ neurális hálókról\index{neurális háló = neural network} szóló publikációk ezreihez vezetett.

Bármelyik negatív $w_j$ súlyt eltüntethetjük az $x_j\gets\bar x_j$, $w_j\gets-w_j$ és $t\gets t+\vert w_j\vert$ beállításokkal. 
Így egy általános küszöbfüggvény olyan pozitív küszöbfüggvénnyé\index{pozitív küszöbfüggvény = positive threshold function} 
redukálható, amelyben minden súly nemnegatív. Továbbá bármely pozitív (\ref{keplet711-75}) küszöbfüggvény kifejezhetõ mint a 
páratlan medián/majoritás függvény egy speciális esete, mert 
\begin{equation}
\langle 0^a1^bx_1^{w_1}x_2^{w_2}\ldots x_n^{w_n}\rangle =
\left[ b+w_1x_1+w_2x_2+\cdots+w_nx_n\ge b+t\right] ,
\label{keplet711-81}
\end{equation}
ahol $x^m$ az $x$ $m$ darab másolatát jelenti, és ahol $a$ és $b$ az
\begin{equation}
a=\max(0,2t-1-w),\quad b=\max(0,w+1-2t),\quad w=w_1+w_2+\cdots+w_n
\label{keplet711-82}
\end{equation}
szabályokkal vannak definiálva. Például amikor minden súly 1, 
\begin{equation}
\langle 0^{n-1}x_1\ldots x_n\rangle =x_1\wedge\cdots\wedge x_n
\quad \hbox{és}\quad
  \langle 1^{n-1}x_1\ldots x_n\rangle =x_1\vee \cdots\vee x_n.
\label{keplet711-83}
\end{equation}
Amikor $n=2$, már láttuk ezeket a formulákat (\ref{keplet711-45})-ben. Általában vagy $a$, vagy $b$ nulla, és (\ref{keplet711-81}) bal oldala $2T-1$ elem mediánját határozza meg, ahol
\begin{equation}
T\;=\;b+t\;=\;\max(t,w_1+w_2+\cdots+w_n+1-t).
\label{keplet711-84}
\end{equation}
Nem változtatna ezen, ha elõírnánk, hogy $a$ is, és $b$ is nullánál nagyobb legyen, mert a majoritás függvény nyilván kielégíti a
\begin{equation}
\langle 01x_1x_2\ldots x_{2t-1}\rangle \;=\;\langle x_1x_2\ldots x_{2t-1}\rangle 
\label{keplet711-85}
\end{equation}
törlés törvényt\index{tovrlevs@törlés törvény = cancellation law}.

(\ref{keplet711-81}) egyik fontos következménye, hogy minden pozitív küszöbfüggvény a
\begin{equation}
g(x_0,x_1,x_2,\ldots,x_n)\;=\;\langle x_0^{a+b}x_1^{w_1}x_2^{w_2}\ldots x_n^{w_n}\rangle
\label{keplet711-86}
\end{equation}
tiszta majoritás függvénybõl\index{tiszta majoritás függvény = pure majority function} az $x_0=0$ vagy 1 beállítással származik. Másképp fogalmazva akkor és csak akkor ismerjük az összes $n$-változós küszöbfüggvényt, ha ismerjük az összes (konstanst nem tartalmazó) legfeljebb $n+1$ változós  páratlan medián függvényt. Minden tiszta majoritás függvény monoton és önduális. Már vizsgáltuk a \pageref{tablazat71-2-oldal}.~oldalon található \ref{tablazat71-2}.~táblázat $s_j$ oszlopában a $\{w,x,y,z\}$ változók feletti tiszta majoritás függvényeket, nevezetesen a
$\langle w\rangle $,
$\langle wwxyz\rangle $,
$\langle wyz\rangle $,
$\langle wxyzz\rangle $,
$\langle xyz\rangle $,
$\langle z\rangle $,
$\langle wxyyz\rangle $,
$\langle y\rangle $,
$\langle wxz\rangle $,
$\langle wxxyz\rangle $,
$\langle x\rangle $,
$\langle wxy\rangle$ függvényeket.
$w=0$ vagy 1 esetén megkapjuk az összes háromváltozós $f(x,y,z)$ pozitív küszöbfüggvényt:\index{pozitív küszöbfüggvény = positive threshold function} 
\begin{equation}
\begin{split}
\quad
\langle 0\rangle , \langle 1\rangle ,
\langle 00xyz\rangle , \langle 11xyz\rangle ,
\langle 0yz\rangle , \langle 1yz\rangle ,
\langle 0xyzz\rangle , \langle 1xyzz\rangle ,
\langle xyz\rangle ,
\langle z\rangle \koz,
\hfill\cr\hfill
\langle 0xyyz\rangle , \langle 1xyyz\rangle ,
\langle y\rangle ,
\langle 0xz\rangle , \langle 1xz\rangle ,
\langle 0xxyz\rangle , \langle 1xxyz\rangle ,
\langle x\rangle ,
\langle 0xy\rangle , \langle 1xy\rangle \koz.
\label{keplet711-87}
\end{split}
\end{equation}
A 150 négyváltozós pozitív küszöbfüggvényt hasonló módon nyerjük az önduális majoritás függvényekbõl a \ref{gyak711-84}.~gyakorlat 
megoldásában.

Végtelen sok különbözõ $(w_1,w_2,\ldots,w_n)$ súlysorozat van, de bármely adott $n$ értékre csak véges sok küszöbfüggvény. 
Ezért világos, hogy sok különbözõ súlysorozat ekvivalens. Például vizsgáljuk meg az
$$\langle x_1^2x_2^3x_3^5x_4^7x_5^{11}x_6^{13}\rangle$$
tiszta majoritás függvényt, melyben a prímszámokat súlyokként használjuk. A $2^6$ esetet végigvizsgáló \idez{nyers erõ} 
módszer megmutatja, hogy
\begin{equation}
\langle x_1^2x_2^3x_3^5x_4^7x_5^{11}x_6^{13}\rangle = \langle x_1x_2^2x_3^2x_4^3x_5^4x_6^5\rangle\koz;
\label{keplet711-88}
\end{equation}
így ki tudjuk fejezni ugyanazt a függvényt lényegesen kisebb súlyokkal. Hasonlóan (\ref{keplet711-80}) speciális esete, az 
$$\left[(x_1x_2\ldots x_{20})_2\ge(01100100100001111110)_2\right] = \langle 1^{225028}x_1^{524288}x_2^{262144}
 \ldots x_{20}\rangle$$
küszöbfüggvény, egyszerûen 
\begin{equation}
\langle 1^{323}x_1^{764}x_2^{323}x_3^{323}x_4^{118}x_5^{118} x_6^{87}x_7^{31}x_8^{31}x_9^{25}x_{10}^6x_{11}^6x_{12}^6x_{13}^6
x_{14}x_{15}x_{16}x_{17}x_{18}x_{19}\rangle
\label{keplet711-89}
\end{equation}
lesz. A \ref{gyak711-103}.~gyakorlat tisztázza, hogyan kell megkeresni a minimális súlysorozatot lineáris programozást használva, 
a nyers erõvel való hosszadalmas keresés igénybevétele nélkül.

Egy, az egyes küszöbfüggvényeket egyértelmûen azonosító, gondos indexelési sémát talált ki Chow\angolnevindex{Chow, C.~K.} 
\cite{Chow1961}. Egy adott  $f(x_1,\ldots,x_n)$ Boole-függvény esetén legyen $N(f)$ azon $x=(x_1,\ldots,x_n)$ vektorok száma, 
melyre $f(x)=1$, és legyen $\Sigma(f)$ ezen vektorok összege. Például ha $f(x_1,x_2)=x_1\vee x_2$, akkor $N(f)=3$ és 
$\Sigma(f)=(0,1)+(1,0)+(1,1)=(2,2)$.

\medskip
\noindent \textbf{T tétel.} \textsl{Legyen az $f(x_1,\ldots,x_n)$ és $g(x_1,\ldots,x_n)$ Boole-függvényekre $N(f)=N(g)$ és 
$\Sigma(f)=\Sigma(g)$, ahol $f$ küszöbfüggvény. Ekkor $f=g$.}

\medskip
\noindent \textit{Bizonyítás.} Tegyük fel, hogy pontosan $k$ olyan $x^{(1)}$, \dots, $x^{(k)}$ vektor van, amelyikre 
$f(x^{(j)})=1$ és $g(x^{(j)})=0$. Mivel $N(f)=N(g)$, pontosan $k$ olyan $y^{(1)}$, \dots, $y^{(k)}$ vektornak kell lennie, 
melyre $f(y^{(j)})=0$ és $g(y^{(j)})=1$. És mert $\Sigma(f)=\Sigma(g)$, $x^{(1)}+\cdots+x^{(k)}=y^{(1)}+\cdots+y^{(k)}$ kell legyen.

Most tegyük fel, hogy $f$ a (\ref{keplet711-75}) küszöbfüggvény; ekkor $w\cdot x^{(j)}\ge t$ és $w\cdot y^{(j)}<t$, 
ha $1\le j\le k$. De ha $f\neq g$, akkor $k>0$ és $w\cdot(x^{(1)}+\cdots+x^{(k)})\ge kt >w\cdot(y^{(1)}+\cdots+y^{(k)})$, 
ami ellentmondás.\quad\slug

\medskip
A küszöbfüggvényeknek sok különös tulajdonsága van, melyek közül a késõbbi feladatokban kiderítünk néhányat. Klasszikus 
elméletüket Muroga\angolnevindex{Muroga, Saburo} \cite{Muroga1971} könyve jól összefoglalja.

\medskip
\noindent \textbf{Szimmetrikus Boole-függvények.} Egy $f(x_1,\ldots,x_n)$ függvény \textit{szimmetrikus}, ha az 
\linebreak $\{1,\ldots,n\}$ minden $p(1)\ldots p(n)$ permutációjára $f(x_1,\ldots,x_n)$ egyenlõ $f(x_{p(1)},\ldots,x_{p(n)})$-nel. 
Amikor $x_j$  0 vagy 1, ez a feltétel azt jelenti, hogy $f$ csak azoknak az egyeseknek a számától függ, amelyek az argumentumokban 
megjelennek, azaz a $\nu(x)=\nu(x_{1},,...,x_{n})$ \idez{oldalösszeg}-tõl.\index{oldalösszeg = sideways sum} Az 
$S_{k_{1},k_{2},...,k_{r}}(x_{1},...,x_{n})$ jelölést általában olyan Boole-függvények megadására használják, melyek 
melyek akkor és csak akkor igazak, ha $\nu x$ vagy $k_1$, vagy $k_2$, vagy $\cdots$ $k_r$. Például 
$S_{1,3,5}(v,w,x,y,z)=v\xor w\xor x\xor y\xor z$; $S_{3,4,5}(v,w,x,y,z)=\langle vwxyz\rangle$; $S_{4,5}(v,w,x,y,z)=\langle 
00vwxyz\rangle$.

A szimmetria sok alkalmazása alapul az $S_k(x_1,\ldots,x_n)$ alapfüggvényeken, melyek csak akkor igazak, mikor $\nu x=k$. 
Például $S_3(x_1,x_2,x_3,x_4,x_5,x_6)$ akkor és csak akkor igaz, ha az $\{x_1,\ldots,x_6\}$ argumentumoknak pontosan a fele 
igaz és a másik fele hamis. Ilyen esetekben nyilván
\begin{equation}
\advance\abovedisplayskip-2.5pt
\advance\belowdisplayskip-2.5pt
S_k(x_1,\ldots,x_n)\;=\;S_{\ge k}(x_1,\ldots,x_n)\wedge
\overline{S_{\ge k+1}(x_1,\ldots,x_n)}\koz,
\label{keplet711-90}
\end{equation}
ahol $S_{\ge k}(x_1,\ldots,x_n)$ az $S_{k,k+1,\ldots,n}(x_1,\ldots,x_n)$ rövidítése. Az $S_{\ge k}(x_1,\ldots,x_n)$ függvények 
persze küszöbfüggvények, ahogy már meggondoltuk.

Bonyolultabb esetek küszöbfüggvények küszöbfüggvényeiként\index{küszöbfüggvények küszöbfüggvénye = threshold function of
threshold functions} kezelhetõk. Például
\begin{equation}
\begin{split}
S_{2,3,6,8,9}(x_1,\ldots,x_{12})\;
=\;\bigl[{\nu x\ge 2 + 4\left[\nu x\ge4\right]+2\left[\nu x\ge7\right]+5\left[\nu x\ge10\right]}\bigr]
\\
=\;\bigl<00x_1\ldots x_{12}\langle 0^5\bar x_1\ldots\bar x_{12}\rangle ^4
\langle 1\bar x_1\ldots\bar x_{12}\rangle ^2\langle 1^7\bar x_1\ldots\bar x_{12}\rangle ^5\bigr>\koz,
\end{split}
\label{keplet711-91}
\end{equation}
mert amikor $x_1+\cdots+x_{12}=(0,1,\ldots,12)$, a legkülsõ 25 elemû többségi függvényben az egyesek száma rendre 
$(11,12,13,14,11,12,13,12,13,14,10,11,12)$. Általában is hasonló kétszintû séma mûködik (lásd 
Minnick\angolnevindex{Minnick, Robert Charles} \cite{Minnick1961}). Három- vagy többszintû sémákkal a küszöbölés mûveletek 
számát még tovább redukálhatjuk. (Lásd a \ref{gyak711-113}.~gyakorlatot.)

Szimmetrikus Boole-függvények kiértékelésére ügyes trükkök egész sorát dolgozták ki. Például Muroga\angolnevindex{Muroga, Saburo} 
\cite{Muroga1971} Sasakinak\angolnevindex{Sasaki, F.} tulajdonította formuláknak a következõ említésre méltó sorozatát: 
\begin{equation}
\begin{split}
x_0\xor x_1\xor\cdots\xor x_{2m}&=\langle \bar x_0s_1s_2\ldots s_{2m}\rangle,\cr
\noalign{\nobreak\vskip-1pt}
\hbox{ahol}\quad s_j&=\langle x_0x_jx_{j+1}\ldots x_{j+m-1}
  \bar x_{j+m}\bar x_{j+m+1}\ldots\bar x_{j+2m-1}\rangle\koz,
\end{split}
\label{keplet711-92}
\end{equation}
ha $m>0$, és ha $x_{2m+k}$ ugyanaz, mint $x_k$ minden $k\ge1$-re. Speciálisan amikor $m=1$ és $m=2$, érvényesek az
\begin{align}
x_0\xor x_1\xor x_2&=\langle \bar x_0\langle x_0x_1\bar x_2\rangle \langle x_0x_2\bar x_1\rangle\rangle\koz; \label{keplet711-93}\\
x_0\xor\cdots\xor x_4&=
\langle \bar x_0\langle x_0x_1x_2\bar x_3\bar x_4\rangle
          \langle x_0x_2x_3\bar x_4\bar x_1\rangle
          \langle x_0x_3x_4\bar x_1\bar x_2\rangle
          \langle x_0x_4x_1\bar x_2\bar x_3\rangle\rangle
\label{keplet711-94}
\end{align}
azonosságok. A jobb oldalak teljes mértékben szimmetrikusak, de nem nyilvánvalóan azok. (Lásd a \ref{gyak711-115}.~gyakorlatot.)

\medskip
\noindent \textbf{Kényszerítõ függvények.\index{kényszerítõ függvény = canalizing function}} Egy $f(x_1,\ldots,x_n)$ 
Boole-függvény \textit{kényszerítõ}\index{kényszerítõ = canalizing, forcing}, ha képesek vagyunk értékére változói közül 
legfeljebb egynek a vizsgálatával következtetni. Pontosabban $f$ kényszerítõ, ha $n=0$, vagy ha van olyan $j$ index, 
melyre $f(x)$ állandó értékû, amikor $x_j=0$, vagy állandó értékû, amikor $x_j=1$. Például $f(x,y,z)=(x\xor z)\vee\bar y$ 
kényszerítõ, mert mindig 1, amikor $y=0$. (Amikor $y=1$, nem tudjuk $x$ és $z$ vizsgálata nélkül $f$ értékét; de fél cipó is 
jobb, mint ha nincs.) Ezek a Kauffman\angolnevindex{Kauffman, Stuart Alan} által \cite{Kauffman1974}-ban bevezetett 
függvények sok alkalmazásban -- különösen a kémiában és biológiában -- fontosnak bizonyultak. A tulajdonságaik közül 
néhányat a \ref{gyak711-125}--\ref{gyak711-129}. gyakorlatokban vizsgálunk.

\medskip
\noindent \textbf{Mennyiségi meggondolások.} Már sok különbözõ fajta Boole-függvényt vizsgáltunk, így természetes megkérdezni: 
az egyes típusokból hány $n$-változós függvény létezik? A \ref{tablazat71-3}, \ref{tablazat71-4} és \ref{tablazat71-5}. 
táblázatok választ adnak a kérdésre, legalábbis kis $n$ értékekre.

A \ref{tablazat71-3}.~táblázatban az összes függvényt felsoroltuk. Minden $n$-re $2\losup{2^n}$ lehetõség van, 
mert $2_{2^n}$ lehetséges igazságtábla van. Ezen függvények közül néhány önduális, néhány monoton; néhány monoton is, 
és önduális is, mint a P tételben. Néhány Horn-függvény, mint a H tételben, néhány Krom-függvény, mint az S tételben, és így tovább.

A \ref{tablazat71-4}.~táblázatban pedig két függvényt azonosnak tekintünk, ha csak a változok nevében és komplementáltságában
különböznek. Így amikor $n=2$, csak 12 különbözõ eset merül fel, mert (például) $x\vee\bar y$ és $\bar x\vee y$ lényegében 
megegyeznek.

A \ref{tablazat71-5}.~táblázat további lépést tesz: megengedi nekünk, hogy komplementáljuk az egyes változókat, sõt 
komplementáljuk az egész függvényt, lényegében megváltoztatásuk nélkül. Ebbõl a perspektívából nézve az $(x,y,z)$ változók 
256 lehetséges Boole-függvénye csak 14 különbözõ ekvivalencia-osztályba esik:  

\begin{equation}
\vcenter{
\halign{\hfil$#$\hfil&\quad\hfil#\cr
\hbox{Jellemzõ}&\hbox{Osztály}\rlap{méret}\cr
\noalign{\breathe}
0&2\cr
x&6\cr
x\wedge y&24\cr
x\xor y&6\cr
x\wedge y\wedge z&16\cr
x\xor y\xor z&2\cr
x\wedge(y\vee z)&48\cr
}
}
\qquad\qquad
\vcenter{
\halign{\hfil$#$\hfil&\quad\hfil#\cr
\hbox{Jellemzõ}&\hbox{Osztály}\rlap{méret}\cr
\noalign{\breathe}
x\wedge(y\xor z)&24\cr
x\xor(y\wedge z)&24\cr
(x\wedge y)\vee(\bar x\wedge z)&24\cr
(x\vee y)\wedge(x\xor z)&48\cr
(x\xor y)\vee(x\xor z)&8\cr
\langle xyz\rangle &8\cr
S_1(x,y,z)&16\cr
}
}
\label{keplet711-95}
\end{equation}
A \ref{pont723}.~pontban tanulmányozni fogjuk azokat a módszereket, amelyekkel meg lehet számlálni és ki lehet listázni a nem-ekvivalens kombinatorikus objektumokat.

\begin{table}[ht!]
\caption{\label{tablazat71-3}}
\centerline{$n$-VÁLTOZÓS BOOLE-FÜGGVÉNYEK}
\vspace{4mm}
\centering
\smallskip
\hrule
 \halign to\hsize{#\hfil\kern-5pt\tabskip0pt plus1fil&
  \hfil#\hfil&\hfil#\hfil&\hfil#\hfil&\hfil#\hfil
    &\hfil#&\hfil#&\hfil#\tabskip0pt\cr
\noalign{\vskip4pt}
& n=0 & n=1 & n=2 & n=3 & n=4 & n=5 & n=6 \cr
tetszõleges &2&4&16&256&65,536&4,294,967,296&18,446,744,073,709,551,616\cr
önduális &0&2&4&16&   256&       65,536&             4,294,967,296\cr
monoton  &2&3&6&20&   168&        7,581&                 7,828,354\cr
mindkettõ      &0&1&2&4&    12&           81&                     2,646\cr
Horn      &2&4&14&122& 4,960&    2,771,104&           151,947,502,948\cr
Krom      &2&4&16&166& 4,170&      224,716&                24,445,368\cr
küszöb &2&4&14&104& 1,882&       94,572&                15,028,134\cr
szimmetrikus &2&4&8&16&    32&           64&                       128\cr
kényszerítõ&2&4&14&120& 3,514&    1,292,276&           103,071,426,294\cr
\noalign{\vskip4pt}}
\hrule     
\end{table}

\begin{table}[ht!]
\caption{\label{tablazat71-4}}
\centerline{A VÁLTOZÓK PERMUTÁCIÓJA MELLETT KÜLÖNBÖZÕ BOOLE-FÜGGVÉNYEK}
\vspace{4mm}
\centering   
		  \hrule 
		  \halign to\hsize{#\hfil\kern-5pt\tabskip0pt plus1fil&
  \hfil#\hfil&\hfil#\hfil&\hfil#\hfil&\hfil#\hfil
    &\hfil#&\hfil#&\hfil#\tabskip0pt\cr
		  \noalign{\vskip4pt}
		  & n=0 & n=1 & n=2 & n=3 & n=4 & n=5 & n=6 \cr
tetszõleges &2&4&12&80& 3,984&   37,333,248&    25,626,412,338,274,304\cr
önduális &0&2&2&8&    32&        1,088&                 6,385,408\cr
monoton  &2&3&5&10&    30&          210&                    16,353\cr
mindkettõ      &0&1&1&2&     3&            7&                        30\cr
Horn      &2&4&10&38&   368&       29,328&               216,591,692\cr
Krom      &2&4&12&48&   308&        3,028&                    49,490\cr
küszöb &2&4&10&34&   178&        1,720&                   590,440\cr
kényszerítõ&2&4&10&38&   294&       15,774&               149,325,022\cr
\noalign{\vskip4pt}}
\hrule  
\end{table}

\begin{table}[ht!]
\caption{\label{tablazat71-5}}
\centerline{KIEGÉSZÍTÉS/PERMUTÁCIÓ MELLETT KÜLÖNBÖZÕ BOOLE-FÜGGVÉNYEK}
\vspace{4mm}
\centering
\hrule 
		  \halign to\hsize{#\hfil\kern-5pt\tabskip0pt plus1fil&
  \hfil#\hfil&\hfil#\hfil&\hfil#\hfil&\hfil#\hfil
    &\hfil#&\hfil#&\hfil#\tabskip0pt\cr
          \noalign{\vskip4pt}
          & n=0 & n=1 & n=2 & n=3 & n=4 & n=5 & n=6 \cr
tetszõleges &1&2&4&14&   222&      616,126&       200,253,952,527,184\cr
önduális &0&1&1&3&     7&           83&                   109,950\cr
küszöb &1&2&3&6&    15&           63&                       567\cr
mindkettõ      &0&1&1&2&     3&            7&                        21\cr
kényszerítõ &1&2&3&6&    22&          402&                1,228,158\cr
\noalign{\vskip4pt}}
\hrule 
\end{table}




{\small
\vspace{8mm}
\textbf{GYAKORLATOK}
\vspace{2mm}
\begin{gyak}
\ujgyak \label{gyak711-1} \sz{15} (Lewis Carroll\angolnevindex{Carroll, Lewis (= Dodgson, Charles Lutwidge, 1832--1898)}.)
Értelmezzük Subidu\gyakindex{Subidu = Tweedledee} -- a fejezet elején idézett --
mondását. (\emph{Útmutatás:} lásd a \ref{tablazat71-1}. táblázatot.)
\ujgyak\label{gyak711-2} \sz{17} 
A távoli Pincus bolygó logikával foglalkozó lakói az 1 szimbólumot használják a \idez{hamis}\gyakindex{hamis = false} és a 0-t 
az \idez{igaz}\gyakindex{gyakigaz = true} jelölésére. Azután például van egy bináris mûveletük is, amit \idez{or}-nak hívnak, 
$$\def\\{\mathbin{\rm or}} 1\\1=1,\qquad 1\\0=0,\qquad 0\\1=0,\qquad 0\\0 = 0.$$
Ez a mûvelet a $\wedge$-t idézi fel bennünk. Mely mûveleteket társítanánk ahhoz a 16
logikai mûvelethez, melyeket a pincusiak sorra \idez{hamisság}, \idez{and}, \ldots,
\idez{nand}, \idez{érvényesség} nevekkel illetnek (lásd a \ref{tablazat71-1}. táblázatot)?
\ujgyak\label{gyak711-3} \sz{13} 
Tegyük fel, hogy a hamis logikai értéke -1, az igazé pedig +1 az eddigi 0 és 1 helyett. A \ref{tablazat71-1}. táblázat 
melyik $\circ$ operátora tartozna így az (a) $\max(x,y)$-hoz? (b) $\min(x,y)$-hoz? (c) $-x$-hez? (d) $x\cdot y$-hoz?
\ujgyak\label{gyak711-4} \sz{24} (H. M. Sheffer\angolnevindex{Sheffer, H. M.}) 
Ennek a gyakorlatnak az a célja, hogy megmutassuk, a \ref{tablazat71-1}. táblázat minden mûvelete kifejezhetõ 
NAND-del\gyakindex{NAND = NAND}. (a) Találjunk a táblázat mind a 16 $\circ$ mûveletére olyan formulát, ami ekvivalens 
$x \circ y$-nal és csak a $\nand$ mûveletet használja. Legyen a formula a lehetõ legrövidebb. Például, az $\lproj$ mûvelet 
esetén a formula egyszerûen \idez{$x$}, a $\lcomp$ mûvelet esetén pedig \idez{$x\nand x$}. A formulákban a 0 és 1 konstansokat 
ne használjuk. (b) Találjunk ehhez hasonlóan 16 rövid formulát, ha megengedjük még a konstansokat is. 
Például az $x\lcomp y$ így már az \idez{$x\nand 1$} formulával is kifejezhetõ.
\vspace{-3mm}
\ujgyak\label{gyak711-5} \sz{24} 
Oldjuk meg a \ref{gyak711-4}. gyakorlatot úgy, hogy válasszuk $\nand$ helyett az $\cnimp$ alapmûveletet.
\ujgyak\label{gyak711-6} \sz{21} (E. Schröder.\angolnevindex{Schröder, E}) 
(a) A \ref{tablazat71-1}. táblázat 16 mûvelete közül melyek asszociatívak\gyakindex{asszociatív mûvelet = associative operation} -- 
más szóval, melyekre igaz, hogy $x \circ (y \circ z) = (x \circ y) \circ z$?
(b) Melyek tesznek eleget az $(x \circ y) \circ (y \circ z) = x \circ z$ azonosságnak?
\ujgyak \label{gyak711-7} \sz{20} A \ref{tablazat71-1}. táblázat mely mûveletei rendelkeznek azzal a tulajdonsággal,
hogy $x \circ y = z$ akkor és csak akkor, ha $y \circ z = x$?
\ujgyak\label{gyak711-8} \sz{24} A $16^{2}$ $(\circ,\diamond )$  mûveletpár közül melyek elégítik ki a bal oldali 
disztributivitás\gyakindex{disztributivitás törvény = distributive law}
törvényét, vagyis melyekre igaz, hogy $x\circ(y\diamond z)=(x\circ y)\diamond(x\circ z)$?
\ujgyak\label{gyak711-9} \sz{16} 
Igaz vagy hamis? (a) $(x \oplus y) \vee z = (x \vee z) \oplus (y \vee z)$;
(b) $(w \oplus x \oplus y) \vee z = (w \vee z) \oplus (x \vee z) \oplus (y \vee z)$;
(c) $(x \oplus y) \vee (y \oplus z) = (x \oplus z) \vee (y \oplus z)$.
\ujgyak\label{gyak711-10} \sz{17}  Mi a (\ref{keplet711-22})-beli \idez{véletlen} függvény multilineáris 
reprezentációja?\gyakindex{multilineáris reprezentáció = multilinear representation}\gyakindex{Pi $(\pi)$ mint 
\idez{véletlen} példa = Pi $(\pi)$ as ``random'' example}
\ujgyak\label{gyak711-11} \sz{M25} Van-e olyan intuitív módszer, mellyel megvizsgálhatjuk, hogy az $f(x_1,\ldots,x_n)$ 
multilineáris reprezentációja\gyakindex{multilineáris reprezentáció = multilinear representation} mikor tartalmazza mondjuk az 
$x_2x_3x_6x_8$ tagot? (Lásd (\ref{keplet711-19})-et.)
\ujgyak\label{gyak711-12} \sz{M23} Egy Boole-függvény \textit{egész együtthatós multilineáris 
reprezentációja}\gyakindex{egész együtthatós multilineáris reprezentáció = integer multilinear representation} egy a 
(\ref{keplet711-19})-hez hasonló reprezentációt terjeszt ki egész együtthatós $f(x_1,\ldots,x_n)$ polinommá. Ezt oly módon teszi, 
hogy mind a $2^{n}$ lehetséges, 0 és 1 értékeket tartalmazó $(x_1,\ldots,x_n)$ vektorra $f(x_1,\ldots,x_n)$ a helyes (0 vagy 1) 
értéket adja anélkül, hogy a 2-vel való osztás maradékát vennénk. Például a (\ref{keplet711-19})-hez tartozó egész együtthatós 
multilineáris reprezentáció $1-xy-xz-yz+3xyz$.
\begin{enumerate}
	\item[a)] Mi a (\ref{keplet711-22}) \idez{véletlen} függvény egész együtthatós multilineáris reprezentációja?
  \item[b)] Mekkorák lehetnek egy ilyen $f(x_1,\ldots,x_n)$ reprezentáció együtthatói?
  \item[c)] Mutassuk meg, hogy minden egész együtthatós multilineáris reprezentációban $0\le f(x_1,\ldots, \allowbreak x_n)\le 1$, 
  amennyiben $x_1$, \dots, $x_n$ valós számok, és $0\le x_1,\ldots,x_n\le 1$.
  \item[d)] Hasonlóan lássuk be, ha $\{x_1,\dots,x_n\}\subseteq \{0,1\}$ mellett $f(x_1,\ldots,x_n)\le g(x_1,\ldots,x_n)$, 
  akkor $\{x_1,\ldots,x_n\}\subseteq[0\dts 1]$ mellett $f(x_1,\ldots,x_n)\le g(x_1,\ldots,x_n)$.
  \item[e)] Ha $f$ monoton, és $1\le j\le n$-re $0\le x_j\le y_j\le1$, akkor bizonyítsuk be, hogy $f(x)\le f(y)$.
\end{enumerate}
\vspace{-2mm}
\ujgyak\label{gyak711-13} \sz{M20} 
Tekintsünk egy $n$ egységbõl álló rendszert, melyben egy adott egység vagy \idez{mûködik}\gyakindex{mûködõ egység = 
working unit}, vagy \idez{nem mûködik}\gyakindex{nem mûködõ egység = failing unit}. Ha $x_j$ reprezentálja azt az állapotot, amikor 
a \idez{$j$-edik egység mûködik}, egy olyan Boole-függvény, mint az $x_1\wedge(\bar x_2\vee\bar x_3)$, azt az állítást fejezi ki, 
hogy az \idez{1. egység mûködik, de a 2. vagy 3. nem}. $S_{3}(x_{1}, \ldots, x_{n})$ pedig jelentse azt, hogy 
\idez{pontosan 3 egység mûködik}.

Tegyük fel, hogy a többi egységtõl függetlenül a $j$-edik egység $p_{j}$ valószínûséggel mûködik. Mutassuk meg, hogy az 
$f(x_1,\ldots,x_n)$ Boole-függvény $F(p_1,\ldots,p_n)$ valószínûséggel igaz, ahol $F$ a $p_{1}, \ldots, p_{n}$ változók polinomja.
\ujgyak\label{gyak711-14} \sz{M20} 
A \ref{gyak711-13}. gyakorlatban szereplõ $F(p_1,\ldots,p_n)$ valószínûségi függvényt gyakran a rendszer 
\textit{elérhetõségének}\gyakindex{elérhetõségi polinom = availability polynom} nevezzük. Keressük meg a maximális elérhetõségû 
önduális\gyakindex{önduális függvény = self-dual function} $f(x_1,x_2,x_3)$ függvényt, ha a $(p_1,p_2,p_3)$ valószínûségek 
rendre a következõk: (a) $(0.9, 0.8, 0.7)$; (b) $(0.8, 0.6, 0.4)$; (c) $(0.8, 0.6, 0.1)$.
\ujgyak\label{gyak711-15} \sz{M20} Mutassuk meg, hogy amennyiben $f(x_1,\ldots,x_n)$ Boole-függvény, akkor van olyan $F(x)$ 
polinom\gyakindex{elérhetõségi polinom = availability polynomial}, melyre $F(x)$ egész, ha $x$ egész és 
$f(x_1,\ldots,x_n)=F\bigl((x_n\ldots x_1)_2\bigr)\mod 2$. \emph{Útmutatás:} Fontoljuk meg, mennyi ${x\choose k}\mod 2$. 
\ujgyak \label{gyak711-16} \sz{13} Kicserélhetjük a $\vee$ mûveletet a $\xor$ mûveletre egy teljes diszjunktív 
normálformában\gyakindex{teljes diszjunktív normálforma = full disjunctive normal form}?
\ujgyak\label{gyak711-17} \sz{10} 
De Morgan\angolnevindex{Morgan, Augustus, de (1806--1871)} törvényei szerint egy a (\ref{keplet711-25})-höz hasonló 
általános diszjunktív normálforma nem csak AND-ek OR-jaként, hanem NAND-ek NAND-jeként is felfogható:
$$\overline{\overline{(u_{11}\wedge\cdots\wedge u_{1s_1})}\;\wedge\cdots\wedge\;
\overline{(u_{m1}\wedge\cdots\wedge u_{ms_m})}}.$$
A két felfogás egyenértékû.

Egy Quick\angolnevindex{Quick, Jonathan Horatio} nevû diák a következõ formába írta át a kifejezést:
$$(u_{11}\nand\cdots\nand u_{1s_1})\;\nand\cdots\nand\;
(u_{m1}\nand\cdots\nand u_{ms_m}).$$
Jó ötlet volt ez?
\ujgyak\label{gyak711-18} \sz{20} 
Legyen $u_1\wedge\cdots\wedge u_s$ az $f$ Boole-függvény diszjunktív normálformájában\gyakindex{diszjunktív normálforma = 
disjunctive normal form} implikáns\gyakindex{implikáns = implicant}, és legyen $v_1\vee\cdots\vee v_t$ ugyanennek a függvénynek 
a konjunktív normálformájában\gyakindex{konjunktív normálforma =  conjunctive normal form} klóz\gyakindex{klóz = clause}. 
Bizonyítsuk be, hogy valamely $i$ és $j$ esetén $u_{i}=v_{j}$.
\ujgyak \label{gyak711-19} \sz{20} 
Mi a (\ref{keplet711-22}) \idez{véletlen} függvény konjunktív prímformája\gyakindex{konjunktív prímforma = 
conjunctive prime form}?
\ujgyak \label{gyak711-20} \sz{21} Igaz vagy hamis a következõ állítás? $f\wedge g$ minden prímimplikánsa felírható 
$f'\wedge g'$ alakban, ahol $f'$ $f$ prímimplikánsa, $g'$ pedig $g$ prímimplikánsa.
\ujgyak\label{gyak711-21}\sz{20} 
Bizonyítsuk be, hogy egy nemkonstans Boole-függvény akkor és csak akkor monoton, ha ki lehet fejezni a $\wedge$ és a 
$\vee$ mûveletekkel.
\ujgyak \label{gyak711-22} \sz{20} 
Tegyük fel, hogy mint (\ref{keplet711-16})-ban, $f(x_1,\ldots,x_n)=g(x_1,\ldots,x_{n-1})\;\xor\; h(x_1,\ldots,x_{n-1}){\wedge}x_n$. 
A $g$ és $h$ függvényekre vonatkozó milyen feltételek teljesülése szükséges és elegendõ ahhoz, hogy $f$ 
monoton\gyakindex{monoton Boole-függvény = monotone Boole function} legyen?
\ujgyak\label{gyak711-23} \sz{15} 
Mi a $(v{\wedge}w{\wedge}x)\vee(v{\wedge}x{\wedge}z)\vee(x{\wedge}y{\wedge}z)$ konjunktív prímformája?
\ujgyak\label{gyak711-24} \sz{M20}
Vizsgáljuk az -- itt $k=3$ esetben ábrázolt -- $2^k$ levéllel rendelkezõ teljes bináris 
fát\gyakindex{teljes bináris fa = complete binary tree}. A gyökérben $\wedge$-t használva dolgozzunk szintrõl szintre váltakozva 
a $\wedge$ és a $\vee$ mûveletekkel. Így például az 
$((x_0\wedge x_1)\vee(x_2\wedge\nobreak x_3))\wedge ((x_4\wedge\nobreak x_5)\vee(x_6\wedge x_7))$
eredményre jutunk. Hány prímimplikánst tartalmaz az eredményfüggvény? {\hspace{0.2cm}}\
\parbox[r]{4cm}{\epsfbox{\figdir/v4a.1999}}
\ujgyak \label{gyak711-25}
\sz{M21} Hány prímimplikánsa\gyakindex{Krom-függvény = Krom function} van
$(x_1{\vee}x_2)\wedge (x_2{\vee}x_3)\wedge\cdots\wedge (x_{n-1}{\vee}x_n)$-nek?
\ujgyak\label{gyak711-26} \sz{M23} 
Legyen $\cal F$ ($\cal G$) egy monoton KNF (DNF) prímklózai (prímimplikánsai) indexhalmazainak családja:
$$f(x)=\bigwedge_{I\in \cal F}\bigvee_{i\in I}x_i;\qquad\qquad
  g(x)=\bigvee_{J\in\cal G}\bigwedge_{j\in J}x_j.$$
Adjunk meg olyan $x$-et, melyre $f(x)\neq g(x)$, amennyiben a következõ feltételek valamelyike teljesül:
\begin{itemize}
	\item[a)] Van olyan $I\in\cal F$ és $J\in\cal G$, hogy $I\cap J=\emptyset$.
	\item[b)] $\bigcup_{I\in\cal F}I\neq \bigcup_{J\in\cal G}J$.
	\item[c)] Van olyan $I\in\cal F$, hogy $\vert I\vert>\vert\cal G\vert$, vagy 
	van olyan $J\in\cal G$, hogy $\vert J\vert>\vert\cal F\vert$.
	\item[d)] $\sum_{I\in\cal F}2^{n-\vert I\vert}+\sum_{J\in\cal G}2^{n-\vert J\vert}<2^n$, ahol 
	$n=\big\vert\bigcup_{I\in\cal F}I\vert$.
\end{itemize}
\ujgyak\label{gyak711-27} \sz{M31} Az elõzõ gyakorlatot folytatva vizsgáljuk a következõ X$(\cal F,\cal G)$ algoritmust, 
mely vagy egy olyan $x$ vektorral tér vissza, melyre $f(x)\neq g(x)$, vagy $\Lambda$-val, ha $f=g$:
\begin{itemize}
\item[\textbf{X1.}] (A szükséges feltételek ellenõrzése.) Térjünk vissza egy megfelelõ $x$ értékkel, ha a \ref{gyak711-26}. gyakorlatban megadott (a), (b), (c) vagy (d) teljesülnek.
\item[\textbf{X2.}] (Készen vagyunk?) Ha $\vert\cal F\vert\vert\cal G\vert\le 1$, térjünk vissza $\Lambda$-val.
\item[\textbf{X3.}] (Rekurzió.) A legjobb $k$ index meghatározásához számítsuk ki a következõ redukált családokat:
\begin{align*}
{\cal{F}}_{1}&=\{I\mid I\in{\cal F}, k\notin I\}, & {\cal{F}}_0&={\cal{F}}_1\cup\{I\mid k\notin I,\ I\cup\{k\}\in\cal F\};\\
{\cal{G}}_0&=\{J\mid J\in{\cal G}, k\notin J\}, & {\cal{G}}_1&={\cal{G}}_0\cup\{J\mid k\notin J,\ J\cup\{k\}\in\cal G\}. 
\end{align*}
Töröljük az ${\cal{F}}_0$ vagy ${\cal{G}}_1$ olyan elemeit, melyek ugyanazon család egy másik elemét már tartalmazzák. A $k$ indexet úgy kellene megválasztani, hogy a $\rho=\min\bigl(\vert{\cal{F}}_1\vert/\vert\cal F\vert,\vert{\cal{G}}_0\vert/\vert\cal G\vert\bigr)$ hányados a lehetséges legkisebb legyen. Ha X$({\cal F}_0,{\cal G}_0)$ tér vissza az $x$ vektorral, térjünk vissza ezzel a vektorral úgy, hogy kibõvítjük az $x_k=0$-val. Ha pedig X$({\cal F}_1,{\cal G}_1)$ tér vissza az $x$ vektorral, térjünk vissza ezzel a vektorral úgy, hogy az $x_k=1$-gyel bõvítjük ki. Egyébként térjünk vissza $\Lambda$-val.\quad\slug
\end{itemize}
Ha $N=\vert\cal F\vert+\vert\cal G\vert$, bizonyítsuk be, hogy az X1 lépés legfeljebb $N^{O(\lg N)^2}$ alkalommal hajtódik 
végre. \emph{Útmutatás:} Mutassuk meg, hogy az X3 lépésben $\rho\le 1-1/\!\lg N$ mindig teljesül.
\ujgyak \label{gyak711-28}
\sz{21} (W. V. Quine\angolnevindex{Quine, Willard Van Orman}, 1952.) Ha $f(x_1,\ldots,x_n)$ a $p_1$, \dots, $p_q$ 
prímimplikánsokkal rendelkezõ valamely Boole-függvény, legyen $g(y_1,\ldots,y_q)=\bigwedge_{f(x)=1}\bigvee\{y_j\mid p_j(x)=1\}$.
Például a (\ref{keplet711-22}) \idez{véletlen} függvény a (\ref{keplet711-28})-ban felsorolt nyolc pontban igaz, és a 
(\ref{keplet711-29}) és (\ref{keplet711-30}) képletek által meghatározott öt prímimplikánssal rendelkezik. Így 
$g(y_1,\ldots,y_5)$ ebben az esetben
$$\advance\medmuskip2mu
\displaylines{\qquad
(y_1{\vee}y_2)\wedge(y_1)\wedge(y_2{\vee}y_3)\wedge(y_4)
 \wedge(y_3{\vee}y_5)\wedge(y_5)\wedge(y_5)\wedge(y_4{\vee}y_5)
\hfill\cr\hfill
\;\;=\;\;(y_1{\wedge}y_2{\wedge}y_4{\wedge}y_5)\vee
    (y_1{\wedge}y_3{\wedge}y_4{\wedge}y_5). \qquad\cr}$$
Bizonyítsuk be, hogy az $f$-et kifejezõ minden legrövidebb DNF-hez\gyakindex{legrövidebb DNF = shortest DNF} 
hozzárendelhetõ a monoton $g$ függvény egy prímimplikánsa.
\ujgyak\label{gyak711-29} \sz{22} 
(A következõ néhány gyakorlatot Boole-függvények implikánsaival dolgozó olyan algoritmusok tárgyalására szánjuk, amelyek az 
$n$-kocka pontjait -- $x_1\ldots x_n$ bitfüzérek helyett -- $n$ bites $(b_{n-1}\ldots b_1b_0)_2$ számokkal reprezentálják.) Legyen 
adva egy $j$ bitpozíció és a $v_0<v_1<\cdots<v_{m-1}$ $n$ bites értékek. Fejtsük ki, hogyan lehet megtalálni növekvõ $k$ mellett az 
összes olyan $(k,k')$ párt, amelyre $0\le k<k'<m$ és $v_{k'}=v_k\oplus 2^j$. A megtervezett eljárás futási ideje $O(m)$ kellene 
legyen, ha az $n$ bites szavakon bitenként végzett mûveletek\gyakindex{bitenkénti mûvelet = bitwise operation} konstans idejûek.
\ujgyak\label{gyak711-30} \sz{27} Könyvünk kiemeli, hogy egy Boole-függvény implikánsait azon pontok $V$ halmazában, 
melyekre a függvény igaz, részkockáknak tekinthetjük, például a $01{\ast}0{\ast}$ részkockának. Egy részkockát az 
$a=(a_{n-1}\ldots a_0)_2$ és $b=(b_{n-1}\ldots b_0)_2$ bináris számokból álló párként írhatunk le, ahol $a$ a csillag 
karakterek\gyakindex{csillag karakter = asterisk} pozícióit tartja nyilván, $b$ pedig a nem $\ast$ pozíciókon szereplõ biteket. 
Például az $a=(00101)_2$ és $b=(01000)_2$ számok a $c=01{\ast}0{\ast}$ részkockát reprezentálják. $a\& b=0$ mindig teljesül.

Valahányszor $a_j=0$, definiálhatjuk a részkocka \idez{$j$-társát}, mégpedig úgy, hogy $b$-t kicseréljük $b\xor2^j$-re. Például 
$01{\ast}0{\ast}$-nak három társa\gyakindex{társ = buddy} van, nevezetesen a 4-társ $11{\ast}0{\ast}$, a 3-társ $00{\ast}0{\ast}$ 
és az 1-társ $01{\ast}1{\ast}$. Minden $c\subseteq V$ részkockához kijelölhetünk egy $(t_{n-1}\ldots t_0)_2$ 
jelzõértéket\gyakindex{jelzõérték = tag value}, ahol $t_j=1$ akkor és csak akkor, ha $c$ $j$-társa definiált és $V$-ben van. 
$c$ akkor és csak akkor határoz meg maximális részkockát\gyakindex{maximális részkocka = maximal subcube} 
(prímimplikánst\gyakindex{prímimplikáns = prime implicant}), ha jelzõértéke nulla. 

Használjuk fel ezeket a fogalmakat egy olyan algoritmus megtervezésére, ami megkeresi egy adott, $v_0<v_1<\cdots<v_{m-1}$ 
$n$-bites számokkal reprezentált $V$ halmaz összes maximális $(a,b)$ részkockáját.
\ujgyak\label{gyak711-31} \sz{28} 
A \ref{gyak711-30}. gyakorlatbeli algoritmusnak szüksége van azon pontok teljes listájára, ahol egy Boole-függvény igaz, és ez 
a lista bizony elég hosszú is lehet. Ezért elõnyben részesíthetjük a részkockákkal való közvetlen munkát, egyáltalán nem térve át az 
explicit $n$-esek szintjére, hacsak nem nélkülözhetetlen. Az ilyen magasabb-szintû módszerek kulcsa a $c$ és $c'$ részkockák közötti 
\textit{konszenzus}\gyakindex{konszenzus = consensus} fogalma, amit $c\sqcup c'$-vel jelölünk, és a legnagyobb olyan $c''$ részkockával 
definiálunk, amelyre
$$c''\subseteq c\cup c',\qquad c''\not\subseteq c\quad\hbox{és}\quad c''\not\subseteq c'\koz.$$
Ilyen $c''$ nincs mindig. Például ha $c=000\ast$ és $c'=\ast111$, a $c\cup c'$-ban szereplõ minden részkocka vagy $c$-ben, vagy 
$c'$-ben benne van.
\begin{itemize}
\item[a)] Bizonyítsuk be, hogy a konszenzust, ha egyáltalán létezik, ki lehet számítani komponensenként úgy, hogy az egyes 
koordináta-pozíciókban a következõ formulákat használjuk: 
$$x\sqcup x=x\sqcup\ast=\ast\sqcup x=x\quad\hbox{és}\quad x\sqcup\bar x=\ast\sqcup\ast=\ast\qquad\hbox{$x=0$-ra és $x=1$-re\koz.}$$
Továbbá $c\sqcup c'$ akkor és csak akkor létezik, ha az $x\sqcup\bar x=\ast$ szabályt pontosan egy komponensben használtuk. 
\item[b)] Egy $k$ csillag karaktert tartalmazó részkockát $k$-kockának nevezünk. Mutassuk meg, hogy ha $c$ egy $k$-kocka, $c'$ pedig 
egy $k'$-kocka, továbbá létezik a $c''=c\sqcup c'$ konszenzus, akkor $c''$ egy $k''$-kocka, ahol $1\le k''\le\min(k,k')+1$.
\item[c)] Ha $C$ és $C'$ részkocka-családok, legyen 
$$C\sqcup C'\;=\;\{\,c\sqcup c'\mid \hbox{$c\in C$, $c'\in C'$, és létezik $c\sqcup c'$ }\}.$$
Magyarázzuk meg, miért mûködik megfelelõen a következõ algoritmus.
\end{itemize}

\medskip
\noindent \textbf{E algoritmus}\inddef{E algoritmus = E algorithm} (\textit{maximális részkocka keresésére}). Ha egy $n$-kocka 
részkockáinak adott egy $C$ családja, az algoritmus  $V=\bigcup_{c\in C}c$ maximális részkockáit eredményezi anélkül, 
hogy magát a $V$ halmazt ténylegesen meghatározná.
\begin{itemize}
\item[\textbf{E1.}] (Kezdõértékek beállítása.) Legyen $j\gets 0$. Töröljük $C$ minden olyan $c$ részkockáját, 
amelyik egy másikban benne van.
\item[\textbf{E2.}] (Készen vagyunk?) (Ebben a lépésben minden $V$-beli $j$-kocka benne van $C$ valamely elemében, 
és $C$ nem tartalmaz olyan $k$-kockát, melyre $k<j$.) Ha $C$ üres, az algoritmus megáll.
\item[\textbf{E3.}] (Vegyük a konszenzusokat.) Legyen $C'\gets C\sqcup C$. Távolítsuk el $C'$-bõl az összes 
olyan $k$-kocka részkockát, melyre $k\le j$. Közben írjuk ki azokat a $c\in C$ $j$-kockákat, melyekre $c\sqcup C$ 
nem ad $C'$-beli $(j+1)$-kockát.
\item[\textbf{E4.}] (Továbblépés.) Legyen $C\gets C\cup C'$, de töröljük az összes $j$-kockát ebbõl az unióból. 
Aztán töröljük az olyan $c\in C$ részkockákat, amelyek valamely másikban benne vannak. Legyen $j\gets j+1$, és 
folytassuk E2-vel. \quad\slug
\end{itemize}
(Lásd a \ref{gyak713-142}. gyakorlatot, ahol bemutatjuk ezeknek a számításoknak egy lehetséges hatékony módját.) 
\ujgyak \label{gyak711-32} \sz{M29} 
Legyenek $c_1$, \dots, $c_m$ egy $n$-kocka részkockái.
\begin{itemize}
\item[a)] Bizonyítsuk be, hogy $c_1\cup\cdots\cup c_m$ legfeljebb egy olyan maximális $c$ részkockát tartalmaz, 
amelyik nincs benne egyetlen $j\in\{1,\ldots,m\}$-re sem $c_1\cup\cdots\cup c_{j-1} \cup c_{j+1}\cup\cdots\cup c_m$-ben. 
(Ha $c$ létezik, $c$-t $c_1$, \dots,~$c_m$ 
\textit{általánosított konszenzusának}\gyakindex{általánosított konszenzus = generalized consensus} nevezzük, hisz a 
\ref{gyak711-31}. gyakorlat jelölései szerint $c=c_1\sqcup c_2$, ha $m=2$.)
\item[b)] Keressük meg a részkockáknak azt az $m$ elemû halmazát, melyre $\{c_1,\ldots,c_m\}$ mind a $2^m-1$ nemüres 
részhalmazának van általánosított konszenzusa.
\item[c)] Bizonyítsuk be, hogy egy $m$ implikánssal rendelkezõ DNF-nek legfeljebb $2^m-1$ prímimplikánsa van.
\item[d)] Keressünk $m$ implikánssal és $2^m-1$ prímimplikánssal rendelkezõ DNF-et.
\end{itemize}
\vspace{-2mm}
\ujgyak\label{gyak711-33} \sz{M21} 
Legyen $f(x_1,\ldots,x_n)$ a $2^n\choose m$ olyan Boole-függvény egyike, amelyik pontosan $m$ pontban igaz. Ha $f$-et 
véletlenül\gyakindex{véletlen Boole-függvény = random Boole function} választjuk, mi a valószínûsége, hogy 
$x_1\wedge\cdots\wedge x_k$ (a) $f$ implikánsa? (b) $f$ prímimplikánsa? (A (b) kérdésre egy összeg legyen a válasz; a $k=n$ 
esetben pedig adjuk meg az összeget zárt formában is.)
\ujgyak\label{gyak711-34} \sz{F37} Folytatva a \ref{gyak711-33}. gyakorlatot, jelölje $c(m,n)$ az implikánsok és $p(m,n)$ a prímimplikánsok átlagos számát. 
\begin{itemize}
	\item[a)] Ha $0\le m\le 2^n\!/n$, mutassuk meg, hogy $m\le c(m,n)\le{3\over2}m+O(m/n)$ és $p(m,n)\ge m e^{-1}+O(m/n)$; ezért ebben az értéktartományban $p(m,n)=\Theta(c(m,n))$.
	\item[b)] Most legyen $2^n\!/n\le m\le(1-\epsilon)2^n$, ahol $\epsilon$ rögzített pozitív konstans. Definiáljuk a $t$ és az $\alpha_{mn}$ számokat az
	$$n^{-4/3}\;\le\;\Bigl({m\over\displaystyle2^n}\Bigr)^{\!2^{t}}\;=\;\alpha_{mn}\;<\;n^{-2/3}, \qquad\hbox{($t$ egész)}$$ relációkkal.
Fejezzük ki $c(m,n)$ és $p(m,n)$ aszimptotikus értékeit $n$, $t$ és $\alpha_{mn}$ függvényében. (\emph{Segítség:} Mutassuk meg, hogy csaknem az összes implikánsnak éppen $n-t$ vagy $n-t-1$ literálja van.)
	\item[c)] Becsüljük meg a $c(m,n)/p(m,n)$ hányadost, amikor $m=2^{n-1}$ és $n=\lfloor(\ln t-\ln\ln t)2^{2^t}\rfloor$, $t$ egész.
	\item[d)] Bizonyítsuk be, hogy $c(m,n)/p(m,n)=O(\log\log n/\log\log\log n)$, amikor $m\le(1-\epsilon)2^n$.
\end{itemize}
\vspace{-2mm}
\ujgyak\label{gyak711-35} \sz{M25} 
Egy DNF \textit{ortogonális}\gyakindex{ortogonális DNF = orthogonal DNF}, ha implikánsai diszjunkt részkockáknak felelnek meg. 
Az ortogonális diszjunktív normálformák különösen hasznosak, amikor a \ref{gyak711-13}. gyakorlat megbízhatósági 
polinomját\gyakindex{megbízhatósági polinom = reliability polynomial} számoljuk, vagy becsüljük.
Egy függvény teljes diszjunktív normálformája nyilvánvalóan ortogonális, mert részkockái egyetlen pontból állnak. De gyakran 
találkozunk lényegesen kevesebb implikánst tartalmazó ortogonális DNF-fel, különösen amikor a függvény 
monoton\gyakindex{monoton = monotone}. Például az $(x_1{\wedge}x_2)\vee (x_2{\wedge}x_3)\vee(x_3{\wedge}x_4)$ függvény nyolc pontban 
igaz, és ortogonális DNF-je
$$(x_1{\wedge}x_2)\vee(\bar x_1{\wedge}x_2{\wedge}x_3)\vee
                        (\bar x_2{\wedge}x_3{\wedge}x_4).$$
Másképp fogalmazva az egymást részben átfedõ $11{\ast}{\ast}$, ${\ast}11{\ast}$, ${\ast}{\ast}11$ részkockák felválthatók az 
$11{\ast}{\ast}$, $011{\ast}$, ${\ast}011$ diszjunkt részkockákkal. A részkockákra a \ref{gyak711-30}. gyakorlatbeli bináris 
jelölést használva ezen részkockák csillag karakterjeinek kódjai\gyakindex{csillagkarakter-kód = asterisk code} 0011, 0001, 
1000 és bitkódjai 1100, 0110, 0011.

A $B_1$, \dots,~$B_p$ bitkódok listájával -- miközben a csillag karakterek kódjai rendre $\bar B_1$, \dots,~$\bar B_p$ -- 
minden monoton függvény definiálható. Egy adott ilyen lista mellett minden olyan $1\le j<k$-ra, melyre $\nu(B_j\&\bar B_k)=1$, 
jelölje $S_k$ a $B_k$ \idez{árnyékát},\gyakindex{bitkód árnyéka = shadow of a bitcode}{egymást követõ 1-esek = consecutive 1's} 
azaz $B_j\&\bar B_k$ bitenkénti OR-ját:
 $$S_k=\beta_{1k} | \cdots | \beta_{(k-1)k},\quad \beta_{jk}=
 \bigl((B_j{\&}\bar B_k)\oplus((B_j{\&}\bar B_k)-1)\bigr)\dotminus
                                   ((B_j{\&}\bar B_k)-1).$$
Például amikor a bitkódok $(B_1,B_2,B_3)=(1100,0110,0011)$, az $(S_1,S_2,S_3)=(0000,1000,0100)$ árnyékkódokat kapjuk.

\begin{itemize}
\item[a)] Mutassuk meg, hogy az $A_j'=\bar B_j-S_j$ csillagkarakter-kódok és a $B_j$ bitkódok azokat a részkockákat 
definiálják, amelyek éppen az $A_j=\bar B_j$ csillagkarakter-kódokkal rendelkezõ részkockák által lefedett pontokat fedik le.
\item[b)] Bitkódok egy $B_1$, \dots, $B_p$ listáját \textit{kifejtésnek}\gyakindex{kifejtés = shelling} nevezzük, ha egyik 
$1\le j<k\le p$-re sem lesz $B_j\& S_k$ nulla. Például $(1100,0110,0011)$ kifejtés; de ha átrendezzük ezeket a bitkódokat 
az $(1100,0011,0110)$ sorrendbe, a kifejtésre vonatkozó feltétel nem teljesül, amikor $j=1$ és $k=2$, jóllehet $S_3=1001$. 
Bizonyítsuk be, hogy (a)-ban a részkockák akkor és csak akkor diszjunktak, ha a bitkódok listája kifejtés.
\item[c)] Amikor egy monoton Boole-függvényt így reprezentálunk, a $B$-k között -- a Q tételnek megfelelõen -- minden 
prímimplikáns megjelenik. De néha további implikánsokat kell hozzáadnunk, ha azt akarjuk, hogy a részkockák diszjunktak 
legyenek. Például az 1100 és 0011 bitkódok esetén nincs kifejtés. Mutassuk meg, hogy még egy bitkód hozzáadása után ennek az 
$(x_1{\wedge}x_2)\vee(x_3{\wedge}x_4)$ függvénynek mégis van kifejtése. Mi lesz az eredményül kapott ortogonális DNF?
\item[d)] Permutáljuk úgy az $\{11000,01100,00110,00011,11010\}$ bitkódokat, hogy kifejtést nyerjünk.
\item[e)] Adjunk két bitkódot az $\{110000,011000,001100,000110,000011\}$ halmazhoz olyan sorrendben, hogy kifejtést nyerjünk.
\end{itemize}
\vspace{-2mm}
\ujgyak\label{gyak711-36} \sz{M21} Folytatva a \ref{gyak711-35}. gyakorlatot, legyen $f$ egy monoton és nem azonosan 1 függvény. 
Mutassuk meg, hogy bitvektoroknak a  
$$B=\{\,x\mid f(x)=1\ \hbox{és}\ f(x')=0\,\}, \qquad x'=x\&(x{-}1)$$
halmaza, amikor lexikografikusan csökkenõ sorrendben\gyakindex{lexikografikus sorrend = lexicographic order} listázzuk, 
kifejtés. (Az $x'$ vektort az $x$-bõl a legjobboldalibb 1 kinullázásával nyerjük.) Az $(1100,1011,0111,0011)$ listából például 
ez a módszer az $(x_1{\wedge}x_2)\vee(x_3{\wedge}x_4)$ ortogonális DNF-jét állítja elõ. 
\ujgyak\label{gyak711-37} \sz{M31} 
Keressünk $(x_1{\wedge}x_2)\vee (x_3{\wedge}x_4)\vee\cdots\vee(x_{2n-1}{\wedge}x_{2n})$-hez $2^n-1$ implikánst tartalmazó 
kifejthetõ DNF-et, és bizonyítsuk be, hogy ehhez a függvényhez nincs kevesebb implikánst tartalmazó ortogonális DNF.
\ujgyak\label{gyak711-38} \sz{05} 
Vajon nehéz \textit{diszjunktív}\gyakindex{diszjunktív normálforma = disjunctive normal form} normálformában megadott függvények 
kielégíthetõségét\gyakindex{kielégíthetõség = satisfiability} tesztelni?
\ujgyak \label{gyak711-39} \sz{25} Legyen $f(x_1,\ldots,x_n)$ $N$ belsõ csúccsal és $N-1$ levéllel rendelkezõ, kiterjesztett 
bináris fával\gyakindex{bináris fa = binary tree} reprezentált Boole-formula. A leveleket egy-egy $x_k$ változóval, a belsõ 
csúcsokat a \ref{tablazat71-1}. táblázatbeli tizenhat bináris mûvelet közül eggyel-eggyel címkézzük. A mûveleteket lentõl 
felfelé alkalmazva a gyökér értékeként $f(x_1,\ldots,x_n)$-t kapjuk.

Derítsük ki, hogyan konstruáljunk egy pontosan $4N+1$ klózt tartalmazó $F(x_1,\ldots,x_n,y_1,\ldots, \allowbreak y_N)$ 3KNF formulát úgy, 
hogy $f(x_1,\ldots,x_n)=\exists y_1\ldots\exists y_N F(x_1,\ldots,x_n,y_1,\ldots,y_N)$.
(Ekképpen $f$ akkor és csak akkor elégíthetõ ki, ha $F$ is.)
\ujgyak\label{gyak711-40} \sz{23} 
Adott $G$ irányítatlan gráfban a $\{p_{uv}\;\mid\;u\neq v\}\cup
\{q_{uvw}\;\mid\;u\neq v,\,u\neq w,\,v\neq w,\,u\nadj w\}$ Boole-változókon, ahol $u$, $v$
és $w$ $G$ csúcsait jelölik, konstruáljuk meg a következõ klózokat:
\begin{align*}
A&=\bigwedge\{(p_{uv}\vee p_{vu})\wedge(\bar p_{uv}\vee\bar p_{vu})\mid u\neq v\};\\
B&=\bigwedge\{(\bar p_{uv}\vee\bar p_{vw}\vee p_{uw})\mid u\neq v,\,u\neq w,\,v\neq w\};\\
C&=\bigwedge\{(\bar q_{uvw}{\vee}p_{uv})\wedge(\bar q_{uvw}{\vee}p_{vw})\wedge(q_{uvw}{\vee}\bar p_{uv}{\vee}\bar p_{vw})\mid
 u\neq v,\,u\neq w,\,v\neq w,\,u\nadj w\};\\
D&=\bigwedge\{\bigl({\textstyle\bigvee_{v\notin\{u,w\}}(q_{uvw}\vee q_{wvu})}\bigr)\,\mid\,u\neq w,\,u\nadj w\}.
\end{align*}
Bizonyítsuk be, hogy az $A\wedge B\wedge C\wedge D$ formula akkor és csak akkor elégíthetõ ki, ha $G$-ben van 
Hamilton-út\gyakindex{Hamilton-út = Hamiltonian path}. \textit{Útmutatás:} Gondoljunk $p_{uv}$-re mint az \idez{$u<v$} állításra.
\ujgyak \label{gyak711-41} \sz{20} 
(A skatulya elv.\gyakindex{skatulya elv = pigeonhole principle}\gyakindex{galambdúc elv, 
\textit{lásd} skatulya elv = pigeonhole principle}) San Serriffe szigetén $m$ galamb és $n$ galambdúc van. Keressük meg azt a 
konjunktív normálformát, amelyik akkor és csak akkor elégíthetõ ki, ha minden galamb legalább egy galambdúc egyedüli lakója.
\ujgyak \label{gyak711-42} \sz{20} Keressünk olyan rövid és kielégíthetetlen KNF-et, ami nem teljesen triviális, jóllehet 
kizárólag olyan Horn-klózokból\gyakindex{Horn-klóz = Horn clause} áll, melyek egyúttal Krom-klózok 
is.\gyakindex{Krom-klóz = Krom close}
\ujgyak\label{gyak711-43} \sz{20} Van-e hatékony módszer arra, hogy eldöntsük, kielégíthetõ-e egy olyan konjunktív 
normálforma, amelyik kizárólag Horn-klózokból\gyakindex{Horn-klóz = Horn clause} és/vagy 
Krom-klózokból\gyakindex{Krom-klóz = Krom clause} (esetleg vegyesen mindkettõbõl) áll.
\ujgyak\label{gyak711-44} \sz{M23} Egészítsük ki a H tétel bizonyítását a (\ref{keplet711-33}) implikációk vizsgálatával.
\ujgyak\label{gyak711-45} \sz{M20} (a) Mutassuk meg, hogy az $n$-változós Horn-függvényeknek pontosan a fele 
definit\gyakindex{definit Horn-függvény = definite Horn function}. (b) Mutassuk meg azt is, hogy több olyan $n$-változós Horn-függvény 
van, mint $n$-változós monoton függvény\gyakindex{monoton függvény = monotone function} (kivéve, ha $n=0$).
\ujgyak\label{gyak711-46} \sz{20} A $11\times 11$ különbözõ \texttt{xy} karakterpár közül melyek azok, amelyekben a karakterek 
a (\ref{keplet711-34}) környezetfüggetlen nyelvtan\gyakindex{környezetfüggetlen nyelvtan = context-free grammar} szerint 
elõfordulhatnak egymás után?
\ujgyak \label{gyak711-47} \sz{20} Ha adott $j\prec k$ relációknak egy olyan sorozata, mint a 
(topologikus rendezés\gyakindex{topologikus rendezés = topological sorting}) 2.2.3.T algoritmusában, vizsgáljuk meg az
$$\postdisplaypenalty=10000
x_{j_1}\wedge\cdots\wedge x_{j_t}\Rightarrow x_k,
  \qquad\hbox{$1\le k\le n$}$$
klózokat, ahol $\{j_1,\ldots,j_t\}$ azon elemek halmaza, melyekre $j_i\prec k$. Vessük össze ezeken a klózokon a C algoritmus 
viselkedését a 2.2.3.T algoritmus viselkedésével.  
\ujgyak \label{gyak711-48} \sz{20} 
Milyen jó módszer segítségével lehetne ellenõrizni, hogy Horn-klózok valamely halmaza kielégíthetõ-e?
\ujgyak \label{gyak711-49} \sz{22} Mutassuk meg, hogy ha egy KNF-ben $f(x_1,\ldots,x_n)$ és $g(x_1,\ldots,x_n)$ Horn-klózok, 
akkor könnyen lehet ellenõrizni, vajon teljesül-e minden $x_1$, \dots,~$x_n$-re $f(x_1,\ldots,x_n)\le g(x_1,\ldots,x_n)$.
\ujgyak\label{gyak711-50} \sz{HM42} 
$n$ változó esetén $(n+2)2^{n-1}$ lehetséges Horn-klóz van. Ismétlést is megengedve válasszunk ki közülük véletlenül 
$c\cdot2^n$ klózt ($c>0$). Legyen $P_n(c)$ annak a valószínûsége, hogy a kiválasztott klózok egyidejûleg kielégíthetõk. 
Bizonyítsuk be, hogy
$$\def\\#1{(1{-}e^{-#1c})}
\lim_{n\to\infty}P_n(c)\;=\;1-\\{}\\2\\4\\8\ldots{} \koz.$$
\vspace{-2mm}
\ujgyak \label{gyak711-51} \sz{22} 
Számos kétszemélyes játék\gyakindex{játék = game} definiálható irányított gráf segítségével, ahol az egyes csúcsok 
a játék egyes pozícióit reprezentálják. Két játékos van, Alice és Bob, akik egy konkrét csúcsból indulva, felváltva, 
egy-egy lépésben egy-egy éllel építik az irányított utat. Mielõtt a játék elkezdõdik, minden csúcsot vagy A-val 
(jelentése: Alice nyer), vagy B-vel (jelentése: Bob nyer), vagy C-vel (jelentése: a cica nyer)\gyakindex{cica nyer = cat's game} 
jelölünk, vagy pedig jelöletlen marad a csúcs. 

Ha az út egy A-val vagy B-vel jelölt $v$ csúcsba ér, az illetõ játékos nyer. A játék nyertes nélkül fejezõdik be, ha $v$-t 
az illetõ játékos már korábban is elérte. Ha $v$ egy C-vel jelölt csúcs, az éppen aktív játékosnak lehetõsége van, hogy 
elfogadja a döntetlent, vagy pedig egy innen kiinduló élt válasszon az út folytatásához, majd a másik játékos lesz aktív. 
(Ha $v$ egy nulla kimenõ fokszámú jelöletlen csúcs, az aktív játékos veszít.)

A gráf csúcsaihoz rendeljük hozzá az $A^+(v)$, $A^-(v)$, $B^+(v)$ és $B^-(v)$ ítéletváltozókat. Tisztázzuk, hogyan kell 
megkonstruálni definit Horn-klózoknak\gyakindex{Horn-klóz = Horn clause} olyan halmazát, hogy $A^+(v)$ akkor és csak akkor 
legyen a magban\gyakindex{Horn-függvény magja = core of a Horn function}, ha Alice ki tudja harcolni a gyõzelmet 
a $v$-ben kezdõdõ úton, ha õ kezd; $B^+(v)$ és $B^-(v)$ hasonló jelentéssel bír, mint $A^+(v)$ és $A^-(v)$, csak a szerep fordul.
\ujgyak \label{gyak711-52} \sz{25} (\textit{Boole-játékok.}\gyakindex{Boole-játék = Boolean game}) 
Egy $f(x_1,\ldots,x_n)$ Boole-függvény az úgynevezett 
\idez{két lépést elõre, egy lépést hátra}\angolnevindex{Lenin, Vlagyimir Iljics ({\rus Lenin, Vladimir~Ilp1ich})} 
játékhoz vezethet a következõ módon: van két játékos, 0 és 1, akik rendre értékeket rendelnek az $x_j$ változókhoz; az $y$ 
játékos azt próbálja meg elérni, hogy $f(x_1,\ldots,x_n)$ $y$ legyen. Kezdetben nincs a változókhoz érték rendelve, és az 
$m$ pozíciójelzõ nulla. A játékosok felváltva lépnek, és az aktuális aktív játékos vagy úgy dönt, hogy legyen $m\gets m+2$ 
(ha $m+2\le n$), vagy pedig úgy, hogy legyen $m\gets m-1$ (ha $m-1\ge 1$), aztán pedig legyen
$$\begin{cases}
x_m\gets 0 \mbox { vagy } 1,& \mbox{ha $x_m$-hez nem volt korábban érték rendelve;}\cr
x_m\gets\bar x_m,         & \mbox{ha $x_m$-hez már volt korábban érték rendelve.}
\end{cases}$$
A játéknak vége, mihelyt minden változónak értéke van; ekkor $f(x_1,\ldots,x_n)$ a gyõztes. Döntetlenül végzõdik a játék, 
ha ugyanazt az állapotot (beleértve $m$ értékét is) a játékosok másodjára érik el. Vegyük észre, hogy minden lépés során 
legfeljebb négyféle módosítás lehetséges. 

Tanulmányozzuk a játékot a következõ négy esetben, ha $2\le n\le 9$:
\begin{itemize}
\item[a)] $f(x_1,\ldots,x_n)=[x_1\ldots x_n<x_n\ldots x_1]$ (lexikografikus 
sorrend\gyakindex{lexikografikus sorrend = lexicographic order} szerint);
\item[b)] $f(x_1,\ldots,x_n)=x_1\xor\cdots\xor x_n$;
\item[c)] $f(x_1,\ldots,x_n)=[x_1\ldots x_n$ nem tartalmaz két egymást követõ 1-est$]$;
\gyakindex{egymást követõ 1-esek = consecutive 1's}
\item[d)] $f(x_1,\ldots,x_n)=[(x_1\ldots x_n)_2$ prím$]$.
\end{itemize}
\vspace{-2mm}
\ujgyak\label{gyak711-53}
\sz{23} Mutassuk meg, hogy a (\ref{keplet711-37}) megvalósíthatatlan humorfesztivál\gyakindex{humorfesztivál = comedy festival} 
programbeosztása már akkor is elkészíthetõ, ha csak (a) Tomlin;\angolnevindex{Tomlin, Mary Jean (= Lily)} (b) Unwin; (c) Vegas; 
(d) Xie; (e) Yankovic vagy (f) Zany szerzõdése változik.
\ujgyak\label{gyak711-54} \sz{20} Legyen $S=\{u_1,u_2,\ldots,u_k\}$ egy 2KNF formulához tartozó (a \ref{abra70-6}. ábrán 
láthatóhoz hasonló) irányított gráf valamely erõs komponensében a literálok halmaza. Mutassuk meg, hogy $S$ akkor és csak 
akkor tartalmaz egy változót és komplemensét is, ha $u_j=\bar u_1$ valamely $2\le j\le k$-ra.
\vspace{-4mm}
\ujgyak\label{gyak711-55} \sz{30} 
Nevezzük $f(x_1,\ldots,x_n)$-t \textit{átnevezett Horn-függvénynek}\gyakindex{átnevezett Horn-függvény = renamed Horn function}, 
ha vannak olyan $y_1$, \dots,~$y_n$ Boole-konstansok,\gyakindex{Boole-konstans = Boole constant} melyek mellett 
$f(x_1\xor y_1,\ldots,x_n\xor y_n)$ Horn-függvény.
\begin{itemize}
\item[a)] Egy KNF-ben megadott $f(x_1,\ldots,x_n)$ esetén tisztázzuk, hogyan konstruálható meg 2KNF-ben egy olyan $g(y_1,\ldots,y_n)$, 
melyre $g(y_1,\ldots,y_n){=}1$ akkor és csak akkor, amennyiben $f(x_1\xor y_1, \ldots,x_n\xor y_n)$ klózai Horn-klózok.
\item[b)] Tervezzünk algoritmust, amely $O(m)$ lépésben eldönti, vajon a változók valamely részhalmazának komplementálásával 
Horn-klózokká lehet-e alakítani egy adott $m$ hosszúságú KNF klózait.
\end{itemize}
\vspace{-4mm}
\ujgyak\label{gyak711-56} \sz{20} 
Egy $f(x_1,x_2,\ldots,x_n)$ Boole-függvényre vonatkozó kielégíthetõségi problémát a következõ kérdésként is megfogalmazhatjuk: vajon a
$$\exists x_1\,\exists x_2\ldots\,\exists x_n\,f(x_1,x_2,\ldots,x_n)$$
kvantált formula\gyakindex{kvantált formula = quantified formula} igaz-e. A \idez{$\exists x_j\,\alpha$} azt jelenti, hogy 
\idez{van olyan $x_j$ Boole-érték, hogy $\alpha$ teljesül}.

Egy sokkal általánosabb kiértékelési probléma keletkezik, amikor egy vagy több $\exists x_j$ egzisztenciális 
kvantort\gyakindex{egzisztenciális kvantor = existential quantifier} $\forall x_j$ univerzális 
kvantorra\gyakindex{univerzális kvantor = universal quantifier} cserélünk, ahol \idez{$\forall x_j\,\alpha$} azt jelenti, 
hogy \idez{minden $x_j$ Boole-értékre $\alpha$ teljesül.}

A nyolc kvantált
$\exists x\,\exists y\,\exists z\,f(x,y,z)$,
$\exists x\,\exists y\,\forall z\,f(x,y,z)$, \dots,
$\forall x\,\forall y\,\forall z\,f(x,y,z)$ formula közül melyek igazak, amikor
$f(x,y,z)=(x{\vee}y)\wedge(\bar x{\vee}z)\wedge(y{\vee}\bar z)$?
\ujgyak \label{gyak711-57} \sz{30} (Aspvall\angolnevindex{Aspvall, Bengt Ingemar}, Plass\angolnevindex{Plass, Michael Frederick} és 
Tarjan\angolnevindex{Tarjan, Robert Endre} \cite{Aspvall????}.)
Folytatva az \ref{gyak711-56}. gyakorlatot, tervezzünk algoritmust, amely lineáris idõben eldönti, vajon egy adott 
teljesen kvantált $f(x_1,\ldots,x_n)$ formula igaz-e, amikor $f$ 2KNF formula (Krom-klózok\gyakindex{Krom-klóz = Krom clause} 
konjunkciója).
\ujgyak\label{gyak711-58} \sz{37} Folytatva az \ref{gyak711-57}. gyakorlatot, tervezzünk hatékony algoritmust, ami eldönti, 
vajon Horn-klózok\gyakindex{Horn-klóz = Horn clause} adott teljesen kvantált konjunkciója igaz-e.
\ujgyak\label{gyak711-59} \sz{M20} (Pehoushek\angolnevindex{Pehoushek, Joseph Daniel} és 
Fraer\angolnevindex{Fraer, Ranan}, \cite{Pehoushek1997}.) 
Mutassuk meg, hogy ha $f(x_1,x_2,\ldots,x_n)$ igazságtáblája pontosan $k$ helyen 1,  akkor a teljesen kvantált 
$Qx_1\,Qx_2\,\ldots Qx_n\,f(x_1,x_2,\ldots,x_n)$ formulák közül pontosan $k$ igaz, ahol $Q$ vagy $\exists$, vagy $\forall$.
\ujgyak\label{gyak711-60} \sz{12} 
A következõ kifejezések közül melyik szolgáltatja a (\ref{keplet711-43})-ban definiált $\langle xyz\rangle$ mediánt?
(a)~$(x{\wedge}y)\xor(y{\wedge}z)\xor(x{\wedge}z)$.
(b)~$(x{\vee}y)\xor(y{\vee}z)\xor(x{\vee}z)$.
(c)~$(x{\xor}y)\wedge(y{\xor}z)\wedge(x{\xor}z)$.\\
(d)~$(x{\leqv}y)\xor(y{\leqv}z)\xor(x{\leqv}z)$.
(e)~$(x{\nand}y)\wedge(y{\nand}z)\wedge(x{\nand}z)$.
(f)~$(x{\nand}y)\vee(y{\nand}z)\vee(x{\nand}z)$.
\ujgyak \label{gyak711-61}
% [13] True or false: If $\circ$ is any one of the Boolean binary
% operations in Table~1, we have the ^{distributive law} $w\circ\<xyz\>=
% \<(w{@\circ@}x)(w{@\circ@}y)(w{@\circ@}z)\>$.
\sz{13} Igaz-e vagy hamis a következõ állítás? A $w\circ\langle xyz\rangle =\langle (w{\circ}x)(w{\circ}y)(w{\circ}z)\rangle$ disztributivitás törvény\index{disztributivitás törvény = distributive law} a \ref{tablazat71-1}. táblázat bármelyik $\circ$ kétváltozós Boole-mûvelete esetén érvényes.
\ujgyak \label{gyak711-62}
% [25] (C. ^{Schensted}.) If $f(x_1,\dots,x_n)$
% is a ^{monotone Boolean function} and $n\ge3$, prove the
% ^{median expansion formula}
% $$\kern-5ptf(x_1,\ldots,x_n)=\bigl<f(x_1,x_1,x_3,x_4,\ldots,x_n)@
%                           f(x_1,x_2,x_2,x_4,\ldots,x_n)@
%                          f(x_3,x_2,x_3,x_4,\ldots,x_n)\bigr>.\kern-5pt$$
\sz{25} (Schensted\angolnevindex{Schensted}.) Bizonyítsuk be, hogy  
$$f(x_1,\ldots,x_n)=\bigl<f(x_1,x_1,x_3,x_4,\ldots,x_n)
                          f(x_1,x_2,x_2,x_4,\ldots,x_n)
                          f(x_3,x_2,x_3,x_4,\ldots,x_n)\bigr>,$$
ha $f(x_1,\dots,x_n)$ monoton Boole-függvény\index{monoton Boole-függvény = monotone Boolean function}, és $n\ge3$.                          
\index{medián expanziós formula = median expansion formula}
\ujgyak \label{gyak711-63}
% [20] Equation \eq(49) shows how to compute the median of five elements
% via medians of~three. Conversely, can we compute $\<xyz\>$ with a subroutine
% for ^{medians of~five}?
\sz{20} A (\ref{gyak711-49}) egyenlõség megmutatja, hogyan kell kiszámítani öt elem mediánját háromváltozós medián segítségével. Megfordítva, ki tudjuk vajon $\langle xyz\rangle$-t is számolni öt elem mediánjára\index{öt elem mediánja = median of~five} vonatkozó eljárás segítségével?
\ujgyak \label{gyak711-64}
% [23] (S. B. ^{Akers}, Jr.) (a) Prove that a Boolean
% function~$f(x_1,\ldots,x_n)$
% is monotone and self-dual if and only if it satisfies the following condition:
% $$\kern-4pt
% \hbox{For all $x=x_1\ldots x_n$ and $y=y_1\ldots y_n$ there exists $k$
% such that $f(x)=x_k$ and $f(y)=y_k$.\kern-4pt}$$
% (b) Suppose $f$ is undefined for certain values, but the stated condition
% holds whenever both $f(x)$ and $f(y)$ are defined. Show that there is a
% monotone self-dual Boolean function~$g$ for which $g(x)=f(x)$ whenever
% $f(x)$ is defined.
\sz{23} (Akers\angolnevindex{Akers}.) (a) Bizonyítsuk be, hogy egy $f(x_1,\ldots,x_n)$ Boole-függvény akkor és csak akkor monoton és önduális, ha kielégíti a következõ feltételt:
$$\hbox{minden $x=x_1\ldots x_n$-re és $y=y_1\ldots y_n$-re van olyan $k$, hogy $f(x)=x_k$ és $f(y)=y_k$.}$$
(b) Tegyük fel, hogy $f$ néhány érték esetén nincs definiálva, de az elõbbi feltétel mindig teljesül, amikor $f(x)$ is, $f(y)$ is definiált. Mutassuk, meg, hogy van olyan monoton és önduális $g$ Boole-függvény, hogy $g(x)=f(x)$, amikor $f(x)$ definiált.
\ujgyak \label{gyak711-65}
% [M21] Any subset $X$ of $\{1,2,\ldots,n\}$ corresponds to a binary
% vector $x=x_1x_2\ldots x_n$ via the rule $x_j=\[j\in X]$. And any family
% ^^{families of subsets}
% $\cal F$ of such subsets corresponds to a Boolean function
% $f(x)=f(x_1,x_2,\ldots,x_n)$ of $n$ variables, via the rule
% $f(x)=\[X\in{\cal F}]$. Therefore every statement about families of subsets
% corresponds to a statement about Boolean functions, and vice versa.
\sz{M21} $\{1,2,\ldots,n\}$ bármely $X$ részhalmazához hozzárendelhetünk az $x_j=[j\in X]$ szabállyal egy $x=x_1x_2\ldots x_n$ bináris
vektort. És ilyen részhalmazok bármely $\cal F$ családjához pedig az $f(x)=[X\in{\cal F}]$ szabállyal hozzárendelhetünk egy $n$-változós $f(x)=f(x_1,x_2,\ldots,x_n)$ Boole-függvényt. Így a részhalmazok családjairól szóló minden állításnak egy Boole-függvényekrõl szóló állítás felel meg, és viszont.

% A family $\cal F$ is called {\it^{intersecting}\/} if $X\cap Y\ne\emptyset$
% whenever $X,Y\in\cal F$. An intersecting family that loses this property
% whenever we try to add another subset is said to be {\it maximal}.
% ^^{intersecting families of sets} ^^{maximal intersecting families}
% ^^{monotone self-dual functions}
% Prove that $\cal F$ is a maximal intersecting family if and only if the
% corresponding Boolean function~$f$ is monotone and self-dual.
Egy $\cal F$ család \textit{egymást metszõ}\index{halmazok egymást metszõ családja = intersecting family of sets}, ha $X\cap Y\ne\emptyset$, amikor $X,Y\in\cal F$. Egy olyan egymást metszõ családot, amely elveszíti ezt a tulajdonságot, amikor megpróbálunk hozzáadni egy másik részhalmazt, \textit{maximálisnak} nevezünk. Bizonyítsuk be, hogy $\cal F$ akkor és csak akkor maximális egymást metszõ család, ha a megfelelõ $f$ Boole-függvény monoton és önduális.
\ujgyak \label{gyak711-66}
% [M25] A {\it^{coterie}\/} of $\{1,\ldots,n\}$ is a family~$\cal C$
% of subsets called {\it^{quorums}}, which have the following properties
% whenever $Q\in\cal C$ and $Q'\in\cal C$: (i)~$Q\cap Q'\ne\emptyset$;
% (ii)~$Q\subseteq Q'$ implies $Q=Q'$. Coterie~$\cal C$ {\it^{dominates}\/}
% coterie~$\cal C'$ if $\cal C\ne\cal C'$ and if, for every $Q'\in\cal C'$,
% there is a $Q\in\cal C$ with $Q\subseteq Q'$. For example, the coterie
% $\{\{1,2\},\{2,3\}\}$ is dominated by
% $\{\{1,2\},\{1,3\},\{2,3\}\}$ and also by $\{\{2\}\}$.
% [Coteries were introduced in classic papers by L.~^{Lamport},
% {\sl CACM\/ \bf21} (1978), 558--565; H.~^{Garcia-Molina} and D.~^{Barbara},
% {\sl JACM\/ \bf32} (1985), 841--860. They have numerous applications
% to ^{distributed system} protocols, including ^{mutual exclusion},
% ^{data replication}, and ^{name servers}. In these applications $\cal C$
% is preferred to any coterie that it dominates.]\par
\sz{M25} $\{1,\ldots,n\}$ \textit{klikkje}\index{klikk = coterie} \textit{kvórumoknak} nevezett\index{kvórum = quorum} részhalmazok következõ tulajdonságokkal rendelkezõ $\cal C$ családja: minden $Q\in\cal C$ és $Q'\in\cal C$ esetén (i)~$Q\cap Q'\ne\emptyset$; (ii)~$Q\subseteq Q'$ maga után vonja $Q=Q'$-t. A $\cal C$ klikk \textit{dominálja}\index{dominál = dominates} a $\cal C'$ klikket, ha $\cal C\ne\cal C'$, és ha minden $Q'\in\cal C'$-hez van olyan $Q\in\cal C$, hogy $Q\subseteq Q'$. Például az $\{\{1,2\},\{2,3\}\}$ klikket dominálja $\{\{1,2\},\{1,3\},\{2,3\}\}$, és $\{\{2\}\}$ is. (A klikkeket Lamport\angolnevindex{Lamport}, illetve Garcia-Molina\angolnevindex{Garcia-Molina} és Barbara\angolnevindex{Barbara} vezették be \cite{Lamport1978} és \cite{Garcia1985} klasszikus dolgozataikban. Ezek a dolgozatok számos alkalmazást tartalmaznak elosztott rendszerek\index{elosztott rendszer = distributed system} protokoljaival kapcsolatban, felölelve a kölcsönös kizárás\index{kölcsönös kizárás = mutual exclusion}, az adat többszörözés\index{adat többszörözés = data replication} és a névkiszolgálók\index{névkiszolgáló = name server} témáit is. Ezekben az alkalmazásokban $\cal C$ bármelyik olyan klikknél elõnyösebb, mint amelyet dominál.)

% Prove that $\cal C$ is a nondominated coterie if and only if its quorums are
% the index sets of variables in the prime implicants of a monotone
% self-dual Boolean function $f(x_1,\ldots,x_n)$. (Thus Table~2 illustrates
% the nondominated coteries on $\{1,2,3,4\}$.)
Bizonyítsuk be, hogy $\cal C$ akkor és csak akkor nemdominált klikk, ha kvórumjai éppen valamely monoton önduális $f(x_1,\ldots,x_n)$ Boole-függvény prímimplikánsaiban szereplõ változóknak az indexhalmazai. (Tehát a \ref{tablazat71-2}. táblázat $\{1,2,3,4\}$ nemdominált klikkjeit szemlélteti.)

\noindent\parbox{10,9cm}{
\ujgyak \label{gyak711-67}
% [M30] (J. W. ^{Milnor} and C. ^{Schensted}.)
% A ^{triangular grid} of order~$n$,
% illustrated here for $n=3$, contains $(n+2)(n+1)/2$ points with nonnegative
% ``^{barycentric coordinates}'' $xyz$, where
% $x+y+z=n$. Two points are adjacent if they differ by $\pm1$ in
% exactly two coordinate positions. A point is said to lie on the
% $x$~side if its $x$ coordinate is zero, on the
% $y$~side if its $y$ coordinate is zero, or on the
% $z$~side if its $z$ coordinate is zero; thus each side contains
% $n+1$ points. If $n>0$, a point lies on two different sides if and only if it
% occupies one of the three corner positions. 
% \hangindent-75pt \hangafter-6
% \hfill\smash{\raise 25pt\hbox{\epsfbox{\figdir/v4a.82}}}\tighten\par
\sz{M30} (Milnor\angolnevindex{Milnor} és Schensted\angolnevindex{Schensted}.) Egy $n$-ed rendû háromszögrács\index{háromszögrács = triangular grid} $(n+2)(n+1)/2$ pontot tartalmaz, ha olyan nemnegatív $xyz$ \idez{baricentrikus koordinátákkal}\index{baricentrikus koordináta = barycentric coordinate} rendelkezik, melyekre $x+y+z=n$ teljesül. Két pont szomszédos, ha egymástól pontosan két koordináta-pozícióban $\pm1$-gyel különböznek. Egy pont a háromszögrács $x$ oldalán fekszik, ha az $x$ koordinátája nulla, $y$ oldalán, ha az $y$ koordinátája nulla, $z$ oldalán, ha a $z$ koordinátája nulla; így minden oldal $n+1$ pontot tartalmaz. Ha $n>0$, egy pont akkor és csak akkor fekszik két különbözõ oldalon is, ha a három sarokpozíció valamelyikét foglalja el.}
\ \hspace{0,1cm} \
\parbox{2cm}{
\epsfbox{\figdir/v4a.82}}


% A ``^{Y}'' is a connected set of points with at least one point on each side.
% Suppose each vertex of a triangular grid is covered with a white stone
% or a black stone. For example, the 52 black stones in
% $$\vcenter{\epsfbox{\figdir/v4a.83}}$$
% contain a (somewhat distorted) Y; but if any of them is changed from
% black to white, there is a white~Y instead.
% A moment's thought makes it intuitively clear that, in any placement, the black
% stones contain a~Y if and only if the white stones do not.
Pontok olyan összefüggõ halmazát, amely a rács minden oldaláról legalább egy pontot tartalmaz, \idez{Y}-nak\index{Y = Y} nevezzük. Tegyük fel, hogy a háromszögrács minden csúcsában egy fehér vagy egy fekete golyó van. Az alábbi ábrán látható 52 fekete golyó például egy (némileg csavarodó) Y:
\begin{center}\epsfbox{\figdir/v4a.83}\end{center}
Ha bármelyik golyót ezek közül kicseréljük feketérõl fehérre, az elõbbi helyett egy fehér Y-t nyerünk. Ha gyorsan átgondoljuk, intuitíven is világos, hogy bármely elrendezés esetén a fekete golyók akkor és csak akkor alkotnak Y-t, ha a fehér golyók nem.

% We can represent the color of each stone by a Boolean variable,
% ^^{stone representation} % I couldn't resist a dumb joke reference to M H Stone
% with 0~for white and 1~for black. Let $Y(t)=1$ if and only if there's a
% black~Y, where $t$ is a triangular grid comprising
% all the Boolean variables.
% This function~$Y$ is clearly monotone; and the intuitive claim made in the
% preceding paragraph is equivalent to saying that $Y$ is also self-dual.
% The purpose of this exercise is to prove the claim rigorously, using
% median algebra.\tighten
Egy-egy golyó színét Boole-értékkel reprezentálhatjuk: 0-val a fehéret, 1-gyel a feketét. Legyen $Y(t)=1$ akkor és csak akkor, ha fekete Y-unk van, ahol $t$ egy az összes Boole-értéket tartalmazó háromszögrács. Ez az $Y$ függvény nyilvánvalóan monoton; és az elõzõ bekezdésben megfogalmazott intuitív állítás ekvivalens azzal a megállapítással, hogy $Y$ önduális is. A gyakorlat célja a medián algebrák eszközeit használva precízen bebizonyítani az állítást.

% Given $a,b,c\ge0$, let $t_{abc}$ be the triangular subgrid containing all
% points whose coordinates $xyz$ satisfy $x\ge a$, $y\ge b$, $z\ge c$. For
% example, $t_{001}$ denotes all points except those on the $z$~side
% (the bottom row). Notice that, if $a+b+c=n$, $t_{abc}$ is the single point
% with coordinates $abc$; and in general, $t_{abc}$ is a triangular grid of
% order $n-a-b-c$.\tighten
% \breathe
% \item{a)} Prove that, if $n>0$, $Y(t)=\<Y(t_{100})Y(t_{010})Y(t_{001})\>$.
% \breathe
% \item{b)} If $n>0$, let $t^*$ be the triangular grid of order $n-1$
% defined by the rule
% $$t^*_{xyz}=\<t_{(x+1)yz}t_{x(y+1)z}t_{xy(z+1)}\>,\qquad\hbox{for $x+y+z=n-1$}.$$
% Prove that $Y(t)=Y(t^*)$. [In other words, $t^*$ condenses each small
% triangle of stones by taking the median of their colors. Repeating this
% process defines a {\it ^{pyramid}\/} of stones, with the top stone black if and
% only if there is a black~Y at the bottom. It's fun to apply this
% ^{condensation principle} to the twisted~Y above.]
Adott $a,b,c\ge0$ mellett legyen $t_{abc}$ az a rész-háromszögrács, mely az összes olyan $xyz$ koordinátájú pontot tartalmazza, melyre $x\ge a$, $y\ge b$, $z\ge c$. Például $t_{001}$ a $z$ oldalon (alsó soron) fekvõk kivételével az összes többi pontot jelenti. Vegyük észre, hogy ha $a+b+c=n$, akkor $t_{abc}$ az $abc$ koordinátával rendelkezõ egyetlen pontból áll; és általában pedig $t_{abc}$ egy $n-a-b-c$\;-ed rendû háromszögrács.
\begin{itemize}
\item[a)] Bizonyítsuk be, hogy ha $n>0$, akkor $Y(t)=\langle Y(t_{100})Y(t_{010})Y(t_{001})\rangle$.
\item[b)] Ha $n>0$, legyen $t^*$ a
$$t^*_{xyz}=\langle t_{(x+1)yz}t_{x(y+1)z}t_{xy(z+1)}\rangle,\qquad\hbox{ha $x+y+z=n-1$}$$
szabállyal definiált $n-1$\;-ed rendû háromszögrács. Bizonyítsuk be, hogy $Y(t)=Y(t^*)$. (Másképp fogalmazva $t^*$ minden kis golyó-háromszöget összetömörít a golyók színeire vonatkozó mediánozással. Az eljárás ismétlése golyók egy egész \textit{piramisát}\index{piramis = pyramid} definiálja, ahol a felsõ golyó akkor és csak akkor fekete, ha fekete Y van alul. Jó szórakozás ezt a tömörítõ elvet\index{tömörítõ elv = condensation principle} a fenti csavart Y-ra alkalmazni.)
\end{itemize}
\ujgyak \label{gyak711-68}
% [46] The just-barely-Y configuration shown in the previous
% exercise has 52 black stones. What is the largest number of black stones
% possible in such a configuration?
% (That is, how many variables can there be in a ^{prime implicant} of
% the function $Y(t)$?)
\sz{46} Az elõzõ gyakorlatban bemutatott \idez{éppen csak hogy Y} konfigurációban 52 fekete golyó van. Egy ilyen konfigurációban mi a fekete golyók lehetséges legnagyobb száma? (Azaz hány változó lehet az $Y(t)$ függvény egy prímimplikánsában\index{prímimplikáns = prime implicant}?)
\ujgyak \label{gyak711-69}
% [M26] (C. ^{Schensted}.) Exercise 67 expresses the
% $Y$ function in terms of medians. Conversely, let
% $f(x_1,\ldots,x_n)$ be any ^{monotone
% self-dual Boolean function} with $m+1$ prime implicants $p_0$, $p_1$,
% \dots, $p_m$. Prove that $f(x_1,\ldots,x_n)=Y(T)$, where $T$ is
% any triangular grid of order $m-1$ in which $T_{abc}$
% is a variable common to $p_a$ and $p_{a+b+1}$, for $a+b+c=m-1$. For example,
% when $f(w,x,y,z)=\<xwywz\>$ we have $m=3$ and
% $$f(w,x,y,z)=(w\land x)\lor(w\land y)\lor(w\land z)\lor
% (x\land y\land z)=Y\!\?\left(@\vcenter{\baselineskip=6pt
%  \halign{&\hbox to3.5pt{\hss$\scriptstyle#$\hss}\cr
%  &&w\cr
%  &w&&w\cr
%  x&&y&&z\cr}}\right)\!.$$
\sz{M26} (Schensted\angolnevindex{Schensted}.) A \ref{gyak711-67}. gyakorlat az $Y$ függvényt mediánok segítségével fejezi ki. Megfordítva, legyen $f(x_1,\ldots,x_n)$ egy $m+1$ prímimplikánssal, mondjuk a $p_0$, $p_1$,\dots, $p_m$ prímimplikánsokkal rendelkezõ monoton és önduális Boole-függvény\index{monoton önduális Boole-függvény = monotone self-dual Boolean function}. Bizonyítsuk be, hogy $f(x_1,\ldots,x_n)=Y(T)$, ahol $T$ egy $m-1$-ed rendû olyan háromszögrács, amelyben $T_{abc}$ közös változója $p_a$-nak és $p_{a+b+1}$-nek, ha $a+b+c=m-1$. Például amikor $f(w,x,y,z)=\langle xwywz\rangle$, akkor $m=3$, és
$$f(w,x,y,z)=(w\land x)\lor(w\land y)\lor(w\land z)\lor
(x\land y\land z)=Y\left(\vcenter{\baselineskip=6pt
  \halign{&\hbox to3.5pt{\hss$\scriptstyle#$\hss}\cr
  &&w\cr
  &w&&w\cr
  x&&y&&z\cr}}\right).$$
\ujgyak \label{gyak711-70}
% [M20] (A. ^{Meyerowitz}, 1989.) Given any
% monotone self-dual Boolean function
% $f(x)=f(x_1,\ldots,x_n)$, choose any prime implicant
% $x_{j_1}\land\cdots\land x_{j_s}$ and let
% $$g(x)=\bigl(f(x)\land\[@x\ne t@]\bigr)\lor\[@x=\bar t@@],$$
% where $t=t_1\ldots t_n$ is the bit vector that has 1s in positions
% $\{j_1,\ldots,j_s\}$. Prove that $g(x)$ is also monotone and self-dual.
% (Notice that $g(x)$ is equal to~$f(x)$ except at the two points
% $t$ and $\bar t$.)
\sz{M20} (Meyerowitz\angolnevindex{Meyerowitz}, 1989.) Adott monoton és önduális $f(x)=f(x_1,\ldots,x_n)$ Boole-függvény mellett válasszunk egy $x_{j_1}\land\cdots\land x_{j_s}$ prímimplikánst, és legyen $$g(x)=\bigl(f(x)\land [x\ne t]\bigr)\lor [x=\bar t],$$ ahol $t=t_1\ldots t_n$  olyan bitvektor, mely a $\{j_1,\ldots,j_s\}$ pozíciókban 1. Bizonyítsuk be, hogy ekkor $g(x)$ is monoton és önduális. (Vegyük észre, hogy a $t$ és $\bar t$ pontok kivételével $g(x)$ megegyezik $f(x)$-szel.)
\ujgyak \label{gyak711-71}
% [M21] Given the axioms \eq(50), \eq(51), and \eq(52) of a
% ^{median algebra}, prove that the long distributive law~\eq(54)
% is a consequence of the shorter law~\eq(53).
\sz{M21} A medián algebrákra\index{medián algebra = median algebra} vonatkozó (\ref{keplet711-50}), (\ref{keplet711-51}) és (\ref{keplet711-52}) axiómák ismeretében bizonyítsuk be, hogy az (\ref{keplet711-54}) hosszú disztributivitás törvény az (\ref{keplet711-53}) rövidebb törvény következménye.
\ujgyak \label{gyak711-72}
% [M22] Derive \eq(58), \eq(59), and \eq(60) from the
% median laws \eq(50)--\eq(53).
\sz{M22} Vezessük le az (\ref{keplet711-58}), (\ref{keplet711-59}) és (\ref{keplet711-60}) tulajdonságokat a mediánra vonatkozó (\ref{keplet711-50})--(\ref{keplet711-53}) törvényekbõl.
\ujgyak \label{gyak711-73}
% [M32] (S. P. ^{Avann}.) Given a median algebra $M$, whose
% intervals are defined by~\eq(57) and whose
% corresponding median graph is defined by~\eq(61), let $d(u,v)$ denote the
% distance from $u$ to~$v$. Also let `$[uxv]$' stand for the statement
% ``$x$ lies on a shortest path from $u$ to~$v$.''
% \item{a)}Prove that $[uxv]$ holds if and only if $d(u,v)=d(u,x)+d(x,v)$.
% \item{b)}Suppose $x\in[u\dts v]$ and $u\in[x\dts y]$, where $x\ne u$ and
% $y\adj v$ is an edge of the graph. Show that $x\adj u$ is also an edge.
% \item{c)}If $x\in[u\dts v]$, prove $[uxv]$, by induction on $d(u,v)$.
% \item{d)}Conversely, prove that $[uxv]$ implies $x\in[u\dts v]$.
\sz{M32} (Avann\angolnevindex{Avann}.) Egy olyan $M$ medián algebra esetén, mely intervallumait (\ref{keplet711-57}), és melyhez tartozó medián gráfot (\ref{keplet711-61}) definiálja, jelölje $d(u,v)$ az $u$-nak $v$-tõl való távolságát. \idez{$[uxv]$} jelentse, hogy \idez{$x$ egy az $u$-ból $v$-be vezetõ legrövidebb úton fekszik}. 
\begin{itemize}
	\item[a)] Bizonyítsuk be, hogy $[uxv]$ akkor és csak akkor teljesül, ha $d(u,v)=d(u,x)+d(x,v)$.
	\item[b)] Tegyük fel, hogy $x\in[u\dts v]$ és $u\in[x\dts y]$, ahol $x\ne u$, és $y\adj v$ a gráf egy éle. Mutassuk meg, hogy $x\adj u$ is él.
	\item[c)] Ha $x\in[u\dts v]$, bizonyítsuk be $d(u,v)$-re vonatkozó indukcióval, hogy $[uxv]$.
	\item[d)] Megfordítva, bizonyítsuk be, hogy $d(u,v)$ maga után vonja, hogy $x\in[u\dts v]$.
\end{itemize}
\ujgyak \label{gyak711-74}
% [M21] In a median algebra, show that $w=\<xyz\>$ whenever we have
% $w\in[x\dts y]$, $w\in[x\dts z]$, and $w\in[y\dts z]$ according to
% definition~\eq(57).
\sz{M21} Mutassuk meg, hogy egy medián algebrában $w=\langle xyz\rangle$, amikor az (\ref{keplet711-57}) definíciónak megfelelõen $w\in[x\dts y]$, $w\in[x\dts z]$ és $w\in[y\dts z]$. 
\ujgyak \label{gyak711-75}
% [M36] (M. ^{Sholander}, 1954.) Suppose $M$ is a set of points
% with a ^{betweenness} relation ``$x$~lies between $u$ and~$v$,''
% symbolized by $[uxv]$, which satisfies the following three axioms:\breathe
% \item{i)}If $[uvu]$ then $u=v$.
% \item{ii)}If $[uxv]$ and $[xyu]$ then $[vyu]$.
% \item{iii)}Given $x$, $y$, and $z$, exactly one point $w=\<xyz\>$ satisfies
% $[xwy]$, $[xwz]$, and~$[ywz]$.\breathe\noindent
\sz{M36} (Sholander\angolnevindex{Sholander}, 1954.) Tegyük fel, hogy $M$ egy ponthalmaz az \idez{$x$ az $u$ és a $v$ között fekszik}  %közöttlevõség
\index{közöttlevõség = betweenness} $[uxv]$-vel jelölt relációval, mely a következõ három axiómát teljesíti:
\begin{itemize}
	\item[i)] Ha $[uvu]$, akkor $u=v$.
	\item[ii)] Ha $[uxv]$ és $[xyu]$, akkor $[vyu]$.
	\item[iii)] Adott $x$, $y$ és $z$ esetén pontosan egy $w=\langle xyz\rangle$ pont teljesíti, hogy 
$[xwy]$, $[xwz]$ és $[ywz]$.
\end{itemize}
% The object of this exercise is to prove that $M$ is a median algebra.\breathe
% \item{a)}Prove the ^{majority law} $\<xxy\>=x$, Eq.~\eq(50).
% \par\goodbreak
% \item{b)}Prove the ^{commutative law} $\<xyz\>=\<xzy\>=\cdots=\<zyx\>$,
% Eq.~\eq(51).
% \item{c)}Prove that $[uxv]$ if and only if $x=\<uxv\>$.
% \item{d)}If $[uxy]$ and $[uyv]$, prove that $[xyv]$.
% \item{e)}If $[uxv]$ and $[uyz]$ and $[vyz]$, prove that $[xyz]$. \em Hint:
% Construct the points $w=\<yuv\>$, $p=\<wux\>$, $q=\<wvx\>$, $r=\<pxz\>$, $s=\<qxz\>$,
% and $t=\<rsz\>$.
% \item{f)}Finally, deduce the short ^{distributive law}, Eq.~\eq(53):
% $\bigl<\<xyz\>uv\bigr>=\bigl<x\<yuv\>\<zuv\>\bigr>$.
A gyakorlat célja bebizonyítani, hogy $M$ medián algebra.
\begin{itemize}
	\item[a)] Bizonyítsuk be az $\langle xxy\rangle =x$ majoritás törvényt\index{majoritás törvény = majority law}, azaz (\ref{keplet711-50})-t. 
	\item[b)] Bizonyítsuk be az $\langle xyz\rangle =\langle xzy\rangle =\cdots=\langle zyx\rangle $ kommutativitás törvényt\index{kommutativitás törvény = commutative law}, azaz (\ref{keplet711-51})-et.
	\item[c)] Bizonyítsuk be, hogy $[uxv]$ akkor és csak akkor, ha $x=\langle uxv\rangle $.
	\item[d)] Bizonyítsuk be, hogy $[xyv]$, ha $[uxy]$ és $[uyv]$.
	\item[e)] Bizonyítsuk be, hogy $[xyz]$, ha $[uxv]$, $[uyz]$ és $[vyz]$. \emph{Segítség:} Konstruáljuk meg a $w=\langle yuv\rangle $, $p=\langle wux\rangle $, $q=\langle wvx\rangle $, $r=\langle pxz\rangle $, $s=\langle qxz\rangle $ és $t=\langle rsz\rangle $ pontokat.
	\item[f)] Végül vezessük le az (\ref{keplet711-53}) rövid disztributivitás törvényt\index{distributive law}: $\bigl<\langle xyz\rangle uv\bigr>=\bigl<x\langle yuv\rangle \langle zuv\rangle \bigr>$.
\end{itemize}
\ujgyak \label{gyak711-76}
% [M33] Derive the betweenness axioms (i), (ii), and (iii) of
% exercise~75, starting from the three median axioms \eq(50), \eq(51), and
% \eq(52), letting $[uxv]$ be an abbreviation for ``$x=\<uxv\>$.'' Do not use
% the distributive law~\eq(53). \em Hint: See exercise~74.
\sz{M33} Származtassuk most a \ref{gyak711-75}. gyakorlatbeli \idez{közöttlevõség} relációra vonatkozó (i), (ii) és (iii) axiómákat úgy, hogy az (\ref{keplet711-50}), (\ref{keplet711-51}) és (\ref{keplet711-52}) medián axiómákból induljunk ki, az $[uxv]$-t pedig az \idez{$x=\langle uxv\rangle$} rövidítésének tekintsük. Ne használjuk az (\ref{keplet711-53}) disztributivitás törvényt. \emph{Segítség:} Lásd a \ref{gyak711-74}. gyakorlatot.
\ujgyak \label{gyak711-77}
% [M28] Let $G$ be a median graph containing the edge $r\adj s$.
% For each edge $u\adj v$, call $u$ an {\it^{early neighbor}\/} of~$v$ 
% if and only if $r$ is closer to~$u$ than to~$v$.
% Partition the vertices into ``left'' and
% ``right'' parts, where left vertices are closer to~$r$ than to~$s$ and right
% vertices are closer to $s$ than to~$r$. Each right vertex $v$ has a {\it rank},
% which is the shortest distance from~$v$ to a left vertex. Similarly, each left
% vertex~$u$ has rank $1-d$, where
% $d$ is the shortest distance from $u$ to a right vertex. Thus $u$ has
% rank zero if it is adjacent to a right vertex, otherwise its rank is
% negative. Vertex~$r$ clearly has rank~0, and $s$~has rank~1.
% \breathe
% \item{a)}Show that every vertex of rank 1 is adjacent to exactly one vertex of
% rank~0.
% \item{b)}Show that the set of all right vertices is ^{convex}.
% \item{c)}Show that the set of all vertices with rank~1 is convex.
% \item{d)}Prove that steps I3--I9 of Subroutine I correctly mark all
% vertices of ranks 1 and~2.
% \item{e)}Prove that Algorithm H is correct.
\sz{M28} Legyen $G$ az $r\adj s$ élt tartalmazó medián gráf. Egy $u\adj v$ él esetén $u$-t akkor és csak akkor nevezzük $v$ \textit{közeli szomszédjának}\index{közeli szomszéd = early neighbor}, ha $u$-hoz $r$ közelebb van, mint $v$-hez. Osszuk szét a csúcsokat \idez{bal} és \idez{jobb} csúcsokra, ahol a bal csúcsok közelebb vannak $r$-hez, mint $s$-hez, és a jobb csúcsok pedig közelebb vannak $s$-hez, mint $r$-hez. Egy $v$ jobb csúcs \textit{szintszáma} a bal csúcsok $v$-tõl való legkisebb távolsága. Ehhez hasonlóan, egy $u$ bal csúcs $1-d$ szintszámú, ha $d$ a jobb csúcsok $u$-tól való legkisebb távolsága. Ezért $u$ szintszáma nulla, ha valamelyik jobb csúccsal szomszédos, egyébként szintszáma negatív. Az $r$ csúcs nyilván 0 szintszámú, $s$ pedig 1 szintszámú.
\begin{itemize}
	\item[a)] Mutassuk meg, hogy minden 1 szintszámú csúcs a 0 szintszámú csúcsok közül pontosan eggyel szomszédos. 
	\item[b)] Mutassuk meg, hogy a jobb csúcsok halmaza konvex\index{konvex halmaz = convex set}.
	\item[c)] Mutassuk meg, hogy az 1 szintszámú csúcsok halmaza konvex.
	\item[d)] Bizonyítsuk be, hogy az I eljárás I3-I9 lépései helyesen jelölnek meg minden 1 és 2 szintszámú csúcsot.
	\item[e)] Bizonyítsuk be, hogy a H algoritmus helyes.
\end{itemize}
\ujgyak \label{gyak711-78}
% [M26] If the vertex $v$ is examined $k$ times in step I4 during the
% execution of Algorithm~H, prove that the graph has at least $2^k$ vertices.
% \em Hint: There are $k$ ways to start a shortest path from $v$ to~$a$;
% thus at least $k$ 1s appear in $l(v)$.
\sz{M26} Bizonyítsuk be, hogy a gráfnak legalább $2^k$ csúcsa van, ha a H algoritmus végrehajtása közben a $v$ csúcsot az I4 lépés során $k$-szor vizsgáljuk. \emph{Segítség:} $k$ féleképpen indíthatunk $v$-bõl $a$-ba vezetõ legrövidebb utat; így $l(v)$-ben legalább $k$ darab 1-es van.
\ujgyak \label{gyak711-79}
% [M27] (R. L. ^{Graham}.) A {\it^{subgraph of a hypercube}\/} is a graph
% whose vertices~$v$ can be labeled with bit strings $l(v)$ in such a way
% that $u\adj v$ if and only if $l(u)$ and~$l(v)$ differ in exactly one bit
% position. (Each label has the same length.)
% \breathe\item{a)}One way to define an $n$-vertex subgraph of a hypercube is to
% let $l(v)$ be the binary representation of $v$, for $0\le v<n$.
% Show that this subgraph has exactly $f(n)=\sum_{k=0}^{n-1}\nu(k)$ edges,
% where $\nu(k)$ is the ^{sideways addition function}.\breathe
% \item{b)}Prove that $f(n)\le n\lceil@\lg n\rceil/2$.\par
% \item{c)}Prove that no $n$-vertex subgraph of a hypercube has more than $f(n)$
% edges.
\sz{M27} (Graham\angolnevindex{Graham}.) Egy \textit{hiperkocka részgráfja}\index{hiperkocka részgráfja = subgraph of a hypercube} olyan gráf, melynek $v$ csúcsait címkézhetjük $l(v)$ bitfüzérekkel úgy, hogy $u\adj v$ akkor és csak akkor, ha $l(u)$ és $l(v)$ pontosan egy bitpozícióban különböznek. (Minden címke ugyanolyan hosszú.)
\begin{itemize}
	\item[a)] Egy hiperkocka $n$ csúcsú részgráfjának definiálására az egyik lehetõség az, hogy minden $0\le v<n$-re megadjuk $l(v)$-t, $v$ bináris reprezentációját. Mutassuk meg, hogy ennek a részgráfnak pontosan $f(n)=\sum_{k=0}^{n-1}\nu(k)$ éle van, ahol $\nu(k)$ az oldalösszeg-függvény\index{oldalösszeg-függvény= sideways addition function}.
	\item[b)] Bizonyítsuk be, hogy $f(n)\le n\lceil\lg n\rceil/2$.
	\item[c)] Bizonyítsuk be, hogy egy hiperkocka egyetlen $n$ csúcsú részgráfja sem tartalmaz $f(n)$-nél több élt.
\end{itemize}
\vspace{-2mm}
\ujgyak \label{gyak711-80}
% [27] A {\it^{partial cube}\/} is an ``isometric'' subgraph
% ^^{Isometric: Distance-preserving}
% of a hypercube, namely a subgraph in which the distances between vertices
% are the same as they are in the full graph. The vertices
% of a partial cube can therefore
% be labeled in such a way that the distance from $u$ to~$v$ is
% the ``^{Hamming distance}'' between $l(u)$ and~$l(v)$, namely
% $\nu(l(u)\xor l(v))$. Algorithm~H shows that every median graph is a
% partial cube.
% \item{a)} Find a subgraph of the 4-cube that isn't a partial cube.
% \item{b)} Give an example of a partial cube that isn't a median graph.
\sz{M27} \textit{Parciális kockának}\index{parciális kocka = partial cube} nevezzük egy hiperkocka \idez{izometrikus} (távolság-megõrzõ) részgráfját, azaz egy olyan részgráfot, melyben a csúcsok közötti távolság ugyanakkora, mint a teljes gráfban. Egy parciális kocka csúcsait ezért címkézhetjük úgy, hogy az $u$ és $v$ közötti távolság az $l(u)$ és $l(v)$ közötti \idez{Hamming-távolság}\index{Hamming-távolság = Hamming distance}, azaz $\nu(l(u)\xor l(v))$. A H algoritmus megmutatja, hogy minden medián gráf parciális kocka.
\begin{itemize}
	\item[a)] Keressük meg a négydimenziós kocka egy nem parciális kocka részgráfját.
	\item[b)] Adjunk olyan parciális kockára példát, amelyik nem medián gráf.
\end{itemize}
\vspace{-2mm}
\ujgyak \label{gyak711-81}
% [16] Is every median graph bipartite?
\sz{16} Vajon minden medián gráf páros?
\ujgyak \label{gyak711-82}
% [25] ({\it^{Incremental changes} in service}.)
% Given a sequence of vertices $(v_0, v_1, \ldots, v_t)$
% in a graph~$G$, consider the problem of finding another sequence
% $(u_0,u_1,\ldots,u_t)$ for which $u_0=v_0$ and the sum
% $$\advance\abovedisplayskip-.6pt
%   \advance\belowdisplayskip-.6pt
% \bigl(d(u_0,u_1)+d(u_1,u_2)+\cdots+d(u_{t-1},u_t)\bigr)\;+\;
%   \bigl(d(u_1,v_1)+d(u_2,v_2)+\cdots+d(u_t,v_t)\bigr)$$
% is minimized, where $d(u,v)$ denotes the distance from $u$ to~$v$.
% (Each $v_k$ can be regarded as a request for a resource needed at that
% vertex; a server moves to~$u_k$ as those requests are handled in
% sequence.) ^^{server locations}
% Prove that if $G$ is a median graph, we get an optimum solution
% by choosing $u_k=\<u_{k-1}v_kv_{k+1}\>$ for $0<k<t$, and $u_t=v_t$.
\sz{25} (\textit{Fokozatos változtatások}\index{fokozatos változtatások = incremental changes} a rendszerszolgáltatásban.) Vizsgáljuk a következõ problémát: egy $G$ gráfban adott $(v_0, v_1, \ldots, v_t)$ csúcs-sorozathoz keressük meg azt az $(u_0,u_1,\ldots,u_t)$ sorozatot, melyre $u_0=v_0$, és a
$$\bigl(d(u_0,u_1)+d(u_1,u_2)+\cdots+d(u_{t-1},u_t)\bigr)\;+\;
  \bigl(d(u_1,v_1)+d(u_2,v_2)+\cdots+d(u_t,v_t)\bigr)$$
összeg a lehetõ legkisebb, ahol $d(u,v)$ az $u$ és $v$ közötti távolság. (Minden $v_k$-ra egy az abban a csúcsban felmerülõ erõforrás-igényként tekinthetünk; amint a sorozatban az igény intézendõvé válik, a kiszolgáló $u_k$-hoz fordul.)
Bizonyítsuk be, hogy ha $G$ medián gráf, optimális megoldást kapunk $0<k<t$-re az $u_k=\langle u_{k-1}v_kv_{k+1}\rangle$ és az $u_t=v_t$ választással.
\ujgyak \label{gyak711-83}
% [28] Generalizing exercise 82, find an efficient way to minimize
% $$\advance\abovedisplayskip-.6pt
%   \advance\belowdisplayskip-.6pt
% \postdisplaypenalty=10000
% \bigl(d(u_0,u_1)+d(u_1,u_2)+\cdots+d(u_{t-1},u_t)\bigr)\;+\;
%   \rho@\bigl(d(u_1,v_1)+d(u_2,v_2)+\cdots+d(u_t,v_t)\bigr)$$
% in a median graph, given any positive ratio $\rho$.
\sz{28} Általánosítva a \ref{gyak711-82}. gyakorlatot, keressünk hatékony módszert most arra, hogy egy medián gráfban -- adott pozitív $\rho$ súly mellett -- hogyan minimalizáljuk a
$$\bigl(d(u_0,u_1)+d(u_1,u_2)+\cdots+d(u_{t-1},u_t)\bigr)\;+\;
  \rho\bigl(d(u_1,v_1)+d(u_2,v_2)+\cdots+d(u_t,v_t)\bigr)$$
összeget.
\ujgyak \label{gyak711-84}
% [30] Write a program to find all monotone self-dual Boolean functions
% of five variables. What are the edges of the corresponding median graph?
% (Table~2 illustrates the four-variable case.)^^{free median algebra}
\sz{30} Írjunk programot, mely megkeresi az összes monoton és önduális ötváltozós Boole-függvényt. Mik lesznek a megfelelõ medián gráf élei? (A \ref{tablazat71-2}. táblázat a négyváltozós esetet szemlélteti.)
\ujgyak \label{gyak711-85}
% [M22] Theorem S tells us that every formula in {\mc2CNF} corresponds
% to a ^{median set}; therefore every ^{antisymmetric digraph} such as
% Fig.~\fig6/ also corresponds to a median set. Precisely which of those
% digraphs correspond to {\it^{reduced}\/} median sets?
\sz{M22} Az S tétel szerint minden 2KNF formula egy-egy medián halmazt\index{medián halmaz = median set} határoz meg; ezért minden olyan antiszimmetrikus irányított gráf\index{antiszimmetrikus irányított gráf = antisymmetric digraph}, mint a \ref{abra70-6}. ábrán látható, medián halmaz. Ezek közül az irányított gráfok közül pontosan melyek felelnek meg a \textit{redukált} medián halmazoknak\index{redukált medián halmaz = reduced median set}?
\ujgyak \label{gyak711-86}
% [15] If $v$, $w$, $x$, $y$, and $z$ belong to a median set~$X$,
% does their ^{five-element median} $\<vwxyz\>$, computed componentwise,
% always belong to~$X$?
\sz{15} Ha $v$, $w$, $x$, $y$ és $z$ az $X$ medián halmaz elemei, $\langle vwxyz\rangle$, azaz a komponensenként számított ötváltozós mediánjuk\index{ötváltozós medián = five-element median}, vajon eleme-e mindig $X$-nek?
\ujgyak \label{gyak711-87}
% [24] What ^{CI-net} does the proof of Theorem F construct for the free tree \eq(63)?
\sz{24} A (\ref{keplet711-63}) szabad fára melyik CI-net\index{CI-net = CI-net} adja az F tétel bizonyítását?
\ujgyak \label{gyak711-88}
% [M21] We can use ^{parallel computation} to condense the network
% \eq(74) into
% $$\vcenter{\epsfbox{\figdir/v4a.1002}}$$
% by letting each module act at the earliest possible time. Prove that, although
% the network constructed in the proof of Theorem~F may contain $\Omega(t^2)$
% modules, it always requires at most $O(t\log t)$ levels of delay.
\sz{M21} Párhuzamos számítással\index{párhuzamos számítás = parallel computation} a (\ref{keplet711-74}) hálózatot az alábbi hálózattá tömöríthetjük úgy, hogy az egyes modulok a lehetõ legkorábbi idõpontban mûködjenek:
\begin{center}
\epsfbox{\figdir/v4a.1002}
\end{center}
Bizonyítsuk be, hogy bár az F tétel bizonyításában konstruált hálózat csak $\Omega(t^2)$ modult tartalmazhat, mégis várakoznia mindig legfeljebb $O(t\log t)$ szakasznyit kell.
\ujgyak\label{gyak711-89}
% [24] When the construction \eq(73) appends a new cluster of
% modules to enforce the condition $u\to v$, for some literals
% $u$ and~$v$, prove that it preserves all previously enforced
% conditions $u'\to v'$.
\sz{24} Amikor a (\ref{keplet711-73}) konstrukció a moduloknak egy új csoportját csatolja azért, hogy valamely $u$ és $v$ literálokra érvényesítse az $u\to v$ feltétel teljesülését, bizonyítsuk be, hogy közben megõrzi az összes elõzõekben érvényesített $u'\to v'$ feltételt.
\ujgyak\label{gyak711-90}
% [21] Construct a CI-net with input
% bits $x_1\ldots x_t$ and output bits $y_1\ldots y_t$,
% where $y_1=\cdots=y_{t-1}=0$ and $y_t=x_1\xor\cdots\xor x_t$.
% Try for only $O(\log t)$ levels of delay.
\sz{21} Konstruáljunk CI-netet az $x_1\ldots x_t$ input- és az $y_1\ldots y_t$ outputbitekkel,
ahol $y_1=\cdots=y_{t-1}=0$ és $y_t=x_1\xor\cdots\xor x_t$. Próbáljuk meg elérni, hogy csak $O(\log t)$ várakozó szakasz legyen.
\ujgyak\label{gyak711-91}
% [46] Can a ^{retraction mapping} for the labels of every median
% graph of dimension~$t$ be computed by a CI-net that has only
% $O(\log t)$ levels of delay? [This question is motivated by the
% existence of asymptotically optimum networks for the analogous problem of
% sorting; see M.~^{Ajtai}, J.~^{Koml\'os}, and E.~^{Szemer\'edi},
% {\sl Combinatorica\/ \bf3} (1983), 1--19.]\tighten^^{sorting networks}
\sz{46} Kiszámíthatjuk-e az egyes $t$ dimenziós medián gráfok címkéinek behúzó leképezését\index{behúzó leképezés = retraction mapping} olyan CI-nettel, amiben csak $O(\log t)$ várakozó szakasz van? (Ezt a kérdést a rendezés hasonló problémájára vonatkozó aszimptotikusan optimális hálózatok létezése motiválta; lásd Ajtai\angolnevindex{Ajtai}, Komlós\angolnevindex{Koml\'os} és Szemerédi\angolnevindex{Szemer\'edi} \cite{Ajtai1983} dolgozatát.)
\ujgyak\label{gyak711-92}
% [46] Can a CI-net sort $n$ Boolean inputs with fewer modules
% than a ``pure'' ^{sorting network} that has no inverters?
\sz{46} Kevesebb modullal tud-e rendezni egy CI-net $n$ Boole-inputot, mint egy \idez{tiszta} -- átalakítót nem tartalmazó --  rendezõ hálózat\index{rendezõ hálózat = sorting network}?
\ujgyak\label{gyak711-93}
% [M20] Prove that every retract $X$ of a graph $G$ is an
% ^{isometric subgraph} of~$G$. (In other words, distances in~$X$ are
% the same as in~$G@$; see exercise 80.)
\sz{M20} Bizonyítsuk be, hogy egy $G$ gráf minden $X$ behúzója $G$ távolság-megõrzõ részgráfja\index{izometrikus részgráf, távolság-megõrzõ részgráf = isometric subgraph}. (Másképp fogalmazva $X$-ben a távolságok ugyanazok, mint $G$-ben; lásd a \ref{gyak711-80}. gyakorlatot.) 
\ujgyak\label{gyak711-94}
% [M21] Prove that every ^{retract} $X$ of a hypercube is a set of
% median labels, if we suppress coordinates that are constant for all
% $x\in X$.
\sz{M21} Bizonyítsuk be, hogy egy hiperkocka minden $X$ behúzója\index{behúzó = retract} medián címkék halmaza, ha eltekintünk azoktól a koordinátáktól, melyek minden $x\in X$-re konstansok.
\ujgyak\label{gyak711-95}
% [M25] True or false: The set of all outputs produced by
% a comparator-inverter network, when the inputs range over all possible
% bit strings, is always a median set.
\sz{M25} Igaz vagy hamis a következõ állítás? Egy összehasonlító-átalakító hálózat által eredményezett outputok halmaza -- miközben az input végigfut az összes lehetséges bitfüzéren -- mindig medián halmaz. 
\ujgyak\label{gyak711-96}
% [HM25] Instead of insisting that the constants $w_1$, $w_2$, \dots,
% $w_n$, and $t$ in \eq(75) must be integers, we could allow them to
% be arbitrary ^{real numbers}. Would that increase the number of
% threshold functions?
\sz{HM25} Ahelyett, hogy ragaszkodnánk ahhoz, hogy (\ref{keplet711-75})-ben a $w_1$, $w_2$, \dots, $w_n$ és $t$ konstansok egészek legyenek, engedjük meg, hogy a valós számok\index{valós szám = real number} közül tetszõlegesen választhassuk ki õket. Megnövekszik-e vajon ekkor a küszöbfüggvények száma? 
\ujgyak\label{gyak711-97}
% [10] What median/majority functions arise in \eq(81) when
% $n=2$, $w_1=w_2=1$, and $t=-1$, 0, 1, 2, 3, or 4?
\sz{10} Milyen medián/majoritás függvények adódnak (\ref{keplet711-81})-ben, ha $n=2$, $w_1=w_2=1$ és $t=-1$, 0, 1, 2, 3 vagy 4?
\ujgyak\label{gyak711-98}
% [M23] Prove that any ^{self-dual threshold function} can be expressed
% in the form
% $$f(x_1,x_2,\ldots,x_n)=\[v_1y_1+\cdots+v_ny_n>0],$$
% where each $y_j$ is either $x_j$ or $\bar x_j$. For example,
% $2x_1+3x_2+5x_3+7x_4+11x_5+13x_6\ge21$ if and only if
% $2x_1+3x_2+5x_3-7\bar x_4+11x_5-13\bar x_6>0$.
\sz{M23} Bizonyítsuk be, hogy bármely önduális küszöbfüggvény\index{önduális küszöbfüggvény = self-dual threshold function} kifejezhetõ 
$$f(x_1,x_2,\ldots,x_n)=[v_1y_1+\cdots+v_ny_n>0]$$
formában, ahol minden $y_j$ vagy $x_j$, vagy $\bar x_j$. Például $2x_1+3x_2+5x_3+7x_4+11x_5+13x_6\ge21$ akkor és csak akkor, ha $2x_1+3x_2+5x_3-7\bar x_4+11x_5-13\bar x_6>0$.
\ujgyak\label{gyak711-99}
% [20] (J. E. ^{Mezei}, 1961.) Prove that
% ^^{threshold functions of threshold functions}
% $$\bigl\<\<x_1\ldots x_{2s-1}\>@@y_1\ldots y_{2t-2}\bigr\>=
% \<x\losub1\ldots x\losub{2s-1}@y_1^s\ldots y_{2t-2}^s\>.$$
\sz{20} (Mezei\angolnevindex{Mezei}, 1961.) Bizonyítsuk be, hogy
$$\bigl\langle \langle x_1\ldots x_{2s-1}\rangle y_1\ldots y_{2t-2}\bigr\rangle =\langle x\losub1\ldots x\losub{2s-1}y_1^s\ldots y_{2t-2}^s\rangle .$$
\ujgyak\label{gyak711-100} \sz{20} 
Igaz vagy hamis a következõ állítás? Ha $f(x_1,\ldots,x_n)$ küszöbfüggvény, akkor az $f(x_1,\ldots,x_n)\land x_{n+1}$ és az 
$f(x_1,\ldots,x_n)\lor  x_{n+1}$ függvények is azok.
\ujgyak\label{gyak711-101}
% [M23] The {\it^{Fibonacci threshold function}\/} $F_n(x_1,\ldots,x_n)$
% \vadjust{\breathe}%
% is defined by the formula $\<x_1^{F_1}x_2^{F_2}\ldots
% x_{n\smash-1}^{F_{n\smash-1}}x_{n\vphantom1}^{F_{n\smash-2}}\>$ when $n\ge3$;
% for example, $F_7(x_1,\ldots,x_7)=
% \<x\losub1x\losub2x_3^2x_4^3x_5^5x_6^8x_7^5\>$.\breathe
% \item{a)} What are the ^{prime implicants} of $F_n(x_1,\ldots,x_n)$?
% \item{b)} Find an ^{orthogonal {\mc DNF}} for $F_n(x_1,\ldots,x_n)$
% (see exercise~35).
% \item{c)} Express $F_n(x_1,\ldots,x_n)$ in terms of the $Y$ function
% (see exercises 67 and~69).
\sz{M23} Az $F_n(x_1,\ldots,x_n)$ Fibonacci-küszöbfüggvényt\index{Fibonacci-küszöbfüggvény = Fibonacci threshold function} $n\ge3$ esetben az $\langle x_1^{F_1}x_2^{F_2}\ldots x_{n\smash-1}^{F_{n\smash-1}}x_{n\vphantom1}^{F_{n\smash-2}}\rangle$ formulával definiálhatjuk. Például $F_7(x_1,\ldots,x_7)=
\langle x\losub1x\losub2x_3^2x_4^3x_5^5x_6^8x_7^5\rangle$.
\begin{itemize}
	\item[a)] Adjuk meg $F_n(x_1,\ldots,x_n)$ prímimplikánsait\index{prímimplikáns = prime implicant}.
	\item[b)] Keressük meg $F_n(x_1,\ldots,x_n)$ ortogonális DNF-jét\index{ortogonális DNF = orthogonal DNF} (lásd a \ref{gyak711-35}. gyakorlatot).
	\item[c)] Fejezzük ki $F_n(x_1,\ldots,x_n)$-t az $Y$ függvény segítségével (lásd a \ref{gyak711-67}. és \ref{gyak711-69}. gyakorlatokat).
\end{itemize}
\ujgyak\label{gyak711-102}
% [M21] The {\it^{self-dualization}\/} of a Boolean function
% is defined by the formulas
% $$\eqalign{\hat f(x_0,x_1,\ldots,x_n)\;
% &=\;(x_0@{\land}@f(x_1,\ldots,x_n))\lor
% (\bar x_0@{\land}@\overline{f(\bar x_1,\ldots,\bar x_n)})\cr
% &=\;(\bar x_0@{\lor}@f(x_1,\ldots,x_n))\land
% (x_0@{\lor}@\overline{f(\bar x_1,\ldots,\bar x_n)}).\cr}$$
% \item{a)} If $f(x_1,\ldots,x_n)$ is any Boolean function,
% prove that $\hat f$ is self-dual.
% \item{b)} Prove that $\hat f$ is a threshold function if and only if
% $f$ is a threshold function.
\sz{M21} Egy Boole-függvény \textit{öndualizálását}\index{öndualizálás = self-dualization} az 
\begin{equation*}
\begin{split}
\hat f(x_0,x_1,\ldots,x_n)\;
&=\;(x_0{\land}f(x_1,\ldots,x_n))\lor (\bar x_0{\land}\overline{f(\bar x_1,\ldots,\bar x_n)})\\
&=\;(\bar x_0{\lor}f(x_1,\ldots,x_n))\land (x_0{\lor}\overline{f(\bar x_1,\ldots,\bar x_n)}).
\end{split}
\end{equation*}
formulával definiáljuk.
\begin{itemize}
	\item[a)] Bizonyítsuk be, hogy tetszõleges $f(x_1,\ldots,x_n)$ Boole-függvény esetén $\hat f$ önduális.
	\item[b)] Bizonyítsuk be, hogy $\hat f$ akkor és csak akkor küszöbfüggvény, ha $f$ is küszöbfüggvény.
\end{itemize}
\ujgyak\label{gyak711-103}
% [HM25] Explain how to use ^{linear programming} to test whether
% or not a monotone, self-dual Boolean function is a threshold
% function, given a list of its prime implicants. Also, if it is
% a threshold function, explain how to minimize the size of its
% representation as a majority function $\<x_1^{w_1}\ldots x_n^{w_n}\?\>$.
\sz{HM25} Tisztázzuk, hogy hogyan használjuk fel a lineáris programozást\index{lineáris programozás = linear programming} annak ellenõrzésére, vajon egy monoton, önduális Boole-függvény küszöbfüggvény-e, vagy sem. Továbbá ha küszöbfüggvény, derítsük ki, hogyan minimalizáljuk az $\langle x_1^{w_1}\ldots x_n^{w_n}\rangle$ majoritás függvényként megadott reprezentációjának méretét.  
\ujgyak\label{gyak711-104}
% [25] Apply the method of exercise 103 to find the shortest
% representations of the following threshold functions as majority
% functions: (a)~$\<x_1^2@x_2^3@x_3^5@x_4^7@x_5^{11}x_6^{13}x_7^{17}x_8^{19}\>$;
% (b)~$[(x_1x_2x_3x_4)_2\ge t]$, for $0\le t\le 16$\enspace(17 cases);
% (c)~$\<x_1^{29}x_2^{25}x_3^{19}x_4^{15}x_5^{12}x_6^8@x_7^8@x_8^3@
% x_9^3@x\losub{10}\>$.
\sz{25} Alkalmazzuk a \ref{gyak711-103}. gyakorlat módszerét arra, hogy megkeressük a következõ küszöbfüggvények mint majoritás függvények legrövidebb reprezentációit:
(a) $\langle x_1^2x_2^3x_3^5x_4^7x_5^{11}x_6^{13}x_7^{17}x_8^{19}\rangle$;
(b) minden $0\le t\le 16$-re $[(x_1x_2x_3x_4)_2\ge t]$ (17 eset);
(c) $\langle x_1^{29}x_2^{25}x_3^{19}x_4^{15}x_5^{12}x_6^8x_7^8x_8^3x_9^3x\losub{10}\rangle$.
\ujgyak\label{gyak711-105}
% [M25] Show that the ^{Fibonacci threshold function} in
% exercise 101 has no shorter representation as a majority function than
% the one used to define it.
\sz{M25} Mutassuk meg, hogy a \ref{gyak711-101}. gyakorlatbeli Fibonacci-küszöbfüggvénynek\index{Fibonacci-küszöbfüggvény = Fibonacci threshold function} nincs rövidebb majoritás függvény reprezentációja, mint amit a definiálására használtunk.
\ujgyak\label{gyak711-106}
% [M25] The median-of-three operation
% $\<x\bar y\bar z\>$ is true if and only if $x\ge y+z$.
% \breathe
% \item{a)} Generalizing, $\?$show that we can test the condition
% $(x_1x_2\ldots x_n)_2\ge\!(y_1y_2\ldots\?y_n)_2+\nobreak z$ by performing
% a median of $2^{n+1}-1$ Boolean variables.^^{comparison of binary numbers}
% \breathe
% \item{b)} Prove that no median of fewer than $2^{n+1}-1$ will suffice
% for this problem.
\sz{M25} A háromváltozós $\langle x\bar y\bar z\rangle$ medián mûvelet eredménye akkor és csak akkor igaz, ha $x\ge y+z$.
\begin{itemize}
	\item[a)] Ezt általánosítva mutassuk meg, hogy az $(x_1x_2\ldots x_n)_2\ge (y_1y_2\ldots y_n)_2+ z$ feltételt $2^{n+1}-1$ Boole-változó mediánozásával ellenõrizhetjük.
	\item[b)] Bizonyítsuk be, hogy  $2^{n+1}-1$-nél kevesebb változó mediánozása nem lesz elegendõ ennek a problémának a megoldására.
\end{itemize}
\ujgyak\label{gyak711-107}
% [17] Calculate $N(f)$ and $\Sigma(f)$ for the 16
% functions in Table~1. (See Theorem~T.)
\sz{17} Számoljuk ki $N(f)$-et és $\Sigma(f)$-et a \ref{tablazat71-1}. táblázat 16 függvényére. (Lásd a T tételt.) 
\ujgyak\label{gyak711-108}
% [M21] Let $g(x_0,x_1,\ldots,x_n)$ be a ^{self-dual} function;
% thus $N(g)=2^n$ in the notation of Theorem T\null.
% Express $N(f)$ and $\Sigma(f)$ in terms of $\Sigma(g)$, when
% $f(x_1,\ldots,x_n)$ is
% (a)~$g(0,x_1,\ldots,x_n)$;
% (b)~$g(1,x_1,\ldots,x_n)$.
\sz{M21} Legyen $g(x_0,x_1,\ldots,x_n)$ önduális függvény\index{önduális függvény = self-dual function}. Így a T tétel jelölését használva $N(g)=2^n$. Fejezzük ki $N(f)$-et és $\Sigma(f)$-et $\Sigma(g)$ segítségével, amikor
$f(x_1,\ldots,x_n)$ éppen
(a) $g(0,x_1,\ldots,x_n)$;
(b) $g(1,x_1,\ldots,x_n)$.
\ujgyak\label{gyak711-109}
% [M25] The binary string $\alpha=a_1\ldots a_n$ is said to
% {\it majorize\/} the binary string $\beta=b_1\ldots b_n$, written
% ^^{majorization++}^^{dominance order, see majorization}
% $\alpha\succeq\beta$ or $\beta\preceq\alpha$, if $a_1+\cdots+a_k\ge
% b_1+\cdots+b_k$ for all $k\ge0$.\breathe
% ^^{lattice+}
\sz{M25} Az $\alpha=a_1\ldots a_n$ bináris füzér a $\beta=b_1\ldots b_n$ bináris füzért \textit{majorizálja}, ha minden $k\ge0$-ra $a_1+\cdots+a_k\ge b_1+\cdots+b_k$. Jelölve $\alpha\succeq\beta$ vagy $\beta\preceq\alpha$.
\begin{itemize}

% \item{a)} Let $\bar\alpha=\bar a_1\ldots\bar a_n$. Show that
% $\alpha\succeq\beta$ if and only if $\bar\beta\succeq\bar\alpha$.
\item[a)] Legyen $\bar\alpha=\bar a_1\ldots\bar a_n$. Mutassuk meg, hogy $\alpha\succeq\beta$ akkor és csak akkor, ha $\bar\beta\succeq\bar\alpha$.

% \item{b)} Show that any two binary strings of length $n$
% have a ^{greatest lower bound}
% $\alpha\wedge\beta$, which has the property that
% $\alpha\succeq\gamma$ and $\beta\succeq\gamma$
% if and only if $\alpha\wedge\beta\succeq\gamma$. Explain how to compute
% $\alpha\wedge\beta$, given $\alpha$ and $\beta$.
\item[b)] Mutassuk meg, hogy bármely két $n$ hosszúságú bináris füzérnek $\alpha\wedge\beta$ a legnagyobb alsó korlátja\index{legnagyobb alsó korlát = greatest lower bound}, azaz $\alpha\succeq\gamma$ és $\beta\succeq\gamma$ akkor és csak akkor, ha $\alpha\wedge\beta\succeq\gamma$. Magyarázzuk meg, hogyan számoljuk ki $\alpha\wedge\beta$-t adott $\alpha$ és $\beta$ esetén.

% \item{c)} Similarly, explain how to compute a ^{least upper bound}
% $\alpha\vee\beta$, with the property that
% $\gamma\succeq\alpha$ and $\gamma\succeq\beta$ if
% and only if $\gamma\succeq\alpha\vee\beta$.
\item[c)] Hasonlóan az elõbbi gyakorlathoz, magyarázzuk meg, hogyan számoljuk ki az $\alpha\vee\beta$ legkisebb felsõ korlátot\index{legkisebb felsõ korlát = least upper bound}, azaz amikor $\gamma\succeq\alpha$ és $\gamma\succeq\beta$ akkor és csak akkor, ha $\gamma\succeq\alpha\vee\beta$.

% \item{d)} True or false: $\alpha\wedge(\beta{\vee}\gamma)=(\alpha{\wedge}\beta)
% \vee(\alpha{\wedge}\gamma)$; ^^{distributive laws}
% $\alpha\vee(\beta{\wedge}\gamma)=(\alpha{\vee}\beta)
% \wedge(\alpha{\vee}\gamma)$.
\item[d)] Igaz vagy hamis a következõ két állítás? $\alpha\wedge(\beta{\vee}\gamma)=(\alpha{\wedge}\beta) \vee(\alpha{\wedge}\gamma)$;
$\alpha\vee(\beta{\wedge}\gamma)=(\alpha{\vee}\beta) \wedge(\alpha{\vee}\gamma)$.

% \item{e)} Say that $\alpha$ {\it^{covers}\/} $\beta$
% if $\alpha\succeq\beta$ and $\alpha\ne\beta$,
% and if $\alpha\succeq\gamma\succeq\beta$ implies that we have either
% $\gamma=\alpha$ or
% $\gamma=\beta$. For example, Fig.~\fig8/ illustrates the covering relations
% between binary strings of length~5. Find a simple way to describe the
% strings that are covered by a given binary string.
\item[e)] Mondjuk azt, hogy $\alpha$ \textit{lefedi}\index{lefed = covers} $\beta$-t, ha $\alpha\succeq\beta$ és $\alpha\ne\beta$, továbbá ha $\alpha\succeq\gamma\succeq\beta$ maga után vonja, hogy vagy $\gamma=\alpha$, vagy $\gamma=\beta$. Példaként a \ref{abra70-8}. ábra  szemlélteti az 5 hosszúságú bináris füzérek közötti lefedés relációt. Keressünk egyszerû módszert arra, hogyan írjuk le azokat a füzéreket, amelyeket egy adott bináris füzér lefed.

% \item{f)} Show that every path $\alpha=\alpha_0$, $\alpha_1$, \dots,
% $\alpha_r=0\ldots0$ from a given string $\alpha$ to $0\ldots0$, where
% $\alpha_{j-1}$ covers $\alpha_j$ for $1\le j\le r$, has the same
% length $r=r(\alpha)$.
\item[f)] Mutassuk meg, hogy egy adott $\alpha$ füzérbõl $0\ldots0$-ba vezetõ minden olyan $\alpha=\alpha_0$, $\alpha_1$, \dots, $\alpha_r=0\ldots0$ út ugyanolyan $r=r(\alpha)$ hosszúságú, ahol minden $1\le j\le r$-re $\alpha_{j-1}$ lefedi $\alpha_j$-t.

% \item{g)} Let $m(\alpha)$ be the number of binary strings $\beta$
% with $\beta\succeq\alpha$. Prove that $m(1\alpha)=m(\alpha)$
% and $m(0\alpha)=m(\alpha)+m(\alpha')$, where $\alpha'$ is~$\alpha$ with
% its leftmost~1 (if any) changed to~0.\tighten
\item[g)] Legyen $m(\alpha)$ azon $\beta$ bináris füzérek száma, melyekre $\beta\succeq\alpha$. Bizonyítsuk be, hogy $m(1\alpha)=m(\alpha)$ és $m(0\alpha)=m(\alpha)+m(\alpha')$, ahol $\alpha'$-t úgy nyerjük, hogy $\alpha$-ban legbaloldalibb 1-est (ha egyáltalán van ilyen) 0-ra cseréljük.

% \item{h)} How many strings $\alpha$ of length~$n$ satisfy $\bar\alpha
% \succeq\alpha$?
\item[h)] Hány $n$ hosszúságú $\alpha$ füzérre teljesül, hogy $\bar\alpha \succeq\alpha$?
\end{itemize}
\epskepnagy{\figdir/ch7a.6}{Bináris majorizációs háló 5 hosszúságú füzérekre. (Lásd a \ref{gyak711-109}. gyakorlatot.)\label{abra70-8}}{width=4cm}
\ujgyak \label{gyak711-110}
\sz{M23} Egy Boole-függvényt \textit{regulárisnak}\gyakindex{reguláris = regular} 
nevezünk, ha $x\preceq y$ esetén $f(x)\le f(y)$ minden $x$ és~$y$-ra, ahol 
$\preceq$ a 109. feladatbeli majorálás reláció. Igazoljuk vagy cáfoljuk a 
következõ állításokat:

\begin{itemize}
\item[a)] Minden reguláris függvény monoton.
\item[b)] Ha $f$ küszöb függvény~(\label{keplet711-75}), amelyre
$w_1\ge w_2\ge\cdots\ge w_n$, akkor $f$ reguláris.
\item[c)] Ha $f$ olyan, mint (b)-ben és $\Sigma(f)=(s_1,\ldots,s_n)$, akkor
$s_1\ge s_2\ge\cdots\ge s_n$.
\item[d)] Ha $f$ egy küszöb függvény (\label{keplet711-75}), ahol $s_1\ge s_2\ge
\koz\cdots\koz\ge s_{n\koz}$, akkor $w_1\ge w_2\ge\koz\cdots\koz\ge w_n$.
\end{itemize}
\vspace{-2mm}
\ujgyak \label{gyak711-111}
\sz{M36} Egy $(p_1,\ldots,p_n)$ mûködési valószínûségekkel rendelkezõ rendszer 
\textit{optimális klikkje}\gyakindex{maximális klikk = optimum coterie} egy 
olyan klikk, ami az összes $n$-változós monoton önduális függvények egy maximális 
elérhetõségû\gyakindex{elérhetõség = availability} monoton önduális függvényének 
felel meg. (Lásd a 14. és a 66. gyakorlatokat)
\begin{itemize}
\item[a)] Igazoljuk, hogy ha $1\ge p_1\ge\cdots\ge p_n\ge\half$, akkor 
legalább egy maximális elérhetõségû önduális függvény reguláris függvény.
\item[b)] Azonkívül, egy $f$ reguláris 
önduális függvénynek az optimalitását elegendõ ellenõrizni a 
bináris majorizáló hálónak azokban az $y$ pontjaiban, amelyekben $f(y)=1$, 
de $f(x)=0$ minden az $y$-al lefedett $x$-re.
\item[c)] Milyen klikk optimális, ha néhány valószínûség $<\half$?
\end{itemize}
\ujgyak\label{gyak711-112} \sz{M37} (J. H{\aa}stad\angolnevindex{H{\aa}stad}.) 
Legyen $M(f)$ az $f(x_1,x_2,\ldots,x_m)$ Boole-függvény egy reprezentációja egész együtthatós 
multilineáris polinom alakban (lásd 12. gyakorlat). Rendezzük ebben a polinomban 
a kitevõket figyelembe vevõ $\alpha_0=00\ldots0$,
$\alpha_1=10\ldots0$, \dots, $\alpha_{2^m-1}=11\ldots1$ Chase sorozat
\gyakindex{Chase sorozat = Chase's sequence}felhasználásával a termeket. A Chase 
sorozatnak amit a 7.2.1.3--(35)-ben lévõ $A_{n0}$, $A_{(n-1)1}$, \dots,~$A_{0n}$ 
sorozatok konkatenálásával kaptunk érdekes tulajdonsága van. $\alpha_j$ egybeesik 
$\alpha_{j+1}$-el ha a következõ cserék valamelyikét elvégezzük: $0\to 1$ vagy $01\to10$ 
vagy $001\to100$ vagy $10\to01$ vagy $100\to001$.

Például Chase sorozat $$\kern-10pt0000,1000,0010,0001,0100,1100,1010,1001,
 0011,0101,0110,1110,1101,1011,0111,1111\kern-10pt$$ 
 ha $m=4$. a megfelelõ termek 1, $x_1$, $x_3$, $x_4$,
$x_2$, $x_1x_2$, \dots, $x_2x_3x_4$, $x_1x_2x_3x_4$; így mondjuk 
az $((x_1\xor\bar x_2)\land x_3)\lor(x_1\land\bar x_3\land x_4)$-nek  
%^^{integer multilinear rep}
egész együtthatós multilineáris reprezentációja \gyakindex{egész együtthatós 
multilineáris reprezentáció = integer multilinear rep} 
$$x_3 - x_1 x_3 +x_1 x_4 - x_2 x_3 + 2 x_1 x_2 x_3  - x_1 x_3 x_4$$
ha a termeket ebben a sorrendben tekintjük. Legyen most
$$F(f)\;=\;
 [\hbox{a legjelentõsebb együtthatója $M(f)$-nek pozitív}].$$
 Például, az $((x_1\xor\bar x_2)\land x_3)\lor(x_1\land\bar x_3\land x_4)$ 
 legjelentõsebb együtthatója (az utolsó) nemzéró term a Chase rendezés 
 szerint $-x_1x_3x_4$, ezért ebben az esetben $F(f)=0$.
\begin{itemize}
\item[a)] Határozzuk meg $F(f)$-et az 1. táblázat mind a 16 függvényére.
\item[b)] Mutassuk meg, hogy $F(f)$ küszöbfüggvénye az $f\koz$ 
igazságtáblájának\gyakindex{igazságtábla = truth table} 
$\{f_{0\ldots00},f_{0\ldots01},\ldots,\allowbreak
f_{1\ldots11}\}$, $n=2^m$ bemenetére. Írjuk le $m=2$ esetben ezeket a függvényeket. 
\item[c)] Bizonyítsuk, hogy ha $m$ nagy, akkor $F$ bármely küszöb 
reprezentációjában minden súly nagyon nagy. Ezek abszolút értéke meg kell hogy haladja 
a $$\def\\#1{^{{m\choose#1}_{\mathstrut}}}
{3\\3 7\\4 15\\5 \ldots (2^{m-1}\koz{-}1)\\m\over n}\bigl(1-O(n\koz)\bigr)\;=\;
2^{mn/2-n-2(3/2)^m\!/\!\ln 2+O((5/4)^m)}.$$
\end{itemize}
Segítség: Tekintsük az igazságtábla bemenetek diszkrét Fourier 
transzformáltjait\gyakindex{diszkrét Fourier 
transzformált = discrete Fourier transforms}.
\ujgyak \label{gyak711-113}
\sz{24} Mutassuk meg, hogy a következõ három küszöb mûvelet elegendõ a 
(\ref{keplet711-91})-beli $S_{2,3,6,8,9}(x_1,\ldots,x_{12})$ függvény 
kiértékeléséhez:
\begin{equation*}
\begin{split}
g_1(x_1,\ldots,x_{12})&=\koz[\nu x\ge6] = \langle 1x_1\ldots x_{12}\rangle;\\
g_2(x_1,\ldots,x_{12})&=\koz[\nu x-6g_1\ge2]
 = \langle 1^3x_1\ldots x_{12}\bar g_1^6\rangle;\\
g_3(x_1,\ldots,x_{12})&=\koz[-2\nu x+13g_1+7g_2\ge1]=
\langle 0^5\bar x_1^2\ldots\bar x_{12}^2g_1^{13}g_2^7\rangle.\\
\end{split}
\end{equation*}
Adjunk meg négy küszöb mûveletet az $S_{1,3,5,8}(x_1,\ldots,x_{12})$ kiértékeléséhez.
\ujgyak\label{gyak711-114} \sz{20} 
(D. A. Huffman\angolnevindex{Huffman, David Albert}.) Mi az $S_{3,6}(x,x,x,x,y,y,z)$ függvény?
\ujgyak \label{gyak711-115} \sz{M22} 
Magyarázzuk el, hogy a (\ref{keplet711-92}) miért számítja ki pontosan az $x_0\xor x_1\xor\cdots\xor x_{2m}$ paritásfüggvényt.
\gyakindex{paritásfüggvény = parity function}
%\ex 115. [M22] Explain why \eq(92) correctly computes the ^{parity function}
%$x_0\xor x_1\xor\cdots\xor x_{2m}$.
\ujgyak \label{gyak711-116} \sz{HM28} 
(B. Dunham\angolnevindex{Dunham, Bradford} és R. Fridshal\angolnevindex{Fridshal, Richard}, 1957.) A szimmetrikus 
függvényeket tekintve bizonyítható, hogy az $n$-változós Boole-függvényeknek sok prímimplikánsuk lehet.
\begin{itemize}
\item[a)] Tegyük fel hogy $0\le j\le k\le n$. Mely $f(x_1,\ldots,x_n)$ 
szimmetrikus függvényekre\gyakindex{szimmetrikus függvények = symmetric functions} 
lesz az $x_1\land\cdots\land x_j\land\bar x_{j+1}\land\cdots\land\bar x_k$ 
term prímimplikáns\gyakindex{prímimplikáns = prime implicant}?
\item[b)] Hány prímimplikánsa van az $S_{3,4,5,6}(x_1,\ldots,x_9)$ függvénynek?
\item[c)] Legyen $\hat b(n)$ az összes $n$-változós szimmetrikus függvény 
prímimplikánsainak maximális száma. Keressünk $\hat b(n)$-re egy rekurzív 
formulát és számítsuk ki $\hat b(n)$-et.
\item[d)] Bizonyítsuk, hogy $\hat b(n)=\Theta(3^n\!/n)$.
\item[e)] Mutassuk meg, hogy vannak olyan $f(x_1,\ldots,x_n)$ szimmetrikus 
függvények, ahol az $f$ és a $\bar f$ prímimplikánsainak száma $\Theta(2^{3n/2}\!/n)$. 
\end{itemize} 
\vspace{-2mm}
\ujgyak \label{gyak711-117}
\sz{M26} Egy diszjunktív normál formát \textit{irredundánsnak}
\gyakindex{irredundáns = irredundant} nevezünk, ha egyik 
implikánsa sem implikál egy másikat. Legyen $b^*(n)$ az összes n-változós 
Boole-függvény irredundáns DNF-jeiben lévõ prímimplikánsok számának maximuma. 
Keressünk egy egyszerû formulát $b^*(n)$-re és határozzuk meg ennek 
aszimptotikus értékét.
\ujgyak \label{gyak711-118} \sz{29} 
Hány $f(x_1,x_2,x_3,x_4)$ Boole-függvénynek van pontosan $m$ primimplikánsa, ha $m=0$, 1, \dots ?
\vspace{-2mm}
\ujgyak \label{gyak711-119}
\sz{M48} Folytatva az elõzõ gyakorlatokat, legyen $b(n)$ egy $n$-változós 
Boole-függvény prímimplikánsai számának maximuma. Világos, hogy 
$\hat b(n)\le b(n)<b^*(n)$; de mi a $b(n)$ aszimptotikus értéke?
\ujgyak \label{gyak711-120} \sz{23} 
Mi a legrövidebb DNF alakja\gyakindex{legrövidebb DNF = shortest DNF} az (a)~$x_1\xor x_2\xor\cdots\xor x_n$ és a
(b)~$S_{0,1,3,4,6,7}(x_1,\ldots,x_7)$ szimmetrikus függvényeknek. (c) Bizonyítsuk be, hogy minden $n$-változós Boole-függvény 
leírható legfeljebb $2^{n-1}$ primimplikánst tartalmazó DNF-el.   
\ujgyak \label{gyak711-121}
\sz{M23} Az $\langle 1(x_1{\xor}x_2)y_1y_2y_3\rangle$ függvény parciálisan 
szimmetrikus\index{parciálisan szimmetrikus = partially symmetric}, 
mivel szimmetrikus $\{x_1,x_2\}$-re és $\{y_1,y_2,y_3\}$-re, de 
nem mind az öt $\{x_1,x_2,y_1,y_2,y_3\}$ változóra.
%\EX 121. [M23] The function $\<1@(x_1{\xor}x_2)@y_1y_2y_3\>$ is ^{partially
%symmetric}, since it is symmetric in $\{x_1,x_2\}$ and in $\{y_1,y_2,y_3\}$,
%but not in all five variables $\{x_1,x_2,y_1,y_2,y_3\}$.
\breathe
\begin{itemize}
\item[a)] Pontosan mennyi $f(x_1,\ldots,x_m,y_1,\ldots,y_n)$ 
Boole-függvény szimmetrikus $\{x_1,\ldots,x_m\}$-re és 
$\{y_1,\ldots,y_n\}$-re?
\item[b)] E függvények közül mennyi monoton\index{monoton = monotone}?
\item[c)] E függvények közül mennyi önduális\index{önduális = self-dual}?
\item[d)] E függvények közül mennyi monoton és önduális?
\end{itemize}
\ujgyak \label{gyak711-122}
\sz{M25} Folytatva a 110-es és a 121-es gyakorlatokat, megtaláljuk az összes olyan 
$f(x_1,x_2,x_3,\allowbreak y_1,y_2,y_3,y_4,y_5,y_6)$ Boole-függvényt, amely szimmetrikus $\{x_1,x_2,x_3\}$-ra, szimmetrikus 
$\{y_1,y_2,\ldots,y_6\}$-ra, önduális, és reguláris\index{reguláris = regular}. 
Ezek közül melyek küszöb függvények\index{küszöb függvények = threshold functions}?
\ujgyak\label{gyak711-123} \sz{46} 
Határozzuk meg azoknak a tíz változós, önduális függvényeknek a pontos számát, amelyek egyben küszöb függvények is.
%\exref|selfdual-enum|123. [46] Determine the exact number of
%self-dual Boolean functions of ten variables that are threshold functions.
\ujgyak\label{gyak711-124} \sz{20} 
Keressük meg azokat a négyváltozós Boole-függvényeket, amelyek az \ref{tablazat711-5}. táblázat alapszabályai szerint ekvivalensek 
767 másik függvénnyel.
\ujgyak \label{gyak711-125}
\sz{18} A  \ref{keplet711-95}-ben lévõ függvényosztályok közül melyek 
irányítók?\index{irányító = canalizing}
%\exref|perm-not-comp|125.???
%[18] Which of the function classes in \eq(95) are ^{canalizing}?
\ujgyak \label{gyak711-126}
\sz{23} (a) Mutassa meg, hogy egy Boole-függvény akkor és csak akkor 
irányító, ha prímimplikánsai\index{prímimplikánsok = prime implicants} 
és prímklózai\index{prímklózok = prime clauses} rendelkeznek bizonyos 
egyszerû tulajdonsággal.
(b) Mutassa meg, hogy egy Boole-függvény akkor és csak akkor 
irányító, ha a Chow paraméterei\index{Chow paraméterek = Chow parameters} 
$N(f)$ és $\Sigma(f)$ rendelkeznek bizonyos egyszerû tulajdonsággal 
(lásd T tétel). (c) Definiálja a 
$${\vee}(f)=\bigvee\{x\mid f(x)=1\}\qquad\hbox{és}\qquad
{\wedge}(f)=\bigwedge\{x\mid f(x)=1\};$$ Boole-vektorokat hasonlóan 
a $\Sigma(f)$ egész vektorhoz. Mutassa meg, hogy lehetséges eldönteni csak a 
négy $\vee(f)$, $\vee(\bar f)$, $\wedge(f)$, és $\wedge(\bar f)$ 
vektor megadásával, hogy az $f$ irányító-e vagy nem.
\ujgyak \label{gyak711-127}
\sz{M25} Mely  irányító függvények (a) önduálisak?
\index{önduális = self-dual} (b) definit Horn függvények?
\index{definit Horn függvények = definite Horn functions}
\ujgyak \label{gyak711-128}
\sz{20} Keresse meg azt az $f(x_1,\ldots,x_n)$ nem irányító függvényt, amely pontosan két pontban igaz.
%\EX 128. [20] Find a noncanalizing
%$f(x_1,\ldots,x_n)$ that is true at exactly two points.
\ujgyak \label{gyak711-129} \sz{M25} 
Hány darab $n$-változós irányító függvény létezik?
\ujgyak \label{gyak711-130} \sz{M21} A 3. táblázat szerint a négy változós Boole-függvények között 168 monoton függvény van. Azonban 
ezek közül néhány, mint az $x\land y$-hoz hasonlók, csak három, vagy kevesebb változótól függnek. 
\begin{itemize}
\item[a)] Hány 4-változós monoton Boole-függvény tartalmazza? minden változóját?
\item[b)] E függvények közül hány olyan van, amelyek permutációra különbözõek lesznek, mint a \ref{tablazat711-4}. táblázatban?
\end{itemize}
%%%
\ujgyak\label{gyak711-131} \sz{HM42} A \ref{tablazat711-3}. táblázat alapján világos, hogy sokkal több 
Horn-függvény\index{Horn függvények = Horn functions} van, mint Krom függvény\index{Krom függvények = Krom functions}.
\index{2SAT függvények, \textit{lásd} Krom függvények = 2SAT functions, \see Krom functions}
Mi a közelítõ szám, amikor $n\to\infty$?
%^^{2SAT functions, see Krom functions}
\ujgyak\label{gyak711-132} \sz{F30} 
A $g(x)=g(x_1,\ldots,x_n)$ függvényt \textit{affin}
\index{affin függvény = affin function} függvénynek hívjuk, ha felírható 
$y_0\oplus(x_1\land y_1)\oplus\cdots\oplus(x_n\land y_n)=(y_0+x\cdot y)\mod 2$ 
alakban, bizonyos $y_0$, $y_1$, \dots,~$y_n$ Boole konstansokkal.
\begin{itemize}
\item[a)]
Adott egy $f(x)$ tetszõleges Boole-függvény, mutassuk meg, 
hogy bizonyos affin függvények megegyeznek $f(x)$-el $2^{n-1}+2^{n/2-1}$ vagy 
több $x$ pontban.  Segítség: Legyen $s(y)=\sum_x(-1)^{f(x)+x\cdot y}$, és mutassuk 
meg, hogy $\sum_y s(y)s(y\oplus z)=2^{2n}[z=0\ldots 0]$ minden ~$z$ vektorra.

\item[b)] Az $f(x)$ Boole-függvényt \textit{bent} 
\index{bent függvény = bent function}függvénynek hívjuk, ha nincs olyan 
affin függvény, amelyik legfeljebb $2^{n-1}+2^{n/2-1}$ pontban megegyezne vele.
Igazoljuk, hogy
$$\postdisplaypenalty10000
(x_1\land x_2)\oplus(x_3\land x_4)\oplus \cdots \oplus(x_{n-1}\land x_n)
\oplus h(x_2,x_4,\ldots,x_n)$$
bent függvény, ha $n$ páros és $h(y_1,y_2, \ldots, y_{n/2})$ tetszõleges.
\item[c)] Igazoljuk, hogy $f(x)$ akkor és csak akkor bent függvény, ha 
$$\sum_x \bigl(f(x)\oplus f(x\oplus y)\bigr)=2^{n-1}
\qquad\hbox{for all $y\neq 0\ldots 0$.}$$
\item[d)] Reprezentáljuk az $f(x_1, \ldots, x_n)$ bent függvényt egy mod~2 multilineáris 
polinommal\index{multilineáris polinom = multilinear polynomial}, 
mint (\ref{keplet711-19})-ben. Mutassuk meg, hogy ez sohasem tartalmaz olyan 
$x_1\ldots x_r$ termeket, ahol $r>n/2>1$.
\end{itemize} 
\vspace{-2mm}
\ujgyak \label{gyak711-133} \sz{20} (Mark A. Smith 
\angolnevindex{Smith, Mark Andrew}, 1990.) 
Tegyük fel, hogy $n$ független érme\index{érme = coin} feldobásával 
állítunk elõ $n$ véletlen bitet, ahol a $k$-adik érme $p_k$ 
valószínûséggel eredményez 1-et. Válasszuk meg $(p_1,\ldots,p_n)$-t úgy, hogy 
$f(x_1,\ldots,x_n)=1$ valószínûsége $(t_0t_1\ldots t_{2^n-1})_2/
(2\losup{2^n}-1)$ legyen, ahol $t_0t_1\ldots t_{2^n-1}$ az $f\koz$ Boole-függvény 
igazságtáblája\index{igazságtábla = truth table}. (Igy $n$ egymásutáni 
véletlen érme $2^n$-bit pontossággal képes generálni egy valószínûséget)
%\par\endgroup % end of them BIG exercise numbers
\index{Boole-függvény = Boolean function|)}
\end{gyak}

\normalsize
\markboth{\sf 7. KOMBINATORIKUS ELEMZÉS (4. kötet, 0. rész)}{\sf 7.1.1. PONT ALFEJEZET GYAKORLATAINAK MEGOLDÁSA}
\pagestyle{myheadings}
\section*{A 7.1.1. pont gyakorlatainak megoldása}
\addcontentsline{toc}{section}{A 7.1.1. pont gyakorlatainak a megoldása}
\small
\begin{gyak}
%%% 1
\ujgyak\label{megold711-1}
(C. Sartena\angolnevindex{Sartena, Christian} megoldása.) Subidu mondását $x \Rightarrow y$ alakú implikációkkal írhatjuk le, 
ahol az alany rendre $y$-t, $x$-et, $x$-et, $y$-t, $y$-t, $x$-et jelenti. (Más megoldás is lehetséges.)
%%% 2
\ujgyak\label{megold711-2} 
A pincusi $x \circ y$-hoz tartozó földi mûvelet az $\overline{\overline{x} \circ \overline{y}}$. Az igazságtábláját emiatt úgy 
kapjuk meg, hogy a $\circ$ igazságtábla komplemensét\index{komplemens = complement} megfordítjuk. Így a válaszok sorrendben 
$\affirm$, $\vee$, $\cimpl$, $\lproj$, $\impl$, $\rproj$, $\equiv$, $\wedge$, $\nand$, $\xor$, $\rcomp$, $\nimp$, $\lcomp$, 
$\cnimp$, $\nor$, $\contra$. (Bármely a \ref{tablazat71-1}. táblázat 16 mûveletével kapcsolatos azonosság maga után von egy 
duális azonosságot\gyakindex{duális azonosság = dual identity}, melyet a megfelelõ pincusi mûveletek behelyettesítésével nyerünk. 
Például De Morgan\gyakindex{De Morgan-törvény = De Morgan's law} (\ref{keplet711-11}) és (\ref{keplet711-12}) törvényei
egymás duálisai, mint ahogy az $\equiv$ és a $\oplus$ mûveletekhez kötõdõ (\ref{keplet711-3}) és (\ref{keplet711-4})
azonosságok is.\gyakindex{ekvivalencia operátor $(\equiv)$ = equivalence operator $(\equiv)$} Ebben az értelemben az 
$\equiv$ éppen olyan hasznosnak tekinthetõ, mint duálisa, az $\oplus$.)
\ujgyak \label{megold711-3}
(a) $\vee$; (b) $\wedge$; (c) $\lcomp$; (d) $\equiv$. (Valójában sok formula jobban mûködik,
ha $-1$-et használunk az igazság és +1-et a hamisság kifejezésére, bár ez a jelölés
szentségtörésnek tûnhet. Ilyenkor az $x \cdot y$ a $\oplus$ mûveletnek felel meg. Vegyük észre,
hogy $\langle xyz \rangle = \mbox{sign}(x + y + z)$, bármelyik jelölést használjuk is.)
\ujgyak \label{megold711-4} \cite{Scheffer1913}
(a) Kezdjük a $\lproj$ és $\rproj$ igazságtáblákkal, ezután\gyakindex{dinamikus programozás = dynamic programming} 
bitenként\gyakindex{bitenkénti mûvelet = bitwise operation} számítsuk ki az $\alpha \nand \beta$ igazságtábláját az $\alpha$ és 
a $\beta$ igazságtáblák minden már ismert párjából úgy, hogy az eredményeket az egyes formulák hossza szerinti sorrendben 
generáljuk, és leírjuk a legrövidebb formulát, ami az adott 4-bites táblához vezet:
$$\vcenter{\halign to.5\hsize{\qquad\hfil$#$\hfil\kern1pt:\enspace&$#$\hfil
    \tabskip0pt plus 1fil\cr
\contra&(x\nand (x\nand x))\nand (x\nand (x\nand x))\cr
\wedge&(x\nand y)\nand (x\nand y)\cr
\nimp&(x\nand (x\nand y))\nand (x\nand (x\nand y))\cr
\lproj&x\cr
\cnimp&(y\nand (x\nand x))\nand (y\nand (x\nand x))\cr
\rproj&y\cr
\xor&(y\nand (x\nand x))\nand (x\nand (x\nand y))\cr
\vee&(y\nand y)\nand (x\nand x)\cr
}}\vcenter{\halign to.5\hsize{\qquad\hfil$#$\hfil\kern1pt:\enspace&$#$\hfil
    \tabskip0pt plus 1fil\cr
\nor&(x\nand (x\nand x))\nand ((y\nand y)\nand (x\nand x))\cr
\leqv&(x\nand y)\nand ((y\nand y)\nand (x\nand x))\cr
\rcomp&y\nand y\cr
\cimpl&y\nand (x\nand x)\cr
\lcomp&x\nand x\cr
\impl&x\nand (x\nand y)\cr
\nand&x\nand y\cr
\affirm&x\nand (x\nand x)\cr}}$$
(b) Ebben az esetben négy táblázattal kezdjük: $\contra$, $\affirm$, $\lproj$, $\rproj$, és amennyiben
azonos hosszúságú formulák között kell döntenünk, azt választjuk, amelyikben kevesebb változó fordul elõ:

$$\vcenter{\halign to.5\hsize{\qquad\hfil$#$\hfil\kern1pt:\enspace&$#$\hfil
    \tabskip0pt plus 1fil\cr
\contra&0\cr
\wedge&(x\nand y)\nand 1\cr
\nimp&((y\nand 1)\nand x)\nand 1\cr
\lproj&x\cr
\cnimp&(y\nand (x\nand 1))\nand 1\cr
\rproj&y\cr
\xor&(y\nand (x\nand 1))\nand ((y\nand 1)\nand x)\cr
\vee&(y\nand 1)\nand (x\nand 1)\cr
}}\vcenter{\halign to.5\hsize{\qquad\hfil$#$\hfil\kern1pt:\enspace&$#$\hfil
    \tabskip0pt plus 1fil\cr
\nor&1\nand ((y\nand 1)\nand (x\nand 1))\cr
\leqv&(x\nand y)\nand ((y\nand 1)\nand (x\nand 1))\cr
\rcomp&y\nand 1\cr
\cimpl&y\nand (x\nand 1)\cr
\lcomp&x\nand 1\cr
\impl&(y\nand 1)\nand x\cr
\nand&x\nand y\cr
\affirm&1\cr}}$$
\ujgyak \label{megold711-5}
(a) $\contra$: $x\cnimp x$;\quad
$\wedge$: $(x\cnimp y)\cnimp y$;\quad
$\nimp$: $y\cnimp x$;\quad
$\lproj$: $x$;\quad
$\cnimp$: $x\cnimp y$;\quad
$\rproj$: $y$;\quad
a további 10-et nem lehet kifejezni. (b) Konstansokat is használva ugyanakkor mind a 16 kifejezhetõ:
$$\vcenter{\halign to.5\hsize{\qquad\hfil$#$\hfil\kern1pt:\enspace&$#$\hfil
    \tabskip0pt plus 1fil\cr
\contra&0\cr
\wedge&(y\cnimp 1)\cnimp x\cr
\nimp&y\cnimp x\cr
\lproj&x\cr
\cnimp&x\cnimp y\cr
\rproj&y\cr
\xor&((y\cnimp x)\cnimp ((x\cnimp y)\cnimp 1))\cnimp 1\cr
\vee&(y\cnimp (x\cnimp 1))\cnimp 1\cr
}}\vcenter{\halign to.5\hsize{\qquad\hfil$#$\hfil\kern1pt:\enspace&$#$\hfil
    \tabskip0pt plus 1fil\cr
\nor&y\cnimp (x\cnimp 1)\cr
\leqv&(y\cnimp x)\cnimp ((x\cnimp y)\cnimp 1)\cr
\rcomp&y\cnimp 1\cr
\cimpl&(x\cnimp y)\cnimp 1\cr
\lcomp&x\cnimp 1\cr
\impl&(y\cnimp x)\cnimp 1\cr
\nand&((y\cnimp 1)\cnimp x)\cnimp 1\cr
\affirm&1\cr}}$$
(Lásd Bernstein\angolnevindex{Bernstein, Benjamin Abram (1901-1963)} cikkét \cite{Bernstein1914}.) 
\ujgyak \label{megold711-6}
(a) $\contra$, $\wedge$, $\lproj$, $\rproj$, $\xor$, $\vee$, $\equiv$, $\affirm$. (b) $\contra$, $\lproj$, $\rproj$, $\xor$,
$\equiv$, $\affirm$. (Vegyük észre, hogy ezen mûveletek mindegyike asszociatív. Valóban, a megadott azonosságból következik az 
általános asszociativitás törvény: elõször azt kapjuk, hogy 
(i) $(x\circ y)\circ((z\circ y)\circ w)=((x\circ z)\circ(z\circ y))\circ((z\circ y)\circ w)=(x\circ z)\circ w$, és hasonlóan 
(ii) $(x\circ(y\circ z))\circ(y\circ w)=x\circ(z\circ w)$. Továbbá 
(iii) $(x\circ y)\circ(z\circ w)=(x\circ y)\circ((z\circ y)\circ(y\circ w))=(x\circ z)\circ(y\circ w)$ 
(i) alapján. 
Így $(x\circ z)\circ w = (x\circ z)\circ((z\circ z)\circ w) = (x\circ(z\circ z))\circ(z\circ w) = x\circ(z\circ w)$ (i), (iii) 
és (ii) alapján. Az $\{x_1,\ldots,x_n\}$ által generált szabad rendszernek\gyakindex{szabad rendszer = free system} 
pontosan $n + 2^{n}n^{2}$ különbözõ eleme van, egész pontosan $\{x_j\mid 1\le j\le n\}$ és 
$\{x_i\circ x_{j_1}\circ\cdots\circ x_{j_r}\circ x_k \mid r\ge0$ és $1\le i,k\le n$ és $1\le j_1<\cdots<j_r\le n\}$.)
\ujgyak \label{megold711-7}
Az elõzõekhez hasonlóan keressük az $y \circ (x \circ y) = x$ azonosságot. Ez csak a $\xor$ és $\leqv$ mûveletek esetén 
teljesül. (Jevons\angolnevindex{Jevons, William Stanley (1835--1882)} \cite{Jevons1864} könyvében leírta $\xor$ ezen 
tulajdonságát, de nem vizsgálta részletesen a témát. Az ilyen természetû, \idez{tapogatásnak}\gyakindex{tapogatás = grope} 
nevezett általános rendszerekkel a \ref{pont723}. pontban bõvebben foglalkozunk.)
\ujgyak \label{megold711-8}
$\bigl(\{\contra,\wedge,\cnimp\},S_0\bigr)$,
        $\bigl(\{\affirm,\vee,\impl\},S_1\bigr)$, 
        $\bigl(\{\lproj,\lcomp\},S_0\cap S_1\bigr)$, 
        $\bigl(\{\xor,\leqv,\rcomp\},S_2\bigr)$, 
        $\bigl(\{\nimp,\nor\},S_0\cap\nobreak S_2\bigr)$,\linebreak
        $\bigl(\{\cimpl,\nand\},S_1\cap S_2\bigr)$
és      $(\rproj,\mbox{bármelyik})$,
ahol
$S_0=\{\diamond\mid 0\diamond 0=0\}$,
      $S_1=\{\diamond\mid 1\diamond1=1\}$
és   $S_2=\{\diamond\mid \bar x{\diamond}\bar y=\overline{x{\diamond}y}\} =
           \{\lproj,\rproj,\lcomp,\rcomp\}$.
Vagyis a 256 párból 92 bal-disztributív. (Ezzel és a \ref{gyak711-6}. gyakorlat
problémáival elõször Schröder\angolnevindex{Schröder, Friedrich Wilhelm Karl Ernst (1841--1902)} foglakozott, a halála után megjelent 
\cite{Schroder1905} könyvben. A probléma megoldását lényegében úgy fejezte ki, hogy leírta, a ($\circ$,$\diamond$) 
mûveletek ($pqrs, wxyz$) igazságtábláinak az alábbi egyenlõséget kell kielégíteniük: 
$((pq\vee rs)\wedge\bar z)\vee((\bar p\bar q\vee\bar r\bar s)\wedge w)
\vee((p\bar q\vee r\bar s)\wedge((w\leqv z)\vee (x\leqv y)))=0$.)
\ujgyak \label{megold711-9}
(a) Hamis, $(x\xor y)\vee z=(x\vee z)\xor(y\vee z)\xor z$. (b) Igaz, mert az azonosság nyilvánvalóan fennáll $z = 0$
és $z = 1$ esetén is. (c) Igaz, továbbá $(x \xor y) \vee (y \xor z) =  1-[x=y=z]$.
\ujgyak \label{megold711-10}
A (\ref{keplet711-16}) felbontás elsõ lépése a $g=10100011$ és a $h=10100011\xor10010011=00110000$ igazságtáblákkal 
rendelkezõ függvényeket adja. Hasonlóan folytatva $1+y+xz+w+wy+wx+wxz$ (modulo~2) adódik.
\ujgyak \label{megold711-11}
A kijelölt tag akkor és csak akkor jelenik meg, ha $f(x_1,\ldots,x_n)$ páratlan sokszor igaz, amikor 
$x_1=x_4=x_5=x_7=x_9=x_{10}=\cdots=0$. ($2^k$ olyan eset van, amikor $k$ kivételével a többi változó értékét zérusnak rögzítjük.)
Másképp fogalmazva a multilineáris reprezentáció kifejezhetõ olyan sokatmondó jelölés\gyakindex{jelölés = notation} segítségével, 
mint $n=3$ esetén a következõ:
$$\def\\#1#2#3{f_{\if#100\else{*}\fi\if#200\else{*}\fi\if#300\else{*}\fi}
   \if#11x\fi\if#21y\fi\if#31z\fi}
f(x,y,z)=( \\000+\\001+\\010+\\011+\\100+\\101+\\110+\\111)\mod2,$$
ahol $f_{{*}{*}0}=f(1,1,0)\xor f(1,0,0)\xor f(0,1,0)\xor f(0,0,0)$ stb.
\ujgyak \label{megold711-12}
(a) (\ref{keplet711-23})-ban helyettesítsük $\bar w$-t $1-w$-vel, majd folytassuk így tovább. Végül az 
$1-y-xz+2xyz-w+wy+wx+wxz-2wxyz$ kifejezést nyerjük. (Néhány szerzõ ezt 
\idez{Zsegalkin-polinomnak}\gyakindex{Zsegalkin-polinom = Zhegalkin polynomial} nevezi, bár maga Zsegalkin mindig modulo 2 
dolgozott. További megnevezések az irodalomban: \idez{elérhetõségi polinom}\gyakindex{elérhetõségi polinom = availability polynomial}, 
\idez{megbízhatósági polinom}\gyakindex{megbízhatósági polinom = reliability polynomial}, 
\idez{karakterisztikus polinom}\gyakindex{karakterisztikus polinom = characteristic polynomial}.)

(b) Egy $n$ változós függvényhez tartozó együtthatók abszolút értéke legfeljebb $2^{n-1}$ (és indukcióval belátható, hogy 
tényleg ez a maximum.) Például az $x_1\oplus\cdots\oplus x_n$ kifejezés egész számok feletti egész együtthatós multilineáris 
reprezentációja $e_1-2e_2+4e_3-\cdots +(-2)^{n-1}e_n$, ahol $e_k$  az $\{x_1,\ldots,x_n\}$ változók $k$-adik elemi 
szimmetrikus függvénye\gyakindex{elemi szimmetrikus függvény = elementary symmetric function}. Az elõzõ megoldásban szereplõ 
formula az egész számok felett
$$\def\\#1#2#3{f_{\if#100\else{*}\fi\if#200\else{*}\fi\if#300\else{*}\fi}
   \if#11x\fi\if#21y\fi\if#31z\fi}
 f(x,y,z)\;=\;
 \\000+\\001+\\010+\\011+\\100+\\101+\\110+\\111,$$
ahol $f_{{*}{*}0}=f(1,1,0)-f(1,0,0)-f(0,1,0)+f(0,0,0)$, és így tovább. Ez a kiterjesztés az 
Hadamard-transzformáció\gyakindex{Hadamard-traszformáció = Hadamard transform}Hadamard, Jacques Salomon (1865--1963) 
burkolt formája, lásd a 4.6.4. pontban (38)-at.

(c,d) Polinomunk $x_1(1-x_2)(1-x_3)x_4$-hez hasonló mintermek\gyakindex{minterm = minterm} összege. $0\le x_1,\ldots,x_n\le 1$ 
esetén minden minterm nemnegatív, és az összes minterm összege 1.

(e) $\partial f/\partial x_j=h(x)-g(x)$, ahol (d) szerint $h(x)\ge g(x)$. (Lásd a \ref{gyak711-21}. gyakorlatot.)
$F$ valójában éppen az egész együtthatós multilineáris reprezentáció (lásd a \ref{gyak711-12}. gyakorlatot).
\ujgyak\label{megold11-14}
Valójában $F$pontosan az egész multilineáris reprezentáció (lásd a \ref{gyak711-21)}. gyakorlatot).
\ujgyak\label{megold711-14}
Legyen $r_j=p_j/(1-p_j)$. Elvárásunkat figyelembe véve 
$f(0,0,0)=0$ és $f(1,1,1)=1$ $\Leftrightarrow$ $r_1r_2r_3>1$,
$f(0,0,1)=0$ és $f(1,1,0)=1$ $\Leftrightarrow$ $r_1r_2>r_3$,
$f(0,1,0)=0$ és $f(1,0,1)=1$ $\Leftrightarrow$ $r_1r_3>r_2$,
$f(0,1,1)=0$ és $f(1,0,0)=1$ $\Leftrightarrow$ $r_1>r_2r_3$. Tehát
(a)~$\langle x_1x_2x_3\rangle$; (b)~$x_1$; (c)~$\bar x_3$.
\ujgyak \label{megold711-15}
Az 1.2.6. pont 10. gyakorlata szerint
${x\choose k}\mod2 =[x\& k=k]$. Ennélfogva például amikor $x=(x_n\ldots x_1)_2$, akkor 
${x\choose 11}\equiv x_4\wedge x_2\wedge x_1$ (modulo~2), és ilyen módon kaphatunk meg minden tagot egy, a 
(\ref{keplet711-19})-hez hasonló multilineáris reprezentációban\gyakindex{multilineáris reprezentáció = multilinear representation}. 
Sõt, nem szükséges modulo 2 vennünk a tagokat, mert az ${x\choose 11}{15-x\choose 4}$ interpolációs 
polinom\gyakindex{interpolációs polinom = interpolating polynomial} pontosan az $x_4\wedge\bar x_3\wedge x_2\wedge x_1$ 
formulát fejezi ki.
\ujgyak \label{megold711-16}
Igen, sõt még a $+$ mûveletre is, mert a különbözõ mintermek egyidejûleg nem lehetnek igazak. (De nem tudjuk ezt megtenni a 
(\ref{keplet711-25}) általános diszjunktív normálformában. Lásd a \ref{keplet711-35}. gyakorlatot.)
\ujgyak \label{megold711-17}
A $\nand$ bináris mûvelet nem asszociatív\gyakindex{asszociatív mûvelet = associative operation}, ezért egy 
$x\nand y\nand z$-hez hasonló kifejezést \textit{háromváltozós}\gyakindex{háromváltozós mûvelet= ternary operation} 
mûveletként kell interpretálni. Quick jelölése kitûnõ, bár ha valaki a NAND-re $n$ változós mûveletként gondol, vegye 
körültekintõen figyelembe, hogy \textit{egyetlen} $x$ változó NAND-je $\bar x$.
\ujgyak \label{megold711-18}
Ellenkezõ esetben ugyanis legyen $u_1\gets\cdots\gets u_s\gets 1$ és $v_1\gets\cdots\gets v_t\gets 0$, ami miatt $f$ egyszerre 
kellene, hogy igaz és hamis  legyen. (És ha egy DNF-fel kapcsolatban átgondoljuk a (\ref{keplet711-2}) disztributivitási 
törvény\gyakindex{disztributivitás törvény = distributive law} ismételt alkalmazását egészen addig, amíg KNF formulává nem 
válik, arra jövünk rá, hogy a megfordított állítás is igaz: a $v_1\vee\cdots\vee v_t$ diszjunkció akkor és csak akkor adódik 
$f$-bõl,vagy ha $f$ minden implikánsával van közös literálja; ha $f$ minden prímimplikánsával van közös literálja; 
vagy ha $f$ valamely DNF-jének minden implikánsával van közös literálja.)
\ujgyak \label{megold711-19}
A 0010, 0011, 0101, 0110, 1000, 1001, 1010 és 1011 pontok által meghatározott maximális részkockák $0{\ast}10$, $0101$, 
${\ast}01{\ast}$ és $10{\ast}{\ast}$, így a megoldás 
$(w{\vee}\bar y{\vee}z)\wedge(w{\vee}\bar x{\vee}y {\vee}\bar z)\wedge(x{\vee}\bar y)\wedge (\bar w{\vee}x)$. 
(Ez a KNF egyúttal a legrövidebb\gyakindex{legrövidebb KNF = shortest CNF} is.)
\ujgyak\label{megold711-20}
Igaz. A megfelelõ maximális részkocka benne van az $f'$ által és $g'$ által meghatározott maximális részkockában és ezek 
metszete pedig nem lehet nagyobb. (Ez a megfigyelés Samsonnak\angolnevindex{Samson, Edward Walter} és 
Millsnek\angolnevindex{Mills, Burton E.} köszönhetõ, akiknek \cite{Samson1954} cikkére majd a \ref{megold711-31}. 
megoldásban is hivatkozunk.)
\ujgyak\label{megold711-21}
A (\ref{keplet711-20})-as Boole-törvény alapján belátjuk, hogy egy $n$ változós $f$ függvény akkor és csak akkor monoton, ha az 
$(n-1)$ változós $g$ és $h$ projekciói monotonok, és teljesül, hogy $g\le h$.  Ezért 
$$f=(g\wedge\bar x_n)\vee(h\wedge x_n)\;=\;(g\wedge\bar x_n)\vee(g\wedge x_n)\vee(h\wedge x_n)\;=\;g\vee(h\wedge x_n)\koz,$$
így komplementálás nélkül tudunk dolgozni. A 0 és 1 konstans eltûnik, kivéve, ha a függvény azonosan konstans. Megfordítva pedig, 
a $\wedge$ és $\vee$ segítségével felépített bármely kifejezés nyilván monoton. 

\emph{Megjegyzés a terminológiával\gyakindex{terminológia = terminology} kapcsolatban:} Ha meg akarjuk õrizni a klasszikus 
matematika nyelvét, tulajdonképpen azt kellene mondanunk, hogy \idez{monoton nem-csökkenõ}, ahelyett, hogy egyszerûen azt mondjuk, 
\idez{monoton}\gyakindex{monoton függvény = monotone function}, mert egy valós változó csökkenõ függvényét is monotonnak 
nevezzük. (Lásd például a 3.3.2. pontbeli \idez{teszt futtatást}.) De a \idez{nem-csökkenõ} szó elég hosszú; ezért a 
Boole-függvényekkel foglalkozó kutatók csaknem egyöntetûen úgy döntöttek, elfogadják, hogy ilyen szövegkörnyezetben a 
\idez{monoton} automatikusan magában foglalja, hogy nem-csökkenõ. Hasonlóan, a 
\idez{pozitív függvény}\gyakindex{pozitív függvény = positive function} matematikai fogalommal rendszerint olyan 
függvényre hivatkozunk, amelyiknek az értéke nagyobb, mint nulla; de a \idez{pozitív Boole-függvényrõl} író szerzõk azokra a 
függvényre hivatkoznak így, amelyeket mi monotonnak nevezünk. Mivel egy monoton függvény megõrzi a rendezést, néhány szerzõ 
az \idez{izoton}\gyakindex{izoton = isotone} kifejezést használja; de ezt a szót már használják a fizikusok, vegyészek 
és zenetudósok is.

Egy az $\bar x\vee y$-hoz hasonló Boole-függvényt, amelyik monotonná válik, ha bizonyos változóit komplementáljuk, 
\textit{unate}-nek\gyakindex{unate függvény = unate function} hívunk. A Q tétel nyilván unate függvényekre vonatkozik.
\ujgyak \label{megold711-22}
Mind $g$, mind $g\oplus h$ monoton kell legyen, és $g(x)\wedge h(x)=0$ kell teljesüljön.
\ujgyak \label{megold711-23}
$x\wedge(v{\vee}y)\wedge(v{\vee}z)\wedge(w{\vee}z)$. (A Q következmény monoton függvények 
\textit{konjunktív} prímformáira is vonatkozik. Emiatt bármelyik ilyen probléma megoldásához csak a (\ref{keplet711-2}) 
disztributivitás törvényének\gyakindex{disztributivitás törvény = distributive law} alkalmazására van szükség addig, 
ameddig $\wedge$ már nem fordul elõ $\vee$ belsejében, majd el kell távolítani minden olyan klózt, amelyik egy másik 
összes változóját tartalmazza.)
\ujgyak \label{megold711-24}
$k$-ra vonatkozó indukció szerint egy a gyökerében $\vee$-t tartalmazó hasonló fa $2_{2^{\lceil k/2\rceil}-1}$ darab 
$2_{\lfloor k/2\rfloor}$ hosszú prímimplikánst tartalmazó formulát ad, míg a $\wedge$ gyökerû fa $4_{2^{\lfloor k/2\rfloor}-1}$ darab $2_{\lceil k/2\rceil}$ hosszú prímimplikánst. Ha például $k=6$, a $\wedge$ gyökerû fa esetében a $4^7=2^{14}$ különbözõ prímimplikáns a következõ alakú:
$$\displaylines{\qquad
x_{(0t_00t_{00}0t_{000})_2}\wedge
  x_{(0t_00t_{00}1t_{001})_2}\wedge
  x_{(0t_01t_{01}0t_{010})_2}\wedge
  x_{(0t_01t_{01}1t_{011})_2}
\hfill\cr\hfill{}\wedge
  x_{(1t_10t_{10}0t_{100})_2}\wedge
  x_{(1t_10t_{10}1t_{101})_2}\wedge
  x_{(1t_11t_{11}0t_{110})_2}\wedge
  x_{(1t_11t_{11}1t_{111})_2},
\qquad\cr}$$
ahol a $t$ vagy 0, vagy 1. (Ilyen Boole-függvényekkel kapcsolatos további információkért lásd 
Knuth\angolnevindex{Knuth, Donald Ervin Knuth@\string\Knuth} és Moore\angolnevindex{Moore, Ronald Williams} \cite{Knuth1975}, 
továbbá Gurvich\angolnevindex{Gurvich, Vlagyimir Alexander ({\rus Gurvich, Vladimir Aleksandrovich})} és 
Khachiyan\angolnevindex{Khachiyan, Leonid Genrikhovich (1952--2005, {\rus Khachiyan, Leonid Genrikhovich})} \cite{Gurvich1997} 
cikkeit.)
\ujgyak \label{megold711-25}
Jelölje $a_n$ a választ. Ekkor  $a_2=a_3=2$, $a_4=3$, és $n>4$-re $a_n=a_{n-2}+a_{n-3}$, mert $n>4$ esetén a prímimplikánsok 
vagy $p_{n-2}\wedge x_{n-1}$, vagy $p_{n-3}\wedge x_{n-2}\wedge x_n$ alakúak, ahol $p_k$ egy a $k$-változós esetben elõálló 
prímimplikánst jelöl. (Ezek a prímimplikánsok a $P_n$ útgráf\gyakindex{útgráf = path graph} csúcsainak minimális 
lefedései\gyakindex{minimális csúcslefedés = minimal vertex covers}, és a \ref{gyak711-35}. gyakorlat értelmében 
\idez{kifejthetõk}\gyakindex{kifejthetõ prím implikáns = shellable prime implicant}, amikor lexikografikus sorrendben 
vannak listázva. Ekkor $a_n=(7P_n+10P_{n+1}+P_{n+2})/23$, ahol $P_n$ a \ref{gyak714-15}. gyakorlat 
Perrin-száma\gyakindex{Perrin-szám = Perrin number}.)\angolnevindex{Perrin, Francois Olivier Raoul} 
\ujgyak \label{megold711-26}
(a) Legyen $x_j=[j\in J]$. Ekkor $f(x)=0$ és $g(x)=1$. (Ezt a \ref{gyak711-18}. gyakorlatból tudjuk.) 

(b) Tegyük fel például, hogy $k\in J\in\cal G$, de $k\notin\bigcup_{I\in\cal F}I$, és hogy az (a) feltétel vizsgálatát elszalasztottuk. Legyen $x_j=[j{\,\in\,}J$ és $j{\,\neq\,}k]$. Ekkor $f(x)=1$, és mert minden $J'\in\cal G$ ($J'\neq J$) tartalmaz egy $\notin J$ elemet, ezért $g(x)=0$.

(c) Tegyük fel megint, hogy az (a) feltétel ellenõrzését elszalasztottuk. Ha mondjuk $\vert J\vert>\vert\cal F\vert$, 
legyen $x_j=[j$ $I\cap J$ legkisebb eleme valamely $I\in\cal F$-re]. Ekkor $f(x)=1$ és $g(x)=0$.

(d) Most tegyük fel, hogy $\bigcup_{I\in\cal F}I=\bigcup_{J\in\cal G}J$. Minden egyes $J\in\cal G$ $2_{n-\vert J\vert}$ 
olyan vektort jelez, ahol $f(x)=0$, $J\in\cal G$ pedig hasonlóan $2_{n-\vert J\vert}$ olyan vektort, ahol $g(x)=1$. 
Ha az $s$ összeg kisebb, mint $2^n$, számolhatjuk az $s=s_0+s_1$-et, ahol $s_0$ azt jelenti, hogy $x_n=0$ esetén mennyi 
járult hozzá az $s$-hez. Ha $s_0<2^{n-1}$, legyen $x_n\gets 0$, egyébként pedig $s_1<2^{n-1}$, így legyen $x_n\gets 1$.
Aztán legyen $n\gets n-1$. Végül minden $x_j$ ismert lesz, és ekkor $f(x)=1$, $g(x)=0$.
\ujgyak \label{megold711-27}
Legyen $m=\min\bigl(\{\vert I\vert\mid I\in{\cal F}\}\cup \{\vert J\vert\mid J\in{\cal G}\}\bigr)$ a legrövidebb prímklóz 
vagy prímimplikáns hossza. Ekkor $N\cdot 2^{n-m}\ge\sum _{I\in{\cal F}}2_{n-\vert I\vert}+ \sum _{J\in\cal G}2_{n-\vert J\vert}\ge 2^n$, 
így $m\le\lg N$. Ha mondjuk $\vert I\vert = m$, valamely $k$ index meg kell jelenjen a $J\in\cal G$ elemek közül legalább 
$1/m$-ben, mert minden $J$ metszi $I$-t. Ez az észrevétel azt bizonyítja, amit a gyakorlat \idez{segítségében} javasoltunk.

Most legyen $A(0)=A(1)=1$, és $v>1$-re $A(v)=1+A(v-1)+A(\lfloor\rho v\rfloor)$. Ekkor $A(\vert\cal F\vert\vert\cal G\vert)$ a 
rekurzív hívások számának (X1 végrehajtásai számának) felsõ korlátja. Ha $B(v)=A(v)+1$, akkor $v>1$-re 
$B(v)=B(v-1)+B(\lfloor\rho v\rfloor)$, ezért $v>k$-ra $B(v)\le B(v-k)+kB(\lfloor\rho v\rfloor)$. $k=v-\lfloor\rho v\rfloor$ 
azt mutatja, hogy $B(v)\le((1-\rho)v+2)B(\lfloor\rho v\rfloor)$. Ezért $B(v)= O(((1-\rho)v+2)^t)$, amikor $\rho^t v\le 1$, 
azaz amikor $t\ge\ln v/\ln(1/\rho)=\Theta((\lg v)(\lg N))$. Következésképpen 
$A(\vert\cal F\vert\vert\cal G\vert)\le A(N^2\!/4)=N_{O(\lg N)^2}$.

A gyakorlatban az algoritmus sokkal gyorsabban fog futni, mint ahogy a most kinyert pesz\-szimista korlátok mutatják. 
Mivel egy függvény prímklózai duáljának\gyakindex{duál =dual} prímimplikánsai, ez a probléma lényegében ugyanaz, 
mint annak ellenõrzése, hogy egy adott DNF egy másik duálja-e. Továbbá ha $f(x)=0$-val kezdünk, és ismételten keressük 
azon minimális $x$-eket, ahol $f(x)=g(\bar x)=0$, $f$-et addig \idez{növelhetjük}, amíg $g$ duáljához nem jutunk.

Az itt bemutatott ötlet Fredmantól\angolnevindex{Fredman, Michael Lawrence} és 
Khachiyantól\angolnevindex{Khachiyan, Leonid Genrikhovich (1952--2005, {\rus Khachiyan, Leonid Genrikhovich})} származik, 
akik javításokat is kidolgoztak a \cite{Fredman1996} publikációban a futási idõ $N^{O(\lg N/\lg\lg N)}$-re csökkentésére. 
Polinom idejû algoritmus nem ismert, de azért nem valószínû, hogy a probléma NP-teljes\gyakindex{NP-teljes = NP-complete}, 
mert meg tudjuk oldani kevesebb, mint exponenciális idõben\gyakindex{exponenciális idõ = exponential time}.
\vspace{3mm}
\ujgyak \label{megold711-28}
Az eredmény nyilvánvaló mihelyt megértjük, de a jelölések és a terminológia zavarba hozóak. Ezért gondoljunk végig egy 
konkrét példát: ha mondjuk $y_1=y_4=y_6=1$ és a többi $y_k$ zérus, a $g$ függvény akkor és csak akkor igaz, ha a $p_1$, 
$p_4$ és $p_6$ prímimplikánsok lefedik az összes olyan pontot, ahol $f$ igaz. Ekképpen láthatjuk, hogy kölcsönösen 
egyértelmû kapcsolat van $g$ prímimplikánsai és $f$ csak a $p_j$ prímimplikánsokat tartalmazó DNF-jei között. A leképezésben 
$g$ prímimplikánsai megfelelnek azoknak a \idez{nem redundáns}\gyakindex{nem redundáns = irredundant} DNF-eknek, amelyekben 
nem lehet $p_j$-t figyelmen kívül hagyni.

Cutler\angolnevindex{Cutler, Robert Brian} és Muroga\angolnevindex{Muroga, Saburo} ennek az elvnek számos tökéletesítését 
tárgyalja a \cite{Cutler1987} cikkben. 
\ujgyak \label{megold711-29}
(Az 5.19. gyakorlatban hasonló eljárásokat vizsgáltunk.)
\algindentset{\hskip\parindent B1}

\algstep B1. (Kezdõértékek beállítása.) Legyen $k\gets k'\gets 0$. 

\algstep B2. (Keressünk egy nullát.) Ha kell, növeljük $k$-t, amíg nem lesz vagy $k=m$ (vége), vagy $v_k\& 2^j=0$.

\algstep B3. (Állítsunk elõ egy $k'>k$-t.) Ha $k'\le k$, legyen $k'\gets k+1$.

\algstep B4. (Próbálkozzunk $k'$-vel.) Ha kell, növeljük $k'$-t, amíg nem lesz vagy $k'=m$ (vége), vagy $v_{k'}\ge v_k+2^j$.

\algstep B5. (Ugorjunk túl egy hibás párost.) Ha $v_k\xor v_{k'}\ge 2^{j+1}$, legyen $k\gets k'$, és térjünk vissza B2-re.

\algstep B6. (Rögzítsünk egy párosítást.) Ha $v_{k'}=v_k+2^j$, $(k,k')$ egy eredménypár.

\algstep B7. (Próbálkozzunk $k$-val.) Legyen $k\gets k+1$, és térjünk vissza B2-re. \quad\slug

\noindent (A B3 és B5 lépések elhagyhatók, bár ajánljuk õket.)
\ujgyak \label{megold711-30}
A következõ algoritmus változó hosszúságú rendezett listákat kezel egy olyan $S$ 
verem\gyakindex{verem adatszerkezet = stack structure} segítségével, amelynek a mérete sohasem haladja meg a $(2m+n)$-et. 
Amikor a verem teteje $S_t=s$, a felsõ lista az $S_s<S_{s+1}<\cdots<S_{t-1}$ rendezett halmaz. A jelzõ biteket egy másik, 
az $S$-sel (kezdõértékek beállítását követõen) megegyezõ méretû $T$ veremben kezeljük.
\algindentset{\hskip\parindent P1}

\algstep P1. (Kezdõértékek beállítása.) Legyen $0\le k<m$-re $T_k\gets0$. Ekkor $0\le j<n$-re alkalmazzuk a 
\ref{gyak711-29}. gyakorlat $j$-társ pásztázó algoritmusát, és minden $(k,k')$ megtalált párra legyenek $T_k\gets T_k+2^j$, 
$T_{k'}\gets T_{k'}+2^j$. Aztán legyen $s\gets t\gets 0$, és ismételjük a következõket, amíg $s=m$ nem lesz: ha $T_s=0$, 
kiírjuk a $(0,v_s)$ részkockát, és legyen $s\gets s+1$; egyébként pedig legyen $S_t\gets v_s$, $T_t\gets T_s$, $t\gets t+1$, 
$s\gets s+1$. Végül legyen $A\gets 0$ és $S_t\gets 0$.

\algstep P2. (Próbálkozzunk $A$-val.) (Ebben a részben az $S$ verem részkockák $\nu(A)+1$ számú listáját tartalmazza. 
Mégpedig ha $A=2^{e_1}+\cdots+2^{e_r}$ miközben $e_1>\cdots> e_r\ge0$, a verem az összes olyan $(a,b)\subseteq V$ részkockának a 
$b$ értékeit tartalmazza, ahol az $a$ értékek rendre 0, $2^{e_1}$, $2^{e_1}+2^{e_2}$, \dots,~$A$, eltekintve attól, hogy azok 
a részkockák, amelyek jelei nullák, nem jelennek meg. Esetleg az utolsót kivéve, ezek a listák nemüresek. Most $A$-t a 
következõ lehetséges értékre fogjuk növelni.) Legyen $j\gets 0$. Ha $S_t=t$ (azaz ha a felsõ lista üres), ha szükséges, 
növeljük $j$-t, amíg nem lesz $j\ge n$ vagy $A\&2^j\neq 0$. Aztán amíg $j<n$ és $A\&2^j\neq 0$, legyen $t\gets S_t-1$, 
$A\gets A-2^j$ és $j\gets j+1$. Fejezzük be az algoritmust, ha $j\ge n$; egyébként pedig legyen $A\gets A+2^j$.
\algstep P3. (Hozzuk létre az $A$ listát.) Legyenek $r\gets t$, $s\gets S_t$, és alkalmazzuk a \ref{gyak711-29}. 
gyakorlat $j$-társ pásztázó algoritmusát az $r-s$ számú $S_s<\cdots<S_{r-1}$ értékekre. Minden $(k,k')$ megtalált pár 
esetén, legyen $x\gets(T_k\& T_{k'})-2^j$; és ha $x=0$, írjuk ki az $(A,S_k)$ részkockát mint eredményt, egyébként legyen 
$t\gets t+1$, $S_t\gets S_k$, $T_t\gets x$. Végül legyen $t\gets t+1$, $S_t\gets r+1$, és térjünk vissza a P2 lépésre. \quad\slug

\noindent Ez az algoritmus részben Morreale\angolnevindex{Morreale, Eugenio} \cite{Morreale1967} ötletén alapul. A futási idõ lényegében 
(a P1 lépés miatt) $mn$-nel és a $V$-beli részkockák számával arányos. Ha $m\le 2^n(1-\epsilon)$, és ha az $m$ méretû $V$-t 
véletlenül választjuk, a \ref{gyak711-34}. gyakorlatban megmutatjuk, hogy a részkockák átlagos száma legfeljebb 
$O(\lg\lg n/\lg\lg\lg n)$-szorosa a maximális részkockák átlagos számának. Így a legtöbb esetben az átlagos futási idõ közel 
arányos az elõállított eredmény-részkockák átlagos mennyiségével. Másrészt pedig a \ref{gyak711-32}. és \ref{gyak711-116}. 
gyakorlatokban megmutatjuk, hogy az elõállított output nagy mennyiségû lehet.
\ujgyak \label{megold711-31}
(a) Legyenek $c=c_{n-1}\ldots c_0$, $c'=c'_{n-1}\ldots c'_0$, $c''=c''_{n-1}\ldots c''_0$. Ekkor kell, hogy legyen olyan $j$, hogy 
$c_ j\;\neq\ast$ és $c_ j\neq c''_j$; ellenkezõ esetben $c''\subseteq c$ lenne. Ehhez hasonlóan kell, hogy legyen olyan $k$, 
hogy $c'_k\neq\ast$ és $c'_k\neq c''_k$. Ha $j\neq k$, lenne olyan $x_{n-1}\ldots x_0\in c''$ pont, ami sem $c$-ben, 
sem $c'$-ben nincs benne, mert $x_j=\bar c_j$ és $x_ k=\bar c'_k$. Ezért $j=k$, és $j$ értéke egyértelmûen meg van határozva. 
Továbbá könnyû belátni, hogy $c'_j=\bar c_ j$. És ha $i\neq j$, akkor vagy $c_ i=\ast$, vagy $c_ i=c''_i$, továbbá vagy 
$c'_i=\ast$, vagy $c'_i=c''_i$.

(b) Ez az állítás (a) nyilvánvaló következménye. 

(c) Elõször bebizonyítjuk, hogy az E2 lépésben zárójelbe tett megállapítás igaz, valahányszor ez a lépés sorra kerül. 
$j=0$ esetben az állítás nyilvánvalóan igaz. Egyébként legyen $c\subseteq V$ $j$-kocka, és tegyük fel, hogy $c=c_0\cup c_1$, 
ahol $c_0$ és $c_1$ $(j-1)$-kockák. Az E2 lépés elõzõ végrehajtása során viszont azt kaptuk, hogy $c_0\subseteq c'_0\in C$ 
és $c_1\subseteq c'_1 \in C$ valamely $c'_0$-ra és $c'_1$-re; ezért vagy $c\subseteq c'_0\sqcup c'_1$, vagy $c\subseteq c'_0$, 
vagy $c\subseteq c'_1$. Mindegyik esetben $c$ benne van $C$ valamelyik elemében.

Bebizonyítjuk másrészt, hogy az E3 lépésben kapott eredmények éppen a $V$-beli maximális $j$-kockák. 
Legyen $c\subseteq V$ $k$-kocka. Ha $c$ maximális, amikor $j=k$-val érünk el az E3 lépéshez, akkor $c$ $C$-beli lesz, 
és ez lesz az eredmény. Ha $c$ nem maximális, amikor az E3 lépést elérjük, akkor pedig van valamely $c''\in C$ részkockában 
benne levõ $c'\subseteq V$ $k$-kocka társa. Mivel $c\not\subseteq c''$, a $c\sqcup c''$ konszenzus $C'$ $(j+1)$-kockája, 
és $c$ nem lesz output.

\emph{Hivatkozások:} A konszenzus fogalmát elõször Blake\angolnevindex{Blake, Archie} definiálta \cite{Blake1937} Ph.D. 
értekezésében, lásd \cite{Blake1937}. A fogalmat Samson\angolnevindex{Samson, Edward Walter} és 
Mills\angolnevindex{Mills, Burton E.} egymástól függetlenül újból kitalálta (\cite{Samson1954}). A mûveletet néha 
\textit{rezolválásnak}\gyakindex{rezolvens = resolvent} nevezik, amióta Robinson\angolnevindex{Robinson, John Alan} 
általánosabb formában (de inkább csak a klózokra, mint az implikánsokra vonatkozóan) -- mint a tételbizonyításhoz 
használt \idez{rezolúciós elvének}\gyakindex{rezolúciós elv = resolution principle} alapját -- használta (\cite{Robinson1965}). 
Az E algoritmus Ewingnek\angolnevindex{Ewing, Ann  Catherine}, Rothnak\angolnevindex{Roth, John Paul} és 
Wagnernek\angolnevindex{Wagner, Eric Gerhardt} tulajdonítható (\cite{Ewing1961}).
\ujgyak \label{megold711-32}
(a) Cseréljük ki a \ref{gyak711-31}. gyakorlatban megadott $\sqcup$ definíciót az $A=\{0,1,{*},{\bullet}\}$ 
négyelemû szimbólumhalmazon értelmezett  következõ asszociatív és kommutatív mûveletre: minden $a\in A$-ra és $x\in\{0,1\}$-re
$$\advance\abovedisplayskip-3pt
  \advance\belowdisplayskip-3pt
{*}\sqcup a=a\sqcup{*}=a,\qquad
  {\bullet}\sqcup a=a\sqcup{\bullet}=x\sqcup\bar x={\bullet}\qquad
\hbox{és}\qquad  x\sqcup x=x.$$
Legyenek $h(0)=0$, $h(1)=1$, $h({*})={*}$ és $h({\bullet})={\ast}$. Ekkor $c=h(c_1\sqcup\cdots\sqcup c_m)$ -- 
komponensenként számolva -- akkor és csak akkor általánosított konszenzus, ha ez a részkocka benne van $c_1\cup\cdots\cup 
c_m$-ben. (Lásd Tison\angolnevindex{Tison, Pierre Louis Joseph} \cite{Tison1967} dolgozatát.)

(b) Legyen például $c_j={*}^{j-1}1{*}^{m-j}1^{j-1}0{*}^{m-j}$. (Az utolsó komponens felesleges. 
Sloan\angolnevindex{Sloan, Robert Hal}, Szörényi\angolnevindex{Szörényi, Balázs} és Turán\angolnevindex{Turán György} 
\cite{Sloan2005} írásában jellemezte az összes megoldást.)

(c) (a) szerint minden prímimplikáns egyértelmûen megfelel a vele \idez{találkozó} implikánsok részhalmazának
(Chandra\angolnevindex{Chandra, Ashok Kumar} és Markowsky\angolnevindex{Markowsky, George}, \cite{Chandra1978}).

(d) Mint (b)-ben például az $(y_1{\wedge}\bar x_1)\vee(y_2{\wedge}x_1{\wedge}\bar x_2)\vee 
\cdots\vee(y_m{\wedge}x_1{\wedge}\cdots{\wedge}x_{m-1}{\wedge}\bar x_m)$ (Laborde\angolnevindex{Laborde, Jean-Marie}, 
\cite{Laborde1980}).
\ujgyak \label{megold711-33}
(a) ${2^n-2^{n-k}\choose m-2^{n-k}}/{2^n\choose m}$.

(b) Ki kell zárnunk azokat az eseteket, amikor $x_1\wedge\cdots\wedge x_{j-1} \wedge\bar x_j\wedge x_{j+1}\wedge\cdots\wedge x_k$ 
is implikáns. A logikai szita\gyakindex{logikai szita elve = inclusion-exclusion principle} elve alapján 
$$\postdisplaypenalty=10000
\advance\abovedisplayskip-3pt
\advance\belowdisplayskip-5pt
\sum_l\Bigl({k\atop l}\Bigr)(-1)^{l}\Bigl({2^n-(l+1)2^{n-k}\atop
m-(l+1)2^{n-k}}\Bigr)\Big/\Bigl({2^n\atop m}\Bigr)$$
a válasz; ami ${2^n-n-1\choose m-1}/{2^n\choose m}$-re egyszerûsíthetõ, amikor $k=n$.
\ujgyak \label{megold711-34}
(a) $c(m,n)=\sum c_j(m,n)$, ahol $c_j(m,n)=2^{n-j}{n\choose j}{2^n-2^j\choose m-2^j}/{2^n\choose m}$ az $n-j$ literált 
tartalmazó implikánsok átlagos száma (a \ref{gyak711-30}. gyakorlatban megadott terminológia szerint a $j$ dimenziós 
részkockák átlagos száma). Világos, hogy $c_0(m,n)=m$, és $$c_1(m,n)={nm(m-1)\over 2(2^n-1)}\le{mn\over2}\Bigl({m\over2^n}\Bigr) 
\le\half m;$$ hasonlóan $c_j(m,n)\le m/(2^j\!j!n^{2^j-1-j})$.
$p(m,n)=\sum_jp_j(m,n)$, ahol 
$$\displaylines{\enspace
p_0(m,n)=2^n\Bigl({2^n-n-1\atop m-1}\Bigr)\Big/\Bigl({2^n\atop m}\Bigr)=
m{(2^n-n-1)^{\underline{m-1}}\over(2^n-1)^{\underline{m-1}}}\ge
m{(2^n-n-m)^{m-1}\over(2^n-m)^{m-1}}
\hfill\cr\hfill
\ge\;m\Bigl(1-{n\over2^n-m}\Bigr)^{\!m}
\ge\;m\Bigl(1-{n\over2^n-2^n\!/n}\Bigr)^{\!2^n\!/n}
\!=\;m\exp\Bigl({2^n\over n}\ln\Bigl(1-{n^2\over2^n(n-1)}\Bigr)\Bigr).\enspace}$$

(b) Vegyük észre, hogy $t=\lfloor\lg\lg n-\lg\lg(2^n\!/m)+\lg(4/3)\rfloor \le\lg\lg n+O(1)$ elég kicsi. Újra meg újra 
felhasználjuk, hogy ${2^n-j\cdot2^t\choose m-j\cdot2^t}/{2^n\choose m}<\alpha_{mn}^{j}$, és valóban, amikor $j$ nem túl nagy,
$$\Bigl({2^n-j\cdot2^t\atop m-j\cdot2^t}\Bigr)\Big/\Bigl({2^n\atop m}\Bigr) \;=\;\alpha_{mn}^{j}(1+O(j^22^{2t}\!/m))$$ 
rendkívül jó közelítés. Hogy megalapozzuk a gyakorlat \idez{útmutatásában} bizonyítani javasolt állítást, figyeljük meg, 
hogy $\sum_{j<t}c_j(m,n)/c_t(m,n)=O(tc_{t-1}(m,n)/c_t(m,n))= O(t^2\!/(n\sqrt{\alpha_{mn}\!}\,))=O((\lg\lg n)^2\!/n^{1/3})$, 
továbbá $c_{t+j}(m,n)/c_t(m,n)=O((n/(2t))^{j}\alpha_{mn}^{2^{j}-1})$. Következésképpen 
\linebreak $c(m,n)/c_t(m,n)\approx 1+\half\bigl({n-t\over t+1}\bigr) \alpha _{mn}$, ahol a második kifejezés dominál, amikor 
$\alpha _{mn}$ nagy értékû. Továbbá 
$$\sum_l\Bigl({n-t\atop l}\Bigr)(-1)^{l}\alpha_{mn}^{l}\Bigl(1+ O\Bigl({l^22^{2t}\!\over m}\Bigr)\Bigr)\;=\;
(1-\alpha_{mn})^{n-t}+O(n^2\alpha _{mn}(1+\alpha _{mn})^n2^{2t}\!/m)$$ exponenciálisan kicsi hibatagot tartalmaz, 
mert $(1+\alpha _{mn})^n=O(e^{n^{1/3}})\ll m$. Így $p(m,n)/c_t(m,n)$ aszimptotikusan $e^{-n\alpha _{mn}} + 
\half\bigl({n-t\over t+1}\bigr)\alpha _{mn}e^{-n\alpha _{mn}^2}$.

(c) $\alpha _{mn}=2^{-2^t}\approx n^{-1}\ln(t/\ln t)$, így $c(m,n)/c_t(m,n)=1+O(t^{-1}\lg t)$, $p(m,n)/c_t(m,n) = 
t^{-1}\ln t+\half t^{-1}\ln t+O(t^{-1}\lg\lg t)$.  Ebben az esetben arra következtethetünk, hogy 
$${c(m,n)\over p(m,n)}\;=\;{2\over 3}{\lg\lg n\over \lg\lg\lg n}\Bigl(1+O\Bigl({\lg\lg\lg\lg n\over\lg\lg\lg n}\Bigr)\Bigr).$$

(d) Ha $n \alpha_{mn}\le\ln t-\ln\ln t$, akkor $p(m,n)/c(m,n)\ge p_t(m,n)/c(m,n)\ge t^{-1}\ln t+O(t^{-1}\lg t)^2$. Másrészt, 
ha $n \alpha _{mn}\ge\ln t-\ln\ln t$, akkor $p(m,n)/c(m,n)\ge p_{t+1}(m,n)/c(m,n)\ge\half t^{-1}\ln t+O(t^{-1}\lg\lg t)$.

(A $c(m,n)$ és $p(m,n)$ átlagokat, továbbá $c(m,n)$ szórásnégyzetét elõször Mileto\angolnevindex{Mileto, Franco} és 
Putzolu\angolnevindex{Putzolu, Gianfranco} tanulmányozta a \cite{Mileto1964} dolgozatban. Az olyan véletlen 
Boole-függvények\gyakindex{véletlen Boole-függvény = random Boolean function} implikánsaival, prímimplikánsaival és 
redundancia mentes\gyakindex{redundancia mentes = irredundant} DNF-jeivel kapcsolatos részletekbe menõ aszimptotikus 
információk, amikor minden $f(x_1,\ldots,x_n)$ érték a többitõl függetlenül $p(n)$ valószínûséggel 1, 
Weber\angolnevindex{Weber, Karl} \cite{Weber1983} munkájából származnak.)
\ujgyak \label{megold711-35}
(a) A koordináták átrendezésével elérhetjük, hogy a $p$-edik részkocka $0^k1^u{*}^v$, azaz $B_p=0^k1^u0^{v}$ és 
$S_p=1^{\!k}0^{u+v}$. Ekkor $p$-re vonatkozó indukció szerint ${*}^k1^u{*}^v$ minden pontja lefedett, mert $1\le j\le k$-ra 
${*}^{j-1}1{*}^{k-j}1^u{*}^v$ minden pontja lefedett.

(b) A $j$-edik és $k$-adik részkockák minden olyan koordináta-pozícióban különböznek, ahol $B_j\& S_k$ nem nulla. 
Másrészt ha $B_j\& S_k$ nulla, a $k$ részkocka $\bar S_k$ pontja -- (a) szerint -- egy elõzõ részkockában fekszik, 
mert $\bar S_k\supseteq B_j$.

(c) Az $1100$, $1\underline{0}11$, $\underline{0}011$ listából az 
$(x_1\wedge x_2)\vee (x_1\wedge\bar x_2\wedge x_3\wedge x_4)\vee(\bar x_1\wedge x_3\wedge x_4)$ ortogonális DNF-et nyerjük. 
(Az $S_k$ bitjei vannak aláhúzva.)

(d) Nyolc megoldás van. Például $(01100,0\underline{0}110,00\underline{0}11,11\underline{0}1\underline{0},11\underline{0}
\underline{0}0)$.

(e) $(001100,011\underline{0}00,00\underline{0}110,11\underline{0}\underline{0}10,11\underline{0}0\underline{0}0,
\underline{0}1\underline{0}\underline{0}11,0\underline{0}0\underline{0}11)$ szimmetrikus megoldás. És sokkal több lehetõség is 
van, például az $\{110000,011000,001100,000110,000011,110010,011010\}$ bitkódok 42 permutációja kifejtés.

(Ball\angolnevindex{Ball, Michael Owen} és Provan\angolnevindex{Provan, John Scott} \cite{Ball1988} publikációban vezette be 
monoton Boole-függvények esetén a kifejtés\gyakindex{kifejtés = shelling} fogalmát, és sok fontos alkalmazást is tárgyaltak.)
\ujgyak \label{megold711-36}
Ha $j<k$, valamely $\alpha$, $\beta$, $\gamma$ füzérekre $B_j=\alpha 1\beta$ és $B_k=\alpha 0\gamma$. Készítsük el az
$x_0=\alpha1\gamma$, $x_1=x_0'$, \dots, $x_{l}=x_{l-1}'$ sorozatot, ahol $x_{l}=\alpha00^{\vert\gamma\vert}$. Ekkor $f(x_0)=1$, 
mivel $x_0\supseteq B_k$, de $f(x_{l})=0$ mivel $x_{l}\subseteq B_j'$. Így azon $x_i$ füzér, melyre $f(x_i)=1$ és 
$f(x_{i+1})=\cdots=f(x_{l})=0$, $B$-ben van, megelõzi $B_k$-t és igazolja, hogy 
$B_j\& S_k\supseteq 0^{\vert\alpha\vert}10^{\vert\beta\vert}$.

(Ez a konstrukció és a \ref{gyak711-35}. gyakorlat részei Boros\angolnevindex{Boros Endre}, 
Crama\angolnevindex{Crama, Yves Jean-Marie Mathieu}, Ekin\angolnevindex{Ekin, Oya}, 
Hammer\angolnevindex{Hammer, Péter László (= Peter Leslie = Iv\u{a}nescu, Petru Ladislav, 1936--2006)}, 
Ibaraki\angolnevindex{Ibaraki, Toshihide} és Kogan\angolnevindex{Kogan, Alexander ({\rus Kogan, Aleksandr Yurp1evich})} 
\cite{Boros1988} cikkének köszönhetõk.)
\ujgyak \label{megold711-37} A
($000011$,
$0011\underline{0}1$,
$00110\underline{0}$,
$11\underline{0}1\underline{0}1$,
$11\underline{0}10\underline{0}$,
$110\underline{0}\underline{0}1$,
$110\underline{0}0\underline{0}$)
kifejtés sorrend az $n$-re vonatkozó általános jegyeket is kiemeli. Vannak ugyanakkor az 
($110{*}{*}{*}$,
$1110{*}{*}$,
${*}{*}110{*}$,
${*}{*}1110$,
$0{*}{*}{*}11$,
$10{*}{*}11$,
$111111$) ciklikusan szimmetrikushoz hasonló érdekes megoldások is, melyek nem a kiterjesztésen alapszanak.

Az alsó korlát meghatározásához rendeljünk minden $x$ ponthoz egy $w_x=-\prod_{j=1}^{n} (x_{2j-1}+x_{2j}-3x_{2j-1}x_{2j})$ súlyt, 
és vegyük észre, hogy egy részkockában szereplõ összes $x$ feletti $w_x$ összeg 0 vagy $\pm1$. (Elegendõ ezt a furcsa tényt az 
$n=1$ esetben elõálló kilenc lehetséges részkockára igazolni.) Most válasszunk diszjunkt részkockáknak egy halmazát, ami 
$F=\{x\mid f(x)=1\}$-et részekre osztja. Ekkor 
$$\sum_{C\,\tiny\mbox{választott}}\!\!1 \;\ge\;\sum_{C\,\tiny\mbox{választott}}\,\sum_{x\in C}w_x \;=\;
\sum_{x\in F}w_x\!\!\sum_{C\, \tiny\mbox{választott}}\!\![x\in C] \;=\;\sum_{x\in F}w_x.$$
${n\choose k}2^{n-k}$ olyan $x$ vektor van, amelyben pontosan $k$ darab $x_{2j-1}x_{2j}=1$ pár van, és a súly nem nulla. 
Ezért $\sum_{x\in F}w_x=\sum_{k>0}{n\choose k}2^{n-k}(-1)^{k-1}=2^n-(2-1)^n$. (Lásd Ball\angolnevindex{Ball, Michael Owen} és 
Nemhauser\angolnevindex{Nemhauser} \cite{Ball1979} munkáját.)
\ujgyak \label{megold711-38}
Egyáltalán nem. Egy DNF akkor és csak akkor kielégíthetõ, ha van legalább egy implikánsa. Egy DNF-fel kapcsolatban azt a 
problémát nehéz eldönteni, vajon \textit{tautológia-e}\gyakindex{tautológia = tautology} (mindig igaz-e), vagy sem.
\ujgyak \label{megold711-39}
Rendeljük preorder sorrendben az egyes belsõ csúcsokhoz az $y_1$, \dots, $y_N$ változókat, azaz a fa minden egyes csúcsa $F$ 
pontosan egy változójának felel meg. Minden egyes olyan $y$ belsõ csúcshoz, melynek gyermekei $(l,r)$ és címkéje a $\circ$ 
kétváltozós mûvelet, készítsünk négy $c_{00}\wedge c_{01}\wedge c_{10}\wedge c_{11}$ 3KNF klózt, ahol
$$c_{pq}=(y^{\,\overline{p\circ q}N}\,\vee\,l^{pN}\,\vee\,r^{qN}),$$
és $N$ komplemens-képzést jelöl (azaz $x^{0N}=x$ és $x^{1N}=\bar x$). Ezek a klózok tulajdonképpen azt állítják, 
hogy $y=l\circ r$. Például ha a $\circ$ mûvelet éppen $\wedge$, a négy klóz 
${(\bar y\vee l\vee r)}\wedge{(\bar y\vee l\vee\bar r)}\wedge{(\bar y\vee\bar l\vee r)}\wedge{(y\vee\bar l\vee\bar r)}$. 
Végül adjunk meg még egy klózt, az $(y_1\vee y_1\vee y_1)$-t, hogy $F=1$ legyen.

\medskip{\quoteformat
Minden magasabb szám elõállítható hármasok egyszerû összeillesztésével.\\
Tekintsük azt a ténynégyest, hogy A eladja B-t C-nek D áron.\\
Ez két tény összetettje:\\
elõször is A egy bizonyos ügyletet bonyolít le C-vel, amit E-vel jelölhetünk,\\
másodszor, ez az E ügylet a B eladása D összegért.\\
\author CHARLES S. PEIRCE, \textsl{A Guess at the Riddle} (1887) \cite{Peirce1887}
\angolnevindex{Peirce, Charles Santiago Sanders (1839--1914)}
}
\bigskip
\ujgyak \label{megold711-40}
Ha követjük az \idez{útmutatást}, $A$ azt jelenti, hogy \idez{$u<v$ $\xor$ $v<u$}, $B$ pedig azt, hogy \idez{$u<v$ $\wedge$ 
$v<w$ $\Rightarrow$~$u<w$}. Ekkor $A\wedge B$ azt jelenti, hogy a csúcsoknak van $u_1<u_2<\cdots<u_n$ lineáris 
rendezése\gyakindex{lineáris rendezés = linear ordering}. ($n!$ féleképpen elégíthetõ ki  $A\wedge B$.) $C$ azt jelenti, 
hogy $q_{uvw}$ és $u<v<w$ ekvivalensek, ezért $D$ azt jelenti, hogy $u$ és $w$ a rendezés szerint nem követik egymást, 
ha $u\nadj w$. Tehát $A\wedge B\wedge C\wedge D$ akkor és csak akkor elégíthetõ ki, ha van olyan lineáris rendezés, 
mely szerint a gráfban egymással nem szomszédos csúcsok nem követik egymást (azaz a rendezés szerint egymást követõ csúcsok 
a gráfban szomszédosak).
\ujgyak \label{megold711-41}
0. megoldás: Az \idez{$[m\le n]$} egy ilyen formula, de ez nem felel meg a gyakorlat szellemének. 

1. megoldás: Jelentse $x_{jk}$ azt, hogy a $j$-edik galamb a $k$-adik dúcot lakja. Ekkor a klózok a következõk: minden 
$1\le j\le m$-re $(x_{j1}\vee\cdots\vee x_{jn})$ és minden $1\le i<j\le m$-re és $1\le k\le n$-re $(\bar x_{ik}\vee\bar x_{jk})$. 
(Lásd Cook\angolnevindex{Cook, Stephen Arthur} és Reckhow\angolnevindex{Reckhow, Robert Allen}, \cite{Cook1979}; 
Haken\angolnevindex{Haken, Wolfgang}, \cite{Haken1985}.)

2. megoldás: Tegyük fel, hogy $n=2^t$, és lakjon a $j$-edik galamb az $(x_{j1}\ldots x_{jt})_2$ dúcban. $1\le i<j\le m$-re 
az $\bigl((x_{i1}\xor x_{j1})\vee\cdots\vee(x_{it}\xor x_{jt})\bigr)$ klózok berakhatók az $(y_{ij1}\vee\cdots\vee y_{ijt})$ 
alakú KNF-be, a $(\bar y_{ijk}\vee x_{ik}\vee\nobreak x_{jk})\wedge (y_{ijk}\vee x_{ik}\vee\bar x_{jk})\wedge
(y_{ijk}\vee\bar x_{ik}\vee x_{jk})\wedge (\bar y_{ijk}\vee\bar x_{ik}\vee\bar x_{jk})$ kiegészítõ klózok bevezetésével, mint ahogy a 
\ref{gyak711-39}. gyakorlatban tettük. Ennek a KNF-nek a teljes mérete $\Theta(m^2\lg n)$, szemben az 1. megoldásbeli 
$\Theta(m^2n)$-val. Ha $n$ nem 2 hatvány, akkor $O(m\lg n)$ darab további $O(\lg n)$ méretû klóz fogja kizárni a nem megfelelõ 
értékeket.
\ujgyak \label{megold711-42}
$(\bar x\vee y)\wedge(\bar z\vee x)\wedge(\bar y\vee\bar z)\wedge(z\vee z)$.
\ujgyak \label{megold711-43}
Valószínûleg nincs, mert minden 3SAT problémát át lehet alakítani ilyen alakúvá. Például az $(x_1\vee x_2\vee\bar x_3)$ klózt 
helyettesíthetjük  $(x_1\vee\bar y\vee\bar x_3)\wedge(\bar y\vee\bar x_2)\wedge (y\vee x_2)$-vel, ahol $y$ új változó 
(ekvivalens $\bar x_2$-vel).
\ujgyak \label{megold711-44}
Tegyük fel, hogy $f(x)=f(y)=1$ maga után vonja $f(x\& y)=1$-et, és azt is, hogy mondjuk $c=x_1\vee x_2\vee\bar x_3\vee\bar x_4$ 
$f$ prímklóza. Ekkor $c'=\bar x_1\vee x_2\vee\bar x_3\vee\bar x_4$ \textit{nem} klóza $f$-nek, ellenkezõ esetben 
$c\wedge c'=x_2\vee \bar x_3\vee\bar x_4$ is klóza lenne, cáfolva a prímséget. Így van olyan $y$ vektor, melyre $f(y)=1$ és 
$y_1=1$, $y_2=0$, $y_3=y_4=1$. Hasonlóan van olyan $z$, melyre $f(z)=1$ és $z_1=0$, $z_2=1$, $z_3=z_4=1$. De ekkor $f(y\& z)=1$, 
és így $c$ nem klóza $f$-nek. Ugyanez az érvelés mûködik minden, különbözõ számú literált tartalmazó $c$ klózra, feltéve, hogy 
legalább két literál nem komplementált benne.
\ujgyak \label{megold711-45}
(a) Egy $f(x_1,\ldots,x_n)$ Horn-függvény akkor és csak akkor indefinit, ha nem egyenlõ a \linebreak
$g(x_1,\ldots,x_n)=f(x_1,\ldots,x_n)\vee(x_1\wedge\cdots\wedge x_n)$ definit Horn-függvénnyel. Ezért $f\swap g$ kölcsönösen 
egyértelmû leképezés az indefinit és definit Horn-függvények között.
(b) Ha $f$ monoton, komplemense, $\bar f$, vagy azonosan 1, vagy indefinit Horn-függvény.
\ujgyak \label{megold711-46}
A C algoritmus 88 \texttt{xy} párt helyez a magba: amikor $\texttt{x}=\texttt{a}$, \texttt{b},
\texttt{c}, \texttt{0} vagy \texttt{1}, a következõ \texttt{y} karakter bármi lehet, kivéve \texttt{(}.
Amikor $\texttt{x}=\texttt{(}$, \texttt{*}, \texttt{/}, \texttt{+}, \texttt{-}, akkor $\texttt{y}=\texttt{(}$, \texttt{a}, 
\texttt{b}, \texttt{c}, \texttt{0}, \texttt{1} és ha $\texttt{x} = \texttt{(}$, \texttt{+} vagy \texttt{-}, akkor 
$\texttt{y}=\texttt{-}$. Végül a szabályos $\texttt{x}=\texttt{)}$ karakterrel kezdõdõ párok \texttt{)+}, \texttt{)-}, 
\texttt{)*}, \texttt{)/}, \texttt{))}.
\ujgyak \label{megold711-47}
Az a sorrend, amelyben a C algoritmus a magba rakja a csúcsokat, topologikus rendezés, mivel minden $k$-t megelõzõt az elõtt 
állítunk, mielõtt az algoritmus a $\texttt{TRUTH($x_k$)}\gets 1$ értéket beállítaná. A 2.2.3. algoritmus ugyanakkor 
sort\gyakindex{sor = queue} használ verem\gyakindex{verem = stack} helyett, ezért a rendezés, amit  elõállít, többnyire 
különbözik a C algoritmus által létrehozottól.
\ujgyak \label{megold711-48}
Legyen $\bot$ egy új változó, és cseréljünk ki minden indefinit Horn-klózt definitre úgy, hogy ezt az új változót 
hozzátesszük OR-ral. (Például a \idez{$\bar w\vee\bar y$\,}-bõl \idez{$\bar w\vee\bar y\vee\bot$\;}, azaz 
\idez{$w\wedge y\Rightarrow\bot$\;} lesz, a definit Horn-klózok változatlanok maradnak.) Aztán alkalmazzuk a C algoritmust. 
Az eredeti klózok akkor és csak akkor kielégíthetetlenek, ha $\bot$ az új klózok magjában\gyakindex{mag = core} van. 
Az algoritmust ezért be lehet fejezni, mihelyt $\texttt{TRUTH($\bot$)}\gets 1$.

(Quick\angolnevindex{Quick, Jonathan Horatio} kitalált egy másik megoldást: a C algoritmust alkalmazhatjuk a \ref{gyak711-45}. 
gyakorlat (a) megoldásában megkonstruált $g$ függvényre is, mert $f$ akkor és csak akkor kielégíthetetlen, ha minden $x_j$ 
változó $g$ magjában van. Az $f$ olyan indefinit klózaiból, mint a $\bar w\vee\bar y$, a $g$ függvény olyan különbözõ 
$(\bar w\vee\bar y\vee z)\wedge
  (\bar w\vee\bar y\vee x)\wedge
  (\bar w\vee\bar y\vee v)\wedge
  (\bar w\vee\bar y\vee u)\wedge\cdots{}$
klózai lesznek, melyekben a változók közül egy nincs az eredeti klózban. Ezért Quick elsõ ránézésre elegánsnak tûnõ javaslata 
a klózok számát $\Omega(n)$-szeresére növeli.)
\ujgyak \label{megold711-49}
$f\le g$ akkor és csak akkor, ha $f\wedge\bar g$ kielégíthetetlen, $f\wedge\bar g$ pedig akkor és csak akkor kielégíthetetlen, 
ha $f\wedge\bar c$ kielégíthetetlen $g$ minden $c$ klózára. De $\bar c$ literálok AND-je, így alkalmazhatjuk a \ref{gyak711-48}. 
gyakorlatot. (További részleteket azzal kapcsolatban, hogyan lehet hatékonyan ellenõrizni, $g$ vajon $f$ 
\idez{átnevezése}-e\gyakindex{átnevezés = renaming}, azaz meghatározni, vajon vannak-e olyan $(y_1,\ldots,y_n)$ konstansok, 
hogy $f(x_1,\ldots,x_n)=g(x_1\xor y_1,\ldots,x_n\xor y_n)$ lásd Kleine Büning\angolnevindex{Kleine Büning, Hans Gerhard} 
és Lettmann\angolnevindex{Lettmann, Theodor August} \cite{Kleine1994} könyvét.)
\ujgyak \label{megold711-50}
Lásd Istrate\angolnevindex{Istrate, Gabriel} \cite{Istrate2002} cikkét.
\ujgyak \label{megold711-51}
Ha a $v$ csúcs A-val jelölt, vezessük be az $\Rightarrow A^+(v)$ és $\Rightarrow B^-(v)$ klózokat, ha pedig B-vel jelölt, 
az $\Rightarrow A^-(v)$ és $\Rightarrow B^+(v)$ klózokat. Egyébként legyen $v$-nek $k$ kiinduló $v\to u_1$, \dots,~$v\to u_k$ 
éle. Vezessük be az $A^-(u_j)\Rightarrow B^+(v)$ és $B^-(u_j)\Rightarrow A^+(v)$ klózokat minden $1\le j\le k$-re. Ha $v$ 
nincs C-vel megjelölve, vezessük be az $A^+(u_1)\wedge\cdots\wedge A^+(u_k)\Rightarrow B^-(v)$ és 
$B^+(u_1)\wedge\cdots\wedge B^+(u_k)\Rightarrow A^-(v)$ klózokat. Minden kényszerítõ stratégia ezeknek a klózoknak a 
következménye. A 2.2.3--28. gyakorlat és megoldása további információkat nyújt.

Vegyük észre, hogy a C algoritmus emiatt elvileg annak a kérdésnek az eldöntésére is használható, hogy a 
sakkban\gyakindex{sakk = chess} a világos figurákkal lépõ játékos kikényszerítheti-e a gyõzelmet, eltekintve attól a 
bosszantó körülménytõl, hogy a megfelelõ irányított gráf mérete nagyobb, mint a létezõ világegyetemé.
\ujgyak \label{megold711-52}
A legjobb játék mellett az eredmények (lásd az \ref{gyak711-51}. gyakorlatot): 
$$\vcenter{\halign{\hfil$#$\hfil&&\quad\hfil#\hfil\cr
n&(a)&(b)&(c)&(d)\cr 
\noalign{\vskip2pt}
2&0 nyer&második játékos nyer&1 nyer&második játékos nyer\cr
3&0 nyer&kezdõ játékos nyer&kezdõ játékos nyer&kezdõ játékos nyer\cr
4&kezdõ játékos nyer&kezdõ játékos nyer&kezdõ játékos nyer&kezdõ játékos nyer\cr
5&második játékos nyer&döntetlen&döntetlen&1 veszít, ha õ kezd\cr
6&második játékos nyer&második játékos nyer&1 veszít, ha õ kezd&1 veszít, ha õ kezd\cr
7&1 veszít, ha õ kezd&második játékos nyer&1 veszít, ha õ kezd&1 veszít, ha õ kezd\cr
8&döntetlen&döntetlen&döntetlen&1 veszít, ha õ kezd\cr
9&döntetlen&döntetlen&döntetlen&1 veszít, ha õ kezd\cr
}}$$
(\idez{1 veszít, ha õ kezd} azt jelenti, hogy ha a 0 játékos kezd, a játszma döntetlen, egyébként 0 gyõzni tud.) 
\emph{Megjegyzések:} (a)-ban az 1 játékosnak van egy kis hátránya, mert amikor $x_1\ldots x_n$ 
tükörszó\gyakindex{tükörszó = palindrome}, $f(x) = 0$. Ez a kis különbség még akkor is befolyásolja az eredményt, amikor $n=7$. 
Bár az 1 játékos számára jobbnak tûnne, hogy a tábla bal felén kizárja a 0-ákat, kiderül, hogy amikor $n=4$, az elsõ lépés 
${\ast}1{\ast}{\ast}$ kell legyen; az alternatíva, ${\ast}0{\ast}{\ast}$, döntetlent eredményez. A (b) játék lényegében 
a játékosok közötti verseny azt észrevenni, hogy ki tudja az utolsó $\ast$-ot törölni. A (c) játékban $x_1\ldots x_n$ 
véletlen választása mellett $F_{n+2}/2^n=\Theta((\phi/2)^n)$ valószínûséggel lesz $f(x)=1$. A (d) játékban ez a valószínûség 
lassabban közelíti meg a nullát, mint $\Theta(1/\lg n)$. Az 1 játékos jobb (c)-ben, mint (d)-ben, amikor $n=2$, 5, 8 és 9; 
de nem rosszabb a többi esetben sem.
\ujgyak \label{megold711-53}
(a) A 3. napra kellene változtatni az 1. vagy a 2. napot. 
(b, f) Több lehetõség van. Például a 2. nap 3. napra való cseréje.
(c) Ezt az esetet illusztrálja a \ref{abra70-6}. ábra. Cseréljük ki a Desert vagy az Excalibur hotelt az Aladdinra.
(e) Cseréljük ki a Bellagio vagy a Desert hotelt az Aladdinra. Williams\angolnevindex{Williams, Robin McLaurim} pedig, aki a 
(\ref{keplet711-42}) körben nem jelenik meg, nem tehet az ütközésekrõl.
\ujgyak \label{megold711-54}
Ha $x$ és $\bar x$ $S$-ben vannak, akkor $u\in S\iff\bar u\in S$, mert az $x$-bõl $\bar x$-be, az $\bar x$-bõl $x$-be, az 
$x$-bõl $u$-ba és az $u$-ból $x$-be vezetõ utak létezése maga után vonja az $\bar u$-ból $\bar x$-be és az $\bar x$-bõl 
$\bar u$-ba, ezért az $u$-ból $\bar u$-ba és az $\bar u$-ból $u$-ba vezetõ utak létezését.
\ujgyak \label{megold711-55}
(a) Egy olyan klóz, mint az $x_1\vee\bar x_2\vee x_3\vee\bar x_4$ sikeres átnevezésének szükséges és elegendõ feltétele 
$(y_1\vee\bar y_2)\wedge(y_1\vee y_3)\wedge(y_1\vee\bar y_4)\wedge (\bar y_2\vee y_3)\wedge(\bar y_2\vee\bar 
y_4)\wedge(y_3\vee\bar y_4)$. Az $\{y_1,\ldots,y_n\}$ változók feletti $k \choose 2$ 2 hosszúságú klózból álló halmaz 
kapcsolatban van egy az $\{x_1,\ldots,x_n\}$ feletti $k$ hosszúságú klózzal. (Lásd Lewis cikkét \cite{Lewis1978}).

(b) Egy $\{x_1,\ldots,x_n\}$ feletti $k>3$ hosszúságú klóz az új $\{t_2,\ldots,t_{k-2}\}$ változók bevezetésével -- a fenti 
$k\choose2$ klóz helyett -- $3(k-2)$ $2$ hosszúságú klózzá alakítható. Az $x_1\vee x_2\vee x_3\vee x_4\vee x_5$ klóz esetén 
ezt illusztráljuk: 
$$ (y_1{\vee}y_2)\wedge (y_1{\vee}t_2)\wedge (y_2{\vee}t_2)\wedge (\bar t_2{\vee}y_3)\wedge (\bar t_2{\vee}t_3)\wedge 
(y_3{\vee}t_3)\wedge (\bar t_3{\vee}y_4)\wedge(\bar t_3{\vee}y_5)\wedge (y_4{\vee}y_5).$$
Általában is az $x_1\vee\cdots \vee x_k$-ból származó klózok az $1<j<k$-ra rendre 
$(\bar t_{j-1}\vee y_j)\wedge(\bar t_{j-1}\vee t_j)\wedge(y_j\vee t_j)$ lesznek, de $t_1$-et $\bar y_1$-gyel és $t_{k-1}$-et 
$y_k$-val helyettesítjük. Ha $x_j$ helyett $\bar x_j$ van, cseréljük $y_j$-t $\bar y_j$-re. Minden klózra tegyük meg ezt, 
a különbözõ klózok esetén különbözõ $t_j$ segédváltozókat használva. Az eredmény egy $<3m$ hosszúságú 2KNF formula, ami akkor 
és csak akkor elégíthetõ ki, ha lehetséges Horn-átnevezés. Most pedig alkalmazzuk a K tételt.

(Lásd Aspvall\angolnevindex{Aspvall, Bengt Ingemar} \cite{Aspvall1980} cikkét. Kleine 
Büning\angolnevindex{Kleine Büning, Hans Gerhard} és Lettmann\angolnevindex{Lettmann, Theodor August} \cite{Kleine1994} 
könyvében leírt egyik következmény, az 5.24. tétel úgy szól, hogy bármely kielégíthetõ 2KNF formulát át lehet nevezni 
Horn-klózokká. Vegyük észre, hogy ugyanazon függvény két KNF-je különbözõ eredményt adhat, például 
$(x\vee y\vee z)\wedge(\bar x\vee\bar y\vee\bar z)\wedge(\bar x\vee z)\wedge (\bar y\vee z)$ Horn-függvény, de a klózok ebben a  
reprezentációban komplementálással nem alakíthatók át Horn-formára.)
\ujgyak \label{megold711-56}
A gyakorlatbeli $f(x,y,z)$-hoz az itt látható (a \ref{abra70-6}. ábrával analóg) irányított gráf tartozik, és még egyszerûsíteni 
is lehet $y\wedge(\bar x\vee z)$-re. Minden csúcs erõs komponens. Így a formula az 
$\exists\exists\exists$,
$\exists\exists\forall$,
$\forall\exists\exists$; kvantorokkal igaz; és a további 
$\forall\exists\forall$,
$\rm(\mbox{akármi})\forall(\mbox{akármi})$ esetekben hamis. Általában is a nyolc lehetõséget elrendezhetjük egy kocka csúcsaiban 
úgy, hogy minden $\exists$-rõl $\forall$-re váltással a formula egyre nagyobb valószínûséggel válik hamissá. {\hspace{0.1cm}} \
\parbox[r]{1,5cm}{\epsfbox{\figdir/v4a.85}}
\ujgyak \label{megold711-57}

Felépítve az irányított gráfot, a K tételhez hasonlóan be tudjuk bizonyítani, hogy a kvantált formula akkor és csak akkor 
teljesül, ha (i) nincs olyan erõs komponens, amelyik egy $x$-szel együtt $\bar x$-et is tartalmazza; (ii) nincs 
univerzálisan kvantált $x$ változóból induló, másik univerzálisan kvantált $y$ változóba vagy $\bar y$ komplemensébe vezetõ út; 
(iii) nincs olyan univerzálisan kvantált $x$ változót tartalmazó erõs komponens, amelyik egy olyan egzisztenciálisan kvantált 
$v$ változót vagy annak $\bar v$ komplemensét is tartalmazza, melyekre \idez{$\exists v$} \idez{$\forall x$} bal oldalán 
jelenik meg. Ez a három feltétel nyilván szükséges, és könnyen tesztelhetõ, miközben az erõs komponenseket keressük.

Hogy megmutassuk, a feltételek elegendõek, vegyük elõször észre, hogy ha $S$ egy csak egzisztenciális literálokkal rendelkezõ 
erõs komponens, az (i) feltétel teljesülése megengedi, hogy minden literált azonos értékûvé tegyünk, mint ahogy azt a K 
tételben tettük. Egyébként $S$-nek pontosan egy univerzális literálja van: $u_j=x_j$
vagy $u_j=\bar x_j$. $S$-ben az összes többi literál egzisztenciális, és $x_j$ jobb oldalán van, ezért ezeket $u_j$-vel 
tehetjük egyenlõvé. Továbbá az összes $S$-be vezetõ út ilyen esetben tisztán egzisztenciális erõs komponensekbõl indul, 
melyek értékét 0-ra lehet állítani, mert az ilyen erõs komponensek komplemensei szintén $S$-be vezetnek, ugyanis ha $v$ és 
$\bar v$ maga után vonja $u_j$-t, akkor $\bar u_j$ maga után vonja $\bar v$-t és $v$-t.

{Lásd Aspvall, Plass és Tarján cikkét \cite{Aspvall1979}. Krom\angolnevindex{Krom, Melven Robert} \cite{Krom1970} írásában 
bebizonyította, hogy az elsõrendû predikátum-kalkulusban\gyakindex{elsõrendû predikátum-kalkulus = first-order predicate calculus} 
a hasonló probléma -- ahol az egyszerû Boole-változók helyét paraméteres predikátumok foglalják el, és a kvantifikáció a 
paraméterek felett zajlik -- általánosan megoldhatatlan\gyakindex{megoldhatatlan probléma = unsolvable problem}.}
\ujgyak \label{megold711-58}
Hasonlóan a \ref{gyak711-48}. gyakorlathoz, a \idez{$\bot$} bevezetése és a bal oldalon \idez{$\forall\bot$} elhelyezése után 
feltehetjük, hogy minden klóz definit. Legyenek $x_0$, $x_1$, \dots,~$x_m$ ($\bot$-ot $x_0$ jelöli) az univerzális változók és 
$y_1$, \dots,~$y_n$ az egzisztenciális változók. Jelentse \idez{$u\prec v$} azt, hogy a kvantorok listájában az $u$ változó a 
$v$ változó bal oldalán jelenik meg. Ha $y_k\prec x_j$, távolítsuk el $\bar x_j$-t azokból a klózokból, amelyeknek nem 
komplementált literálja $y_k$. Minden $0\le j\le m$-re az 
$(x_0)\wedge\cdots\wedge(x_{j-1})\wedge(x_{j+1})\wedge\cdots\wedge(x_m) \wedge\bigwedge\{(y_k)\mid y_k\prec x_j$ és 
$y_k\in C_0\}$ kiegészítõ klózok hozzáfûzése után, legyen $C_j$ a Horn-klózok magja\gyakindex{mag = core}. 
(Másképp fogalmazva $C_j$ azt mondja meg, mire következtethetünk, amikor $x_j$ kivételével minden $x$-rõl feltesszük, 
hogy igaz.) Azt állítjuk, hogy az adott formula akkor és csak akkor igaz, ha minden $0\le j\le m$-re $x_j\notin C_j$.

Hogy bebizonyítsuk, amit akarunk, jegyezzük meg elõször, hogy a formula biztosan hamis, ha  valamely $j$-re $x_j\in C_j$. 
(Legyen $y_k\gets 1$, amikor $y_k\in C_0$, $y_k\prec x_j$ és $x_i=1$, ha $i\neq j$.) Különben mindegyik $y_k$-t megválaszthatjuk 
úgy, hogy a formulát igazzá tegye: ha $y_k\notin C_0$, legyen $y_k\gets 0$, egyébként pedig legyen 
$y_k\gets\bigwedge\{x_j\mid y_k\notin C_j\}$. Vegyük észre, hogy $y_k$ $x_j$-tõl csak akkor függ, amikor $x_j\prec y_k$. 
A nem komplemens $x_j$ literállal rendelkezõ minden $c$ klóz igaz: ha $x_j=0$, valamely $\bar y_k$ megjelenik abban a $c$-ben, 
melyre $y_k\notin C_j$, mert $x_j\notin C_j$; ezért $y_k=0$. És minden a nem komplemens $y_k$ literált tartalmazó $c$ klóz 
is igaz: ha $y_k=0$, akkor vagy $y_k\notin C_0$, ebben az esetben valamely $c$-beli $\bar y_{l}$ olyan, hogy $\notin C_0$, 
ezért $y_{l}=0$; vagy pedig valamely $j$-re $y_k\in C_0\setminus C_j$, és ebben az esetben valamely $x_j=0$, és vagy $\bar x_j$ 
lesz benne $c$-ben, vagy valamely olyan $\bar y_{l}$ jelenik meg $c$-ben, amely $y_{l}\notin C_j$, és így $y_{l}=0$.

(Ez a megoldás Dahlheimernek\angolnevindex{Dahlheimer, Thorsten} köszönhetõ. Lásd 
Karpinski\angolnevindex{Karpinski (= Karpi\'nski), Marek Miczyslaw)}, Kleine Büning\angolnevindex{Kleine Büning, Hans Gerhard} 
és Schmitt\angolnevindex{Schmitt, Peter Hans} \cite{Karpinski1988}; Kleine Büning, Subramani\angolnevindex{Subramani, Krishnamurthy} 
és Zhao\angolnevindex{Zhao, Xishun} \cite{Kleine2004}.)

\ujgyak \label{megold711-59}
$n$-re vonatkozó indukcióval: Tegyük fel, hogy $f(0,x_2,\ldots,x_n)$ az $y_1$, \dots, $y_{2^{n-1}}$ kvantált formulákhoz vezet, 
miközben  $f(1,x_2,\ldots,x_n)$ pedig -- ehhez hasonlóan -- a $z_1$, \dots, $z_{2^{n-1}}$ formulákhoz. Ekkor 
$\exists x_1 f(x_1,x_2,\ldots,x_n)$ az $y_1\vee z_1$, \dots,$y_{2^{n-1}}\vee z_{2^{n-1}}$ formulákhoz, 
$\forall x_1 f(x_1,x_2,\ldots,x_n)$ pedig az $y_1\wedge z_1$, \dots, $y_{2^{n-1}}\wedge z_{2^{n-1}}$ formulákhoz vezet. 
Most használjuk fel azt a tényt, hogy $(y{\vee}z)+(y{\wedge}z)=y+z$. (Lásd Pehoushek elõadását \cite{Pehousek2002}.)
\ujgyak \label{megold711-60}
(a) és (b). De (c) mindig 0; (d) mindig 1;
(e) $\overline{\langle xyz\rangle}$; (f) $\bar x\vee\bar y\vee\bar z$.
\ujgyak \label{megold711-61}
% True\dash---indeed obviously so, when $w=0$, and when $w=1$.
Igaz -- és ez csakugyan magától értetõdõen így van, ha $w=0$, és ha $w=1$.
\ujgyak \label{megold711-62}
Mivel $\{x_1,x_2,x_3\}\subseteq\{0,1\}$, a szimmetria miatt feltehetjük, hogy $x_1$ egyenlõ $x_2$-vel. Ekkor csak annyit feltételezve, hogy $f$ az elsõ három változójában monoton, vagy $f(x_1,x_1,x_3,x_4,\ldots,x_n)=f(x_1,x_1,x_1,x_4,\ldots,x_n)$, vagy $f(x_1,x_1,x_3,x_4,\ldots,x_n)=f(x_3,x_1,x_3,x_4,\ldots,x_n)$.
\ujgyak \label{megold711-63}
% $\<xyz\>=\<xxyyz\>$. \em Note: Emil ^{Post} proved, in fact,
% that a single subroutine for {\it any\/} nontrivial monotone self-dual
% function will suffice to compute them all. (By induction on~$n$,
% at least one appropriate way to call such an $n$-ary subroutine 
% will yield $\<xyz\>$.)
$\langle xyz\rangle=\langle xxyyz\rangle$. \emph{Megjegyzés:} Post\angolnevindex{Post} tulajdonképpen azt is bebizonyította, hogy \textit{bármelyik} nemtriviális monoton önduális függvényhez egyetlen eljárás elég lesz, hogy mindet kiszámolhassuk. ($n$-re vonatkozó indukcióval belátható, hogy egy ilyen $n$-paraméteres eljárást legalább egyféleképpen meg tudunk hívni úgy, hogy $\langle xyz\rangle$-t eredményezze.)
\ujgyak \label{megold711-64}
% [{\sl FOCS\/ \bf3} (1962), 149--157.] (a) If $f$ is monotone and
% self-dual, Theorem~P says that $f(x)=x_k$ or $f(x)=\<f_1(x)@f_2(x)@f_3(x)\>$.
% The condition therefore holds either immediately or by
% induction. Conversely, if the condition holds it implies that $f$ is monotone
% (when $x$ and~$y$ differ in just one bit) and self-dual (when they
% differ in all bits).\tighten\par
[{\sl FOCS\/ \bf3} (1962), 149--157.] (a) Ha $f$ monoton és önduális, a P tétel szerint $f(x)=x_k$ vagy $f(x)=\langle f_1(x)f_2(x)f_3(x)\rangle$. A feltétel ezért vagy rögtön, vagy pedig indukcióval bizonyíthatóan teljesül. Megfordítva, ha a feltétel teljesül, az maga után vonja, hogy $f$ monoton (amikor $x$ és $y$ csak egyetlenegy bitben különböznek) és önduális (amikor minden bitben különböznek).

% (b) We merely need to show that it is possible to define $f$ at one new point
% without introducing a conflict. Let $x$ be the lexicographically smallest point
% where $f(x)$ is undefined. If $f(\bar x)$ is defined, set $f(x)=\overline
% {f(\bar x)}$. Otherwise if $f(x')=1$ for some $x'\subseteq x$,
% set $f(x)=1$; otherwise set $f(x)=0$. Then the condition
% still holds.
(b) Csak azt kell bizonyítani, hogy $f$-et a feltétel megsértése nélkül lehet egy új pontban definiálni. Legyen $x$ a lexikografikusan legkisebb olyan pont, ahol $f(x)$ definiálatlan. Ha $f(\bar x)$ definiált, legyen $f(x)=\overline {f(\bar x)}$. Egyébként ha $f(x')=1$ valamely $x'\subseteq x$-re, legyen $f(x)=1$; különben legyen $f(x)=0$. Ezután a feltétel továbbra is teljesül.
\ujgyak \label{megold711-65}
% If $\cal F$ is maximal intersecting, we have (i) $X\in{\cal F}$
% $\implies$ $\overline X\notin{\cal F}$, where $\overline X$ is the
% complementary set $\{1,2,\ldots,n\}\setminus X@$;
% (ii)~$X\in\cal F$ and $X\subseteq Y$ $\implies$ $Y\in\cal F$, because
% ${\cal F}\cup\{Y\}$ is intersecting;
% and (iii)~$X\notin\cal F$ $\implies$ $\overline X\in\cal F$, because
% ${\cal F}\cup\{X\}$ must contain an element $Y\subseteq\overline X$.
% Conversely, one can prove without difficulty that any family~$\cal F$
% satisfying (i) and~(ii) is intersecting, and maximal if it also
% satisfies~(iii).\par
Ha $\cal F$ maximális egymást metszõ család, akkor (i) ha $X\in{\cal F}$ $\implies$ $\overline X\notin{\cal F}$, ahol $\overline X$ az $\{1,2,\ldots,n\}\setminus X$ komplementer halmazt jelöli; (ii) ha $X\in\cal F$ és $X\subseteq Y$ $\implies$ $Y\in\cal F$, mert ${\cal F}\cup\{Y\}$ is egymást metszõ család; és (iii) $X\notin\cal F$ $\implies$ $\overline X\in\cal F$, mert ${\cal F}\cup\{X\}$-nek tartalmaznia kell egy $Y\subseteq\overline X$ elemet. Megfordítva nehézség nélkül be lehet bizonyítani, hogy bármely $\cal F$ család, amelyik kielégíti (i)-t és (ii)-t, egymást metszõ, és maximális is, ha (iii)-t is kielégíti.

% \em Punch line: All three statements are simple, in the
% language of Boolean functions: (i)~$f(x)=1 \implies f(\bar x)=0$;
% (ii)~$x\subseteq y \implies f(x)\le f(y)$;
% (iii)~$f(x)=0\implies f(\bar x)=1$.\tighten
\emph{Csattanó:} A Boole-függvények nyelvén mind a három állítás egyszerû: (i) $f(x)=1 \implies f(\bar x)=0$; (ii)~$x\subseteq y \implies f(x)\le f(y)$; (iii)~$f(x)=0\implies f(\bar x)=1$.
\ujgyak \label{megold711-66}
% [T. ^{Ibaraki} and T. ^{Kameda}, {\sl IEEE Transactions on Parallel
% and Distributed Systems\/ \bf4} (1993), 779--794.]
% Every family with the property that $Q\subseteq Q'$ implies
% $Q=Q'$ clearly corresponds to the prime implicants of a monotone Boolean
% function~$f\?$. The further condition that $Q\cap Q'\ne\emptyset$ corresponds to
% the further relation $f(\bar x)\le\smash{\overline{f(x)}}$, because $f(\bar x)=
% f(x)=1$ holds if and only if $x$ and $\bar x$ both make prime implicants
% true.\par
(Ibaraki\angolnevindex{Ibaraki} és Kameda\angolnevindex{Kameda}, \cite{Ibaraki1993}) Minden olyan kvórumcsalád, melyre $Q\subseteq Q'$ maga után vonja, hogy $Q=Q'$, kapcsolatba hozható valamely $f$ monoton Boole-függvény prímimplikánsaival. A további $Q\cap Q'\ne\emptyset$ feltétel pedig az $f(\bar x)\le\smash{\overline{f(x)}}$ relációval hozható kapcsolatba, mert $f(\bar x)= f(x)=1$ akkor és csak akkor, ha $x$ is, $\bar x$ is igazzá teszi a prímimplikánsokat.

% If coteries $\cal C$ and $\cal C'$ correspond in this way to functions
% $f$ and~$f'$, then $\cal C$ dominates $\cal C'$ if and only if $f\ne f'$
% and $f'(x)\le f(x)$ for all~$x$. Then $f'$ is not self-dual, because there is
% an~$x$ with $f'(\bar x)=0$, $f(\bar x)=1$; and we have $f(x)=0$,
% hence $f'(x)=0$.\par
Ha a $\cal C$ és $\cal C'$ klikkekhez hozzárendelünk ilyen $f$ és $f'$ függvényeket, akkor $\cal C$ akkor és csak akkor dominálja $\cal C'$-t, ha minden $x$-re $f\ne f'$ és $f'(x)\le f(x)$. Ekkor $f'$ nem önduális, mert van olyan $x$, hogy $f'(\bar x)=0$, $f(\bar x)=1$; és $f(x)=0$, ezért $f'(x)=0$.

% Conversely, if $f'$ is not self-dual, there's a~$y$ with $f'(y)=f'(\bar y)=0$.
% If $y=0\ldots0$, coterie~$\cal C'$ is empty, and dominated by every other
% coterie. Otherwise define $f(x)=f'(x)\lor\[x\supseteq y]$. Then $f$ is
% monotone, and $f(\bar x)\le\overline{f(x)}$ for all~$x$; so it corresponds
% to a coterie that dominates~$\cal C'$.\par
Megfordítva, ha $f'$ nem önduális, van olyan $y$, melyre $f'(y)=f'(\bar y)=0$. Ha $y=0\ldots0$, a $\cal C'$ klikk üres, és minden más klikk dominálja. Különben pedig legyen $f(x)=f'(x)\lor[x\supseteq y]$. Ekkor $f$ monoton, és $f(\bar x)\le\overline{f(x)}$ minden $x$-re; tehát egy olyan klikkel hozható kapcsolatba, amely dominálja $\cal C'$-t. 
\ujgyak \label{megold711-67}
% (a) By induction, if $Y(t_{100})=Y(t_{010})=1$ we have a Y of 1s,
% because the Ys in $t_{100}$ and $t_{010}$ either intersect or are adjacent.
% Similarly, if $Y(t_{100})=Y(t_{010})=0$ we do not have a Y of~1s, because
% there is a Y of~0s.\par
% (b) This formula follows from (a) and the fact that
% $(t_{abc})_{de\!@f}=t_{(a+d)(b+e)(c+f)}=(t_{de\!@f\!})_{abc}$.
% [^{Schensted} stated the results of this exercise, and those of exercises
% 62~and~69, in a 28-page letter sent to Martin ^{Gardner} on 21 January 1979.
% ^{Milnor} had written to Gardner on 26 March 1957
% about a corresponding game called ``Triangle.'']
(a) Indukcióval, ha $Y(t_{100})=Y(t_{010})=1$, 1-esek Y-ját nyerjük, mert a $t_{100}$-beli és $t_{010}$-beli Y-ok vagy egymást metszõk, vagy egymás mellett levõk. Hasonlóan, ha $Y(t_{100})=Y(t_{010})=0$, akkor nincs 1-esek Y-ja, mert épp 0-ák Y-ja van. 

(b) Ez a formula (a)-ból következik, és tény, hogy $(t_{abc})_{def}=t_{(a+d)(b+e)(c+f)}=(t_{def})_{abc}$. (Ennek, a \ref{gyak711-62}. és a \ref{gyak711-69}. gyakorlatoknak az eredményeit Schensted\angolnevindex{Schensted} fejtette ki egy Martin Gardnernek\angolnevindex{Gardner} 1979-ben írt 28 oldalas levelében. Milnor\angolnevindex{Milnor} 1957-ben írt Gardnernek egy ide kapcsolódó, \idez{Háromszögnek} nevezett játékról.)


\noindent\parbox{10,5cm}{
\ujgyak \label{megold711-68}
% When $n=15$, the author's best attempt so far has 59 black stones:
% \smash{\kern-20pt\lower 50pt\vbox{\epsfbox{\figdir/v4a.84}\kern3pt}\kern-20pt}%
%.\break
% (The answers for $1\le n\le 10$ are respectively
% 2, 3, 4, 6, 8, 11, 14, 18, 23, 27.\hskip18mm\break
% The prime implicants for these functions can be represented by
% fairly\hskip23mm\break
% small ^{ZDDs}; see Section 7.1.4.)\vskip2\baselineskip
Amikor $n=15$, a szerzõ legjobb próbálkozása eddig 59 fekete golyó:\\
($1\le n\le 10$ esetben a válaszok rendre 2, 3, 4, 6, 8, 11, 14, 18, 23, 27. Ezeknek a függvényeknek a prímimplikánsait elég kis ZDD-kkel\index{zérus-csökkentõ döntési diagram, ZDD = zero-suppressed decision diagram, ZDD} reprezentálhatjuk, lásd a 7.1.4. pontban.)}
\ \hspace{0,1cm} \
\parbox{2cm}{\epsfbox{\figdir/v4a.84}}
\ujgyak \label{megold711-69}
% The proof of Theorem P shows that we need only prove $Y(T)\le f(x)$.
% A~Y in~$T$ means that we've got at least one variable in each~$p_j$. Therefore
% $f(\bar x_1,\ldots,\bar x_n)=0$, and $f(x_1,\ldots,x_n)=1$.
A P tétel bizonyítása szerint csak azt kell megmutatnunk, hogy $Y(T)\le f(x)$. Egy $T$-beli Y azt jelenti, hogy legalább egy változó van minden $p_j$-ben. Ezért $f(\bar x_1,\ldots,\bar x_n)=0$ és $f(x_1,\ldots,x_n)=1$.
\ujgyak \label{megold711-70}
% Self-duality of $g$ is obvious for arbitrary~$t$ when $f$ is
% self-dual:
% $\overline{g(\bar x)}=\bigl(\overline{f(\bar x)}\lor\[@\bar x=t@]\bigr)
% \land\[@\bar x\ne\bar t@@]=\bigl(f(x)\lor\[@x=\bar t@@]\bigr)\land\[@x\ne t@]
% =\bigl(f(x)\land\[@x\ne t@]\bigr)\lor\bigl(\[@x=\bar t@@]\land\[@x\ne t@]\bigr)
% =g(x)$.\par
Ha $f$ önduális, $g$ öndualitása tetszõleges $t$-re nyilvánvaló: 
$\overline{g(\bar x)}=\bigl(\overline{f(\bar x)}\lor [\bar x=t]\bigr)
\land [\bar x\ne\bar t]=\bigl(f(x)\lor [x=\bar t]\bigr)\land [x\ne t]
=\bigl(f(x)\land [x\ne t]\bigr)\lor\bigl([x=\bar t]\land [x\ne t]\bigr)
=g(x)$.

% Let $x=x_1\ldots x_{j-1}0x_{j+1}\ldots x_n$ and
% $y=x_1\ldots x_{j-1}1x_{j+1}\ldots x_n$; for monotonicity
% we must prove that $g(x)\le g(y)$.
% If $x=t$ or $y=t$, we have $g(x)=0$; if $x=\bar t$ or $y=\bar t$, we have
% $g(y)=1$; otherwise $g(x)=f(x)\le f(y)=g(y)$. [{\sl European
% J. Combinatorics\/ \bf16} (1995), 491--501; discovered independently
% by J.~C. ^{Bioch} and T.~^{Ibaraki}, {\sl IEEE Transactions on Parallel and
% Distributed Systems\/ \bf6} (1995), 905--914.]
Legyenek $x=x_1\ldots x_{j-1}0x_{j+1}\ldots x_n$ és $y=x_1\ldots x_{j-1}1x_{j+1}\ldots x_n$; a monotonitáshoz be kell bizonyítani, hogy $g(x)\le g(y)$. Ha $x=t$ vagy $y=t$, akkor $g(x)=0$; ha $x=\bar t$ vagy $y=\bar t$, akkor $g(y)=1$; egyébként $g(x)=f(x)\le f(y)=g(y)$. (J. Combinatorics 16 (1995), 491--501; ettõl függetlenül Bioch\angolnevindex{Bioch} és Ibaraki\angolnevindex{Ibaraki} is közölte a \cite{Bioch1995} cikkben.)
\ujgyak \label{megold711-71}
$\bigl<\langle xyz\rangle uv\bigr>
=\bigl<\langle \langle xyz\rangle uv\rangle uv\bigr>
=\bigl<\langle \langle yuv\rangle x\langle zuv\rangle\rangle v\bigr>
=\bigl<\langle yuv\rangle \langle xuv\rangle \langle \langle zuv\rangle uv\rangle\bigr>
=\bigl<\langle xuv\rangle\langle yuv\rangle\langle zuv\rangle\bigr>$.
\ujgyak \label{megold711-72}
(\ref{keplet711-58}) bizonyításához $v=\langle uvu\rangle =u$.
(\ref{keplet711-59}) bizonyításához $\langle uyv\rangle =\langle vu\langle xuy\rangle\rangle =\langle\langle vux\rangle uy\rangle =\langle xuy\rangle =y$.
(\ref{keplet711-60}) bizonyításához $\langle xyz\rangle =\langle\langle xuv\rangle yz\rangle =\langle x\langle uyz\rangle\langle vyz\rangle\rangle =\langle xyy\rangle =y$.
\ujgyak \label{megold711-73}
% (a) If $d(u,v)=d(u,x)+d(x,v)$, we obviously obtain a shortest path
% of the form $u\adj\cdots\adj x\adj\cdots\adj v$. Conversely, if
% $[uxv]$, let $u\adj\cdots\adj x\adj\cdots\adj v$ be a shortest path,
% with $l$ steps to~$x$ followed by $m$ steps to~$v$. Then $d(u,v)=l+m
% \ge d(u,x)+d(x,v)\ge d(u,v)$.\par
(a) Ha $d(u,v)=d(u,x)+d(x,v)$, egy $u\adj\cdots\adj x\adj\cdots\adj v$ alakú legrövidebb utat nyilvánvalóan nyerünk. Megfordítva, ha $[uxv]$, legyen $u\adj\cdots\adj x\adj\cdots\adj v$ legrövidebb út, melyben $l$ lépést tettünk meg $x$-ig, majd innen $m$ lépést $v$-ig. Ekkor $d(u,v)=l+m
\ge d(u,x)+d(x,v)\ge d(u,v)$.

% (b) For all $z$, $\<zxu\>=\bigl<z\<vux\>\<yux\>\bigr>=\bigl<\<zvy\>ux\bigr>
% \in\bigl\{\<yux\>,\<vux\>\bigr\}=\{u,x\}$.\par
(b) Minden $z$-re $\langle zxu\rangle =\bigl<z\langle vux\rangle \langle yux\rangle \bigr>=\bigl<\langle zvy\rangle ux\bigr>\in\bigl\{\langle yux\rangle ,\langle vux\rangle \bigr\}=\{u,x\}$.

% (c) We can assume that $d(x,u)\ge d(x,v)>0$.
% Let $u\adj\cdots\adj y\adj v$ be a shortest path, and let $w=\<xuy\>$.
% Then $\<vxw\>=\bigl<v\<vux\>\<wux\>\bigr>=\bigl<\<vvw\>ux\bigr>=\<vux\>=x$, so
% $x\in[w\dts v]$. We have $[uwy]$, because $d(u,y)<d(u,v)$ and $w\in[u\dts y]$.
% If $w\ne u$ we have $d(w,v)<d(u,v)$; hence $[wxv]$, hence $[uxv]$.
% If $w=u$ we have $x\adj u$ by~(b). But~$d(x,u)\ge d(x,v)$; therefore
% $x\adj v$, and $[uxv]$.\par
(c) Feltehetjük, hogy $d(x,u)\ge d(x,v)>0$. Legyen $u\adj\cdots\adj y\adj v$ legrövidebb út, és legyen $w=\langle xuy\rangle $. Ekkor $\langle vxw\rangle =\bigl<v\langle vux\rangle \langle wux\rangle \bigr>=\bigl<\langle vvw\rangle ux\bigr>=\langle vux\rangle =x$, így $x\in[w\dts v]$. Továbbá $[uwy]$, mert $d(u,y)<d(u,v)$ és $w\in[u\dts y]$.
Ha $w\ne u$, akkor $d(w,v)<d(u,v)$; ezért $[wxv]$, így $[uxv]$. Ha $w=u$, akkor (b) szerint $x\adj u$. De $d(x,u)\ge d(x,v)$; ezért $x\adj v$ és $[uxv]$.

% (d) Let $y=\<uxv\>$. Since $y\in[u\dts x]$, we have $d(u,x)=d(u,y)+d(y,x)$
% by (a) and~(c). Similarly, $d(u,v)=d(u,y)+d(y,v)$ and $d(x,v)=d(x,y)+d(y,v)$.
% But these three equations, together with $d(u,v)=d(u,x)+d(x,v)$,
% yield $d(x,y)=0$. [{\sl Proc.\ Amer.\ Math.\ Soc.\ \bf12} (1961), 407--414.]
(d) Legyen $y=\langle uxv\rangle$. Mivel $y\in[u\dts x]$, így (a) és (b) szerint $d(u,x)=d(u,y)+d(y,x)$. Hasonlóan $d(u,v)=d(u,y)+d(y,v)$ és $d(x,v)=d(x,y)+d(y,v)$. De ez a három egyenlõség $d(u,v)=d(u,x)+d(x,v)$-vel együtt $d(x,y)=0$-t adja. ({Proc. Amer. Math. Soc. 12} (1961), 407--414.)
\ujgyak \label{megold711-74}
Rendre (\ref{keplet711-55}), (\ref{keplet711-55}), újból (\ref{keplet711-55}), majd (\ref{keplet711-52}), (\ref{keplet711-51}), (\ref{keplet711-53}) és (\ref{keplet711-50}) felhasználásával $w=\langle yxw\rangle =\bigl<yx\langle zxw\rangle \bigr>=\bigl<yx\langle zx\langle yzw\rangle \rangle \bigr>=
\bigl<\langle yxz\rangle x\langle yzw\rangle \bigr>=\bigl<x\langle xyz\rangle \langle wyz\rangle \bigr>=
\bigl<\langle xxw\rangle yz\bigr>=\langle xyz\rangle $.
\ujgyak \label{megold711-75}
% (a) If $w=\<xxy\>$ we have $[xwx]$ by (iii), hence $w=x$ by (i).\par
(a) Ha $w=\langle xxy\rangle$, akkor (iii) szerint $[xwx]$, ezért (i) szerint $w=x$.

% (b) Axiom (iii) and part (a) tell us that $[xxy]$ is always true. So we
% can set $x=y$ in (ii) to conclude that $[uxv]\iff[vxu]$. The
% definition of $\<xyz\>$ in (iii) is therefore
% perfectly symmetrical between $x$, $y$, and~$z$.\par
(b) Az (iii) axióma és az (a) rész szerint $[xxy]$ mindig igaz. (ii)-ben legyen $x=y$, így levonhatjuk a következtetést: $[uxv]\iff[vxu]$. Emiatt $\langle xyz\rangle$ (iii)-ben megadott definíciója tökéletesen szimmetrikus $x$-ben, $y$-ban és $z$-ben.

% (c) By the definition of $\<uxv\>$ in (iii), we have $x=\<uxv\>$ if and only if
% $[uxx]$, $[uxv]$, and $[xxv]$. But we know that $[uxx]$ and $[xxv]$ are
% always true.\par
(c) $\langle uxv\rangle$ (iii)-beli definíciója alapján $x=\langle uxv\rangle$ akkor és csak akkor, ha $[uxx]$, $[uxv]$ és $[xxv]$. De tudjuk, hogy $[uxx]$ és $[xxv]$ mindig igaz.

% (d) In this step and subsequent steps, we will construct one or more auxiliary
% points of~$M$ and then use Algorithm~C to derive
% every consequence of the betweenness relations that are known. (The axioms
% have the convenient form of ^{Horn clauses}.)
% For example,
% here we define $z=\<xyv\>$, so that we know $[uxy]$, $[uyv]$, $[xzy]$, $[xzv]$,
% and $[yzv]$. From these hypotheses we deduce
% $[uzy]$ and $[uzv]$. So $z=\<uyv\>=y$.\par
(d) Ebben és a következõ lépésekben megkonstruáljuk $M$ néhány kisegítõ pontját, és aztán a C algoritmust használjuk, hogy levezessük a \idez{közöttlevõség} reláció minden ismert következményét. (Az axiómák az alkalmas Horn-klóz alakban vannak megadva.) Itt például $z=\langle xyv\rangle$-t határozzuk meg úgy, hogy tudjuk $[uxy]$-t, $[uyv]$-t, $[xzy]$-t, $[xzv]$-t és $[yzv]$-t. Így pedig $z=\langle uyv\rangle =y$.

% (e) The hinted construction implies, among other things,
% $[utv]$, $[utz]$, $[vtz]$, $[uwv]$, $[uwz]$, $[vwz]$; hence $t=w$. (A computer program is helpful here.)
% Adding the hypotheses $[rws]$, $[rwz]$, $[swz]$ now yields
% $[xyz]$ as desired; it also turns out that $r=p$ and $s=q$.\tighten\par
(e) A javasolt konstrukció többek között maga után vonja $[utv]$-t, $[utz]$-t, $[vtz]$-t, $[uwv]$-t, $[uwz]$-t, $[vwz]$-t; ezért $t=w$. (Itt hasznos lehet egy számítógépes program.) Az $[rws]$, $[rwz]$, $[swz]$ hipotézisek hozzáadásával, ahogy kívántuk, $[xyz]$ is teljesül; és az is kiderül, hogy $r=p$ és $s=q$.

% (f) Let $r=\<yuv\>$, $s=\<zuv\>$, $t=\<xyz\>$, $p=\<xrs\>$, $q=\<tuv\>$; then
% $[pqp]$ flows out. [{\sl Proc.\ Amer.\ Math.\ Soc.\ \bf5} (1954), 801--807.
% For early studies of betweenness axioms, see E.~V. ^{Huntington} and J.~R.
% ^{Kline}, {\sl Trans.\ Amer.\ Math.\ Soc.\ \bf18} (1917), 301--325.]
(f) Legyenek $r=\langle yuv\rangle$, $s=\langle zuv\rangle$, $t=\langle xyz\rangle$, $p=\langle xrs\rangle$, $q=\langle tuv\rangle$; ekkor viszont $[pqp]$ következik. (Proc. Amer. Math. Soc. 5 (1954), 801--807. A \idez{közöttlevõség} relációra vonatkozó axiómák kezdeti vizsgálatáról lásd Huntington\angolnevindex{Huntington} és
Kline\angolnevindex{Kline} \cite{Huntington1954} cikkét.)
\ujgyak \label{megold711-76}
% Axiom (i) obviously holds, and axiom (ii) follows from
% commutativity and~\eq(52). The answer to exercise~74 derives (iii)
% from the identity $\<xyz\>=\bigl<x\<xyz\>\<wyz\>\bigr>$; so we need only
% verify that formula:
% $\bigl<x\<xyz\>\<wyz\>\bigr>
% =\bigl<\<yxz\>x\<wyz\>\bigr>
% \?=\?\bigl<\<\<yxz\>xz\>x\<wyz\>\bigr>
% =\bigl<\<yxz\>x\<zx\<wyz\>\>\bigr>
% =\bigl<x\<xyz\>\<z\<xyz\>w\>\bigr>
% =\bigl<\<x\<xyz\>z\>\<xyz\>w\bigr>
% =\bigl<\<xyz\>\<xyz\>w\bigr>$.\par\breathe
Az (i) axióma nyilván teljesül, és az (ii) axióma pedig a kommutativitásból és (\ref{keplet711-52})-bõl következik. A \ref{gyak711-74}. gyakorlat megoldása levezeti az $\langle xyz\rangle =\bigl<x\langle xyz\rangle \langle wyz\rangle \bigr>$ azonosságból (iii)-t, így csak a következõ formulát kell ellenõrizni:
$\bigl<x\langle xyz\rangle \langle wyz\rangle \bigr>
=\bigl<\langle yxz\rangle x\langle wyz\rangle \bigr>
=\bigl<\langle \langle yxz\rangle xz\rangle x\langle wyz\rangle \bigr>
=\bigl<\langle yxz\rangle x\langle zx\langle wyz\rangle \rangle \bigr>
=\bigl<x\langle xyz\rangle \langle z\langle xyz\rangle w\rangle \bigr>
=\bigl<\langle x\langle xyz\rangle z\rangle \langle xyz\rangle w\bigr>
=\bigl<\langle xyz\rangle \langle xyz\rangle w\bigr>$.

% \em Notes: The original treatment of median algebra by ^{Birkhoff} and ^{Kiss}
% in {\sl Bull.\ Amer.\ Math.\ Soc.\ \bf53} (1947), 749--752, assumed
% \eq(50), \eq(51), and the short ^{distributive law}~\eq(53). The fact
% that associativity~\eq(52) actually implies distributivity was not realized
% until many years later; M.~^{Kolibiar} and T.~^{Marcisov\'a},
% {\sl Matematick\'y \v{C}asopis\/ \bf24} (1974), 179--185, proved it via
% % note the accent \'y here; but not in \v{C}asopis pro pest... matematicky!
% ^{Sholander}'s axioms as in this exercise. A mechanical derivation
% of~\eq(53)
% from \eq(50)--\eq(52) was found in 2005 by R.~^{Veroff} and W.~^{McCune},
% using an extension of the ^{Otter} theorem prover.
% ^^{automated deduction}^^{theorem proving}
% % note from Veroff, 06.08.07: they like the web page, have no plan to publish
\emph{Megjegyzések:} Birkhoff\angolnevindex{Birkhoff} és Kiss\angolnevindex{Kiss} \cite{Birkhoff1947} dolgozatukban a medián algebra kezelése során  eredetileg az (\ref{keplet711-50}) és (\ref{keplet711-51}) törvényeket, továbbá az (\ref{keplet711-53}) rövid disztributivitás törvényt\index{disztributivitás törvény = distributive law} feltételezték. Arra a tényre, hogy az (\ref{keplet711-52}) asszociativitás tulajdonképpen maga után vonja a disztributivitást, egészen addig nem jöttek rá, amíg sok évvel késõbb Kolibiar\angolnevindex{Kolibiar} és Marcisov\'a\angolnevindex{Marcisov\'a} a \cite{Kolibiar1974} munkában Sholander\angolnevindex{Sholander} axiómáival be nem bizonyította, mint ahogy mi is tesszük ebben a gyakorlatban. Az (\ref{keplet711-53}) törvény (\ref{keplet711-50})--(\ref{keplet711-52})-bõl való mechanikus levezetését 2005-ben találta meg Veroff\angolnevindex{Veroff} és McCune\angolnevindex{McCune} az Otter\index{Otter tételbizonyító = Otter theorem proving} tételbizonyító program egy bõvített verzióját használva. 
\ujgyak \label{megold711-77}
% (a) In coordinate $r\adj s$ of the labels, suppose $l(r)$ has a~0
% and $l(s)$ has a~1;
% then the left vertices have 0 in that coordinate.
% If $u\adj v\adj u'$, where $u$ and $u'$ are on the left but $v$ is
% on the right, $\<uu'v\>$ lies on the left.
% But $[u\dts v]@@\cap@@[u'\?\dts v]\?=\?
% \{v\}$, unless $u=u'$.\tighten\par
(a) Az $r\adj s$-hez tartozó címkék egy koordinátájában tegyük fel, hogy $l(r)$ 0 és $l(s)$ 1; ekkor a bal csúcsoknak ez a koordinátája 0. Ha $u\adj v\adj u'$ olyan, hogy $u$ és $u'$ a bal oldalon vannak, de $v$ a jobb oldalon, $\langle uu'v\rangle$ a bal oldalon fekszik. De $[u\dts v]\cap[u'\dts v]=
\{v\}$ kivéve, ha $u=u'$.

% (b) This statement is obvious, by Corollary C.\par
(b) A C következmény alapján ez az állítás nyilvánvaló. 

% (c) Suppose $u\adj v$ and $u'\adj v'$, where $u$ and $u'$ are on the left,
% $v$ and~$v'$ are on the right. Let $v=v_0\adj\cdots\adj v_k=v'$ be
% a shortest path, and let $u_0=u$, $u_k=u'$. All vertices $v_j$
% lie on the right, by~(b).
% The left vertex $u_1=\<u_0v_1u_k\>$ must be a common neighbor
% of $u_0$ and $v_1$, since the distance $d(u_0,v_1)=2$.
% (We cannot have $u_1=u_0$, because that would imply the existence of
% a shortest path from $v$ to $v'$ going through the left vertex~$u$.) Therefore
% $v_1$ has rank~1; and so do $v_2$, \dots,~$v_{k-1}$, by the same argument.
% [L.~^{Nebesk\'y}, {\sl Commentationes Mathematic{\ae} Universitatis
% Carolin{\ae}\/ \bf12} (1971), 317--325; M.~^{Mulder}, {\sl Discrete
% Math.\ \bf24} (1978), 197--204.]\par
(c) Tegyük fel, hogy $u\adj v$ és $u'\adj v'$ olyan élek, ahol $u$ és $u'$ a bal oldalon, $v$ és $v'$ pedig a jobb oldalon vannak. Legyen $v=v_0\adj\cdots\adj v_k=v'$ legrövidebb út, és legyen $u_0=u$, $u_k=u'$. (b) szerint minden $v_j$ csúcs a jobb oldalon fekszik. Az $u_1=\langle u_0v_1u_k\rangle$ bal csúcs $u_0$ és $v_1$ közös szomszédja kell legyen, mert a távolság $d(u_0,v_1)=2$. (Nem lehet $u_1=u_0$, mert ez maga után vonná egy $v$-bõl az $u$ bal csúcson keresztül $v'$-be vezetõ legrövidebb út létezését.) Ezért $v_1$ szintszáma 1; és ugyanezen indokok miatt ilyenek $v_2$, \dots,~$v_{k-1}$ is. (Nebesk\'y\angolnevindex{Nebesk\'y}, \cite{Nebesky1971}; Mulder\angolnevindex{Mulder}, \cite{Mulder1978}.)

% (d) These steps visit all vertices $v$ of rank~1 in order of their distance
% $d(v,s)$ from~$s$.
% If such a~$v$ has a late neighbor~$u$ not yet seen, the rank of~$u$
% must be 1~or~2. If the rank is~1, $u$~will have at least two early neighbors,
% namely $v$ and the future $\.{MATE($u$)}$. Step~I8 bases its decision on an
% arbitrary early neighbor~$w$ of~$u$ such that $w\ne v$. Since $d(w,v)=2$, the
% vertex $x=\<svw\>$ has rank~1 by~(c). If $w$ has rank~0, then $x=v$; so
% $u$~has rank~1. Otherwise $d(x,s)<d(v,s)$, and the rank of~$w$ was correctly
% determined when $x$ was visited. If $w$ has rank~1, $u$ lies on a shortest
% path from $v$ to~$w$; if $w$ has rank~2, $w$ lies on a shortest path from $u$
% to~$s$. In both cases $u$ and~$w$ have the same rank, by~(c).\tighten\par
(d) Ezek a lépések minden 1 szintszámú $v$ csúcsot megvizsgálnak az $s$-tõl való $d(v,s)$ távolságuk sorrendjében. Ha egy ilyen $v$-nek van még meg nem vizsgált $u$ távoli szomszédja, $u$ szintszáma 1 vagy 2 kell legyen. Ha a szintszám 1, $u$-nak legalább két közeli szomszédja lesz, mégpedig $v$ és a jövõbeli $\texttt{PÁR($u$)}$. Az I8 lépés $u$ egy olyan $w$ közeli szomszédjával kapcsolatban dönt, melyre $w\ne v$. Mivel $d(w,v)=2$, (c) szerint az $x=\langle svw\rangle$ csúcs szintszáma 1. Ha $w$ szintszáma 0, akkor $x=v$; így $u$ szintszáma 1. Egyébként $d(x,s)<d(v,s)$, és $w$ szintszámát helyesen állapítottuk meg, amikor $x$-et vizsgáltuk. Ha $w$ szintszáma 1, $u$ egy $v$-bõl $w$-be vezetõ legrövidebb úton fekszik; ha pedig $w$ szintszáma 2, $w$ egy $u$-ból $s$-be vezetõ legrövidebb úton van. (c) szerint $u$ és $w$ mindkét esetben azonos szintszámmal rendelkezik.

% (e) The algorithm removes all edges equivalent to $r\adj s$, by (a) and~(d).
% Their removal clearly disconnects the graph; the two pieces that remain
% are convex by~(b), so they are connected and in fact they are
% median graphs. Step~I7 records all of the relevant
% relations between the two pieces, because all 4-cycles that disappear
% are examined there. By induction on the number of vertices, each
% piece is properly labeled.
(e) Az algoritmus eltávolítja az $r\adj s$ éllel ekvivalens összes élt (a) és (d) szerint. Ezeknek az eltávolítása után a gráf nyilván nem marad összefüggõ; a két rész, ami marad, (b) alapján konvex, így összefüggõ és tulajdonképpen egy-egy medián gráf. A két rész közötti összes releváns relációt feljegyzi az I7 lépés, mert minden négy hosszúságú kört, ami eltûnik, itt ellenõrzünk. A csúcsok száma szerinti indukcióval bizonyítható, hogy a részek helyesen címkézettek.
\ujgyak \label{megold711-78}
% Every time $v$ appears in step I4, it loses one of its
% neighbors~$u_j$. Each of these edges $v\adj u_j$ corresponds to a different
% coordinate of the labels, so we can assume that $l(v)$ has the form $\alpha1^k$
% for some binary string~$\alpha$. The labels for $u_1$, $u_2$, \dots,~$u_k$
% are then $\alpha01^{k-1}$, $\alpha101^{k-2}$, \dots, $\alpha1^{k-1}0$.
% By taking componentwise medians, we can now prove that all $2^k$ labels
% of the form $\alpha\beta$ occur for vertices in the graph, since
% $\bigl<(\alpha\beta)(\alpha\beta')(0\ldots0)\bigr>$ is the bit string
% $\alpha(\beta\band\beta')$.
Minden alkalommal, amikor az I4 lépésben $v$ megjelenik, egy $u_j$ szomszédját elveszíti. A címkében pedig minden $v\adj u_j$ élnek különbözõ koordináta felel meg, ezért feltehetjük, hogy $l(v)$ valamely $\alpha$ bináris füzérre $\alpha1^k$ alakú. Az $u_1$, $u_2$, \dots,~$u_k$ csúcsokra vonatkozó címkék ekkor $\alpha01^{k-1}$, $\alpha101^{k-2}$, \dots, $\alpha1^{k-1}0$. Komponensenkénti mediánozással be tudjuk bizonyítani, hogy az összes -- $2^k$ különbözõ -- $\alpha\beta$ alakú címke felbukkan a gráf valamely csúcsában, mert $\bigl<(\alpha\beta)(\alpha\beta')(0\ldots0)\bigr>$ az $\alpha(\beta\&\beta')$ bitfüzér.
\ujgyak \label{megold711-79}
% (a) If $l(v)=k$,
% exactly $\nu(k)$ smaller vertices are neighbors of~$v$.\par
(a) Ha $l(v)=k$, pontosan $\nu(k)$ kisebb csúcs alkotja $v$ szomszédjait.

% (b) At most $\lfloor n/2\rfloor$ 1s appear in bit position~$j$,
% for $0\le j<\lceil@\lg n\rceil$.\par
(b) Minden $0\le j<\lceil\lg n\rceil$-re a $j$-edik bitpozícióban legfeljebb $\lfloor n/2\rfloor$ 1-es van.

% (c) Suppose exactly $k$ vertices have labels beginning with~0. At most
% $\min(k,n-k)$ edges correspond to that bit position, and at most
% $f(k)+f(n-k)$ other edges are present. But
% $$\advance\abovedisplayshortskip-3pt % paging 2006.04.07
%   \advance\belowdisplayshortskip-2pt % paging 2006.04.07
% f(n)=\max_{0\le k\le n}\bigl(\min(k,n-k)+f(k)+f(n-k)\bigr),$$
% because the function $g(m,n)=f(m+n)-m-f(m)-f(n)$ satisfies
% the recurrence ^^{binary recurrence}
% $$g(2m+a,2n+b)=ab+g(m+a,n)+g(m,n+b)\qquad\hbox{for $0\le a,b\le 1$.}$$ 
% It follows by induction that $g(m,m)=g(m,m+1)=0$, and that
% $g(m,n)\ge0$ when $m\le n$.
% [{\sl Annals of the New York Academy of Sciences\/ \bf175} (1970), 170--186;
% D.~E. ^{Knuth}, {\sl Proc.\ IFIP Congress~1971\/} (1972),~24.]
(c) Tegyük fel, hogy pontosan $k$ csúcsnak van 0-val kezdõdõ címkéje. Legfeljebb $\min(k,n-k)$ él hozható kapcsolatba ezekkel a bitpozíciókkal, és legfeljebb $f(k)+f(n-k)$ további él van. De 
$$f(n)=\max_{0\le k\le n}\bigl(\min(k,n-k)+f(k)+f(n-k)\bigr),$$
mert a $g(m,n)=f(m+n)-m-f(m)-f(n)$ függvény kielégíti a $$g(2m+a,2n+b)=ab+g(m+a,n)+g(m,n+b),\qquad\hbox{ha $0\le a,b\le 1$}$$ rekurzív egyenlõséget. Indukcióval következik, hogy $g(m,m)=g(m,m+1)=0$, és hogy $g(m,n)\ge0$, amikor $m\le n$. (Annals of the New York Academy of Sciences 175 (1970), 170--186; Knuth\angolnevindex{Knuth}, \cite{Knuth1972}.)
\ujgyak \label{megold711-80}
% (a) (Solution by W.~^{Imrich}.) The graph with vertex labels
% 0000, 0001, 0010, 0011, 0100, 0110, 0111, 1100, 1101, 1110, 1111
% cannot be labeled in any essentially different way; but the distance
% from 0001 to 1101 is~4, not~2.\par
(a) (Imrich\angolnevindex{Imrich} megoldása.) A 0000, 0001, 0010, 0011, 0100, 0110, 0111, 1100, 1101, 1110, 1111 csúcscímkékkel rendelkezõ gráfot nem lehet lényegesen másképp címkézni; de 0001 és 1101 távolsága 4, és nem 2.

% (b) The cycle $C_{2m}$ is a partial cube, because its vertices
% can be labeled $l(k)=1^k0^{m-k}$, $l(m+k)=0^k1^{m-k}$ for $0\le k<m$.
% But the bitwise median of $l(0)$, $l(m-1)$, and $l(m+1)$ is $01^{m-2}0$;
% and indeed those vertices don't have a median, when $m>2$.
(b) A $C_{2m}$ kör parciális kocka, mert csúcsainak a címkéi lehetnek $l(k)=1^k0^{m-k}$, $l(m+k)=0^k1^{m-k}$, ahol $0\le k<m$. De $l(0)$, $l(m-1)$ és $l(m+1)$ bitenkénti mediánja $01^{m-2}0$; és valóban ezeknek a csúcsoknak nincs a körben mediánja, ha $m>2$.
\ujgyak \label{megold711-81}
% Yes. A median graph is a subgraph of a hypercube, which is bipartite.
Igen. Minden medián gráf egy hipergráf páros részgráfja. 
\ujgyak \label{megold711-82}
% The general case reduces to the simple case where $G$ has
% only two vertices $\{0,1\}$, because we can operate componentwise on the
% ^{median labels}, and because $d(u,v)$ is the ^{Hamming distance} between
% $l(u)$ and~$l(v)$.\par
Az általános eset arra az egyszerû esetre redukálhatjuk, amikor $G$-nek csak két csúcsa van: $\{0,1\}$; mert komponensenként dolgozhatunk a medián címkéken, és mert $d(u,v)$ az $l(u)$ és $l(v)$ közötti Hamming-távolság\index{Hamming-távolság = Hamming distance}.

% In the simple case, the stated rule sets $u_k\gets v_k$ except when
% $u_{k-1}=v_{k-1}=v_{k+1}\ne v_k$, and it is readily proved optimum.
% (Other optimum possibilities do exist, however; for example, if
% $v_0v_1v_2v_3=0110$, we could set $u_0u_1u_2u_3=0000$.)\par
Az egyszerû esetben a megadott szabály szerint $u_k\gets v_k$, kivéve ha $u_{k-1}=v_{k-1}=v_{k+1}\ne v_k$, és ez azonnal bizonyítja az optimalitást. (Emellett lehetnek további optimális megoldások is, például ha $v_0v_1v_2v_3=0110$, akkor $u_0u_1u_2u_3=0000$.)

% [This problem was motivated by the study of ^{self-organizing
% data structures}. F. R. K. ^{Chung}, R. L. ^{Graham}, and M. E. ^{Saks}, in
% {\sl Discrete Algorithms and Complexity\/} (Academic Press, 1987),
% 351--387, have proved that median graphs are the {\it only\/} graphs for which
% $u_k$ can always be chosen optimally as a function of
% $(v_0,v_1,\ldots,v_{k+1})$, regardless of the subsequent values
% $(v_{k+2},\ldots,v_t)$. They have
% also characterized all cases for which a
% given finite amount of lookahead will suffice, in {\sl Combinatorica\/ \bf9}
% (1989), 111--131.]\tighten\par
(Ezt a problémát az önszervezõ adatszerkezetek\index{önszervezõ adatszerkezet = self-organizing data structure} tanulmányozása motiválta. Chung\angolnevindex{Chung}, Graham\angolnevindex{Graham} és Saks\angolnevindex{Saks} \cite{Chung1987} könyvükben bebizonyították, hogy a medián gráfok az \textit{egyedüli} gráfok, melyekre $u_k$-t mint $(v_0,v_1,\ldots,v_{k+1})$ függvényét mindig megválaszthatjuk optimálisan, függetlenül a $(v_0,v_1,\ldots,v_{k+1})$ részsorozatbeli értékektõl. A \cite{Chung1989} dolgozatukban a szerzõk azokat az eseteket is mind jellemezték, ahol elegendõ véges sok lépésnyi elõretekintés.)
\ujgyak \label{megold711-83}
% Again it suffices to consider the simple two-vertex case. An
% optimum solution in that case can never have $u_{k-1}\ne u_k$ except
% when $u_{k-1}=v_{k-1}\ne v_k=u_k$. Therefore we must only decide
% which ^{runs} of consecutive $0@$s or 1s in $v_0v_1\ldots v_t$
% should induce matching runs in $u_0u_1\ldots u_t$.\par\vskip-.1pt % paging!
Most is elég, ha az egyszerû, két csúcsból álló esetet vizsgáljuk. Ebben az esetben az optimális megoldásban sose lesz $u_{k-1}\ne u_k$ kivéve, amikor $u_{k-1}=v_{k-1}\ne v_k=u_k$. Ezért csak azt kell eldöntenünk, hogy $v_0v_1\ldots v_t$-ben az egymást követõ $0$-ák vagy $1$-esek mely \idez{futamai}\index{futam = run} idézhetik elõ az $u_0u_1\ldots u_t$-beli megfelelõ \idez{futamokat}.

% Suppose $v_{k-1}v_k\ldots v_{k+r}=01^r0$ and $u_{k-1}=0$. The cost
% of $u_{k-1}u_k\ldots u_{k+r}=00\ldots0$ is $r\rho$, compared to a cost
% of~2 if $u_{k-1}u_k\ldots u_{k+r}=01^r0$; so we must choose the former if
% $\rho<2/r$ and the latter if $\rho>2/r$. This policy can be expressed
% in terms of medians, if we set $u_k=\<u_{k-1}\ldots u_{k-1}v_k\ldots v_{k+r}\>$
% when $2/(r+1)\le\rho<2/r$ for $r\ge0$, where there are $r$ occurrences
% of $u_{k-1}$. (This median-of-$(2r{+}1)$ gives correct results in a general
% median graph, since it will produce valid median labels; see exercise 86.)\par
Tegyük fel, hogy $v_{k-1}v_k\ldots v_{k+r}=01^r0$ és $u_{k-1}=0$. Ha $u_{k-1}u_k\ldots u_{k+r}=01^r0$, akkor az $u_{k-1}u_k\ldots u_{k+r}=00\ldots0$-ra vonatkozó $r\rho$ költséget a 2 költséggel hasonlítjuk össze; így a utóbbit kell választani, ha $\rho<2/r$, és az elõbbit, ha $\rho>2/r$. Ez a vezérelv mediánokkal is kifejezhetõ, amennyiben azt mondjuk, hogy legyen $u_k=\langle u_{k-1}\ldots u_{k-1}v_k\ldots v_{k+r}\rangle$, amikor $2/(r+1)\le\rho<2/r$, $r\ge0$ és $u_{k-1}$-nek $r$ elõfordulása van. (Általános medián gráfban ez a $(2r{+}1)$ operandussal dolgozó medián helyes eredményt ad, mert érvényes medián címkéket hoz létre; lásd a \ref{gyak711-86}. gyakorlatot.)

% But we must change this rule when we get near the end, because it
% eventually asks for the values of $v_j$ with $j>t$. The endgame is
% tricky; for if $v_{k-1}v_k\ldots v_t=01^r$ and $u_{k-1}=0$, with $r=t+1-k$, 
% the choice $u_{k-1}u_k\ldots u_t=00\ldots0$ is now preferable only
% if $\rho<1/r$. For example, if $2/4<\rho<2/3$ and $v_0v_1=01$ and
% $t=1$, we want to choose $u_0u_1=00$; but if $v_0v_1v_2=011$ and $t=2$
% we want $u_0u_1u_2=011$. One solution is to set $v_{t+j}\gets v_t$
% for $1\le j\le\lceil r/2\rceil$ and $v_{t+j}\gets v_0$ for
% $\lceil r/2\rceil<j\le r$.
De amikor a befejezéshez közel kerülünk, ezt a szabályt meg kell változtatnunk, mert ez végül $j>t$-re is kéri a $v_j$ értékeket. A végjáték elmés. Ha $v_{k-1}v_k\ldots v_t=01^r$ és $u_{k-1}=0$ (ahol $r=t+1-k$), az $u_{k-1}u_k\ldots u_t=00\ldots0$ választás most csak akkor jobb, ha $\rho<1/r$. Például ha $2/4<\rho<2/3$, $v_0v_1=01$ és $t=1$, akkor az $u_0u_1=00$-át kell választani; de ha $v_0v_1v_2=011$ és $t=2$, akkor az $u_0u_1u_2=011$-et. Egy lehetséges megoldás az, hogy legyen $v_{t+j}\gets v_t$, ha $1\le j\le\lceil r/2\rceil$, és $v_{t+j}\gets v_0$, ha $\lceil r/2\rceil<j\le r$.
\ujgyak \label{megold711-84}
% There are 81 such functions, each of which can be represented as
% the median of an odd number of elements. Seven types of vertices occur:
% $$\vcenter{\halign{\hfil$#$\hfil&&\quad\hfil$#$\hfil\cr
% \hbox{Type}&\hbox{Typical vertex}&\hbox{Cases}&
%    \hbox{Adjacent to}&\hbox{Degree}\cr
% 1&\<z\>&5&\<vwxyzzz\>&1\cr
% 2&\<vwxyzzz\>&5&\<z\>,\<wxyzz\>&5\cr
% 3&\<wxyzz\>&20&\<vwxyzzz\>,\<vwxxyyzzz\>&4\cr
% 4&\<vwxxyyzzz\>&30&\<xyz\>,\<wxyzz\>,\<vwxyyzz\>&5\cr
% 5&\<vwxyyzz\>&10&\<vwxxyyzzz\>,\<vwxyz\>&7\cr
% 6&\<vwxyz\>&1&\<vwxyyzz\>&10\cr
% 7&\<xyz\>&10&\<vwxxyyzzz\>&3\cr}}$$
% [^{Von Neumann} and ^{Morgenstern} enumerated these seven types
% in their book {\sl Theory of Games and Economic Behavior\/} (1944),
% \S52.5, in connection with the study of an equivalent problem 
% about systems of winning ^{coalitions} that they called {\it^{simple games}}.
% The graph for six-variable functions, which has 2646 vertices of 30 types,
% appears in the paper by ^{Meyerowitz} cited in exercise~70.
% Only 21 of those types can be represented as a simple median-of-odd; a vertex
% ^^{pure majority}
% like $\bigl<\<abd\>\<ace\>\<bc\?f\>\bigr>$, for example,
% has no such representation.
% Let the corresponding graph for $n$ variables have $M_n$ vertices;
% P.~^{Erd\"os} and N.~^{Hindman}, in {\sl Discrete Math.\ \bf48} (1984),
% 61--65, showed that $\lg M_n$ is asymptotic to $n-1\choose\lfloor
% n/2\rfloor$.
% D.~^{Kleitman}, in {\sl J. Combin.~Theory\/ \bf1} (1966), 153--155,
% showed that the vertices for distinct ^{projection functions} like $x$ and~$y$
% ^^{diameter of free median graph}
% are always furthest apart in this graph.]\tighten
81 ilyen függvény van, melyek mindegyike páratlan számú elem mediánjaként reprezentálható. Hétféle csúcs fordul elõ:
\begin{center}
\begin{tabular}{ccccc}
\hbox{Típus}&\hbox{Jellemzõ csúcs}&\hbox{Esetek}&
   \hbox{Szomszédok}&\hbox{Fokszám}\\
1&$\langle z\rangle$ &5&$\langle vwxyzzz\rangle$ &1\\
2&$\langle vwxyzzz\rangle$ &5&$\langle z\rangle , \langle wxyzz\rangle$ &5\\
3&$\langle wxyzz\rangle$ &20&$\langle vwxyzzz\rangle , \langle vwxxyyzzz\rangle$ &4\\
4&$\langle vwxxyyzzz\rangle$ &30&$\langle xyz\rangle ,\langle wxyzz\rangle , \langle vwxyyzz\rangle$ &5\\
5&$\langle vwxyyzz\rangle$ &10&$\langle vwxxyyzzz\rangle , \langle vwxyz\rangle$ &7\\
6&$\langle vwxyz\rangle$ &1&$\langle vwxyyzz\rangle$ &10\\
7&$\langle xyz\rangle$ &10&$\langle vwxxyyzzz\rangle$ &3
\end{tabular}
\end{center}
(Neumann\angolnevindex{Von Neumann} és Morgenstern\angolnevindex{Morgenstern} sorolták fel ezt a hét típust \cite{Neumann1944} könyvükben az -- általuk egyszerû játékoknak\index{egyszerû játék = simple game} nevezett -- nyerõ koalíciók\index{koalíció = coalition} rendszereinél felmerülõ ekvivalenciaprobléma tanulmányozásával kapcsolatban. A hatváltozós függvényekhez tartozó gráf, melynek 30 különbözõ típusú 2646 csúcsa van, Meyerowitznak\angolnevindex{Meyerowitz} a \ref{gyak711-70}. gyakorlatban hivatkozott dolgozatában jelenik meg. Ezek közül a típusok közül csak 21 reprezentálható mint páratlan számú operandus egyszerû mediánja; például egy az $\bigl<\langle abd\rangle\langle ace\rangle\langle bc f\rangle\bigr>$-hez hasonló csúcsnak nincs ilyen reprezentációja. $n$ változó esetén legyen a megfelelõ gráfnak $M_n$ csúcsa. Erdõs\angolnevindex{Erd\"os} és Hindman\angolnevindex{Hindman} \cite{Erd\"os1984} cikkükben megmutatták, hogy $\lg M_n$ aszimptotikusan egyenlõ $n-1\choose\lfloor n/2\rfloor$-vel. Kleitman\angolnevindex{Kleitman} \cite{Kleitman1966} munkájában pedig azt mutatta meg, hogy a gráfban a különbözõ projekciós függvényekhez\index{projekciós függvény = projection function} tartozó csúcsok (mint $x$ és $y$) mindig a legtávolabb vannak egymástól.
\ujgyak \label{megold711-85}
% Every strong component must consist of a single vertex; otherwise two
% coordinates would always be equal, or always complementary. Thus
% the digraph must be ^{acyclic}.\par
Minden erõs komponens tartalmaz magában álló csúcsot; különben két koordináta mindig egyenlõ vagy komplemens lenne. Így az irányított gráf körmentes\index{körmentes irányított gráf = acyclic digraph}. 
\smallskip

% Furthermore, there must be no path from a vertex to its complement;
% otherwise a coordinate would be constant.\hfil\break\indent
\noindent\parbox{11cm}{
Ráadásul nem vezethet út egy csúcsból a komplemensébe, különben egy koordináta konstans lenne.

% When these two conditions are satisfied, we can prove that no vertex $x$ is
% redundant, by assigning the value 0 to all vertices that precede~$x$ or~$\bar
% x$, assigning~1 to all vertices that follow, and giving appropriate
% values to all other vertices.\hfil\break\indent
Ha ez a két feltétel teljesül, be tudjuk bizonyítani, hogy nincs redundáns $x$ csúcs azzal, hogy minden olyan csúcshoz 0-át rendelünk, amelyik megelõzi $x$-et vagy $\bar x$-et, 1-et rendelünk ahhoz, amelyik követi, és az összes többi csúcsnak pedig valami alkalmas értéket adunk.}
\ \hspace{0,1cm} \
\parbox{2,4cm}{
\epsfbox{\figdir/v4a.86}}

\smallskip
% (Consequently we obtain a completely different way to represent a
% ^{median graph}. For example, the digraph shown corresponds to the
% median graph whose labels are $\{0000, 0001, 0010, 0011, 0111, 1010\}$.)
(Következésképpen teljesen más módszert nyerünk arra, hogy egy medián gráfot\index{medián gráf = median graph} reprezentáljunk. Például az itt látható gráf a $\{0000, 0001, 0010, 0011, 0111, 1010\}$ címkékkel rendelkezõ medián gráfnak felel meg.)
\ujgyak \label{megold711-86}
% Yes. By Theorem P, {\it any\/} monotone self-dual function maps elements of~$X$ into~$X$.
Igen. A P tétel szerint \textit{bármely} monoton és önduális függvény $X$ elemeit $X$-be képezi.
\ujgyak \label{megold711-87}
% Here the topological ordering
% $7\,6\,5\,4\,3\,2\,1\,\overline1\,\overline2\,\overline3\,\overline4\,
% \overline5\,\overline6\,\overline7$ can replace \eq(72); we get
% $$\postdisplaypenalty=10000
% \line{\hss\epsfbox{\figdir/v4a.1003}\hss}$$
% (Consecutive inverters on the same line can, of course, be
% cancel ed out.)
Most a $7\,6\,5\,4\,3\,2\,1\,\overline1\,\overline2\,\overline3\,\overline4\, \overline5\,\overline6\,\overline7$ topologikus rendezés lép (\ref{keplet711-72}) helyébe, majd az alábbi hálózatot kapjuk: 
\begin{center}
\epsfbox{\figdir/v4a.1003}
\end{center}
(Az azonos vonalon egymást követõ átalakítók természetesen semlegesíthetik egymást.)
\ujgyak \label{megold711-88}
% A given value of $d$ contributes at most $6\lceil t/d\rceil$
% units of delay (for $2\lceil t/d\rceil$ clusters).
$d$ egy adott értéke ($2\lceil t/d\rceil$ egységre) várakozó legfeljebb $6\lceil t/d\rceil$ szakaszban játszik szerepet.
\ujgyak \label{megold711-89}
% Suppose first that the new condition is $i\to j$ while
% the old was $i'\to j'$, where $i<j$ and $i'<j'$ and there are
% no complemented literals. The new module changes $x_1\ldots x_t$ to
% $y_1\ldots y_t$, where $y_i=x_i\land x_j$, $y_j=x_i\lor x_j$, and
% $y_k=x_k$ otherwise. We certainly have $y_{i'}\le y_{j'}$ when
% $\{i',j'\}\cap\{i,j\}=\emptyset$. And there is no problem if $i=i'$,
% since $y_{i'}=y_i\le x_i=x_{i'}\le x_{j'}=y_{j'}$. But the case
% $i=j'$ is trickier: Here the relations $i'\to i$ and $i\to j$
% imply also $i'\to j$; and this relation has been enforced by
% {\it previous\/} modules, because modules have been appended in order
% of decreasing distance~$d$ in the topological ordering $u_1\ldots u_{2t}$.
% Therefore $y_{i'}=x_{i'}\le x_j$ and $y_{i'}\le x_{j'}=x_i$,
% hence $y_{i'}\le x_i\land x_j=y_i=y_{j'}$. A similar proof
% works when $j=i'$ or $j=j'$.\par
Elõször tegyük fel, hogy az új feltétel $i\to j$, miközben a régi $i'\to j'$ volt, ahol $i<j$, $i'<j'$, és nincsenek komplemens literálok. Az új modul az $x_1\ldots x_t$ bitvektort az $y_1\ldots y_t$ bitvektorrá alakítja, ahol $y_i=x_i\land x_j$, $y_j=x_i\lor x_j$, egyébként pedig $y_k=x_k$. Ekkor $y_{i'}\le y_{j'}$, ha $\{i',j'\}\cap\{i,j\}=\emptyset$. És akkor sincs probléma, ha $i=i'$, mivel $y_{i'}=y_i\le x_i=x_{i'}\le x_{j'}=y_{j'}$. De az $i=j'$ eset bonyolultabb: az $i'\to i$ és $i\to j$ relációk maguk után vonják $i'\to j$-t is; és ezt a relációt az \textit{elõzõ} modulok juttatták érvényre, hisz a modulokat az $u_1\ldots u_{2t}$ topologikus rendezés szerinti csökkenõ $d$ távolság sorrendjében csatoltuk egymáshoz. Következésképpen $y_{i'}=x_{i'}\le x_j$ és $y_{i'}\le x_{j'}=x_i$, ezért $y_{i'}\le x_i\land x_j=y_i=y_{j'}$. Hasonló a bizonyítás, amikor $j=i'$ vagy $j=j'$.

% Finally, with complemented literals, the construction cleverly reduces
% the general case
% to the uncomplemented case by inverting and un-inverting the bits.
Végül, ha komplemens literálok is elõfordulnak, a konstrukció az általános esetet ügyesen komplemens mentes esetté redukálja a bitek át-, illetve visszafordításával.	
\ujgyak \label{megold711-90}
% $t=2$, $\vcenter{\epsfbox{\figdir/v4a.1000}}$ does the job.
% The general case follows recursively from this building block by reducing
% $t$ to $\lceil t/2\rceil$.\par
% [The study of CI-nets, and other networks of greater generality, was
% initiated by E.~W. ^{Mayr} and A.~^{Subramanian}, {\sl J.~Computer and
% System Sci.\ \bf44} (1992), 302--323.]
Amikor $t=2$, \epsfbox{\figdir/v4a.1000} végzi a munkát. Az általános eset ebbõl az építõelembõl $t$-nek $\lceil t/2\rceil$-vé redukálásával rekurzív módon következik. (A CI-netek és más, általánosabb hálózatok tanulmányozását Mayr\angolnevindex{Mayr} és Subramanian\angolnevindex{Subramanian} \cite{Mayr1992} munkájukkal indították el.) 
\ujgyak \label{megold711-91}
% The answer does not yet seem to be known even in the special
% case when the median graph is a free tree (with $t+1$ vertices),
% or in the monotone case
% when it is a ^{distributive lattice} as in Corollary~F\null.
% In the latter case, inverters may be unnecessary.
A válasz nem ismert még speciális esetben sem, amikor a medián gráf ($t+1$ csúcsú) szabad fa, vagy monoton esetben, amikor disztributív háló\index{disztributív háló = distributive lattice}, mint az F következményben. Az utóbbi esetben az átalakító szükségtelen lehet.
\ujgyak \label{megold711-92}
\ujgyak \label{megold711-93}
% Let $d_X(u,v)$ be the number of edges on a shortest path
% between $u$ and~$v$, when the path lies entirely within~$X$. Clearly
% $d_X(u,v)\ge d_G(u,v)$. And if $u=u_0\adj u_1\adj\cdots\adj u_k=v$
% is a shortest path in~$G$, the path $u=f(u_0)\adj f(u_1)\adj\cdots\adj
% f(u_k)=v$ lies in~$X$ when $f$ is a retraction from $G$ to~$X$;
% hence $d_X(u,v)\le d_G(u,v)$.
Legyen $d_X(u,v)$ az $u$ és $v$ közötti olyan legrövidebb úton a csúcsok száma, amikor az út teljesen $X$-en belül vezet. Világos, hogy ekkor $d_X(u,v)\ge d_G(u,v)$. És ha $u=u_0\adj u_1\adj\cdots\adj u_k=v$ egy legrövidebb út $G$-ben, az $u=f(u_0)\adj f(u_1)\adj\cdots\adj f(u_k)=v$ út $X$-ben fekszik, amikor $f$ $G$-nek egy $X$-be való behúzása; ezért $d_X(u,v)\le d_G(u,v)$.
\ujgyak \label{megold711-94}
% If $f$ is a retraction of the $t$-cube onto $X$, two different
% coordinate positions cannot always be equal or always complementary for all
% $x\in X$, unless they are constant. For if, say, all elements of~$X$ have
% the forms $00{\ast}\ldots{\ast}$ or $11{\ast}\ldots{\ast}$, there would
% be no path between vertices of those two types, contradicting the fact
% that $X$ is an ^{isometric subgraph} (hence connected).\par
Ha $f$ a $t$ kocka $X$-be való behúzása, akkor két különbözõ koordináta-pozíció nem lehet minden $x\in X$ esetén mindig azonos értékû vagy ennek komplemense értékû, kivéve ha konstans. Ha mondjuk $X$ minden eleme $00{\ast}\ldots{\ast}$ vagy $11{\ast}\ldots{\ast}$ alakú, nem lenne út ezen különbözõ típusú csúcsok között, ami cáfolja azt a tényt, hogy $X$ távolság-megõrzõ részgráf\index{izometrikus részgráf, távolság-megõrzõ részgráf = isometric subgraph} (ezért összefüggõ).

% Given $x,y,z\in X$, let $w=\<xyz\>$ be their median in the $t$-cube.
% Then $f(w)\in[x\dts y]\cap[x\dts z]\cap[y\dts z]$, because (for example)
% $f(w)$ lies on a shortest path from $x$ to~$y$ in~$X$. So $f(w)=w$,
% and we have proved that $w\in X$. [This result and its considerably more
% subtle converse are due to H.~J. ^{Bandelt}, {\sl J.~Graph
% Theory\/ \bf8} (1984), 501--510.]
Adott $x,y,z\in X$ esetén jelölje a $t$ kockában a mediánjukat $w=\langle xyz\rangle$. Ekkor $f(w)\in[x\dts y]\cap[x\dts z]\cap[y\dts z]$, mert (például) $f(w)$ $X$-ben az $x$-bõl $y$-ba vezetõ egyik legrövidebb úton fekszik. Így $f(w)=w$, és ezzel bebizonyítottuk, hogy $w\in X$. (Ez az eredmény és a lényegesen nehezebb megfordítottja Bandeltnek\angolnevindex{Bandelt} tulajdonítható, \cite{Bandelt1984}.)

\noindent\parbox{12,3cm}{
\ujgyak \label{megold711-95}
% False (although the author was hoping otherwise); the network at the 
% right takes $0001\mapsto0000$, $0010\mapsto0011$, $1101\mapsto0110$,
% but nothing${}\mapsto0010$.%
% {\hangindent -40pt \hangafter-3
% \parfillskip=0pt
% \smash{\lower12pt\rlap{\quad\epsfbox{\figdir/v4a.1004}}}\par}
% {\leftskip=50pt
% \noindent\hangindent -40pt \hangafter-2
% \llap{\smash{\lower3.5\baselineskip\hbox{\epsfbox{\figdir/v4a.1014}}}\quad}%
% (The set of all possible outputs appears to have no easy characterization,
% even when no inverters are used.
% For example, the pure-comparator network at the left, constructed by
% Tom\'as ^{Feder}, takes $000000\mapsto000000$, $010101\mapsto010101$,
% and $101010\mapsto011001$, but nothing${}\mapsto010001$.
% See also exercises 5.3.4--|netop-research|, 5.3.4--|rabin-NP|.)\par}
Hamis (jóllehet a szerzõ mást remélt); a jobb oldalon látható hálózat hatása $0001\mapsto0000$, $0010\mapsto0011$, $1101\mapsto0110$, de egyáltalán nem ${}\mapsto0010$.}
\ \hspace{0,2cm} \
\parbox{1cm}{\epsfbox{\figdir/v4a.1004}}

\medskip

\noindent \parbox{1,8cm}{
\epsfbox{\figdir/v4a.1014}}
\ \hspace{0,2cm} \
\parbox{11,5cm}{(A lehetséges outputok halmazát úgy tûnik, nem könnyû jellemezni, sõt ha átalakítót nem használunk, még akkor sem. Például a  bal oldalon látható -- Feder\angolnevindex{Feder} által konstruált -- tiszta összehasonlító hálózat hatása $000000\mapsto000000$, $010101\mapsto010101$,
és $101010\mapsto011001$, de egyáltalán nem ${}\mapsto010001$. Lásd még az 5.3.4. pontbeli 50. és 52. gyakorlatokat.)}
\ujgyak \label{megold711-96}
% No. If $f$ is a threshold function based on real parameters
% $w=(w_1,\ldots,w_n)$ and~$t$, let $\max\{@w\cdot x\mid f(x)=0@\}=t-\epsilon$.
% Then $\epsilon>0$, and $f$ is defined by the $2^n$ inequalities
% $w\cdot x-t\ge0$ when $f(x)=1$, $t-w\cdot x-\epsilon\ge0$ when
% $f(x)=0$. 
% If $A$ is any $M\times N$ matrix of integers for which
% the system of ^{linear inequalities} $Av\ge(0,\ldots,0)\losup T$
% has a real-valued solution $v=(v_1,\ldots,v_N)\losup T$ with $v_N>0$,
% there also is such a solution in integers. (Proof by induction on~$N$.)
% So we can assume
%  that $w_1$, \dots, $w_n$, $t$, and $\epsilon$ are integers.\tighten\par
Nem. Ha $f$ a $w=(w_1,\ldots,w_n)$ és $t$ valós paraméterekkel rendelkezõ küszöbfüggvény, legyen $\max\{w\cdot x\mid f(x)=0\}=t-\epsilon$.
Ekkor $\epsilon>0$, és a következõ $2^n$ egyenlõtlenség meghatározza $f$-et: $w\cdot x-t\ge0$, amikor $f(x)=1$, $t-w\cdot x-\epsilon\ge0$, amikor $f(x)=0$. Ha $A$ egy $M\times N$-es egész számokból álló mátrix, melyre az $Av\ge(0,\ldots,0)\losup T$ lineáris egyenlõtlenség-rendszernek\index{lineáris egyenlõtlenség = linear inequality} olyan $v=(v_1,\ldots,v_N)\losup T$ valós megoldása van, hogy $v_N>0$, akkor van ilyen egész megoldása is. (A bizonyítás $N$-re vonatkozó indukcióval történik.) Így feltehetjük, hogy $w_1$, \dots, $w_n$, $t$ és $\epsilon$ egészek.
 
% [A closer analysis using ^{Hadamard's inequality} (see
% Eq.~4.6.1--\eq(|hadamard-ineq|)) proves in fact that integer
% weights of magnitude at most $(n+1)\losup{(n+1)/2}\?/2^n$ will suffice;
% see S.~^{Muroga}, I.~^{Toda}, and S.~^{Takasu}, {\sl J.~Franklin
% Inst.\ \bf271} (1961), 376--418, Theorem~16. Furthermore, exercise~112 shows
% that weights nearly that large are sometimes needed.]
(A Hadamard-egyenlõtlenséget\index{Hadamard-egyenlõtlenség = Hadamard's inequality} (lásd 4.6.1. (25)) használó hasonló elemzés bebizonyítja, hogy legfeljebb $(n+1)\losup{(n+1)/2}/2^n$ nagyságú egész súlyok elegendõek lesznek; lásd Muroga\angolnevindex{Muroga}, Toda\angolnevindex{Toda} és Takasu\angolnevindex{Takasu} \cite{Muroga1961} dolgozatát. Ráadásul a \ref{gyak711-112}. gyakorlat megmutatja, hogy közel ilyen nagy súlyok olykor szükségesek is.)
\ujgyak \label{megold711-97}
$\langle 11111x_1x_2\rangle $, $\langle 111x_1x_2\rangle $, $\langle 1x_1x_2\rangle $, $\langle 0x_1x_2\rangle $, $\langle 000x_1x_2\rangle $, $\langle 00000x_1x_2\rangle $.
\ujgyak \label{megold711-98}
% We may assume that $f(x_1,\ldots,x_n)\?\?=\?\?
% \<y_1^{w_1}\ldots y_n^{w_n}\>$,
% with positive integer weights~$w_j$ and with $w_1+\cdots+w_n$ odd.
% Let $\delta$ be
% the minimum positive value of the $2^n$ sums $\pm w_1\pm\cdots\pm w_n$,
% with $n$ independently varying signs. Renumber all subscripts so that
% $w_1+\cdots+w_k-w_{k+1}-\cdots-w_n=\delta$.
% Then $w_1y_1+\cdots+w_ny_n>
% \half(w_1+\cdots+w_n)\iff w_1(y_1-\half)+\cdots+w_n(y_n-\half)>0
%                      \iff w_1(y_1-\half)+\cdots+w_n(y_n-\half)>-\delta/2
%                      \iff w_1y_1+\cdots+w_ny_n>
% \half(w_1+\cdots+w_n-(w_1+\cdots+w_k-w_{k+1}-\cdots-w_n))=w_{k+1}+
% \cdots+w_n\iff w_1y_1+\cdots+w_ky_k-w_{k+1}\bar y_{k+1}-\cdots-
% w_n\bar y_n>0$.
Feltehetjük, hogy $f(x_1,\ldots,x_n)= \langle y_1^{w_1}\ldots y_n^{w_n}\rangle$, ahol $w_j$-k pozitív egész súlyok, és $w_1+\cdots+w_n$ páratlan. Legyen $\delta$ az $n$ szabadon változó elõjelet tartalmazó $2^n$ lehetséges $\pm w_1\pm\cdots\pm w_n$ összeg minimális pozitív értéke. Számozzuk át az összes alsó indexet úgy, hogy $w_1+\cdots+w_k-w_{k+1}-\cdots-w_n=\delta$ legyen. Ekkor $w_1y_1+\cdots+w_ny_n>
\half(w_1+\cdots+w_n)\iff w_1(y_1-\half)+\cdots+w_n(y_n-\half)>0
                    \iff w_1(y_1-\half)+\cdots+w_n(y_n-\half)>-\delta/2
                    \iff w_1y_1+\cdots+w_ny_n>
\half(w_1+\cdots+w_n-(w_1+\cdots+w_k-w_{k+1}-\cdots-w_n))=w_{k+1}+
\cdots+w_n\iff w_1y_1+\cdots+w_ky_k-w_{k+1}\bar y_{k+1}-\cdots-
w_n\bar y_n>0$.
\ujgyak \label{megold711-99}
% We have $\[x_1+\cdots+x_{2s-1}+s(y_1+\cdots+y_{2t-2})\ge st] =
%  \bigl[\lfloor(x_1+\cdots+x_{2s-1})/s\rfloor+{}$ %\[ kludged for line break
% $y_1+\cdots+y_{2t-2}\!\ge\!t@\bigr]$;
% and $\lfloor(x_1+\cdots+x_{2s-1})/s\rfloor=\[x_1+\cdots+x_{2s-1}\ge s]$.\par
% (For example, $\<\<xyz\>uv\>=\<xyzu^2v^2\>$, a quantity that we also know
% is equal to $\<x\<yuv\>\<zuv\>\>$ and $\<\<xuv\>\<yuv\>\<zuv\>\>$ by
% Eqs.~\eq(53)
% and~\eq(54).
% \em Reference: C.~C. ^{Elgot}, {\sl FOCS\/ \bf2} (1961), 238.) 
$[x_1+\cdots+x_{2s-1}+s(y_1+\cdots+y_{2t-2})\ge st] = \left[\lfloor(x_1+\cdots+x_{2s-1})/s\rfloor+y_1+\cdots+y_{2t-2}\ge t\right]$;
és $\lfloor(x_1+\cdots+x_{2s-1})/s\rfloor=[x_1+\cdots+x_{2s-1}\ge s]$.

(Például $\langle \langle xyz\rangle uv\rangle =\langle xyzu^2v^2\rangle $, ami az (\ref{gyak711-53}) és (\ref{gyak711-54}) egyenlõségek szerint  megegyezik az $\langle x\langle yuv\rangle \langle zuv\rangle \rangle $ és $\langle \langle xuv\rangle \langle yuv\rangle \langle zuv\rangle \rangle $ értékekkel. \emph{Hivatkozás:} Elgot\angolnevindex{Elgot}, \cite{Elgot1961})
\ujgyak \label{megold711-100}
Az elõzõ gyakorlat és (\ref{keplet711-45}) miatt igaz.
\ujgyak \label{megold711-101}
(a) $n=7$ esetben a prímimplikánsok $x_7\land x_6$, $x_6\land x_5$, $x_7\land x_5\land x_4$, $x_6\land x_4\land x_3$, 
$x_7\land x_5\land x_3\land x_2$, $x_6\land x_4\land x_2\land x_1$ és $x_7\land x_5\land x_3\land x_1$. Az általános esetben 
pedig hasonló séma szerint $n$ prímimplikánst adhatunk meg. (Ugyanis vagy $x_n=x_{n-1}$, vagy $x_n=\bar x_{n-1}$. Az elsõ 
esetben $x_n\land x_{n-1}$ nyilvánvalóan prímimplikáns. A második esetben 
$F_n(x_1,\ldots,x_{n-1},\bar x_{n-1})=F_{n-1}(x_1,\ldots,x_{n-1})$; ezért az utóbbinak a prímimplikánsát használjuk, és 
beszúrjuk $x_n$-t, amikor $x_{n-1}$ nem jelenik meg.)

(b) Az $n=7$-re vonatkozó $(0000011$, $000011\underline{0}$, $00011\underline{0}1$, $0011\underline{0}1\underline{0}$, 
$011\underline{0}1\underline{0}1$, $11\underline{0}1\underline{0}1\underline{0}$,
$1\underline{0}1\underline{0}1\underline{0}1)$ mintakifejtés\index{kifejtés = shelling} minden $n$ esetén mûködik.

(c) Az $n=7$ esetbeli különbözõ lehetõségek közül kettõ megvilágítja az általános esetet is:
$$F_7(x_1,\ldots,x_7)\;=\;Y\left(\,\,
\vcenter{\advance\baselineskip-1pt\halign{&$\!x_#\!$\cr
\omit&\omit&\omit&\omit&\omit&6\cr
\omit&\omit&\omit&\omit&7&\omit&5\cr
\omit&\omit&\omit&6&\omit&6&\omit&4\cr
\omit&\omit&7&\omit&5&\omit&7&\omit&3\cr
\omit&6&\omit&6&\omit&4&\omit&6&\omit&2\cr
7&\omit&5&\omit&7&\omit&3&\omit&7&\omit&1\cr
}}\,\,\right)\;=\;Y\left(\,\,
\vcenter{\advance\baselineskip-1pt\halign{&$\!x_#\!$\cr
\omit&\omit&\omit&\omit&\omit&6\cr
\omit&\omit&\omit&\omit&7&\omit&5\cr
\omit&\omit&\omit&6&\omit&6&\omit&4\cr
\omit&\omit&7&\omit&5&\omit&5&\omit&3\cr
\omit&6&\omit&6&\omit&4&\omit&4&\omit&2\cr
7&\omit&5&\omit&5&\omit&3&\omit&3&\omit&1\cr
}}\,\,\right).$$
% [The Fibonacci threshold functions were introduced by S. ^{Muroga}, who also
% discovered the optimality result in exercise 105; see
% {\sl IEEE Transactions\/ \bf EC-14} (1965), 136--148.]
(A Fibonacci-küszöbfüggvényeket Muroga\angolnevindex{Muroga} vezette be, aki a \ref{gyak711-105}. gyakorlatbeli optimális 
eredményt is megtalálta; lásd Muroga cikkét \cite{Muroga1965}.)
\ujgyak \label{megold711-102}
% (a) By \eq(1) and~\eq(2), $\hat f(\bar x_0,\bar x_1,\ldots,\bar x_n)$
% is the complement of $\hat f(x_0,x_1,\ldots,x_n)$.\par
% (b) If $f$ is given by \eq(75), $\hat f$ is
% $\[(w+1-2t)x_0+w_1x_1+\cdots+w_nx_n\ge w+1-t]$, where $w=w_1+\cdots+w_n$.
% Conversely, if $\hat f$ is a threshold function, so is
% $f(x_1,\ldots,x_n)=\hat f(1,x_1,\ldots,x_n)$.
% [E.~^{Goto} and H.~^{Takahasi},
% {\sl Proc.\ IFIP Congress\/} (1962), 747--752.]
% \par\goodbreak % paging 06.08.07
(a) $\hat f(\bar x_0,\bar x_1,\ldots,\bar x_n)$ (\ref{keplet711-1}) és (\ref{keplet711-2}) szerint $\hat f(x_0,x_1,\ldots,x_n)$ 
komplemense.

(b) Ha $f$-et a (\ref{keplet711-75}) képlet adja meg, $\hat f$ éppen $[(w+1-2t)x_0+w_1x_1+\cdots+w_nx_n\ge w+1-t]$, ahol 
$w=w_1+\cdots+w_n$. Megfordítva, ha $\hat f$ küszöbfüggvény, akkor pedig $f(x_1,\ldots,x_n)=\hat f(1,x_1,\ldots,x_n)$ is az.
(Goto\angolnevindex{Goto} és Takahasi\angolnevindex{Takahasi}, \cite{Goto1962}.) 
\ujgyak \label{megold711-103}
% [See R.~C. ^{Minnick}, {\sl IRE Transactions\/
% \bf EC-10} (1961), 6--16.]
% We want to minimize $w_1+\cdots+w_n$ subject to the constraints
% $w_j\ge0$ for $1\le j\le n$ and $(2e_1-1)w_1+\cdots+(2e_n-1)w_n\ge1$
% for each prime implicant $x_1^{e_1}\land\cdots\land x_n^{e_n}$. For example,
% if $n=6$, the prime implicant $x_2\land x_5\land x_6$ would lead to
% the constraint $-w_1+w_2-w_3-w_4+w_5+w_6\ge1$. If the minimum is $+\infty$,
% the given function is not a threshold function. (The answer to
% exercise~84 gives one of the simplest examples of such a case.)
% Otherwise, if the solution $(w_1,\ldots,w_n)$ involves only integers,
% it minimizes the desired size. When noninteger solutions arise, additional
% constraints must be added until the best solution is found, as in part~(c)
% of the following exercise.
(Lásd Minnick\angolnevindex{Minnick} \cite{Minnick1961} dolgozatát.) A $w_1+\cdots+w_n$ összeget akarjuk minimalizálni azzal a 
kikötéssel, hogy $w_j\ge 0$ minden $1\le j\le n$-re, és $(2e_1-1)w_1+\cdots+(2e_n-1)w_n\ge 1$ minden 
$x_1^{e_1}\land\cdots\land x_n^{e_n}$ prímimplikánsra. Például ha $n=6$, az $x_2\land x_5\land x_6$ prímimplikáns a 
$-w_1+w_2-w_3-w_4+w_5+w_6\ge 1$ korlátozáshoz vezetne. Ha a minimum $+\infty$, az adott függvény nem küszöbfüggvény. 
(A \ref{gyak711-84}. gyakorlat megoldása egy ilyen eset legegyszerûbb példái egyikét adja.) Egyébként pedig ha a 
$(w_1,\ldots,w_n)$ megoldás csak egész számokból áll, ez a kívánt méretet minimalizálja. Amikor nem csak egész számokból 
álló megoldás adódik, további kikötéseket kell hozzáadnunk, amíg a legjobb megoldást -- mint a következõ gyakorlat (c) 
részében -- meg nem találjuk.
\ujgyak \label{megold711-104}
% First we need an algorithm to generate the prime implicants
% $x_1^{e_1}\land\cdots\land x_n^{e_n}$ of a given majority function
% $\<x_1^{w_1}\ldots x_n^{w_n}\>$, when $w_1\ge\cdots\ge w_n$ and
% $w_1+\cdots+w_n$ is odd:
% ^^{prime implicants of a majority function}
% \algindentset{\hskip\parindent K1}%
% \algstep K1. [Initialize.] Set $t\gets0$. Then for $j=n$, $n-1$, \dots,~1
% (in this order), set $a_j\gets t$, $t\gets t+w_j$, $e_j\gets0$.
% Finally set $t\gets (t+1)/2$, $s_1\gets0$, and $l\gets0$.
% \algstep K2. [Enter level $l$.] Set $l\gets l+1$, $e_{@l}\gets1$,
% $s_{@l+1}\gets s_{@l}+w_{@l}$.
% \algstep K3. [Below threshold?] If $s_{@l+1}<t$, return to K2.
% \algstep K4. [Visit a prime implicant.] Visit the exponents $(e_1,\ldots,e_n)$.
% \algstep K5. [Downsize.] Set $e_{@l}\gets0$. Then if
% $s_{@l}+a_{@l}\ge t$, set $s_{@l+1}\gets s_{@l}$ and go to K2.
% \algstep K6. [Backtrack.] Set $l\gets l-1$. Terminate if $l=0$;
% otherwise go to K5 if $e_l=1$; otherwise repeat this step.\quad\slug\smallbreak
Elõször is szükségünk van egy adott $\langle x_1^{w_1}\ldots x_n^{w_n}\rangle$ majoritás függvény 
$x_1^{e_1}\land\cdots\land x_n^{e_n}$ prímimplikánsait generáló algoritmusra, amikor $w_1\ge\cdots\ge w_n$ és 
$w_1+\cdots+w_n$ páratlan:
\begin{itemize}
\item[\textbf{K1.}] (Kezdõértékek beállítása.) Legyen $t\gets0$. Aztán a $j=n$, $n-1$, \dots,~1 sorrendben legyenek 
$a_j\gets t$, $t\gets t+w_j$, $e_j\gets 0$. Végül legyen $t\gets (t+1)/2$, $s_1\gets 0$ és $l\gets 0$.
\item[\textbf{K2.}] (Az $l$ szintre lépünk.) Legyen $l\gets l+1$, $e_{l}\gets 1$, $s_{l+1}\gets s_{l}+w_{l}$.
\item[\textbf{K3.}] (Küszöb alatt vagyunk?) Ha $s_{l+1}<t$, térjünk vissza K2-re.
\item[\textbf{K4.}] (Vizsgáljunk meg egy prímimplikánst.) Vizsgáljuk meg az $(e_1,\ldots,e_n)$ kitevõket.
\item[\textbf{K5.}] (Csökkentés.) Legyen $e_{l}\gets 0$. Ekkor ha $s_{l}+a_{l}\ge t$, legyen $s_{l+1}\gets s_{l}$ 
és térjünk vissza K2-re.
\item[\textbf{K6.}] (Visszalépés.) Legyen $l\gets l-1$. Befejezzük, ha $l=0$. Egyébként ha $e_l=1$, akkor térjünk 
vissza K5-re, különben ismételjük meg ezt a lépést.
\end{itemize}

(a) $\langle x\losub1 x_2^2x_3^3x_4^5x_5^6x_6^8x_7^{10}x_8^{12}\rangle$
(21 prímimplikáns).

(b) $\langle x_0^{16-2t}x_1^8x_2^4x_3^2 x\losub4\rangle$ esetében az optimális súlyok $0\le t\le 8$-re
$w_0w_1w_2w_3w_4=10000$,
31111,
21110,
32211,
11100,
23211,
12110,
13111,
01000; a további esetek ezek duáljai\index{duál = dual}.

% (c) Here the optimum weights $(w_1,\ldots,w_{10})$ are
% $(29,25,19,15,12,8,8,3,3,0)/2$; so we learn that $x_{10}$ is
% irrelevant, and we must deal with fractional weights. Constraining
% $w_8\ge2$ gives integer weights $(15,13,10,8,6,4,4,2,1,0)$, which must
% be optimum because their sum exceeds the previous sum by~2.
% (Only two of the 175,428 self-dual threshold functions on nine variables
% have nonintegral weights minimizing $w_1+\cdots+w_n$; the other one
% is $\<x_1^{17}x_2^{15}x_3^{11}x_4^9@x_5^7@x_6^5@x_7^4@x_8^2@x\losub9\>$.
% The largest $w_1$ in a minimum representation occurs in
% $\<x_1^{42}x_2^{22}x_3^{18}x_4^{15}x_5^{13}x_6^{10}x_7^8@x_8^4@x_9^3\>$;
% the largest $w_1+\cdots+w_9$ occurs uniquely in
% $\<x_1^{34}x_2^{32}x_3^{28}x_4^{27}x_5^{24}x_6^{20}x_7^{18}x_8^{15}x_9^{11}\>$,
% which is also an example of the largest~$w_9$. See
% S.~^{Muroga}, T.~^{Tsuboi}, and C.~R. ^{Baugh}, {\sl IEEE Transactions\/
% \bf C-19} (1970), 818--825.) 
(c) Itt az optimális $(w_1,\ldots,w_{10})$ súlyok $(29,25,19,15,12,8,8,3,3,0)/2$; így megtudjuk, hogy $x_{10}$ nem releváns, 
és törtszám súlyokkal kell foglalkoznunk. A $w_8\ge 2$ korlátozás a $(15,13,10,8,6,4,4,2,1,0)$ egész súlyokat adja, 
aminek optimálisnak kell lennie, mert összegük 2-vel haladja meg az elõzõ összeget. (A 175\,428 kilencváltozós önduális 
küszöbfüggvény közül csak kettõnek vannak nemegész, a $w_1+\cdots+w_n$ összeget minimalizáló súlyai; a másik 
$\langle x_1^{17}x_2^{15}x_3^{11}x_4^9x_5^7x_6^5x_7^4x_8^2x\losub9\rangle$. A minimális reprezentációban a legnagyobb $w_1$ az $\langle x_1^{42}x_2^{22}x_3^{18}x_4^{15}x_5^{13}x_6^{10}x_7^8x_8^4x_9^3\rangle$ medián függvényben fordul elõ; a legnagyobb $w_1+\cdots+w_9$ pedig egyedül az $\langle x_1^{34}x_2^{32}x_3^{28}x_4^{27}x_5^{24}x_6^{20}x_7^{18}x_8^{15}x_9^{11}\rangle$-ben, ami egyúttal a legnagyobb $w_9$-re is példa. Lásd Muroga\angolnevindex{Muroga}, Tsuboi\angolnevindex{Tsuboi} és Baugh\angolnevindex{Baugh} \cite{Muroga1970} dolgozatát.) 
\ujgyak \label{megold711-105}
Amikor $n=7$, a \ref{gyak711-103}. gyakorlatban generált egyenlõtlenségek a következõk:
$w_7+w_6-w_5-w_4-w_3-w_2-w_1\ge1$,
$-w_7+w_6+w_5-w_4-w_3-w_2-w_1\ge1$,
$w_7-w_6+w_5+w_4-w_3-w_2-w_1\ge1$,
$-w_7+w_6-w_5+w_4+w_3-w_2-w_1\ge1$,
$w_7-w_6+w_5-w_4+w_3+w_2-w_1\ge1$,
$-w_7+w_6-w_5+w_4-w_3+w_2+w_1\ge1$,
$w_7-w_6+w_5-w_4+w_3-w_2+w_1\ge1$.
Szorozzuk meg ezeket rendre az 1, 1, 2, 3, 5, 8, 5 számokkal, hogy 
$w_1+\cdots+w_7\ge 1+1+2+3+5+8+5$ kapjunk. Ugyanez az ötlet minden $n\ge 3$-ra mûködik.
\ujgyak \label{megold711-106}
(a) $\langle x_1^{2^{n-1}}\!x_2^{2^{n-2}}\ldots x_n\,\,\bar y_1^{2^{n-1}} \bar y_2^{2^{n-2}}\ldots\bar y_n\bar z\rangle$. 
(A \ref{gyak711-99}. gyakorlat szerint $n$ háromváltozós mediánt is végrehajthatunk: 
$\langle \langle \ldots\langle x_n\bar y_n\bar z\rangle\ldots x_2\bar y_2\rangle x_1\bar y_1\rangle$.)
(b) Ha $\langle x_1^{u_1}x_2^{u_2}\ldots x_n^{u_n}\bar y_1^{v_1}\bar y_2^{v_2} \ldots\bar y_n^{v_n}\bar z^w\rangle$ 
oldja meg a problémát, $2^{n+1}-1$ alapegyenlõtlenség kell, hogy teljesüljön; például amikor $n=2$, akkor:
$u_1+u_2-v_1+v_2-w\ge 1$,
$u_1+u_2-v_1-v_2+w\ge 1$,
$u_1-u_2+v_1-v_2-w\ge 1$,
$u_1-u_2-v_1+v_2+w\ge 1$,
$-u_1+u_2+v_1+v_2-w\ge 1$,
$-u_1+u_2+v_1-v_2+w\ge 1$,
$-u_1-u_2+v_1+v_2+w\ge 1$.
Adjuk össze ezeket, hogy az $u_1+u_2+\cdots+u_n+v_1+v_2+\cdots+v_n+w\ge 2^{n+1}-1$ eredményhez jussunk.
\ujgyak \label{megold711-107}
\quad\vtop{\halign{\hfil$#$\hfil&&\ \hfil$#$\hfil\cr
f&N(f)&\Sigma(f)\cr\noalign{\vskip2pt}
\contra&0&(0,0)\cr
\land&1&(1,1)\cr
\nimp&1&(1,0)\cr
\lproj&2&(2,1)\cr
}}\qquad\quad\vtop{\halign{\hfil$#$\hfil&&\ \hfil$#$\hfil\cr
f&N(f)&\Sigma(f)\cr\noalign{\vskip2pt}
\cnimp&1&(0,1)\cr
\rproj&2&(1,2)\cr
\xor&2&(1,1)\cr
\lor&3&(2,2)\cr
}}\qquad\quad\vtop{\halign{\hfil$#$\hfil&&\ \hfil$#$\hfil\cr
f&N(f)&\Sigma(f)\cr\noalign{\vskip2pt}
\nor&1&(0,0)\cr
\equiv&2&(1,1)\cr
\rcomp&2&(1,0)\cr
\cimpl&3&(2,1)\cr
}}\qquad\quad\vtop{\halign{\hfil$#$\hfil&&\ \hfil$#$\hfil\cr
f&N(f)&\Sigma(f)\cr\noalign{\vskip2pt}
\lcomp&2&(0,1)\cr
\impl&3&(1,2)\cr
\nand&3&(1,1)\cr
\affirm&4&(2,2)\cr
}}

% Notice that $\xor$ and $\equiv$ have the same parameters $N(f)$ and
% $\Sigma(f)$; they are the
% only Boolean binary operations that aren't threshold functions.
\medskip
\noindent Figyeljük meg, hogy $\xor$ és $\equiv$ ugyanazokkal az $N(f)$ és $\Sigma(f)$ paraméterekkel rendelkezik, és 
csak ezek olyan bináris mûveletek, melyek nem küszöbfüggvények.
\ujgyak \label{megold711-108}
% If $\Sigma(g)=(s_0,s_1,\ldots,s_n)$, the value of~$g$ is~1 in
% $s_0$~cases when $x_0=1$ and in $2^n-s_0$ cases when $x_0=0$. We also have
% $\Sigma(f_0)+\Sigma(f_1)=(s_1,\ldots,s_n)$, and
% $$\eqalign{
% \Sigma(f_0)&=\sum_{x_1=0}^1\ldots\sum_{x_n=0}^1(\bar x_1,\ldots,\bar x_n)
% @g(0,\bar x_1,\ldots,\bar x_n)\cr
% &= \sum_{x_1=0}^1\ldots\sum_{x_n=0}^1\bigl((1,\ldots,1)-(x_1,\ldots,x_n)\bigr)@
% \bigl(1-g(1,x_1,\ldots,x_n)\bigr)\cr
% &=(2^{n-1}-s_0,\ldots,2^{n-1}-s_0)+\Sigma(f_1).\cr}$$
% So the answers, for $n>0$, are
% (a) $N(f_0)=2^n-s_0$,
% $\Sigma(f_0)=\half(s_1-s_0+2^{n-1},\ldots,\allowbreak s_n-s_0+2^{n-1})$;
% (b) $N(f_1)=    s_0$,
% $\Sigma(f_1)=\half(s_1+s_0-2^{n-1},\ldots,s_n+s_0-2^{n-1})$.
% [Equivalent results were presented by E.~^{Goto} in lectures at MIT in 1963.]
Ha $\Sigma(g)=(s_0,s_1,\ldots,s_n)$, $g$ értéke $s_0$ olyan esetben 1, amikor $x_0=1$, és $2^n-s_0$ olyan esetben, 
amikor $x_0=0$. Továbbá $\Sigma(f_0)+\Sigma(f_1)=(s_1,\ldots,s_n)$, és
\begin{equation*}
\begin{split}
\Sigma(f_0)&=\sum_{x_1=0}^1\ldots\sum_{x_n=0}^1(\bar x_1,\ldots,\bar x_n) g(0,\bar x_1,\ldots,\bar x_n)\\
&= \sum_{x_1=0}^1\ldots\sum_{x_n=0}^1\bigl((1,\ldots,1)-(x_1,\ldots,x_n)\bigr) \bigl(1-g(1,x_1,\ldots,x_n)\bigr)\\
&=(2^{n-1}-s_0,\ldots,2^{n-1}-s_0)+\Sigma(f_1).
\end{split}
\end{equation*}
Így $n>0$ esetén a válaszok a következõk:
(a) $N(f_0)=2^n-s_0$, $\Sigma(f_0)=\half(s_1-s_0+2^{n-1},\ldots, s_n-s_0+2^{n-1})$;
(b) $N(f_1)=    s_0$, $\Sigma(f_1)=\half(s_1+s_0-2^{n-1},\ldots,s_n+s_0-2^{n-1})$.
(Ezzel ekvivalens eredményekrõl beszélt Goto\angolnevindex{Goto} a MIT-en tartott elõadásaiban 1963-ban.)
\ujgyak \label{megold711-109}
% (a) $a_1+\cdots+a_k\ge b_1+\cdots+b_k$ if and only if
% $k-a_1-\cdots-a_k\le k-b_1-\cdots-b_k$.\par
(a) $a_1+\cdots+a_k\ge b_1+\cdots+b_k$ akkor és csak akkor, ha $k-a_1-\cdots-a_k\le k-b_1-\cdots-b_k$.

% (b) Let $\alpha^+=(a_1,a_1{+}a_2,\ldots,a_1{+}@\cdots@{+}a_n)$. Then 
% the vector $(c_1,\ldots,c_n)$
% obtained by componentwise minimization of $\alpha^+\!$ and~$\beta^+\!$
% is $(\alpha\wedge\beta)^+\!$. (Clearly $c_j=c_{j-1}+@a_j\?$ or~$b_j$.)\par
(b) Legyen $\alpha^+=(a_1,a_1{+}a_2,\ldots,a_1{+}\cdots {+}a_n)$. Ekkor az $\alpha^+$-ból és $\beta^+$-ból komponensenkénti 
minimumszámítással nyert $(c_1,\ldots,c_n)$ vektor éppen $(\alpha\wedge\beta)^+$. (Világos, hogy $c_j=c_{j-1}+a_j$ vagy $b_j$.)

% (c) Proceed as in (b) but with componentwise {\it maximization\/}; or take
% $\overline{\bar\alpha\wedge\bar\beta}$.\par
(c) Folytassuk -- mint (b)-ben -- de komponensenkénti \textit{maximumszámítással}; vagy vegyük az 
$\overline{\bar\alpha\wedge\bar\beta}$ formulát.

% (d) True, because max and min satisfy these distributive laws.
% (In fact, we obtain
% a distributive {\it^{mixed-radix majorization lattice}\/} in a similar way from
% the set of all $n$-tuples $a_1\ldots a_n$ such that
% $0\le a_j<m_j$ for $1\le j\le n$.)\par
(d) Igaz, mert max és min teljesíti a disztributivitási törvényeket. (Valóban, egy disztributív vegyes-alapszámú 
majorizációs hálót\index{vegyes-alapszámú majorizációs hálót = mixed-radix majorization lattice} nyerünk, így az összes 
olyan $a_1\ldots a_n$ $n$-est tartalmazó halmazból, melyre minden $1\le j\le n$ esetén $0\le a_j<m_j$.)

% (e) $\alpha1$ covers $\alpha0$ and $\alpha10\beta$ covers $\alpha01\beta$.
% [This characterization is due to R.~O. ^{Winder}, {\sl IEEE Trans.\
% \bf EC-14} (1965), 315--325, but he didn't prove the lattice property.
% The lattice is often called $M(n)$; see
% B.~^{Lindstr\"om}, {\sl Nordisk Mat.\ Tidskrift\/ \bf17} (1969),
% 61--70; R.~P. ^{Stanley}, {\sl SIAM J. Algebraic and Discrete
% Methods\/ \bf1} (1980), 177--179.]\par
(e) $\alpha1$ lefedi $\alpha0$-t, $\alpha 10\beta$ pedig lefedi $\alpha01\beta$-t. (Ez a jellemzés 
Winder\angolnevindex{Winder} \cite{Winder1965} cikkébõl származik, de Winder nem bizonyította a háló tulajdonságot. 
A hálót gyakran $M(n)$-nek nevezik; lásd Lindström\angolnevindex{Lindström} \cite{Lindstrom1969} és 
Stanley\angolnevindex{Stanley} \cite{Stanley} dolgozatait.)

(f) (e) miatt $r(\alpha)=na_1+(n-1)a_2+\cdots+a_n$.

(g) $0\beta\succeq 0\alpha$ akkor és csak akkor, ha $\beta\succeq\alpha$ és $1\beta\succeq 0\alpha$ akkor és csak akkor, 
ha  $1\beta\succeq 10\ldots 0 \vee 0\alpha=1\alpha'$.

(h) Azaz, hány $a_1\ldots a_n$ bír azzal a tulajdonsággal, hogy $a_1\ldots a_k$ nem tartalmaz több 1-est, mint 0-át. 
A válasz $n\choose\lfloor n/2\rfloor$; lásd például a 2.2.1. pont 4. vagy a 7.2.1.6. alpont 42.(a) gyakorlatokat.
\ujgyak \label{megold711-110}
(a) Ha $x\subseteq y$, akkor $x\preceq y$, ezért $f(x)\le f(y)$; QED.
 
(b) Nem; A küszöb függvény nem szükségszerûen monoton (lásd \label{keplet711-79}).
De meg \textit{lehet} mutatni hogy $f$ reguláris ha azt is megköveteljük, hogy $w_n\ge 0$:
Amikor $f(x)=1$ és $y$~fedi~$x$-et még az is igaz, hogy $w\cdot y\ge w\cdot x$.

(c) Valahányszor $f(x)=1$ és $x_j<x_{j+1}$, akkor lesz $f(y)=1$, ha 
$y$~fedi~$x$-et amikor $x_j\swap x_{j+1}$; ennélfogva $s_j\ge s_{j+1}$.
(Ez az érvelés megállja a helyét, akkor is ha $w_n<0$.)

(d) Nem; Tekintsük például $\langle x\losub1x_2^2x_3^2\rangle$-t, ami megegyezik 
$\langle x_1x_2x_3\rangle$-al. Ellenpéldák keletkezhetnek akkor is ha a 
súlyok minimalizálják $w_1+\cdots+w_n$-et, mivel a 103. gyakorlatbeli 
lineáris programnak nem mindig egyetlen megoldása van. Egy ilyen esetet 
találtak Muroga\angolnevindex{Muroga, Saburo}, Tsuboi\angolnevindex{Tsuboi, Teííchi}, 
és Baugh\angolnevindex{Baugh, Charles Richmond}, ami 
$\rangle x_1^{17}x_2^9x_3^8x_4^6x_5^7x_6^5x_7^3x_8^2x_9^2\langle$, ez egy 
olyan függvény, ami szimmetrikus $x_4$-re és $x_5$-re. Azonban, ha 
$s_j>s_{j+1}$ a (c) miatt $w_j>w_{j+1}$ kell hogy legyen.
\ujgyak \label{megold711-111} (a) Keressen egy optimális önduális $f$ függvényt, 
ugyanúgy mint a 14. gyakorlatban. Probléma esetén legyen $f(x_1,\ldots,x_n)=x_1$. 
Ekkor $f(x_1,\ldots,x_n)=[r_1^{x_1}\ldots r_n^{x_n}\ge
\sqrt{r_1\ldots r_n}\koz ]$, kivéve, ha \idez{$\ge$} $x_1=0$ esetén \idez{$>$} 
lesz. Ez a függvény reguláris, ha $r_1\ge\cdots\ge r_n\ge 1$.

(b) Legyen $g$ az (a)-ban elõállított reguláris, önduális függvény. 
Ha $f$ egy adott reguláris, önduális függvény, akkor igazolni fogjuk, 
hogy mivel mindkét függvény önduális, amennyiben minden $x$ 
vektorra $f(x)\le g(x)$ következik az $f=g$.

Tegyük fel, hogy $f(x)=1$ és legyen a minimális olyan $y\preceq x$, 
amelyre $f(y)=1$. Ha igazoltuk hogy $g(y)=1$, akkor nyilván $g(x)=1$ 
is fennáll. {Lásd Makino\cite{Makino2001}\angolnevindex{Makino, Kazuhisa} 
és Kameda\cite{Kameda2001}\angolnevindex{Kameda, Tiko} cikkét.} 

Például $n=5$ esetén mindössze hét önduális reguláris Boole-függvény 
van, amiket a 8. ábrán látható következõ minimális elemek generálnak:
10000;
01111, 10001;
01110, 10010;
01101, 10011, 10100;
01100;
01011, 11000;
00111.
Így egy optimális klikk mindössze néhány függvényérték megvizsgálásával 
megtalálható.

(c) Tegyük fel, hogy $1>p_1\ge\cdots\ge p_r\ge\half>p_{r+1}\ge\cdots\ge p_n>0$. 
Legyen $f_k(x_1,\ldots,x_n)$ a $k$-adik önduális függvény és 
$F_k(x_1,\ldots,x_n)$ ennek egész együtthatós multilineáris reprezentációja. 
\gyakindex{egész együtthatós multilineáris reprezentáció = 
integer multilinear representation} Keressük a 
$G(p_1,\ldots,p_n)=\max_k F_k(p_1,\ldots,p_n)$ optimális elérhetõséget. 
Ha $p\losub1\le p'_1$,\dots, $p\losub n\le p'_n$, akkor a 12. gyakorlat 
(e) pontja szerint $F_k(p_1,\ldots,p_n)\le F_k(p'_1,\ldots,p'_n)$; ennek 
megfelelõen $G(p_1,\ldots,p_n)\le G(p'_1,\ldots,p'_n)$.

Emiatt ha $0<r<n$, akkor azt kapjuk hogy $G(p_1,\ldots,p_n)\le
G(p_1,\ldots,p_r,\half,\ldots,\half)$. Az utóbbi 
$F(p_1,\ldots,p_r,\half,\ldots,\half)$ az (a)-ban kialakított $f$ függvény. 
Ez a függvény nem függ $(x_{r+1},\ldots,x_n)$-tõl, így az optimumot adja.
 
$r=0$ esetén a probléma mélyebbnek tûnik. Rendelkezünk a $G(p_1,\ldots,p_n)
\le G(p_1,\ldots,p_1)$-vel, így levonhatjuk azt a következtetést, hogy az 
optimális klikk $f(x_1,\ldots,x_n)=x_1$, amennyiben meg tudjuk mutatni hogy 
valahányszor $p<\half$ az $F_k(p,\ldots,p)\le p$ minden~$k$-ra. Általában 
$F_k(p\ldots,p)=\sum_m c_mp^{m}(1-p)^{n-m}$, ahol $c_m$ az olyan $x$ 
vektorok száma, amelyekre $f_k(x)=1$ és $\nu x=m$. A 70. gyakorlat alapján 
$c_m+c_{n-m}={n\choose m}$, minden $k$-ra. Az Erdõs-Radó
\angolnevindex{Erdõs Pál (= Paul, 1913--1996)}\angolnevindex{Radó, Richard} tétel 
miatt (7.2.1.3--|erdos-ko-rado| gyakorlat) $c_m\le\smash{{n-1\choose m-1}}$ 
bármely $m$ halmazból álló egymást metszõ családra
\gyakindex{egymást metszõ család = intersecting family}, ahol $m\le n/2$. Az eredmény ebbõl már adódik.

{Lásd Amir\cite{Amir1998}\angolnevindex{Amir, Yair} és Wool \cite{Wool1998}\angolnevindex{Wool, Avishai} cikkét.}
 \ujgyak \label{megold711-112}
(a) A meghatározó termek sorrendben: $0$, $+xy$, $-xy$, $+x$, $-xy$,
$+y$, $-2xy$, $-xy$, $+xy$, $+2xy$, $-y$, $+xy$, $-x$, $+xy$, $-xy$, $1$;
Így $F(f)=1$, ha $f$ az $\land$, %$\lproj$, %$\rproj$, 
$\nor$, $\equiv$,
$\cimpl$, $\impl$, %$\affirm$. 
(b) A $01101$ kitevõnek megfelelõ együttható, mondjuk $f_{0{*}{*}0{*}}$ a 12. 
válasz jelölése szerint, lineáris kombinációja a $\lceil-2^{k-1}\rceil\le
f_{0{*}{*}0{*}}\le\lceil2^{k-1}\rceil$ intervallumba esõ igazságtábla 
bemeneteknek, ahol $k$ a csillagok száma.
Így a meghatározó együttható akkor és csak akkor pozitív, ha az kevert 
alapszám\gyakindex{kevert alapszám = mixed-radix number}
$$\advance\abovedisplayskip-1.6pt % paging 2006.08.09
  \advance\belowdisplayskip-1.6pt
\Bigl[{f_{{*}{*}\ldots{*}},\atop2^m{+}1,}\,
{f_{0{*}\ldots{*}},\atop2^{m-1}{+}1,}\,
{\ldots,\atop\ldots,}\,
{f_{{*}0\ldots0},\atop2^1{+}1,}\,
{f_{00\ldots0}\atop2^0{+}1}\Bigr]$$
pozitív, ahol az $f$-ek fordított Chase sorrendben vannak és a $2^k+1$ alapszám 
egy $k$ csillagot tartalmazó $f$-nek felel meg. Például, ha $m=2$ az $F(f)=1$ 
akkor és csak akkor, ha az összeg
$18f_{{*}{*}}+6f_{0{*}}+2f_{{*}0}+f_{00}=
18(f_{11}-f_{01}-f_{10}+f_{00})+6(f_{01}-f_{00})+2(f_{10}-f_{00})+f_{00}
=18f_{11}-12f_{01}-16f_{10}+11f_{00}$ pozitív; így a küszöb függvény
felírható $\langle f_{11}^{18}\bar f_{01}^{12}\bar f_{10}^{16} f_{00}^{11}\rangle$.

(Ebben a speciális esetben a legegyszerûbb 
$\langle f_{11}f_{11}\bar f_{01}\bar f_{10}f_{00}\rangle$ kifejezés érvényes. 
Azonban a (c) részben látni fogjuk, hogy ha $m$ nagy nem lehet sokat tenni.)

(c) Tegyük fel, hogy $F(f) = [\sum_\alpha v_\alpha(f_\alpha-\half)>0]$, 
ahol az összegzést a $2^m$ m hosszúságú $\alpha$ bináris sorozatra értjük, 
ahol minden $v_\alpha$ egész értékû súly. Definiáljuk a 
$$w_\alpha=\sum_\beta(-1)^{\nu(\alpha\dotminus\beta)} v_\beta
\qquad\hbox{and}\qquad
F_\alpha=\sum_\beta(-1)^{\nu(\alpha\dotminus\beta)} f_\beta
-2^{m-1}\koz[\alpha=00\ldots 0];$$
úgy, hogy például $w_{01}=-v_{00}+v_{01}-v_{10}+v_{11}$ és
$F_{11}=f_{00}-f_{01}-f_{10}+f_{11}$. Meg lehet mutatni, hogy 
$F_{1^k0^{l}}=2^{l}f_{{*}^k0^{l}}$, amennyiben $F_\alpha=0$, 
amikor $\nu(\alpha)>k>0$. Ezért az $F_\alpha$ transzformált igaz együtthatói 
meghatározzák a multilineáris ábrázolásban a meghatározó együttható jelét. 
Azonkívül megkaptuk, hogy $F(f)=[\sum_\alpha w_\alpha F_\alpha>0]$.

A bizonyítás alapötlete olyan $f$ tesztfüggvény választása, amelyikbõl le 
tudjuk vezetni az $w_\alpha$ transzformált súlyok tulajdonságait. Például, 
ha $f(x_1,\ldots,x_m)=x_1\xor\cdots\xor x_k$, akkor $F_\alpha=0$ minden 
$\alpha$-ra, kivéve az $F_{1^k0^{m-k}}=(-1)^{k-1}2^{m-1}$-et. Az 
$x_1\xor\cdots\xor x_k$ multilineáris reprezentációjának meghatározó 
termje $\lceil(-2)^{k-1}\rceil x_1\ldots x_k$. Emiatt arra a következtetésre 
jutunk, hogy $w_{1^k0^{m-k}}>0$, és hasonlóan, hogy $w_\alpha>0$ for all $\alpha$. 
Általában, ha $m$-rõl $m+1$-re változik, de az $f$ nem függ az $x_{m+1}$-tõl, 
akkor $F_{\alpha0}=2F_\alpha$ and $F_{\alpha1}=0$.

Az $x_2\xor\cdots\xor x_m\xor x_1\bar x_2\ldots\bar x_m$ teszt függvény 
igazolja hogy
$$w_{1^m}>(2^{m-1}{-}1)w_{01^{m-1}}+\sum_{k=1}^{m-1} w_{1^k01^{m-1-k}}
+\hbox{kisebb tagok},$$ 
ahol a kisebb tagok csak $w_\alpha$-t jelentik $\nu(\alpha)\le m-2$ 
esetben. Speciálisan, $w_{11}>w_{01}+w_{10}+w_{00}$. Az 
$x_1\xor\cdots\xor x_{m-1}\xor\bar x_1\ldots\bar x_{m-2}@(x_{m-1}\xor\bar x_m)$ 
teszt függvény mutatja, hogy 
$$w_{1^{m-2}01}>(2^{m-2}{-}1)w_{1^{m-2}10}+
\sum_{k=0}^{m-3}(w_{1^k01^{m-3-k}10}+w_{1^k01^{m-3-k}01})
+\hbox{kisebb tagok},$$ 
ahol a kisebb tagokra ezúttal $\nu(\alpha)\le m-3$. speciálisan 
$w_{101}>w_{110}+w_{010}+w_{001}$. Az indexek permutálásával hasonló 
egyenlõtlenségekhez jutunk 
$$w\losub{\alpha_j}\;>\;(2^{\nu(\alpha_j)-1}-1)w\losub{\alpha_{j-1}}
\qquad\hbox{for $0<j<2^m$},$$
mivel a $w$-k gyorsan növekedni kezdenek. 
Azt kapjuk, hogy $v_\alpha=\sum_\beta(-1)^{\nu(\beta\dotminus\alpha)}w_\beta/n$ 
és ezért $\vert v_\alpha\vert=w_{11\ldots1}/n+O(w_{11\ldots1}/n^2)$.
[{\sl SIAM J. Discrete Math.\ \bf7} (1994), 484--492. Ennek az eredménynek egy 
fontos általánosítását találták Alon\cite{Alon1997}\angolnevindex{Alon, Noga} és
V\~u. \cite{Vu1997}\angolnevindex{V\~u, V. H.}]
%%%
\ujgyak \label{megold711-113}
A megadott $g_3$ az $S_{2,3,6,8,9}$, mivel a megadott $g_2$ az
$S_{2,3,4,5,8,9,10,11,12}$.

A nehezebb $S_{1,3,5,8}$ függvényre, legyen $g_1=\koz[\nu x\ge 6]$;
$g_2=\koz[\nu x\ge 3]$;
$g_3=\koz[\nu x-5g_1-2g_2\ge 2]=S_{2,4,5,9,10,11,12}$;
$g_4=\koz[2\nu x-15g_1-9g_3\ge 1]=S_{1,3,5,8}$. {Lásd M.~A. Fischler\cite{Fischler1968}
\angolnevindex{Fischler, Martin Alvin} és Tannenbaum\cite{Tannenbaum1968}\angolnevindex{Tannenbaum, Meyer}.}
\ujgyak\label{megold711-114}
$\koz[4x+2y+z\in\{3,6\}]=(\bar x{\land}y{\land}z)\lor
(x{\land}y{\land}\bar z)$. Hasonlóan, \textit{tetszõleges} $n$-változós 
Boole-függvény egy $2^n-1$-változós szimmetrikus függvény speciális esete. 
{Lásd Kautz\cite{Kautz1961}\angolnevindex{Kautz, William Hall} cikkét.} 
\ujgyak \label{megold711-115}
Mindkét esetben önduális, ezért feltételezhetjük hogy $x_0=0$. Ekkor
$$s_j=\koz[x_j+\cdots+x_{j+m-1}>x_{j+m}+\cdots+x_{j+2m-1}].$$
Ha $x_1+\cdots+x_{2m}$ páratlan, akkor $s_j=\bar s_{j+m}$; és így 
$s_1+\cdots+s_{2m}=m$ és az eredmény ~1. De, ha $x_1+\cdots+x_{2m}$ páros, 
akkor az $x_j+\cdots+x_{j+m-1}-x_{j+m}-\cdots-x_{j+2m-1}$ különbség nulla lesz 
legalább egy ~$j\le m$-re; ami miatt $s_j=s_{j+m}=0$, így $s_1+\cdots+s_{2m}<m$ lesz. 
\ujgyak \label{megold711-116}
(a) Ez akkor és csak akkor implikáns, ha $f(x)=1$ 
valahányszor $j\le\nu x\le n-k+j$. Ez akkor és csak akkor prímimplikáns, 
ha $f(x)=0$ valahányszor $\nu x=j-1$ vagy $\nu x=n-k+j+1$.

(b) Tekintsük a $v=v_0v_1\ldots v_n$ sorozatot, amelyre $f(x)=v_{\nu x}$. 
Az (a) miatt $a+b+c\choose a,b,c$ olyan prímimplikáns létezik, ahol 
$v=0^a1^{b+\koz 1}0^c$. A szóbanforgó esetben $a=b=c=3$, tehát 1680 prímimplikáns létezik.

(c) Egy általános szimmetrikus függvényre összeadjuk a $v$-ben lévõ 1-esek 
szerinti prímimplikánsokat. Világos hogy, ha $a<c-1$, akkor több van 
$v=0^{a+1}1^{b+1}0^{c-1}$-re, mint $v=0^a1^{b+\koz 1}0^c$-re. Így a maximum 
elérése esetén $v$-ben nincs két egymásutáni $0$.

Legyen $\hat b(m,n)$ a lehetséges prímimplikánsok maximális száma, 
ha $v_m=1$ és $v_j=0$ amikor $m<j\le n$. Ekkor amennyiben $m\le\half n$ azt kapjuk, hogy

\begin{equation*}
\begin{split}
\hat b(m,n)
&=\max_{0\le k\le m}\Bigl(\Bigl({n\atop k,m-k,n-m}\Bigr)+\hat b(k-2,n)\Bigr)\\
&=\Bigl({n\atop\lceil m/2\rceil,\lfloor m/2\rfloor,n-m}\Bigr)+
\hat b(\lceil m/2\rceil-2,n),\\
\end{split}
\end{equation*}
ahol $\hat b(-2,n)=\hat b(-1,n)=0$. És a teljes maximum:
$$\hat b(n)\;=\;\Bigl({n\atop n_0,n_1,n_2}\Bigr)+\hat b(n_1-2,n)+
\hat b(n_2-2,n),\qquad n_j=\Bigl\lfloor{n+j\over3}\Bigr\rfloor.$$
Speciálisan azt kapjuk, hogy a $v=1101111011$-vel elérhetõ maximum $\hat b(9)=1698$.

(d) Stirling közelítéssel, $\hat b(n)=3^{n+3/2}\!/(2\pi n) + O(3^n\!/n^2)$.

(e) Ebben az esetben az alkalmas rekurzió $m<\lceil n/2\rceil$-re:
\begin{equation*}
\begin{split}
\tilde b(m,n)
&=\max_{0\le k\le m}\Bigl(\Bigl({n\atop k,m-k,n-m}\Bigr)+
\Bigl({n\atop k-1,0,n-k+1}\Bigr)+\tilde b(k-2,n)\Bigr)\cr
&=\Bigl({n\atop\lceil m/2\rceil,\lfloor m/2\rfloor,n-m}\Bigr)+
\Bigl({n\atop\lceil m/2\rceil-1}\Bigr)
+\tilde b(\lceil m/2\rceil-2,n)\cr
\end{split}
\end{equation*}

és $\tilde b(n)=\tilde b(\lceil n/2\rceil-1,n)$ maximalizálja a 
$\min\bigl({\rm prímimplikánsok}(f),{\rm prímimplikánsok}(\bar f)\bigr)$.
Azt kapjuk, hogy $(\tilde b(1),\tilde b(2),\ldots{})=
(1, 1, 4, 5, 21, 31, 113, 177, 766, 1271, 4687, 7999, 34412, \ldots{})$;
például, $\tilde b(9)=766$ megfelel az $S_{0,2,3,4,8}(x_1,\ldots,x_9)$-nek.
Közelítõleg, $\tilde b(n)=2^{(3n+3+(n\mod2))/2}\!/(2\pi n)+
O(2^{3n/2}\!/n^2)$.

\textit{Hivatkozások}: {\sl Summaries, Summer Inst.\ for Symbolic Logic\/}
(Dept.\ of Math., Cornell Univ., 1957), 211--212; B.~Dunham\cite{Dunham1959}
\angolnevindex{Dunham, Bradford} és 
Fridshal\cite{Fridshal1959}\angolnevindex{Fridshal, Richard}
Vikulin\cite{Vikulin1974},\angolnevindex{Vikulin, Anatoly Petrovich} ami 1960-ban végzett munkákról számol be; 
Igarashi\cite{Igarashi1979}\angolnevindex{Igarashi, Yoshihide} 
\ujgyak \label{megold711-117}
Az $n$-kocka olyan részkockáinak maximális száma, amelyek közül 
egyik sem tartalmazza a másikat, megkapható, ha tekintjük az összes 
$\lfloor n/3\rfloor$ dimenziós részkockát. (Ugyanez elérhetõ, ha az összes 
$\lfloor(n+1)/3\rfloor$ dimenziós részkockát tekintjük. Például, ha $n=2$, 
akkor választhatjuk akár a $\{0{*},1{*},{*}0,{*}1\}$-t, akár a 
$\{00,01,10,11\}$-t.) Ennek megfelelõen $b^*(n)=
\smash{n\choose\lfloor n/3\rfloor}2^{n-\lfloor n/3\rfloor}
=3^{n+1}\!/\sqrt{4\pi n}+O(3^n\!/n^{3/2})$. {Lásd Vikulin \cite{Vikulin1974}\angolnevindex{Vikulin, Anatoly Petrovich}  
cikkét az elõzõ válaszból, továbbá Chandra \cite{Chandra1978}\angolnevindex{Chandra, Ashok Kumar} és Markowsky 
\cite{Markowsky1992},\angolnevindex{Markowsky, George} valamint Metropolis 
\cite{Metropolis1978}\angolnevindex{Metropolis, Nicholas Constantine} és Rota \cite{Rota1978}\angolnevindex{Rota, Gian-Carlo} cikkét.}
\ujgyak \label{megold711-118}
Két függvényt ekvivalensnek tekintünk, ha az egyik a másikból a változóik komplementálásával és/vagy permutálásával megkapható, de a 
függvényérték komplementálása nélkül. Az ilyen függvények prímimplikánsainak száma nyilván ugyanannyi. Ezt az ekvivalencia 
relációt késõbb a 125-ös válaszban tanulmányozzuk. Egy, a 30. gyakorlaton alapuló számítógépes program a következõ eredményt adja: 
$$\vtop{\halign{\hfil#\hfil\ &\hfil#\ &\hfil#\ \cr
$m$&\omit\ Osztályok&\omit\ Függvények\cr
\noalign{\vskip2pt}
0&1&1\cr
1&5&81\cr
2&18&1324\cr
3&46&6608\cr
4&87&14536\cr
}}\qquad\vtop{\halign{\hfil#\hfil\ &\hfil#\ &\hfil#\ \cr
$m$&\omit\ Osztályok&\omit\ Függvények\cr
\noalign{\vskip2pt}
5&87&17472\cr
6&70&12696\cr
7&43&7408\cr
8&24&3346\cr
9&10&1296\cr
}}\qquad\vtop{\halign{\hfil#\hfil\ &\hfil#\ &\hfil#\ \cr
$m$&\omit\ Osztályok&\omit\ Függvények\cr
\noalign{\vskip2pt}
10&7&632\cr
11&1&96\cr
12&2&24\cr
13&1&16\cr
14&0&0\cr
}}$$
Itt a megfelelõ statisztikákat látjuk az ötváltozós függvényekre:
$$\vtop{\halign{\hfil#\hfil\ \ &\hfil#\ \ &\hfil#\ \cr
$m$&\omit\ \ Osztályok&\omit\ \ Függvényeks\cr
\noalign{\vskip2pt}
0&1&1\cr
1&6&243\cr
2&37&14516\cr
3&244&318520\cr
4&1527&3319580\cr
5&6997&19627904\cr
6&23434&73795768\cr
7&57048&190814016\cr
8&105207&362973410\cr
9&152763&538238660\cr
10&183441&652555480\cr
}}\qquad\vtop{\halign{\hfil#\hfil\ \ &\hfil#\ \ &\hfil#\ \cr
$m$&Osztályok&Függvények\cr
\noalign{\vskip2pt}
11&186447&666555696\cr
12&165460&590192224\cr
13&129381&459299440\cr
14&91026&319496560\cr
15&57612&199792832\cr
16&33590&113183894\cr
17&17948&58653984\cr
18&8880&27429320\cr
19&3986&11597760\cr
20&1795&4548568\cr
21&720&1633472\cr
}}\qquad\vtop{\halign{\hfil#\hfil\ &\hfil#\ &\hfil#\ \cr
$m$&\omit\ Osztályok&\omit\ Függvények\cr
\noalign{\vskip2pt}
22&338&608240\cr
23&130&197440\cr
24&71&75720\cr
25&37&28800\cr
26&15&10560\cr
27&6&2880\cr
28&4&1040\cr
29&2&640\cr
30&2&48\cr
31&2&64\cr
32&1&16\cr
}}$$
\ujgyak \label{megold711-119}
Több szerzõ igazolta, hogy $b(n)=\hat b(n)$; Gadzhiev\cite{Gadzhiev1971}\angolnevindex{Gadzhiev, Makhach Mamaevich} 
bizonyította, hogy $n\le 6$-ra az egyenlõség teljesül.
\ujgyak \label{megold711-120}
(a) Itt minden primimplikáns minterm, mivel az $n$-kockának 
nincsenek azonos paritású szomszédos pontjai. Ezért a teljes diszjunktív 
normálforma az egyetlen megfelelõ DNF.
(b) Itt minden prímimplikáns két szomszédos pontot fed le. Ide kell tartoznia 
a $\nu x=1$ and $\nu x=6$ pontok lefedéséhez a 14 darab $0^{j}\koz{*}0^{6-j}$ 
és $1^j{*}1^{6-j}$ részkockának, ahol $0\le j\le 6$. A többi 
${7\choose3}+{7\choose4}=70$ pontot le lehet fedni 35 jól megválasztott 
prímimplikánssal (lásd, például a 6.5--|perm-prefixes| gyakorlatot, vagy a 
7.2.1.6 pontbeli \idez{karácsonyfa mintát} 
\gyakindex{karácsonyfa minta = Christmas tree pattern}). Ezért a legrövidebb 
DNF hossza 49. [Egy nyilvánvaló, de félrevezetõ S.~B. Yablonsky publikációjában
\cite{Yablonsky1962}\angolnevindex{Yablonsky, Sergei Vsevolodovich} az az állítás, hogy 
70 prímimplikáms szükséges.]

(c) Az $(x_1,\ldots,x_{n-1})$-nek $2^{n-1}$-féle megválasztásának mindegykéhez 
legfejebb egy implikáns szükséges, ami azt mutatja meg, hogy a függvény hogyan 
viselkedik az $x_n$ vonatkozásában.

[Majdnem minden $n$-változós Boole-függvénynek van legrövidebb DNF-je, ami aszimptotikusan 
$\Theta(2^n\!/(\log n\log\log n))$ prímimplikánsból áll. 
Lásd R.~G. Nigmatullin\cite{Nigmatullin1967}\angolnevindex{Nigmatullin, Roshál Gabdulkhaevch}, 
%{\sl Diskretny\u{\i} Analiz\/ \bf10} (1967), 69--89; 
V.~V. {Glagolev},\cite{Glagolev1967}\angolnevindex{Glagolev, Valery Vladimirovich} 
%{\sl Problemy Kibernetiki\/ \bf19} (1967), 75--94; 
A.~D. {Korshunov},\cite{Korshunov1981}\angolnevindex{Korshunov, Aleksey Dimitrievich} 
%{\sl Metody Diskretnogo Analiza\/ \bf37} (1981), 9--41; 
N.~{Pippenger},\cite{Pippenger2003}\angolnevindex{Pippenger, Nicholas John} 
%{\sl Random Structures \& Algorithms\/ \bf22} (2003), 161--186.]
\ujgyak \label{megold711-121} (a) Legyen adva 
$x=x_1\ldots x_m$ and $y=y_1\ldots y_n$. Mivel $f$ a 
$(\nu x,\nu y)$ függvénye, összesen $2^{(m+1)(n+1)}$ lehetõség van.

(b) Ebben az esetben $\nu x\le\nu x'$ és $\nu y\le\nu y'$ implikálja, 
hogy $f(x,y)\le f(x',y')$. Minden ilyen függvény megfelel az $a_0=(-\half,n+\half)$-ból 
az $a_{m+n+2}=(m+\half,-\half)$-ba vezetõ cikkcakkos útnak, 
ahol  $a_j=a_{j-1}+(1,0)$ or $a_j=a_{j-1}-(0,1)$ for $1\le j\le m+n+2$; 
az $f(x,y)=1$ akkor és csak akkor, ha a $(\nu x,\nu y)$ pont az 
út felett helyezkedik el. Így a lehetõségek száma az ilyen utak száma, 
nevezetesen $m+n+2\choose m+1$.

(c) Komplementáláskor $x$ és $y$ cserélõdik $\nu x$ rõl $m-\nu x$-re 
és $\nu y$-rõl $n-\nu y$-ra. Tehát, ha $m$ is és ~$n$ is párosak 
nincsenek ilyen függvények; egyébként $2^{(m+1)(n+1)/2}$ létezik.

(d) A (b) út kell hogy az $a_j+a_{m+n+2-j}=(m,n)$-t teljesítse 
$0\le j\le m+n+2$-re. Ezért létezik ${\lceil m/2\rceil+\lceil n/2\rceil
\choose\lceil m/2\rceil}$[$m$ páratlan vagy $n$ páratlan] ilyen függvény. 
Például, az a tíz eset, amikor $m=3$ és $n=6$. 
EZ ITT EGY ÁBRA
%$$\def\\#1{\vcenter{\epsfbox{\figdir/v4a.99#1}}}
%\line{$\ \\0\hfil\\1\hfil\\2\hfil\\3\hfil\\4\hfil\\5\hfil\\6\hfil\\7\hfil
% \\8\hfil\\9\ $}$$
\ujgyak \label{megold711-122} Egy ilyen függvény akkor és 
csak akkor reguláris a baloldalon lévõ $x$-ekre és a jobboldalon 
lévõ $y$-okra, ha a cikkcakkos út nem tartalmazza az $(x,y)$ és az 
$(x+2,y)$ pontokat $0<y<n$ esetén. Ugyancsak akkor és 
csak akkor reguláris az $x$-ek baloldalán lévõ $y$-ra, ha  a cikkcakkos
út nem tartalmazza az $(x,y+2)$ és $(x,y)$ pontokat, amikor $0<x<m$. 
Ez akkor és csak akkor egy küszöb függvény, ha létezik egy egyenes vonal az $(m/2,n/2)$ 
ponton keresztül, úgy hogy az $(s,t)$ akkor és csak akkor van a vonal 
felett, ha  $0\le s\le m$ és $0\le t\le n$-re $(s,t)$ az út felett 
van. Így az elõzõ válaszban illusztrált 5 és 8 esetek nem regulárisak. 
Az 1, 2, 3, 7, 9, és 10 esetek küszöb függvények. A maradék reguláris 
nem-küszöb függvényeket a következõkép lehet kifejezni:
$((x_1\lor x_2\lor x_3)\land<x_1x_2x_3y_1y_2y_3y_4y_5y_6\>)\lor
(x_1\land x_2\land x_3)$ (~4. eset);
$<00x_1x_2x_3y_1y_2y_3y_4y_5y_6\>\lor(<x_1x_2x_3\>\land
  <11x_1x_2x_3y_1y_2y_3y_4y_5y_6\>)$ (~6. eset).
\ujgyak \label{megold711-123} Az önduális \textit{reguláris}
\index{reguláris = regular} függvényeket kis $n$-ekre viszonylag könnyû 
kilistázni, de a számuk gyorsan növekszik. $n=9$ esetén a számuk már 
319,124, amit Muroga\angolnevindex{Muroga, Saburo}, Tsuboi\angolnevindex{Tsuboi, Teiíchi}, and 
Baugh\angolnevindex{Baugh, Charles Richmond} talált meg 1967-ben. 
Ha $n=10$, akkor a számuk 1,214,554,343 (lásd a 7.1.4--|reg-enum|gyakorlatot). 
Az 5.táblázatban $n\le6$-ra a megfelelõ számok megtalálhatók, mivel $n<9$re 
az összes ilyen függvény küszöb függvény; számuk 135 ha $n=7$, és 2470 
ha $n=8$.

A küszöb feltételek tesztelését tetszõleges ilyen 
függvényre gyorsan elvégezhetjük a 103. gyakorlatbeli módszer 
finomításával, mivel a megszorítások csak azokra a \textit{minimális} $x$ 
vektorokra szükségesek (tekintettel a majoritásra) 
amelyekre $f(x)=1$.

Az $n$-változós küszöbfüggvények $\theta_n$ számára fennáll, hogy 
$\lg\theta_n=n^2-O(n^2\!/\!\log n)$;  lásd Yu.~A.Zuev 
\angolnevindex{Zuev, Yuri Anatolevich}\cite{Zuev1994},
{\sl Matematicheskie Voprosy Kibernetiki\/ \bf5} (1994), 5--61.
\ujgyak \label{megold711-124} Az 5. táblázatban felsorolt 222 ekvivalencia 
osztályban 24 osztály mérete $2^{n+1}n!=768$. Ennek megfelelõen a 
problémára $24\times768=18432$ válasz létezik. Ezek közül egy a 
$(w\land(x\lor(y\land z)))\xor z$ függvény.
% AND it with v, you get a 5-variable class of size 7680
\ujgyak \label{megold711-125} 0; $x$; $x\land y$; $x\land y\land z$; 
$x\land(y\lor z)$; $x\land(y\xor z)$. (Ezek a függvények $x\land f(y,z)$ 
alakúak, ahol $f$ befutja a kétváltozós függvények ekvivalencia osztályait 
a változóik permutálására és/vagy komplementálására nézve, de \textit{nem} 
a függvényértékekére. Általában jelentse $f\simeq g$, hogy $f$ ekvivalens 
$g$-vel ebben a gyengébb értelemben, de $f\cong g$-t írunk, ha az 5. 
táblázat értelmében ekvivalensek. Tehát $x\land f\cong x\land g$ akkor 
és csak akkor, ha $f\simeq g$, feltéve hogy $f$ és $g$ nem függnek az $x$ 
változótól. Ezután könnyû belátni, hogy $(x\land f)\simeq(\bar x\lor\bar g)$ 
lehetetlen. De, ha $(x\land f)\simeq(x\land g)$, akkor az $f\simeq g$ 
bebizonyításához megmutatjuk hogy, ha $\sigma$ az $\{x_0,\ldots,x_n\}$-re 
egy kiválasztott permutáció \index{kiválasztott permutáció = signed permutation} 
és ha $x=x_1\ldots x_n$, akkor az $x_0\land f(x)=(x_0\sigma)\land g(x\sigma)$ 
identitásnak következménye az $f(x)=g(x\sigma\tau)$. Itt a $\tau$ a 
$x_0\swap x_0\sigma$ cseréket végzi el. Az 5. táblázat alsó sora 
az $\simeq$ szerinti ekvivalencia osztályokat sorolja fel, de ha $n$-et 
1-el növeljük 4-változós függvények esetén, akkor már 402 ilyen 
osztályt kapunk.)
\ujgyak \label{megold711-126} (a) A függvény akkor és csak akkor irányító, 
ha van egy legfeljebb egy literált tartalmazó prímimplikánsa, vagy 
egy legfeljebb egy literált tartalmazó prímklóza.

(b) A függvény akkor és csak akkor irányító, ha a $\Sigma(f)$ legalább 
egy komponense egyenlõ 0, $2^{n-1}$, $N(f)$, vagy $N(f)-2^{n-1}$. 
[Lásd I.~\angolnevindex{Shmulevich, Ilya Vladimir}, H.~\angolnevindex{L\"ahdesm\"aki, Harri}, és
K.~\angolnevindex{Egiazarian Karen}, {\sl IEEE Signal Processing Letters\/ \bf11} (2004),
289--292, 6. állítás]

(c) Ha, mondjuk $\vee(f)=y_1\ldots y_n$ $y_j=0$-ra, akkor $f(x)=0$
amikor $x_j=1$. Ennélfogva az $f$ akkor és cak akkor irányító, ha nem áll 
fenn, hogy ${\vee}(f)={\vee}(\bar f)=1\ldots1$ és
${\wedge}(f)={\wedge}(\bar f)=0\ldots0$. Ezzel a teszttel sok 
függvényre, amelynek értékét csak néhány pontban ismerjük, bizonyíthatjuk 
hogy nem irányító.
\ujgyak \label{megold711-127} (a) Mivel egy $f(x_1,\ldots,x_n)$ 
önduális függvény pontosan $2^{n-1}$ pontban igaz, egyúttal irányító 
az $x_j$-re akkor és csak akkor, ha $f(x_1,\ldots,x_n)=x_j$.

(b) Egy definit Horn függvény nyilván irányító, ha (i) tartalmaz 
valamilyen egyetlen literálból álló klózt, vagy (ii) valamely literál 
minden klózban elõfordul. Egyébként nem irányító. Ekkor 
$f(0,\ldots,0)=f(1,\ldots,1)=1$, mivel (i) nem áll fenn; és ha $x_j$ egy 
tetszõleges változó, van olyan $C_0$ klóz, amely nem tartalmazza $\bar x_j$-t 
és olyan $C_1$ klóz, amely nem tartalmazza $x_j$-t, mivel (ii) nem 
áll fenn. Megfelelõ értéket választva a többi változónak elérhetjük, 
hogy $C_0\land C_1$ hamis legyen akkor is ha $x_j=0$ és akkor is ha $x_j=1$.
\ujgyak \label{megold711-128} Például, $(x_1\land\cdots\land x_n)\lor
(\bar x_1\land\cdots\land\bar x_n)$.
\ujgyak \label{megold711-129} $\sum_{k=1}^{n}(-1)^{k+1}{n\choose k}_{\mathstrut}
2^{2^{n-k}\!+k+1}-2(n-1)-4(n\mod2)=n2^{2^{n-1}\!+2}+O(n^22^{2^{n-2}})$.
[Lásd W.~Just\angolnevindex{Just, Winfried}, I.~Shmulevich
\angolnevindex{Shmulevich, Ilya Vladimir}, 
és J.~Konvalina\angolnevindex{Konvalina, John},
{\sl Physica\/ \bf D197} (2004), 211--221.]
\ujgyak \label{gyak711-130} (a) Ha $a_n$ az $n$ vagy annál kevesebb 
változótól függõ függvények száma és $b_n$ a pontosan $n$ változótól 
függõ függvények száma, akkor $a_n=\sum_k{n\choose k}b_k$. Ugyanígy 
$b_n=\sum_k(-1)^{n-k}{n\choose k}a_k$.
%\answer (a) If there are $a_n$ functions of $n$ or fewer variables, but
%$b_n$ functions of exactly~$n$ variables, we have
%$a_n=\sum_k{n\choose k}b_k$. Therefore $b_n=\sum_k(-1)^{n-k}{n\choose k}a_k$.
(Ezt a szabályt, amely C.~E. Shannon nevéhez fûzõdik, \cite{Shannon1938}
\angolnevindex{Shannon, Claude Elwood, Jr. (1916--2001)} 
a 3. táblázat minden sorára alkalmazzák, \textit{kivéve} a
szimmetrikus függvényeket.) Ebben az esetben a keresett válasz 
$168-4\cdot20+6\cdot6-4\cdot3+2=114$.

(b) Ha van $a'_n$ darab lényegesen különbözõ $n$ vagy annál kevesebb 
változótól függõ és $b'_n$ darab pontosan $n$ változótól függõ 
függvény, akkor $a'_n=\sum_{k=0}^{n}b'_k$. Ennek megfelelõen 
$b'_n=a'_n-a'_{n-1}$ és a válasz ebben az esetben $30-10=20$.
\ujgyak \label{gyak711-131} 
Legyenek $h(n)$ Horn függvények és $k(n)$ 
Krom függvények. Az világos, hogy $\lg h(n)\ge\smash{n\choose\lfloor n/2\rfloor}$
and $\lg k(n)\ge{n\choose2}$.
V.~B. Alekseyev\cite{Alekseyev1989}\angolnevindex{Alekseyev, Valeri Borisovich}
[{\sl Diskretna\t{\i}a Matematika\/ \bf1} (1989), 129--136]
bizonyította, hogy $\lg h(n)={n\choose\lfloor n/2\rfloor}(1+O(n^{-1/4}\log n))$.
B.~Bollob\'as\angolnevindex{Bollob\'as, Béla}, G.~Brightwell
\angolnevindex{Brightwell, Graham Richard}, 
és I.~Leader\angolnevindex{Leader, Imre}
[{\sl Israel J. Math.\ \bf133} (2003), 45--60]
bizonyították, hogy $\lg k(n)\sim\half n^2$.
\ujgyak \label{gyak711-132} (a) A segítség igaz, mivel $\sum_y\koz s(y)s(y\oplus z)=
\sum_{w,x,y}(-1)^{f(w)+w\cdot y+f(x)+x\cdot(y+z)}= \allowbreak 2^n\sum_{w,x}
(-1)^{f(w)+f(x)+x\cdot z}[x=w]$. Tegyük fel most, hogy $f(x)=g(x)$ 
az ~$x$-nek $2^{n-1}+k$ különbözõ értékére. Ekkor $f(x)=g(x)\xor 1$ az ~$x$-nek 
$2^{n-1}-k$ különbözõ értékére. De, ha $\vert k\vert<2^{n/2-1}$ az összes 
~$g$ affin függvényre, akkor azt kapjuk, hogy $\vert s(y)\vert<2^{n/2}$ 
minden ~$y$-ra, ami $z=0$ esetben ellentmond a segítségnek.

(b) Legyen $y=y_1\ldots y_n$ adott, ekkor pontosan 
$2\losup{n/2}\bigl((y_1y_2+y_3y_4+\cdots+y_{n-1}y_n+1+\allowbreak
h(y_1,y_3,\ldots,y_{n-1}))\mod2\bigr)$ megoldás létezik $f(x)=x\cdot y\mod2$-re, 
ha $x_{2k}=y_{2k-1}$, amikor $1\le k\le n/2$. Ugyanakkor $2^{n/2-1}$ megoldás 
létezik az $(x_2,x_4,\ldots,x_n)$ lehetséges $2^{n/2}-1$-féle értékének 
mindegyikére. Ezért összesen $2^{n-1}\pm2^{n/2-1}$ megoldás létezik. (Ez 
tulajdonképen azt igazolja, hogy $\bigl(g(x_1,x_3,\ldots,x_{2n-1})
\cdot(x_2,x_4,\ldots,x_{2n})
+h(x_2,x_4,\ldots,x_{2n})\bigr)\mod2$ bent függvény, valahányszor 
$g(x_1,x_3,\ldots,x_{2n-1})$ egy permutációja az összes $2^{n/2}$-bites vektornak.)

(c) Ha $f(x)$ bent függvény, akkor az (a)-beli okoskodás igazolja, hogy 
$s(y)=2^{n/2}(-1)^{g(y)}$ valamely ~$g(y)$ Boole-függvényre. Ez a függvény 
szintén bent függvény, mivel $\sum_y(-1)^{g(y)+w\cdot y}=
2^{-n/2}\sum_{x,y}(-1)^{f(x)+x\cdot y+w\cdot y}=2^{n/2}\sum_x(-1)^{f(x)}[x=w]=
2^{n/2}(-1)^{f(w)}$ minden~$w$-re. Következéskép a segítség miatt 
$\sum_x(-1)^{f(x)+f(x\oplus z)}=0$ minden nemzéró $z$-re.

Fordítva, tegyük fel, hogy $f(x)$ teljesíti a megadott feltételeket, és hogy 
$f(x)=1$ az $x$-nek pontosan $k$ értékére. Ha $y$ egy tetszõleges 
Boole-vektor, akkor a $g(x)=(f(x)+x\cdot y)\mod2$ Boole-függvény szintén 
teljesíti a feltételt. Ezért csak azt kell bizonyítani, hogy 
$k=2^{n-1}\pm2^{n/2-1}$.

Legyen $A$ egy $2^n\times2^n$ mátrix, ahol az $x$ sorban és az $y$ 
oszlopban az $f(x\oplus y)$ található. Legyen $J$ egy csupa 1-esekbõl álló 
$2^n\times2^n$ mátrix.\index{0--1 mátrix = 0--1 matrices}
\index{szimmetrikus blokk rendszer = symmetric block design}
\index{Hadamard mátrix = Hadamard matrix} 
Ekkor kapjuk, hogy $J^2=2^nJ$ and $JA=AJ=kJ$ és így 
$$2^nI\;=\;(J-2A)^2\;=\;2^nJ-4kJ+4A^2;$$ Amibõl következik, hogy ha 
$y\ne0\ldots0$, akkor az olyan $x$-ek száma $k-2^{n-2}$, amelyekre $f(x)=1$ és 
$f(x\oplus y)=1$. Más szóval, pontosan $k-2^{n-2}$ darab olyan rendezett 
$(w,x)$ vektorpár van, hogy $f(w)=f(x)=1$ és $w\oplus x=y$. Az összes $y$ 
feletti összegzéssel kapjuk, hogy $(2^n-1)(k-2^{n-2})=k(k-1)$. Ennek a 
kvadratikus egyenletnek a megoldása $k=2^{n-1}\pm2^{n/2-1}$.

(d) A \ref{gyak711-11}. gyakorlat alapján az $x_1\ldots x_r$ tag akkor és csak 
akkor fordul elõ, ha az $f(x_1,\ldots,x_r, \allowbreak 0,\ldots,0)=1$ egyenletnek 
páratlan számú megoldása van. Egy ezzel ekvivalens feltétel: 
$$\bigl(\sum_{x_1,\ldots,x_r}(-1)\losup{f(x_1,\ldots,x_r,0,\ldots,0)}\bigr)\mod 4 = 2\koz.$$ 
A (c) részben láttuk, hogy ez az összeg 
$$2^{-n}\!\!\sum_{x_1,\ldots,x_r,y}\!\!s(y)(-1)^{x_1y_1+\cdots+x_ry_r}
\;=\;2^{r-n}\!\!\!\sum_{y_{r+1},\ldots,y_n}\!\!
s(0,\ldots,0,y_{r+1},\ldots,y_n).$$
Ha $r=n$, akkor az utolsó összeg $\pm2^{n/2}$; másként szólva ez páros számú 
összeadandót tartalmaz, amelyek mindegyike $\pm2^{r-n/2}$. Így az eredmény 
4-nek többszöröse.\par\breathe
[A bent függvényeket O.~S. Rothaus \cite{Rothaus1976}
\angolnevindex{Rothaus, Oscar Seymour} 
vezette be 1966-ban; ezt a személyesen terjesztett cikket 1976-ban 
pulikálta a {\sl J.~Combinatorial Theory\/ \bf A20} (1976), 300--305.
%The construction in~(b) was discovered by R.~L. ^{McFarland},
%{\sl J.~Combinatorial~Theory\/ \bf A15} (1973), 1--10, and independently by
%J.~A. ^{Maiorana}.
J.~F. Dillon \cite{Dillon1975}\angolnevindex{Dillon, John Francis}, 
{\sl Congressus Numerantium\/ \bf14} (1975), 237--249,
a bent függvények egy új családját fedezte fel, és $n\ge8$ és $n$~ páros 
esetre sok más példát is talált. Bent függvények nem léteznek, ha $n$ páratlan, 
de egy $g(x_1,\ldots,x_{n-1})\xor x_n{\koz\land}
h(x_1,\ldots,x_{n-1})$-hez hasonló függvénynek az összes affin 
függvénytõl való távolsága $2^{n-1}-2^{(n-3)/2}$, ha $g$ és~$h$ bent 
függvények. Az $n=15$ esetre  N.~J. Patterson\cite{Patterson1983}
\cite{Patterson1990}\angolnevindex{Patterson, Nicholas James} és 
D.~H. Wiedemann\cite{Wiedemann1983}\cite{Wiedemann1990}
\angolnevindex{Wiedemann, Douglas Henry} 
jobb konstrukciót találtak
{\sl IEEE Transactions\/ \bf IT-29} (1983), 354--356, {\bf IT-36} (1990), 443,
ahol a kapott távolság $2^{14}-108$.]
\ujgyak \label{gyak711-133} Legyen $p_k=1/(2^{2^{n-k}}\!\!+1)$, úgy 
hogy $\bar p_k=2^{2^{n-k}}\!\!/(2^{2^{n-k}}\!\!+1)$.
Let $p_k=1/(2^{2^{n-k}}\!\!+1)$, so that
$\bar p_k=2^{2^{n-k}}\!\!/(2^{2^{n-k}}\!\!+1)$.
[Ph.D.\ thesis (MIT, 1994).]\tighten
\end{gyak}
\bibliography{KnuthMajus31}
\bibliographystyle{infalg}
\begin{printindex}
\end{printindex}
\begin{printangolnevindex}
\end{printangolnevindex}
\begin{printnevindex}
\end{printnevindex}
\end{document}
