You are on page 1of 297

ELMÉLETI MATEMATIKA

Diszkrét
matematika
LOVÁSZ LÁSZLÓ
PELIKÁN JÓZSEF
VESZTERGOMBI KATALIN
E lm életi m a tem a tik a

A sorozat kötetei:
Bolla Marianna - Krámli András: Statisztikai következtetések elmélete
Borovkov, Alekszandr A.: Matematikai statisztika
G. Horváth Ákos - Szirmai Jenő: Nemeuklideszi geometriák modelljei
Járai Antal: Modern alkalmazott analízis
Kiss Emil: Bevezetés az algebrába
Komornik Vilmos: Valós analízis előadások I—II.
Lovász László: Kombinatorikai problémák és feladatok
Praszolov, Viktor V.: Lineáris algebra
Rózsa Pál: Bevezetés a mátrixelméletbe
Safarevics, Igor R.: Algebra
Simonovits András: Válogatott fejezetek a matematika történetéből
Stoyan Gisbert: Numerikus matematika mérnököknek és programozóknak
Szász Pál: A differenciál- és integrálszámítás elemei I—II.
Tóth János - Simon L. Péter: Differenciálegyenletek
Weeks, Jeffrey R.: A tér alakja
L o vász L ászló
P e l ik á n J ó z s e f
V e s z t e r g o m b i K a t a l in

DISZKRÉT MATEM ATIKA

Fordította
Csaba Ferenc

Budapest, 2010
A könyv a Typotex Kiadó által indított, az Igényes Tankönyvkiadásért
Program keretében jelent meg.
Az első kiadás megjelenését a Felsőoktatási Tankönyv- és
Szakkönyv-támogatási Pályázat keretében az Oktatási Minisztérium
támogatta.

A mű eredeti címe: Discrete Mathematics. Elementary and beyond.


Springer-Verlag, 2003

© Lovász László, Pelikán József, Vesztergombi Katalin, Typotex, 2006

Hungárián Translation © Csaba Ferenc, Typotex, 2006

Második, javított kiadás

ISBN 978 963 279 085 5


ISSN 1788-1811

Témakör: kombinatorika, elméleti matematika

Kedves Olvasó!
Önre gondoltunk, amikor a könyv előkészítésén munkálkodtunk. Kapcsola­
tunkat szorosabbra fűzhetjük, ha belép a TypoKlubba, ahonnan értesülhet új
kiadványainkról, akcióinkról, programjainkról, és amelyet a www.typotex.hu
címen érhet el. Honlapunkon megismerkedhet kínálatunkkal is, egyes köny­
veinknél pedig új fejezeteket, bibliográfiát, hivatkozásokat találhat, illetve az
esetlegesen előforduló hibák jegyzékét is letöltheti.
Kiadványaink egy része e-könyvként (is) kapható: www.interkonyv.hu
Észrevételeiket a velemeny@typotex.hu e-mail címen várjuk.

Kiadja a Typotex kiadó, az 1795-ben alapított


Magyar Könyvkiadók és Könyvterjesztők Egyesülésének tagja.
Felelős kiadó: Votisky Zsuzsa
Műszaki szerkesztő: Csaba Ferenc - Erő Zsuzsa
A borítót tervezte: Tóth Norbert
Terjedelem: 21,1 (A/5 ív)
Nyomás: Séd Nyomda Kft., Szekszárd
Felelős vezető: Katona Szilvia
Tart alomj egy zék

E lő s z ó ...................................................................................................... 8

1. Számoljuk össze! 10
1.1. Andrea születésnapja ........................................................... 10
1.2. H a lm a z o k ........................................ 13
1.3. A részhalmazok s z á m a ............... 19
1.4. A részhalmazok számának k ö zelítése........................................ 24
1.5. Véges karaktersorozatok.............................................................. 25
1.6. Perm utációk................................................................................... 26
1.7. A rendezett részhalmazok s z á m a .............................................. 28
1.8. Adott elemszámú részhalmazok s z á m a ..................................... 29

2. Kom binatorikus m ódszerek 34


2.1. Teljes in d u k c ió ............................................................................. 34
2.2. Összehasonlítás és b e c s lé s ........................................................... 39
2.3. A sz ita fo rm u la ............................................................................. 41
2.4. A sk atu ly aelv ................................................................................ 44
2.5. Az „ikerparadoxon” és a jó öreg logaritm us............................... 46

3. A binom iális együtthatók és a Pascal-három szög 52


3.1. A binomiális té te l.......................................................................... 52
3.2. Ajándékosztás................................................................................ 54
3.3. A n ag ram m ák ................................................................................ 55
3.4. Pénzosztás....................................................................................... 57
3.5. A Pascal-három szög.................................................................... 58
3.6. Azonosságok a Pascal-három szögben........................................ 59
3.7. A Pascal-háromszög m a d á rtá v la tb ó l........................................ 63
3.8. Finom kis részletek....................................................................... 66

4. Fibonacci-szám ok 74
4.1. Fibonacci f e l a d a t a ....................................................................... 74
4.2. Azonosságok s o k a s á g a ................................................................. 76
4.3. A Fibonacci-számok k é p le te ........................................................ 80
6 TARTALOMJEGYZÉK

5. Kombinatorikus valószínűség 85
5.1. Események és valószínűségek ....................................................... 85
5.2. Kísérletek független megismétlése................................................. 87
5.3. A nagy számok tö rv én y e.............................................................. 88
5.4. A „kis számok” és a „nagyon nagy számok” t é t e l e ................... 91

6. Egész számok, osztók és prímek 94


6.1. O szthatóság................................................................................... 94
6.2. A prímszámok és tö rté n etü k ........................................................ 95
6.3. Prímtényezős felbontás................................................................. 97
6.4. A prímszámok halmaza .................................................................100
6.5. A „kis” F e rm a t-té te l....................................................................... 104
6.6. Az euklideszi alg o ritm u s................................................................. 106
6.7. K ongruenciák................................................................................... 112
6.8. Különös számok ............................................................................. 114
6.9. Számelmélet és kom binatorika........................................................122
6.10. P rím tesz te lé s................................................................................... 125

7. Gráfok 133
7.1. Páros és páratlan fokszámú p o n to k .............................................. 133
7.2. Utak, körök, összefüggőség..............................................................138
7.3. Euler-séták és Hamilton-körök........................................................142

8. Fák 149
8.1. Alternatív definíciók....................................................................... 149
8.2. Hogyan növesszünk f á t ? .................................................................151
8.3. Hogyan számoljuk össze a f á k a t ? ..................................................154
8.4. Hogyan tárolhatunk fákat?..............................................................155
8.5. A címkézetlen fák sz á m a .................................................................161

9. O ptim ális m egoldások 165


9.1. A legjobb f a ...................................................................................... 165
9.2. Az utazó ügynök p r o b lé m á ja ........................................ 169

10. Párosítások 173


10.1. Egy tánctermi p ro b lé m a .................................................................173
10.2. Még egy párosítás .......................................................................... 175
10.3. Az a la p té te l...................................................................................... 177
10.4. Hogyan adható meg teljes p á ro s ítá s ? ........................................... 179

11. Kombinatorika és geom etria 187


11.1. Átlók m etszéspontjai....................................................................... 187
11.2. Tartományok összeszám olása........................................................189
11.3. Konvex sokszögek............................................................................. 192
TARTALOMJEGYZÉK 7

12. Az Euler-formula 196


12.1. Egy megtámadott bolygó ..............................................................196
12.2. Síkba rajzolható gráfok .................................................................199
12.3. Az Euler-formula poliéderekre....................................................... 200

13. Térképek és gráfok színezése 203


13.1. Tartományok színezése két színnel .............................................. 203
13.2. Gráf színezése két színnel ..............................................................205
13.3. Gráfok színezése több s z ín n e l....................................................... 208
13.4. Térképszínezés és a négyszíntétel................................................. 211

14. V éges geom etriák, kódok, latin négyzetek és más


egzotikum ok 218
14.1. Különös kis világok.......................................................................... 218
14.2. Véges affin és projektív s í k o k ....................................................... 224
14.3. Blokkrendszerek ............................................................................. 228
14.4. Steiner-rendszerek.......................................................................... 232
14.5. Latin négyzetek................................................................................ 236
14.6. K ó d o k ................................................................................................240

15. A kom plexitáselm élet és a kriptográfia elem ei 246


15.1. Arthur király u d v a rá b a n .................................................................246
15.2. Klasszikus kriptográfia....................................................................249
15.3. Az utolsó sakklépés.......................................................................... 251
15.4. Hogyan ellenőrizhető egy ismeretlen jelszó? ...............................253
15.5. Hogyan találjunk nagy p rím ek et?................................................. 254
15.6. Nyilvános kulcsú titkosírás..............................................................255

16. M egoldások 259

N év- és tárgym utató 293


Előszó

A legtöbb egyetemi hallgató a felsőbb matematikából először az analízissel


ismerkedik meg, és gyakran előfordul, hogy más területtel nem is találkozik.
El kell ismernünk: ha a felsőbb matematikából egyetlen területet kellene kie­
melnünk, akkor mi is az analízist mondanánk, amelynek tizenhetedik századi
kialakulása a modern matematika kezdetét jelentette, és amely kulcsszerepet
játszott a matematika tudományos és technikai alkalmazásában.
Az analízis azonban meglehetősen bonyolult tárgy. Még legalapvetőbb fo­
galmainak - például a folytonosság vagy a derivált fogalmának - a beveze­
tése is komoly munkát követel (ami nem csoda, elvégre két évszázadba telt,
míg maguk a matematikusok eljutottak a precíz meghatározásokhoz). Ah­
hoz, hogy az analízis valódi jelentőségét átláthassuk - például részletesen
kifejtsük és megértsük valamelyik klasszikus alkalmazását - több év kemény
tanulás szükségeltetik.
Aki matematikusnak, számítógéptudósnak vagy mérnöknek készül, kény­
telen végigjárni ezt az utat is. Ha azonban a célunk az, hogy magáról a mate­
matikáról, a matematikai módszerek alkalmazhatóságáról, a matematikusok
által tanulmányozott problémákról akarunk általános áttekintést adni, akkor
előfordulhat, hogy céljainkra a matematika valamely másik ága alkalmasabb
lehet.
A matematika alkalmazásának sikertörténetei nem merülnek ki az analí­
zissel. Az egyik legújabb kutatási terület a titkosírás, amely a számelméle­
ten, vagyis a pozitív egész számok (1, 2, 3. . . ) elméletén alapul, és amelyet
számítógépes biztonsági rendszerekben vagy az elektronikus banki szolgál­
tatásokban széles körben alkalmaznak. Az alkalmazott matematika további
fontos területei a lineáris programozás, a kódelmélet és a számításelmélet.
Azokat a matematikai elméleteket, amelyek ezen alkalmazások alapjául szol­
gálnak, összefoglaló néven diszkrét matematikának nevezzük. (A „diszkrét”
szót a „többitől elválasztott” értelemben használjuk, az ellentéte tehát a ,foly­
tonos”.)
A könyv célja nem az, hogy teljes mélységében bemutassa a diszkrét ma­
tematika minden területét (egy ilyen célkitűzés eleve meglehetősen határo­
zatlan és teljesíthetetlen lenne, amint ez a fenti leírás alapján nyilvánvaló).
ELŐSZÓ 9

Ehelyett néhány eredményt és módszert mutatunk be, többségükben a kom­


binatorika és a gráfelmélet területéről, de belekóstolunk a számelméletbe, a
valószínűségelméletbe és a kombinatorikus geometriába is.
Fontos, hogy belássuk: bizonyítások nélkül a matematika nem matema­
tika. Ha csupán kijelentenénk, hogy bizonyos tények fennállnak anélkül, hogy
- legalább - néhány szót ejtenénk arról, hogy miért is állnak fenn, nagyon
messzire kerülnénk a matematika szellemétől, és szinte lehetetlen feladat
lenne megmutatni, tudományunk miként és miért is működik. Ahol tehát le­
hetséges, megadjuk a tételek bizonyítását is. Akadnak persze esetek, amikor
ez nem lehetséges: sok olyan elemi tény van, amelyet igencsak nehéz belátni,
vagy a bizonyításához komoly előképzettség szükségeltetik. Ha ilyen eredmé­
nyek kerülnek szóba, mindig jelezzük, hogy a bizonyítás túlságosan technikai
és kívül esik a könyv keretein.
A matematika másik fontos aspektusa a problémamegoldás. Senki nem
lesz matematikus anélkül, hogy „be ne piszkítaná a kezét”, és ne próbálná
feladatok megoldásában is alkalmazni a tanult fogalmakat. Vannak, akiket
ez elriaszt, pedig a legtöbb ember nap mint nap foglalkozik ilyesmivel: aki
sakkozik vagy megfejt egy fejtörőt, diszkrét matematikai problémákon töri
a fejét. Az olvasónak a legmelegebben ajánljuk, hogy próbáljon meg vála­
szolni a szövegben feltett kérdésekre és oldja meg a fejezetek végén található
feladatokat. Tekintse ezeket afféle fejtörőknek, és ha valamelyik feladat meg­
oldásának alapötletét később egy másik probléma megoldásában éri tetten,
biztos lehet abban, hogy a matematika fejlődésének lényegéhez került közel.
Reményeink szerint sikerül megmutatnunk, hogy a matematika olyan épít­
mény, amely korábbi - nem kis részben az ókori görög matematikában is
ismert - eredményeken alapul, hogy a matematika élő tudomány, újabb és
újabb gondolatokkal és megoldásra váró problémákkal, és hogy a matematika
egyfajta művészet, amelyben a gondolatok szépsége legalább olyan fontos,
mint a bonyolultságuk vagy az alkalmazhatóságuk.
1. fejezet

Számoljuk össze!

1.1. Andrea születésnapja


Andrea hat barátját hívta meg a születésnapjára: Bélát, Csabát, Dórát, Er­
zsit, Ferit és Gábort. Mikor a vendégek megérkeztek, mindenki mindenkivel
kezet fogott. A társaság egyik tagja rögvest fel is tette az ilyenkor természetes
kérdést:
- Hány kézfogás volt összesen?
- Én hatszor fogtam kezet - mondta Béla -, ahogy mindenki.
- Ezek szerint - érvelt Csaba -, összesen 42 kézfogás volt, elvégre heten
vagyunk és 7 ■6 = 42.
- Nekem ez kicsit soknak tűnik - ellenkezett Dóra. - Ráadásul ugyanezt
a gondolatmenet követve arra jutnánk, hogy két ember találkozásakor két
kézfogás van, ez pedig nyilvánvalóan rossz eredmény.
- Éppen erről van szó. Csaba logikája szerint minden kézfogást kétszer
számolunk, a helyes megoldás tehát 42 fele, azaz 21 - zárta le a vitát Erzsi.

Amikor helyet akartak foglalni az asztal körül, nem tudtak dűlőre jutni ab­
ban, hogy ki hova üljön. Andrea azt javasolta, hogy félóránként váltsanak
ülésrendet, egészen addig, amíg minden lehetőséget ki nem használnak.
- Rendben, de neked az asztalfőn kell maradnod - tette hozzá Gábor. -
Elvégre a te születésnapodat ünnepeljük.
Meddig tart a születésnapi buli, ha az egybegyűltek minden lehetséges
ülésrendet kipróbálnak (Andrea helyét nem változtatva)?
Képzeljük el, hogy egyenként akarjuk leültetni a társaság tagjait. Kezdjük
az Andrea jobb oldalán lévő székkel. Ezen a széken a vendégek közül akárki
helyet foglalhat, vagyis 6 választásunk van. Ha viszont - mondjuk - Bélát
már ideültettük, akkor a következő székre már csak az 5 megmaradt vendég
közül választhatunk, és persze ugyanez a helyzet, ha az első székre nem Bélát,
hanem Csabát, D órát... ültettük. Az első szék esetében rendelkezésünkre álló
1.1. ANDREA SZÜLETÉSNAPJA 11

hat lehetőség mindegyikéhez további öt járul, amikor a második székre kerül


a sor, két szék esetén tehát 5 + 5 + 5 + 5 + 5 + 5 = 6-5 = 30 lehetséges ülésrend
van. Ugyanígy, amennyiben az első két széket kiosztottuk, a harmadikra 4
vendég közül választhatunk, az első három szék esetében az ülésrendek száma
így 6 ■5 • 4. Eszerint tehát a hat széken 6 • 5 • 4 ■3 • 2 ■1 = 720-féleképpen
foglalhatnak helyet a vendégek.
Ha tehát félóránként ülésrendet váltanak, 360 óráig kell mulatniuk, hogy
minden lehetőséget kihasználjanak, vagyis nem kevesebb, mint 15 napig. Ez
aztán a hetedhét országra szóló buli!

1.1.1. Hány ülésrend van, ha Andrea akármelyik székre ülhet?

A torta után a társaság táncra perdült, konzervatív európai szokás szerint a


párokat egy fiú és egy lány alkotta. Hányféleképpen állhatták fel a párok?
Ez könnyű: a három lány mindegyike 4 fiú közül választhat, a lehetőségek
száma tehát 3 -4 = 12.

Barátaink tíz nap (és tíz éjszaka) mulatozás után sem akarták, hogy kifullad­
jon a buli, ennek érdekében új témákat kerestek. Ferinek tám adt egy remek
ötlete:
- Dobjuk össze a pénzünket, és nyerjük meg a lottót! Ennél könnyebb
dolog nincs is: kiszámítjuk, hány szelvény szükséges a biztos nyeréshez, és
pontosan annyit töltünk ki. Hány szelvényt is jelent ez?
(A szóban forgó szerencsejátékban 90-ből 5 számot kell eltalálni.)
- Ez olyan, mint az ülésrend - vélekedett Gábor. - Gondoljuk csak meg:
Andrea bejelöl egy számot, aztán továbbadja a szelvényt Bélának, aki szintén
beikszel egyet, majd Csabának adja a szelvényt, és így tovább. Andrea 90,
Béla már csak 89, Csaba pedig 88 szám közül választhat, az első két számot
így 90 • 89-féleképpen választhatjuk ki, ugyanezt a gondolatmenetet követve
tehát azt kapjuk, hogy 90-ből 5 számot választva 90 •89 ■88 •87 ■86 különböző
lehetőségünk van.
Andrea nem értett vele egyet.
- Szerintem inkább a kézfogások problémájához hasonlít - mondta. - A te
gondolatmenetedet követve bizonyos szelvényeket többször is megkaphatunk.
Lennének például olyanok, amelyeken én jelöltem be a 7-est, Béla pedig a
23-ast, és olyanok is, amelyeken a 23 az én számom, a 7-es pedig Béláé.
A gondolatmenetet Csaba folytatta:
- Hányféleképpen kaphattuk meg - például - azt a szelvényt, amelyiken a
7, 23, 31, 41, 55 számokat jelöltük be? Andrea jelölte be az egyiket, azután -
bármelyiket jelölte is be Andrea - Béla a maradék négy közül akármelyiket
választhatta. Ez pedig már valóban olyan, mint az ülésrend, a lehetőségek
száma tehát 5 • 4 • 3 • 2 • 1.
- Ezek szerint tehát - fejezte be a gondolatmenetet Dóra -, a Gábor
számítása alapján kapott 90 • 89 •88 •87 •86 szelvény között minden számötös
12 1. SZÁMOLJUK ÖSSZE!

5 • 4 • 3 ■2 • 1-szer fordul elő, a különböző szelvények száma tehát


90 • 89 • 88 • 87 • 86
5 • 4 ■3 ■2 • 1
Mindössze ennyi szelvényt kell tehát csak vásárolnunk.
A társaság egyik tagja gyorsan beütötte a számológépébe: az eredmény
43 949 268, ennyi szelvény vásárlásához pedig, mint azt gyorsan belátták, nem
volt elég pénzük (mint említettük, a történet nem Amerikában játszódik).
Ezen felül a szelvények kitöltése túlságosan sok időt vett volna igénybe, ami
tönkretette volna a mulatságot.

így aztán inkább egy jó kártyaparti mellett maradtak. Andrea, Béla, Csaba
és Dénes bridzsezni kezdtek. Amikor a leosztás után Csaba a kártyáira pil­
lantott, furcsa érzése támadt.
- Úgy vélem, ezt a leosztást egyszer már láttam.
- Ez meglehetősen valószínűtlen - mondta erre Dóra.
Mennyire valószínűtlen? A kérdés tehát a következő: hány különböző le­
osztás létezik a bridzsben? (A pakliban 52 kártya van, és minden játékos
13-at kap.) Az Olvasó minden bizonnyal rögvest felismerte, hogy ez lényegét
tekintve megegyezik a lottószelvények problémájával. Ha Csaba sorban húz
egy-egy lapot, akkor az elsőt 52 lap közül, a másodikat 51 közül választja,
így az első két lapot 52-51-féleképpen választhatja ki. Ha tehát 13-at választ,
akkor ez összesen 52 • 51 • 50 ■... • 40 lehetőség.
így azonban minden leosztást igen sokszor vettünk figyelembe. Ha például
Erzsi belepillantana Csaba már elrendezett lapjaiba (mindegy, miért tenne
ilyet), és megpróbálná kitalálni, milyen sorrendben húzhatta ki a lapokat, ak­
kor a következőképpen okoskodhatna. „A 13 lap közül akármelyiket húzhatta
elsőként, a második lapra már csak 12, a harmadikra pedig 11 lehetősége
volt, és így tovább. Megint az ülésrendnél tartunk: a kártyáit 13 • 12 •... • 2 • 1
különböző sorrendben húzhatta ki.”
Eszerint tehát a különböző bridzsleosztások száma
52•51-50-•-40
635 013 559 600.
13 ■12 • ••2 • 1
Annak valószínűsége tehát, hogy Csaba már találkozott a kezében lévő la­
pokkal, 1 a 635 013 559 600-hoz, ez pedig valóban meglehetősen kicsi.

A hat vendég végül sakkozással ütötte el az időt. Andrea, aki csak figyelni
akarta a játszmákat, három sakktáblán is felállította a bábukat.
- Hány párt alkothattok ti hatan? - tette fel közben a kérdést. - Ez nyilván
ugyanaz a feladat, mint az ülésrend, elvégre mindegy, hogy a székek egyetlen
nagy vagy három kis asztal körül helyezkednek el. A válasz tehát szintén 720.
Bélának kétségei támadtak:
- Szerintem nem kellene különböző párosításnak számítani, ha az ugyan­
azon tábla mellett ülő játékosok helyet cserélnek, ráadásul az is mindegy,
hogy melyik páros melyik táblánál ül.
1.2. HALMAZOK 13

- Valóban - tette hozzá Csaba -, először tisztáznunk kell, pontosan mi is


a kérdés. Ha azt is figyelembe vesszük, hogy ki vezeti a világos, és ki a sötét
bábukat, akkor a helycsere új párosítást jelent. Abban viszont mindenképpen
igaza van Bélának, hogy teljesen mindegy, melyik pár melyik tábla mellett
foglal helyet.
- Már hogy lenne mindegy - tiltakozott Dóra. - Te ülsz az első széken,
amelyik a legközelebb van a mogyoróstálhoz, én pedig a hatodikon, amelyik
a legtávolabb van tőle.
- Szerintem fogadjuk el azt, amit Béla mond - javasolta Erzsi. - És így
nem is nehéz megoldani a feladatot. Ugyanúgy kell gondolkodnunk, mint a
kézfogások esetében. A 720 párosításban, amit Andrea kapott, mindegyiket
többször is tekintetbe vettük. A három sakktáblát 6 különböző sorrendben
tehetjük fel úgy, hogy a párok nem változnak.
- Ezen felül mindegyik páros vagy helyet cserél, vagy nem - folytatta Feri
a gondolatmenetet. - Eszerint 2 • 2 • 2 = 8 sorrend ugyanazt a párosítást
adja. Végül is 6 •8 = 48 esetben kapjuk ugyanazt a párosítást, a válasz tehát
720/48 = 15.
- Azt hiszem, ezt egyszerűbben is megkaphatjuk - mondta Andrea rövid
gondolkodás után. - Béla a legfiatalabb, hadd válasszon először ő partnert,
ekkor 5 lehetőség közül választhat. A megmaradt négy közül újra a legfiata­
labb választ, méghozzá a másik 3 közül. Ezzel ki is alakult a három pár, a
lehetőségek száma pedig nyilván 5 -3 = 15.
- Kellemes, de legalábbis megnyugtató fejlemény, hogy két különböző gon­
dolatmenettel is ugyanazt az eredményt kaptuk - mondta Béla. Mivel ez igen
jó végszó, ezen a ponton el is búcsúzunk a társaságtól.

1.1.2. Hány párost alkothatunk a Csaba-féle értelemben (amikor az is számít,


hogy melyik bábukat ki vezeti, de a sakktáblák között nem teszünk különbséget)?
És a Dóra-féle értelemben?

1.1.3. Hányféle párosítás létezik egy 10 tagú társaságban (az összes szóban forgó
értelemben)?

1.2. Halmazok
Gyakran akarunk olyan kijelentéseket formalizálni, amilyen például a kö­
vetkező: „a bridzs-leosztások számának meghatározása lényegében ugyanaz,
mint a lehetséges lottószelvények számának meghatározása”. A matematiká­
ban az efféle általánosítások legkönnyebben a halmazok segítségével fogal­
mazhatók meg. Halmaznak nevezzük tetszőleges objektumok összességeit;
a szóban forgó objektumokat a halmaz elemeinek nevezzük. Egy leosztás
például olyan halmaz, amelynek elemei kártyalapok. Az előző alfejezet szüle­
tésnapi partijának résztvevői szintén egy halmazt alkotnak, amelynek elemei
14 1. SZÁMOLJUK ÖSSZE!

Andrea, Béla, Csaba, Dóra, Erzsi, Feri és Gábor (ezt a halmazt a továbbiak­
ban P jelöli). Egy lottószelvényt tekinthetünk olyan halmaznak, amelynek
elemei a bejelölt számok.
A matematikában több számhalmaz is különleges jelentőséggel bír: a va­
lós számok ÍR jelű, a racionális számok Q jelű, az egész számok Z jelű, a
nemnegatív egész számok Z+ jelű és a pozitív egész számok N jelű halmaza.
Szintén sokszor előfordul a nem különösebben érdekes üres halmaz is, amely­
nek egyetlen eleme sincs, és amelynek jele 0.
Azt, hogy b az A halmaz eleme, így jelöljük: b € A. Az A halmaz elemeinek
számát |A\ jelöli, ezt az A halmaz számosságának is nevezzük. Eszerint tehát
\P\ = 7, |0| = 0 és |Z| = oo (végtelen).1
Egy halmazt megadhatunk úgy is, hogy elemeit - kapcsos zárójelek között
- felsoroljuk; például

P = {Andrea, Béla, Csaba, Dóra, Erzsi, Feri, Gábor}

az Andrea születésnapjára összegyűlt társaság,

{12,23,27,33,67}

pedig a nagybátyám lottószelvényén bejelölt számok halmaza. Előfordul,


hogy a listát leírással helyettesítjük, mondjuk így:

{Andrea és vendégei}.

Gyakran úgy adunk meg halmazokat, hogy kijelöljük egy nagyobb „univer­
zum” - például a valós számok halmaza - bizonyos tulajdonságú elemeit.
Ilyenkor is kapcsos zárójeleket használunk: jelezzük, hogy a halmazunk ele­
mei melyik „nagyobb” halmazból származnak, majd egy kettőspont után
megadjuk az őket megkülönböztető tulajdonságot. Eszerint

{x £ Z : x > 0}

a nemnegatív egész számok (az imént Z+-szal jelölt) halmaza. Egy másik
példa:
{x £ P : x leány} = {Andrea, Dóra, Erzsi}
(jelöljük ezt a halmazt L-lel). Eláruljuk még azt is, hogy

{x £ P : x elmúlt 21 éves} = {Andrea, Csaba, Feri}

(erre a halmazra pedig vezessük be a D jelölést).


Az A halmazt a B halmaz részhalmazának nevezzük, ha A minden eleme
egyúttal B-nek is eleme. Másképpen fogalmazva az A halmazt a B halmaz

1A m a te m a tik á b an m egkülönböztetjük a végtelen különböző „fokozatait”, a Z és az R


halm az szám ossága például különböző. Az efféle kérdésekkel a halm azelm élet foglalkozik,
szám u n k ra - e h ely ü tt legalábbis - nem b írn ak különösebb jelentőséggel.
1.2. HALMAZOK 15

bizonyos elemei alkotják. Akkor is azt mondjuk, hogy A részhalmaza 5-nek,


ha A elemei ugyanazok, mint 5 elemei (vagyis amikor A = B), valamint
amikor A-nak egyetlen eleme sincs (vagyis amikor A = 0). Az üres halmaz
tehát minden halmaznak részhalmaza. Azt, hogy az A halmaz a B halmaz
részhalmaza, A C B jelöli. Az imént definiált „társasági” halmazok között
például fennáll, hogy L C P é s D C P . A számhalmazokból pedig egy hosszú
láncot alkothatunk:
0CNCZ+CZCQCK.

Azt, hogy A részhalmaza 5-nek, de nem egyenlő 5-vel, A C 5 jelöli. Az


iménti láncban például C helyett mindenütt írhatnánk a C jelet is.
Ha adott két halmaz, akkor segítségükkel további halmazokat definiálha­
tunk. Két halmaz metszete például az a halmaz, amelynek minden olyan
objektum eleme, amely mindkét halmaznak eleme. Az A és 5 halmazok
metszetét A n 5 jelöli. Fennáll például, hogy L(~)D = {Andrea}. Ha két hal­
maz metszete üres (vagyis egyetlen közös elemük sincs), akkor a halmazokat
diszjunktnak nevezzük.
Két halmaz uniója az a halmaz, amelynek elemei azok az objektumok,
amelyek a két halmaz közül legalább az egyiknek elemei. Az A és 5 halmaz
unióját A U 5 jelöli; például L ö D = {Andrea, Csaba, Dóra, Erzsi, Feri}.
Az A és 5 halmazok különbsége az A halmaz azon elemeinek halmaza,
amelyek a 5 halmaznak nem elemei. Az A és a 5 halmaz különbségét A \ 5
jelöli; példának okáért L \ D = {Dóra, Erzsi}.
Az A és 5 halmazok szimmetrikus differenciája azoknak az elemeknek a
halmaza, amelyek A és 5 közül pontosan egynek elemei. Az A és 5 halmazok
szimmetrikus különbségét A A 5 jelöli; L A D = {Csaba, Dóra, Erzsi, Feri}.
A metszet, az unió és a - kétféle - differencia az összeadáshoz, a szorzás­
hoz és a kivonáshoz hasonlítható. Míg azonban az utóbbiak számokon, az
előbbiek halmazokon végzett műveletek. A számokon végzett műveletekhez
hasonlóan a halmazműveletekre is teljesül néhány hasznos szabály (azonos­
ság). így például tetszőleges A, 5 és C halmazok esetén

An(5UC) = (An5)U(AflC). (1 .1)


Az azonosság igazolásához tegyük fel, hogy x eleme a bal oldali halmaznak.
Ekkor x G A é s x G B ö C egyaránt fennáll; ezek közül az utóbbi pontosan
akkor teljesül, ha x £ B vagy ha x G C. Ha x G 5 , akkor x £ A fi 5 , ha
pedig i é C, akkor x £ A fi C. Ezek szerint tehát l é i n ő é s i e A n C
közül legalább az egyik teljesül, ez pedig - az unió definíciója szerint - éppen
annyit tesz, hogy x £ (A fi 5 ) U (A n C).
Megfordítva, ha x eleme a jobb oldali halmaznak, akkor ez az unió defi­
níciója szerint azt jelenti, hogy x £ A fi 5 vagy x £ A fi C. Az első esetben
x £ A és x £ 5 , a másodikban x £ A és x £ C egyaránt teljesül. Mindkét
esetben x £ A, továbbá x £ 5 és x £ C közül legalább az egyik fennáll,
amiből x e B U C következik. Ekkor viszont x £ A fi (5 U C) is igaz.
16 1. SZÁMOLJUK ÖSSZE!

Az efféle érvelések kissé unalmasak, bár az egyszerű logikán kívül semmi


másra nem hivatkozunk bennük. Buktatót legföljebb az rejt, hogy eseten­
ként túlságosan hosszadalmasak, és így könnyebb bennük hibázni. Szeren­
csére ezeket az összefüggéseket csinos kis ábrákkal - a halmazok szerepében
egymást metsző körökkel - illusztrálhatjuk; 1. például az 1.1. ábrát.

1.1. ábra. Venn-diagramok az (1.1) azonosság két oldalán szereplő halma­


zokkal.

Az A, B és C halmazok közös elemeit a halmazokat reprezentáló három


kör közös részébe képzeljük; az A halmaz azon elemeit, amelyek B -nek igen,
C-nek viszont nem elemei, az A és 5 halmazoknak megfelelő körök közös
részének a C körén kívül eső részébe delegáljuk stb. Az így kapott ábrát a
három halmaz Venn-diagramjának nevezzük.
A Venn-diagram melyik tartományában helyezkednek el az (1.1) egyenlet
bal oldalán szereplő halmaz elemei? Vegyük először a B és a C halmaz unió­
ját, amelyet az 1.1 ábra (a) részén a szürke színű tartomány, ennek A-val vett
metszete a sötétszürke rész. Az egyenlet jobb oldalán szereplő halmaz azono­
sításához előbb a z A n B é s a z A f l C halmazra van szükségünk (ezeket az 1.1
ábra (b) részén rendre függőleges, illetve vízszintes vonalkázással jelöltük),
majd ennek a két halmaznak a metszetét kell képeznünk. Az ábra alapján
nyilvánvaló, hogy a két esetben ugyanazt a halmazt kaptuk. Mindezek alap­
ján nyilvánvaló, hogy a Venn-diagramok segítségével a halmazműveletekre
vonatkozó azonosságok könnyen beláthatok.
Az (1.1) azonosságot könnyű megjegyezni: ha az uniót - természetes mó­
don - egyfajta összeadásnak, a metszetet pedig egyfajta szorzásnak tekintjük
(ez a gondolat egyelőre nem túlságosan természetes, de a 5 fejezet után ta­
lán már az lesz), akkor az (1.1) azonosság a szorzás összeadásra vonatkozó
disztributivitását kimondó

a(b + c) = a b Jrac

szabály analogonja lesz. Kiterjeszthető-e ez az analógia? Idézzük emlékeze­


tünkbe a - számokon értelmezett - összeadás és a szorzás más tulajdonságait
1.2. HALMAZOK 17

is. Mindkét művelet kommutatív és asszociatív:

a + b = b + a, ab = ba,
(a + b) + c = a + (b + c), (ab)c = a{bc).

Ezek a tulajdonságok az unióra és a metszetre is igazak, fennáll tehát, hogy

A u B = B U A, A C \B = B C A , (1.2)

és hogy

(AUB)UC = Au (BöC), {AnB)nC = An{BnC). (1.3)

Az azonosságok igazolását az Olvasóra bízzuk.


Figyelem! Mielőtt az analógiát túlságosan közelinek gondolnánk, jegyez­
zük meg, hogy a halmazműveletekre vonatkozóan fennáll egy másik disztri-
butív szabály is:

A ö (B n C ) = (AUB)n(AuC). (1.4)

Ezt az (1.1) azonosságból kaphatjuk meg, amennyiben a U és a fi műveleteket


felcseréjük. (Ez az azonosság ugyanúgy igazolható, mint (1.1); 1. az 1.2.16.
feladatot.) Az 1.4 szabálynak a számok körében nincs megfelelője, az

a + bc= (a + b)(a + c)

egyenlőség általában nem igaz.


Az unióra, a metszetre és a - kétfajta - különbségre vonatkozóan számos
további azonosságot beláthatunk. Ezek hasznos, de nem túlságosan mély
összefüggések, egyszerű logikai törvények egyszerű következményei. Pontosan
emiatt nem is soroljuk fel őket (néhányuk bizonyítását az alábbi feladatokban
tűzzük ki).

1.2.1. Nevezzünk meg olyan halmazokat, amelyeknek elemei (a) épületek, (b) em­
berek, (c) diákok, (d) fák, (e) számok, (f) pontok.

1.2.2. Mik az elemei a következő halmazoknak: (a) egy hadsereg, (b) az emberiség,
(c) egy könyvtár, (d) az állatvilág?

1.2.3. Adjunk meg olyan halmazokat, amelyeknek számossága (a) 52, (b) 13,
(c) 32, (d) 100, (e) 90, (f) 2 000 000.

1.2.4. Melyek a (kissé különös) (Andrea, {1}} halmaz elemei?

1.2.5. Igaz-e, hogy az „eleme” reláció a „részhalmaz” reláció speciális esete?

1.2.6. Soroljuk fel a (0,1,3} halmaz részhalmazait. Hány részhalmazt találtunk?


18 1. SZÁMOLJUK ÖSSZE!

1.2.7. Adjunk meg legalább három olyan halmazt, amely részhalmazként tartal­
mazza az {Andrea, Dóra, Erzsi} halmazt.

1.2.8. Soroljuk fel az {a, b, c,d, ej halmaz összes olyan részhalmazát, amelynek a
eleme, b viszont nem.

1.2.9. Adjunk meg egy halmazt, amelynek mind {1,3,4}, mind {0,3,5} részhal­
maza. Keressük meg a minimális elemszámú ilyen halmazt is.

1.2.10. (a) Melyik halmazt neveznénk az {a,b,c}, az {a, b, d} és a {b, c, d, ej


halmaz uniójának?
(b) Határozzuk meg elsőször az első két halmaz unióját, majd képezzük az így
kapott halmaznak a harmadikkal való unióját. Eztuán képezzük a máso­
dik és a harmadik halmaz unióját, és ennek vegyük az elsővel való unióját.
Fogalmazzuk meg a példából levonható tanulságot.
(c) Hogyan értelmezzük háromnál több halmaz unióját?

1.2.11. Milyen kapcsolat van az unió definíciója és az 1.2.9 feladat között?

1.2.12. Kaphatunk-e 4, 6, 9, 10, 14, 20 elemű halmazt egy 5 és egy 9 elemű halmaz
unióját képezve?

1.2.13. Van egy m és n elemű halmazunk. Mit mondhatunk a két halmaz unió­
jának számosságáról?

1.2.14. Adjuk meg


(a) a {0, 1, 3} és az {1, 2, 3} halmaz;
(b) egy osztály fiú-, illetve lánytanulóinak halmaza;
(c) a prímszámok és a páros számok halmazának
metszetét.

1.2.15. Mit mondhatunk egy m és n elemű halmaz metszetének számosságáról?

1.2.16. Bizonyítsuk be az (1.2), az (1.3) és az (1.4) azonosságokat.

1.2.17. Igazoljuk, hogy \A U B\ + \A n B\ = |A| + \B\.

1.2.18. (a) Adjuk meg a nemnegatív egész számok Z+ és a páros egész számok
£ = {..., —4, —2, 0, 2,4,... } halmazának szimmetrikus differenciáját.
(b) Legyen C = A AB. Mit kapunk, ha az A és a C halmaz szimmetrikus diffe­
renciáját képezzük?
1.3. A RÉSZHALMAZOK SZÁMA 19

1.3. A részhalmazok száma


A részhalmaz fogalmával kapcsolatban vetjük fel az első általános, kombina­
torikai problémát: hány részhalmaza van egy n elemű halmaznak?
Vizsgáljuk először a néhány elemű halmazokat. Nincs különösebb jelentő­
sége, hogy mik a halmazaink elemei, így egyszerűen az a, 6, c ... betűkkel
jelöljük őket. Az üres halmaznak egyetlen részhalmaza van: önmaga (vagyis
az üres halmaz). Az {a} egyelemű halmaznak két részhalmaza van: maga az
{a}, valamint az 0 üres halmaz. Egy kételemű halmaznak - mondjuk az {a, b}
halmaznak - négy részhalmaza van: 0, {a}, {6} és {a, b}. Kissé munkásabb
az {a, 6, c} háromelemű halmaz részhalmazainak felsorolása:

0, W , {&}> {c}, {a, b}, {b, c}, (a, c}, {a, b, c}. (1.5)

Eredményeinket a következő táblázatban foglalhatjuk össze:

Elemek száma 0 1 2 3
Részhalmazok száma 1 2 4 8

Azonnal szembeötlik, hogy a részhalmazok száma mind a négy esetben 2-


hatvány: egy n elemű halmaz részhalmazainak száma 2n (legalábbis a vizs­
gált esetekben).
Nem nehéz belátni, hogy megfigyelésünk általános érvényű. A bizonyí­
táshoz legyenek az n elemű A halmaz elemei: a\, a2, ■. ., an . Az A halmaz
tetszőleges részhalmazára igaz, hogy annak ai vagy eleme, vagy nem eleme,
az öi elem beválogatásakor tehát kétféleképpen dönthetünk. Bármelyik lehe­
tőséget választjuk is, az a 2 esetén újra döntenünk kell: bevesszük a részhal­
mazba, vagy nem vesszük be. Az első két elemet illető választások lehetséges
kimeneteleinek száma ennélfogva 2-2 = 4. Akárhogy döntöttünk is ai és a2
sorsáról, 03 esetében újra két lehetőségünk van. Az első három elem esetében
tehát a lehetséges döntések száma 4 -2 = 8.
Az eljárás folytatható: akárhogyan döntöttünk is az A halmaz első k ele­
méről, a következő elemet figyelembe véve a lehetőségek száma megkétsze­
reződik. Mire tehát az n-edik elemhez jutunk, 2" különböző lehetőséggel
számolhatunk.
Beláttuk tehát a következő tételt:

1.3.1. T étel. Egy n elemű halmaz részhalmazainak száma 2".

A bizonyítás gondolatmenetét a 1.2. ábrán az {a,b,c} halmazzal szemlél­


tetjük. Tegyük fel, hogy meg akarjuk adni e halmaz egy S részhalmazát. Az
ábrát a következőképpen értelmezhetjük. A legfelső körrel (ezt csúcsnak is
nevezzük) kezdjük, ahol azonnal egy kérdéssel szembesülünk: eleme-e a az
S halmaznak? A két válaszlehetőségnek ( i g e n , iletve n e m ) megfelelően két
nyíl (avagy él) mentén haladhatunk tovább. Itt újabb kérdésre kell válaszol­
nunk: eleme-e b az S halmaznak? A két válasznak megfelelően újra két úton
20 1. SZÁMOLJUK ÖSSZE!

1.2. ábra. Döntési fa az {a, b, c} halmaz egy részhalmazának kiválasztásához.

mehetünk tovább, hogy feltehessük magunknak az utolsó kérdést: eleme-e a


c az 5 halmaznak? A válaszok innen már nem egy újabb kérdéshez, hanem
a szóban forgó „útnak” megfelelő S részhalmazhoz vezetnek.
A részhalmazok száma tehát megegyezik az ábra tetejéről az aljáig vezető
utak számával. Mivel a legalsó szint bármelyik eleméhez pontosan egy út
vezet, az utak száma megegyezik a legalsó szint elemeinek számával; ez ese­
tünkben 23. (Ha egy n elemű halmazt vizsgálnánk, akkor a válasz 2" lenne.)

M egjegyzés. Az ehhez hasonló ábrákat fának nevezzük. (Ez persze nem a


pontos definíció, arra egy későbbi fejezetben kerítünk sort.) Ha különösnek
találjuk, hogy egy fa felülről lefelé nő, kérdezzük meg a számítógép-tudomány
szakembereit, ezt a konvenciót ugyanis ők vezették be. (A fáma szerint ezek
a tudósok sohasem hagyják el a szobájukat, így nem is láttak még élő fát.)

Az 1.3.1. Tételt nemcsak a fenti gondolatmenettel bizonyíthatjuk. Ahelyett,


hogy egy adott részhalmaz kiválasztásával foglalkoznánk, most azt vizsgál­
juk, miként tudjuk megszámlálni a részhalmazokat, azaz hogyan tudjuk a
részhalmazoknak a 0, 1, 2... számokat megfeleltetni. Ha sikerül sorba ren­
dezni a részhalmazokat, akkor értelmes például az a kérdés is, hogy melyik
a vizsgált halmaz 23-as számú részhalmaza.
(A listánk elején szereplő halmaz valóban a 0, és nem az 1-es sorszámot
kapja. Az 1-es a lista második tagja lesz, és így tovább. Ezért a furcsaságért
a logikusokat vonhatnánk felelősségre - egy idő után azonban magunk is
természetesnek és kényelmesnek találjuk majd a 0-val kezdődő számlálást.)
1.3. A RÉSZHALMAZOK SZÁMA 21

Egy halmaz részhalmazaiból többféle listát is képezhetünk. Kezdhetjük


például az üres halmazzal, aztán folytathatjuk az egyelemű részhalmazokkal,
majd a kételeműekkel stb. Az (1.5) listát például így állítottuk össze.
Elrendezhetjük a részhalmazokat a telefonkönyv m intájára is. Ez a mód­
szer átláthatóbb, ha elhagyjuk a (kapcsos) zárójeleket és az elemeket elvá­
lasztó veszőket. Az {a, b, c} halmaz elemeiből így a
0, a, ab, abc, ac, b, be, c
listát kapjuk.
Az eljárás valóban hasznos és természetes, van azonban egy problémája.
Tegyük fel mondjuk, hogy egy 10 elemű halmaz részhalmazait kell felsorol­
nunk - meg tudnánk-e mondani, melyik a lista 233-ik eleme anélkül, hogy az
összes előtte lévő elemet felsorolnánk? Nehéz feladat! Hogyan lehetne egy­
szerűsíteni?
Vezessünk be a részhalmazok jelölésére (vagy kódolására) egy másik mód­
szert. Tekintsük újfent az {a,b,c} halmazt. Vegyük sorra a halmaz elemeit:
amelyik a szóban forgó részhalmaz eleme, annak helyébe írjunk 1-est, amelyik
nem, annak helyébe írjunk 0-t. Az {a, c} részhalmaz „kódja” ennek megfele­
lően 101, elvégre a részhalmaznak a eleme, b nem, c viszont eleme. Ezzel a
módszerrel tehát minden részhalmazt egy háromtagú, kizárólag 1-esekből és
0-kból álló karaktersorozat reprezentál, amelynek alapján a megfelelő rész­
halmaz könnyedén felírható. A 010 karaktersorozat például a {b} halmazt
„kódolja”: az első 0 azt jelzi, hogy a részhalmaznak az a nem eleme, az 1-es
a b jelenlétére, a harmadik helyen álló 0 pedig c hiányára utal.
A csupa 0-ból és 1-esből álló karaktersorozatokról természetes módon a
nemnegatív egész számok bináris reprezentációja (kettes számrendszerben
felírt alakja) jut eszünkbe. Idézzük emlékezetünkbe a 10-nél nem nagyobb
számok kettes számrendszerbeli alakját:
0 = 02
1 = 12
2 = 102
3 = 2 + 1 = 112
4 = 1002
5 = 4 + 1 = 1012
6 = 4 + 2 = 1102
7 = 4 + 2 + 1 = 1112
8 = 10002
9 = 8 + 1 = 10012
10 = 8 + 2 = 10102
(az alsó index arra figyelmeztet, hogy nem a szokásos 10-es, hanem a 2-es
számrendszerben dolgozunk).
22 1. SZÁMOLJUK ÖSSZE!

A 0, 1 ,. .. , 7 számok bináris alakja nagyon hasonlít az imént a részhal­


mazokra bevezetett „kódokra”. Az egyetlen különbség, hogy a minden 0-tól
különböző szám bináris alakja egy 1-essel kezdődik, az első négy szám a
kettes számrendszerben nem háromjegyű. Ezen azonban könnyen úrrá lehe­
tünk: minden szám elé - ha szükséges -, annyi 0-t írunk, hogy háromjegyű
legyen. így minden számunk ugyanannyi számjegyből áll, így a következő
megfeleltetéseket kapjuk:

0 <44- 02 -44- 000 <44- 0


1 <44> I2 <44> 001 -44- W
2 <44- 102 <44> 010 <44- m
3 <44> 112 <44> 011 <44- {6,c}
4 <44> 1002 <44- 100 <44- W
5 <44- 1012 <44> 101 <44- {o,c}
6 -44- 1102 -44- 110 <44- {a,b}
7 <44- 1112 <44- 111 <44- {0, b, c}

Az (a, b, c} halmaz részhalmazai tehát a 0 ,1 , . .. , 7 számokkal kódolhatók.


Mi történik az általános esetben, amikor egy n elemű halmaz részhalma­
zait vizsgáljuk? Csupán ugyanazt az eljárást kell követnünk, mint az előbb,
a részhalmazoknak újra számokat feleltetünk meg, 0-tól egészen a legna­
gyobb olyan számig, amelynek bináris reprezentációja n számjegyből áll. A
legkisebb szám, amelynek felírásához n + 1 számjegyre van szükség, 2", a
részhalmazoknak megfelelő számok tehát: 0, 1,2,... ,2" — 1. Ilyen számból
2n darab van, ennyi tehát az n elemű halmaz részhalmazainak száma.
Most már válaszolhatunk iménti kérdésünkre, amely azt firtatta, hogy
melyik egy 10 elemű halmaz 233-ik részhalmaza. Ehhez először fel kell ír-
nuk 233 kettes számrendszerbeli alakját. Mivel 233 páratlan szám, az utolsó
számjegy 1. Hagyjuk el ezt az utolsó számjegyet. Ez megfelel annak, hogy
a számból kivonunk egyet, és a különbséget elosztjuk 2-vel, aminek eredmé­
nye: (233 —l)/2 = 116. Ez a szám páros, bináris reprezentációja tehát 0-val
végződik. Hagyjuk el azt a 0-t, így a (116 —0)/2 = 58 számot kapjuk. A
kettes számrendszerben ez megint csak 0-ra végződik, ezt újra elhagyjuk, az
eredmény: (58 —0)/2 = 29. Ez már páratlan, az utolsó számjegy tehát 1,
amelyet elhagyva a (29 — l)/2 = 14 páros számot kapjuk. Megint egy 0-t
kell elhagynunk, így (14 —0)/2 = 7-et kapunk, újra levágunk egy 1-est, így
kapjuk a (7 —l)/2 = 3 számot, újra elhagyjuk az 1-est, így (3 —l)/2 = 1-et,
végül pedig 0-t kapunk. A 233 a kettes számrendszerben tehát 11101001, ami
a 0011101001 kódnak felel meg.
Ha tehát 10 elemű halmazunk elemei o i , . . . , aio, akkor a 233-ik részhal­
maz az {03,04,05,07,010} halmaz.

M egjegyzések. A 1.3.1. Tételre két bizonyítást is adtunk. Az Olvasóban


felmerülhet a kérdés: miért volt erre szükség? Nyilvánvalóan nem arról van
szó, hogy egyetlen bizonyítás kevés ahhoz, hogy egy állítást igaznak tartsunk.
1.3. A RÉSZHALMAZOK SZÁMA 23

A jogi bizonyító eljárásokkal szemben egy matematikai bizonyítás vagy ab­


szolút evidenciát jelent egy állítás igazsága mellett, vagy abszolút semmit
sem. Százával adhatunk „közelítőleg helyes” bizonyításokat - együtt sem ér­
nek fel egyetlen korrekt bizonyítás erejével!
Későbbi fejezetekben az is előfordul majd, hogy az Olvasót arra kérjük:
bizonyítás nélkül is fogadja el igaznak egy-egy állításunkat, amikor a bizonyí­
tás túlságosan hosszú vagy bonyolult lenne ahhoz, hogy egy bevezető jellegű
könyvben szerepeltessük.
De akkor miért fáradozunk egyáltalán a bizonyításokkal - nem is beszél­
ve az iméntihez hasonló esetekről, amikor egy állítást kétféleképpen is be­
láttunk? A válasz: a tételben kimondott tényt minden bizonyítás más-más
oldaláról világítja meg, egy bizonyításban szereplő belátás pedig nemritkán
magánál a tételnél is értékesebb. A részhalmazok számára vonatkozó tétel
első bizonyításában például egy részhalmaz kiválasztását egymástól függet­
len döntések egymásutánjaként jelenítettük meg, amit egy „döntési fával”
reprezentáltunk. Ehhez az eszközhöz a későbbiek folyamán is gyakran folya­
modunk.
A második bizonyításban a részhalmazok felsorolása - a 0,1, 2 ... számok­
kal való megcímkézése - került előtérbe. Itt a számlálás egy fontos módszerét
ismertük meg: a megszámlálni kívánt objektumokat (esetünkben egy adott
halmaz részhalmazait) másféle, de könnyen megszámlálható objektumoknak
(esetünkben a 0, 1 ,. . . , 2ra —1 egész számoknak) feleltettük meg. Ez a meg­
feleltetés eleget tesz a következő kikötéseknek:
- minden részhalmazhoz pontosan egy szám, és
- minden számhoz pontosan egy részhalmaz tartozik.
Az ilyen megfeleltetéseket kölcsönösen egyértelműnek vagy bijekciónak ne­
vezzük. Ha két halmaz elemei között bijekció létesíthető, akkor a két halmaz
számossága megegyezik.

1.3.1. A 1.3.1. Tétel második bizonyításában tárgyalt megfeleltetés szerint mi­


lyen számot rendelünk (a) az egyelemű részhalmazokhoz; (b) az egész halmazhoz?
(c) Milyen halmazok tartoznak a páros számokhoz?

1.3.2. Hány olyan részhalmaza van egy n elemű halmaznak, amely (elemként)
tartalmazza a halmaz egy kijelölt elemét?

1.3.3. Igazoljuk, hogy minden nemüres halmaznak ugyanannyi páros elemszámú


részhalmaza van, mint páratlan elemszámú.

1.3.4. Hány olyan egész szám van, amely (a tízes számrendszerben) (a) legfeljebb
n\ (b) pontosan n számjegyből áll? (Ne feledkezzünk meg arról, hogy a nemnulla
egész számok pozitívak és negatívak is lehetnek.)
24 1. SZÁMOLJUK ÖSSZE!

1.4. A részhalmazok számának közelítése


Tudjuk tehát, hogy egy 100 elemű halmaznak pontosan 2100 részhalmaza van.
Ez elég nagy szám - de milyen nagy? Jó lenne tudni legalább azt, hogy (a tí­
zes számrendszerben) hány számjegyű. Számítógép segítségével erre könnyen
válaszolhatunk (2100 = 1 267 650 600 228 229 401496 703 205 376), de most te­
gyük fel, hogy nem áll rendelkezésünkre számítógép. Meg tudjuk-e „önerőből”
becsülni a szám nagyságát?
Tudjuk, hogy 23 = 8 < 10, amiből (mindkét oldal 33-adik hatványát
véve) azt kapjuk, hogy 2 " < 1033. Eszerint tehát 2100 < 2 • 1033. A 2 ■1033
szám (a tízes számrendszerben) 34 jegyű (a 2-est 33 darab 0 követi), minek
következtében 2100 legfeljebb 34 számjegyből állhat.
Tudjuk ezen felül, hogy 210 = 1024 > 1000 = 103; figyeljünk fel arra,
hogy ez a két szám milyen közel van egymáshoz.1 Emiatt aztán 2100 > 1030,
vagyis a 2100 szám legalább 31 jegyű.
Ezzel a 2100-ra meglehetősen jó becslést adtunk. A becslést tökéletesen
pontossá tehetjük, és ehhez csupán középiskolai matematikai ismeretekre
van szükségünk. Mit is jelent az, hogy egy szám k jegyű? A válasz: azt, hogy
a szám nem kisebb, mint 10fc_1, de határozottan kisebb, mint 10fc. Azt a k
számot akarjuk tehát meghatározni, amelyre teljesül, hogy
10fc_1 < 2100 < 10fc.
A 2100 számot felírhatjuk 10® alakban (az itt szereplő x nem lesz egész szám,
közelítő értéke: x = lg 2100 = 100 lg 2 (lg a 10-es alapú logaritmust jelöli). Az
egyenlőtlenségből így azt kapjuk, hogy
k —1 < x < k,
k —1 tehát a legkisebb olyan egész szám, amely nem nagyobb, mint x. A
matematikusok ezt úgy mondják, hogy k az x egészrésze, az x egészrészét
általában jelöli. A k szám természetesen úgy kapható meg, hogy x-et
lefelé, egész számmá kerekítjük. A felfelé kerekítéssel kapott számot az x
felső egészrészének nevezzük, ennek jelölése [~x].
Számológép (vagy logaritmustáblázat) segítségével azt kapjuk, hogy lg 2 ss
~ 0, 30103, amiből 100 lg 2 ~ 30,103, kerekítés után így k —1 = 30. Eszerint
tehát 2100 számjegyeinek száma 31.

1.4.1. Hány számjegyű a kettes számrendszerben 2100?

1.4.2. írjunk fel egy képletet, amely megadja a 2” szám számjegyeinek számát (a
10-es számrendszerben).

xA zt, hogy a 2 10 „m ajdnem ” 103 (kissé félrevezetőén), az olyan, a szá m ítástu d o m án y ­


b a n gyakori kifejezésekben is m egjelenik, m int a „kilobájt” —ez ugyanis 1024 b á jto t jelent,
nem pedig 1000 b á jto t, ellen tétb en például a kilogram m -m ai, am ely p o n to san 1000 gram ­
m o t jelent. H asonlóan, 1 „m egabájt” 220, nem pedig egym illió b á jt; a két szám csupán
„közelítőleg” egyenlő.
1.5. VÉGES KARAKTERSOROZATOK 25

1.5. Véges karaktersorozatok


Most általánosítjuk a részhalmazok kódolására bemutatott módszerünket.
Ahelyett, hogy kizárólag nullákból és egyesekbó'l álló karaktersorozatokat
használnánk, most arra kérdezünk rá, hogy hány n hosszúságú karakterso­
rozatot képezhetünk valamely adott karakterkészlet - mondjuk az a, b és c
betűk - felhasználásával. A korábban bemutatott gondolatmenet az általá­
nos esetre is alkalmazható, méghozzá lényeges változtatás nélkül. A sorozat
első tagjának a készlet bármelyik elemét választhatjuk, ami 3 lehetőséget
jelent. A folytatás is ismerős: bármit választottunk is az első helyre, a má­
sodik helyre újra 3 karakter közül választhatunk, az első két helyet tehát
32 = 9-féleképpen tölthetjük be. Mindezek alapján nyilvánvaló, hogy az n
hosszúságú karaktersorozatok száma 3n.
A 3-as számnak természetesen nincs különösebb jelentősége, ugyanezzel a
gondolatmenettel tehát a következő, általános eredmény is belátható:

1.5.1. T é t e l . A k elemszámú karakterkészletből képezhető n hosszúságú


karaktersorozatok száma: kn.

Lássunk egy feladatot, amely a tétel további általánosítását sugallja. Te­


gyük fel, hogy egy munkahelyi adatbázisban négy mező szerepel. Az első 8
karakterben az alkalmazott nevét rövidíti, a második a nemét (F, illetve N),
a harmadik - év-hó-nap alakban, háromszor két karakter felhasználásával
- a születési dátumát adja meg (adatbázisunk tehát nem tesz különbséget
az 1880-ban és az 1980-ban született munkatársak között), a negyedik pedig
az általa betöltött állás kódja, amely 13 betű valamelyike lehet. Legfeljebb
hány munkatársat lehet ilyen módon nyilván tartani?
Nem fogunk meglepődni, ha a megoldás igen nagy szám lesz. Az 1.5.1.
Tétel alapján tudjuk, hogy az első mező kitöltésére - a magyar ábécé 35
betűjével számolva - 358 > 2 200 000 000 000 lehetőségünk van. A második
mezőben a lehetőségek száma mindössze 2. A harmadik mező három kü­
lönálló mezőként is kezelhető, amelyek közül az első 100-, a második 12-, a
harmadik pedig 31-féleképpen tölthető ki (760431 vagy 130229 ezek között
persze sohasem fordulhat elő, de ettől tekintsünk el). A negyedik rubrikában
természetesen 13 karakter szerepelhet.
Hányféleképpen tölthető ki mindezek alapján a négy mező? A válaszhoz
csupán az iménti gondolatmenet kell megismételnünk, a „3 lehetőségünk van”
fordulat helyett azt kell mondanunk: „36® lehetőségünk van”, „2 lehetőségünk
van”, „100 lehetőségünk van”, „12 lehetőségünk van”, „2 lehetőségünk van”,
„31 lehetőségünk van”, „13 lehetőségünk van”. A válasz tehát

368 • 2 • 100 • 12 ■31 ■13 « 2 729 000 000 000 000 000.

Kimondhatjuk tehát a 1.5.1. Tétel következő általánosítását (amelynek


bizonyításához csupán a megoldás gondolatmenetét kell megismételnünk).
26 1. SZÁMOLJUK ÖSSZE!

1.5.2. TÉTEL. A z olyan n hosszúságú karaktersorozatok száma, amelynek


első helyét egy ki, a másodikat egy &2 stb. elemszámú karakterkészletből
tölthetjük ki, ki ■&2 • • • kn.
Speciális esetként állapítsuk meg, hány nemnegatív egész szám van, amely
a 10-es számrendszerben pontosan n jegyű? Az első számjegy nem lehet
0, így itt egy 9 elemű (1,2,..., 9) készletből válogathatunk, a másodiktól
kezdve viszont már minden számjegy a 0 , 1 , . . . , 9 számok akármelyiké lehet.
Esetünkben tehát ki = 9 és &2 = = • • • = kn = 10, a válasz tehát 9 ■10n_1
(1. az 1.3.4. feladatot).

1.5.1. Rajzoljunk döntési fát arra, hogy miként állíthatunk össze 2 hosszúságú
karaktersorozatokat az a, b és c betűkből. Adjuk meg annak az általánosabb fela­
datnak a döntési fáját is, amelyben n = 3, k% = 2, k? = 3 és kz = 2.

1.5.2. Egy üzletben pólók 5, sortok 4, zoknik pedig 3 színben kaphatók. Hány
különböző mezt állíthatunk össze, ha csak itt vásárolunk?

1.5.3. A totóban a mérkőzések eredményét az 1, 2 és X karakterekkel tippelhetjük


meg. Hányféleképpen tölthető ki egy szelvény, amelyen 1 3 +1 mérkőzés szerepel?

1.5.4. Hány lehetséges kimenetele van egy dobókocka kétszeri feldobásának (ha
különbséget teszünk aközött, hogy elsőre 4-est, aztán 1-est, illetve ha elsőre 1-est
és másodikra 4-est dobunk)?

1.5.5. Tegyük fel, hogy 20 darab ajándéktárgyat akarunk 12 gyerek között el­
osztani. Nem kell minden gyermeknek kapnia valamit, előfordulhat tehát, hogy
mind a 20 ajándékot ugyanaz a kis kedvenc kapja. Hányféleképpen oszthatjuk el
az ajándékokat?

1.5.6. Húszféle ajándékunk van, és mindegyikből elegendően nagy készlet áll ren­
delkezésünkre. Hányféleképpen ajándékozhatunk meg 12 gyereket, ha nem kötelező
mindegyiküknek adni valamit, azt azonban kikötjük, hogy ugyanabból az ajándék­
típusból minden gyermek legföljebb egyet kaphat?

1.6. Permutációk
Andrea születésnapi buliján már felmerült az a probléma, hogy hányfélekép­
pen ültethető le n személy n darab székre (valójában az n = 6 és az n — 7
esettel volt csak dolgunk, de a kérdés nyilvánvalóan általánosítható). Ha a
székeket megszámozzuk, akkor egy ülésrend megállapítása annyit tesz, hogy
minden embernek megfeleltetjük az 1, 2 , . . . , n (vagy ha a logikusok kedvében
akarunk járni, a 0 , 1 ,. . ., n —1) számokat. A feladatot akár úgy is megfogal­
mazhatjuk: hányféleképpen lehet az n embert sorba állítani, vagy hányféle
(rendezett) lista adható meg, amelyen mindannyiuk neve (pontosan egyszer)
szerepel.
1.6. PERMUTÁCIÓK 27

1.3. ábra. Döntési fa az {a, b, c} halmaz permutációinak meghatározásához.

Ha egy n elemű listát (más szóval egy rendezett halmazt, amelynek van
első, második stb. eleme) átrendezünk, akkor az új sorrendet az elemek egy
permutációjának nevezzük. Permutációnak nevezzük azt az „átrendezést” is,
amely minden tagot helyben hagy (gondoljuk csak meg: az üres halmazt is
„halmaznak” neveztük).
Az {a, b, c} halmaznak például 6 permutációja van:

abc, acb, bac, bca, cab, cba.

A kérdés tehát a következő: hányféleképpen rendezhető sorba n darab


objektum, másképpen: hány permutációja van egy n elemű halmaznak? A
születésnapi megoldás könnyen általánosíthat: az első helyre az n ember
közül bármelyiket tehetjük, a másodikra pedig - bárkit választottunk is az
első helyre - már csak n — 1 lehetőségünk van, a harmadikra n —2, listánk
első három helyét tehát n(n —l)(n —2)-féleképpen tölthetjük ki.
Az eljárást addig folytatjuk, amíg listánk teljessé nem válik. Az utolsó
előtti helyre eszerint 2 név közül választhatunk, az utolsó hely betöltője -
miután valamennyi előtte lévő hely elkelt - egyértelműen meghatározott. A
teljes lista ezek szerint n ■[n —1) • (n —2) • • •2 ■1-féleképpen tölthető ki. Mivel
ez a szorzat a kombinatorikában nagyon gyakran előkerül, rövidítésére az n\
jelölést vezetjük be (kiolvasása: „n faktoriális”). Ezek szerint tehát n darab
objektumból n\ darab különböző listát készíthetünk. A jelölést a következő
tételben azonnal használjuk is:

1.6.1. T é t e l . Egy n elemű halmaz permutációinak száma ni.

Természetesen az általános eljárást is illusztrálhatjuk (1.3. ábra). Az első


kérdés, amellyel szembesülünk: ki üljön az első székre? A három nyíl a há­
rom lehetséges válasznak felel meg; végpontjukban az értelemszerű második
kérdés merül fel: kit ültessünk a második székre? Ezekből a pontokból már
csak két nyíl vezet tovább, elvégre a második helyre már csak két embe­
rünk van. (Figyeljünk fel arra, hogy a lehetőségek csúcsonként különbözőek!
28 1. SZÁMOLJUK ÖSSZE!

Ez azonban nem lényeges: csupán az számít, hogy - bármi is a válasz az


első kérdésre a második kérdésre mindig két válasz adható.) Ha pedig a
második kérdést is megválaszoltuk, akkor a harmadik hely betöltésekor már
semmiféle dilemmával nem kell szembesülnünk: az utolsó nyilakat követve -
kérdés nélkül - megkapjuk a választ.
Mindezek alapján nyilvánvaló, hogy ha n emberünk van, akkor az első
kérdésre n-féleképpen válaszolhatunk, a legfelső pontból így n darab nyíl
indul ki, (felülről) a második szinten tehát n darab pont található. Ezek
mindegyikéből n —1 nyíl indul ki, így a következő szinten már n(n —1) darab
pontunk lesz. A legalsó sorban így éppen n! darab pontunk lesz, amelyek
mindegyike egy-egy (különböző) ülésrendnek felel meg. A permutációk száma
tehát valóban ni.

1.6.1. Tegyük fel, hogy a társaságban n fiú és n lány van. Hány különböző pá­
rost alkothatnak, ha kikötjük, hogy fiúk csak lányokkal, lányok pedig csak fiúkkal
táncolnak?

1.6.2. (a) Hányféleképpen sakkozhat 8 vendég Andrea értelmezése szerint?


(b) Van-e általános képlet a feladatra, ha a sakkozók száma 2n?

1.7. A rendezett részhalmazok száma


Egy versenyen 100-an vesznek részt, de csupán az első tíz sorrendjét rögzítik.
Hányféle (a krónikákban nyilvántartott) eredménye lehet a versenynek?
A válasz a már ismert gondolatmenetet követi. A 100 versenyző közül
bármelyik lehet első. Bárkié is a dicsőség, a második helyre már csak 99-en
pályázhatnak, az első két helyre tehát 100 • 99-féleképpen futhatnak be. Ha
az első kettő már megvan, a harmadik helyet 98-an szerezhetik meg, és így
tovább. A válasz tehát: 100 • 99 • ■■91

1.7.1. Rajzoljuk fel az előbbi gondolatmenetnek megfelelő döntési fát.

1.7.2. Tegyük fel, hogy a krónika mind a 100 versenyző helyezését nyilvántartja.
(a) Mennyi a lehetséges eredmények száma?
(b) Ezek közül hány olyan van, amely az első 10 hely tekintetében nem külön­
bözik?
(c) Mutassuk meg, hogy az első 10 helyezettre vonatkozó eredeti feladat meg­
oldható az (a) és a (b) kérdésre adott válaszok alapján.

A feladatban szereplő 10 és 100 számoknak nincs különösebb jelentősé­


gük; a gondolatmenet minden további nélkül általánosítható arra az esetre,
amikor n résztvevő közül az első k helyezését örökítjük csak meg.
Ha pedig eredményünket absztrakt, matematikai formában akarjuk rögzí­
teni, akkor a versenyzők helyett tetszőleges n elemű halmazról beszélhetünk.
1.8. ADOTT ELEMSZÁMÚ RÉSZHALMAZOK SZÁMA 29

A lista első k tagja ekkor egy, a halmaz elemeiből alkotott k tagú sorozat
lesz, amelyben minden elem különböző. Úgy is gondolkodhatunk, hogy előbb
kiválasztunk a halmazból k darab elemet, majd ezeket sorba rendezzük. így
vagy úgy, eredményünk a következő:

1.7.1. T é t e l . Egy n elemű halmaznak n(n — 1) • • • (n —k + 1) darab k


elemű rendezett részhalmaza van.

(Jegyezzük meg: ha n-től kezdve visszafelé számolunk, akkor a fc-adik helyen


n — k + 1 áll.)
Az n elemű halmazokat néha „n-halmaznak”, a k elemű részhalmazokat
pedig „k-részhalmaznak” nevezzük. Tételünket tehát így is kimondhatjuk:
egy n-halmaz rendezett ^-részhalmazainak száma: n(n — 1) • • • (n —k + 1).

1.7.3. A 1.7.2. feladat gondolatmenetét követve a választ az

(n —k)\
formában adhatjuk meg. Igazoljuk, hogy a két alak ugyanazt a számot takarja.

1.7.4. Magyarázzuk meg, mi a hasonlóság, és mi a különbség a 1.7.1. Tételben és


a 1.5.1. Tételben megoldott számlálási probléma között.

1.8. Adott elemszámú részhalmazok száma


Eddigi eredményeink alapján könnyen megoldhatjuk az egyik legfontosabb
számlálási feladatot.

1.8.1. TÉTEL. Egy n-halmaz k-részhalmazainak száma:

n(n —1) • ■• (n —k + 1)
ki k\(n —fc)!

B i z o n y í t á s : A rendezett k elemű részhalmazok száma az 1.7.1. Tétel szerint


n (n —1) • ■• (n —k + 1) = n\/{n —k)\. Ebben minden „rendezetlen” részhalmaz
többször is szerepel, méghozzá annyiszor, ahányféleképpen k elem sorbaren-
dezhető. Ez éppen a k elemű halmaz permutációinak száma, amely az 1.6.1.
Tétel szerint k\. Ha tehát a rendezett /c-részhalmazok számát elosztjuk fc!-sal,
akkor éppen a („rendezetlen”) fc-részhalmazok számát kapjuk. □
Az n-halmaz fc-részhalmazainak számát megadó formulát (^) rövidíti (ki­
olvasása: „n alatt a fc”). Eszerint tehát

( 1 .6 )
30 1. SZÁMOLJUK ÖSSZE!

Egy lottószelvény tehát (95°)-féleképpen tölthető ki, Andrea és vendégei


pedig (j) kézfogással üdvözölték egymást. Az ()() alakú számokat binomiális
együtthatóknak is nevezik (a 3.1. fejezetben majd kiderül, hogy miért).
Az (”) értéke nyilván 1, elvégre egy n elemű halmaznak pontosan egy
n elemű részhalmaza van. Hasonlóan: (()) = 1, hiszen bármely halmaznak
pontosan egy 0 elemű részhalmaza van: az üres halmaz. Ez ráadásul még az
üres halmazra is igaz, így tehát (°) = 1 .

1.8.1. A születésnapi partival kapcsolatban felmerült kérdések közül melyek te­


kinthetők az 1.8.1. Tétel speciális esetének?

1.8.2. Készítsünk táblázatot (jj) értékeiről, ha 0 < k < n < 5.

1.8.3. írjuk fel (£) értékeit a k = 0, l,n —l,n esetekben az (1.6) összefüggés
alapján, majd értelmezzük a formulákat (j() kombinatorikus jelentése szerint.

A binomiális együtthatókra vonatkozóan számos nevezetes azonosságot


bebizonyíthatunk. Ezek közül néhányat a következő tételben sorolunk fel, a
feladatokban és a következő fejezetben továbbiakkal is találkozunk.

1.8.2. TÉTEL. A binomiális együtthatókra teljesülnek a következő azonos­


ságok:
(1.7)

ha n ,k > 0, akkor
n —1
( 1 .8 )
71 — 1
+
k- 1 k

B izonyítás : A z (1.7) azonosságot a két oldal kombinatorikus értelmezése


alapján igazoljuk. Legyen tehát S egy n elemű halmaz. Az azonosság bal
oldalán az S halmaz k elemű, jobb oldalán az n — k elemű részhalmazainak
száma szerepel. Ahhoz, hogy belássuk: ez a két szám egyenlő, elegendő, ha
arra hivatkozunk, hogy minden k elemű részhalmazhoz kölcsönösen egyértel­
műen hozzárendelhetünk egy n — k elemű részhalmazt: az illető részhalmaz
(5-re vonatkozó) komplementerét, vagyis az S halmaz azon elemeinek a hal­
mazát, amelyek a szóban forgó részhalmaznak nem elemei.
Az (1.8) azonosságot a binomiális együtthatókat definiáló (1.6) képlet
alapján látjuk be. A behelyettesítések után azt kapjuk, hogy

n! (n — 1)! (n — 1)!
k\(n —k)\ (k — l)!(n —fc)! k\(n — k — 1)!
1.8. ADOTT ELEMSZÁMÚ RÉSZHALMAZOK SZÁMA 31

Ha mindkét oldalt elosztjuk (n —l)!-sal és megszorozzuk (k —l)!(n —k —1)!-


sal, akkor az
n 1 1
k(n — k) n —k k
azonosságot kapjuk, amelynek fennállása egyszerű számolással igazolható.
A (1.9) azonosság igazolásához újra a kombinatorikus értelmezésre tá ­
maszkodunk. Tekintsük megint az n elemű S halmazt. A bal oldalon szereplő
összeg első tagja megadja az S halmaz 0 elemű részhalmazainak számát (ez,
mint már láttuk, 1), a második az 1 elemű részhalmazokét, a harmadik a két­
eleműekét, és így tovább. Az összeg így az S halmaz minden részhalmazát
pontosan egyszer veszi számításba. Tudjuk mármost, hogy S összes részhal­
mazainak száma 2", a jobb oldalon pedig pontosan ez a szám szerepel. Ezzel
az (1.9) azonosságot (és a 1.8.2. Tételt) be is láttuk. □

1.8.4. Adjuk meg az (1.7) azonosság algebrai, és az (1.8), azonosság kombinato­


rikus bizonyítását.

1.8.5. Igazoljuk kétféle - algebrai és kombinatorikus - gondolatmenet alapján,


h °g y (a) + ( T ) = n 2 -

1.8.6. Mutassuk meg (megint csak kétféleképpen), hogy (£) = f ( ^ l j ) .

1.8.7. Bizonyítsuk be (kétféleképpen), hogy 0 < c < b < a esetén

Á ttekintő feladatok
1.8.8. Hányféleképpen ültethetünk le 12 embert két, egyenként 6 személyes kör
alakú asztalhoz? Az, hogy mikor kell két ülésrendet különbözőnek tekintenünk, nem
egyértelmű - adjuk meg a különböző értelmezéseknek megfelelő megoldásokat.

1.8.9. Adjunk meg olyan halmazokat, amelyeknek elemszáma (a) 365, (b) 12, (c) 7,
(d) 11.5, (e) 0, (f) 1024.

1.8.10. Soroljuk fel az {a,b, c, d, ej halmaz összes olyan részhalmazát, amelynek


{a, e} részhalmaza, c viszont nem eleme.

1.8.11. A számhalmazok esetében nem adtuk meg az összes részhalmaz-relációt,


a felsoroltakon túl teljesül például Z C E is. Hány ilyen reláció állítható fel a
0,N,Z+, Z,Q,R halmazok között?
32 1. SZÁMOLJUK ÖSSZE!

1.8.12. Mi a metszete
(a) a 3-ra végződő és a 3-mal osztható pozitív egész számok; illetve
(b) az 5-tel osztható és a páros pozitív egész számok halmazának?

1.8.13. Legyen A = {a, b, c, d, ej és B = {c, d, e}. Soroljuk fel az A halmaz összes


olyan részhalmazát, amelynek a B halmazzal vett metszete egyelemű.

1.8.14. Három halmaz elemszáma rendre 5, 10 és 15. Hány eleme lehet a három
halmaz uniójának, illetve metszetének?

1.8.15. Melyik halmaz egy A halmaz önmagával vett szimmetrikus differenciája?

1.8.16. Legyen C = AA B . Mi lesz az A és a C halmaz szimmetrikus differenciája?

1.8.17. Legyenek A, B és C olyan halmazok, amelyekre teljesül, hogy A C C.


Igazoljuk, hogy ekkor
A U (£ n C) = (A U B) n C.
Igazoljuk egy példa segítségével, hogy az A C C feltétel valóban szükséges.

1.8.18. Melyik halmaz A \ B, ha


(a) A a prímszámok, B pedig a páratlan számok; illetve ha
(b) A a nemnegatív, B pedig a „nempozitív” valós számok halmaza?

1.8.19. Bizonyítsuk be, hogy tetszőleges A, B és C halmazok esetén

((A \ B) u {B \ A)) n c = {(A n C) u (B n c)) \ (A n b n c).

1.8.20. Legyen A egy halmaz; jelölje (^) az A halmaz kételemű részhalmazainak


halmazát. Melyek igazak az alábbiak közül?

•T) u(f); CT) u (!)


I
<N

:-T) = (?) n ( t ) ; n (!)


Ul

(AT)
(N

1.8.21. Legyen B az A halmaz egy részhalmaza, |Á| = n, \B\ = k. Hány olyan


részhalmaza van Á-nak, amelynek B-vel vett metszete egyelemű halmaz?

1.8.22. írjuk fel a 25 és a 35 2-es számrendszerbeli alakját, majd adjuk össze őket a
bináris „összeadótábla” alapján. Ellenőrizzük a kapott eredményt a két szám 10-es
számrendszerben kiszámított összege 2-es számrendszerbeli alakja kiszámításával.

1.8.23. Igazoljuk, hogy minden egész szám felírható különböző 2-hatványok ösz-
szegeként. Mutassuk meg, hogy ez a felírás - a tagok sorrendjétől eltekintve -
egyértelmű.

1.8.24. Hány számjegye van ÍO100 bináris reprezentációjának?


1.8. ADOTT ELEMSZÁMÚ RÉSZHALMAZOK SZÁMA 33

1.8.25. Washingtonból indulva és oda visszaérkezve hányféleképpen látogatha­


tunk meg ötöt az USA 50 tagállamának fővárosai közül?

1.8.26. Hány olyan 20 jegyű pozitív egész szám van, amelyekben bármely két
egymás melletti számjegy különbözik?

1.8.27. Andreának 10 (különböző) labdája van. A labdákat előbb két csoportra


osztja, ezek közül kiválaszt egyet, amelynek legalább két tagja van, és ezt két
részre osztja. Az eljárást addig folytatja, amíg valamennyi csoportban egyetlen
labda marad.
(a) Hány lépésből áll az eljárás?
(b) Igazoljuk, hogy a szóban forgó eredményre vezető eljárások száma

[Útmutatás: képzeljük el az eljárást visszafelé.]

1.8.28. Képeslapot akarunk küldeni 12 barátunknak. Az üzletben háromféle ké­


peslap kapható. Hányféleképpen küldhetjük üdvözletünket, ha
(a) mindhárom típusból elegendő van készleten, és minden ismerősnek egyetlen
lapot küldünk;
(b) elegendő számú képeslap van készleten, és egy ismerősnek akár több (mind­
azonáltal különböző) lapot is feladhatunk;
(c) mindhárom képeslapból 4 darab van, és minden ismerősnek pontosan egy
képeslapot küldünk?

1.8.29. Hányféleképpen színezhetünk ki n tárgyat három színnel, ha legalább egy­


szer mindegyik színt fel akarjuk használni?

1.8.30. Illusztráljuk egy fával Andrea megoldását arra, hogy hányféleképpen játsz­
hat 6 ember sakkot. Magyarázzuk meg, miért használná Andrea éppen ezt a fát.

1.8.31. Hányféle különböző „szó” (10 betűs karaktersorozat) alkotható a m ate­


matika szóból?

1.8.32. Adjunk meg olyan pozitív egész a, b és c számokat, amelyekre

1.8.33. Bizonyítsuk be, hogy

1.8.34. Kör alakú asztalnál 20 fő foglal helyet. Hányféleképpen választhatunk ki


három, nem egymás mellett ülő embert?
2. fejezet

Kombinatorikus módszerek

2.1. Teljes indukció


Eljött az ideje, hogy megismerkedjünk a diszkrét matematika egyik legfon­
tosabb módszerével. Kezdjük egy feladattal:

Mennyi az első n darab páratlan szám összege ?

A megoldást talán érdemes egy kis kísérletezéssel kezdeni. Kis n-ekre a


következőket kapjuk:

1
1+ 3 = 4
1+ 3+ 5 = 9
1+ 3 + 5 + 7=16
l + 3 + 5 + 7 + 9 = 25
1 + 3 + 5 + 7 + 9 + 11 = 36
1 + 3 + 5 + 7 + 9 + 11 + 13 = 49
1 + 3 + 5 + 7 + 9 + 11 + 13+ 15 = 64
1 + 3 + 5 + 7 + 9 + 11 + 13 + 15 + 17 = 81
1 + 3 + 5 + 7 + 9 + 11 + 13 + 15 + 17 + 19 = 100

Azonnal szembeötlik, hogy az eredmény minden esetben négyzetszám, mi


több, a példák alapján úgy tűnik, hogy az első n páratlan szám összege éppen
n2. Az első 10 számra már láttuk, hogy valóban így van, hogyan bizonyosod­
hatnánk meg arról, hogy minden n-re igaz? Mondhatjuk persze, hogy szinte
bizonyosan igaz, de állításunkat matematikai evidencia nem támasztja alá.
Hogyan bizonyíthatnánk be az állítást?
2.1. TELJES INDUKCIÓ 35

Tekintsük tehát az általános esetet; az n-edik páratlan szám (ellenőriz­


zük!) 2n —1, azt akarjuk tehát belátni, hogy

1 + 3 + ... T (2ti —3) T (2n —1) = n2. (2-1)

Az utolsó tag nélkül a bal oldalon az első n —1 páratlan szám összege marad:

1 + 3 + ... + (2n - 3) + (2n - 1) = ( l + 3 + ... + (2n - 3)) + (2n - 1).

A nagy zárójelen belüli összeg (n —1)2, elvégre ennyi az első n — 1 páratlan


szám összege. Az összeg tehát valóban

(n - l ) 2 + (2n - 1) = (n2 - 2n + 1) + (2n - 1) = n 2, (2.2)

amint bizonyítani akartuk.


De álljunk meg egy pillanatra! A bizonyítás során éppen azt használtuk
fel, amit bizonyítani akartunk. Ha ez megengedett bizonyítási módszer, akkor
bármit bebizonyíthatunk!
Mentségünkre szolgál azonban, hogy nem pontosan a bizonyítandó állí­
tást használtuk fel. Az első n —1 páratlan szám összegére vonatkozó állítást
használtuk fel, és (a (2.2) lépésben) ennek alapján láttuk be az első n párat­
lan szám összegét megadó formulát. Másképpen fogalmazva azt igazoltuk,
hogy amennyiben állításunk egy bizonyos számra (n —1-re) igaz, úgy igaz a
következőre (vagyis n-re) is.
Ebből azonban már levonhatjuk azt a következtetést, hogy az állítás min­
den n számra igaz. Már láttuk, hogy n = 1 esetén ez a helyzet, az előbbiek
szerint tehát n = 2-re is így áll a dolog (ezt kaptuk a számolás eredménye­
ként is, de most már látjuk, hogy erre a számításra igazából már nem is
volt szükségünk). Hasonlóan: abból, hogy az állítás n — 2 esetén igaz, arra
következtethetünk, hogy n — 3 esetén is igaz, aminek következtében igaz
n = 4 esetén is, és így tovább. Akármekkora is tehát az n szám, az iménti
úton egyszer csak eljutunk odáig is. Az állítás tehát valóban minden n-re
igaz.
Ezt a bizonyítási módszert teljes - vagy matematikai - indukciónak ne­
vezzük (és nem keverjük össze a tudományfilozófia indukciófogalmával). A
módszer veleje a következő:
Tegyük fel, hogy be akarjuk látni: egy bizonyos tulajdonsággal minden
pozitív egész szám rendelkezik. Tegyük fel továbbá, hogy

(a) 1 rendelkezik a szóban forgó tulajdonsággal, valamint hogy


(b) ha n - 1 ilyen tulajdonságú, akkor n is (ahol n > 1).

Az indukció elve szerint amennyiben (a) és (b) egyaránt igaz, úgy minden n
szám rendelkezik a tulajdonsággal.
Az imént pontosan ezt tettük. Igazoltuk, hogy az első 1 páratlan szám
„összege” éppen l 2, majd igazoltuk, hogy ha az első n — 1 páratlan szám
36 2. KOMBINATORIKUS MÓDSZEREK

összege (n — l ) 2, akkor az első n szám összege n 2, tetszőleges n > 1 szám


esetén. Az indukció elve alapján tehát kijelenthetjük: az első n páratlan szám
összege n 2.
Az indukciós bizonyításhoz a legjobb módszer gyakran a következő. El­
sőként belátjuk az állítást az n = 1 esetre. (Ezt alkalomadtán az indukció
alapjának is nevezzük.) Ezután megpróbáljuk az állítást tetszőleges n-re iga­
zolni, amihez felhasználhatjuk az állítást n helyében n —1-gyel. (Az utóbbit
indukciós feltevésnek is mondják.) Szükségünk lehet ezen felül az n —2-re,
az n —3-ra (általában: minden olyan fc-ra, amelyre k < n teljesül) vonatkozó
állításokra is, de ezeket is nyugodtan felhasználhatjuk.
Az indukció elvét néha így fogalmazzuk meg: ha egy tulajdonság, amellyel
az 1 szám rendelkezik, minden számról öröklődik a nála eggyel nagyobb
számra, akkor minden pozitív egész szám ilyen tulajdonságú. (Ha például egy
család alapító atyjának van egy különleges vagyontárgya, amely generációról
generációra öröklődik, akkor a család mindig birtokolni fogja a szóban forgó
tárgyat.)
Előfordul, hogy n = 1 helyett az n — 0 esettel kezdünk (amennyiben az
utóbbinak van értelme). Az is megeshet, hogy valamely nagyobb számmal
kezdünk (ha mondjuk az n = 1 esetnek nincs értelme, vagy egyszerűen nem
igaz). Példaképpen igazoljuk, hogy n! minden n > 2 esetén páros szám.
Könnyen ellenőrizhetjük, hogy az állítás n = 2 esetén igaz (valóban: 2! = 2,
valóban páros), és az is teljesül, hogy ez a tulajdonság n —1-ről n-re öröklődik
(valóban, ha (n — 1)! páros, akkor n! = (n —1)! ■n egy páros szám n-szerese,
tehát szintén páros). Eszerint tehát n\ minden 1-nél nagyobb pozitív egész
számra igaz. (Az állítás természetesen n = 1 esetén nem igaz.)

2.1.1. Igazoljuk indukcióval és anélkül, hogy n ( n + 1) minden n pozitív egész szám


esetén páros.

2.1.2. Bizonyítsuk be teljes indukcióval, hogy az első n természetes szám összege


n(n + l)/2.

2.1.3. Idézzük emlékezetünkbe: ha n + 1 ember találkozik, akkor n(n+ l)/2 kézfo­


gással üdvözlik egymást. Tegyük fel, hogy mindenki csak azokat a kézfogásokat szá­
molja, amelyben a másik nála idősebb (kissé sznob szokás, nemde?). Ki számlálja
a legtöbb kézfogást? Hányán számolnak 6 kézfogást? (Tegyük fel, hogy mindenki
különböző korú.)
A kérdésekre adott válaszaink alapján adjunk új bizonyítást a 2.1.2. feladatra.

2.1.4. Bizonyítsuk be a 2.1.2. feladatot a 2.1. ábra alapján.

2.1.5. Igazoljuk az alábbi azonosságot:

(n —1) • n ■(n + 1)
l - 2 + 2- 3 + 3- 4 + ... + ( n - l ) - n
3
2.1. TELJES INDUKCIÓ 37

• • o 0 o 0 o

• • • • 0 o 0 o

• • • • • • o 0 Cl

• • • • • • • • o o
• • • • • • • • • • o

1+2+3+4+5 = ? 2(l+2+3+4+5) - 5-6 - 30

2.1. ábra. Az első n pozitív egész szám összege.

A 2.1.2. feladattal kapcsolatban szokás megemlíteni a matematika tör­


ténetének egyik nevezetes anekdotáját. Cári Friedrich Gauss (1777-1855),
minden idők egyik legnagyobb matematikusa az elemi iskolában azt a fela­
datot kapta tanárától, hogy adja össze a pozitív egész számokat 1-től 100-ig
(a történet más változataiban 1-től 1000-ig, esetleg 1900-tól 2000-ig). A tanár
abban reménykedett, hogy a nebulók legalább egy órára elfoglalják magu­
kat a feladattal, így pihenhet egyet. Legnagyobb meglepetésére Gauss szinte
azon nyomban jelentkezett a helyes megoldással. Gondolatmenete meglehe­
tősen egyszerű volt: az első és az utolsó szám összege 1 + 1000 — 1001, a
második és az utolsó előtti összege 2 + 999 = 1001. Az eljárást folytatva,
a megmaradt számok közül a legkisebb és a legnagyobb összegeként min­
dig 1001-et kapunk. Az utolsó pár: 500 + 501 = 1001. Mivel 500 párunk
van, a megoldás 500-szor 1001, vagyis 500500. A megoldást a 2.1.2. feladat
képletébe való behelyettesítéssel is ellenőrizhetjük: 1000 • 1001/2 = 500500.

2.1.6. Az ifjú Gauss módszerével adjuk meg a 2.1.2. feladat harmadik megoldását.

2.1.7. Hogyan bizonyította volna be az ifjú Gauss a (2.1) összefüggést?

2.1.8. Igazoljuk, hogy az első n négyzetszám összege l + 4 + 9 + ... + n 2 =


= n(n + l)(2n + l)/6.

2.1.9. Igazoljuk, hogy 2 első n hatványának összege (1 = 2°-nal kezdve) 2" —1.

Az 1 fejezetben gyakran éltünk az „és így tovább” fordulattal. Amikor


egy gondolatmenetet n-szer kellett volna megismételni, akkor csupán két­
szer vagy háromszor ismételtük meg, majd a további szócséplés helyett azt
mondtuk: „és így tovább”. Ezzel nincs is semmi gond - amíg a gondolatmenet
eléggé egyszerű ahhoz, hogy világos legyen, hova vezet. Jó lenne azonban,
ha rendelkezésünkre állna valamilyen precízebb módszer is a stb. helyett
azokban az esetekben, amikor az n-szeri ismétlés végkimenetele nem teljesen
nyilvánvaló.
38 2. KOMBINATORIKUS MÓDSZEREK

A precíz módszer ezekben az esetekben is az indukció, ezt most néhány


példával alá is támasztjuk. Kezdjük az n elemű halmaz részhalmazainak
számára vonatkozó, a 1.3.1. Tételben szereplő képlettel (amely szerint - mint
emlékszünk - egy n elemű halmaznak 2n részhalmaza van).
Az indukció elve alapján állításunkat először az n = 0 esetre kell ellen­
őriznünk. Ez triviális, és már korábban megtettük. Ezután feltesszük, hogy
n > 0, és hogy az állítás igaz ri —l-re. Legyen S olyan halmaz, amelynek elem­
száma n, és rögzítsük az S halmaz egy a elemét. Az S halmaz részhalmazait
úgy számoljuk meg, hogy külön vesszük számba azokat a részhalmazokat,
amelyeknek a eleme, és külön azokat, amelyeknek a nem eleme.
Kezdjük azokkal a részhalmazokkal, amelyeknek a nem eleme. Ha az a-t
eltávolítjuk az S halmazból, akkor egy n — 1 elemű S' halmazt kapunk, a
bennünket érdeklő halmazok éppen 5" részhalmazai. Az S ' halmaznak az
indukciós feltevés szerint 2”” 1 részhalmaza van.
Tekintsük most S azon részhalmazait, amelyeknek a eleme. A kulcsfon­
tosságú megfigyelés most az, hogy minden ilyen halmaz o-ból és S ' egy rész­
halmazából állítható össze. Megfordítva, ha vesszük S' egy részhalmazát,
akkor a-t hozzáadva az S halmaz egy a-t (elemként) tartalmazó részhal­
mazát kapjuk. Eszerint tehát az S halmaz a-t tartalmazó részhalmazainak
száma megegyezik S' részhalmazainak számával, amely - az indukciós felte­
vés szerint - éppen 2n_1. (A már korábban bevezetett zsargont használva:
az imént bijektív megfeleltetést létesítettünk az S 1 halmaz részhalmazai és
az S halmaz a-t tartalmazó részhalmazai között.)
Az S halmaz részhalmazainak száma: 2n_1 + 2n_1 = 2 • 2n_1 = 2n, ezzel
a 1.3.1. Tételt újra bebizonyítottuk.

2.1.10. Adjuk meg a 1.5.1. Tétel (amely szerint a k karakterkészlet alapján felírt
n hosszúságú sorozatok száma k n) és a 1.6.1. Tétel (amely szerint egy n elemű
halmaz permutációinak száma n!) indukciós bizonyítását.

2.1.11. Bizonyítsuk indukcióval a kézfogástételt (amely szerint n ember n(n —1)/2


kézfogással üdvözölheti egymást).

2.1.12. Olvassuk el figyelmesen az alábbi indukciós bizonyítást.


Á l l í t á s : A z n(n + 1) szorzat minden n esetén páratlan.
B i z o n y í t á s : Tegyük fel, hogy az állítás igaz n helyében n — 1-gyel; az in­
dukciós hipotézis alapján belátjuk, hogy n- re is igaz. Könnyen igazolható,
hogy
n(n + 1) = (n — l ) n + 2 n.
Az itt szereplő (n —l)n az indukciós feltevés szerint páratlan, 2n pedig páros.
Az n(n-|-l) szám tehát egy páratlan és egy páros szám összege, és mint ilyen,
maga is páratlan.
Az állítás viszont nyilvánvalóan hamis; az n = 10 esetben például 10 • 11 = 110,
ez pedig páros szám. Mi a baj a bizonyítással?
2.2. ÖSSZEHASONLÍTÁS ÉS BECSLÉS 39

2.1.13. Olvassuk el figyelmesen az alábbi indukciós bizonyítást.

Á llítás: Ha a sík n egyenese közül semelyik kettő sem párhuzamos, akkor


van olyan pont, amelyiken mindegyikük átm.egy.
B i z o n y í t á s : A z állítás nyilvánvalóan igaz az n = 1 esetben, sőt akkor is,
ha n = 2, elvégre a két egyenes a feltevés szerint nem párhuzamos. Tegyük
fel tehát hogy az állítás tetszőleges, n —1 egyenesből álló halmazra igaz. Az
indukciós feltevés alapján belátjuk, hogy az állítás n egyenes esetén is igaz.
Tekintsük tehát azt az n egyenesből álló S = {a,b,c,d , . . . } halmazt,
amelynek elemei között nincs két párhuzamos egyenes. Vegyük el S-ből a
c egyenest, jelölje a maradék egyenesek halmazát S '. Mivel S1 elemeinek
száma n — 1, az indukciós feltevés szerint van olyan P pont, amelyre S'
minden eleme illeszkedik. Speciálisan: mivel a és h is átmegy a P ponton, P
az a és a &egyenes metszéspontja.
Most tegyük vissza a c-t, és vegyük el a d-1; az így kapott - újfent
n — 1 elemű - halmazt jelölje S ". Az indukciós feltevés szerint S" elemei
is egy pontra illeszkednek, jelöljük ezt a pontot P'-vel. Mivel azonban P'
az a és a b egyenes metszéspontja, világos, hogy P = P '. Ekkor viszont
nyilvánvaló, hogy c-nek is át kell mennie P-n. A többi egyenes szintén átmegy
P-n, eszerint tehát P-re minden egyenes illeszkedik.

Állításunk megint nyilvánvalóan hamis. Hol a hiba?

2.2. Ö sszehasonlítás és becslés


Nem árt, ha bizonyos számok (például az ni) kiszámítására rendelkezésünkre
áll egy képlet, de gyakran még ennél is fontosabb, hogy hozzávetőleges ké­
pünk legyen arról, mekkora is ez a szám. Példának okáért: vajon hány szám­
jegye van 100!-nak?
Kezdjük egy egyszerűbb kérdéssel. Melyik nagyobb, n vagy ((()? Ha n =
= 2,3,4, akkor Q) rendre 1, 3 és 6, az n = 2 esetben tehát kisebb, mint
n, az n = 3 esetben egyenlő vele, ha pedig n — 4, akkor nagyobb. Könnyen
belátható, hogy ha n > 4, akkor n = (") < (”).
Ennél többet is állíthatunk: az

\2 ) _ n - 1
n 2
tört akármekkora lehet, amennyiben n elég nagy. Ha például azt akarjuk,
hogy a tört nagyobb legyen, mint 1000, elegendő, ha n > 2001. Az analízis
nyelvén ezt így fejezhetjük ki:

oo In —>oo).
n
40 2. KOMBINATORIKUS MÓDSZEREK

Egy másik egyszerű kérdés: melyik nagyobb, n2 vagy 2"? Kis n-ekre a
válasz nem egyértelmű: l 2 < 21, 22 = 22, 32 > 23, 42 = 24, 52 < 25. Innentől
kezdve azonban 2" begyorsít, és sokkal lendületesebben növekszik, mint n 2.
Például 210 = 1024 már sokai nagyobb, mint 102 = 100. Igazolható, hogy
271j n 2 szintén akármekkora értéket felvehet, ha n elég nagy.

2.2.1. (a) Bizonyítsuk be, hogy ha n > 3, akkor 2n > (™).


(b) A feladat (a) része alapján igazoljuk, hogy 2n/n 2 akármekkora értéket fel­
vehet, ha n elég nagy.

Ennyi előkészület után már megpróbálkozhatunk azzal, hogy megbecsül­


jük 100! - vagy általánosabban, az ni = 1 • 2 • • • n szám - nagyságát. Az első
szorzótényezőt (az 1-et) figyelmen kívül hagyhatjuk, mivel pedig a többi té­
nyező egyike sem kisebb 2-nél, világos, hogy ni > 2n_1. Hasonlóan: ni <
< rin~1, elvégre szorzatunk n — 1 tényezőből áll (az 1-et újfent figyelmen
kívül hagyjuk), amelyek egyike sem nagyobb, mint n. (Mivel az utolsó kivé­
telével valamennyi tényező határozottan kisebb, mint n, a szorzatuk sokkal
kisebb, mint nn~1.) Beláttuk tehát, hogy

2"~1 < ni < nn~l . (2.3)

Az n\ faktoriálist ezzel valóban korlátok közé szorítottuk, de a két korlát


meglehetősen távol van egymástól: n = 10 esetén alsó korlátunk 29 = 512, a
felső viszont 109.
A (2.3) egyenlőtlenségek alapján például az sem dönthető el, hogy ni és
2" számok közül melyik a nagyobb. A kérdés kombinatorikus értelmezése
a következő: egy n elemű halmaz permutációi vagy részhalmazai vannak
többen? Kis n-ek esetén a részhalmazok nyernek: 21 = 2 > l! = 1, 22 = 4 >
> 2! = 2, 23 = 8 > 3! = 6. Innentől azonban a kép megváltozik: 24 = 16 <
< 4! = 24, 25 = 32 < 5! = 120. Világos, hogy miközben n egyre nagyobb,
az ni sokkal gyorsabban növekszik, mint a 2". Amint n-ről n + 1-re lépünk
előre, 2" csupán kétszeresére, míg ni az (n + l)-szeresére nő.

2.2.2. Alakítsuk az iménti gondolatmenetet indukciós bizonyítássá: lássuk be,


hogy n > 4 esetén ni > 2n.

Létezik olyan képlet, amely nagyon jó közelítéssel megadja ni értékét.


Bizonyítását, amely nem borzalmasan bonyolult ugyan, de az analízis eszkö­
zeinek mozgósítását is igényli, elhagyjuk.

2 .2 .1 . T é t e l . [Stirling-formula]
2.3. A SZITAFORMULA 41

Itt természetesen tt = 3,14 ... az egységsugarú kör területe, e = 2, 718 ...


a természetes logaritmus alapja, ~ pedig a közelítő egyenlőség jele, amely a
következőképpen küszöbölhető ki:

(n —» oo).

Figyeljünk fel arra, hogy a két nevezetes irracionális szám, az e és a tt ugyan­


abban a formulában szerepel.

Most már válaszolhatjuk eredeti kérdésünkre, amely így szólt: hány jegyű a
100! szám? A Stirling-formula szerint

100! « (100/e)100 ■x/ 200tt.

Azt, hogy ez a szám hány jegyű, úgy kapjuk meg, hogy kiszámítjuk a 10-es
alapú logaritmusát, és felfelé kerekítünk.

lg(100!) « 100 lg(100/e) + 1 + lg V2n = 157, 969 ....

A 100! a tízes számrendszerben „nagyjából” 158 jegyű (nemcsak „nagyjából”:


a becslés esetünkben pontos eredményt ad).

2.3. A szitaformula
Egy osztály 40 tanulója közül sokan gyűjtik a kedvenc sztárjuk fényképeit.
Az osztály 18 tanulója Beatles-képeket, 16-an Rolling Stones-képeket és 12-
en Elvis Presley-képeket gyűjtenek (ez régen történt, amikor még kisrácok
voltunk). Heten vannak, akiknek Beatles- és Rolling Stones-poszterük is van,
5-en büszkélkedhetnek Beatles- és Elvis-képpel, hárman vannak, akiknek
Rolling Stones- és Elvis-poszterük is van. Két tanuló szobája falán a két
csapat mellett a Király is ott mosolyog. A kérdés ezek után: hányán vannak
az osztályban, akik sem Beatles-, sem Rolling Stones-, sem Elvis-képeket
nem gyűjtenek?
Elsőre a következő gondolatmenettel próbálkozhatunk. Az osztálynak 40
tanulója van, vonjuk ki tehát a 40-ből a Beatles-poszterrel rendelkezők szá­
mát (18), a Rolling Stones-poszterrel rendelkezők számát (16) és az Elvis-
poszterrel rendelkezők számát (12). Ha azonban 40-ből kivonjuk a 18+16+12
számot, akkor —6-ot kapunk, ami arra figyelmeztet, hogy megoldásunkkal
nincs minden rendben. Valóban: azoknak a számát, akik két sztár képeit
gyűjtik, kétszer is kivontuk. Azokat a tanulókat például, akik a Beatles-
és az Elvis-posztereket is gyűjtik, a Beatles- és az Elvis-rajongók között is
számításba vettük. A hibát helyrehozandó, adjuk hozzá a végeredményhez
azoknak a diákoknak a számát, akik két sztár képeit gyűjtik. Az eredmény
így 40 — (18 + 16 + 12) + (7 + 5 + 3). Ezúttal azonban már óvatosabbak
42 2. KOMBINATORIKUS MÓDSZEREK

vagyunk, és nem akarunk újra ugyanabba a csapdába esni. Mi van azzal a 2


tanulóval, aki mindhárom sztárért odavan? Őket ez idáig háromszor kivon­
tuk és háromszor visszaadtuk - így aztán újra ki kell őket vonnunk. Ezzel
végül a
4 0 - (18 + 16+ 12) + (7 + 5 + 3) —2 = 7 (2.4)
eredményt kaptuk, amelyben már - akárhonnan nézzük - semmi hibát nem
találunk. Mindazonáltal óvatosnak kell lennünk, elvégre a példák alapján
biztosak lehetünk abban, hogy az ördög nem alszik. Egy egzakt, matemati­
kai bizonyítást azonban még az ördög sem tud kikezdeni, ilyenre van tehát
szükségünk.
Képzeljük el, hogy valaki listát készít az osztály tanulóiról a gyűjtési szo­
kások nyilvántartására. A 2.1. táblázat a lista néhány jellegzetes sorát tünteti
fel, minden sor egy-egy tanulónak felel meg.

Név Bonusz Beatles Stones Elvis BS BE SE BSE


Andrea 1 0 0 0 0 0 0 0
Béla 1 -1 0 0 0 0 0 0
Csaba 1 -1 -1 0 1 0 0 0
Dóra 1 -1 0 -1 0 1 0 0
Erzsi 1 -1 -1 -1 1 1 1 -1

2.1. táblázat. A gyűjtők (kissé különös) nyilvántartása.

A táblázat kissé bolondosnak tűnik (de van benne logika). A furcsaságok


a következők. Először is, adunk egy bonuszt mindenkinek. Másodszor, ha
valaki többféle képet gyűjt, azt külön oszlopban is rögzítjük (BS például
a Beatles és a Rolling Stones képeit egyaránt gyűjtőknek van fenntartva,
annak ellenére, hogy ez az előző három oszlopból már kiolvasható). Nem
hagyományos az „ikszelés” sem: a páratlan kedvencet feltüntető oszlopokban
—1, a páros számú kedvencek oszlopaiban pedig 1 a jelölés.
A táblázat elemeinek összegét kétféle módon is kiszámítjuk. Hogyan szá­
míthatók ki a sorösszegek? Andrea esetében az eredmény 1, a többieknél
viszont 0. Ez nem véletlen egybeesés. Az Andreához hasonló, semmilyen
képet nem gyűjtő tanulók csupán bónuszpontot kapnak, a többi oszlopban
nevük mellett 0 áll, a soruk összege így 1. Tekintsük ezután Erzsit, aki mind­
három sztár képeit gyűjti. Ő kap 1-et a bónuszoszlopban, a következő három
oszlopban viszont egyaránt —1-et, az ezután következő („kétkedvences”) osz­
lopokban pedig háromszor 1-et. Az utóbbi 3-ast helyes, ha (^-nek tekintjük.
Erzsi sora (3) darab (azaz 1) —1-essel végződik, a sor összege tehát:
2.3. A SZITAFORMULA 43

hasonlóan számíthatjuk ki Béla, Csaba és Dóra sorösszegét is:

1- = 0 Béla (1-féle kép),

1- Csaba és Dóra (2-féle kép).

Ha a negatív előjelű tagokat az egyenlőség másik oldalára rendezzük, ak­


kor olyan egyenletet kapunk, amelynek kombinatorikus értelmezése nyilván­
való: tetszőleges n elemű halmaznak ugyanannyi páros elemszámú részhal­
maza van, mint páratlan elemszámú. így például

Aki megoldotta az 1.3.3. feladatot, már tudja, hogy az állítás minden n > 1
esetén igaz.
Látjuk tehát, hogy az egy sorban szereplő számok összege minden olyan
tanuló esetében, aki gyűjt valamilyen képet, 0, azoknál pedig, akik a rajongás
más módját választották (vagy nem rajonganak), 1. Mivel pedig 40 sor van,
a sorok összege azt mutatja, hogy hányán vannak, akiknek nincs képük sem
a Beatlesről, sem a Stonesról, sem Elvisről.
Másodszor kezdjük az oszlopokkal. A bónuszoszlopban szereplő 40 darab
1-es összege 40, a Beatles-oszlopban 18 darab —1-est találunk, a következő
két oszlopban 16, illetve 12 darab —1-est számolhatunk össze. A következő
három („kétkedvences”) oszlopban rendre 7, 5, és 3 darab 1-es áll, végül
az utolsó oszlopban 2 darab —1-est találunk. A (2.4) egyenlet bal oldalán
szereplő tagokat kaptuk tehát, méghozzá a megfelelő előjelekkel.
Ezt a képletet szitaformulának (alkalmanként a tartalmazás és kizárás
elvének) nevezzük. Az elnevezés magyarázata a következő: objektumok egy
nagy halmazával indulunk, majd „kiszitáljuk” közülük azokat, amelyeket nem
akarunk számításba venni.
A módszer arra az esetre is kiterjeszthető, amikor a kedvencek száma
nem 3, hanem 4, 5, vagy valamilyen más szám. Az általános tétel kimondása
helyett (ami egyébként is hosszadalmas lenne) megelégszünk néhány példával
és feladattal.

2.3.1. Egy csupa fiúból álló osztályban 18-an sakkoznak, 23-an fociznak, 21-en
bicikliznek és 17-en túráznak. Tudjuk, hogy 9 olyan fiú van, aki sakkozik és focizik,
7, aki sakkozik és biciklizik, 6, aki sakkozik és túrázik, 12, aki biciklizik és focizik,
9-en fociznak és túráznak, és 12-en vannak, akik bicikliznek és túráznak is. A
sakkot, a focit és a biciklizést 4-en, a sakkot, a focit és a túrázást 3-an, a sakkot,
a biciklizést és a túrázást 5-en, a focit, a biciklizést és a túrázást 7-en tekintik
kedvenc szabadidős elfoglaltságuknak. Van 3 olyan fiú, aki mindegyik sportnak
hódol. Tudjuk végül, hogy a négy közül legalább az egyiket mindegyik fiú űzi.
Hány fiú van az osztályban?
44 2. KOMBINATORIKUS MÓDSZEREK

2.4. A skatulyaelv
Találhatunk-e New Yorkban két olyan embert, akinek pontosan ugyanannyi
szál haja van? Honnan tudhatnánk a választ? Elvégre a legtöbben azt sem
tudjuk, hogy a saját fejünkön hány hajszál van, a New York-i lakosokról
(akiknek a pontos számát még megbecsülni is nehéz) nem is beszélve. Van
azonban néhány információ, amelyre támaszkodhatunk. Először is, tudomá­
nyos tény, hogy egyetlen embernek sincs 500 ezernél több szál haja, másod­
szor a New York-i lakosok száma minden bizonnyal több mint 10 millió.
Ha mármost nem létezne két New York-i lakos, akinek ugyanannyi szál
haja van, akkor legfeljebb egy olyan lehetne köztük, akinek 0 szál haja van
(szokás őket kopasznak nevezni), legfeljebb egy, akinek 1 szál, és így to­
vább. .. végül legfeljebb egy olyan lehet, akinek fejét (pontosan) 500 ezer
szálból álló hajkorona ékesíti. Ez azonban azt jelenti, hogy New Yorknak
legfeljebb 500 001 lakosa lehet. Mivel tudjuk, hogy nem ez a helyzet, levon­
hatjuk a következtetést: bizonyos, hogy van New Yorkban két ember, akinek
ugyanannyi szál haja van.1
A megoldást a következőképpen fogalmazhatjuk át. Képzeljünk el 500 001
hatalmas skatulyát. Az elsőnek a címkéje: „New York 0 hajszálú lakosai”,
a másodiké: „New York 1 hajszálú lakosai”. .. az utolsóé pedig „New York
500 000 hajszálú lakosai”. Ha most mindenkit az őt megillető skatulyában
szállásolunk el, akkor mind a 10 millió lakos belekerül valamelyik skatulyába.
Mivel azonban csupán 500001 skatulyánk van, biztosan lesz legalább egy,
amelyben egynél többen szoronganak. Az elvre gyakran hivatkozunk, így
célszerű, ha általánosan is kimondjuk:

Ha n skatulyában n-nél több objektumot helyezünk el, akkor lesz legalább


egy olyan skatulya, amelybe egynél több objetum kerül.

Ezt az állítás nevezzük skatulyaelvnek. Alapgondolata egyszerű és magától


értetődő, mégis megérdemli, hogy külön nevet kapjon, mivel a kombinatori­
kai bizonyításokban lépten nyomon előfordul. A későbbiekben számos példát
látunk majd a skatulyaelv alkalmazására. Kezdjük rögtön eggyel (ez nem té­
tel ugyan, „csak” egy részletesen kidolgozott példa).

Egy 70 cm oldalhosszúságú négyzet alakú céltáblára 50 lövést adunk le.


Jól célzunk, egyetlen lövésünk sem kerüli el a táblát. Igazoljuk, hogy a
találati pontok között van két olyan, amelynek távolsága kisebb, mint
15 cm.

1A megoldás érdekessége, hogy bár beláttuk, hogy van két, ugyanannyi hajszállal rendel-
kező New York-i, de a legcsekélyebb elképzelésünk sincs arról, hogyan találhatnánk meg
őket. (Hiába gyanítanánk két - nem kopasz - lakosról azt, hogy ugyanannyi hajszáluk
van, gyanúnk igazolása lényegében lehetetlen.) Az ilyen bizonyításokat a matematikusok
tiszta egzisztenciabizonyításoknak nevezik.
2.4. A SKATULYAELV 45

Megoldás: Tekintsük céltáblánkat egy ütött-kopott sakktáblának, amelynek


egy sora és egy oszlopa már hiányzik, a mezők száma így nem 64, hanem
49. Mivel mind az 50 lövés céltáblát ért, kell lennie olyan mezőnek, amelyen
legalább két lövedék nyomot hagyott. Belátjuk, hogy két ilyen találati pont
távolsága kisebb, mint 15 cm.
„Sakktáblánk” minden mezője 10 cm oldalú négyzet, egy ilyen négyzet
átlója Pitagorasz tétele szerint v/2ÖÖ ~ 14,1 cm. Belátjuk, hogy
(*) a két pont távolsága nem lehet nagyobb a négyzet átlójánál.
A szemlélet számára persze nyilvánvaló, hogy egy négyzet két pontjának
távolsága nem lehet a négyzet átlójánál nagyobb, a szemlélet azonban fél­
revezető is lehet, így az állítást be is bizonyítjuk. Tegyük fel tehát, hogy
négyzetünk P és Q pontjainak távolsága nagyobb, mint a négyzet átlójának
hossza. Jelöljük a négyzet csúcsait az A, B }C és D betűkkel. Rajzoljuk be az
ábrába a P és a Q ponton átmenő egyenest, ez az egyenes a négyzet oldalait
a P' és a Q' pontokban metszi (1. a 2.2. ábrát). A P'Q ' szakasz ekkor nyilván
hosszabb, mint a PQ szakasz, minek következtében - feltevésünk szerint -
hosszabb az átlónál is.
46 2. KOMBINATORIKUS MÓDSZEREK

négyzet átlója. Ez azonban már olyan szakasz, amelynek mindkét végpontja


a négyzet csúcsa. A szakasz tehát vagy oldal, vagy átló - de egyik esetben
sem lehet hosszabb az átlónál! Az ellentmondás azt bizonyítja, hogy a (*)
jelű állítás igaz.
Ezzel tehát beláttuk, hogy lesz két olyan találati pont, amelyek 15 cm-nél
közelebb helyezkednek egymáshoz, só't azt is, hogy távolságuk kisebb, mint
14,2 cm. A feladatot megoldottuk.
Ha az Olvasó most találkozott először ilyen típusú gondolatmenettel, ak­
kor lehet, hogy meglepődött. A bizonyítandó állítást ugyanis nem közvet­
lenül láttuk be, hanem feltettük, hogy hamis, és ebből a feltevésből egy
ellentmondást vezettünk le. Az ilyen gondolatmeneteket nevezzük indirekt
bizonyításnak. Az indirekt bizonyítások a matematikában - miként ebben a
könyvben is - lépten-nyomon előfordulnak. (A matematikusok furcsa teremt­
mények: hosszadalmas levezetéseket találnak ki olyan feltevésekből kiindulva,
amelyek meggyőződésük szerint hamisak - és madarat lehet fogatni velük,
amikor a levezetett állítások között egymásnak ellentmondókra bukkannak!)

2.4.1. Bizonyítsuk be, hogy van legalább 20 New York-i lakos, akinek ugyanannyi
szál haja van.

2.5. Az „ikerparadoxon” és a jó öreg logaritmus


Miután a tanár elmagyarázta a skatulyaelvet, egy játékos feladvánnyal dobta
fel a hangulatot.
- Fogadok bárkivel, hogy ebben a teremben van legalább két ember, aki­
nek ugyanakkor van a születésnapja!
Néhány diák azonnal jelentkezett:
- Mivel 366 lehetséges születésnap van, csak akkor lehetne biztos a győzel­
mében, ha legalább 367-en lennénk. Mivel azonban csupán 50-en vagyunk, a
professzor úr veszíteni fog.
így aztán állták a fogadást - a tanár pedig nyert.
Mi a dolog magyarázata? Először is, ha a teremben van legalább 367 diák,
akkor a tanár biztosan nyer. A fogadáshoz azonban nincs szükség abszolút
bizonyosságra, elegendő, ha a győzelem esélye elegendően nagy. Elvégre még
366 diák esetén is előfordulhat, hogy a tanár veszít, hogyan lehet tehát, hogy
már 50 diák esetén az ő nyerési esélyei nagyobbak?
A megdöbbentő válasz a következő: a tanár nyerési esélye már 23 diák
esetén meghaladja az 50%-ot! Ezt nevezhetnénk valószínűségi skatulyaelvnek
is, mégis inkább ikerparadoxon néven emlegetjük.
Próbáljuk kiszámítani a tanár nyerési esélyeit. Tegyük fel, hogy a tanár
az osztálynapló alapján listát készít a diákok születésnapjáról. A listáján 50
nap szerepel. Az 1.5. alfejezetben kifejtettek alapján 36650 különböző ilyen
lista létezik.
2.5. AZ „IKERPARADOXON” ÉS A JÓ ÖREG LOGARITMUS 47

Hány olyan van ezek között, amelyben a tanár veszít? Ilyen kérdésekkel
az 1.7 alfejezetben már foglalkoztunk, így azonnal megmondhatjuk a választ:
366 • 365 • ■• 317. Annak valószínűsége tehát, hogy a tanár veszít1
366-365-■-317
36650 '
Számítógép (vagy programozható számológép) segítségével a tört értékét
közvetlenül is meghatározhatjuk, mi azonban általánosabb megoldást sze­
retnénk: olyan felső és alsó becslést, amely az általános esetben - amikor a
születésnapok száma n, a diákoké pedig k - is működik. Kérdésünk tehát a
következő: mekkora az
n(n —1) ■• • (n —k + 1)
nk
tört? Célszerű, ha a tört (1-nél nagyobb)

n(n - 1) ■• • (n - k + 1) y '
reciprokával foglalkozunk. Ezt n-nel egyszerűsíthetjük ugyan, de hogy ezután
mi a teendő, az korántsem nyilvánvaló. Észrevehetjük mindazonáltal, hogy a
számlálóban és a nevezőben ugyanannyi tényező szerepel, így kifejezésünket
szorzat alakban is felírhatjuk:
nk n n n
n(n — 1) • ■• (n —k + 1) n — 1 n —2 n —k + 1'
Ezek a tényezők meglehetősen egyszerűek, de a szorzatuk nagyságát még
mindig nem könnyű megbecsülni. Minden tényező nagyobb, mint 1, bár - az
első néhány legalábbis - nem sokkal. Mivel azonban sok tényező van, nem
lehetetlen, hogy a szorzatuk elég nagy.
A következő ötlet már segít: vegyük a logaritmust!12 így az

>” —1)..'V t + l |) = 1,1( t m ) + ln ( ír h ) + ■"


+ ln( u - t + i) (2-6)
kifejezést kapjuk. Természetesen a természetes - vagyis az e = 2, 71828 ... -
alapú logaritmussal számolunk. Kifejezésünk már valóban összeg, de a tagok
kissé különösek. Tudunk-e valamit a logaritmusról, ami segítségünkre lehet?

1Itt azzal az egyszerűsítéssel élünk, hogy m inden születésnap egyform án valószínű. Ez


nyilvánvalóan nem igaz: február 29-e például feltehetően sokkal ritk á b b an fordul elő, m int
az év tö b b i n a p ja . M ásféle (ennél lényegesen kisebb) eltérések a tö b b i n a p valószínűségében
is lehetnek, ezekről azonban b e lá th ató , hogy a ta n á r esélyeit növelik.
2Elvégre a logaritm ust B uergi és N apier épp en a zért v ezette be (a 17. században), hogy
segítségével a szorzást az összeadásra vezethessük vissza, és gyorsabban elvégezhessük.
48 2. KOMBINATORIKUS MÓDSZEREK

3
(

2.3. ábra. Az e alapú logaritmusfüggvény grafikonja; 1-hez közeli értékek


esetén a grafikon az x — 1 egyenletű egyenes közelében halad.

A 2.3. ábrán a logaritmusfüggvény grafikonját, valamint az y = x — 1


egyenletű egyenest vehetjük szemügyre. Látható, hogy a függvény grafikonja
az egyenes alatt helyezkedik el, és hogy az egyenest az x = 1 helyen érinti
(amint azt igazán elemi analízisismeretek alapján is beláthatjuk). Érvényes
tehát az
In x < x —1 (2.7)
egyenlőtlenség. Milyen pontos ez az alsó becslés? Az ábra szerint az 1-hez
közeli x-ek esetében a két grafikon távolsága meglehetősen kicsi. Ezt egyszerű
számolással is alátámaszthatjuk:

( 2. 8)

Ha x (a (2.6) kifejezésben szereplő tagokhoz hasonlóan) sokkal nagyobb, mint


1, akkor csupán kevéssel nagyobb, mint x —1, akkor a (2.7) egyenlőség
szerinti felső, illetve a (2.8) egyenlőtlenségbeli alsó becslés elég közeli.
A logaritmusfüggvény értékeire vonatozó korlátokra a későbbiekben több­
ször is hivatkozunk, így eredményünket egy lemmában rögzítjük. (A lemmák
is precíz matematikai állítások, a tételektől abban különböznek, hogy álta­
lában nem önmagukban, hanem egy tétel bizonyításában játszott szerepük
m iatt érdekesek. Természetesen sok olyan lemma van, amelyik számos tétel­
nél érdekesebb!)
2.5. AZ „IKERPARADOXON” ÉS A JÓ ÖREG LOGARITMUS 49

2 .5 .1 L e m m a . Minden x > 0 esetén fennáll, hogy

x —1
< In x < x —1.
x

A lemma szerinti alsó korlát segítségével most alsó becslést adunk a (2.6)
kifejezésre. Egy tipikus tagra például azt kapjuk, hogy

- 1
In > l
5
n
n -j

amiből

^ 1 2 k —1
( ______ oL______ ) > | |- . . . H---------------
\ n ( n — 1). . .{n — k + 1)) n n n
k{k —1)
— —(1 + 2 + • • • -}- (k —i)) =
n 2n
(emlékezzünk az ifjú Gaussnak adott feladatra). A felső becsléshez szintén a
lemmát használjuk; az általános tag eszerint

In ( ———^ < ——----- 1. = —í-— .


\n -jj n-j n-j

Ezeket a kifejezéseket kell tehát a j = í , . . . , k — 1 esetben összadnunk, hogy


megadjuk a (2.6) kifejezés egy felső korlátját. Ez nem olyan egyszerű, mint
az ifjú Gauss problémája, mivel a nevező is változik. Mivel azonban csak
egy felső korlátot keresünk, megtehetjük, hogy valamennyi tört nevezőjét
az előforduló legkisebbre, jelesül n — k + 1-re cseréljük. Mivel j / { n - j) <
< j / ( n —k + 1), azt kapjuk, hogy

______ ________ \ „ 1 2 k- 1
In < -------------- 1---------------- ---------------------
n(n — 1) • • • (n —k + 1)) n —k + í n —k + 1 n —k + 1

= n - f c + l (1 + 2 + '-- + (fc“ 1)) =


k(k —1)
2(n —k + 1)

A (2.5) kifejezést tehát alulról és felülről is sikerült megbecsülnünk, még­


hozzá meglehetősen hasonló kifejezésekkel. Alkalmazzuk az exponenciális
függvényt:

fc(fc-l) k(fc-l)
6 2n < < e 2(n—/c+l) _ (2.9)
n(n —1) • ■• (n —k + 1)
50 2. KOMBINATORIKUS MÓDSZEREK

Közelebb jutottunk-e a tanár „trükkjének” megértéséhez? A (2.9) egyen­


lőtlenségekbe n = 366-ot és k = 50-et helyettesítve azt kapjuk, hogy

36650
28,4 < < 47, 7.
366-364-•-317
(A pontos érték, mint az kissé hosszadalmasabb számítással megállapítható,
3 3 ,4 1 4 ....) Annak valószínűsége tehát, hogy a teremben minden gyermek
születésnapja különböző, kisebb, mint 1/28. Ez azt jelenti, hogy amennyiben
a tanár pályafutása során minden évben felajánlja a fogadást, legföljebb egy­
két esetben fog csak veszíteni.

Á ttekintő feladatok
2.5.1. Mekkora a következő összeg?
1 1 1 1
T ő 2 + 2~3 + 3 4 + ' ' ' + (n - 1) • n

Próbálgassunk, „találjuk ki’' a megoldást, majd sejtésünket bizonyítsuk be induk­


cióval.

2.5.2. Mekkora a következő összeg?

Próbálgassunk, „találjuk ki” a megoldást, majd sejtésünket bizonyítsuk be. (Az


indukciós bizonyítás mellett keressünk kombinatorikus igazolását is.)

2.5.3. Bizonyítsuk be az azonosságokat:

1 • 2° + 2 • 21 + 3 ■22 + ... + n • 2"_1 = (n —l)2n + 1;


13 n2(n + l)2
1 +, <-)3
2 +, 3q 3 +i . . . +i n 3
= 4 ’
_ 3" - 1
1 + 3 + 9 + 2 7 + . . . + 3n_1
2 '
2.5.4. n szerinti indukcióval igazoljuk, hogy
(a) n2 —1 páratlan ?r-ek esetén mindig osztható 4-gyel, és hogy
(b) rí3 —n minden n esetén 6 többszöröse.

2.5.5. Egy osztályba 40 lány jár. Közülük 18-an sakkoznak, 23-an fociznak és
vannak, akik kerékpároznak. A sakkozó és focizó lányok száma 9, a sakkozó és
biciklizőké 7, a focizó és biciklizőké pedig 12. Van 4 lány, aki sakkozik, focizik és
biciklizik is. Tudjuk továbbá, hogy valamelyik szabadidős tevékenységnek minden
lány hódol. Hány lány biciklizik?
2.5. AZ „IKERPARADOXON” ÉS A JÓ ÖREG LOGARITMUS 51

2.5.6. Egy osztályba csak fiúk járnak; a sakkozók száma a: a focizóké b, a kerék­
pározóké c, a túrázóké pedig d. A sakkozó és bicikliző fiúk száma x, a sakkozó és
túrázóké y, a focizó és biciklizőké u, a focizó és túrázóké v, a bicikliző és túrázóké
pedig w. Nem tudjuk, hogy hány fiú van, aki - például - sakkozik, focizik és túrá­
zik is, de ismert, hogy legalább az egyik tevékenységet mindegyikük kedveli. Arra
vagyunk kíváncsiak, hogy hány fiú jár az osztályba.
(a) Mutassuk meg példák segítségével, hogy információink alapján a kérdést
nem tudjuk megválaszolni.
(b) Igazoljuk, hogy az osztálylétszám legfeljebb a + b + c + d, és legalább a + b +
+ c + d —x —y —z —u —v —w.

2.5.7. Kiválasztunk 38, egyaránt 1000-nél kisebb pozitív egész számot. Igazoljuk,
hogy van köztük 2, amelynk különbsége legfeljebb 26.

2.5.8. Egy fiókban 6 pár fekete, 5 pár fehér, 5 pár piros és 4 pár zöld zokni van.
(a) Legalább hány zoknit kell kivennünk a fiókból, hogy biztosan legyen közöttük
két egyforma színű?
(b) Legalább hány zoknit kell kivennünk a fiókból, hogy biztosan legyen közöttük
két különböző színű?
3. fejezet

A binomiális együtthatók és
a Pascal-háromszög

3.1. A binomiális tétel


Az 1. fejezetben bevezettük a (£) jelölést, és az így jelölt számokat binomiális
együtthatóknak neveztük. Eljött az ideje, hogy számot adjunk e különös elne­
vezés eredetéről. A binomiális együtthatók egy nevezetes algebrai azonosság
„főszereplői”; most ez az azonosság kerül először terítékre.
Képzeljük el, hogy az (x + y) kifejezés hatványait kell kiszámítanunk.
Kezdjük néhány példával:

(x + y)2 = x 2 + 2xy + y 2}
(x + y)3 = {x + y ) - { x + y)2 = (x + y) ■{x2 + 2xy + y 2) =
= x 3 + 3x 2y + 3x y 2 + y3,

és így folytathatjuk:

{x + y)4 = {x + y) ■(x + y)3 — x 4 + 4x 3y + 6x 2y2 + 4x y 3 + y4.

Az azonosságokban szereplő együtthatókat már ismerjük! Találkoztunk


velük - például - az 1.8.2. feladatban mint az (£) számokkal. Az egybeesés
nem véletlen. Ezt a következő, n = 5 esettel támasztjuk alá, gondolatmene­
tünk azonban általános érvényű.
Végezzük el tehát az

(x + y)5 = {x + y){x + y){ x + y){x + y)(x + y)

hatványozást. A szorzások eredménye olyan kifejezés, amelynek minden tag­


ját úgy kapjuk, hogy az 5 tényező mindegyikéből egy tagot választunk ki.
3.1. A BINOMIÁLIS TÉTEL 53

Ha például az x-et 2-szer választjuk, akkor y-t 3-szor kell választanunk; így
kapjuk az x 2y3 tagokat. Hány ilyen tag lesz? Annyi, ahányféleképpen 3 ténye­
zőből az y-t tudjuk választani (a maradék 2 adja az x2-et). Öt lehetőségből
hármat kell tehát kiválasztanunk, ezt pedig (°)-féleképpen tehetjük meg.
Az (x + y)5 „kifejtése” ennek megfelelően

(x+y)5=(o)* + 5 ( i ) x 4y + CD®3*'2*(s)a:V+G)v+(s)2"5-
Ugyanezzel a gondolatmenettel egyúttal az általános esetet, vagyis a bi­
nomiális tételt is beláthatjuk:

3.1.1. T é t e l . (B inom iális té te l) A z x n ky k tag együtthatója az (x+ y)n


hatvány „kifejtésében” (£); érvényes tehát az

( x+y) n = 2y2 + '

azonosság.
Ezt a fontos azonosságot a nevezetes perzsa költő-matematikus, Ornar
Khayyam (10447-1123?) fedezte fel. A tétel neve a „kéttagú kifejezést” jelentő
görög pivoy szóból ered (esetünkben a „binorn”: x + y). Az (”) számok neve
- binomiális együttható - az ebben a tételben játszott szerepekükből ered.
A binomiális tételt több, a binomiális együtthatókra vonatkozó algebrai
összefüggés bizonyítására is felhasználhatjuk. Az x = y = 1 helyettesítéssel
például a (1.9) azonosságot kapjuk:

Később ugyanezt a gondolatot trükkösebb levezetésekben is felhasználjuk,


egyelőre elégedjünk meg a 3.1.2. feladattal.

3.1.1. Bizonyítsuk be a binomiális tételt teljes indukcióval az (1.8) összefüggés


alapján.

3.1.2. (a) Igazoljuk a

azonosságot. (Az összeg utolsó tagja (") = 1, amelynek előjele attól függ,
hogy az n szám páros-e vagy páratlan.)
(b) Az azonosság nyilvánvaló, ha n páratlan. Miért?

3.1.3. Igazoljuk a 3.1.2. feladatbeli azonosságot a pozitív és a negatív tagok kom­


binatorikus interpretációja alapján.
54 3. A BINOMIÁLIS EGYÜTTHATÓK ÉS A PASCAL-HÁROMSZÖG

3.2. Ajándékosztás
Tegyük fel, hogy n különböző ajándékot akarunk k gyermek között eloszatni
úgy, hogy tudjuk, melyik gyereknek hány ajándékot kell kapnia. így tehát
a kis Ádámnak dám, Barbarának nsarbara ajándékot kell adnunk. A ma­
tematikában szokásos (nem túlságosan bensőséges) jelölést használva a gye­
rekekre az 1, 2, . . . , k számokkal hivatkozunk, az n i, n 2 , ■■., rifc nemnegatív
számok így azt jelzik, hogy melyik gyerek hány ajándékot kap. Feltesszük,
hogy n\ + ri2 + . • • + nfc = n, elvégre az összes ajándékot ki akarjuk osztani.
A kérdés mármost természetesen a következő: hányféleképpen oszthatjuk
ki az ajándékokat?
Az ajándékok kiosztása a következőképpen is történhet. Az ajándékokat
egy n hosszúságú sorba rakjuk. Az első gyermek kapja (balól számolva) az
első ni ajándékot, a második a következő n 2 darabot, a harmadik a következő
ri3-at stb. A k (jelű) gyerek kapja az utolsó rifc darab ajándékot.
Világos, hogy egy sorrend rögzítésével azt is meghatároztuk, hogy me­
lyik gyermek melyik ajándéko(ka)t kapja. Az ajándékokat ni különböző sor­
rendbe rakhatjuk. Ez azonban nyilván nagyobb szám, mint az általunk ke­
resett megoldás, elvégre sok olyan sorrend van, amely ugyanazt az elosztást
határozza meg (vagyis nem különbözik abban, hogy melyik gyermek melyik
ajándékokat kapja). A kérdés már csak az, hogy hány ilyen, a szempontunk­
ból nem különböző sorrend létezik.
Induljunk ki tehát az ajándékok egy elosztásából és kérjük meg a gyere­
keket, hogy rakják szépen sorba, amit kaptak; a sort az első gyerek aján­
dékai kezdik, aztán jönnek a másodikéi, majd a harmadikéi stb. így meg­
kapjuk az elosztást eredményező egyik lehetséges sorrendet. Az első gyermek
nil-féleképpen, a második n 2!-féleképpen... rakhatja sorba az ajándékait. Az
összes gyermek az összes ajándékot ennek megfelelően

ni! ■n 2! • ■•n *,!

különböző sorrendbe rakhatja le, az ajándékokat tehát


n!
ni!n2! • • •n*,!
féleképpen oszthatjuk ki.

3.2.1. Az ajándékok elosztásának lehetőségeit a következőképpen is meghatároz­


hatjuk. Először kiválasztjuk az első gyermeknek szánt ni darab ajándékot, ezt
(^ )-féleképpen tehetjük meg. Ezután a maradék n —m ajándékból kiválasztjuk
a második gyermek n2 darab ajándékát és így tovább.
Egészítsük ki a gondolatmenetet, és igazoljuk, hogy az eredmény ugyanaz, mint
amit az imént kaptunk.

3.2.2. A következő speciális esetek - a már megoldott problémák alapján - jó


ismerőseink kell hogy legyenek. Magyarázzuk meg, miért.
3.3. ANAGRAMMÁK 55

(a) n = k, ni = ri2 = ... = rik = 1;


(b) m = n 2 = ... = nk-i = 1, nk = n - k + 1;
(c) k = 2;
(d) k = 3, n = 6, ni = U2 = nz = 2.

3.1. ábra. Nyolc „békés” bástya elhelyezése a sakktáblán.

3.2.3. (a) Hányféleképpen helyezhetünk el a sakktáblán 8 bástyát úgy, hogy


semelyik kettő ne támadja egymást (3.1. ábra)? (Feltesszük, hogy a bástyák
egyformák, ha tehát kettőt felcserélünk, az az elhelyezésen nem változtat.)
(b) Hány különböző elhelyezés van, ha nyolc bástyánk van, amelyek közül négy
elefántcsontból, négy pedig ébenfából készült?
(c) Hányféleképpen helyezhetjük el a nyolc bástyát, ha a figurák között nincs
két egyforma?

3.3. Anagrammák
Készített-e már az Olvasó anagrammát? A játék során kiválasztunk egy szót
- mondjuk azt, hogy kombinatorika és megpróbálunk olyan szavakat vagy
mondatokat képezni belőle, amelyekben minden egyes betűt (pontosan egy­
szer) felhasználunk, és amelyek lehetőség szerint még mulatságosak is.
Elképzelhetjük például a Pál utcai fiúknak azt a változatát, amelyben
elhangzik a következő párbeszéd:
- M IK O R O N T A B I K A ?
- A M I K O R B O K A INT.
56 3. A BINOMIÁLIS EGYÜTTHATÓK ÉS A PASCAL-HÁROMSZÖG

Ezek a mondatok még (többé-kevésbé) értelmesek, ami azonban - mond­


juk - az I K A B O M R A N T O „szóról” már nemigen mondható el. Az ilyen prob­
lémák felmerülését eleve kizárhatjuk, ha minden anagrammát helyesnek te­
kintünk. Ezzel az anagrammagyártás meglehetősen érdektelen elfoglaltsággá
válik - de legalább meg tudjuk mondani, hány különböző anagramma létezik.

3.3.1. Hány a n a g r a m m á t készíthetünk a k o m bina tor ik a szóból?

3.3.2. Tárgyunk angol ( c o m b i n a t o r i c s ) vagy latin ( c o m b i n a t o r i c a ) nevéből


készíthető több anagramma?

3.3.3. Melyik 13 betűs „szavakból” készíthető a legtöbb anagramma? Melyekből


a legkevesebb?

Térjünk rá az általános anagramma-feladatra. Aki megoldotta az iménti


feladatokat, annak nyilvánvaló: egy n-betűs „szóból” kirakható anagrammák
száma attól függ, hogy a szóban hány betű hányszor ismétlődik. Tegyük fel
tehát, hogy ábécénk k betűből áll (a , B, C,..., z ), és hogy a vizsgált n-betűs
szóban ni darab A betű (ahol n i természetesen 0 is lehet), ri2 darab B betű...
és n^. darab Z betű van. Nyilvánvaló, hogy fennáll n i+ n 2 + ... + nfc = n.
Egy anagramma kirakásakor ezek szerint az A betűt ni, a B - t n .2 ,-. . a Z- t
pedig n.fc különböző helyre írhatjuk. Ezen a ponton pedig már nyilvánvaló: a
feladat ugyanaz, mintha n ajándékot k gyermek között kellene elosztanunk,
előírva, hogy melyik gyereknek hány ajándékot kell kapnia. A válasz tehát
az előző alfejezetben mondottak szerint
n!
n iln 2! • ■-n k\

3.3.4. Világos, hogy a t e j j e l és a v a j j a l szavakból ugyanannyi (6!/(2!2!) = 180)


anagramma készíthető. Ezeket a szavakat (az anagrammák szempontjából lega­
lábbis) „lényegileg azonosnak” nevezhetjük: mindkettőben két-két betű van, ame­
lyik kétszer, és további kettő, amelyik egyszer fordul elő. Nevezzünk két szót „lé­
nyegileg különbözőnek”, ha nem lényegileg azonosak.
(a) Hány hatbetűs (nem feltétlenül értelmes) szó van? (Az ábécé 35 betűből áll.)
(b) Hány hatbetűs szó van, amely lényegileg azonos a t e j j e l szóval?
(c) Hány lényegileg különböző 6-betűs szó létezik?
(d) Általánosítsuk a (c) feladatot, és állapítsuk meg, hány lényegileg különböző
n-betűs szó létezik. (Ha nem sikerül megoldani, ne keseredjünk el: a követ­
kező alfejezet elolvasása után a siker reményében térhetünk rá vissza.)

3.4. Pénzosztás
Ajándékok helyett most osszunk pénzt. Tegyük fel rögtön az általános kér­
dést: hányféleképpen oszthatunk szét n darab százforintost k gyerek között?
3.4. PÉNZOSZTÁS 57

í ) { £ A í t M © ® ©©©
A B C D

3.2. ábra. Hányféleképpen oszthatunk szét n százforintost k gyereknek?

Minden gyereknek kapnia kell legalább egy százforintost (és nincs kisebb
egység, így minden gyermek 100 egész számú többszörösével gazdagodik).
Hányféle elosztás lehetséges?
Mielőtt válaszolnánk a kérdésre, vizsgáljuk meg, miben különbözik a pénz-
és az ajándékosztás. Az ajándékok esetében nem csupán azt kell eldöntenünk,
hogy melyik gyerek hány ajándékot kap, de azt is, hogy melyik ajándékokat
kapja. A pénz esetében viszont csupán a mennyiség számít. Másszóval: az
ajándékok megkülönböztethetők, a százforintosok viszont nem. (A 3.2. alfe-
jezetben tárgyalt kérdés itt föl sem merül: ha n darab százforintosunk van,
és az első gyereknek ni, a másodiknak ri2 - ■.darabot adunk, akkor csupán
egyetlen lehetőségünk van.)
Problémánk ugyan eltér az ajándékosztástól, a megoldás azonban hasonló.
Sorba rakjuk a százforintosokat (mindegy milyen sorrendben, elvégre mind
egyforma). Kiszólítjuk az első gyereket, és engedjük, hogy (balról kezdve)
néhányat eltegyen. Amikor úgy érezzük, hogy már eléggé tele van a zsebe,
helyre küldjük, és kiszólítjuk a másodikat (3.2. ábra). Az elosztást egyértel­
műen meghatározhatjuk, ha megmondjuk, mikor jön a következő gyermek.
A százforintosok között n —1 elválasztó hely van, ahol „jöhet” a következő
gyerek (az első gyermek „kiszólítását” nem kell külön jeleznünk, ő rögtön az
elején sorra kerül). Ebből az (n —1) elemű halmazból kell tehát egy (k — 1)
elemű részhalmazt kiválasztanunk. A lehetőségek száma (£©) •
Eredményünket egy tételben foglaljuk össze.

3.4.1. T é t e l . Ha n egyforma százforintost úgy akarunk k gyerek között


szétosztani, hogy mindegyiküknek kapnia kell legalább egyet, akkor a lehe­
tőségek száma (£© ).
A binomiális együtthatók - teljesen váratlanul - újra felbukkantak!
Ejtsünk néhány szót a feladat azon (kissé igazságtalan) általánosításáról
is, amelyben nem kötjük ki, hogy minden gyereknek kapnia kell legalább egy
érmét (most tehát akár azt is megengedjük, hogy az összes pénzt ugyanaz
a gyerek kapja). Egy ügyes fogással az új problémát az előzőre vezethetjük
vissza. Kérjünk kölcsön valamennyi gyerektől egy százforintost, aztán osszuk
szét az összes - tehát n + k darab - érmét a gyerekek között úgy, hogy minde­
gyik kapjon legalább egyet. Ekkor minden gyerek visszakapja a kölcsönadott
58 3. A BINOMIÁLIS EGYÜTTHATÓK ÉS A PASCAL-HÁROMSZÖG

száz forintját, a szerencsésebbek pedig ezen felül is kapnak valamit. A „több­


let” pontosan n darab százforintos - mindenféle megkötés nélkül k gyerek
között elosztva. Az előzőek szerint pedig n + k darab százforintost k gyerek
között ("j^ ^ 'fe le k é p p e n oszthatjuk el, beláttuk tehát a következő tételt:

3 .4 .2 . T é t e l , n darab egyforma pénzérmét k gyermek között


féleképpen oszthatunk el.

3.4.1. Hányféleképpen oszthatunk el n százforintost k gyerek között, ha kikötjük,


hogy mindegyiküknek legalább két érmét kell kapnia?

3.4.2. El akarunk osztani n darab százforintost k fiú és t lány között úgy, hogy
minden lánynak kapnia kell legalább egy érmét, a fiúkra vonatkozóan viszont nincs
efféle kikötés (az igazságtalanság netovábbja). Hányféleképpen tehetjük ezt meg?

3.4.3. Grófok egy k fős csoportja a kártyaasztal mellett üti az időt és a blattot.
A játék kezdetén mindegyiküknek p pennyje volt. Hajnalban mindegyikük össze­
számolja, hány pennyje maradt. Nem adtak kölcsön egymásnak, így egyikük sem
veszíthetett p pennynél többet. Hányféle különböző záróra lehetséges?

3.5. A Pascal-három szög


A binomiális együtthatók vizsgálatában különösen hasznosnak bizonyul, ha
a számokat háromszög-alakba rendezzük. A „nulladik” sorba (°) kerül, a kö­
vetkezőbe (vagyis az elsőbe) Q és (j), a másodikba Q , Q és (2), és így
tovább. Az n-edik sorban az ("), ( " ) ,..., (") számok kapnak helyet. Úgy
helyezzük el a sorokat, hogy középpontjuk pontosan egymás alá kerüljön; az
így kapott piramisra emlékeztető formát Blaise Pascal (1623-1662) francia
matematikus-filozófus neve után Pascal-háromszögnek nevezzük. A követ­
kező ábra a Pascal-háromszög első néhány sorát mutatja.

Vo)

(? ) (? )
( 2) ( 2 \
lo / (D V2 J
(3) (3 \ (3 \ í 3)
, w ll) V2 J UJ
f4) (4) (4'
le d _ u \2 / (? ) \4 .
(5) ( 5)
(?) U \2 > (? ) (? )

(?) (? ) (? ) (? ) (? ) (? :

Ha a binomiális együtthatók helyébe a számértéküket írjuk, akkor a há­


romszög (első nyolc sora) ilyen alakot ölt:
3.6. AZONOSSÁGOK A PASCAL-HÁROMSZÖGBEN 59

1
1 1
1 2 1
1 3 3 1
1 4 6 4 1
1 5 10 10 5 1
6 15 20 15 6
7 21 35 35 21 7
28 56 70 56 28

3.5.1. Igazoljuk, hogy a Pascal-háromszög szimmetrikus a függőleges tengelyére.

3.5.2. Igazoljuk, hogy a Pascal-háromszög minden sora 1-gyel kezdődik és így is


végződik.

3.6. Azonosságok a Pascal-három szögben


A Pascal-háromszögben azonnal szemünkbe ötlik a legfontosabb jellemzője:
minden eleme (a sorok szélén álló 1-eseket. kivéve) a közvetlenül felette el­
helyezkedő két tag összege. Ezt az összefüggést már ismerjük, az 1.8. fejezet
(1.8) azonosságából:

n —1 n —1
+ (3.2)
k- 1 k
A (3.2) azonosság alapján a Pascal-háromszöget sorról sorra haladva igen
gyorsan előállíthatjuk. Az összefüggés alapján ezen felül a binomiális együtt­
hatók számos tulajdonságát bebizonyíthatjuk, amint azt hamarosan látni is
fogjuk.
Elsőként új megoldást adunk a 3.1.2. feladatra, amelyben a

+ ... + (-1)"' = 0, (3.3)

azonosságot a binomiális tétel alapján kellett belátnunk. Új bizonyításunk­


ban a (3.2) azonosságból indulunk ki. Az ((() helyébe írhatjuk az (" q1)
kifejezést (mindkettő értéke 1), (") helyébe (" q1) + ("ú ^ -et, (”) helyébe
( " í + ("21)"et és fey tovább. így az

n —1 n —1 n —1 n —1 71—1
+
0 0 1 1 2
n —1 n —1 71 —1 71—1
+ ... + (-1 ) + + ( - ir
n —2 71—1 71 —1
60 3. A BINOMIÁLIS EGYÜTTHATÓK ÉS A PASCAL-HÁROMSZÖG

összeget kapjuk, amely nyilván 0, hiszen mindegyik (szögletes) zárójeles ki­


fejezés második tagja a következő ilyen kifejezés első tagjának ellentettje.
A módszer azonban többet nyújt egy már ismert azonosság új bizonyítá­
sánál. Mit kapunk például, ha ugyanígy eljárva váltakozó előjellel összeadjuk
a binomiális együtthatókat, de hamarabb megállunk? Mennyi tehát a követ­
kező összeg?

Az iménti trükköt alkalmazva a következőt kapjuk:

Az utolsó kivételével minden tag kiesik, az eredmény tehát ( ~ l) fc(™fc1)-


A Pascal-háromszög számai közötti meglepő összefüggések sora még foly­
tatható. Kérdezzük most azt, hogy mennyi egy sor elemeinek négyzetösszege?
Próbáljuk ki először, mit kapunk az első néhány sor esetében:

12 = 1,
l 2 + l 2 = 2,
l 2 + 22 + l 2 = 6,
l2 + 32 + 32 + l2 = 20,
l2 + 42 + 62 + 42 + l2 = 70.

Véletlen-e, hogy a Pascal-háromszög szimmetriatengelyének elemeit kaptuk?


Ennek az oszlopnak csak minden második sorból van eleme, az utolsó egyen­
lőségben például azt kaptuk, hogy a negyedik sor elemeinek négyzetösszege
a nyolcadik sor középső eleme. Példáink tehát a

azonosság fennállását sugallják. A példák persze csak illusztrálhatják az ál­


talános szabályt, lássuk tehát a bizonyítást.
Az azonosság mindkét oldalát egy leszámlálási probléma megoldásaként
mutatjuk be, majd igazoljuk, hogy így kétféle módon ugyanazt számoltuk
össze, a két oldal tehát valóban egyenlő. A jobb oldali kifejezés esetében a
kombinatorikus interpretáció nyilvánvaló: egy 2n elemű halmaz n elemű rész­
halmazainak száma. Az egyszerűség kedvéért tekintsük az S = {1,2,..., 2n}
halmazt, amelynek valóban 2n darab eleme van.
3.6. AZONOSSÁGOK A PASCAL-HÁROMSZÖGBEN 61

A bal oldali kifejezés kombinatorikus interpretációját már nem ilyen egy­


szerű megtalálni. Tekintsük például az ()() tagot: belátjuk, hogy ez nem
más, mint az S halmaz azon n elemű részhalmazainak száma, amelyek az
{ l , 2 , . . . , n } halmazból (tehát az S halmaz első n eleme közül) pontosan
k elemet tartalmaznak. Hogyan választjuk ki az S halmaz egy ilyen tulaj­
donságú részhalmazát? Először kiválasztunk k elemet a {1,2,..., n} hal­
mazból, aztán n — k elemet a {n + 1, n + 2 , . . . , 2n} halmazból. Az előbbit
(0)-féleképpen tehetjük meg, és akármelyik k elemet választottuk is ki a
{ 1 , 2 , . . . , n} halmazból, a másodikra ( " fc) lehetőségünk marad. Eszerint
tehát az S halmaznak

olyan n elemű részhalmaza van, amelynek a {1, 2 , . . . , n} halmazból pontosan


k darab eleme van (felhasználtuk a Pascal-háromszög szimmetriáját is).
Ha az S halmaz összes n elemű részhalmazát akarjuk összeszámolni, akkor
ezeket a számokat kell összeadnunk a k = 0 ,1 ,. .. , n értékekkel; ezzel a (3.4)
azonosság bizonyítását befejeztük.

3.6.1. Igazoljuk az (1.9) jelű

azonosságot a (3.3) azonosság bizonyításának gondolatmenetét követve. (A „válta­


kozó előjelű” tagok könnyű összegzése alapján arra számíthatnánk, hogy a ( q) +
+ (") + . . . + ())) összeg is kifejezhető egy csinos kis képlettel. Nem így van: az
általános feladatra nem ismerünk a fentinél egyszerűbb megoldást.)

3.6.2. A (3.4) azonosság jobb oldala a binomiális tétel szerint az xnyn tag együtt­
hatója az (x + y)2n hatvány kifejtésében. Írjuk fel (x + y )2n-1 (x + y)n(x + y)n
alakban, fejtsük ki az (x + y)n hatványt a binomiális tétel segítségével, aztán pró­
báljuk kitalálni a szorzat xnyn tagjának együtthatóját. Mutassuk meg, hogy ezúton
a (3.4) azonosság egy újabb bizonyítását kapjuk meg.

3.6.3. Igazoljuk, hogy fennáll a

azonosság. A (3.4) összefüggés bizonyításának mintájára próbálkozhatunk a két ol­


dal kombinatorikus interpretációjával, de az előző feladat gondolatmenetét követve
a binomiális tételt is felhasználhatjuk.

Lássunk még egy összefüggést a Pascal-háromszögben szereplő számok


között. Az n-edik sor első elemétől kezdve adjuk össze a jobbra lefelé átlósan
62 3. A BINOMIÁLIS EGYÜTTHATÓK ÉS A PASCAL-HÁROMSZÖG

elhelyezkedő elemeket (3.3. ábra). A második sor első elemével kezdve például
a következő összegeket kapjuk:

1 = 1,
1 + 3 = 4,
1 + 3 + 6 = 10,
1 + 3 + 6 + 10 = 20,
1 + 3 + 6 + 1 0 + 15 = 35.
Ezek a számok éppen a háromszög következő „átlós” sorának elemei!

1
1 1
1 2 1
1 3 3 1
4 6 4 1
5 10 10 5
15 20 15 6
21 35 35 21
56 70 56 28

3.3. ábra. A Pascal-háromszög számainak diagonális összegzése.

Azt sejtjük tehát, hogy


n+ 1 n+ k+ 1
+ (3.5)
1 k
Az azonosságot teljes indukcióval bizonyítjuk be. A k = 0 esetben az azo­
nosság annyit mond, hogy 1 = 1, ez pedig nyilvánvalóan igaz. (Ha kedvünk
van, a k = 1 esetet is ellenőrizhetjük, bár erre igazából nincs szükség. Min­
denesetre a szintén igaz l + (n + l ) = n + 2 egyenlőséget kapjuk.)
Tegyük fel tehát, hogy a (3.5) azonosság valamely adott k esetén teljesül,
és próbáljuk ennek alapján belátni, hogy k + 1 esetén ugyanez a helyzet. Azt
kell tehát igazolnunk, hogy

UH i M 2)+-+( t M *+i H *+i )■


ín\ ( n + 1\ ín + 2\ / n + k\ í n + k + 1\ í n + k + 2\

A bal oldali kifejezés első k tagjának összege az indukciós feltevés szerint


("+ít+1) ’ a bal oldal ennek megfelelően
n+ k+ 1 í n + k + 1\
k V k+1 )
Ez azonban a Pascal-háromszög alapvető (3.2) szimmetriatulajdonsága alap­
ján éppen Ezzel a bizonyítás teljessé vált.
3.7. A PASCAL-HÁROMSZÖG MADÁRTÁVLATBÓL 63

3.6.4. Tegyük fel, hogy ki akarunk választani egy n — 1 elemű részhalmazt az


(n + k + 1) elemű {1, 2, . . . , n + k + 1} halmazból. Úgy járunk el. hogy eló'ször
kiválasztjuk a legnagyobb elemet, majd a többit. Mutassuk meg. hogy a lehetőségek
összeszámolásával a (3.5) azonosság egy új bizonyítását kapjuk.

3.7. A Pascal-három szög m adártávlatból


Képzeljük el, hogy a Pascal-háromszöget tisztes távolból vesszük szemügyre.
Ekkor nem az egyes elemek pontos értékére vagyunk kíváncsiak, hanem nagy­
ság szerinti sorrendjükre és más globális tulajdonságaikra. Az első ilyen tu­
lajdonság a háromszög (függőleges tengelyre vonatkozó) szimmetriája, ezt
már ismerjük.
Észrevehetjük azt is, hogy egy sorban haladva a tagok a sor közepéig nö­
vekednek, aztán csökkennek. Ha n páratlan, akkor az n-edik sor legnagyobb
eleme a középső, ha n páros, akkor az ?r-edik sor közepén két egyenlő tag áll,
és ezek a legnagyobbak.
Bizonyítsuk tehát be, hogy a tagok minden sor közepéig növekednek (a kö­
zép utáni csökkenés a háromszög szimmetriája alapján nyilvánvaló). Milyen
viszony áll fenn tehát két szomszédos tag között?

A 1.8.1. Tétel eredményének felhasználásával ezt így is írhatjuk:

n(n —1) • • • (n —k + 1) n(n —1) • ■• (n — k)


k(k —1) • • • 1 ’ (k+ 1)k • • • 1

A két oldalon sok közös (pozitív) tényező van, ezekkel egyszerűsíthetünk.


Ezek után már csak a következő két kifejezést kell összehasonlítanunk:

' fc + 1 ’

illetve átrendezés után:

Ha tehát k < (n - l)/2, akkor (£) < ha pedig k = (n - l)/2, akkor


())) = (amikor n páros, és a sor közepén két egyenlő szám áll), végül
ha k > (n — l)/2, akkor (£) > ( ^ J .
A későbbiek szempontjából jelentőséggel bír, hogy számításunk azt is meg­
m utatta: mennyivel nőnek, illetve csökkennek egymáshoz képest a szomszé­
dos elemek. Ha balról kezdünk, akkor a második tag (tehát n) éppen n-
szerese az elsőnek, a harmadik (azaz n ( n —l)/2) a második (n —l)/2-szerese.
64 3. A BINOMIÁLIS EGYÜTTHATÓK ÉS A PASCAL-HÁROMSZÖG

Általában pedig fennáll az

n —k
(3.6)
k+ 1

azonosság.

3.7.1. Milyen n és k esetén lesz (,t" x) kétszerese az őt megelőző tagnak?

3.7.2. Tekintsük a Pascal-hároms:zög két szomszédos elemének

n \ ín
k + l ) ~ yk

különbségét. Mely k esetén lesz ez a különbség a legnagyobb?

Tudjuk tehát, hogy a Pascal-háromszög minden sora szimmetrikus, és azt


is, hogy a sorok tagjai a sor közepéig növekednek, azután pedig csökkennek.
Mondhatunk-e még valamit ezen túl a sorok alakjáról?

3.4. ábra. A Pascal-háromszög n-edik sorának oszlopgraíikonja az n = 10,


illetve az n = 100 esetben.

A 3.4. ábra az (£) számokat m utatja (k = 0 , 1 , .. . , n) az n = 10 és az


n = 100 esetben. A következőket figyelhetjük meg:

- Először: a legnagyobb valóban ,kimagasló”.


- Másodszor: a számok nem csupán növekednek, de a középső tagok lénye­
gesen nagyobbak, mint a sor elején és végén elhelyezkedők. Az n = 100
3.7. A PASCAL-HÁROMSZÖG MADÁRTÁVLATBÓL 65

esetben csupán az ( 205°), (^g0); • ■• >(1^°) közötti számoknak megfelelő osz­


lopok láthatók, a többi tag (ezekhez képest) olyan kicsi, hogy nem is
látszik.
- Harmadszor: az oszlopdiagram alakja az n különböző értékei esetén is
hasonló.
Vizsgáljuk meg alaposabban is ezeket a megfigyeléseket. A következőkben
azokkal az esetekkel foglalkozunk, amelyekben n páros (amikor n páratlan,
hasonlóan kell eljárni, csupán az eredmény megfogalmazása különböző). Már
tudjuk, hogy amennyiben n páros, úgy az n-edik sor legnagyobb tagja (n"2) ,
az összes többi tag ennél kisebb.
Mekkora a Pascal-háromszög n-edik sorának legnagyobb tagja? Egy felső
korlátot azonnal megadhatunk:

< 2r'

elvégre 2" a sor összes tagjának összege. Nem sokkal nehezebb feladat egy
alsó korlát megadása sem:
( n \ 2n
\n/2j > n+ l ’
mivel 2n j ( n + 1) a sorban szereplő számok átlaga, a legnagyobb pedig nyil­
vánvalóan nagyobb, mint az átlag.
Az így megadott korlátok alapján egész jó becslést adhatunk az (n"2)
számra; az már most is látszik, hogy az ilyen számok igen nagyok. Tekintsük
példának okáért az n — 500 esetet. Ekkor
2500
< 2500
501
Ha arra vagyunk kíváncsiak, hogy az (2°°) szám hány jegyű, vegyük a 10-es
alapú logaritmusát. Az alsó korlát alapján

500lg2 - l g 501 = 147,8151601... < lg < 500lg 2 = 150,5149978... .

Az egyenlőtlenség igen jó becslést ad; ha azt mondjuk, a válasz 150, legföljebb


2-t tévedhetünk (ténylegesen annyit sem: a pontos válasz 150).
A Stirling-formula (2.2.1. Tétel) alapján még pontosabb becslést is adha­
tunk. Tudjuk, hogy
/ n \ n!
\n/2J (n/2)!(n/2)!’
a Stirling-formula alapján így

n ! ~ V 2^ 0 " és ( n / ^ l - v ^ g ) " 72
66 3. A BINOMIÁLIS EGYÜTTHATÓK ÉS A PASCAL-HÁROMSZÖG

aminek alapján
(3.7)

Tudjuk tehát, hogy a Pascal-háromszög minden sorának legnagyobb tagja


a középső, és közelítőleg meg is tudjuk becsülni, hogy mekkora ez a maxi­
mális tag. Azt is tudjuk, hogy ettől jobbra, illetve balra távolodva a tagok
csökkennek. Milyen gyors ez a csökkenés? A 3.4. ábra azt sugallja, hogy a
binomiális együtthatók a sor közepétől távolodva eleinte csak lassan, később
azonban igen gyorsan csökkennek.
A másik oldaláról megvizsgálva, ez még nyilvánvalóbb. Tekintsük például
az 57-ik oszlopot (hogy ne mindig kerek számokat válasszunk). A sor első
néhány tagja:

1, 57, 1596, 29260, 395010, 4187106, 36288252, 264385836, 1652411475,


8996462475, 43183019880, 184509266760, 707285522580,...
a szomszédos tagok hányadosa pedig:

57; 28; 18,33; 13,5; 10,6; 8,67; 7,29; 6,25; 5,44; 4,8; 4,27; 3,83;.

Miközben a tagok egyre nagyobbak, a szomszédosak hányadosa egyre ki­


sebb, sőt a sor közepe után 1-nél is kisebbé válik (hiszen innentől a tagok
már csökkennek). De mekkorák ezek a hányadosok? Az imént ezt már kiszá­
mítottuk: azt kaptuk, hogy

( n )
\ k + ÍJ _ n — k

~ W =TTT'
Ezt az
n —k n+ 1
k+1 k+1
alakba írva azonnal láthatjuk, hogy a szomszédos binomiális együtthatók
hányadosa annál kisebb, minél nagyobb a k szám.

3.8. Finom kis részletek


Tegyünk fel most a Pascal-háromszög soraival kapcsolatban egy, az iméntiek-
nél kvantitatívabb kérdést: a sorban szereplő binomiális együtthatók között
melyik (mondjuk) felaakkora, mint a legnagyobb?
Újra azt az esetet vizsgáljuk, amikor n páros, legyen például n = 2m. A sor
legnagyobb eleme ekkor (2?((l) . Tekintsük most azt a binomiális együtthatót,
amely a sor közepétől t lépésre áll. Nyilván mindegy, hogy jobbra vagy balra
3.8. FINOM KIS RÉSZLETEK 67

29
10

0 20

3.5. ábra. Az e * !m Gauss-görbe az m = 50 esetben, illetve a Pascal­


háromszög 100. sorában szereplő binomiális együtthatók oszlopdiagramja.

teszünk meg t lépést, válasszuk például (^ mt)-t, és hasonlítsuk össze a sor


legnagyobb elemével.
A binomiális együtthatók csökkenésének ütemét a következő képlet adja
meg:

A (3.8) egyenlet jobb oldalán lévő függvényt (amelynek független változója


t) a 3.5. ábrán tanulmányozhatjuk az m = 50 esetben. Ez a híres Gauss-
görbe (vagy haranggörbe, ahogyan alkalmanként nevezik). Sok statisztikus
vizsgálat adatai mutatnak hasonló képet. A 3.5. ábrán a görbét önmagában,
illetve a binomiális együtthatókkal együtt is megvizsgálhatjuk, így azonnal
láthatjuk, milyen kiváló az illeszkedés.
A (3.8) egyenlet csupán egy közelítés; ha precíz matematikai állítással
akarjuk helyettesíteni, akkor meg kell mondanunk, mekkora a közelítés ma­
ximális hibája. Be fogjuk látni, hogy fennállnak az

e- t 2/(m —í+l) < ( 2 m \ / (3.9)

egyenlőtlenségek.
Az itt szereplő alsó, illetve felső korlát emlékeztet a (3.8) közelítő egyen­
lőségben szereplő e- í kifejezésre. A (3.8) jobb oldala valójában mind az
alsó, mind a felső korlátnál jobb közelítést ad. Ha például a (4°°) / (10°)
hányadost akarjuk megbecsülni (amelynek pontos értéke 0,1362 ...), akkor
(3.9) a
0,08724 < < 0,1889
68 3. A BINOMIÁLIS EGYÜTTHATÓK ÉS A PASCAL-HÁROMSZÖG

közelítést, a (3.8) pedig - az igazsághoz sokkal közelebb álló - 0,1353...


értéket adja. Az analízis magasabb eszközeivel pontosabb kereteket is szab­
hatunk, ehelyütt azonban megelégszünk annyival, amennyit analízis nélkül
is be tudunk bizonyítani.
A (3.9) összefüggés igazolásához először vesszük a középen elhelyezkedő
tört reciprokát, aminek eredményeként 1-nél nagyobb, ennélfogva valamivel
könnyebben kezelhető számot kapunk:

/2 m \ I í 2to \ (2m)! / (2to)! _


\ m ) / \ m —t ) mlml / (m —t)\(m + t)l
(m - t)\(m + t)l _ (m + t)(m + t —1) • • ■(m + 1)
mlml m (m —1) ■• • (to —t + 1)

Van tehát egy képletünk a törtre, de mennyire hasznos az a képlet? Meg


tudjuk-e mondani például, hogy t mely értéke esetén válik ez a tört 2-nél
nagyobbá, azaz meg tudjuk-e oldani a

(m + t){m + t —1) • • • (m + 1) 2 ^ 1Q,


m(m —1) • • • (m — t + 1)

egyenlőtlenséget? Az egyenlőtlenség megoldása (például a binomiális együtt­


hatók növekedésének bizonyítása során követett gondolatmenet nyomán)
nem éppen egyszerű. Látjuk tehát, hogy a binomiális együtthatókra vonat­
kozóan még a viszonylag egyszerűnek tűnő kérdések („a sor közepétől milyen
távolságra feleződik meg a maximum?”) is komoly munkát jelentenek, amely­
hez az aritmetikai trükktárunkat is mozgósítanunk kell. A számláló első té­
nyezőjét osszuk el a nevező első tényezőjével, a második tényezőt a második
tényezővel, és így tovább:
m +t m + t —1 m +1
m m —1 m —t + 1
Ez a szorzat még mindig nehezen kezelhető, de a 2.5. alfejezetben már talál­
koztunk hasonlóval. Akkor a logaritmus segített, és most sem lesz másképp.
A szorzat logaritmusa az

m+t t- 1 / m +1 \
In ■In + ... + In
m —1 \ m —t + l )

összeg. Ezután a 2.5. alfejezet gondolatmenetét követve a 2.5.1. Lemma


egyenlőtlensége alapján megbecsüljük a bal oldalon álló logaritmusokat.
Kezdjük egy felső korlát levezetésével. Az összeg egy tipikus tagja

to + t —k \ m + t —k t
In
to —k to. —k m — k'
3.8. FINOM KIS RÉSZLETEK 69

ezt felhasználva azt kapjuk, hogy

m +t m t- 1 777 + 1
In In In <
m —1 m —t + 1
t
<
m 777 —1 777 —t + 1
Átalakíthatjuk-e ezt egy zárt formulává? Nem, de a 2.5. alfejezetből egy
másik fogást is kölcsönözhetünk. Helyettesítsük az összes nevezőt az 777—í + 1
kifejezéssel; így - az utolsó kivételével - valamennyi tört növekszik, amiből
a
t t t
<
---- 1
777 777 —17+ ...■
777 —t + 1
t
<
777 —f + 1 777 —t + 1 777 —t + 1 777 t+ 1

felső korlátot kapjuk. Emlékeztetünk arra, hogy a j (^™t) tört loga­


ritmusának felső korlátját kaptuk meg, a tört felső korlátját ebből az (e
alapú) exponenciális függvénnyel adhatjuk meg. Ezután már csak a kifejezé­
sek reciprokát kell vennünk, és már meg is kaptuk a (3.9) egyenlőtlenségben
szereplő alsó korlátot.
A (3.9) egyenlőtlenségben szereplő felső korlát helyessége hasonló úton
igazolható, ezt az Olvasóra bízzuk (3.8.2. feladat).
Térjünk vissza korábbi kérdésünkhöz: mikor (t mely értéke esetén) lesz a
(3.9) egyenlőtlenségben szereplő tört nagyobb, mint 2? A 2 számnak nincs
különösebb jelentősége, vizsgáljuk tehát azonnal az általános C > 1 esetet.
Azt akarjuk tehát tudni, hogy t milyen értékére lesz
2777 2777
> C. (3.11)
777 777 —t

A (3.8) közelítésből tudjuk, hogy a bal oldal körülbelül et /m, kezdjük tehát
az
eí2/ m = C.
egyenlet megoldásával. A bal oldalon szereplő exponenciális függvényt a jó
öreg logaritmussal szelídítjük meg:
t2
— = l n C.
777
Ezt már könnyen megoldjuk:
t = \Zt77In C .

Arra számítunk tehát, hogy amennyiben t ennél nagyobb, úgy fennáll a (3.11)
egyenlőtlenség. Ne felejtsük azonban el, hogy ez csupán becslés, nem pedig a
70 3. A BINOMIÁLIS EGYÜTTHATÓK ÉS A PASCAL-HÁROMSZÖG

pontos eredmény! A (3.8) közelítés helyett a (3.9) egzakt egyenlőtlenségeket


használva bebizonyíthatjuk a következő lemmát:

3 .8 .1 L e m m a . H a t > y /m h iC + lnC , akkor a (3.11) egyenlőtlenség telje­


sül; ha viszont t < y /m k iC —InC, akkor (3.11) nem igaz.

A bizonyítás a (3.9) feltételeknek a (3.8) közelítés alapján való levezetésé­


nek gondolatmenetét követi, ezt a - nem éppen könnyű! - 3.8.3. feladatban
az Olvasóra bízzuk.
A binomiális együtthatók egy további (a nagy számokkal kapcsolatos)
alkalmazását a 5. fejezetben tárgyaljuk, ehhez szükségünk lesz annak köze­
lítésére, hogy a legkisebb binomiális együtthatók összege milyen viszonyban
áll az összes együttható összegével. Szerencsés helyzetben vagyunk: előbbi
megfigyeléseinkre - és némi számolásra - támaszkodva a kérdésre új fogal­
mak bevezetése nélkül is válaszolhatunk.

3 .8 .2 L e m m a . Legyen 0 < k < m és c = (2™) j (2/ / ) . Ekkor

(TMT)+-+G <§■ ’*•■ - 0 <


»■”>
A lemma megértéséhez tekintsük az m = 500 esetet, és próbáljuk meg­
határozni, hogy a Pascal-háromszög 1000-dik sorában szereplő binomiális
együtthatók közül (a (100°°)-val kezdve) hányat kell összadnunk, hogy össze­
gük elérje a sorösszeg 0,5%-át. A 3.8.2. Lemma alapján a következőt mond­
hatjuk: ha 0 < k < 500 olyan, hogy (10°°)/ Csoo) < 1/100, akkor az első
k binomiális együttható összege kisebb, mint a sorösszeg 0,5%-a. A 3.8.1.
Lemmából viszont kiderül, hogy a k < 500 —\/500 In 100 —In 100 = 447,4
egyenlőtlenségnek eleget tevő k-k biztosan jók. A Pascal-háromszög 1000-dik
sorának első 447 tagjának összege tehát még mindig kisebb, mint a sorösszeg
0,5%-a. A szimmetria alapján ugyanezt a sor utolsó 447 tagjáról is elmond­
hatjuk; eszerint tehát a sor középső 107 tagja adja a sorösszeg 99%-át.
B i z o n y í t á s : A lemma bizonyításához legyen k = m —t, és vizsgáljuk meg,
hogyan viszonyul a (3.12) bal oldalán lévő összeg a

2m 2m
(3.13)
m —t m —t + 1 ! + . . . + (V'm2"
- l\)
)
1 / 2m ) összeget A, a
' \m —t—1. ü - t)+
+ (m-?+i) + • • • + (m -i) összeget pedig B.
A c szám definíciója szerint

2m \
m —t )
3.8. FINOM KIS RÉSZLETEK 71

amiből
/ 2m \ ( 2m \
\m -t-l) < C —1/ ’
elvégre (^™t) binomiális együttható (m^™_1)-mel vett hányadosa kisebb,
mint ( ™)-nek ( ^ 1)-hez való viszonya. A gondolatmenetet megismételve
azt kapjuk1, hogy tetszőleges i > 0 esetén

( 2m ) < c ( 2 m ) .
\ m —t —i j \ m —i )

Eszerint tehát ha összadunk t egymás utáni binomiális együtthatót, akkor


ennek az összegnek még a c-szerese is kisebb, mint a következő t tag összege
(feltéve, hogy ez utóbbiak még mindig a szóban forgó sor közepétől balra he­
lyezkednek el). Ha (jj™ )-tól visszafelé haladunk, akkor az első t tag összege
(.A definíciója szerint) A , a következő t tag összege kisebb, mint cA, a kö­
vetkező t tag összege kisebb, mint c2A, és így tovább. Ezeket összegezve
a
B < cA + c2A + c3A ...
becslést kapjuk.
A jobb oldalon csupán \{m — t)/t] tagot kell összeadnunk, mi azonban
nagyvonalúak vagyunk, és megengedjük, hogy az összegzés végtelen sok tagra
kiterjedjen. így egy mértani sort kapunk, amelynek összege -A, ezt felhasz­
nálva:
B < —— A.
1 —c
Szükségünk lesz még egy A-1 és B-1 összekapcsoló egyenlőtlenségere is, ez
azonban könnyű feladat:
B + A < ^22m

(a bal oldalon szereplő összeg csupán a Pascal-háromszög bal oldalán szereplő


tagokat foglalja magában, méghozzá a középső tag nélkül). így a

c
B < -~ — A <
1 —c 1 —c

egyenlőtlenséget kapjuk, amiből

B < C lp2m
1-c2

Ha most mindkét oldalt megszorozzuk 1 —c-vel, akkor az eredmény a B <


< c \2 2m egyenlőtlenség. Ezzel a lemma bizonyítását befejeztük. □

1M ásképpen: teljes indukcióval ig a z o lh a tju k .. .


72 3. A BINOMIÁLIS EGYÜTTHATÓK ÉS A PASCAL-HÁROMSZÖG

3.8.1. (a) Mutassuk meg, hogy a (3.8)-beli közelítés a (3.9)-beli alsó, illetve
felső korlát közé esik.
(b) Legyen 2m = 100 és í = 10. Hány százalékkal nagyobb a (3.9)-ban adott
felső korlát az alsónál?

3.8.2. Igazoljuk, hogy a (3.9)-beli felső korlát valóban az.

3.8.3. Egészítsük ki a 3.8.1. Lemma bizonyítását.

Á ttekintő feladatok
3.8.4. Adjuk meg az összes olyan n-t és k-1 , amelyekkel (fc" 1) = 3(£).

3.8.5. Melyik k-ra lesz a legnagyobb?

3.8.6. Egy város utcái „sakktáblaszerű” hálózatot alkotnak. Az észak-déli utcákat


1., 2. stb utcának, a kelet-nyugati irányúakat 1., 2. stb. sugárútnak nevezik. Lega­
lább hány kereszteződést kell érintenünk, ha az 1 . utca és az 1 . sugárút sarkáról a
20. utca és a 10. sugárút sarkára akarunk eljutni? Pontosan ennyi sarok érintésével
hányféleképpen tehetjük meg ezt az utat?

3.8.7. Hányféleképpen olvasható ki a m a t e m a t ik a szó a következő táblázatokból?


M A T E M M A T E
A T E M A A T E M
T E M A T T E A T
E M A T I E M T I
M A T I K A T I K
A T I K A K A

3.8.8. Bizonyítsuk be, hogy fennállnak a

É(r) (:)=(:)--
azonosságok.

3.8.9. Igazoljuk az

egyenlőtlenségeket.

3.8.10. Hányféleképpen oszthatunk szét n darab százforintost k gyerek között, ha


mindegyiküknek legalább 5 érmét kell kapnia?
3.8. FINOM KIS RÉSZLETEK 73

3.8.11. Igazoljuk, hogy a Pascal-háromszögben lefelé haladva egyre nagyobb szá­


mokkal találkozunk.

3.8.12. Igazoljuk, hogy

Keressünk kombinatorikus bizonyítást.

3.8.13. Tegyük fel, hogy az n elemű { l , 2 , . . . , n } halmazból kell kiválasztanunk


egy (2 k + 1 ) elemű részhalmazt. Ügy járunk el, hogy eló'bb a részhalmaz (nagyság
szerinti) középső elemét választjuk ki, majd a k nála kisebb, végül a k nála nagyobb
számot. írjuk fel az így kapott kombinatorikus összefüggést.

3.8.14. Legyen n háromal osztható pozitív egész szám. A Stirling-formula alapján


becsüljük meg (n"3) értékét.

3.8.15. Igazoljuk, hogy (" ) ~


4. fejezet

Fibonacci-számok

4.1. Fibonacci feladata


Leonardo Fibonacci olasz matematikus a 12. században fogalmazta meg a
következő (nem túlságosan életszerű) feladatot:

Egy gazda nyulakat tenyészt.


Minden nyúlnak két hónapos ko­
rában születik az első kölyke, ezt
követően pedig havonta egy-egy.
Feltesszük, hogy a nyulak örökké
élnek, a hím egyedektől pedig el­
tekintünk. Hány nyula lesz a gaz­
dának n hónap elteltével, ha „állo­
mánya” kezdetben egyetlen újszü­
lött kölyökből áll?
Leonardo Fibonacci

Kis rr-ekre könnyen megadhatjuk a választ. Az első hónapban a gazdának


1 nyula van, és ez a helyzet a második hónapban sem változik, mivel a
szaporodáshoz a nyúlnak legalább két hónaposnak kell lennie. A harmadik
hónap folyamán az állomány 2 tagot számlál, a negyedik hónapban pedig 3-
at, mivel az első nyúl 2, illetve 3 hónap elteltével egy-egy kölyköt hoz világra.
Négy hónap után megszületik az első nyúl harmadik és a második nyúl első
kölyke, a gazdának tehát az ötödik hónapban már 5 nyula van.
A nyulak szaporodásának folyamata könnyen követhető, ha felfigyelünk
arra, hogy minden hónapban pontosan annyi nyúl születik, ahány legalább
két hónapos nyúl van, azaz olyan nyúl, amelyik már egy hónappal korábban
is az állomány tagja volt. Másszóval: ha arra vagyunk kíváncsiak, hogy hány
tagú lesz az állomány a következő hónapban, akkor csak össze kell adnunk az
4.1. FIBONACCI FELADATA 75

előző és a jelen havi létszámot. Az állomány létszáma tehát havi bontásban:

1, 1, 1 + 1 = 2, 2 + 1 = 3, 3 + 2 = 5, 5 + 3 = 8. 8 + 5 = 13,...

(Nyilvánvaló, hogy Fibonacci nem az „alkalmazott matematika” problémá­


jaként tűzte ki a feladatot. Érdekes tulajdonságokkal rendelkező számokra
bukkant, majd keresett hozzá egy „alkalmazást”.)
Ahhoz, hogy megfigyelésünket egy képlettel is kifejezhessük, jelölje Fn a
nyulak számát az n-edik hónapban. Ekkor n = 2, 3, 4. . . esetén fennáll, hogy

Fn+1 = Fn + Fn_ i- (4-1)

Tudjuk, hogy Fi = 1, F2 = 1, F3 = 2 , F4 = 3, és hogy F5 = 5. Az egy­


szerűség kedvéért legyen F0 = 0, ekkor a (4.1) egyenlet az n = 1 estben is
érvényben marad. A (4.1) képlet alapján a sorozat tagjai könnyen kiszámít­
hatók:

0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233, 377, 610, 987, 1597,... .

A sorozatban előforduló számokat Fibonacci-számoknak nevezzük.


Látjuk tehát, hogy a Fibonacci-számokat a (4.1) egyenlet és a F0 = 0,
Fi = 1 értékek egyértelműen meghatározzák. Az F0, Fi, (4.1) hármast így
ezen számok definíciójának is tekinthetjük. El kell ismernünk: definíciónk
kissé különös, hiszen ahelyett, hogy - például egy képlet alapján - meg­
mondanánk, mennyi Fn, csupán egy szabályt adunk meg, amelyből kiderül,
hogy miként kell kiszámítani a Fibonacci-számokat az őket megelőző két
Fibonacci-szám alapján, valamint az első két Fibonacci-szám. Az ilyen defi­
níciókat rekurzív definíciónak nevezzük. A rekurzív definíció a teljes indukció
gondolatmenetével rokon, bár nem bizonyítási technika, hanem egy sorozat
megadásának módszere.

4.1.1. Miért az első két Fibonacci-számot adtuk meg, és nem egyet vagy hármat?

Mielőtt a Fibonacci-számokkal alaposabban megismerkednénk, oldjunk


meg egy leszámlálási feladatot.

Egy lépcsőnek n foka van. Hányféleképpen mehetünk rajta fel, ha bár­


melyik lépésben vagy egy, vagy kettő lépcsőfokot lépünk?

Ha n = 1, akkor 1 lehetőségünk van. Ha n = 2, akkor lehetőségeink a


következők: egy lépésben a lépcső tetején termünk, vagy mindkét lépcsőfokra
rálépünk. Az n = 3 esetben a lehetőségek száma 3: három egyfokos lépés,
egy kétfokos után egy egyfokos, vagy egy egyfokos után egy kétfokos.
Álljunk meg itt, és adjuk meg inkább az általános megoldást. (Ha az
Olvasó arra tippelt, hogy n lépcsőfok esetén a lehetőségek száma n, akkor
tévedett: egy 4 lépcsőfokból álló lépcső tetejére 5-féleképpen érhetünk fel:
1 + 1 + 1 + 1, 2 + 1 + 1, 1 + 2 + 1, 1 + 1 + 2 , 2 + 2 .)
76 4. FIBONACCI-SZÁMOK

A találgatás helyett próbálkozzunk a következő stratégiával. Jelöljük a he­


lyes választ J„-nel. Tegyük fel, hogy Jk értékét minden 1 < k < n esetén is­
merjük; kíséreljük meg ezen információk alapján meghatározni, hogy mennyi
Jn+1. Ha első lépésünkkel az első lépcsőfokra lépünk, akkor a maradék n lép­
csőfokon ./„-féleképpen lépdelhetünk fel, ha viszont első lépésünk a második
grádicsra vezet, akkor a hátralévő n —1 lépcsőfokon J„_i-féleképpen lépdel­
hetünk fel. Mivel ezzel valamennyi lehetőséget kimerítettük, ezek száma

Jn+1 — Jn + Jn —1 '

Ez az egyenlet ugyanaz, mint az Fn Fibonacci-számok rekurzív definíció­


jában szereplő összefüggés. Eszerint tehát Fn = J„? A válasz: nem, amit
azonnal beláthatunk, ha az első néhány értéket vizsgáljuk. Példának okáért
F:í = 2, de J3 = 3. Mindazonáltal ez csupán azzal jár, hogy az Fn és a Jn
sorozat 1-gyel „elcsúszik” egymáshoz képest:

Jn = J n—l ■

Mivel ez az egyenlőség az n = 1,2 esetekben igaz, minden n-re érvényben


marad, elvégre az F2 . / 3, +1, . . . és a Ji, J 2, J 3, ... sorozat elemeit ugyanazon
szabály alapján képezzük az első kettőből kiindulva.

4.1.2. Tegyük fel, hogy n dollár költőpénzünk van. Minden nap választhatunk: 1
dollárért cukorkát, vagy 2 dollárért fagylaltot veszünk. Hányféleképpen költhetjük
el a pénzünket?

4.1.3. Hány olyan részhalmaza van az {1,2,..., n} halmaznak, amelynek elemei


között nincs két szomszédos szám?

4.2. Azonosságok sokasága


A Fibonacci-számokról sok érdekes összefüggést bebizonyíthatunk. Mennyi
például az első n Fibonacci-szám összege? Lássuk az első néhány összeget:

0 = 0,
0 + 1 = 1,
0 + 1 + 1 = 2,
0 + 1 + 1 + 2 = 4,
0 + l + l+ 2 + 3 = 7,
0 + 1 + 1 + 2+ 3 + 5 = 12,
0 + l + l + 2 + 3+ 5 + 8 = 20,
0 + 1 + 1 + 2 + 3 + 5+ 8 + 1 3 = 33.
4.2. AZONOSSÁGOK SOKASÁGA 77

Nem tart sokáig, és rájövünk, hogy a jobb oldalon szereplő számokhoz


egyet adva újra Fibonacci-számot, méghozzá a bal oldali összeg utolsó tagja
után kettővel következő tagot kapjuk. Sejtésünk tehát a következő:

Fo + Fi + F2 + ... + Fn = Fn+2 — 1.

A sejtést n szerinti teljes indukcióval bizonyítjuk (az indukciós bizonyítás,


mint már említettük, a rekurzív definíció „ikertestvére”).
Az állítást az n = 0 és az n = 1 esetre már ellenőriztük; tegyük fel tehát,
hogy igaz az első n —1 Fibonacci-szám összegére is. Az első n Fibonacci-szám
összege így

F q + F i + . .. + Fn — (Fo + F i + ... + F n_i) + Fn — (F„+1 — 1) + Fn ,

a Fibonacci-számok rekurzív definíciója alapján pedig azt kapjuk, hogy

(Fn+1 —1) + F„ —Fn_|_2 —1.

Ezzel a bizonyítást befejeztük.

4.2.1. Bizonyítsuk be, hogy Fsn bármely n esetén páros.

4.2.2. Igazoljuk, hogy Fg,n osztható 5-tel.

4.2.3. Bizonyítsuk be a következő azonosságokat.


(a) Fi + F 3 + Fs + ... + F271—1 = F 271
(b) Fo —Fi + F 2 —F 3 + . . . —F2rí- l + F2n = Fz-n-l ~ 1
(c) F02 + Fi2 + F22 + ... + Fi = Fn ■Fn+1
(d) F n -lF n + 1 —F 2 = (-1 )"

4.2.4. Terjesszük ki a Fibonacci-számok definícióját „negatív irányban”, azaz ke­


ressünk definíciót az Fn számokra negatív n-ek esetén. A (4.1) rekurziós összefüg­
gést továbbra is érvényben akarjuk tartani, így például F_i + Fo = Fi alapján azt
kapjuk, hogy F_i = 1, az F _ 2 + F_ i = Fo összefüggésből pedig arra következtethe­
tünk, hogy F —2 = —1 stb. Hogyan viszonyulnak a negatív indexű Fibonacci-számok
a pozitív indexűekhez? Számítsunk ki néhány tagot, sejtsük meg a helyes választ,
aztán bizonyítsuk be.

Lássunk most egy kicsit bonyolultabb azonosságot:

Fn + Fn-1 = F2n-1- (4.2)

Sok n-re ellenőrizve az az erős sejtésünk tám adhat, hogy az azonosság min­
den számra igaz, a bizonyosság és a bizonyítás azonban még nem ugyanaz.
Hogy miért nehezebb ezt az azonosságot belátni, mint az előzőeket? A vá­
lasz egyszerű: ha teljes indukcióval próbálkozunk (nemigen juthat más az
78 4. FIBONACCI-SZÁMOK

eszünkbe), akkor a jobb oldalon nem nyilvánvaló, miként alkalmazhatnánk


a rekurziós összefüggést.
Egy lehetséges kiutat az jelenthet, ha keresünk F2n-re egy összefüggést,
amelyet könnyebben be tudunk látni. Kis szerencsével (vagy mély belátás­
sal?) az a sejtésünk tám adhat, hogy

Fn+\Fn + FnFn-1 = F2n. (4-3)

A kis n-ekre való ellenőrzés ebben az esetben sem okoz nehézséget. A bizo­
nyításhoz kétszer is felhasználjuk a (4.1) rekurziós összefüggést:

Fn+\Fn + FnFn-1 = (Fn + Fn_i )Fn + {Fn- \ + Fn- 2)Fn- i =


= {^n + F ^ -i) + (■FnFn- \ + Fn- \F n-2) =
— F in -l + F2n—2 = F2n.

(Az utolsó előtti lépésben az első tagra a (4.2) összefüggést, a másodikra


pedig az indukciós feltevést alkalmaztuk.)
A (4.2) azonosság bizonyítása hasonlóan megy:

Fn + F n -1 = (Fn- 1 + Fn- 2)2 + Fn-I =


= {Fn-1 + F n - 2 )+ 2Fn- i F n-2 + Fn_i =
= {Fn- 1 + F n- 2) + Fn- i( F n - 2 + Fn- 1 ) + Fn- iF n - 2 =

= {F„ - 1 + Fn- 2) + FnFn- 1+ Fn—\Fn—2 =


= F2n-3 + F2n- 2 = F2n- i .

(Az utolsó előtti lépésben az első tagra ezúttal is az indukciós feltevést, a


másodikra pedig a (4.3) összefüggést alkalmaztuk.)
Álljunk meg egy pillanatra! Miféle dolog ez? A (4.3) azonosságot felhasz­
náltuk a (4.2) azonosság bizonyításában, aztán az (4.2) azonosságot (4.3)
bizonyításában! Nincsen azonban semmi probléma, csupán arról van szó,
hogy a két indukciós bizonyításnak egymással párhuzamosan kell haladnia.
Ha tudjuk, hogy bizonyos n-re mind (4.3), mind (4.2) igaz, akkor beláthat­
juk (4.2)-t a következő n-re (a bizonyítást megvizsgálva láthatjuk, hogy ezen
a ponton valóban csak n-nél kisebb értékekre hivatkoztunk, majd ezt és az
indukciós feltevést felhasználva láttuk be a (4.3) azonosságot).
Ezt a fogást, amelynek segítségével a szokásos indukció erejét megsokszo­
rozhatjuk, szimultán indukciónak nevezzük.

4.2.5. Igazoljuk, hogy a páratlan indexű Fibonacci-számokat (a páros indexűeket


teljesen figyelmen kívül hagyva) a következő rekurzióval állíthatjuk elő:

F2n+1 = 3F2n-l —F2n-3-


Adjuk meg ennek segítségével a (4.2) és a (4.3) azonosság szimultaneitás nélküli
bizonyítását.
4.2. AZONOSSÁGOK SOKASÁGA 79

4.2.6. Jelöljük ki a Pascal-háromszög egyik sorának első elemét (ez biztosan egy
1-es). Haladjunk egy lépést keletre, majd egy lépést északkeletre, és jegyezzük fel,
melyik számhoz jutottunk. Folytassuk ezt addig, amíg ki nem jutunk a háromszög­
ből, majd adjuk össze az utunk során feljegyzett számokat.
(a) Melyik számokat kapjuk, ha a háromszög különböző sorainak elejéről indu­
lunk? Előbb próbáljuk megsejteni a megoldást, aztán bizonyítsuk is be.
(b) írjuk fel eredményünket a binomiális együtthatók segítségével.

Tegyük fel, hogy a Fibonacci-féle feladatban szereplő gazdának kezdetben


A újszülött nyula van, az első hónap végén (amikor még nincs szaporulat)
pedig további B — A darab, szintén újszülött egyedet vásárol, amivel az
állomány létszáma B -re nő. Innentől a nyulak szaporodni kezdenek, a gaz­
dának így a második hónap végére A + B, a harmadik hónap végére A + 2B
nyula lesz, és így tovább. Hány nyula lesz n hónap elteltével? Most azzal az
E q, E \, E 2 ■■■ sorozattal van dolgunk, amelynek első két tagja £ 0 = A és
E i = B, a további tagokra pedig fennáll az E n+1 = E n + E n- 1 összefüg­
gés (a nyulak szaporodásának biológiája nem változott, csupán a kiinduló
állomány létszáma).
Efféle „módosított” Fibonacci-sorozatot tetszőleges A és B számokkal de­
finiálhatunk. Mennyiben különböznek ezek az „igazi” Fibonacci-sorozattól?
Talán minden A és B kezdőértéket külön-külön meg kellene vizsgálnunk?
A helyzet nem ilyen súlyos: az E n számokat meglehetősen könnyen felír­
hatjuk az Fn Fibonacci-számok segítségével. Ennek belátására számoljuk ki
az E n sorozat első néhány tagját (ezekben természetesen az A és B paramé­
terek is szerepelni fognak):

E q = A, Ei = B , £2 = A + B, £3 = B + {A -|- B ) = A + 2B,
£4 = (A T £ ) -f- (A -(- 2B) = 2A -f- 3£,
£5 = (A + 2B) + (2A + 3B) = 3A + 5B,
£ 6 = (2A + 3B) + (3A + 5£) = 5A + 8B,
£7 = (3A + 5B) + (5A + 8B) = 8A + 1 3 £ ...

Könnyű észrevenni, hogy mi a helyzet: minden £ n szám A és B egy-egy


számszorosának összege, az együtthatók pedig közönséges Fibonacci-számok.
Sejtésünk tehát a következő:

£ n = £n—1A + FnB. (4-4)

A képlet felírása még nem bizonyítás - a (teljes indukciós) bizonyítás minda­


zonáltal olyan egyszerű, hogy bátran az Olvasóra bízhatjuk (4.3.10. feladat).
Azonosságunk érdekes speciális esete, amikor a kezdőértékek maguk is
Fibonacci-számok: A — Fa és B = £ a+i. Ekkor az E n sorozat maga a
Fibonacci-sorozat, kissé balra tolva. Érvényes tehát az

Fa+6+1 -)- Ea£& (4.5)


80 4. FIBONACCI-SZÁMOK

(2>-
Á4?

8-8 = 64 5-13 = 65

4.1. ábra. Annak bizonyítása, hogy 64 = 65.

azonosság, amelynek alapján a Fibonacci-számok további érdekes tulajdon­


ságait láthatjuk be (néhánnyal a feladatok között is találkozunk).

4.2.7. Bizonyítsuk be a (4.2) és a (4.3) azonosságokat (4.5) alapján.

4.2.8. A (4.5) azonosság segítségével lássuk be a 4.2.1. és a 4.2.2. feladatok követ­


kező általánosítását: ha n a k szám többszöröse, akkor Fn az Fk többszöröse.

4.2.9. Vágjunk négy részre egy sakktáblát, és rakjunk ki egy 5 x 13 mezőből álló
téglalapot (1. a 4.1. ábrát). Vajon az következik ebből, hogy 5 ■13 = 8 2? Hol van a
kutya eltemetve? Mi köze ennek a Fibonacci-számokhoz?

4.3. A Fibonacci-számok képlete


Mekkorák a Fibonacci-számok? Létezik egyáltalán egyszerű képlet, amely n
függvényében megadná Fn-1?
íme a válasz (könnyű annak, aki kombinatorikakönyvet í r. ..).

4.3 .1 . TÉTEL. A z Fn Fibonacci-számra fennáll az

azonosság.

B izonyítás : Könnyen ellenőrizhetjük, hogy az egyenlőség az n = 0,1 ese­


tekre teljesül, és az n szerinti indukció sem okoz különösebb gondot. □
4.3. A FIBONACCI-SZÁMOK KÉPLETE 81

4.3.1. Bizonyítsuk be n szerinti indukcióval az azonosságot.

Az Olvasó ezen a ponton joggal érezheti magát kissé becsapottnak. Logi­


kai hibát nem követtünk el, de mégis: honnan került a csizma az asztalra?
Miféle találgatás vezetett vajon ehhez a képlethez? Milyen ötlet szükséges ah­
hoz, hogy egy (a Fibonacci-sorozatéra emlékeztető, de attól eltérő) rekurzív
definícióból (a tételünkben szereplőhöz hasonló) explicit képletet kapjunk?
Feledkezzünk meg tehát egy időre a 4.3.1. Tételről, és próbáljunk „térkép
nélkül” rátalálni az Fn számok képletéhez vezető útra.
A próbálgatás eredményre vezethet. A Fibonacci-számok elég gyorsan nő­
nek - pontosan milyen gyorsan? Kapjuk elő a számológépünket, és határoz­
zuk meg a szomszédos Fibonacci-számok hányadosát:
1 3 5
- = 1.5, - = 1,666666667,
I
8 13 21
1,600000000, — = 1,625000000, 1,615384615,
5 8 13
34 55 89
1,619047619, — = 1,617647059, 1,618181818,
21 34 55
144 233 377
1,617977528, — = 1,618055556, 1,618025751.
"89" 144 233

Ügy tűnik, hogy a szomszédos Fibonacci-számok hányadosa (az első néhány


tagtól eltekintve) közel van 1,618-hez. Ez azt sugallja, hogy a Fibonacci-
sorozat bizonyos szempontból a mértani sorozatokra emlékeztet (amelyekben
a szomszédos tagok hányadosa mindig ugyanakkora). Lássuk tehát, van-e
olyan mértani sorozat, amely eleget tesz a Fibonacci-számokat definiáló re-
kurziós összefüggéseknek. Legyen tehát Gn = c ■qn mértani sorozat (ahol
c, q 0). Ekkor a
GW i — Gn + i
összefüggésből a
c - q n+1 = c - q n + c - q n~1,
egyenlőséget kapjuk, amelyet egyszerűsítve:

q2 = q + 1.
Mind a c, mind az n eltűnt.1

XA c és az n eltűnése nem teljesen váratlan . H a ugyanis létezik olyan m értan i soro­


zat, am elynek elem ei kielégítik a Fibonacci-féle rekurziós összefüggést, akkor an n ak a
sorozatnak valam ennyi ta g já t ugyanazzal a valós szám m al m egszorozva szintén egy „jó”
sorozatot kapunk. E szerint a c-re vonatkozóan sem m iféle inform ációra nem szá m íth atu n k .
E zen felül, h a egy sorozat elem ei kielégítik a szóban forgó rekurziót, akkor a sorozat első
valahány ta g já t elhagyva ugyancsak „jó” sorozatot kapunk, így a z tá n n -re vonatkozóan
sem sz á m íth a tu n k sem m iféle m egszorításra.
82 4. FIBONACCI-SZÁMOK

A kapott másodfokú egyenlet megoldása:

1 + y/5 1 - V5
Qi = 1.618034, 92 = -0,618034.

Eszerint tehát két különböző hányadosú mértani sorozat létezik, amely


eleget tesz a Fibonacci-számokat definiáló rekurziós feltételnek (itt c tetsző­
leges konstans lehet):

1 + VE'' 'l - J l '


Gn —c G’ — c

Sajnos azonban sem Gn, sem G’n nem a Fibonacci-sorozat: ehhez elég rá­
mutatni, hogy Go = G q = c, holott Fo = 0. Vegyük észre azonban, hogy a
rekurziós feltételt a Gn —G'n sorozat is kielégíti:

Gn+l - G'n+1 = {Gn + Gn- i) - {G'n + G'n_ l ) = {Gn - G'n) + {Gn - 1 - G'n_l )

(Kihasználtuk, hogy Gn és G'n egyaránt kielégíti a rekurziót.) Ezzel Fq már


megvan, hiszen Go —G'0 = 0. A következő tag Gi —G[ — c \/5. Ezt a c = 1/ \/5
választással könnyen összhangba hozhatjuk Fi = 1-gyel.
Az Fn és a Gn —G'n sorozat első két tagja megegyezik, és a két sorozat
tagjai ugyanazt a rekurziós összefüggést elégítik ki. Az Fn és a Gn —G'n
számokat tehát ugyanazon szabályok szerint számítjuk ki, a két sorozat tehát
(tagról-tagra) megegyezik: Fn = G„ —G'n.
A Gn és G'n képletét behelyettesítve éppen a 4.3.1. Tételben szereplő
formulát kapjuk.

Képletünk a Fibonacci-számokat új megvilágításba helyezi. Az első hatvány


alapja qi = (1 + v/5)/2 ~ 1,618034 > 1, a másodikra pedig fennáll, hogy
—1 < q-2 < 1. Amint n növekszik, Gn nagyon nagy lesz, miközben (n > 2
esetén) \G'n\ < i , sőt elég nagy n-re G'n igen kicsi lesz. Eszerint érvényes az
n
1
G„
7! (a 5)
közelítés, amelyben az elhanyagolt tag n > 2 esetén kisebb, mint és 0-hoz
tart, amint n végtelenhez közelít. Ez azt jelenti, hogy Fn a Gn-hez legköze­
lebbi egész szám.
A r = (1 + v/5)/2 szám másról is nevezetes: aranymetszésnek nevezik, és
lépten-nyomon felbukkan a matematikában. így aránylik egymáshoz például
egy szabályos ötszög átlója és oldala. Az aranymetszést meghatározhatjuk a
következőképpen is: ha b/a = r, akkor {a + b)/b = r. Ha tehát egy téglalap
oldalainak aránya r, akkor a téglalapból egy négyzetet kivágva az eredetihez
hasonló téglalapot kapunk.
4.3. A FIBONACCI-SZÁMOK KÉPLETE 83

4.3.2. Definiáljuk a pozitív egész számokból álló Ln sorozatot a következő rekur­


zióval: L i = l, L 2 = 3 és L n+ 1 = Ln + Ln-i- (Ezeket a számokat Lucas-számoknak
nevezik.) Bizonyítsuk be, hogy az L„ számok felírhatok a ■q™+ b ■q2 alakban (ahol
qi és q2 a fenti bizonyításban szereplő számok), és határozzuk meg a-t és 6-t.

4.3.3. Definiáljuk az In sorozatot így: 7o = 0, Ji = 1 és In+i = 4In + In-i-


(a) Keressünk olyan kombinatorikus problémát, amelynek az In számok adják a
megoldását, (b) Keressünk képletet I n-re.

4.3.4. Andrea azt állítja, hogy ismer a Fibonacci-számokra egy másik képletet:
Fn = [en/ 2-1] , n = 1,2,... (ahol e = 2, 718281828 ... a természetes logaritmus
alapja). Igaza van?

Áttekintő feladatok
4.3.5. Hányféleképpen rakhatunk ki egy 2 x n méretű „sakktáblát” dominókkal?

4.3.6. Hány olyan részhalmaza van a {1,2, . . . , n } halmaznak, amelynek elemei


között nincs két egymás után következő szám, ha az n és 1 számokat is egymás
utáninak tekintjük?

4.3.7. Hány olyan részhalmaza van a {1,2, . . . , n } halmaznak, amelynek elemei


között nincs három egymás után következő szám? Keressünk rekurziós képletet.

4.3.8. Melyik szám nagyobb, 2100 vagy Eioo?

4.3.9. Bizonyítsuk be az alábbi azonosságokat.


(a) F 2 + F a + F q + . . . + F2n = Í2 n + i — 1;

(b) F„+i —F^, = Fn-lFn+2',


(C) Q F 0 + (:)F 1 + (~)F2 + ...+ (:)Fn = F2n-,
(d) (o )* + ( l ) ^ 2 + + • • • + O-P’n+l = F2n+1 .

4.3.10. Igazoljuk a (4.4) összefüggést.

4.3.11. Igaz-e, hogy ha Fn prímszám, akkor n is az?

4.3.12. Tekintsük azt a 60, 6 1 , 6 2 ... számsorozatot, amelyben 60 = 0, 61 = 1, a


62,63 ... számokat pedig a
bk+i —36fc 26/c_i.
rekurzióval adjuk meg. Határozzuk meg bk értékét.

4.3.13. Tegyük fel, hogy a (ao,ai,a2, • • •) sorozat kielégíti a

On+l —&n “f ^CLn—1'


rekurziós összefüggést. Tudjuk, hogy ao = 4 és a2 = 13. Mennyi 05 ?
84 4. FIBONACCI-SZÁMOK

4.3.14. Igazoljuk, hogy a 4.3.2. feladatban definiált Ln Lucas-számokra fennállnak


a következő azonosságok.
(a)
£

FnLn 5
II
e

(b) 2 Fk+n — FfcLn + FnLk\


(c) 2 Z/fc+n = 5FkF,1 “h FfcLn

(d) ^2k ~~ 2 ;
■a
ii

(e) Lik+2 = L\k+l + 2 .

4.3.15. Igazoljuk, hogy ha n osztható 4-gyel, akkor Fn osztható 3-rnal.

4.3.16. (a) Igazoljuk, hogy minden pozitív egész szám felírható különböző Fibo-
nacci-számok összegeként.
(b) Igazoljuk, hogy az előbbi állításnál több is igaz: minden pozitív egész szám
felírható különböző Fibonacci-számok olyan összegeként, amelynek tagjai
között nincs két egymás után következő Fibonacci-szám.
(c) Bizonyítsuk be, hogy az (a)-beli felírás nem egyértelmű, a (b)-beli viszont
már az.
5. fejezet

Kombinatorikus valószínűség

5.1. Események és valószínűségek


A valószínűségszámítás az alkalmazások szempontjából a matematika egyik
legfontosabb területe. Ebben a könyvben nem célunk, hogy a valószínűség­
számítással - akár csak az alapfogalmakkal - megismertessük az Olvasót.
Csupán a Pascal-háromszögre vonatkozó egyik kombinatorikus eredményünk
fontosságát akarjuk illusztrálni a valószínűségszámítás egyik kulcsfontosságú
eredményének - a nagy számok törvényének - bemutatásával. Ehhez mind­
azonáltal néhány szót kell ejtenünk arról, hogy mi is a valószínűség.
Ha megfigyeléseket végzünk, vagy kísérletezünk, akkor az eredmény bizo­
nyos mértékig mindig a véletlenen múlik; gondoljunk csak az időjárásra, a
tőzsdei árfolyamok változására vagy az orvosi kísérletekre. A valószínűség­
számítás a véletlen modellezésének egy lehetséges módja.
A modellezés első lépése, hogy - gondolatban - elkészítjük a kísérlet vagy
megfigyelés (a kettő között nem teszünk különbséget) lehetséges kimenetelei­
nek listáját. A lehetséges kimenetelek egy - S-sel jelölt - halmazt alkotnak.
A legegyszerűbb kísérlet talán a pénzfeldobás, amelynek két lehetséges ki­
menetele van: F (fej), illetve I (írás); ebben az esetben tehát S = {F ,/}.
Másik alappéldánk a kockadobás lesz, amelynek kimeneteleit értelemszerűen
az S = {1, 2,3,4, 5, 6} halmaz elemei adják. Ebben a könyvben mindig fel­
tesszük, hogy a lehetséges kimenetelek S = {sí, S2, . . . , Sk} halmaza véges.
Az S halmazt eseménytérnek nevezzük.
Az S halmaz részhalmazait eseményeknek nevezzük; egy esemény bekö­
vetkezte tehát azt jelenti, hogy a kísérlet (vagy megfigyelés) eredménye a szó­
ban forgó részhalmaz eleme. A kockadobás esetében például E = {2,4,6} C
C S az az esemény, amely akkor következik be, ha páros számot dobunk.
Hasonlóan: az L = (4, 5,6} C S részhalmaznak az az esemény felel meg,
hogy a kockával 3-nál nagyobb számot dobunk.
86 5. KOMBINATORIKUS VALÓSZÍNŰSÉG

Az eseménytér két részhalmazának metszete a két esemény együttes be­


következésének megfelelő esemény; az L fi E = {4, 6} részhalmaz például
annak az eseménynek felel meg, hogy dobásunk eredménye 3-nál nagyobb
páros szám. Az A és B eseményeket kizárónak nevezzük, ha sohasem követ­
keznek be egyszerre, azaz ha A fi B = 0. Az O = {1,3, 5} esemény (páratlan
számot dobunk) és az E esemény például kizárják egymást: E fi O = 0.

5.1.1. Melyik eseménynek felel meg két esemény uniója?

Legyen tehát S = {sí, S2 , • • ■, s/J egy kísérlet lehetséges kimeneteleinek


halmaza. Az S halmaz valószínűségi mezővé válik, ha feltesszük, hogy minden
Sí G S kimenetelnek van valamekkora P(sj) „valószínűsége”, méghozzá úgy,
hogy a valószínűségekre vonatkozóan teljesülnek a következők:
(a) P(sj) > 0 minden s* £ S esetén, és hogy
(b) P(si) + P(s2) + ... + P(sfc) = 1.
Ha ezek a feltételek teljesülnek, akkor az S halmazt a rajta értelmezett P
valószínűséggel valószínűségi mezőnek nevezzük. Egy nem cinkelt pénzérme
feldobása esetén például P(F) = P(/) = Ha dobókockánk valóban dobni-,
és nem csapnivaló, akkor P(í ) = | az eseménytér bármely i eleme esetén.
Az olyan valószínűségi mezőt, amelyben az eseménytér minden elemének
ugyanakkora a valószínűsége, uniform valószínűségi mezőnek nevezzük. A
következőkben kizárólag uniform valószínűségi mezőkkel foglalkozunk, eze­
ket a legkönnyebb ugyanis elképzelni, ráadásul a kombinatorikai módszerek
is ilyen mezőkön illusztrálhatok a legjobban. Felhívjuk azonban az Olvasó
figyelmét arra, hogy a bonyolultabb modellek esetében másfajta (nem uni­
form) valószínűségi mezőkre is szükségünk lehet. Ha például azt vizsgál­
juk, hogy az év egy bizonyos napján esett-e az eső, akkor eseményterünk
az S = { e s ő s , s z á r a z } halmaz, S elemeinek pedig általában nem egyenlő a
valószínűsége.
Egy Á C S esemény valószínűségét A elemei valószínűségeinek összegeként
értelmezzük; A valószínűségét P(A) jelöli. Uniform valószínűségi mező esetén

\A\
P(A) =
isi k '

5.1.2. Igazoljuk, hogy egyetlen esemény valószínűsége sem lehet nagyobb, mint 1.

5.1.3. Mi a valószínűsége az E (páratlan számot dobunk), illetve a T = {3,6}


(hárommal osztható számot dobunk) eseménynek?

5.1.4. Bizonyítsuk be, hogy kizáró A és B események esetén P(A) + P(B) =


= P(A U B).

5.1.5. Igazoljuk, hogy tetszőleges A és B események esetén

P(A n B) + P(A UB) = P(A) + P(B).


5.2. KÍSÉRLETEK FÜGGETLEN MEGISMÉTLÉSE 87

5.2. Kísérletek független m egism étlése


Ismételjünk meg n-szer egy kísérletet. Ha ezt egyetlen „nagy” kísérletnek te­
kintjük, akkor a lehetséges kimenetelei az S halmaz elemeiből képzett n
hosszúságú sorozatok; az ilyen sorozatok halmazát S n jelöli, S n tehát a
„nagy” kísérlet eseménytere. Ha az S halmaznak k eleme van, akkor a nagy
eseménytér nyilván k n elemű. Minden ilyen sorozatot egyforma valószínű­
ségűnek tekintünk, vagyis uniform valószínűségi mezővel van dolgunk. Ha
tehát (ai, ö2, • • •, an) a „nagy” kísérlet egy lehetséges kimenetele, akkor

P(ö i , a2, . . . , an) =

Példaként tekintsük azt a kísérletet, amelynek során kétszer dobunk fel


egy pénzérmét. Ekkor S = {F, I } (fej, írás), a kétdobásos kísérlet esemény­
tere pedig az S 2 = { F F , F I , I F , I I } halmaz. A kísérlet minden lehetséges
kimenetelének a valószínűsége
Definíciónk azt a helyzetet modellezi, amelyben egy kísérlet a korábbiak­
tól függetlenül, többször is megismételhető. A „független” szót itt abban az
értelemben használjuk, amely szerint „egyik kísérletnek sem lehet semmiféle
mérhető befolyása a többire”. Ehelyütt nem megyünk bele a fogalom által
felvetett filozófiai problémákba, inkább adunk egy matematikai definíciót,
amelyről - példák alapján - megállapíthatjuk, hogy pontosan megfelel az
informális fogalomnak.
A valószínűségszámításban alapvető szerepet játszik az események függet­
lenségének fogalma. Intuitíve: két esemény független, ha az egyikkel kap­
csolatos információ (amelyből kiderül, hogy bekövetkezett-e, vagy sem) nem
befolyásolja a másik valószínűségét. A formális definíció: az A és a B esemény
független, ha P(A fi B) = P(A) • P{B).
Tekintsük az érme kétszeri feldobását. Legyen A az az esemény, hogy
az első, B pedig az az esemény, hogy a második dobás fej. Ekkor P(A) =
= P(HH) + P(77T) = j \ = | , hasonlóan: P(7?) = \ , ezen felül pedig
P(A n B) = P{HH) — \ \ A és B tehát független események (ahogy
azt el is vártuk).
Második példánk legyen az a kísérlet, amelyben egyszerre dobunk egy
pénzérmével és egy kockával. Legyen F az az esemény, hogy az érmével fejet,
K pedig az, hogy a kockával ötöst vagy hatost dobunk; F valószínűsége | , I\
valószínűsége pedig | . H A K ekkor az az esemény, amelyben érménk fejet,
kockánk pedig 5-öt vagy 6-ot mutat; H n K valószínűsége ekkor a kísérlet
12 lehetséges kimenetele (F I, F2, F3, FA, F5, F6, II, 12,73, 74,75, 76) közül
ugyanis 2 felel meg a feltételnek. Eszerint tehát

P { H n K ) = ± = ± - ± = P( H) . P{E) ,

ami azt mutatja, hogy F és K független események.


88 5. KOMBINATORIKUS VALÓSZÍNŰSÉG

Az események függetlensége matematikai fogalom, és nem feltétlenül je­


lenti azt, hogy a két esemény között semmiféle fizikai kapcsolat sincs. Tekint­
sük például az E = {2,4,6} és az T — {3, 6} kockadobás-eseményeket (páros
számot dobunk, 3-mal osztható számot dobunk); E és T független esemé­
nyek, hiszen E flT = {6} (3-mal osztható páros számot csak egyféleképpen
dobhatunk), és így

P ( £ n T ) = i = i . i = P( £) . P( T) .

5.2.1. Az E , 0 , T , L események közül melyek alkotnak független eseménypárt?


Melyek kizáró eseménypárt?

5.2.2. Igazoljuk, hogy az 0 esemény minden más eseménytől független. Van-e más
esemény, amely rendelkezik ezzel a tulajdonsággal?

5.2.3. Legyen egy kísérlet eseménytere 5; ismételjük meg a kísérletet ro-szer (ahol
n > 2). Legyen s £ S. Legyen A a „nagy” kísérlet azon eseménye, amely akkor kö­
vetkezik be, ha az első kísérletnél, B pedig az az esemény, hogy az utolsó kísérletnél
s következik be. Mutassuk meg, hogy A és B független események.

5.2.4. Mit gondol az Olvasó, hány olyan ember él a Földön, akinek a születésnapja
egybeesik az anyja születésnapjával? És olyan, aki ugyanazon a napon született,
mint az anyja, az apja és a házastársa?

5.3. A nagy számok törvénye


Ebben az alfejezetben azzal a kísérlettel foglalkozunk, amelynek során (egy­
mástól függetlenül) n-szer dobunk fel egy pénzérmét. Az egyszerűség ked­
véért feltesszük, hogy n páros, azaz valamely m egész számra n = 2m. A
kísérlet kimenetelei olyan n hosszúságú sorozatok, amelyeknek minden tagja
vagy F, vagy I. Az n = 20 esetben például

FFIIIFIFIIFIFFFFIFII

a kísérlet egy tipikus kimenetele.


A nagy számok törvénye azt mondja ki, hogy ha sokszor dobjuk fel az ér­
mét, akkor a fejek száma körülbelül ugyanannyi lesz, mint az írások száma.
Hogyan lehetne ezt pontosan megfogalmazni? Az állítás nyilván nem igaz
mindig: előfordulhat, hogy nagyon szerencsések (vagy éppenséggel szeren­
csétlenek) vagyunk, és - mondjuk - sokáig nem dobunk fejet. Nem állít­
hatjuk, hogy ugyanannyi írás lesz, mint fej, csupán annyit, hogy számuk
valószínűleg nem tér el túlságosan.

Annak valószínűsége, hogy egy érmét n-szer feldobva a fejek aránya


49% és 51% közé esik, tart az 1-hez, amint n tart végtelenhez.
5.3. A NAGY SZÁMOK TÖRVÉNYE 89

Az állítás igaz marad akkor is, ha 49% helyett 49,9%-ot, 51% helyett
pedig 50,1%-ot, sőt, ha tetszőleges 50%-nál kisebb, illetve nagyobb számot
írunk. Ezt fejezi ki a nagy számok tövényének következő - legegyszerűbb -
változata:

5.3.1. T é t e l . Rögzítsünk egy tetszőlegesen kicsi pozitív £ számot. Ekkor


annak valószínűsége, hogy egy érmét n-szer feldobva a fejek aránya 0, 5 —s
és 0, 5 + e közé esik, tart az 1-hez, amint n tart végtelenhez.
A tétel szerint tehát - például - annak valószínűsége, hogy egy érmét n-
szer feldobva a fejek aránya 49% és 51% közé esik, eléri a 0,99-et is, amennyi­
ben n elég nagy. De mekkorának kell lennie az n-nek? Ha mondjuk n = 49
(elég nagy), akkor a fej dobások részaránya sohasem eshet 49% és 51% közé,
hiszen az első 24,01-nak, a második 24,99-nak felel meg, ezek között pedig
nincs egész szám. Mekkora n-nel biztosíthatjuk tehát, hogy a fejek száma a
kísérletek túlnyomó többségében az előírt intervallumba essen? A statisztikai
elemzésben ez a kérdés rendkívüli jelentőséggel bír, a választól függ ugyanis,
hogy a várható értéktől való eltérés statisztikai szempontból szignifikáns-e
vagy sem.
A nagy számok törvényének szerencsére léteznek erősebb alakjai is, köztük
olyanok, amelyek bizonyítása viszonylag egyszerű, és a Pascal-háromszög
általunk is tárgyalt jellemzőin alapul. A bizonyításból kiderül, hogy a nagy
számok törvénye nem valamiféle misztikus összefüggés, hanem a binomiális
együtthatók tulajdonságainak egyszerű következménye.

5.3.2. T é t e l . Legyen 0 < t < m. Annak valószínűsége, hogy egy érmét


2m-szer feldobva a fejek száma kisebb, mint m —t vagy nagyobb, mint m + t,
legfeljebb e~t2/ (m+tl
A tétel erejét demonstrálandó válaszoljunk a korábban feltett kérdésre:
Mekkorának kell lennie az n számnak ahhoz, hogy a fej dobások aránya mi­
nimum 0,99 valószínűséggel j.9% és 51% közé essen? Azt akarjuk tehát, hogy
m —t az n = 2m szám 49%-a legyen, ekkor nyilván t = m/50. A tétel szerint
annak valószínűsége, hogy a fejek száma a szóban forgó intervallumon kívül
esik, legfeljebb %m+t\ A kitevőben szereplő kifejezés:
/m \ 2
t2 = V5Ö/ _ __ m
m +t m +— 2550'
+ 50
Az e" m/ 2550 < 0, 01 egyenlőtlenséget könnyen megoldhatjuk m-re, csupán a
két oldal logaritmusát kell venni. Azt kapjuk, hogy m > 11 744 már elég. (Ez
elég nagy szám, de ne felejtsük el: a „nagy számok törvényéről” beszélünk.)
Vegyük észre, hogy m a kitevőben szerepel, így annak valószínűsége, hogy
a fejek száma a megadott intervallumon kívülre esik, m növekedtével roha­
mosan csökken. Ha például m = 1000 000, akkor ez a valószínűség kisebb,
90 5. KOMBINATORIKUS VALÓSZÍNŰSÉG

mint 10“ 170. Nemigen kételkedhetünk abban, hogy egymillió érmefeldobást


ismételve az ősrobbanás óta eltelt idő alatt egyetlen egyszer sem fordulna
elő, hogy a fejek aránya 49%-nál kisebb, vagy 51%-nál nagyobb.
Általában ilyen fokú bizonyosságra nincs szükségünk. Tegyük fel, hogy
a fejek arányát 95%-os valószínűséggel akarjuk előre látni, ugyanakkor az
ennek eleget tevő intervallumot a lehető legszűkebbre akarjuk fogni. Más
szóval: melyik az a legkisebb í, amelynél annak valószínűsége, hogy a fej
dobások száma m —í-nél kisebb, vagy m + í-nél nagyobb, kisebb, mint 0,05?
A 5.3.2. Tétel szerint ez akkor teljesül, ha

(Ez a feltétel csupán elégséges: ha fennáll, akkor a fejek száma legalább 0,95
valószínűséggel m —t és m + t közé esik. Kissé bonyolultabb megfontolások
alapján arra következtethetünk, hogy ennél kisebb í is megfelel.) Mindkét
oldal logaritmusát véve azt kapjuk, hogy

------- < -2,996.


m +t
Másodfokú egyenlőtlenséget kapunk, amely t-re megoldható, számunkra elég,
ha megjegyezzük: az egyenlőtlenséget í = 2^jm + 2 kielégíti. Eredményünk
a 5.3.2. Tétel egy speciális esete:
Egy pénzérmét 2m-szer feldobva a fejek száma 0,95 valószínűséggel
m — 2yfrri — 2 és m + 2\fm + 2 közé esik.
Ha m nagy, akkor 2v/m + 2 sokkal kisebb, mint m. Ha például m = 1 000 000,
akkor 2^/m = 2 002 « 0,002m, eszerint 0,95-ot meghaladja a valószínűsége
annak, hogy a fejek száma egyötöd százaléknál kisebb mértékben tér el m =
= n/2-től.
Itt az ideje, hogy rátérjünk a 5.3.2. Tétel bizonyítására.
B izonyítás : Jelölje Ak azt az eseményt, hogy a dobás eredménye pontosan
k alkalommal fej. Nyilvánvaló, hogy az Ak események páronként kizárják egy­
mást, miként az is, hogy minden dobássorozat alkalmával az Ak események
közül pontosan egy következik be.
A kísérlet azon kimeneteleinek száma,amelyben Ak bekövetkezik, azoknak
az n tagú sorozatoknak a száma, amelynek tagjai között k darab fej és n —k
darab írás van. Az ilyen sorozatok száma annyi, ahányféleképpen az n pozició
közül k darabot kiválaszthatunk, ()(), az Ak halmaz tehát ()() elemű. Mivel
az összes lehetséges sorozat száma 2", az Ak esemény valószínűsége:

P( ^ ) = ~Qn
Mi a valószínűsége annak, hogy a fejek száma jelentősen eltér a várt m = n/2
értéktől, vagyis m — í-nél kisebb, vagy m + í-nél nagyobb, ahol í egy
5.4. A „KIS SZÁMOK” ÉS A „NAGYON NAGY SZÁMOK" TÉTELE 91

m -nél nem nagyobb pozitív szám. Az 5.1.4. feladat eredménye alapján ennek
valószínűsége

2m 2m 2m 2m
+ ...+ + ...+
22r 0 1 m —t — 1 m+t+1
2m 2m
+
2m — 1 2m
A 3.8.2. Lemmából k = m —t-vel azt kapjuk, hogy
í 2m \ / 2m 2m 2m 2m
+ ...- < 22m—1
Vo V1 m —t — 1 m —t m
A (3.9) egyenlőtlenség alapján ez a kifejezés kisebb, mint
í^m —lg—t2/(m+í)

A Pascal-háromszög szimmetriája m iatt ezen felül teljesül, hogy


2m / 2to 2m 22mg_í2/(m+t)
m +t+ 1 \ 2m —1 2m
Annak valószínűsége tehát, hogy m —í-nél kevesebb, vagy m + f-nél több
fejet dobunk, kisebb, mint e~t /(m+t). Ezzel a tételt beláttuk. □

5.4. A „kis számok” és a „nagyon nagy számok”


tétele
A statisztikában két további (kevéssé komoly) törvénnyel találkozhatunk: a
kis számok törvényével és a nagyon nagy számok törvényével.
Az első „törvény” arra figyelmeztet, hogy ha csupán kis számú példát ve­
szünk szemügyre, akkor több olyan mintázattal is találkozhatunk, amely nem
állja ki az általánosítás próbáját. A kis számok körében csak kevés mintáza­
tot vehetünk észre, és fennáll a veszélye, hogy elhamarkodott következtetést
vonunk le. A „minden páratlan szám prím” állítást a 3, az 5 és a 7 példája
is alátámasztja (van, aki ide sorolná az 1-et is, elvégre 1 még a prímeknél
is egyszerűbb, hiszen csupán egyetlen osztója van). Az állítólagos „törvény”
persze 9-nél megbukik.
A prímek (még látni fogjuk) különösek: szabálytalan sorozatukban sok
olyan „szabályosságra” bukkanunk, amely a nagyobb számok esetében el­
tűnik. Egy drámai példa az n2 — n + 41 képlet, amelynek értéke az n =
= 0, 1, . . . , 40 számok mindegyikére prím, n = 41 esetén azonban a 412 —41+
+41 = 412 számot kapjuk, amely azonban nem prím.
A Fibonacci-számok nem olyan különösek, mint a prímek. A 4. fejezetben
ezen számok sok érdekes tulajdonságával megismerkedtünk, és megadtuk
92 5. KOMBINATORIKUS VALÓSZÍNŰSÉG

a sorozatot előállító explicit képletet is. Ezekkel a számokkal kapcsolatban


is előfordulhat, hogy bizonyos megfigyelések nem általánosíthatók. A 4.3.4.
feladatban találkoztunk például a Fibonacci-számokat „előállító” |"en/ 2_1]
képlettel, amely csupán a sorozat első 10 elemét adta meg helyesen. Egész
számok sorozatait sokféle képlettel előállíthatjuk, és szinte bizonyos, hogy
találunk különböző sorozatokat, amelyek első néhány eleme megegyezik.
A „kis számok törvényének” tanulsága tehát az, hogy egy megalapozott
sejtés megfogalmazásához többre van szükség néhány kedvező példánál vagy
egybeesésnél. A matematikában sincs semmi baj a sejtésekkel, a néhány pél­
dából levont általánosításokkal, de ezeket valamilyen módon - egy meggyőző
gondolatmenettel, vagy egy speciális eset bizonyításával - alá is kell támasz­
tanunk. A megtisztelő „tétel” nevet csak a bizonyított állítások érdemlik meg.

A „nagyon nagy számok törvénye” szerint különös egybeesések a nagyon


nagy számok között is előfordulhatnak. Egy barátunktól hallottunk például
két emberről, akik karácsonykor születtek, és sérelmezték, hogy csupán egy
ajándékot kapnak... Ez valóban különös. Vajon többen születtek december
24-én, mint az év más napjain? Nem, ez nem lehet magyarázat. Annak való­
színűsége, hogy valaki éppen december 24-én született, 1/365 (a szökőéveket
figyelmen kívül hagyva), ha tehát ismerünk - mondjuk - 400 embert, ak­
kor nem érhet bennünket meglepetésként, ha közülük 1 vagy 2 éppen ezen
a napon született. Nem valószínű persze, hogy minden ismerősünk születés­
napját számon tartjuk - sokkal valószínűbb, hogy emlékezünk azokra, akik
arra panaszkodtak, hogy nem kapnak elég ajándékot.
Mennyire találná az Olvasó különösnek, ha olyan emberrel találkozna, aki
anyjával, apjával és házastársával egy napon ünnepli a születésnapját? Aki
megoldotta a 5.2.4. feladatot, már tudja: a világon valószínűleg körülbelül
40 ilyen ember van...
Az efféle szenzációk már a bulvárlapok témáihoz és a paranormális jelen­
ségekhez vezetnek - jobb, ha itt elvágjuk a tárgyalás fonalát.

Á ttekintő feladatok
5.4.1. Kétszer dobunk egy dobókockával. Mi a valószínűsége, hogy a két szám
összege 8 ?

5.4.2. Véletlenszerűen kiválasztunk egy számot a {1, 2, 3, . . . , 30} halmazból. Le­


gyen A az az esemény, hogy a számunk osztható 2-vel, B, hogy osztható 3-mal, C,
hogy osztható 7-tel.
(a) Határozzuk meg az A, N és C események valószínűségét.
(b) Az (A , B ), (B , C ) és (A,C) eseménypárok közül melyik független?

5.4.3. Legyenek A és B független események. Fejezzük ki a P(AUB) valószínűséget


az A és a B valószínűségének segítségével.
5.4. A „KIS SZÁMOK” ÉS A „NAGYON NAGY SZÁMOK” TÉTELE 93

5.4.4. Válasszuk ki véletlenszerűen az S = {1, 2, . . . , 100} halmaz egy X részhal­


mazát (minden részhalmazt egyenlő valószínűséggel választunk). Mi a valószínűsége
annak, hogy
(a) X elemszáma páros;
(b) 1 és 100 egyaránt eleme A'-nek;
(c) X legnagyobb eleme 50;
(d) A-nek legfeljebb 2 eleme van.

5.4.5. Egyszerre n darab érmét dobunk fel n > 1). Milyen n érték mellett lesznek
függetlenek a következő események?
(a) Az első érme fej; a fejek száma páros.
(b) Az első érme fej; a fejek száma nagyobb, mint az írásoké.
(c) A fejek száma páros; a fejek száma nagyobb, mint az írások száma.
6. fejezet

Egész számok, osztók és


prímek

Ebben a fejezetben az egész számok tulajdonságaival foglalkozunk. A mate­


matikának ez a - számelméletnek nevezett - területe 2500 éves történelemre
tekinthet vissza, gyökerei a görög matematika kezdeteiig nyúlnak. Azt gon­
dolhatnánk, hogy két és fél évezred múltán lényegében mindent tudunk erről
a tárgyról. Látni fogjuk, hogy ez nem így van: vannak egyszerű, természe­
tes kérdések, amelyekre ma sem tudjuk a választ, és vannak olyan - szintén
egyszerű és természetes - kérdések is, amelyekre a választ csupán az utóbbi
években sikerült megadni.

6.1. O szthatóság
Kezdjük néhány alapfogalommal. Legyenek a és 6 egész számok; azt mond­
juk, hogy a osztója b-nek, vagy hogy b többszöröse a-nak, ha van olyan m
egész szám, amellyel b — am. Azt, hogy a osztója 6-nek, így jelöljük: a \ b,
annak jelölése pedig, hogy ez nem áll: a j 6. Ha a / 0, akkor a j 6 pontosan
akkor teljesül, ha b/a egész szám.
Ha a j b és a > 0, akkor beszélhetünk a 6 4- a maradékos osztásról is,
ennek maradéka olyan r szám, amelyre 0 < r < a. Ha a maradékos osztás
hányadosa q, akkor fennáll, hogy
b — aq + r.
Sokszor helyes, ha a maradékos osztásra ezen a szemüvegen át tekintünk.
Az Olvasó feltehetően találkozott már ezekkel a fogalmakkal. A következő
feladatokon ellenőrizheti, hogy mennyit őrzött meg az emlékezete.

6.1.1. A definíció alapján igazoljuk, hogy 1 | a, —1 | a, a | a és —a \ a bármely a


egész szám esetén.
6.2. A PRÍMSZÁMOK ÉS TÖRTÉNETÜK 95

6.1.2. Legyen a egész szám. Hogy mondjuk más szóval azt, hogy (a) 2 | a;
(b) 2 { a; (c) 0 | a.

6.1.3. Bizonyítsuk be, hogy


(a) ha a | 6 és &| c, akkor a | c;
(b) ha a \b és a | c, akkor a |& + c é s a | & —c;
(c) ha a,b > 0 és a \ b, akkor a < b\
(d) ha a \b és b | a, akkor a = b vagy a = —b.

6.1.4. Legyen r a í i - í a osztás maradéka; tegyük fel, hogy c [ a és c | b. Mutassuk


meg, hogy ekkor c | r.

6.1.5. Tegyük fel, hogy a \ b, és hogy a, b > 0. Legyen r a c é a osztás, s pedig a


c 4- b osztás maradéka. Adjuk meg az s é d osztás maradékát.

6.1.6. (a) Igazoljuk, hogy minden a egész szám esetén a —1 j a2 —1, és hogy
ennél több is igaz:
(b) minden a egész szám és n pozitív egész szám esetén

a —1 j an — 1.

6.2. A prímszámok és történetük


Egy p > 1 egész számot prímnek nevezünk, ha nincs más osztója, mint 1 ,- 1 ,
p és —p. Másképpen: egy p > 1 szám prím, ha nem írható fel két nála kisebb
pozitív egész szám szorzataként. Azokat az rí > 1 egész számokat, amelyek
nem prímek, összetett számoknak nevezzük. (Az 1-et nem soroljuk sem a
prím-, sem az összetett számok közé.) A 2, 3, 5, 7,11 számok tehát prímek, a
4 = 2-2, 6 = 2-3, 8 = 2-4, 9 = 3-3, 10 = 2- 5 számok viszont nem azok. A
6.1. táblázatban az 500-nál nem nagyobb prímeket tanulmányozhatjuk.
A prímek az ókor óta foglalkoztatják az ember fantáziáját. A prímek so­
rozata meglehetősen szabálytalan, bár az alaposabb vizsgálat számos rejtett
mintázatra fényt derített. Már a régi görögök... is tudták például, hogy vég­
telen sok prímszám létezik. (Nem csupán tudták: be is bizonyították!)
A további tények bizonyítása már korántsem volt ilyen egyszerű. A prímek
sorozata eléggé egyenletes, bár - mint a 6.1. ábra m utatja - „lyukak” és sű­
rűsödések egyaránt előfordulnak benne. Mekkorák lehetnek ezek a „lyukak”?
Létezik-e tetszőleges számjegyű prímszám? A kérdés jelentőségére a titkos­
írás tárgyalásakor derül majd fény. A válasz egyébként igen - de ezt csak a
tizenkilencedik század közepén sikerült bebizonyítani, és számos kérdést a
mai napig sem sikerült tisztázni!
A prímszámok elméletének a számítógépek térhódítása adott újabb impul­
zust. Hogyan dönthetjük el egy n pozitív egész számról, hogy prím-e vagy
sem? A probléma véges számú lépésben eldönthető ugyan (csak meg kell
96 6. EGÉSZ SZÁMOK, OSZTÓK ÉS PRÍMEK

1, 2 , 3 , 4, 5 , 6, 7, 8, 9, 10, 1 1 , 12, 1 3 , 14, 15, 16. 1 7 , 18, 1 9 , 20, 21, 22, 2 3 , 24, 25, 26,
27, 28, 2 9 , 30, 3 1 , 32, 33, 34, 35, 36, 3 7 , 38, 39. 40, 4 1 , 42, 4 3 , 44, 45, 46, 4 7 , 48, 49,
50, 51, 52, 5 3 , 54, 55, 56, 57, 58, 5 9 , 60, 6 1 , 62, 63. 64, 65, 66, 6 7 , 68, 69, 70, 7 1 , 72,
7 3 , 74, 75, 76, 77, 78, 7 9 , 80, 81, 82, 8 3 , 84, 85, 86, 87, 88, 8 9 , 90, 91, 92, 93, 94, 95, 96,
9 7 , 98, 99, 100, 1 0 1 , 102, 1 0 3 , 104, 105, 106, 1 0 7 , 108, 1 0 9 , 110, 111, 112, 1 1 3 , 114,
115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 1 2 7 , 128, 129, 130, 1 3 1 , 132,
133, 134, 135, 136, 1 3 7 , 138, 1 3 9 , 140, 141, 142, 143, 144, 145, 146, 147, 148, 1 4 9 , 150,
1 5 1 , 152, 153, 154, 155, 156, 1 5 7 , 158, 159, 160, 161, 162, 1 6 3 , 164, 165, 166, 167, 168,

169, 170, 171, 172, 1 7 3 , 174, 175, 176, 177, 178, 1 7 9 , 180, 1 8 1 , 182, 183, 184, 185, 186,
187, 188, 189, 190, 1 9 1 , 192, 1 9 3 , 194, 195, 196, 1 9 7 , 198, 1 9 9 , 200, 201, 202, 203, 204,
205, 206, 207, 208, 209, 210, 2 1 1 , 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222,
2 2 3 , 224, 225, 226, 2 2 7 , 228, 2 2 9 , 230, 231, 232, 233, 234, 235, 236, 237, 238, 2 3 9 , 240,

2 4 1 , 242, 243, 244, 245, 246, 247, 248, 249, 250, 2 5 1 , 252, 253, 254, 255, 256, 2 5 7 , 258,

259, 260, 261, 262, 2 6 3 , 264, 265, 266, 267, 268, 2 6 9 , 270, 2 7 1 , 272, 273, 274, 275, 276,
2 7 7 , 278, 279, 280, 2 8 1 , 282, 2 8 3 , 284, 285, 286, 287, 288, 289, 290, 291, 292, 2 9 3 , 294,

295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 3 0 7 , 308, 309, 310, 3 1 1 , 312,
3 1 3 , 314, 315, 316, 3 1 7 , 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330,

3 3 1 , 332, 333, 334, 335, 336, 3 3 7 , 338, 339, 340, 341, 342, 343, 344, 345, 346, 3 4 7 , 348,

3 4 9 , 350, 351, 352, 3 5 3 , 354, 355, 356, 357, 358, 3 5 9 , 360, 361, 362, 363, 364, 365, 366,
3 6 7 , 368, 369, 370, 371, 372, 3 7 3 , 374, 375, 376, 377, 378, 3 7 9 , 380, 381, 382, 3 8 3 , 384,

385, 386, 387, 388, 3 8 9 , 390, 391, 392,393, 394, 395, 396, 3 9 7 , 398, 399, 400, 4 0 1 , 402,
403, 404, 405, 406, 407, 408, 4 0 9 , 410, 411, 412, 413, 414, 415, 416, 417, 418, 4 1 9 , 420,
4 2 1 , 422, 423, 424, 425, 426, 427, 428, 429, 430, 4 3 1 , 432, 4 3 3 , 434, 435, 436, 437, 438,

4 3 9 , 440, 441, 442, 4 4 3 , 444, 445, 446, 447, 448, 4 4 9 , 450, 451, 452, 453, 454, 455, 456,
4 5 7 , 458, 459, 460, 4 6 1 , 462, 4 6 3 , 464, 465, 466, 4 6 7 , 468, 469, 470, 471, 472, 473, 474,
475, 476, 477, 478, 4 7 9 , 480, 481, 482, 483, 484, 485, 486, 4 8 7 , 488, 489, 490, 4 9 1 , 492,
493, 494, 495, 496, 497, 498, 4 9 9 , 500

6.1. táblázat. Az 500-nál kisebb prímszámok.

vizsgálni minden n-nél kisebb pozitív szám esetén, hogy osztója-e n-nek),
ez a módszer azonban a gyakorlatban használhatatlan, ha n mondjuk 20-
vagy többjegyű szám. Csupán az elmúlt negyedszázadban találtak olyan ha­
tékonyabb algoritmusokat (számítógép-programokat), amelyek segítségével
eldönthető, hogy egy szám prím-e. Ezeket felhasználva akár egy 1000-jegyű
számról is meglehetősen könnyen eldönthetjük, prím-e vagy sem.
Ha egy 1-nél nagyobb szám nem prím, akkor felírható prímszámok szor­
zataként: előbb felírjuk a számot két kisebb szám szorzataként, ha ezen té­
nyezők valamelyike nem prím, akkor felírható két (nála) kisebb pozitív szám
szorzataként - az eljárást folytatva olyan szorzathoz jutunk, amelynek min­
den tényezője prím. Már az ókori görögök is ismerték (mi több, bebizonyítot­
ták!) ennek a reprezentációnak egy fontos tulajdonságát: az egyértelműségét.
Ez azt jelenti, hogy az n számot csak egyféleképpen írhatjuk fel prímek
szorzataként (eltekintve természetesen attól, hogy a szóban forgó prímeket
6.3. PRÍMTÉNYEZŐS FELBONTÁS 97

0 200 400 600 800 1000

6.1. ábra. Az 1000-nél kisebb prímszámok „vonaldiagramja”.

különböző sorrendben is összeszorozhatjuk). A bizonyítás - amint a követ­


kező alfejezetben látni is fogjuk - nem éppen egyszerű, és annak felismerése,
hogy ilyen bizonyításra szükség van, komoly absztrakciót igényelt. Mégis: az
eredmény több mint kétezer éves!
Ami viszont meglepő lehet: a mai napig nem ismerünk hatékony módszert
egy szám prímfelbontásának megtalálására. Léteznek természetesen szuper­
számítógépek, amelyek igen nagy számokkal is képesek elbánni; jelenleg 140
jegyű számok felbontását is meg tudják határozni, de a megoldáshoz szük­
séges idő a számjegyek számával igen gyorsan (exponenciálisan) növekszik.
Egy 400-jegyű szám prímfelbontásának meghatározása a belátható jövőben,
úgy tűnik, megoldhatatlan marad.

6.3. Prímtényezős felbontás


Láttuk tehát, hogy minden 1-nél nagyobb összetett szám felírható prím­
számok szorzataként. Mondhatjuk persze azt is, hogy minden pozitív egész
szám felírható prímek szorzataként, amennyiben a prímeket „egytényezős”
szorzatnak tekintjük (akinek kedve van, 1-et akár az „üres szorzatnak” is
nevezheti). Ezt figyelembe véve mondjuk ki és bizonyítjuk be azt a tételt,
amelyre gyakran mint a számelmélet alaptételére hivatkoznak.

6.3.1. T é t e l . Minden pozitív egész szám felírható prímszámok szorzata­


ként, és ez a felírás - a tényezők sorrendjétől eltekintve - egyértelmű.

B i z o n y í t á s : A tétel bizonyításához a teljes indukció egy változatát, a „mi­


nimális kriminális” elvét alkalmazzuk. Indirekt okoskodunk: feltesszük, hogy
az állítás hamis, és ebből - a minimális kriminális elv segítségével - ellent­
mondásra jutunk.
Tegyük fel tehát, hogy létezik olyan pozitív egész szám, amelynek prímté­
nyezőkre bontása nem egyértelmű: nevezzük az ilyen egész számokat krimi­
nálisnak. Előfordulhat, hogy több kriminális szám létezik, de mindenképpen
98 6. EGÉSZ SZÁMOK, OSZTÓK ÉS PRÍMEK

van közöttük egy legkisebb, jelöljük ezt a számot - a minimális kriminálist -


n-nel. Mivel kriminális, legalább két különböző módon felbontható prímszá­
mok szorzatára:
n = Pi ■p2 ■■■Pm - Q\ ■92 • • • qk •
Feltehetjük, hogy pi a legkisebb olyan prím. amely ezekben a felbontások­
ban előfordul. (Ha nem ez lenne a helyzet, átrendezhetnénk a szorzatokat,
és ha szükséges, a két szorzat is helyet cserélhet, aminek eredményeként a
bal oldali szorzat első tényezője a két szorzatban előforduló tényezők leg-
kisebbike lesz. Ilyenkor a matematikusok a következő fordulattal élnek: az
általánosság csorbítása nélkül feltehetjük, hogy...) Stratégiánk a következő:
megmutatjuk, hogy létezik n-nél kisebb kriminális egész szám - ez pedig va­
lóban ellentmondás lesz, hiszen feltevésünk szerint n a legkisebb ilyen szám.
A pi szám nem fordulhat elő a qi tényezők között, ha ugyanis ez lenne
a helyzet, akkor mindkét oldalt pi-gyel osztva egy n-nél kisebb kriminális
számot kapnánk.
Osszuk el maradékosan a qi-két pi-gyel: qi = p\üi + r*, ahol 0 < r* < pi-
Tudjuk, hogy r* ^ 0, elvégre egy prím nem lehet osztója egy másik prímnek.
Legyen n! = r\r 2 ---r k. Belátjuk, hogy n' egy n-nél kisebb kriminális
szám. Világos, hogy n < pi < qu így rí = r ir 2 ---rk < q \q i---q k = n.
Megmutatjuk, hogy n'-nek is van két különböző prímfelbontása. Ezek egyi­
két maga a definíció szolgáltatja: rí = r ir 2 ---rk- Az r* tényezők között
előfordulhatnak összetett számok is, de prímtényezőkre bontva őket rí egy
felbontását is megkaphatjuk.
A másik felbontás felírásához vegyük észre, hogy p\ \ r í . Valóban: az rí-1
definiáló szorzatot

rí = (qi - aipi)(q2 - a2p\) ■■■(qk ~ akpi)

alakban is felírhatjuk, és a szorzás elvégzésével kapott tagok egytől-egyig


oszthatók pi-gyel. (A tagok egyike qiq2 ■■■qk, ez egyenlő n-nel, így osztható
pi-gyel; a többi tag pedig olyan szorzat, amelynek egyik tényezője pi.) Az
n'-t ezután pi-gyel elosztva, majd az rí jp \ számot prímtényezőkre bontva
megkapjuk rí egy felbontását.
Különbözik-e a két felbontás? Igen! A p\ a másodikban szerepel, az első­
ben viszont nem, ebben ugyanis minden tényező kisebb, mint p\.
Találtunk tehát egy n-nél kisebb kriminális számot. Mivel azonban felte­
vésünk szerint n a kriminálisok legkisebbike, ilyesminek nem szabadott volna
előfordulnia. Az ellentmondást csak úgy oldhatjuk fel, ha elismerjük: krimi­
nális számok nem léteznek. Az eredeti feltevésünk tehát hamis: nincs olyan
egész szám, amelynek létezik két különböző prímtényezős felbontása. □

6.3.1. Olvasuk el figyelmesen a következő minimális kriminális érvelést.


Á llítás. Minden negatív egész szám páratlan.
6.3. PRÍMTÉNYEZŐS FELBONTÁS 99

B i z o n y í t á s . Tegyük fel (az ellentmondás kedvéért), hogy léteznek páros


negatív számok. Nevezzük ezeket a számokat kriminálisnak; legyen n a mi­
nimális kriminális. Tekintsük a 2n számot. Mivel n negatív, 2n kisebb, mint
n, így - mivel nyilvánvalóan páros - egy n-nél kisebb kriminális szám. Ez
azonban ellentmondás, elvégre n a kriminális számok legkisebbike.
Az állítás nyilvánvalóan hamis. Hol a hiba a bizonyításban?

A 6.3.1. Tétel alkalmazásaként most belátunk egy tételt, amelyet már a


pitagoreusok (az i.e. 6. században élt görög matematikus-filozófus, Pitago-
rasz tanítványai és követői) is ismertek.

6.3.2. T é t e l . A \/2 szám irracionális.

(Egy valós számot irracionálisnak nevezünk, ha nem írható fel két egész szám
hányadosaként. A pitagoreusok számára a probléma geometriai természetű:
arra voltak ugyanis kíváncsiak, hogy összemérhető-e egy négyzet átlója a
négyzet oldalával, azaz létezik-e olyan szakasz, amelynek egész számú több­
szöröseként mindkettő előállítható. A tétel szerint a válasz tagadó, ami a
pitagoreus iskolában komoly felbolydulást okozott.)
B IZ O N Y ÍT Á S : Újfent indirekt úton bizonyítunk: feltesszük, hogy racioná­
lis, és feltevésünkből ellentmondást vezetünk le. Az indirekt hipotézis szerint
tehát vannak olyan a és b egész számok, amelyekkel \[2 = a/b. Mindkét ol­
dalt négyzetre emelve és 62-tel szorozva a 2b2 = a2 egyenlőséget kapjuk.
Tekintsük most a két oldal prímtényezős felbontását, és vizsgáljuk meg,
hogy ezekben hányszor szerepel a 2. Tegyük fel, hogy a 2 az a prímtényezős
felbontásában m-szer, a 6-ében pedig n-szer fordul elő. Ekkor az a2 szám
prímtényezős felbontásában 2m darab 2-es szerepel. Másrészt b2 prímténye­
zős felbontásban a 2-esek száma 2n, így 2b2 felbontásában 2n + 1 darab 2-es
szerepel. A 2b2 = a2 egyenlőség és a prímtényezős felbontás egyértelműsége
alapján így azt kapjuk, hogy 2n + 1 = 2m. Ez azonban nem lehetséges, el­
végre 2n + l páratlan, 2m pedig páros. A kapott ellentmondás azt bizonyítja,
hogy \[2 irracionális szám. □

6.3.2. Létezik-e páros prímszám?

6.3.3. (a) Bizonyítsuk be, hogy ha p prímszám, a és b egész számok, továbbá


p | ab, akkor p \ a vagy p \ b (vagy mindkettő).
(b) Tegyük fel, hogy a és b egész számok, valamint hogy a | b. Tegyük fel továbbá,
hogy p prím, és hogy p \ b, de p \ a. Mutassuk meg, hogy p osztója a b/a
hányadosnak.

6.3.4. Mutassuk meg, hogy az n szám prímtényezős felbontásában legfeljebb log2 n


tényező szerepel.
100 6. EGÉSZ SZÁMOK, OSZTÓK ÉS PRÍMEK

6.3.5. Legyen p prímszám és 1 < a < p —1. Tekintsük az a, 2a, 3a,..., (p — l)a
számokat, amelyek p-vel osztva az r i , r 2 , . . . . rp_i maradékokat adják. Igazoljuk,
hogy az 1 és p —1 közötti egész számok mindegyike pontosan egyszer szerepel az
n maradékok között.
[Útmutatás: előbb lássuk be, hogy egyik maradék sem fordulhat elő kétszer.]

6.3.6. Igazoljuk, hogy ha p prím, akkor y/p irracionális. Ennél több is igaz: ha n
nem négyzetszám, akkor yfn irracionális.

6.3.7. Fogalmazzunk meg és bizonyítsunk be egy még általánosabb eredményt


arról, hogy mikor irracionálisak a yfn gyökök.

6.4. A prímszámok halmaza


A következő tételt már az i.e. 3. században élt Euklidész is ismerte.

6 .4 .1 . T É T E L . Végtelen sok prímszám van .

B izonyítás : Azt kell belátnunk, hogy tetszőleges n pozitív szám esetén


létezik n-nél nagyobb prímszám. Tekintsük ehhez az ni + 1 számot; legyen
p az ni + 1 szám egy prímosztója. Belátjuk, hogy p > n. Indirekt módon
bizonyítunk: feltesszük, hogy p < n. Ha p < n, akkor p \ n\, hiszen p ekkor
egyike az n! szorzat tényezőinek. Azt is tudjuk, hogy p \ n\ + 1, minek követ­
keztében p osztója (n! + 1) —n! = 1-nek is. Ez azonban lehetetlen - a kapott
ellentmondás azt mutatja, hogy p-nek n-nél nagyobbnak kell lennie. □
Ha egy prímtáblázatot alaposan megvizsgálunk, első benyomásunk az,
hogy a prímszámok sorozata meglehetősen szabálytalan. A 6.1. ábra az 1000-
nél kisebb prímeket mutatja, minden prímnek egy vonalat feletet meg. A
vonalak között nagyobb „réseket” éppúgy találhatunk, mint sűrűsödéseket.
Belátható, hogy amint egyre nagyobb számokat vizsgálunk, a „rések” egyre
nagyobbá válnak: létezik olyan 100 tagú sorozat, amelynek tagjai egymást
követő összetett számok, de van - jóval később - 1000 tagú ilyen sorozat is
stb. A precíz matematikai megfogalmazás a következő:

6.4 .2 . TÉTEL. Tetszőleges pozitív egész k szám esetén létezik k darab egy­
más után következő összetett szám.

BIZONYÍTÁS: Bizonyításunk némileg hasonlít a 6.4.1. Tétel bizonyítására.


Legyen tehát n = k + 1, és tekintsük az

n! + 2, n! + 3, . . . , n! + n

számokat. Lehet-e ezek közül bármelyik is prím? Nem: az első szám páros,
elvégre n! és 2 is az. A második szám osztható 3-mal, hiszen (feltéve, hogy
6.4. A PRÍMSZÁMOK HALMAZA 101

n > 2) n\ és 3 egyaránt osztható 3-mal. Általában: az ni + i szám minden


i = 2 , 3 esetén osztható i-vel. A számok egyike sem prím, találtunk
tehát egy n — 1 = k hosszúságú, egymás utáni összetett számokból álló
sorozatot. □
Mi a helyzet az érem másik oldalával: vannak-e olyan prímek, amelyek
nagyon közel vannak egymáshoz? Mivel 2 kivételével minden prím páratlan,
két prím különbsége csak úgy lehet 2-nél kisebb, ha egyikük 2, a másik pedig
3. Ha két prímszám különbsége 2, akkor ikerprímeknek nevezzük őket, (3, 5),
(5,7), (11,13), (17,19) például ikerprímek. Az 500-ál kisebb prímszámok
táblázatát megvizsgálva számos ikerprímet találhatunk, erősebb eszközökkel
találtak már több száz jegyű ikerprímeket is. Ennek ellenére nem tudjuk,
létezik-e végtelen sok ikerprím-pár! (Szinte biztos, hogy a válasz igen - de
ennek bizonyításával a matematikusok 2000 éve hiába próbálkoznak.)
A 6.4.2. Tételen még egyet csavarunk, ha azt kérdezzük: mekkorák a prím­
számok közötti rések a számegyenesen elfoglalt helyükhöz képest? Lehetsé­
ges-e, hogy - például - egyáltalán nem létezik 100 jegyű prímszám? Ez is
kemény dió, de már ismerjük a választ: nem lehetséges.

6.2. ábra. A n(n) függvény grafikonja 1-től 100-ig.

A prímszámokkal kapcsolatos kérdések közül az egyik legfontosabb a kö­


vetkező: hány n-nél kisebb prím van (ahol n egy pozitív egész szám). Az
n-nél nem nagyobb prímek számát n(n) jelöli. A 6.2. ábra a 7r(n) függvény
grafikonját 1-től 100-ig, a 6.3. ábra pedig 1-től 2000-ig mutatja. Látható,
hogy a függvény szép lassan nő. meredeksége pedig folyamatosan csökken.
102 6. EGÉSZ SZÁMOK, OSZTÓK ÉS PRÍMEK

6.3. ábra. A ír(n) függvény grafikonja 1-től 2000-ig.

A függvényre egzakt képlet szinte biztos, hogy nem adható meg; 1900 körül
azonban Hadamard és de la Vallée Poussin bebizonyítottak egy rendkívül
erős állítást, amelyet méltán neveznek prímszámtételnek.

6 .4 .3 . T é t e l . (P rím szá m tétel) Jelölje n (n) az 1 ,2 , . . . , n számok között


található prímek számát. Ekkor

(Itt ln n megint a „természetes - vagyis az e = 2,718281... alapú - loga­


ritmust jelöli. Emlékeztetünk arra is, hogy a tételben szereplő közelítés a
következőt jelenti: amint n „minden határon túl” növekszik, a
n
n(n)
/ In n
hányados egyre közelebb lesz 1-hez.)
A prímszámtétel bizonyítása igen-igen bonyolult. Azt, hogy az n-nél nem
nagyobb prímek száma körülbelül n /ln n , már a 18. században sejtették, de
a bizonyításra több mint 100 évig várni kellett, mígnem 1896-ban Hadamard
és de la Vallée Poussin sikerrel jártak.
A tétel segítségével válaszolhatunk például a következő kérdésre: hány 200
jegyű prímszám van? A választ megkaphatjuk, ha a 10200-nál nem kisebb
6.4. A PRÍMSZÁMOK HALMAZA 103

prímszámok számából kivonjuk a 10199-nél nem kisebb prímszámok számát.


A prímszámtétel szerint ez a különbség jó közelítéssel:

ÍO200 10199
« 1.95- 10 197
200 In 10 199 In 10
Ez jó sok prímszám! Mivel összesen ÍO200 —10199 = 9 ■10199 darab 200-jegyű
szám van, könnyen megmondhatjuk, milyen sűrűén helyezkednek el közöttük
a prímek:
9 • 10199
460.
1,95- 10197
A 200-jegyű számok között tehát nagyjából minden 460-adik prím.
(Vigyázat: az érvelés nem tökéletesen pontos. A hiba forrása az, hogy a
prímszámtétel csupán annyit állít: n(n) elég közel lesz n / lnn-hez, ha n elég
nagy. Rákérdezhetnénk például arra, hogy mekkorának kell az n-nek lennie
ahhoz, hogy a két kifejezés eltérése 1%-nál kisebb legyen, de ez még nehezebb
- és maradéktalanul ma sem megoldott - problémákhoz vezetne.)
A prímszámok táblázatát vizsgálgatva további egyszerűnek látszó kérdése­
ket is feltehetünk, amelyekről mindazonáltal kiderül: sokkal bonyolultabbak,
mint amilyennek látszanak. Több olyan van közöttük, amelyet a mai na­
pig nem sikerült tisztázni, nem egy esetben két és fél évezredes próbálkozás
ellenére. Már említettük az ikerprímek problémáját. Egy másik híres meg­
oldatlan probléma a Goldbach-sejtés, amely szerint minden 2-nél nagyobb
páros szám felírható két prímszám összegeként. Goldbach a páratlan szá­
mokról is megsejtett valamit: minden 5-nél nagyobb páratlan szám felírható
három prímszám összegeként. Ez utóbbit - mély módszerek mozgósításával
- a 30-as években Vinogradov „lényegében” bebizonyította. A „lényegében”
fordulattal arra utalunk, hogy a bizonyítás csak nagyon nagy számokra ér­
vényes, és továbbra sem tisztázott, hogy van-e a sejtés alól kivétel.
Tegyük fel, hogy adott számunkra egy n egész szám és arra vagyunk kíván­
csiak, hogy milyen gyorsan bukkanunk n után egy prímszámra. Felmerülhet
például a következő kérdés: mekkora a legkisebb 100-jegyű prímszám? A
prímszámok halmaza végtelenségének bizonyítása során beláttuk, hogy n és
n\ + 1 között biztosan találunk prímszámot. Ez nem túl erős állítás: n = 10
esetén például annyit mond, hogy 10 és 10! + 1 = 3 628 801 között bizto­
san találunk prímszámot - és valóban, a l l például ilyen... P. L. Csebisev
orosz matematikus a 19. század közepén bebizonyította, hogy tetszőleges
n esetén n és 2n között biztosan van legalább egy prímszám. Ma már azt
is tudjuk, hogy két egymás utáni köbszám (tehát például 103 = 1000 és
l l 3 = 1331) között is találunk prímszámot. Az azonban, hogy ez a szomszé­
dos négyzetszámokra is igaz-e, még mindig a híres, bizonyítatlan problémák
táborát erősíti. (Próbáljuk ki: elég sok prímszámot találhatunk; 100 = 102
és 121 = l l 2 között például 101, 103, 107, 109 és 113, 1002 = 10 000 és
1012 = 10 201 között 10 007, 10 009, 10 037, 10 039, 10 061, 10 067, 10 069,
104 6. EGÉSZ SZÁMOK, OSZTÓK ÉS PRÍMEK

10079, 10091, 10093, 10099, 10103, 10111, 10133, 10139, 10141, 10151,
10 159, 10163, 10169, 10177, 10 181 és 10 193 a prímek.)

6.4.1. Bizonyítsuk be, hogy a fc-jegyű számok között körülbelül minden 2, 3k da­
rab számra esik egy prímszám.

6.5. A „kis” Ferm at-tétel

Pierre de Fermat

A prímek fontosságát az adja, hogy prímek szorzataként minden szám


előállítható. Ezen felül azonban számos más érdekes tulajdonsággal is ren­
delkeznek; például azzal, amelynek fennállását a francia Pierre de Fermat
bizonyította be. A következő tételt „kis” Fermat-tétel néven emlegetjük.

6.5 .1 . T é t e l . („Kis” F erm a t-tétel) Tetszőleges p prímszám és a egész


szám esetén p | ap — a.
Mielőtt a bizonyításra rátérnénk, megjegyezzük, hogy a tételt gyakran a
következő alakban mondják ki: ha p prímszám, a pedig p-vel nem osztható
egész szám, akkor
p | ap~l — 1. (6.1)
Annak igazolását, hogy a két állítás ekvivalens (abban az értelemben, hogy
bármelyikből következik a másik), az Olvasóra bízzuk (6.10.20. feladat).
Fermat tételének bizonyításához szükségünk lesz egy lemmára, amely szin­
tén a prímek egy oszthatósági jellemzőjét mondja ki (de egyszerűbben bizo­
nyítható) .
6.5. A „KIS” FERMAT-TÉTEL 105

6.5.2 L e m m a . Ha p prímszám és 0 < k < p. akkor p j (£) .

B iz o n y ít á s : A 1.8.1. Tétel alapján

f p \ = p ( p - l ) - - - ( p - k + 1)
\k) k(k — 1) • • ■1

A tört számlálója osztható p-vel, a nevezője azonban nem: a nevezőben


szereplő tényezők mindegyike kisebb p-nél, és a 6.3.3. feladat (a) része alap­
ján tudjuk, hogy ha egy p prím egyik tényezőnek sem osztója, akkor nem
osztója a szorzatnak sem. Mindebből az következik (1. a 6.3.3. feladat (b)
részét), hogy p | (p) □
A 6 .5 .1. té te l b izo n yítása. A „kis” Fermat-tételt indukcióval bizonyítjuk
be. Az állítás az a = 0 esetben triviálisan igaz. Az indukciós lépéshez legyen
0 < a = b T 1• Ekkor

aP - a = ( b + l ) p - { b + í ) = bP+ ( ^ j b p~1 + . . . + (K pP
_ ^ ) b+ 1- b- l =

=(v-i)+(^y-+...+(/_1y
A zárójelben szereplő bp — b az indukciós feltevés szerint osztható p-vel, a
többi tagra pedig a 6.5.2. Lemma alapján teljesül ugyanez. Eszerint ap — a
szintén osztható p-vel, amint azt bizonyítani kellett. A bizonyítás teljessé
tételéhez meg kell mutatni, hogy a < 0 esetén is igaz az állítás. Világos, hogy
a2 —a = a(a —1) páros szám, hisz egy páros és egy páratlan szám szorzata,
így p = 2 esetén fennáll az állítás. Ha pedig p > 2, akkor p páratlan volta
miatt ap —a — —((—a)p —(—a)), ami a bizonyítás első része szerint egy p-vel
osztható szám (—l)-szerese, így szintén osztható p-vel. □
Egy megjegyzés erejéig pillantsunk bele a matematikatörténet mély kút­
jába. Ferrnat hírneve mindenekelőtt nevezetes „sejtéséből” („utolsó tételé­
ből”), a „nagy” Fermat-tételből ered:

Ha n > 2, akkor két pozitív egész szám n-edik hatványának összege


egyetlen pozitív számnak sem n-edik hatványa.

(Az n > 2 kikötés nem hagyható el, elvégre két négyzetszám összege minden
további nélkül lehet négyzetszám, például 32 + 42 = 52 vagy 52 + 122 = 132.
Mi több: végtelen sok ilyen - „pitagoraszi” - számhármas létezik, 1. a 6.6.7.
feladatot.)
Fermat azt állította, hogy sikerült bebizonyítania az állítást, de sohasem
írta le. A Fermat-sejtés 1995-ig a matematika talán leghíresebb megoldatlan
problémája volt, amikor Andrew Wilesnak (részben Richard Taylor segítsé­
gével) sikerült bebizonyítania.
106 6. EGÉSZ SZÁMOK, OSZTÓK ÉS PRÍMEK

6.5.1. Mutassuk meg, hogy sem a 6.5.2. Lemma. sem a „kis” Fermat-tétel nem
marad érvényben, ha p nem prím.

6.5.2. Tekintsünk egy szabályos p-szöget, és rögzítsünk egy 1 < k < p —1 szá­
mot. A p-szög csúcsaiból álló k elemű halmazokat helyezzük skatulyákba olyan
módon, hogy két ilyen halmaz pontosan akkor kerüljön ugyanabba a skatulyába,
ha a p-szög középpontja körüli elforgatással egymásba vihetó'k. így például a szom­
szédos csúcsokat tartalmazó k elemű részhalmazok mind ugyanabba a skatulyába
kerülnek.
(a) Igazoljuk, hogy ha p prímszám, akkor minden skatulyába pontosan k darab
halmaz kerül.
(b) Bizonyítsuk be, hogy ha p nem prímszám, akkor (a) nem igaz.
(c) A feladat (a) része alapján adjunk új bizonyítást a 6.5.2. Lemmára.

6.5.3. Tekintsük azokat a számokat, amelyeknek az a-alapú számrendszerben pon­


tosan p számjegyük van. Tegyük ezeket a számokat is skatulyákba: két szám pon­
tosan akkor kerüljön ugyanabba a skatulyába, ha egyik a másikból „ciklikus elto­
lással” megkapható. Hány szám kerül egy-egy dobozba? A válasz alapján adjuk
meg a Fermat-tétel egy új bizonyítását.

6.5.4. Adjuk meg a „kis” Fermat-tétel harmadik bizonyítását a 6.3.5. feladat


alapján. [Útmutatás: tekintsük az a(2a)(3a) • • • ({p —l)a) szorzatot.]

6.6. Az euklideszi algoritmus


Miután az egész számokra vonatkozóan sok fontos fogalmat és tételt meg­
ismertünk, figyelmünket arra összpontosítjuk, hogy miként lehet ezekkel az
eredményekkel kapcsolatban számításokat végezni. Hogyan dönthető el, hogy
egy szám prím-e vagy nem? Ha pedig összetett, akkor hogyan kapható meg
a prímtényezős felbontása?
Az alapműveletek - az összeadás, a kivonás, a szorzás és az osztás - el­
végzésére hatékony módszereink vannak, ezeket ehelyütt nem tárgyaljuk.
Az „algoritmikus számelmélet” kulcsfontosságú módszere az az algoritmus,
amelynek segítségével meghatározható tetszőleges a és b pozitív egész számok
legnagyobb közös osztója, vagyis a legnagyobb olyan egész szám, amely a-nak
és &-nek egyaránt osztója. (Mivel az 1 mindig közös osztó, továbbá egyetlen
közös osztó sem lehet sem a-nál, sem 6-nél nagyobb, a definíció értelmes:
bármely két egész számnak van legnagyobb közös osztója, és ez egyértelmű.)
Az a és b egész számok legnagyobb közös osztóját lnko(a, b) jelöli. Lássunk
néhány példát:
lnko(l,6) = l, lnko(2,6) = 2, lnko(3,6) = 3,
lnko(4,6) = 2, lnko(5,6) = 1, lnko(6,6) = 6.
Két egész számot relatív prímnek nevezünk, ha legnagyobb közös osztójuk
1. Kényelmes lesz, ha tetszőleges a > 0 esetén megállapodunk abban, hogy
lnko(a, 0) = a.
6.6. AZ EUKLIDESZI ALGORITMUS 107

A legnagyobb közös osztó legközelebbi rokon fogalma a legkisebb közös


többszörös. Az a és b számok legkisebb közös többszöröse a legkisebb olyan
szám, amelynek a és 6 is osztója; jelölése lkkt(a.ö). Például:

lkkt (1,6) = 6, lkkt (2,6) = 6, lkkt (3, 6) = 6,


lkkt (4,6) = 12, lkkt (5,6) = 3 0 , lkkt (6,6) = 6.

Két egész szám legnagyobb közös osztóját a számok prímtényezős felbon­


tásának ismeretében könnyen meghatározhatjuk: tekintsük az összes prím­
számot, amely mindkét szám felbontásában előfordul, mindegyiknek vegyük
azt a hatványát, amelynek kitevője a felbontásokban szereplő kitevők kö­
zül a kisebb (vagy bármelyik, ha a kettő egyenlő), és szorozzuk össze eze­
ket a hatványokat. így például 900 = 22 • 32 ■52 és 54 = 2 • 33 alapján
lnko(900, 54) = 2 • 32 = 18.
A módszer legnagyobb problémája, hogy nagy számok prímtényezős fel­
bontását igen nehéz megtalálni. Ebben az alfejezetben a legnagyobb közös
osztó kiszámítására olyan algoritmust mutatunk be, amely - a prímténye­
zős felbontás nélkül - sokkal gyorsabban eredményre vezet. Ez az algoritmus
szinte minden, egész számokon értelmezett algoritmusnak része, és - ahogy
a nevéből is kiderül - már a régi görögök is ismerték.

6.6.1. Igazoljuk, hogy ha az a és b egész számokra a \ b, akkor lnko(a, b) = a.

6.6.2. (a) Bizonyítsuk be, hogy lnko(a,b) = lnko(a.,& —a).


(b) Legyen r a b egész szám a-val való osztásának maradéka. Mutassuk meg,
hogy ekkor lnko(a, 6) = lnko(a,r).

6.6.3. (a) Ha a páros, b pedig páratlan, akkor lnko(a,b) = lnko(o/2,ö).


(b) Ha a és b egyaránt páros, akkor lnko(a, b) = 2 • lnko(a/2, b/2).

6.6.4. Hogyan adható meg két szám legkisebb közös többszöröse a számok prím-
tényezős felbontása alapján?

6.6.5. Tegyük fel, hogy két egész szám közül csupán az egyik prímtényezős fel­
bontását ismerjük. Hogyan határozhatjuk meg ekkor a két szám legnagyobb közös
osztóját?

6 .6 .6 . Igazoljuk, hogy tetszőleges a és b egész számok esetén

lnko(a, b) ■lkkt (a, b) = ab.

6.6.7. Az a, b, c egész számokból álló hármast pitagoraszi számhármasnak nevez­


zük, ha a2 + b2 = c2.
(a) Legyenek x, y és z tetszőleges egész számok, legyen továbbá a = 2xyz,
b = (x 2 —y2)z és c = (x 2 + y2)z. Mutassuk meg, hogy (a.b.c) pitagoraszi
számhármas.
108 6. EGÉSZ SZÁMOK, OSZTÓK ÉS PRÍMEK

(b) Bizonyítsuk be, hogy minden pitagoraszi számhármas ilyen: ha a 2 + b2 = c2,


akkor vannak olyan x, y és z egész számok, amelyekkel a, b és c az iménti
képletekkel adható meg.
[Útmutatás: először lássuk be, hogy a feladat visszavezethető arra az esetre,
amikor lnko(a, b,c) = 1, a páros, b és c pedig páratlan. Ezután tekintsük
az a2 = (b —c)(b + c) szorzatot, és mutassuk meg, hogy (b + c)/ 2 -nek és
(b —c)/ 2 -nek négyzetszámoknak kell lenniük.]

Rátérünk az euklideszi algoritmus tárgyalására. Az algoritmus két egy­


szerű tényen alapul, amelyek a 6.6.1 és a 6.6.2. feladatból már ismertek.
Tegyük fel tehát, hogy meg akarjuk határozni az a és b egész számok
legnagyobb közös osztóját. A következő eljárást kell követnünk:

(1) Ha a > b, akkor cseréljük fel a-1 és 6-t.


(2) Ha a > 0, akkor osszuk el 6-t a-val, a maradékot jelöljük r-rel. írjuk
6 helyébe r-t, és térjünk vissza (l)-hez.
(3) Ha a = 0, akkor 6 a legnagyobb közös osztó, megállhatunk.

Ha magunk végezzük el a számításokat (különösen, ha számológép nélkül


dolgozunk), akkor nincs okunk cserélgetni a-1 és 6-t: minden lépésben a na­
gyobb számot osztjuk el a kisebbel, és ha a maradék nem 0, akkor a nagyobb
számot a maradékkal helyettesítjük. Lássunk néhány példát:

lnko(300,18) = lnko(12,18) = lnko(12, 6) = 6.


lnko(101,100) = lnko(l, 100) = 1.
lnko(89, 55) = lnko(34,55) = lnko(34, 21) = lnko(13,21) = lnko(13,8) =
= lnko(5,8) = lnko(5,3) = lnko(2,3) = lnko(2,1) = 1.

Valamennyi esetben ellenőrizhetjük (a számok prímtényezős felbontása alap­


ján), hogy valóban a legnagyobb közös osztót kaptuk.
Amikor egy algoritmussal megismerkedünk, az első dolog, amit meg kell
vizsgálnunk, hogy meg fog-e állni. Biztos-e tehát, hogy az euklideszi algo­
ritmus minden esetben véges számú lépés után megadja a legnagyobb kö­
zös osztót? A válasz egyszerű (és megnyugtató). Az algoritmusban szereplő
számok egyetlen lépésben sem növekednek, a (2) lépést végrehajtva pedig
egyikük mindig csökken. Mivel azonban egyik szám sem lehet negatív, az
eljárásnak előbb vagy utóbb a végére érünk.
Másodszor: meg kell bizonyosodnunk, hogy az algoritmus valóban az el­
várt eredményt adja-e. Ez is nyilvánvaló. Az (1) lépés (a számok esetleges
felcserélése) nem változtathatja meg a közös osztót. A (2) lépés (a nagyob­
bik számnak a maradékkal való helyettesítése) után 6.6.2. feladat (b) része
szerint szintén nem változik meg a legnagyobb közös osztó, végül, ha az al­
goritmus megáll, akkor az így kapott szám a 6.6.1. feladat szerint valóban a
legnagyobb közös osztó.
6.6. AZ EUKLIDESZI ALGORITMUS 109

A harmadik kérdés már nehezebb: meddig kell várnunk az eredményre?


Pontosabban: hány lépés után állunk meg (áll meg a program)? Abból az
érvből, amellyel az imént azt támasztottuk alá, hogy az algoritmus véges
számú lépés után megáll, a lépések számára vonatkozóan megkaphatunk egy
felső korlátot. Mivel az egyik szám minden, az (1) és a (2) lépésekből álló
ciklusban csökken, a program a + b ismétlés után biztosan megáll. Ez nem
különösebben jó korlát: ha például az algoritmust két 100 jegyű számra al­
kalmazzuk, akkor csupán annyit mondhatnánk: az eljárás lépéseinek száma
legfeljebb 2 • Í O 100 - ez viszont csillagászati (és mint ilyen, szempontunkból
teljesen haszontalan) szám. Szerencsére mindazonáltal ez csupán a legpesszi­
mistább felső korlát, a példáinkból is látszik, hogy ilyen sok lépésre nincs
szükség.
A példákból azonban az is látható, hogy a kérdés nem válaszolható meg
röptében. Az euklideszi algoritmus lépéseinek száma a bemenetektől függően
jelentős eltéréseket mutat. A példák alapján levonható következtetések közül
néhányat egy-egy feladatban fogalmazzuk meg.

6 . 6 . 8 . Mutassuk meg, hogy az euklideszi algoritmus akár két lépésben befejeződ­


het még olyankor is, amikor a legnagyobb közös osztó 1 .

6.6.9. Magyarázzuk el, hogy miként alkalmazható az euklideszi algoritmus két


egymást követő Fibonacci-számra. Igazoljuk ennek alapján, hogy az euklideszi al­
goritmus (alkalmasan megválasztott számokkal) tetszőlegesen hosszú ideig „futhat”.

Mennyi ideig tart tehát, amíg az euklideszi algoritmus kidobja a legna­


gyobb közös osztót? A válasz kulcsa a következő lemma.

6 .6 .1 L e m m a . A z e u k lid e s z i a lg o r itm u s k é t e g y m á s u tá n i lé p é s é b e n a k é t
s z á m s z o r z a t a le g a l á b b fe lé r e c s ö k k e n .

B izonyítás : Tekintsünk azt a lépést, amelynek során az (a, b ) pár (amely­


ben a < b) helyét az (r, a) pár veszi át, ahol r a b szám a-val való osztásakor
kapott maradék. Ekkor r < a és a + r < b , amiből b > a + r > 2r, minek
következtében ar < \ab. □
Tegyük fel, hogy az a és b számokkal elindított euklideszi algoritmus k
maradékos osztás után fejeződik be. A 6.6.1. Lemma szerint az utolsó mara-
dékos osztás bemenete két olyan szám, amelynek szorzata legfeljebb ab/2k~1.
A két szám közül a kisebb legalább 1, a nagyobb legalább 2, így szorzatuk
legalább 2. Ennélfogva
ab > 2 fc ,
amiből
k < log2(a&) = log2 a + log2 b.
Ezt az eredményt rögzíti a
110 6. EGÉSZ SZÁMOK, OSZTÓK ÉS PRÍMEK

6 .6 .2 . T é t e l . A z a és b p o z i t í v s z á m o k le g n a g y o b b k ö z ö s o s z tó já t a z e u k ­
l i d e s z i a l g o r i t m u s le g f e l j e b b log2 a + log2 b lé p é s u t á n m e g a d ja .

A lépésszám felső korlátja tehát már nem a két bemenet összege, hanem
2 alapú logaritmusuké, amivel nagyot javítottunk első becslésünkön. A tétel
szerint két 300 jegyű egész szám legnagyobb közös osztóját kevesebb mint
21og2 ÍO300 = 6001og2 10 < 2000 lépésben megkaphatjuk, vagyis sokkal ha­
marabb, mint amire első, naiv becslésünk 2 • 103o° felső korlátja alapján
várhattuk volna. A log2 a szám kisebb, mint a 2-es alapú számrendszerbeli
alakja számjegyeinek száma, így kijelenthetjük: az euklideszi algoritmusnak
legfeljebb annyi cikluson kell csak végigfutnia, ahány számjegy a két bemenet
bináris reprezentációjában összesen előfordul.
A tétel csupán felső korlátot szab az euklideszi algoritmus lépéseinek szá­
mára, a gyakorlatban ennél sokkal szerencsésebbek is lehetünk. Ha például az
euklideszi algoritmust két egymás után következő egész számra alkalmazzuk,
akkor egyetlen lépésben véget ér. Van azonban, amikor nem számíthatunk
sokkal jobb eredményre. Ha az Olvasó megoldotta a 6.6.9. feladatot, akkor
tudja, hogy az algoritmus az Fk és Fk+i egymást követő Fibonacci-számok
legnagyobb közös osztójának meghatározása k —1 lépést vesz igénybe. Té­
telünk ugyanerre a

log2 Fk + log2 Fk+1 «

« log2
M
= - log2 5 + (2k + 1) log2
+ log2

l,3 8 8 fc- 1,628

korlátot adja, a lépések számát tehát hozzávetőlegesen egy 1,388-as ténye­


zővel, azaz kevesebb mint 40%-kal becsültük túl.
A Fibonacci-számok nem csupán olyan nagy számokra adnak példát, ame­
lyeken az euklideszi algoritmus működése tanulmámyozható, de segítségük­
kel a lépések számára egy, a 6.6.2. Tételbelinél jobb becslést is adhatunk. A
feladatokban kimondott eredmény lényege, hogy a legnagyobb közös osztó
kiszámítása - bizonyos értelemben - egymást követő Fibonacci-számok ese­
tében tart a legtovább.

6.6.10. Tegyük fel, hogy a < b, továbbá hogy az a és b számok legnagyobb közös
osztója az euklideszi algoritmus segítségével k lépést igényel. Bizonyítsuk be, hogy
ekkor a > Fk és b > Fk+1 -

6.6.11. Tekintsük az euklideszi algoritmus következő változatát: (1) ha szükséges,


cseréljük fel a számokat, hogy a < b legyen; (2) ha a = 0, írjuk ki b-1 ; (3) ha a / 0,
akkor b-t cseréljük fel b —a-val, és térjünk vissza (l)-hez.
6.6. AZ EUKLIDESZI ALGORITMUS 111

(a) Határozzuk meg az algoritmus segítségével lnko(19.2) értékét.


(b) Igazoljuk, hogy a módosított euklideszi algoritmus is mindig a helyes ered­
ményt adja.
(c) Legfeljebb hány lépés szükséges két 100 jegyű szám legnagyobb közös osztó­
jának kiszámításához?

6.6.12. Ebben a feladatban az euklideszi algoritmus egy újabb variánsával ismer­


kedünk meg. Ebben először számítsuk ki azt a legnagyobb kitevőjű 2-hatványt,
amely a-nak és ö-nek is osztója. Ha ez 2r , akkor osszuk el a-t is és b-t 2r-nel.
Ezután az előkészület után tegyük a következőket:
(1) Ha szükséges, cseréljük fel a számokat, hogy a < b legyen.
(2) Ha a =£ 0, akkor ellenőrizzük a és b paritását: ha a páros, b pedig páratlan,
akkor cseréljük a-t a / 2 -re, ha pedig a és b egyaránt páratlan, akkor cseréljük
b-t b —a-ra, ezután térjünk vissza (l)-hez.
(3) Ha a = 0, akkor kiírhatjuk: lnko(a, 6) = 2rb.
Most jönnek a feladatok:
(a) Határozzuk meg ezzel az algoritmussal is 19 és 2 legnagyobb közös osztóját.
(b) A (2) lépésben mintha megfeledkeztünk volna arról az esetről, amikor a és
b egyaránt páros. Igazoljuk, hogy jogosan tettük: ez az eset nem fordulhat
elő.
(c) Bizonyítsuk be, hogy ezzel az algoritmussal is mindig a helyes eredményt
adja.
(d) Mutassuk meg, hogy új algoritmusunknak két 100 jegyű szám legnagyobb
közös osztójának meghatározásához legfeljebb 1500 iterációra lehet szüksége.

Az euklideszi algoritmus jelentősége nem merül ki a legnagyobb közös


osztó meghatározásában. A következő fejtegetések alapja egy egyszerű meg­
figyelés: miközben az euklideszi algoritmussal az a és b egész számok legna­
gyobb közös osztóját határozzuk meg, a számítás során megjelenő számok
mindegyike az a és b számok egy-egy egész számú többszörösének összege.
Idézzük fel újra lnko(300,18) kiszámításának lépéseit:

lnko(300,18) = lnko(12,18) = lnko(12,6) = 6.

A 12 a 300 4- 18 osztás maradéka, vagyis az a szám, amelyet úgy kapunk,


hogy 300-ból kivonjuk a 18 legnagyobb 300-nál kisebb többszörösét: 12 =
= 300 —16 • 18. Az első lépést tehát így is írhatjuk:

lnko(300,18) = lnko(300 —16 • 18,18).

A következő szám (a 18 és 12 különbségeként kapott) 6, amely szintén felír­


ható (300 többszöröse) + (18 többszöröse) alakban:

lnko(300 - 16 • 18,18) = lnko(300 - 16 • 18,17 • 18 - 300).


112 6. EGÉSZ SZÁMOK, OSZTÓK ÉS PRÍMEK

Eszerint tehát a legnagyobb közös osztó (6) ugyancsak megfelelő alakú:

6 = 17-18 - 300.

Igazoljuk most általánosan is, hogy az a és 6 egész számok legnagyobb


közös osztójának meghatározásakor az euklideszi algoritmus (1) lépésében
csak olyan számok szerepelhetnek, amelyek felírhatok a és b egy-egy egész
számú többszörösének összegeként. Tegyük fel tehát, hogy feltevésünk igaz a
- valahányadik lépés után - megjelenő a' és b' számokra, azaz vannak olyan
m ,n ,k ,l (nem feltétlenül pozitív!) egész számok, amelyekkel a' = am + bn
és b1 = ak + bl. Az algoritmus következő lépése (mondjuk) a b' szám a'-vel
való osztásakor kapott maradék meghatározása. Ez a maradék az

b' —qa! — (ak + bl) — q(am + bn) — a(k — qm) + b(l — qn)

szám, amelynek alakja szintén megfelelő.


Speciális esetként egy fontos tételt is beláttunk.

6.6.3. T é t e l . Ha d = lnko(a, b), akkor d felírható

d = am + bn,

alakban, ahol m és n egész számok.


Ahogy az előbbi példában tettük, a számolás folyamán mindvégig hasz­
nálhatjuk az am + bn alakokat is. Eszerint tehát a d kifejezésében szereplő
együtthatók nem csupán léteznek, de könnyedén ki is számolhatók.

6.7. Kongruenciák
A jelölés a matematika logikai struktúrájában nem játszik alapvető szerepet:
ha például a valós számokat V, az összeadást pedig # jelölné, a definíciók,
a szabályok és a tételek jelentése akkor is ugyanaz maradna. Alkalmanként
azonban az is előfordul, hogy a jelölés csodálatos módon inspiratív, és valódi
fogalmi áttöréshez vezet. Ez történt akkor is, amikor Cári Friedrich Gauss
észrevette, hogy „az a és ab egész szám m-mel osztva ugyanazt a maradékot
adja” fordulatot igen gyakran használjuk, és hogy ez a reláció erősen hasonlít
az egyenlőségre. A relációra ezért külön jelölést vezetett be, és kongruenciá­
nak nevezte el.
Ha tehát a és b ?n-mel osztva ugyanazt a maradékot adják (ahol a, b és
m egyaránt egész számok), akkor ezt

a = b (mód m)

jelöli (kiolvasása: a kongruens 6-vel rnodulo m ). Ugyanezt a relációt adjuk


meg, ha azt mondjuk: ab —a szám osztható m-mel. Az m számot a kongru­
encia modulusának nevezzük.
6.7. KONGRUENCIÁK 113

6.4. ábra. Cári Friedrich Gauss (1777-1855).

Amint a jelölés is sugallja, új relációnkat az egyenlőség közeli rokonának


tekinthetjük. Teljes joggal: a kongruencia (rögzített m esetén) rendelkezik
az egyenlőség három alapvető tulajdonságával: reflexív, azaz
a = a (mód m),
szimmetrikus, azaz
a = b (mód m) => b = a (mód m),
és tranzitív, azaz
a = b (mód m), b = c (mód m) => a = c (mód m).
Ezeknek a tulajdonságoknak a teljesülése igazából nem meglepő, ha felidéz­
zük, hogy egy kongruencia fennállását két szám (a modulussal való osztáskor
kapott maradékok) egyenlőségeként értelmeztük.
A kongruenciákkal éppen úgy számolhatunk, mint az egyenletekkel. Ha
a = b (mód m) és c = d (mód m),
két, azonos modulusú kongruencia, akkor minden további nélkül összeadhat­
juk, kivonhatjuk vagy összeszorozhatjuk őket, és a reláció érvényben marad:
a + c = b + d (mód m), a — c = b —d (mód m), ac = bd (mód m).
(Az osztásra még visszatérünk.) A szorzás hasznos speciális esete, hogy egy
kongruencia mindkét oldalát megszorozhatjuk ugyanazzal a számmal: ha
a = b (mód ni), akkor ka = kb (mód m) tetszőleges k egész szám esetén.
114 6. EGÉSZ SZÁMOK, OSZTÓK ÉS PRÍMEK

Adósak vagyunk a bizonyításokkal. A feltevés szerint mind a—6, mind c—d


osztható m-mel. Ahhoz, hogy a kongruenciák összeadhatóságát igazoljuk,
meg kell mutatnunk, hogy (a + c) —(b + d) ugyancsak osztható m-mel. Ehhez
a (a + c) — (b + d) kifejezést (a —b) + (c —d) alakba írjuk, az utóbbi pedig -
lévén két m-mel osztható szám összege - nyilván osztható m-mel.
A kongruenciák különbségére vonatkozó szabály érvényessége ugyanígy
látható be, a szorzás azonban kissé trükkösebb. Azt kell tehát igazolnunk,
hogy ac —bd osztható m-mel. Ehhez azonban elegendő észrevenni, hogy

ac —bd = (a — b)c + b(c — d).

Mivel a — b és c —d egyaránt osztható m-mel, így (a —b)c és b(c —d), minek


következtében az utóbbiak összege is ilyen.
Az új jelöléssel az oszthatóságra vonatkozó tételeinket egyszerűbb for­
mában is kifejezhetjük; a „kis” Fermat-tétel (a 6.5.1. Tétel) például így is
kimondható: ha p prím, akkor tetszőleges a egész szám esetén

ap = a (mód p).

6.7.1. Melyik az a legnagyobb m egész szám, amelyre 12345 = 54321 (mód m)l

6.7.2. A következő „szabályok” közül melyek érvényesek??


(a) a = b (mód c) a + x = b + x (mód c + x);
(b) a = b (mód c) ax = bx (mód ex).
a = b (mód c) ]l
(c) => a + x = b + y (modc + a);
x = y (mód z) Jr
a = b (mód c) ]
(d) x = y (mód z) Ji => ax = by (mód ez).
í

6.7.3. Hogyan értelmeznénk az a = b (mód 0) összefüggést?

6.7.4. (a) Adjunk meg olyan a és b számokat, melyekkel 2a = 2b (mód 6 ), de


a ^ b (mód 6 ). (b) Mutassuk meg, hogy ha c / 0 és ac = be (mód mc ), akkor
a = b (mód m).

6.7.5. Lgyen p prím. Bizonyítsuk be, hogy amennyiben az x , y, u, v egész számokra


fennáll x = y (mód p), u, v > 0 és u = v (mód p —1 ), akkor x u = yv (mód p).

6.8. Különös számok


Mennyi CSÜ TÖ RTÖ K + p é n t e k ? Ha nem értjük a kérdést, tegyük fel bátran
egy kisgyereknek. Azonnal megmondja majd a helyes választ: KEDD . (Le­
hetséges, hogy nézeteltérésünk támad arra vonatkozóan, hogy melyik a hét
6.8. KÜLÖNÖS SZÁMOK 115

első napja: a hétfő vagy a vasárnap - de ha az Olvasó úgy érzi, hogy a hét
vasárnappal kezdődik, még mindig tekintheti vasárnapot a nulladik napnak.)
Ezek után nem okozhat különösebb nehézséget annak megállapítása, hogy
SZERDA • KED D = S Z O M B A T , C S Ü T Ö R T Ö K 2 — K E D D , H É TFŐ - SZOM BAT =
= KEDD Stb.
A hét napjain definiált műveletekkel valójában egy új számrendszert ve­
zettünk be. Ebben a számrendszerben összesen hét szám van, ezeket HÉ, K E ,
sze , csü , p é , szó és va jelöli. (Bevezethetnénk a S z e n d e , S zu nd i , M o r g ó ,
T u d o r , V id o r , H a p c i , K uka neveket is - a lényeg úgyis az, ahogyan az
aritmetikai műveleteket értelmezzük.)
Az új számokon értelmezett műveleteknek sok közös vonása van a szokásos
műveletekkel. Az összeadás és a szorzás kommutatív:

K E + PÉ = P É + K E , KE • PÉ = PÉ • KE,

és asszociatív:

(h é + sze ) + pé = hé + ( s z e + P É ), (h é ■ sze ) • PÉ = hé ■ ( s z e • P É ),

a szorzás pedig az összeadásra nézve disztributív:

(h é + sze ) • P É = ( h é • P É ) + (SZ E • P É ).

A kivonás az összeadás inverz művelete:

( h é + SZE) - SZE = HÉ.

VASÁRNAP úgy viselkedik, mint a 0:

SZE + VA = SZE, SZE • VA = VA,

H É TFŐ pedig úgy, m in t az 1:

SZE ■ HÉ = SZE.

Mindebben persze semmi újdonság nincs, amennyiben szem előtt tartjuk:


a h é t f ő az 1, a k e d d a 2 stb, szerepét játssza, és azt sem felejtjük el, hogy a 8
újra a h é t f ő , azaz minden aritmetikai művelet eredményét a 7-tel való osztás
során adott maradékával kell helyettesíteni. Az imént kimondott azonosságok
ennélfogva kongruenciák fennállását fejezik ki, és a kongruenciákra vonatkozó
azonosságok alapján bizonyíthatók.
De mi a helyzet az osztással? Bizonyos esetekben az osztás semmiféle prob­
lémát nem jelent. Könnyen megmondhatjuk például, hogy mennyi S Z O /S Z E .
A hányados „lefordítva” 6/3, azaz 2, „visszafordítva” pedig K E . És valóban:
K E • SZE = SZÓ .
De mennyi K E / s z e ? A fordítás most a 2/3 törtet adja, amely viszont
nem egész szám. A racionális számokat éppen azért vezettük be, hogy (0
116 6. EGÉSZ SZÁMOK, OSZTÓK ÉS PRÍMEK

kivételével) minden számmal tudjunk osztai. Vajon ennek m intájára a hét


„tört napjaira” is szükségünk lesz?
Nem lesz: kiderül ugyanis, hogy új, mindössze hét számból álló szám-
rendszerünkben az osztás mindig elvégezhető'! (Feltéve persze, hogy nem 0-
val osztunk.) Mi is tehát K e / s z e ? Olyan X „szám”, amelyre teljesül, hogy
X ■S Z E = K E . Könnyen látható azonban, hogy SZE • SZE = K E , értelmes tehát
(de legalábbis úgy tűnik, hogy értelmes) azt mondanunk: k e / s z e = SZE.
A példa szerint bizonyos esetekben elvégezhető az osztás anélkül, hogy
új (fajta) számokat (vagy napokat) kellene bevezetnünk, de elvégezhető-e az
osztás minden esetben? Vegyünk egy újabb példát: határozzuk meg a SZ e / p É
„hányados” értékét, ezúttal azonban ne bízzuk a szerencsére, hogy kitaláljuk-
e vagy sem, hanem inkább nevezzük el X-nek, és mutassuk meg, hogy a hét
valamelyik napja biztosan megfelel X szerepére.
Legyen tehát X — s z e / p é . Világos, hogy a hét bármelyik X napja esetén
az X ■P É szintén a hét napjainak egyike.
Belátjuk, hogy különböző X napok esetén az X ■P É szorzatok értéke is
különbözik. Tegyük fel tehát, hogy
X • P É = Y ■P É .
Ekkor
(X - Y ) ■P É = VA (6 .2 )

( i t t a d i s z t r i b u t i v i t á s m e l l e t t a z t is k i h a s z n á l t u k , h o g y a V A S Á R N A P ú g y
v i s e l k e d i k , m in t a 0 ). A vasárn ap é s a 0 k ö z ö t t f e n n á lló h a s o n ló s á g a 0
a z o n t u l a j d o n s á g á r a is k i t e r j e d , a m e ly s z e r in t k é t n e m n u lla s z á m s z o r z a t a
n e m l e h e t 0, a z a z : k é t n e m -V A S Á R N A P s z á m o t ö s s z e s z o r o z v a a z e r e d m é n y
n e m le h e t V A S Á R N A P . ( E lle n ő r iz z ü k ! ) E s z e r i n t t e h á t X —Y = VA, a z a z X =
= Y + v a = Y.
Az X • P É s z o r z a t o k t e h á t k ü lö n b ö z n e k , é s m iv e l h e te n v a n n a k , a h é t
m i n d e n n a p j a , s p e c i á l i s a n S Z E R D A is k ö z ö t t ü k v a n .
E z a z é r v m in d e n o s z t á s e s e t é b e n m ű k ö d ik , k i v é t e l t c s u p á n a z a z e s e t
j e l e n t , a m i k o r V A S Á R N A P -p a l p r ó b á l u n k o s z t a n i. M iv e l a v a s á r n a p ú g y v i ­
s e lk e d ik , m in t a 0, e z é r t b á r m e l y i k n a p o t s z o r o z z u k m e g V A S Á R N A P -p a l, a z
e r e d m é n y V A S Á R N A P le s z . (A va / v a h á n y a d o s e n n é lf o g v a a h é t a k á r m e ly ik
n a p j a le h e t n e , n e m t e k i n t h e t ő t e h á t j ó l d e f in iá lt „ s z á m n a k ” .)
A 6.7. alfejezetben megismert kongruenciák segítségével különös számaink
is könnyebben kezelhetők. A (6.2) egyenlőséget például
(x — y) ■5 = 0 (m ó d 7)

alakba írhatjuk (ahol x és y az X és Y napoknak megfelelő számok, az (x—y )5


szorzat tehát osztható 7-tel. Mivel azonban sem 5, sem x — y nem osztható
7-tel (az utóbbi két különböző, 7-nél kisebb szám különbsége), és mivel a 7
prímszám, ez ellentmondás. A hét napjai helyett tehát valódi számokkal is
számolhatunk, az ár csupán annyi, hogy egyenlőség helyett kongruenciát kell
használnunk.
6.8. KÜLÖNÖS SZÁMOK 117

6.8.1. H a tá r o z z u k m eg s z e / p é , k e / p é , h é / k e és s z o / k e h á n y a d o s o k a t.

De vajon van-e valami különleges jellemzője a 7-es számnak? Egy társa­


dalomban, amelyben egy hét 1, 13 vagy 365 napból áll, a napokat a fentiek
m intájára minden további nélkül összeadhatjuk, kivonhatjuk és összeszoroz­
hatjuk.
Álljon tehát a hét m napból - matematikai kifejezéssel élve, legyen m
a modulus. Nem lenne gyakorlatias a hét napjaira új neveket bevezetni,1
jelölje őket ennek megfelelően Ö, 1,... , m —1. A felülvonás arra utal, hogy
például 2 nem csupán a 2. napot, de ugyanúgy az m + 2-dik és a 2m + 2-dik
n apot... számot is jelöli.
Az összeadást a következőképpen definiáljuk: a + b = c, ahol c az a + b
szám m-mel való osztásakor kapott maradék. A szorzás definíciója hasonlóan
megy. Ezúton egy új számrendszert értelmeztünk: ebben csupán m szám
van, de ezek összeadhatók és összeszorozhatok. A műveletekre a szokásos
szabályok mind érvényben maradnak, ezt a 7 esetében már látott módon
igazolhatjuk. Az így definiált aritmetikát nevezzük moduláris aritmetikának.
Mi a helyzet az osztással? Aki alaposan meggondolta az osztás m = 7
esetben való elvégezhetőségét alátámasztó gondolatmenetet, hamar felismer­
heti, hogy itt a 7 egy speciális tulajdonságát is kihasználtuk: azt, hogy prím.
A moduláris aritmetikában döntő jelentőségű, hogy a modulus prím-e vagy
sem. A továbbiakban mindig feltesszük, hogy a modulus prím, ezt hangsúlyo­
zandó p-vel jelöljük. Azt a számrendszert, amelynek elemei a 0, 1, . . . ,p —1,
műveleteit pedig az iménti módon definiáljuk, prímtestnek nevezzük.

A kételem ű test. A legkisebb prímszám a 2, a legegyszerűbb prímtest­


nek ennélfogva két eleme van, jelölje ezeket 0 és 1. A prímtest összeadó- és
szorzótáblája a következő:
lo
lo

+ 1 1
lo

lo lo
lo

lo

ol

I
Ol

1 1 1 1

(Egyetlen olyan összefüggés van csak ezek között, amely a 0 és az 1 „eredeti”


tulajdonságaiból nem következik, méghozzá a következő: 1 + 1 = 0. Kivo­
nástáblára nincs szükségünk, ebben a prímtestben ugyanis tetszőleges a és
b esetén a + b — a —b; osztótáblára pedig még kevésbé, elvégre 0-val nem
lehet osztani, az 1-sal való osztás pedig nem oszt és nem szoroz, azaz nem
változtat az „osztandón”.)

A felülvonásokat általában elhagyjuk. Figyelnünk kell azonban arra, hogy az


1 + 1 összeg 2 (mint általában) vagy 0 (mint a kételemű testben). Ponto-

1A n apok nevei sok nyelvben a szám nevekből erednek.


118 6. EGÉSZ SZÁMOK, OSZTÓK ÉS PRÍMEK

san emiatt a 2 modulusú prímtestbeli összeadást ® jelöli. Az összeadó- és


szorzótábla ezzel a jelöléssel:

© 0 1 0 1
0 0 1 0 0 0
1 1 0 1 0 1

(A szorzásra nem vezettünk be új jelölést, elvégre a szorzás eredménye ugyan­


az, mint a ,szokásos” 0 és 1 esetében.)
A k é te le m ű p r ím te s tn e k a s z á m ító g é p -tu d o m á n y b a n , az in fo rm á c ió e lm é ­
le tb e n és a m a te m a tik a i lo g ik á b a n s z á m o s a lk a lm a z á s a lé te z ik . A te s t k é t
e l e m é t é r t e l m e z h e t j ü k p é l d á u l a z IG E N -N E M , IG A Z -H A M IS , VAN JE L - N IN C S
je l p á r k é n t stb .

6.8.2. Jelölje 0 a h a m i s , 1 p edig az ig a z „igazságértéket” . L egyen A és B két


állítás (am ely v a g y igaz, v a g y ham is). A d ju k m eg az © és a • segítségével a „nem
A ,” az „ A va gy B ” és az „ A és B v állítás igazságértékét.

6.8.3. B izo n yítsu k be, h o gy 6 m odulus esetén van olyan nem nulla szám , am ellyel
nem lehet osztani. Á lta lán o sítsu k a p éld át tetszőleges összetett m odulus esetére.

Osztás a m oduláris aritm etikában. Az az érv, amellyel beláttuk, hogy a


moduláris aritmetikában prím modulus esetén az osztás mindig elvégezhető,
meglehetősen egyszerű, abban azonban nincs segítségünkre, hogy az osztás
eredményét is megmondjuk. Az összes „szám” végigpróbálása 0-tól p —1-ig
p = 7 esetében még követhető út volt, de például p = 234 527 már megle­
hetősen fáradságos (és időigényes) elfoglaltság volna, nem is beszélve a tit­
kosírásban vagy a számítógépek biztonsági védelmében alkalmazott valóban
nagy prímekről.
A kérdés tehát a következő: mit kapunk 53-at 2-vel osztva a p = 234 527
modulusú aritmetikában? A probléma egyszerűsíthető: elég, ha megmondjuk,
mit kapunk 1-et 2-vel osztva modulo 234 527. Ha tudjuk, hogy 1/2 = a, akkor
53/2 = 53 • a, a szorzást pedig el tudjuk végezni.
Könnyebb dolgunk lesz, ha egyből az általánosság magasabb szintjére lé­
pünk. Tekintsünk tehát egy p prím-modulust és egy a számot (1 < a < p —1),
és keressünk olyan x egész számot (1 < x < p — 1), amellyel a ■x = 1. A 6.7.
alfejezet jelölését felhasználva az

ax = 1 (m ó d p)

egyenletet kell megoldanunk.


A megoldás kulcsa az euklideszi algoritmus. Határozzuk meg tehát az
a és a p legnagyobb közös osztóját. Ez bolondos ötletnek tűnik: elvégre p
prímszám, 1 < a < p, így a két számnak nem lehet 1-nél nagyobb közös
6.8. KÜLÖNÖS SZÁMOK 119

osztója, azaz lnko(p, a) = 1. De emlékezzünk vissza: az euklideszi algoritmus


a legnagyobb közös osztót au+pv alakban adja meg, ahol u é s v egész számok,
így tehát az
au + pv — 1
egyenlőséget kapjuk, amiből

au = 1 (mód p).

Már majdnem meg is vagyunk, az egyetlen gondot az okozhatja, ha az u egész


szám nem 1 és p —1 közé esik. Ha azonban x az u szám p-vel való osztásakor
kapott maradék, akkor az x = u (mód p) kongruenciát a-val szorozva (ami
a 6.7. alfejezet szerint legális művelet) az

ax = au = 1 (mód p)

egyenletet, és - mivel 0 < a: < p —1 - problémánk megoldását kapjuk.


Nézzük tehát, mit ad az euklideszi algoritmus, ha a = 2 és p = 234 527.
Nincs különösebben nehéz dolgunk: 234 527-et 2-vel osztva a maradék 1,
amivel az algoritmus véget is ér:

2 ■(-117 263) + 234 527-1 = 1.

A —117263 szám modulo 234 527 maradéka 117 264, így

1/2 = 117264.

6.8.4. M enn yi 1/53 m odulo 234527?

Az elemi aritmetikai ismeretek birtokában bonyolultabb feladatokat - pél­


dául lineáris egyenletrendszereket - is meg tudunk oldani, elég, ha felidéz­
zük, mit tennénk a ,közönséges” számokkal. A következőkben néhány példát
mutatunk be; a kongruenciás jelölést és a 6.7. alfejezetben belátott azonos­
ságokat használjuk.
1. Példa. Oldjunk meg elsőként egy lineáris egyenletet, legyen ez mondjuk

IX + 3=0,

a modulus pedig 47, amely - mint az könnyen ellenőrizhető - prímszám. Az


egyenlőség
I x + 3 = 0 (mód 47)
kongruenciaként is felírható, ez az utóbbi alak a szokásosabb, így ennél mara­
dunk. Ahogy egy „közönséges” egyenletet, a kongruenciát is átrendezhetjük:

7x = - 3 (mód 47). (6.3)

A —3 helyébe akár a 44-et (a —3 maradékát modulo 47) is írhatnánk.


120 6. EGÉSZ SZÁMOK, OSZTÓK ÉS PRÍMEK

A következő lépésben kiszámítjuk 7 reciprokát modulo 47. Az euklideszi


algoritmus szerint

lnko(7,47) = lnko(7, 5) = lnko(2,5) = lnko(2,1) = 1,

amiből a következőt kapjuk:

5 = 47 - 6 ■7, 2 = 7 - 5 = 7 - (47 - 6 • 7) = 7 • 7 - 47,


1 = 5 - 2 • 2 = (47 - 6 • 7) - 2 • (7 • 7 - 47) = 3 ■47 - 20 • 7,

eszerint tehát (—20) - 7 = 1 (mód 47). A 7 reciproka tehát —20 (vagy ha úgy
tetszik: 27).
A (6.3) egyenlet mindkét oldalát 7-tel osztva az

x = 13 (mód 47)

konguenciát kapjuk. (A 13 a (-3 )(-2 0 ) és a 44 • 27 szorzat modulo 47 ma­


radékának egyaránt tekinthető.)
2. Példa. Oldjunk meg most egy lineáris egyenletrendszert. Ezúttal legye­
nek a számok nagyobbak (nehogy valaki azt higgye, hogy csak kis számokkal
tudunk elbánni). Legyen a modulus p = 127, a (kétismeretlenes) egyenlet­
rendszer pedig

12X + 31Y = 2, (6.4)


2 X + 89K = 23.

Kongruenciaruhában:

12x + 2>ly = 2 (mód 127),


2x + 89y = 23 (mód 127).

(a) Kiküszöböljük az egyik ismeretlent. Hogyan oldanánk meg egy „közönsé­


ges” egyenletrendszert. A második egyenletet 6-tal megszorozva, és az így
kapott egyenletet az elsőből kivonva az x-es tagok kiesnek. Mindezt a prím­
testben is megtehetjük, így a

(31 —6 • 89)y = 2 - 6 - 2 3 (mód 127),

illetve a
(—503)y = —136 (mód 127)
kongruenciát kapjuk. A negatív számokat a modulo 127 vett maradékukkal
helyettesítve:
5y = 118 (mód 127). (6.5)
6.8. KÜLÖNÖS SZÁMOK 121

(b) Osztás. A kapott kongruencia mindkét oldalát el kell osztatnunk 5-tel.


Ehhez most is az euklideszi algoritmust használjuk. A legnagyobb közös osztó
kiszámítása nem jelent különösebb nehézséget:

lnko(127, 5) = lnko(2,5) = lnko(2,1) = 1.

Ezen nem lepődünk meg, elvégre tudtuk, hogy számaink relatív prímek. Ha
többet is meg szeretnénk tudni, újra el kell végeznünk a számítást, de most
úgy, hogy a számokat 127 és 5 egészszám-szorosai összegeként írjuk fel:

ln k o ( 1 2 7 ,5) = l n k o ( 1 2 7 - 25• 5, 5) = l n k o ( 1 2 7 - 2 5 - 5 , ( - 2 ) • 1 2 7 + 5 1 • 5 ) = 1.

Eszerint
( - 2) - 127 + 51-5 = 1,
azaz 5 • 51 = 1 (mód 127), megtaláltuk tehát az 5 reciprokát rnodulo 127.
Ahelyett tehát, hogy a (6.4) egyenletet 5-tel osztanánk, 51-gyel is meg­
szorozhatjuk:
y = 51 • 118 (mód 127). (6.6)

(c) Befejezés. A (6.6) job oldalán elvégezve a műveletekett, majd az eredmény


modulo 127 maradékát véve az y = 49 (mód 127) kongruenciát kapjuk, a
megoldás tehát Y = 49. Az x meghatározásához helyettesítsük be y értékét
az eredeti egyenletek valamelyikébe:

2a:+ 89-49 = 23 (mód 127),

amiből
2x = 23 - 89 ■49 = 107 (mód 127).
Újra osztanunk kell. Az előzőek m intájára most azt kapjuk, hogy

( - 6 3 ) - 2 + 127 = 1,

így aztán
64-2 = 1 (mód 127).
A 2-vel való osztás helyett tehát szorozhatunk 64-gyel, így az

x = 64 • 107 (mód 127)

kongruenciát kapjuk. A jobb oldalon elvégezve a szorzást és a modulo 127


maradékot véve azt kapjuk, hogy x = 117 (mód 127), vagy másképpen:
X = 117. Ezzel a (6.4) egyenletrendszert megoldottuk.
3. Példa Másodfokú kongruenciákat is megoldhatunk, mondjuk a követke­
zőt:
x 2 — 3x + 2 = 0 (mód 53).
122 6. EGÉSZ SZÁMOK, OSZTÓK ÉS PRÍMEK

Szorzattá alakítva:

(x — l)(:r —2) = 0 (mód 53).

A bal oldalon szereplő szorzat egyik tényezőjének 0-nak kell lennie modulo
53, azaz x = 1 (mód 53) vagy x = 2 (mód 53).
A bal oldalt „ránézésre”, könnyen szorzattá alakítottuk. Mi a helyzet,
ha az együtthatók nagyobbak, mint például az x 2 + 134517a: + 105536 =
= 0 (mód 234527) kongruencia esetében? Nem valószínű, hogy a bal oldal
szorzat alakját bárki „kitalálná”. Ilyenkor segít a másodfokú egyenlet (kö­
zépiskolában megismert) megoldóképlete. Ez működik, de az egyik lépés - a
gyökvonás - meglehetősen bonyolult. Létezik a feladat megoldására hatékony
algoritmus, ez azonban túl bonyolult ahhoz, hogy ehelyütt tárgyaljuk.

6 .8 .5 . O ld ju k m eg a

2x + 3y = 1 (m ó d ii) ,
x + 4y = 4 (m ód 11)

kon gruen ciarendszert.

6 .8 .6 . O ld ju k m eg az

(a) x 2 - 2x = 0 (m ód 11) (b) x 2 = 4 (m ód 23)

„kongruen cia-egyenleteket” .

6.9. Szám elm élet és kombinatorika


A már ismert kombinatorikus módszereknek a számelméletben is hasznát
vesszük. A teljes indukciót lépten-nyomon használjuk, de a skatulyaelvet és
a szitaformulát is gyakran - és gyakran kifejezetten elegánsan - alkalmazzuk.
Igazoljuk, hogy a természetes számokból álló n elemű {ai, a? , . . . , an}
halmaznak van olyan nemüres részhalmaza, amelynek elemeit összeadva
n-nel osztható számot kapunk.

(Előfordulhat az is, hogy a részhalmaz mind az n számot tartalmazza.)


Megoldás. Tekintsük a következő n számot:

b i = a 1,
í>2 = <*1 T fl2j
&3 = 0.1 + 0-2 +

hn — al + &2 + 03 + ■• ■+ an.
6.9. SZÁMELMÉLET ÉS KOMBINATORIKA 123

Ha ezek között van n-nel osztható, akkor megvagyunk. Ha egyik sem osztható
n-nel, akkor osszuk el valamennyit n-nel maradékosan. írjuk le a maradéko­
kat: ezek mindegyike vagy 1, vagy 2,..., vagy n — 1. Mivel n számunk van,
lennie kell közöttük kettőnek, amelyik n-nel osztva ugyanannyi maradékot
ad. Legyen ez a két szám bi és bj (ahol i < j). A bj — bt különbség ekkor
nyilván osztható n-nel, de

bj — bi = Oj+i + a,_|_2 + ... + aj.

Megtaláltuk tehát az {ai, 02, . . . , an} halmaz egy olyan részhalmazát (az
{dj+i, a.i+2, • ■•, aj} halmazt), amelynek elemeit összeadva n-nel osztható
számot kapunk. Ezt kellett bizonyítani.

6.9.1. Kiválasztunk n számot az {1,2, . . . , 2n — 1} halmazból. Bizonyítsuk be,


hogy a kiválasztott számok között lesz két relatív prím.

A szitaformula egy fontos alkalmazásaként válaszoljunk most a következő


kérdésre: hány olyan 1200-nál kisebb pozitív szám van, amely 1200-hoz képest
relatív prím?
Az 1200 prímtényezős felbontását könnyen felírhatjuk: 1200 = 24 ■3 • 52,
ezek szerint tehát 1200 minden osztója osztató 2-vel, 3-mal vagy 5-tel. Azo­
kat az 1200-nál kisebb pozitív egész számokat kell tehát összeszámolnunk,
amelyek sem 2-vel, sem 3-mal, sem 5-tel nem oszthatók.
Könnyen kiszámíthatjuk, hogy 1200-ig éppen
1200
darab 2-vel osztható szám van (minden második szám páros),
2
1200
darab 3-mal osztható szám, és

1200
darab 5-tel osztható szám van.

A 2-vel és 3-mal egyaránt osztható számok pontosan a 6 többszörösei, 1200-ig


ennélfogva
1200
olyan szám van, amely 2-vel és 3-mal is osztható, és hasonlóan

1200
olyan szám van, amely 2-vel és 5-el, továbbá
ÜT
1200
olyan, amelyik 3-mal és 5-tel is osztható.
ÜT
Végül a 2-vel, 3-mal és 5-tel is osztható számok a 15-töbszörösök, így 1200-ig
éppen

olyan szám van, amely 2-vel, 3-mal és 5-tel is osztható.


30
124 6. EGÉSZ SZÁMOK, OSZTÓK ÉS PRÍMEK

Kérdésünkre a választ ezután a szitaformulával adhatjuk meg:

1200 1200 1200Á 1200 1200 1200 1200


1200 - 320.
~2~ + T " + ~T~) + 2^5 + lö~5~ 2-3-5

Ha a bal oldalon álló összegből kiemelünk 1200-at, akkor a megmaradt tagok


csinos kis szorzattá alakíthatók (ellenőrizzük a számolás lépéseit):

Tetszőleges n természetes szám esetén <p(n) jelöli az n-nél nem nagyobb, ír­
hez relatív prím pozitív egészek számát (A „kisebb” helyett a „nem nagyobb”
fordulatot használjuk. Ennek persze csak n = 1 esetén van jelentősége, az 1
ugyanis az egyetlen olyan szám, amely önmagához relatív prím: <^?(1) = 1.)
A prímszámok természetesen a legtöbb számhoz viszonyítva relatív prímek:
ha p prím, akkor ip(jp) meghatározásakor minden p-nél kisebb pozitív egé­
szet számításba kell vennünk, így ip(p) = p — 1. Az általános esetben is
a fenti módszert követjük: a ha az n szám prímtényezős felbontásában a
P i , P2 , . - •, pr prímek szerepelnek, akkor

^ (n) = „ . ( 1 - l ) - ( 1 - i ) . . . ( 1 - l ) . (6.7)

A bizonyítást - amely az 1200 esetében bemutatott gondolatmenetet követi


- az Olvasóra hagyjuk (6.9.2. feladat).

6.9.2. Bizonyítsuk be a (6.7) összefüggést.

6.9.3. Legyen n természetes szám. Kiszámítjuk a ip(d) számot az n szám vala­


mennyi d osztója esetén, az így kapott számokat pedig összeadjuk. Mit kapunk?
(Próbálgassunk, sejtsük meg a megoldást, és bizonyítsuk be.)

6.9.4. Mit kapunk, ha összeadjuk az összes n-nél kisebb, n-hez képest relatív prím
pozitív számot?

6.9.5. Igazoljuk a „kis” Fermat-tétel következő általánosítását: ha lnko(a, 6) = 1,


akkor _ \ osztható 6-vel.
[Útmutatás: általánosítsuk a „,kis” Fermat-tételre a 6.5.4. feladatban adott bi­
zonyítást.]
6.10. PRlMTESZTELÉS 125

6.10. Prím tesztelés


Prímszám-e 123 456? Nyilvánvalóan nem, hiszen páros. És 1 234 567? Ez már
nem olyan könnyű, de ha a számot elosztjuk a 2, 3, 4, 5 ... mindegyikével,
akkor türelmünk 127-nél prímtényezős felbontást terem: 1234 567 = 127 ■
9721.
Lépjünk tízzel tovább: prím-e az 1 234 577 szám? Megint kipróbálhatjuk a
2,3,4, 5, . . . számokat. Ha türelmünk kitart az 1 234 577 szám négyzetgyökéig
(ez 1 1 1 1,1...), akkor tudni fogjuk (honnan?), hogy nincs valódi osztó.
De mi a helyzet az

1 111222 233 334 444 555 566 667 777 888 899 967

számmal? Ha ez a szám prím (az!), akkor ennek megállapításához a szám


négyzetgyökéig minden számot ki kellene próbálnunk. A szám nagyobb, mint
1036, négyzetgyöke így nagyobb, mint 1018. Ennyi számot végigpróbálni
azonban még napjaink leghatékonyabb számítógépei számára is reménytelen
feladat.

A Ferm at-teszt. De akkor honnan tudjuk, hogy a szám prím? A számító­


gépünktől - de a számítógép honnan tudja? A probléma megközelítésének
egyik módszerét a „kis” Fermat-tétel adja. A tétel a legegyszerűbb nemtri­
viális esetben ezt állítja: ha p prím, akkor p | 2P —2. Ha feltesszük, hogy p
páratlan (amivel egyedül a p = 2 esetet zárjuk ki), akkor azt a következtetést
is levonhatjuk, hogyp | 2P_1 —1.
Vizsgáljuk most, teljesül-e összetett n-ekre az n | 2”~1 —1 reláció. Ha n
páros, akkor a reláció nyilván nem áll fenn (egy páratlan számnak nem lehet
páros osztója), elegendő tehát, ha páratlan számokkal foglalkozunk. Néhány
eredmény:

9 f 28 - 1 = 255, 151 214 - 1 = 16 383, 21 \ 220 - 1 = 104 8 575,


25 \ 224 —1 = 16 777 215.

Mindez azt sugallja, hogy az n \ 2n_1 —1 relációk fennállásának ellenőrzésével


eldönthető, hogy az n szám prím-e vagy sem. Az ötlet kiváló, mindazonáltal
felvet néhány súlyos problémát.

H ogyan szám ítsuk ki a N A G Y hatványokat? Könnyű leírni egy 2n_1 —1


alakú kifejezést, de a kiszámítása már sokkal nehezebb. Ügy tűnik, hogy 2n_1
kiszámításához n —2 szorzásra van szükségünk. Ha n egy 100-jegyű szám,
ez mintegy ÍO100 lépést jelent, aminek sohasem érnénk a végére.
A problémán azonban ügyes fogást találhatunk, amit a 224 esetén muta­
tunk be. Kezdjük 23 = 8-cal, amiből négyzetre emeléssel 26 = 64-et, újabb
négyzetre emeléssel 212 = 4096-ot, majd ugyanígy 224 = 16 777216-ot kap­
juk. A 23 szorzás helyett megúsztuk 5-tel.
126 6. EGÉSZ SZÁMOK, OSZTÓK ÉS PRÍMEK

Arra gondolhatnánk, hogy a fenti módszer csak azért működött, mert a


24 osztói között nagy 2-hatvány is van, így 224-hez egy viszonylag kis szám­
ból kiindulva néhány négyzetre emeléssel eljuthatunk. Mutassuk meg tehát,
hogy a módszer kevésbé barátságos számok, például 229 esetében is működik.
A számolás lépései:
22 = 4, 23 = 8, 26 = 64, 27 = 128, 214 = 16 384,
228 = 268 43 5 4 56 , 229 = 53 6 8 70 9 12.
A lépéseket visszafelé érdemes követni. Ha egy páratlan kitevőjű kettőhat­
ványt kell kiszámítanunk, akkor az eggyel kisebb kitevőjű 2-hatvány kétszere­
sét kell kiszámítanunk, páros kitevőjű hatványok esetében pedig a feleakkora
kitevőjű hatványt emeljük négyzetre.

6.10.1. Igazoljuk, hogy ha az n szám bináris reprezentációja k számjegyből áll,


akkor 2n kiszámításához kevesebb, mint 2k szorzásra van csak szükség.

H ogyan kerüljük el a N A G Y számokat? Az első nehézségen felülkere­


kedtünk ugyan, de az iménti számítások már rá is mutatnak a következőre:
a számok túlságosan nagyra nőnek! Ha az n szám - mondjuk - 100-jegyű
akkor nem csupán a 2n_1 szám, de a számjegyeinek száma is csillagászati!
Egy ilyen számnak még a felírása is reménytelen, nem is beszélve annak
ellenőrzéséről, hogy osztható-e n-nel.
A megoldást az jelenti, ha minden lépésben az éppen soron lévő szám
n-nel való osztáskor adott maradékával számolunk (úgy is fogalmazhatnánk:
dolgozzunk az n modulusú moduláris aritmetikában, miután nem kell osz­
tanunk, nincs jelentősége annak, hogy n esetleg nem prímszám). Ha például
azt akarjuk ellenőrizni, hogy 25 osztója-e a 224 —1 számnak, akkor - miként
az előbb - meg kell határoznunk a 224 számot. Mint az imént, most is 23 = 8-
cal kezdünk, amit négyzetre emelve 26 = 64-et kapunk, ezt azonban rögtön
14-gyel (a 25-tel való osztáskor adott maradékával) helyettesítjük. Ezután
26 négyzetre emelése következne, de mi 142 = 196 helyett a 196 -P 25 osztás
maradékával, azaz 21-gyel számolunk. Az utolsó lépés 212 négyzetre emelése
volt - ehelyett most csak 21-et kell négyzetre emelnünk, és újra vehetjük a
212 = 441 maradékát, vagyis 16-ot. Mivel 16 —1 = 15 nem osztható 25-tel,
azt kaptuk, hogy 25 nem prímszám.
A meglehetősen tiviális konklúziót figyelembe véve a számítás nem tűnik
lélegzetelállító mutatványnak. Ez azonban csak illusztráció, elvégre a mód­
szer jóval nagyobb n-ekre is működik. Már láttuk, hogy ha az n száma 2-es
alapú számrendszerben fc-jegyű, akkor 2" kiszámításához mindössze 2k szor­
zást kell elvégeznünk, és ahhoz, hogy számaink kicsik maradjanak, minden
lépésben egy-egy maradékos osztásra van csak szükség. így elérhető, hogy a
számolás során kizárólag n 2-nél kisebb számok fordulnak elő. Ha az n szám
100-jegyű, akkor négyzete 199- vagy 200-jegyű. Ekkora számokat „kézzel”
összeszorozni nem nagy mulatság ugyan, a számítógépek számára azonban
gyerekjáték.
6.10. PRÍMTESZTELÉS 127

Pszeudoprím ek. Rátérünk a „kis” Fermat-tételen alapuló prímteszttel kap­


csolatban felmerülő harmadik problémára. Tegyük fel. hogy a tesztet az n
számra végrehajtva azt kaptuk, hogy n \ 2n~1—1. Ekkor n nyilván nem prím.
De mi van akkor, ha n | 2n_1 — 1? Következik-e ebből, hogy n prím? Fer-
mat tétele alapján ilyen következtetés biztosan nem vonható le. De vannak-e
olyan összetett n számok, amelyekre n | 2n_1 —1? Nincs szerencsénk: vannak.
A legkisebb ilyen szám 341 = 11 • 31, amely nem prím ugyan, mindazonáltal
teljesül rá, hogy
341 | 2340 - 1. (6.8)
(Ez viszonylag egyszerűen, Ferrnat tételének segítségével igazolható. Ele­
gendő azt megmutatni, hogy 2340 — 1 egyaránt osztható 11-gyel és 31-gyel,
abból ugyanis már következik, hogy a két szám szorzatával is osztható. Fer-
mat tétele szerint
11 | 210 - 1 .

Továbbá a 6.1.6. feladat alapján azt kapjuk, hogy

210 — 1 | 2340 - 1 ,

amiből
11 | 2340 - 1.

A 31-gyel a Fermat-tétel nélkül is elbánhatunk, elegendő újra a 6.1.6. fela­


datra hivatkozni:
31 = 25 - 1 | 2340 - 1.
Ezzel a (6.8) összefüggést beláttuk.)
Az ilyen összetett számokat, amelyek - a „kis” Fermat-tétel szempontjá­
ból legalábbis - prímként viselkednek, pszeudoprímeknek vagy álprímeknek
nevezzük. (Pontosabban — mivel a tétel a = 2 esetéről van szó - ilyenkor 2
alapú pszeudoprímekről beszélhetünk.) Ilyen számból nincsen túl sok (1 és
10 000 között mindössze 22), azt azonban jelzik: fennáll a veszélye, hogy a
prímtesztünk „hamis pozitív” eredményt ad, így - a szó szigorú, matematikai
értelmében - nem is tekinthetjük „valódi” prímtesztnek.
(Ha beletörődünk abba, hogy „hibák márpedig előfordulnak”, akkor meg­
maradhatunk a 2 alapú Fermat-tesztnél. Ha ezzel csupán azt kockáztatnánk,
hogy néhány számítógépes játék összeomlik, akkor azt a kockázatot talán
még vállalhatnánk - ha azonban egy bank vagy egy ország biztonsága múlik
azon, hogy számunk valóban prímszám-e, akkor nyilvánvaló, hogy új, jobb
tesztre van szükségünk.)
Egy mentőötletet maga a Fermat-tétel is szolgáltat, amely jóval többet
állít annál, mint amennyit kihasználtunk. A javaslat kézenfekvő: ellenőriz­
zük, hogy fennáll-e n \ 3" —3, n \ 5n —5 stb. A számolás az a = 2 esethez
hasonlóan megy, a 341 álprímet pedig már a következő menetben kiütjük:
341 j 3340 —1.
128 6. EGÉSZ SZÁMOK, OSZTÓK ÉS PRÍMEK

A következő állítás szerint mentőötletünk - elvben legalábbis - működik:


Egy n pozitív egész szám pontosan akkor prím, ha az
n | an~1 - 1
prímtesztet minden a = 1, 2, 3, . . . , n —1 esetén teljesíti.
A „kis” Fermat-tétel szerint a prímek teljesítik a tesztet. Ha pedig n össze­
tett, akkor van olyan 1 < a < n — 1 szám. amely n-hez képest nem relatív
prím, az ilyen a számokkal viszont a Fermat-teszt negatív eredményt ad.
Valóban: ha p az n és az a szám közös prímosztója, akkor p j an~1, így p
nem lehet osztója a " -1 —1-nek, minek következtében n sem.
Ez az általános Fermat-teszt mindazonáltal nem elég hatékony. Tegyük fel
ugyanis, hogy egy több száz jegyű n természetes számot tesztelünk. Először
kipróbáljuk a 2 alapú Fermat-tesztet, ezen a szám nem bukik meg. Folytatjuk
3-mal, de n ezt is teljesíti, és így tovább. Meddig kell folytatnunk az eljárást,
hogy n-t teljes bizonyossággal prímszámnak nyilváníthassuk? Az általános
Fermat-tesztet alátámasztó érvünk alapján nem kell tovább mennünk, csak
addig, amíg el nem érjük az első olyan számot, amely n-hez képest nem re­
latív prím, ez a szám pedig - mint az könnyen belátható - az n legkisebb
prímosztója. Ha például n = pq, ahol p és q egy-egy százjegyű prím (azaz n
számjegyeinek száma 199 vagy 200), akkor az általános Fermat-teszt értelmé­
ben p és q közül a kisebbikig minden számot ki kellene próbálnunk, ez pedig
több mint 1 0 " próbálkozást jelentene, ennek pedig gyakorlatilag nem lehet
a végére jutni. (Nem is beszélve arról, hogy ennyi erővel egy „közönséges”
oszthatósági tesztet is elvégezhetünk, mindenféle Fermat-varázslat nélkül.)
A Fermat-tesztet 2 helyett tetszőleges a alappal is kipróbálhatjuk, példá­
nak okáért véletlenszerűen választhatunk egy a számot az 1 < a < n - 1
tartományból. Tudjuk, hogy Fermat-tétele egyetlen olyan a esetén sem igaz,
amely n-hez képes nem relatív prím. Van-e ennek alapján esélyünk arra,
hogy n-ről kiderítsük, hogy összetett szám, amennyiben tényleg az? Ez n-től
függ, vannak azonban olyan n-nek, amelyek esetében nem vagyunk éppen
előnyös helyzetben. Ha például n = pq, ahol p és q különböző prímszámok,
akkor könnnyen felsorolhatjuk azokat a számokat, amelyek n-hez képest nem
relatív prímek: ezek a p és a q többszrösei (vagyis a p, 2p, . . . , (q —l)p, qp és
a q, 2q, . . . , {p —1)q,pq számok). Ilyen számból q + p —1 darab van (mivel pq
mindkét listán szereppel). Ez a szám nagyobb, mint 2 • 10", de kisebb, mint
2 • ÍO100, annak valószínűsége tehát, hogy egy véletlenszerűen választott a
ezek egyike lesz, kisebb, mint
2 • ÍO100
2- 10“ " ,
10199
ez pedig túlságosan kicsi ahhoz, hogy a szóban forgó esemény „valóban” be­
következhessen.

Carmichael-számok. Még reménykedhetünk abban, hogy egy n összetett


szám esetén a Fermat-teszt már n első prímosztója előtt jelez, vagy legalább
6.10. PRÍMTESZTELÉS 129

abban, hogy egy véletlenszerűen választott a alappal sok más számnál is


összetettséget jelez, nem csupán az n-hez nem relatív prímeknél. Sajnos nem
ez a helyzet. Vannak olyan n pozitív egész számok - a Carmichael-számok -,
amelyek még az álprímeknél is rosszabbak: minden hozzájuk képest relatív
prím a szám esetén „átmennek” az a alapú Fermat-teszten, azaz

n | an- l - 1

minden olyan a esetén, amelyre lnko(n, a) = 1. A legkisebb ilyen szám n =


= 561. A Carmichael-számok meglehetősen ritka jószágok, de létezésük mégis
arra figyelmeztet: a Fermat-tesztben nem bízhatunk feltétel nélkül.

A M iller—R a b in -te szt. A 70-es évek végén M. Rabin és G. Miller kitalál­


ták, hogyan lehet a Fermat-tételt - nem túl bonyolult módon - megszigorí­
tani ahhoz, hogy felülkerekedjünk a Carmichael-számok okozta nehézségen.
A módszert az 561 Carmichael-szám példáján illusztráljuk. (Felhasználjuk
a középiskolai matematikából az x 2 — 1 = (x — l)(x + 1) azonosságot; az
a560 —1 különbséget ennek alapján alakítjuk szorzattá.):

a560 - 1 = (a280 - 1) (a280 + l) =


= (a140 - 1) (a140 + 1) (a280 + l) =
= (a70 - 1) (a70 + 1) (a140 + l) (a280 + l) =
- (a35 - 1) (a35 + 1) (a70 + l) (a140 + l) (a280 + l ) .

Ha most 561 prím lenne, akkor a „kis” Fermat-tétel értelmében minden 1 <
< a < 560 esetén a560 —1 osztható lenne 561-gyel. Ha azonban egy prímszám
osztója egy szorzatnak, akkor osztania kell legalább az egyik tényezőt is
(6.3.3. feladat), így az

561 | a35 - 1, 561 | a35 + 1 , 561 | a 70 + 1, 561 | a 140 + 1, 561 | a280 + 1

relációk közül legalább egynek fenn kell állnia. De ezek egyike sem áll fenn,
még a = 2 esetén sem.
A Miller-Rabin-teszt ezen a megfigyelésen alapul. Ha az n > 1 páratlan
számról akarjuk eldönteni, prím-e vagy sem, akkor véletlenszeren kiválasz­
tunk egy 0 < a < n — 1 számot, majd szemügyre vesszük az an ~ a kü­
lönbséget. Felírjuk a(an~1 — 1) alakban, majd az x 2 — 1 = (x — l)(x + 1)
azonosságot felhasználva folytatjuk a szorzattá alakítást, amíg lehet. Ezután
ellenőrizzük, hogy van-e a tényezők között n-nel osztható.
Ha a teszt azt jelzi, hogy nincs, akkor biztosak lehetünk abban, hogy n
nem prím. De mi a helyzet, ha a teszt „nem jelez”? Ez sajnos összetett n ese­
tén is megeshet, de - és ez a fontos - a hamis pozitív eredmény valószínűsége
kisebb, mint \ (emlékezzünk rá, hogy a-t véletlenszerűen választottuk).
Ha az esetek felében téves eredményre jutunk, az nem hangzik túl jól, a
teszt azonban megismételhető. Ha például véletlenszerűen választott a-kkal
130 6. EGÉSZ SZÁMOK, OSZTÓK ÉS PRÍMEK

10-szer megismételjük, akkor a hamis pozitív eredmény valószínűsége kisebb,


mint 2-10 < 1/1000 (ahhoz ugyanis, hogy n-t prímnek nyilvánítsuk, mind
a 10 esetben hamis eredményt kell kapnunk, egymástól függetlenül). Ha a
tesztet 100-szor megismételjük, akkor a tévedés valószínűsége kisebb lesz,
mint 2-100 < 10—30, ez pedig igen-igen csekély esély.
Ez az algoritmus tehát, amennyiben elég sokszor elvégezzük, olyan biztos
prímtesztet jelent, amely a számítógépes hardvernél is kisebb valószínűséggel
téved, gyakorlati céljainkra így tökéletesen megfelelő'. A Miller-Rabin-tesztet
használja többek között a Maple és a Mathematica programcsomag, valamint
a kriptográfia is.

Tegyük fel, hogy egy prímtesztet elvégezve úgy találjuk: n összetett szám.
Az értelemszerű kérdés ekkor nyilván ez: mi az n prímtényezős felbontása.
Könnyen látható, hogy ennél kevesebbel is beérhetnénk: elegendő lenne, ha
az n számot felírhatnánk két kisebb szám szorzataként, például n = ab alak­
ban. Ha ezt a feladatot hatékonyan meg tudnánk oldani, akkor az eljárást
a-val és ö-vel folytathatnánk. Ha kiderül, hogy mindkettő prím, akkor meg­
találtuk n prímtényezős felbontását, ha egyikük - mondjuk a - összetett,
akkor az eljárást folytatva a-t is felbonthatnánk két kisebb szám szorza­
tára, és így tovább. Mivel az n számnak legfeljebb log2 n prímtényezője lehet
(6.3.4. feladat), az eljárást mindössze log2 n-szer kell megismételnünk (vagyis
kevesebbszer, mint n számjegyeinek száma).
Sajnos (vagy szerencsére? - l . a titkosírásról szóló 15. fejezetet), nem áll
rendelkezésünkre olyan hatékony módszer, amelynek segítségével egy számot
két kisebb szám sorzatára bonthatnánk. Egyelőre ki kell békülnünk azzal,
hogy nem rendelkezünk hatékony módszerrel, és azt sem tudjuk bebizonyí­
tani, hogy ilyen módszer nem létezik.

6.10.2. Igazoljuk, hogy 561 Carmichael-szám: mutassuk meg, hogy 561 j a 561 —a
minden pozitív egész a esetén. [Útmutatás: mivel 561 = 3 -11 •17, elegendő belátni,
hogy 3 [ a561—a, 11 j a°61 —1 és hogy 17 | a561 —a. Igazoljuk külön-külön mindhárom
fennállását, a 341 | 2340 —1 bizonyításának módszerét követve.]

Áttekintő feladatok
6.10.3. Igazoljuk, hogy ha c / 0 és ac \ be, akkor a \ b.

6.10.4. Bizonyítsuk be, hogy ha a \ b és a | c, akkor a \ b2 + 3c 4- 2bc.

6.10.5. Igazoljuk, hogy minden 3-nál nagyobb prímszám 6-tal osztva 1 vagy —1
maradékot ad.

6.10.6. L egyen a > 1, k , n > 0. L ássuk be, hogy a k — 1 | a n — 1 pontosan akkor,


ha k | n.
6.10. PRÍMTESZTELÉS 131

6.10.7. Bizonyítsuk be, hogy a > 3 esetén nem lehet a. a + 2 és a + 4 mindegyike


prím. Lehet-e mindhárom prímhatvány?

6.10.8. Hány olyan pozitív egész szám van, amely egyetlen 20-nál nagyobb prím­
mel és egyetlen prímszám négyzetével sem osztható.

6.10.9. írjuk fel (a) (J°) és (b) 20! prímtényezős felbontását.

6.10.10. Igazoljuk, hogy egyetlen 30-jegyű számnak sem lehet 100-nál több prím­
tényezője.

6.10.11. Igazoljuk, hogy bármely 160-jegyű számhoz található olyan 100-nál nem
kisebb prímhatvány, amellyel az illető szám osztható. Ilyen tulajdonságú prímosztó
nem feltétlenül létezik.

6.10.12. Határozzuk meg a 20-nál nem nagyobb pozitív egész számok osztóinak
számát (a 6-nak például 4 osztója van: 1, 2, 3, 6 ). Melyek azok a számok, amelyek­
nek páros számú osztója van? Állítsunk fel egy hipotézist, és bizonyítsuk be.

6.10.13. Határozzuk meg 100 és 254 legnagyobb közös osztóját az euklideszi al­
goritmus segítségével.

6.10.14. Adjunk meg olyan számpárokat, amelyekkel az euklideszi algoritmus (a)


2 lépésben, (b) 6 lépésben adja meg a legnagyobb közös osztót.

6.10.15. Bizonyítsuk be, hogy az 4.3.2. feladatban definiált Ln Lucas-számokra


teljesülnek a következők:
(a) lnko(F 3fc, L-ik) = 2 ;
(b) ha n nem osztható 3-mal, akkoro lnko (Fn,L n) = 1;
(c) L6k = 2 (mód 4).

6.10.16. Igazoljuk, hogy bármely m egész számhoz található m-mel osztható Fi-
bonacci-szám. (Az Fq = 0 számnak persze minden m szám osztója - rendben:
pozitív Fibonacci-számra gondolunk.)

6.10.17. Keressünk olyan x és y egész számokat, amelyekkel 25a: + 41y = 1.

6.10.18. Keressünk olyan x és y egész számokat, amelyekkel

2a: + y = 4 (mód 17) és 5x —5y = 9 (mód 17).

6.10.19. Bizonyítsuk be, hogy \/E irracionális.

6.10.20. Mutassuk meg, hogy a „kis” Fermat-tétel két alakja (a 6.5.1. Tétel és a
6.1. Tétel) ekvivalens.
132 6. EGÉSZ SZÁMOK, OSZTÓK ÉS PRÍMEK

6.10.21. Igazoljuk, hogy bármely p > 2 prímmodulus esetén

1 = p+ 1
2 2

6.10.22. Kiválasztunk n + 1 számot a { 1 .2 ,..., 2n} szám közül. Bizonyítsuk be,


hogy a választott számok között van két olyan, amelyek egyike a másik osztója.

6.10.23. Hány olyan 210-nél kisebb szám van, amely osztható 2-vel, 3-mal vagy
7-tel?
7. fejezet

Gráfok

7.1. Páros és páratlan fokszámú pontok


Kezdjük egy feladattal (amelynek, elismerjük, nincs különösebb gyakorlati
jelentősége):
Bizonyítsuk be, hogy egy 51 fős társaságban mindig akad olyan, akinek
a jelenlévők között páros számú ismerőse van.
(Feltesszük, hogy az ismeretség kölcsönös. Lehetnek olyanok is a vendégek
között, akik nem ismerik egymást. Az is elképzelhető, hogy akad, aki senkit
sem ismer - de ha ilyen vendég van, akkor az állítás igaz, az ő ismerőseinek
száma ugyanis páros.)
Ha nem tudjuk, hogyan kezdjünk hozzá, kísérletezzünk. Mit jelent a mate­
matikai feladatok esetében a kísérletezés? Soroljunk fel 51 nevet, és készítsük
el mindegyikhez az ismerősök listáját? Ez elég fáradságos lenne, és elvesz­
nénk az adatok között. Kisebb számokkkal azonban az ötlet kivitelezhetőnek
tűnik. De milyen kisebb számot válasszunk? Könnyen belátható, hogy az 50
nem jó: ha például mindenki ismer mindenkit, akkor mindenkinek 49 isme­
rőse van, az ismerősök száma tehát valamennyi vendég esetében páratlan.
Ugyanezen okból nem lenne jó, ha 51 helyett 48, 30, vagy tetszőleges páros
létszámú vendégseregről beszélnénk. Reméljük, hogy ez a probléma kulcsa,
próbáljuk meg tehát belátni, hogy
ha egy összejövetelen páratlan számú vendég van jelen, akkor közülük
legalább egynek (a jelenlevők közül) páros számú ismerőse van.
Nézzünk kisebb számokat. Legyenek a vendégek: Andrea, Béla, Csaba,
Dóra és Erzsi. Amikor először találkoztak, Andrea már mindannyiukat is­
merte, de Béla és Csaba, valamint Csaba és Erzsi is ismerték egymást. And­
rea tehát 4, Béla 2, Csaba 3, Dóra 1, Erzsi pedig 2 vendéget ismert, hárman
is voltak tehát, akik a társaságból páros számú ismerőssel rendelkeztek.
134 7. GRÁFOK

Még így is fáradságos és a tévedés kockázatát növeli, ha minden vendég


ismerőseiről listát vezetünk. Egy grafikus illusztráció azonban komoly segít­
séget nyújthat. A vendégeket a sík egy-egy pontjának feleltetjük meg (igazá­
ból egy kis körnek, hogy látsszon is az ábránkon...), és összekötjük azokat,
akik ismerik egymást. Az így kapott rajz (7.1.ábra) a feladat szempontjából
minden szükséges információt tartalmaz.

7.1. ábra. Barátaink ismeretségi gráfja.


Az ilyen típusú rajzokat gráfnak nevezzük. Pontosabban: egy gráf két
halmazból áll. Az egyik elemeit a gráf csúcsainak vagy pontjainak nevezzük,
amelyek közül némelyeket (nem feltétlenül az összesei) élek kötnek össze,
ezek az élek alkotják a gráfot megadó másik halmazt. Nincs jelentősége an­
nak, hogy az élek egyenesek vagy görbe vonalak, egyedül az számít, hogy
melyik pontokat kötik össze. A G gráf pontjainak halmazát általában V,
éleinek halmazát pedig E jelöli. Ha tehát azt írjuk, hogy G — (V, E), akkor
ezzel azt jelezzük, hogy a G gráf pontjai a V, élei pedig az E halmaz elemei.
Egy él esetében tehát csak az számít, hogy melyik pontokat köti össze,
az éleket ennélfogva a V halmaz kételemű részhalmazainak is tekintetjük.
Ekkor tehát az u és v pontokat összekötő él az {u,v} halmaz, amelyet néha
egyszerűen csak így jelölünk: uv.
Lehetséges-e, hogy két pontot több él is összeköt? Előfordulhat-e, hogy
egy él két végpontja a gráf ugyanazon pontja? A válasz természetesen a
döntésünktől függ. Bizonyos alkalmazásokban célszerű megengedni az ilyen
- párhuzamos, illetve hurokélnek nevezett - éleket is, más esetekben viszont
jobb, ha kizárjuk őket. Ebben a könyvben általában feltesszük, hogy egy gráf
bármely két pontját legfeljebb egy él köti össze, és hogy egyetlen pontból sem
vezet él önmagába. Az ilyen gráfokat gyakran egyszerű gráfoknak nevezik.
Ha egy gráfban párhuzamos élek is lehetnek, akkor ezt gyakran a multigráf
elnevezéssel hangsúlyozzuk.
Egy él két végpontját a gráf szomszédos pontjainak nevezzük.
Visszatérve a feladatunkhoz, a vendégsereget kényelmesen ábrázolhatjuk
egy gráffal. Arra vagyunk kíváncsiak, hogy a vendégeknek hány ismerősük
van. Ezt a gráfban egyszerűen úgy határozzuk meg, hogy megszámoljuk,
hány él indul ki a szóban forgó pontból. Egy gráf valamely pontjából kiinduló
élek számát az illető pont fokszámának nevezzük. A v pont fokszámát d(v)
7.1. PÁROS ÉS PÁRATLAN FOKSZÁMÚ PONTOK 135

jelöli. Eszerint tehát A fokszáma 4, B-é 2 stb. Ha megérkezik Feri, aki a


társaságból senkit sem ismer, akkor a gráfhoz egy új pontot adunk, amelyből
egyetlen él sem indul ki, fokszáma tehát 0.
Bizonyítandó állításunkat ezek után a következőképpen fordíthatjuk le a
gráfelmélet nyelvére:
ha egy gráf pontjainak száma páratlan, akkor van legalább egy páros
fokszámú pontja.
A gráfok sokkal könnyebben kezelhetők, mint a vendégek ismerőseit felsoroló
táblázatok, így több páratlan pontú gráfban is ellenőrizhetjük, van-e páros
fokszámú pont. A 7.2. ábrán látható gráfoknak rendre 5,1,1, 7, 3,3 páros fok­
számú pontja van (az utolsó ábrán nem két gráf, hanem egyetlen, 7 pontú
gráf látható). Szembetűnő, hogy az ilyen pontok száma minden esetben pá­
ratlan.

o • * >o

7.2. ábra. Páratlan pontú gráfok. A páros fokszámú pontokat fekete pontok
jelzik.

Esetünkben könnyebb többet bizonyítani; ha belátjuk, hogy


ha egy gráf pontjainak száma páratlan, akkor páros fokszámú pontjainak
száma is az,
akkor nagy lépést tettünk problémánk megoldása felé. (Hogy miért tekinthet­
jük az utóbbi állítást erősebbnek? Mert a 0 nem páratlan szám.) Próbáljunk
meg egy ennél is erősebb sejtést megfogalmazni, és ehhez vegyük figyelembe
a páros pontú gráfokat is. A 7.3. ábrán látható gráfoknak rendre 2, 4,0, 6, 2,4
páros fokszámú pontja van, az a sejtésünk támad tehát, hogy
amennyiben egy gráf pontjainak száma páros, úgy páros fokszámú pont­
jainak száma is az.

7.3. ábra. Páros pontú gráfok. A páros fokszámú pontokat fekete pontok
jelzik.

Ez nagyon hasonlít a páros számú ponttal rendelkező gráfokra vonatkozó


állításra, mégis jobb lenne, ha két megfigyelésünket egyetlen eredményben
136 7. GRÁFOK

is össze tudnánk foglalni. Egy ilyen állítást kapunk, ha a páros fokszámú


pontok helyett a páratlan fokszámúakra koncentrálunk. Az utóbbi számot
megkapjuk, ha a páros fokszámú pontok számát kivonjuk a pontok számából.
Ez elvégezve a következő állítást kapjuk, amelyből mindkét előző sejtésünk
következik:

7.1.1. TÉTEL. A páratlan fokszámú pontok száma minden gráfban páros.

A tétel bizonyításával a feladatunkat is megoldjuk. Az a benyomásunk


támadhatna, hogy az általánosság egyre magasabb szintjére emelkedve a
feladat egyre nehezebbé vált, de ez nem így van. Valójában a megoldáshoz
is közelebb kerültünk.
B i z o n y í t á s : A tétel egyik lehetséges bizonyításában a gráf éleit egyenként
rajzoljuk be, és közben számon tartjuk, miként változik a pontok fokszáma.
Egy példát a 7.4. ábrán tanulmányozhatunk. Kezdetben a gráfunkban egyet­
len él sincs, azaz minden pont fokszáma 0, így a páratlan fokszámú pontok
száma is 0 (tehát páros szám).

7.4. ábra. Egy gráf éleinek egyenként való berajzolása. A páros fokszámú
pontokat fekete pontok jelzik.

Amikor új élt rajzolunk be, az él végpontjainak paritása megváltozik:


- ha az új él mindkét végpontjának fokszáma páros volt, akkor a páratlan
fokszámú pontok számát 2-vel növekszik;
- ha az új él mindkét végpontjának fokszáma páratlan volt, akkor a páratlan
fokszámú pontok számát 2-vel csökken;
- ha az új él egyik végpontjának fokszáma páros, a másiké páratlan volt,
akkor a páratlan fokszámú pontok száma nem változik.
Ha tehát a páratlan fokszámú pontok száma kezdetben páros volt, akkor
az új él berajzolása után is páros maradt. Ezzel a tétel bizonyítása teljessé
vált. (Vegyük észre, hogy bizonyításunk valójában a gráf éleinek száma sze­
rinti teljes indukció.) □
7.1. PÁROS ÉS PÁRATLAN FOKSZÁMÚ PONTOK 137

A gráfok nem csupán a vendégseregek, de egy sereg más helyzet ábrázo­


lására is alkalmasak. Gyakran érdemes vizsgálni például az olyan gráfokat,
amelyeknek pontjai városokat, élei pedig autópályákat (vagy vasútvonalakat,
vagy telefonvezetékeket) reprezentálnak. Gráfokat használunk az elektromos
hálózatok, például a számítógépek memóriakártyájára nyomtatott áramkö­
rök leírására is.
Valójában minden olyan esetben, amikor bizonyos objektumok között egy
„relációt” értelmezünk, a gráfok természetes módon megjelennek. Gráfokkal
adhatjuk meg - többek között - egy molekula atomjai közötti kötéseket,
az agysejtek közötti összeköttetéseket vagy egy faj leszármazottjait. A gráf
pontjai néha absztrakt objektumokat ábrázolnak, például egy nagy építkezés
fázisait (ilyenkor az élek azt jelölhetik, hogy az egyik végpont a munka vala­
mely adott fázisában érhető el a másikból). De lehetnek a pontok egy játék
lehetséges állásai is (például sakkállások, bár egy ilyen gráf lerajzolása nem
éppen egyszerű feladat), amikor egy él annyit jelent, hogy az egyik végpont
a másikból a játék egyetlen lépésével érhető el.

7.1.1. Rajzoljuk fel az összes 2, 3 és 4 pontú gráfot.

7.1.2. (a) Létezik-e olyan 6 pontú gráf, amelynek élei 2, 3,3, 3, 3, 3 fokszámúak?
(b) Létezik-e olyan 6 pontú gráf, amelynek élei 0,1, 2, 3,4, 5 fokszámúak?
(c) Hány olyan 4 pontú gráf van, amelyben az élek fokszáma 1,1, 2, 2?
(d) Hány 10 pontú gráf van, amelyben az élek fokszáma 1,1,1,1,1,1,1,1,1,1?

7.1.3. A parti végére az n vendég mindegyike megismerkedik az összes többivel.


Rajzoljunk olyan gráfot, amely ezt a helyzetet szemlélteti. Hány éle van ennek a
gráfnak?

7.1.4. (a) Rajzoljuk le azt a gráfot, amelynek pontjai az 1 ,2 ,..., 10 számok,


két pontot pedig akkor köt össze él, ha az egyik osztója a másiknak.
(b) Rajzoljuk le azt a gráfot, amelynek pontjai az 1, 2 ,..., 10 számok, az élek
pedig a relatív prím számpárok.1
(c) A pontok, illetve a pontok fokszámának meghatározásával ellenőrizzük, hogy
a 7.1.1. Tétel a feladat (a) és (b) részében szereplő gráfokra is teljesül.

7.1.5. Legfeljebb hány éle lehet egy 10 pontú gráfnak?

7.1.6. Hány gráfot adhatunk meg 20 ponton? (A kérdés nem egészen pontos. Meg
kellene mondanunk ugyanis, hogy mikor tekintünk két gráfot azonosnak. Ebben a
feladatban olyan gráfokra gondolunk, amelyeknek elemeit megcímkéztük, mondjuk
az Andrea, Béla. .. nevekkel. Az a gráf tehát, amelynek egyetlen éle Andreát és
Bélát köt össze, különbözik attól, amelynek egyetlen éle Erzsi és Feri között halad.)

1E b b en a g ráfban m egjelenhet egy hurokéi: m ivel l n k o ( l , l ) = 1, de k > 1 esetén


lnko(fc, k) > 1 , az 1-et (am ennyiben m egengedjük a hurokéleket is) önm agával is össze
kell kötnünk.
138 7. GRÁFOK

7.1.7. Fogalmazzuk meg a következő állítást a gráfok nyelvén, és bizonyítsuk be:


minden társaságban van legalább két ember, akinek (a társaság tagjai között)
ugyanannyi ismerőse van. (Ilyen volt Béla és Erzsi az első példánkban.)

Tanulságos lesz, ha megadjuk a 7.1.1. Tétel egy újabb bizonyítását. A kri­


tikus kérdés a következő: hány éle van egy gráfnak? A válasz egyszerű (elég,
he felidézzük a kézfogások problémáját): minden pont esetében megszámol­
juk a pontból kiinduló éleket (azaz meghatározzuk a pont fokszámát). Ha
ezeket a számokat összeadjuk, akkor az összegben minden élt kétszer szá­
moltunk, kettővel osztva tehát az élek számát kapjuk. Eredményünket egy
tételben rögzítjük:

7.1.2. T é t e l . Egy gráf pontjai fokszámait összeadva a gráf élei számának


kétszeresét kapjuk.

A fokszámok összege tehát minden gráfban páros szám. Ebből az összeg­


ből páros számot kivonva a különbség továbbra is páros marad, minek kö­
vetkeztében a páratlan fokszámú pontok fokszámainak összege is páros. Ez
azonban csak úgy lehetséges, ha a páratlan fokszámú pontok száma is pá­
ros (páratlan számú páratlan szám összege ugyanis páratlan lenne). Ezzel a
7.1.1. Tételt újra beláttuk.

7.2. Utak, körök, összefüggőség


Ismerkedjünk meg néhány speciális gráffal. A legegyszerűbb gráfoknak egyet­
len élük sincs, ezeket él nélküli gráfoknak nevezzük.
Ha veszünk n pontot, és ezek között minden lehetséges élt berajzolunk,
akkor az n pontú teljes gráfot kapjuk. Az n pontú teljes gráfot (amelynek a
7.1.3. feladat szerint Q) éle van), K n jelöli.
Ha egy gráffal egy relációt akarunk ábrázolni, akkor világos, hogy a szó­
ban forgó relációt azoknak a pontoknak az összekötésével is egyértelműen
megadhatjuk, amelyek nem állnak egymással relációban. Tetszőleges G gráf
egyértelműen meghatározza tehát azt a G gráfot, amelyben két pont ponto­
san akkor van egy éllel összekötve, ha G-ben nincs. A G gráfot a G komple­
menterének nevezzük.
Ha veszünk n pontot és az egyiket összekötjük az összes többivel, akkor
egy csillagot kapunk. Ennek a csillagnak n —1 éle van.
Rajzoljunk n pontot egy sorba, és kössük össze az egymás utániakat. Az
így kapott n —1 élű gráfot útnak nevezzük, az első és az utolsó pontot pedig
az út végpontjainak. Ha az első és az utolsó pontot is összekötjük, akkor
utunk körré zárul. Egy út vagy kör éleinek száma az út, illetve a kör hossza.
A k hosszúságú köröket alkalmanként röviden fc-körnek nevezzük. Egy gráfot
természetesen sokféleképpen lerajzolhatunk, áthelyezhetjük a pontokat, akár
úgy is, hogy az élek közül némelyek metsszék egymást (7.5. ábra).
7.2. UTAK, KÖRÖK, ÖSSZEFÜGGŐSÉG 139

\ /
7.5. ábra. Két út és két kör.

A H gráfot a G gráf részgráfjának nevezzük, ha H megkapható G-ből


bizonyos élek és pontok elhagyásával (amikor persze egy pontot elhagyunk,
akkor automatikusan törölnünk kell az összes olyan élt is, amelynek egyik
végpontja a szóban forgó pont).

7.2.1. Keresssük meg a 7.1-7.5. ábrákon a teljes gráfokat, az utakat és a köröket.

7.2.2. Hány részgráfja van egy n pontú él nélküli gráfnak? Hány részgráfja van
egy háromszögnek?

7.2.3. Keressük meg az összes olyan gráfot, amely komplemensével együtt út,
illetve kör.

A gráfelmélet egyik központi jelentőségű fogalma az összefüggő gráfé.


Szemléletesen is nyilvánvaló, hogy ez a fogalom mit jelent, de a precíz meg­
határozás sem okoz gondot: egy G gráf összefüggő, ha bármely két pontjához
található a két pontot összekötő út G-ben. Még pontosabban: a G gráf össze­
függő, ha bármely u és v pontjához található olyan út, amelynek végpontjai
u és v, és amely út G egy részgráfja (7.6. ábra).
Helyénvaló, ha a fogalommal kissé alaposabban is megismerkedünk. Te­
gyük fel, hogy egy gráf a és b pontjait a P, a b és c pontokat pedig a Q út
köti össze. Létezik-e a gráfban a-t és c-t összekötő út? A válasz egyértelmű
igennek tűnik, elvégre az a-ból eljuthatunk 6-be, 6-ből pedig továbbmehe­
tünk c-be. De vigyázat: P és Q egymás után illesztésével nem biztos, hogy
egy a-t és c-t összekötő utat kapunk, a két út ugyanis előfordulhat, hogy
metszi egymást (7.7. ábra). Ettől persze még könnyen definiálhatunk egy
a-ból c-be vezető utat: kövessük a P utat egészen a Q úttal vett első közös
d pontjáig, majd haladjunk a Q úton d-től c-ig. Könnyen belátható, hogy az
így definiált úton egyetlen pontot sem érintünk egynél többször. Valóban: az
első szakasz pontjai a P, a második szakasz pontjai pedig a Q út pontjai, így
egy szakaszon belül nincs olyan pont. amelyet kétszer is érintenénk. A két
140 7. GRÁFOK

7.6. ábra. Egy gráf két pontját összekötő út.

szakasznak pedig - a d-n kívül - nem lehet közös pontja, elvégre d az első
közös pont, így a P út d „előtti” pontjai a Q útnak nem pontjai.1
Egy G gráf pontjainak vq, v\ , . . . , V k sorozatát sétának nevezzük, ha vq
és Di, V\ és r>2... egyaránt szomszédosak. A séta definíciója emlékeztet az
útéra, van azonban egy fontos különbség: egy útnak különböző pontokon
kell átmennie, egy séta viszont ugyanazt a pontot akár többször is érintheti.
Eszerint tehát egy út: ismétlés nélküli séta. Egy séta esetében az első és
az utolsó pont is lehet ugyanaz, ilyenkor zárt sétának (vagy körsétának)
nevezzük. A legrövidebb séták egyetlen vq pontból állnak (minden ilyen séta
zárt). Ha az első és utolsó pontok különböznek, akkor azt mondjuk, hogy a
séta összeköti őket.
Van-e különbség, ha egy gráf két pontját egy út, illetve egy séta köti
össze? Nincs különösebb: ha két pont sétával összeköthető, akkor úttal is.
A gráfelméleti vizsgálódásokban olykor az utak, máskor a séták használata
kényelmesebb (7.2.6. feladat).
Tetszőleges G - nem feltétlenül összefüggő - gráfnak van összefüggő rész­
gráfja, ilyen például minden egyetlen pontból álló gráf. A G összefüggő kom­
ponensének nevezzük G minden maximális, összefüggő H részgráfját. Más
szóval: a H részgráf a G összefüggő komponense, ha H összefüggő, de G-nek

1 Állításunk túlságosan is részletesnek tűnő indoklásával arra akartuk felhívni a figyelmet,


hogy az utakkal és körökkel kapcsolatos gondolatmenetek szemléltetése félrevezető is lehet.
Két út összekötésekor szinte automatikusan egy újabb (és hosszabb) útra gondolunk —
holott korántsem biztos, hogy ilyet kapunk.
7.2. UTAK, KÖRÖK, ÖSSZEFÜGGŐSÉG 141

7.7. ábra. Egy a-ból c-be vezető út kiválasztása az a-ból 6-be, illetve 6-ből
c-be vezető utak alapján.

nincs olyan összefüggő részgráfja, amelynek H valódi részgráfja. Nyilván­


való, hogy G minden pontja eleme egy összefüggő komponensnek. A 7.2.7.
feladat szerint G két különböző összefüggő komponensének egyetlen közös
pontja sem lehet (különben a kettő uniója is összefüggő komponens lenne).
Ezek szerint tehát G minden pontja pontosan egy összefüggő komponensnek
eleme.

7.2.4. Érvényben marad-e az iménti bizonyítás, ha (a) az a pont a Q útra illesz­


kedik; (b) ha a P és a Q utak egyetlen közös pontja a 6?

7.2.5. (a) Hagyjuk el a G összefüggő gráf egy e élét. Igazoljuk egy példa segít­
ségével, hogy a fennmaradó gráf nem feltétlenül összefüggő.
(b) Igazoljuk, hogy ha olyan élt törlünk, amely a G egy kör-részgráfjába esik,
akkor a gráf a összefüggő marad.

7.2.6. Legyen u és v a G gráf két pontja.


(a) Igazoljuk, hogy ha van G-ben u-ból u-be vezető séta, akkor van u-t és v-t
összekötő út is.
(b) Az (a) feladat alapján adjunk új bizonyítást arra, hogy ha a G gráf a és 6,
valamint a b és c pontjait is összeköti egy-egy út, akkor a gráfban van olyan
út is, amely a-t és c-t köti össze.

7.2.7. Legyenek H\ = (Vi,Ei) és H 2 = (V2 , £ 2 ) a G gráf összefüggő részgráfjai.


Tegyük fel, hogy H i-nek és IÍ 2 -nek van legalább egy közös pontja. Igazoljuk, hogy
ekkor uniójuk - vagyis az a H = (V',E') részgráf, amelyben V' = V\ U V2 és
E' = Ei U E 2 - szintén összefüggő.

7.2.8. Határozzuk meg a 7.1.4. feladatban konstruált gráfok összefüggő kompo­


nenseit.
142 7. GRÁFOK

7.2.9. Igazoljuk, hogy egy G gráf egyetlen éle sem haladhat a gráf két különböző
összefüggő komponensébe eső pontjai között.

7.2.10. Igazoljuk, hogy a v és az u pont pontosan akkor esik a G gráf ugyanazon


összefüggő komponensébe, ha G-ben van u-t és v-t összekötő út.

7.2.11. Bizonyítsuk be, hogy ha egy n > 3 pontú (egyszerű) gráfnak több mint
(" 7 1) éle van, akkor a gráf összefüggő.

7.3. Euler-séták és Hamilton-körök


A gráfelmélet talán legelső eredménye Leonhard Euler, a 18. század legna­
gyobb matematikusa nevéhez fűződik.

7.8. ábra. Leonhard Euler (1707-1783).

A problémát Königsberg (ma Kalinyingrád) lakosai vetették fel. A várost


a Pregel folyó négy kerületre osztotta, amelyeket akkoriban hét híd kötött
össze (7.9. ábra). A hidakon való sétálgatás a polgárok kedvelt időtöltése
volt, így merült fel a kérdés: lehet-e olyan sétát tenni a városban, amelynek
során minden hídon pontosan egyszer kelnek át?
1736-ban jelent meg Euler tanulmánya, amelyben bebizonyította: ilyen
séta nem létezik. A bizonyítás meglehetősen egyszerű. Tegyük fel, hogy léte­
zik ilyen séta, amely - mondjuk - nem a Kneiphoff-szigeten kezdődik. Ha a
séta folyamán bármikor - természetesen egy hídon át - a szigetre érkezünk,
7.3. EULER-SÉTÁK ÉS HAMILTON-KÖRÖK 143

7.9. ábra. Königsberg hidjai Euler korában. Mellette a város gráf-


reprezentációja.

akkor egy másik hídon kell továbbmennünk. Ha a harmadik hídon vissza­


érkezünk, akkor - idővel - a negyediken kell továbbmennünk, hogy aztán
az ötödiken visszatérjünk... Ezután viszont a szigeten kell maradnunk („sé­
tán kívül” persze elhagyhatjuk), mivel nincs már használatlan híd, amelyen
továbbmehetnénk.
Eszerint tehát a sétát a szigeten kell kezdenünk, vagy ott kell befejez­
nünk. Ezt persze a szabályaink sem zárják ki. A probléma csak az, hogy a
város bármelyik kerületére vonatkozóan ugyanerre a következtetésre jutunk.
A különbség mindössze annyi, hogy a másik három kerület nem öt, hanem
három hídon keresztül kapcsolódik a többihez, így bármelyikre igaz, hogy ha
sétánkat nem ott kezdtük, akkor a második látogatáskor ott ragadunk.
Gondban vagyunk: a négy kerület mindegyikének a séta kezdő-, vagy vég­
pontjának kell lennie, ami lehetetlen.
Euler megjegyezte, hogy az állítást az összes lehetséges séta felsorolásával
és ellenőrzésével is be lehetne bizonyítani, bár a lehetőségek nagy száma mi­
att ez csak mérsékelten gyakorlatias megoldás lenne. Ennél fontosabb azon­
ban, hogy megfogalmazott egy általános feltételt, amelynek alapján bármely
város esetében eldönthető (a szigetek és a hidak számától függetlenül), hogy
létezik-e minden hidat pontosan egyszer érintő séta.
Euler eredményét ma a gráfelmélet első tételeként tartjuk számon. Euler
természetesen nem használta a gráfelmélet terminológiáját (ahhoz száz évvel
tovább kellett volna élnie), mi azonban megtehetjük.
Tekintsük tehát a G gráfot. A következőkben megengedjük, hogy a gráf
két pontja között több él haladjon. Az ilyen gráfokban a séta definíciója kissé
bonyolultabb. Egy séta persze ezúttal is a gráf éllel összekötött pontjainak
sorozata, mivel azonban két pont között több él is haladhat, az ilyen esetek­
ben meg kel mondanunk, hogy melyik él tartozik a sétához. Egy séta tehát
olyan v0, e1,v 1,e 2, v2, . . . , vk- i , e k, vk sorozat, amelyben v0,v i , . . . , vk a gráf
pontjai, ei, e2, . . . , ek a gráf élei, és az ej él minden esetben a Vj„i és a «j
pontokat köti össze (í — 1 , 2 . . . , fc).
144 7. GRÁFOK

Euler-sétának nevezzük azokat a sétákat, amelyek a gráf minden élén pon­


tosan egyszer haladnak át; egy Euler-séta nem feltétlenül zárt, amint a 7.10.
ábra is mutatja. A königsbergi hidak problémája a gráfelmélet nyelvére való
fordításához készítsük el a „város gráfját’’, amelyben a pontok a négy kerüle­
tet, az élek pedig az ezeket összekötő' hidakat reprezentálják (az eredmény a
7.9. ábra jobb oldalán látható). A városban tett séták így (már amennyiben
csak a hidakon való átkelések számítanak) a gráfbeli sétáknak felelnek meg,
az olyan sétának pedig, amely a város valamennyi hídján pontosan egyszer
halad át, a gráfban egy Euler-séta a párja.

7.10. ábra. Euler-séta egy gráfban.

A már említett Euler-féle kritérium a gráfelmélet nyelvén a következő


tételben fejezhető ki.

7.3.1. T é t e l , (a) Ha egy összefüggő gráfnak kettőnél több páratlan fok­


számú pontja van, akkor a gráfban nincs Euler-séta.
(b) Ha egy összefüggő gráfnak pontosan kettő páratlan fokszámú pontja
van, akkor a gráfban van Euler-séta. Minden Euler-sétának a páratlan fok­
számú pontok egyikében kell kezdődnie és a másikban végződnie.
(c) Ha egy összefüggő gráfnak nincs páratlan fokszámú pontja, akkor a
gráfban van Euler-séta, és ebben az esetben minden Euler-séta zárt.

B iz o n y ít á s : Euler érvelése szerint ha egy v pont fokszáma páratlan, ak­


kor egy Euler-sétának vagy v-ben kell kezdődnie, vagy v-ben kell végződnie.
Hasonlóan belátható, hogy ha a v pont fokszáma páros, akkor minden Euler-
séta vagy v-ben kezdődik, és itt is ér véget, vagy valahol máshol kezdődik, és
valahol máshol ér véget. Ezekből a tétel (a) része, valamint a (b) és (c) rész
második álltása már következik.
Meg kell még mutatnunk, hogy ha egy összefüggő gráfnak 0 vagy 2 pá­
ratlan fokszámú pontja van, akkor a gráfban van Euler-séta. A bizonyítást
arra az esetre adjuk meg, amikor egyetlen páratlan fokszámú pont sincs, a
másik eset igazolását (a 7.3.14. feladatban) az Olvasóra hagyjuk.
7.3. EULER-SÉTÁK ÉS HAMILTON-KÖRÖK 145

Legyen v a gráf tetszőleges pontja. Ekkor nyilván létezik olyan zárt séta,
amely u-ben kezdődik, u-ben végződik, és a gráf minden élén legfeljebb egy­
szer halad át; ilyen például az a séta, amely egyedül a v pontból áll. Nekünk
ez a séta túlságosan rövid, tekintsük tehát a leghosszabb ilyen - vagyis v-
ből induló, u-be érkező, bármely élen legfeljebb egyszer áthaladó - sétát, és
jelöljük VE-vel.

(a) (b)

7.11. ábra. (a) Keresünk egy élt, amelyet a W érint, de nem halad rajta át.
(b) A W és W ' séták összekapcsolása.

Bebizonyítjuk, hogy W Euler-séta. Indirekt bizonyítunk, tegyük fel tehát,


hogy W nem Euler-féle. Ekkor van a gráfnak legalább egy olyan e éle, amely
nem része W -nek. Belátjuk, hogy ekkor olyan W -n kívüli él is van, amely­
nek valamelyik végpontját W érinti. Ha W az e él - p-vel és g-val jelölt -
végpontjai közül egyiket sem érinti, akkor tekintsünk egy p-ből u-be vezető
utat (ilyen út létezik, mivel a gráf összefüggő); legyen r ennek az útnak az
első olyan pontja, amelyen W is áthalad, 1. a 7.11. ábra (a) részét. Legyen
e! — sr a szóban forgó úton az r pontot közvetlenül megelőző él. A W séta
nem halad át e'-n (mivel nem halad át s-en), találtunk tehát egy olyan élt
(az e'-t), amelynek egyik végpontján W áthalad, magán az élen azonban
nem.
Legyen tehát e olyan él, amelynek egyik - p-vel jelölt - végpontján W
áthalad, magán e-n azonban nem. Kezdjünk egy új W ' sétát p-ből: induljunk
az e él mentén, majd folytassuk kedvünk szerint, mindössze arra ügyelve,
hogy (i) ne használjuk a W út éleit, és hogy (ii) egyetlen élen se haladjunk
át kétszer.
146 7. GRÁFOK

Előbb vagy utóbb biztosan elakadunk - de hol? Jelölje u azt a pontot,


ahol elakadtunk; tegyük fel, hogy u yf p. Figyelembe véve, hogy az u pont
fokszáma páros, hogy W -ben páros számú u végpontú él van, hogy az új
úton u érintéseikor páros számú u végpontú élt használtunk fel (egyet-egyet a
megérkezésekkor, illetve az indulásokkor), valamint hogy utoljára ideérkezve
egy újabb élt használtunk fel, arra jutunk, hogy páratlan számú olyan u
végpontú él van, amelyen sem a W , sem a W séta nem halad át. Ez azonban
azt jelenti, hogy u-ban mégsem akadtunk el, hiszen van még él, amelyen a
sétánk folytatható!
Eszerint tehát a W ' séta egyedül a p pontban akadhat el, W ' tehát zárt.
Tekintsük most a következő sétát. Induljunk el u-ből, kövessük W -t a p pon­
tig, innen tegyük meg a teljes W ' sétát, majd p-be visszaérkezve folytassuk
W -t egészen addig, amíg annak v végpontjába nem érünk (7.11. ábra (b)
része). Új sétánk v-ben kezdődik, ott is végződik, továbbá hosszabb, mint W
- ami ellentmondás, elvégre W feltevésünk szerint a lehetséges leghosszabb
ilyen tulajdonságú séta. □
Euler eredményét gyakran így fogalmazzuk meg: egy összefüggő gráfban
akkor és csak akkor van zárt Euler-séta, ha a gráf minden pontjának fokszáma
páros.

7.3.1. A 7.12. ábrán látható gráfok közül melyikben van Euler-séta? Melyikben
van zárt Euler-séta? Ha létezik, keressünk egyet.

7.12. ábra. Melyik gráfban van Euler-séta?

7.3.2. Mikor létezik egy összefüggő gráfban két olyan séta, amelyekre teljesül,
hogy a gráf minden élén a két séta közül pontosan egy, pontosan egyszer halad át?

A königsbergi hidak problémájához hasonló kérdést vetett fel a nagy ír


matematikus és fizikus, William R. Hamilton 1856-ban. Hamilton-körnek ne­
vezzük azokat köröket, amelyek a gráf minden pontját tartalmazzák. Hamil­
ton problémája mármost a következő: hogyan dönthető el, hogy egy gráfnak
van Hamilton-köre, vagy nincs?
7.3. EULER-SÉTÁK ÉS HAMILTON-KÖRÖK 147

A Hamilton-körök hasonlítanak az Euler-sétákra, a különbség „mindössze”


az, hogy az utóbbiak a gráf minden élén, az előbbiek minden pontján át­
haladnak, méghozzá pontosan egyszer. A Hamilton-körökről azonban sokkal
kevesebbet tudunk, mint az Euler-sétákról. Euer tétele alapján bármely gráf­
ról könnyen megállapíthatjuk, hogy van-e benne Eule-séta, a Hamilton-körök
létezésére vonatkozóan azonban nem rendelkezünk hatékony kritériummal,
mi több, még használható elégséges feltétellel sem. Ha az Olvasó megoldja a
7.3.3. feladatot, bepillanthat a Hamilton-körök problémájának mélységébe.

7.3.3. Állapítsuk meg, hogy van-e a 7.13. ábrán látható gráfokban Hamilton-kör.

7.13. ábra. Két nevezetes gráf: a


Petersen-gráf.

Á ttekintő feladatok
7.3.4. Rajzoljuk fel az összes olyan 5 pontú gráfot, amelynek nincs 2-nél nagyobb
fokszámú pontja.

7.3.5. Létezik-e olyan gráf, amelybe a pontok fokszáma (a) 0 ,2 ,2 ,2 ,4 ,4 , 6 ;


(b) 2,2,3,3,4,4,57

7.3.6. Rajzoljunk gráfot, amely (a) a vízmolekulát alkotó atomok, (b) egy metán­
molekula atomjai, (c) két vízmolekula atomjai közötti kémiai kötéseket ábrázolja.

7.3.7. Egy partin, ahol 7 fiú és 6 lány mulat, minden fiú táncolt már az összes
lánnyal. Rajzoljuk le a táncgráfot. Hány éle van ennek a gráfnak? Adjuk meg a
pontok fokszámát is.

7.3.8. Hány részgráfja van egy 4-körnek?

7.3.9. Bizonyítsuk be, hogy G és G közül legalább az egyik biztosan összefüggő.


148 7. GRÁFOK

7.3.10. Legyen G olyan összefüggő gráf, amelynek legalább két pontja van. Iga­
zoljuk, hogy ekkor van a gráfnak olyan pontja, amelynek - és a hozzá kapcsolódó
összes élnek - az eltávolítása után megmaradó gráf is összefüggő.

7.3.11. Legyen G olyan összefüggő gráf, amely nem út. Igazoljuk, hogy van a gráf­
nak három olyan pontja, hogy ezek közül bármelyiket eltávolítva a gráf összefüggő
marad.

7.3.12. Legyen G olyan gráf, amelyben bármely két élnek van közös végpontja.
Igazoljuk, hogy G vagy csillag, vagy egy három pontú teljes gráf.

7.3.13. Egy szobában (m — 1)n + 1 ember tartózkodik. Igazoljuk, hogy van a


szobában m olyan ember, akik kölcsönösen nem ismerik egymást, vagy van olyan,
aki legalább n másikat ismer.

7.3.14. Bizonyítsuk be a 7.3.1. Tétel (b) részét.

7.3.15. A 7.3.1. Tétel összefüggő gráfokra vonatkozik. Melyik nem összefüggő grá­
fokban van Euler-séta?
8. fejezet

Fák

8.1. A lternatív definíciók


A fák a felsorolási problémák megoldásakor már szóba kerültek, most speciá­
lis gráfokként vesszük őket szemügyre. A G — (V, E ) gráfot fának nevezzük,
amennyiben összefüggő és nincs benne kör. A legegyszerűbb fa az egyetlen
pontból álló él nélküli fa. A második legegyszerűbb fának két, egy él által
összekötött pontja van. A 8.1. ábrán különféle fákat vehetünk szemügyre.

8.1. ábra. Öt fa.

Vegyük észre, hogy a fákat definiáló két tulajdonság bizonyos értelemben


ellentétes egymással: az összefüggőség azt jelenti, hogy a gráfnak nem lehet
túl kevés éle, a körök kizárása pedig azt, hogy túl sok él sem lehet benne.
Pontosabban: ha egy gráf összefüggő, akkor egy új él berajzolása után is
összefüggő marad (egy él elhagyása után az is lehet, hogy összefüggő ma­
rad, de előfordulhat, hogy nem). Ha pedig egy gráfban nincs kör, akkor ez
arra a gráfra is igaz lesz, amelyet valamelyik él elhagyása után kapunk. A
következő tétel szerint a fákat „minimális összefüggő” vagy „maximális kör
nélküli” gráfokként is definiálhatnánk.
150 8. FÁK

8 .1 .1 . T é t e l , (a) E g y g r á f p o n to sa n a k k o r fa. h a ö sszefüggő, d e h a bár­


m e ly ik é lé t e lh a g y ju k , m á r n e m az.
(b) E g y g r á f p o n to sa n a k k o r fa, ha n in cs b en n e kör, d e bárhova r a jz o lu n k
bele e g y új élt, k ö r k e le tk e z ik benne.

B i z o n y í t á s : A tétel (a) részét bizonyítjuk, a (b) rész igazolását az Olvasóra


hagyjuk.
Először belátjuk, hogy ha G fa, akkor teljesül rá a tételbeli feltétel. A de­
finíció alapján G biztosan összefüggő, azt kell tehát megmutatnunk, hogy a
gráf bármely élét elhagyva a kapott gráf nem összefüggő. A bizonyítás indi-
rekt: tegyük fel, hogy G-nek van olyan uv éle, amelyet elhagyva a megmaradt
G' gráf még mindig összefüggő. Eszerint G'-ben van u-t és v-t összekötő P
út, ez viszont azt jelenti, hogy az uv élt visszahelyezve a P út és az uv él a
G gráfban kört alkot, G tehát nem lehet fa.
Másodszor megmutatjuk, hogy minden olyan G gráf, amely eleget tesz a
tétel feltételének, fa. Tudjuk, hogy G összefüggő, azt kell tehát csak belátni,
hogy nincs benne kör. Újra indirekt érvelünk: ha G-ben lenne egy G kör,
akkor G bármely élét elhagyva a gráf összefüggő maradna (7.2.5. feladat).
Ez azonban ellentmond a feltételnek. □
Ha egy G összefüggő gráf egy e élét elhagyjuk, akkor az így kapott gráf
vagy összefüggő, vagy nem. Ha nem, akkor az e élt elvágó élnek nevezzük.
A 8.1.1. Tétel (a) része szerint egy fa minden éle elvágó.
Ha G-ben találunk egy nem elvágó élt, hagyjuk el. Folytassuk az eljárást
addig, amíg a kapott gráf még összefüggő ugyan, de bármelyik élét elhagyva
már nem az. A 8.1.1. Tétel (a) része szerint az utolsó gráf egy fa, amelynek
ugyanazok a pontjai, mint G-nek. A G gráf minden olyan részgráfját, amely
fa, pontjainak halmaza pedig megegyezik G pontjaival, a G gráf feszítő fájá­
nak nevezzük. A fenti eljárást több módon is elvégezhetjük, egy összefüggő
gráfnak ennélfogva több feszítő fája is lehet.

Gyökérpont. A tárgyalt fákban gyakran kitüntetünk egy pontot, amelyet a


fa gyökérpontjának nevezünk. A részhalmazok vagy permutációk összeszám-
lálására használt döntési fákat például egy adott pontból kiindulva rajzoltuk
le. Egy fában ilyen módon tetszőleges pontot kitüntethetünk, a gyökérpont
szerepét tehát akármelyik pont játszhatja.
Legyen a G fa gyökérpontja r. A 8.1.3. feladatból tudjuk, hogy r-ből a
gráf tetszőleges r-től különböző v pontjába pontosan egy út vezet. Ezen az
úton a t:-hez legközelebbi pontot v apjának, a többi u-vel szomszédos pontot
pedig v fiainak nevezzük. Az r gyökérpontnak nincs apja, neki valamennyi
szomszédja a fia.
Alapvető genealógiai megfigyelés a következő: minden pont apja a fiainak.
Legyen ugyanis v tetszőleges pont, u pedig v valamelyik fia. Legyen P a u-t
és r-t összekötő út. Az u pont nem eshet a P útra: nem lehet a v utáni első
pont, mert ekkor v apja lenne, de nem lehet későbbi pont sem, mivel ekkor
8.2. HOGYAN NÖVESSZÜNK FÁT? 151

u-ből P mentén u-ba, majd az uv élen vissza egy kört tennénk meg. Ebből
viszont az következik, hogy a P úthoz az u pontot és az uv élt hozzáadva
egy u-t és r-t összekötő utat kapunk. Ezen az úton v az első u utáni pont,
v tehát valóban u apja. (Érvényes vajon ez a gondolatmenet a v = r esetre
is? Ellenőrizzük!)
Beláttuk tehát, hogy minden, a gyökértől különböző pontnak pontosan
egy apja van. Egy pontnak akárhány fia lehet, lehetséges akár olyan pont is,
amelynek egyetlen fia sincs. A „fiatlan” pontokat a fa leveleinek nevezzük;
más szóval: a levelek olyan, az r gyökérponttól különböző pontok, amelyek­
nek a fokszáma 1.

8.1.1. Bizonyítsuk be a 8.1.1. Tétel (b) részét.

8.1.2. Igazoljuk, hogy egy G gráf u és v pontjait egy új éllel összekötve pontosan
akkor kapunk egy új kört, ha u és v ugyanabba az összefüggő komponensbe esnek.

8.1.3. Igazoljuk, hogy egy fa bármely két pontja között pontosan egy út vezet.
Megfordítva: bizonyítsuk be, hogy ha egy G gráf bármely két pontja között pon­
tosan egy út vezet, akkor a gráf fa.

8.2. Hogyan növesszünk fát?


A következő tétel a fák egyik legfontosabb tulajdonságát mondja ki.

8 .2 .1 . T é t e l . Minden legalább kétpontú fában van legalább két 1 fok­


számú pont.

B i z o n y í t á s : Legyen tehát G olyan fa, amelynek legalább két pontja van.


Belátjuk, hogy G-nek van legalább egy 1 fokszámú pontja, annak igazolását
pedig, hogy legalább még egy van, az Olvasóra hagyjuk. (Egy útnak pontosan
két ilyen pontja van, a tétel tehát nem élesíthető.)
Induljunk ki a fa egy tetszőleges vq pontjából, és tegyünk egy sétát a fá­
ban. Egyik pontból se menjünk vissza azon az élen, amelyiken odaérkeztünk,
ezt mindaddig megtehetjük, amíg nem érünk el egy 1 fokszámú pontba. Ha
ilyen pontba érkezünk, megállhatunk - a tételt beláttuk.
Mutassuk meg tehát, hogy ez előbb vagy utóbb bekövetkezik. Ha nem,
akkor idővel vissza kell térnünk egy olyan pontba, amelyet sétánk már érin­
tett, ekkor azonban a sétának a két látogatás közötti szakasza egy kör lesz,
ami pedig - lévén G egy fa - lehetetlen. □

8.2.1. A gondolatmenet megismétlésével igazoljuk, hogy G-nek van legalább még


egy 1 fokszámú pontja.
152 8. FÁK

Az igazi fákon újabb és újabb ágak nőnek. Most megmutatjuk, hogy ilyen
módon gráf-fákat is „növeszthetünk”. Pontosabban a következő eljárásról van
szó:

- Kezdjük egyetlen ponttal.


- Ismételjük meg a következőt: ha egy G gráfot kaptunk, vegyünk fel egy új
pontot, és kössük össze G valamelyik pontjával.

8 .2 .2 . T é t e l . A fenti eljárással „növesztett ” gráfok mindegyike fa, és min­


den fa megkapható ilyen módon.

B i z o n y í t á s : A bizonyítás nem túl bonyolult, mégis részletesen megadjuk,


hogy fokozzuk jártasságunkat a gráfokról való érvelésekben.
Vizsgáljunk tehát egy gráfot, amelyet a fenti eljárás alapján kaptunk meg.
Mivel a kiinduló gráf fa, elég belátni, hogy az eljárás során sohasem kapunk
olyan gráfot, amelyik nem fa, vagyis ha G fa, G' pedig az a gráf, amelyet
úgy kapunk, hogy egy új v pontot összekötünk G egy u pontjával, akkor
G' is fa. Ez viszont nyilvánvaló: G' összefüggő, mivel bármelyik két „régi”
pontja között halad út, a v pont pedig akármelyik w ponttal összeköthető a
vu él és az u-ból a re-be vezető út összekapcsolásával. Ezen felül G'-ben nem
lehet kör: a v pont fokszáma 1, így rajta nem haladhat át kör, egy olyan
kör viszont, amelyik nem érinti v-t, csak a G gráfban haladhat, arról viszont
feltettük, hogy fa.
Másodszor: mutassuk meg, hogy az eljárással minden fa megkonstruál­
ható. A fa pontszáma szerinti indukcióval bizonyítunk.1 Ha a fának egyetlen
pontja van, akkor a fa valóban a leírt eljárással - annak első lépésében -
keletkezett. Tegyük fel, hogy a G gráfnak legalább két pontja van. Ekkor a
8.2.1. Tétel szerint G-nek van 1 fokszámú pontja (valójában kettő is van),
legyen a v pont ilyen. Hagyjuk el G-ből a v pontot azzal az éllel együtt,
amelynek ő az egyik végpontja; az így kapott gráfot jelölje G '.
Belátjuk, hogy G' fa. Valóban: G' összefüggő, mivel bármelyik két pontja
összeköthető egy G-beli úttal, amely - mivel az 1 fokszámú v pont nem
illeszkedik rá - teljes egészében G'-ben halad. A G' gráfban ezen felül nem
lehet kör, mert egy ilyen kör G-ben is kör lenne.
Az indukciós feltevés szerint minden G-nél kevesebb pontot számláló gráf
megkapható a „fanövesztő” eljárással, így speciálisan G' is. A G gráfot azon­
ban éppen az eljárás második lépése szerint kaphatjuk meg G'-ből. Ezzel a
8.2.2. Tétel bizonyítását befejeztük. □
A 8.2. ábrán négypontú fák növesztését tanulmányozhatjuk. Vegyük észre,
hogy itt valójában egy „fákból álló fáról” van szó. Annak, hogy a „fanövesztő”

xB á r külön nem hangsúlyoztuk, a bizonyítás első része is indukció volt.


8.2. HOGYAN NÖVESSZÜNK FÁT? 153

eljárás logikai konstrukciója szerint egy fa, semmi köze ahhoz, hogy az el­
járás végeredményeként is fákat kapunk. Bármely iteratív eljárás, amelynek
minden lépésében szabadon dönthetünk, egyfajta „fát” eredményez.

8.2. ábra. Fákból álló fa.

A „fanövesztő” eljárásra hivatkozva a fák számos tulajdonságát beláthat­


juk. Ezek közül talán a legfontosabb az élek számára vonatkozik. Hány éle
van egy fának? Ez nyilván a pontok számától függ - a megdöbbentő az, hogy
csak a pontok számától:

8 .2 .3 . T é t e l . Minden n pontú fának n — 1 éle van.

B iz o n y ít á s : V a ló b a n , k e z d e tb e n a p o n to k s z á m a (1 ) é p p e n e g g y e l n a g y o b b ,
m i n t a z é le k é (0 ), a z ú j a b b é le k b e r a j z o l á s a k o r p e d i g m in d a p o n t o k , m in d
a z é le k s z á m a e g g y e l n ő , a k ü lö n b s é g t e h á t n e m v á l t o z i k . □

8.2.2. Tekintsük a G fát egy középkori úthálózatnak, amelynek pontjai várakat


jelölnek. A király a v pontban lakik. Egy napon minden várúr felkerekedik, hogy
meglátogassa a királyt. Mutassuk meg, hogy hamarosan lesz olyan pillanat, amikor
minden élen pontosan egy várúr tartózkodik. Adjuk meg ennek alapján a 8.2.3.
Tétel egy új bizonyítását.

8.2.3. Ha egy fának töröljük egy v pontját (azokkal az élekkel együtt, amelyekre
illeszkedik), akkor olyan gráfot kapunk, amelynek minden összefüggő komponense
fa. Ezeket a komponenseket az eredeti fa v pontbeli ágainak nevezzük. Bizonyítsuk
be, hogy bármely fában van olyan pont, hogy az onnan induló ágak közül egyiknek
sincs több pontja, mint a fa pontjai számának fele.
154 8. FÁK

8.3. Hogyan számoljuk össze a fákat?


A könyv első részében annyiféle dolgot megszámoltunk már, hogy ezen a
ponton senki nem lepődik meg, ha feltesszük a kérdést: hány n pontú fa
létezik?
Mielőtt megpróbálnánk válaszolni, tisztázni kell egy fontos kérdést: mikor
tekintünk két fát különbözőnek? Többféle válasz is lehetséges, amelyek mel­
lett egyaránt találhatunk érveket. Vegyük szemügyre például a 8.3. ábrát.
Azonosnak tekinthetjük-e a két, itt látható fát? Jó okunk lehet azt állítani,
hogy igen, ha azonban a pontok - mondjuk - városokat, az élek pedig a vá­
rosok között tervezett utakat jelölnek, akkor a városok lakói nyilvánvalóan
különbözőnek tekintenék a két tervet.

8.3. ábra. Különbözik-e a két fa?

Amikor tehát definiáljuk, hogy mikor tekintünk két fát különbözőnek,


körültekintően kell eljárnunk. Két lehetőséget különböztethetünk meg:
- Rögzítjük a pontok halmazát, és két gráfot akkor tekintünk azonosnak,
ha bennük ugyanazok a pontok vannak éllel összekötve. (A városlakók
ebből a szempontból tekintik különbözőnek az iménti két tervet.) Ebben
az esetben célszerű, ha a pontoknak nevet adunk, így különböztetve meg
őket egymástól. Ha egy fának n pontja van, akkor a pontokra általában
a 0, 1, . . . , n — 1 számokkal hivatkozunk. Ilyenkor azt mondjuk, hogy a
gráf pontjait a 0 , 1 , . . . , n — 1 számokkal címkéztük meg. A 8.4. ábrán
egy címkézett - vagy számozott - fát tanulmányozhatunk. Ha a 2 és a
4 címkéjű pontokat (vagy bármelyik másik pontpárt) felcseréljük, új fát
kapunk.
- Nem adunk neveket a pontoknak, és két fát azonosnak tekintünk, ha az
egyik pontjainak átrendezésével megkaphatjuk a másikat. Pontosabban a
következőről van szó: azt mondjuk, hogy két fa azonos (a matematiku­
sok kedvenc szóhasználatával: izomorf), ha megadható olyan kölcsönösen
egyértelmű (bijektív) megfeleltetés a két fa pontjai között, hogy az egyik
fa bármelyik két pontja pontosan akkor van éllel összekötve, ha a má­
sik fában a hozzájuk rendelt pontok is össze vannak kötve, és vice versa.
Amikor az izomorf fákat nem különböztetjük meg egymástól, akkor cím­
kézetten (vagy számozatlan) fákról beszélünk. Például bármelyik két n
8.4. HOGYAN TÁROLHATUNK FÁKAT? 155

hosszúságú út - mint címkézetten fa - izomorf egymással.


Eredeti kérdésünk tehát valójában két kérdés: (i) hány n pontú címkézett
fa létezik? és (ii) hány n pontú címkézetten fa létezik? Ezek meglehetősen
különböző kérdések; ennek megfelelően külön-külön vizsgáljuk meg őket.

8.3.1. Keressük meg az összes 2, 3, 4 és 5 pontú címkézetten fát. Hány címkézett


fát készíthetünk ezekből? Határozzuk meg ennek alapján a 2, 3, 4 és 5 pontú
címkézett fák számát.

8.3.2. Hány n pontú címkézett csillag létezik? És n pontú út?

A c ím k é z e tt fák sz á m a . A címkézett fák számára vonatkozó kérdésre ad


választ a következő,

8 .3 .1 . T é t e l . (C a y le y t é t e le ) A z n p o n tú c ím k é z e tt fá k szá m a n n ~ 2.

A képlet, nagyon elegáns, bizonyítása azonban meglehetősen bonyolult!


Sokkal nehezebb belátni, mint a korábbi leszámlálási képleteinket. Cayley
tételének számos bizonyítása ismert, de ezek mindegyikben szerepel egy mé­
lyebb ötlet, vagy egy bonyolultabb módszer. Mi azt a bizonyítást választjuk,
amelyet talán a legkönnyebb megérteni. Ennek előkészítéséhez egy számítás-
tudományi kérdést vizsgálunk meg: hogyan tárolhatók fák?

8.4. Hogyan tárolhatunk fákat?


Tegyük fel, hogy egy címkézett fát - mondjuk a 8.4. ábrán láthatót - kell a
számítógépünkben tárolnunk. Hogyan járjunk el? Az ideális módszer termé­
szetesen attól függ, hogy milyen célból tároljuk a fát, mely információkra -
és milyen gyakran - van szükségünk, és így tovább. Bennünket egyelőre csu­
pán az érdekel, hogy a fa tárolásához mekkora tárhelyre, vagyis memóriára

8.4. ábra. Címkézett fa.


156 8. FÁK

van szükség. A célunk az, hogy fánkat a lehető legkisebb memóriát igénybe
véve tároljuk.
Lássunk néhány egyszerű megoldást.

(a) Tegyük fel, hogy a tárolni kívánt G gráfnak n pontja van. Természetes
módon felmerül egy nagy táblázat elkészítésének ötlete: legyen a táblázat­
nak n sora és n oszlopa, és írjunk - mondjuk - egy 1-est az i-edik sor j-edik
rubrikájába, ha az i és a j pontok össze vannak kötve, illetve 0-t, ha nincse­
nek. Célszerű, ha a 0-val jelölt pontot utoljára vesszük figyelembe, ez a pont
esetünkben a 10-edik sornak és a 10-edik oszlopnak felel meg.

0 0 0 0 0 1 0 0 0 0
0 0 0 1 0 1 0 0 0 1
0 0 0 0 0 0 0 0 0 1
0 1 0 0 0 0 0 0 0 0
0 0 0 0 0 1 0 0 0 0
(8 .1 )
1 1 0 0 1 0 0 0 0 0
0 0 0 0 0 0 0 0 1 0
0 0 0 0 0 0 0 0 1 0
0 0 0 0 0 0 1 1 0 0
0 1 1 0 0 0 0 0 0 0
Ez a módszer természetesen nem csak fákra, hanem bármilyen más gráfra
is alkalmazható. (A kapott táblázatot a gráf szomszédsági mátrixának neve­
zik.) A módszer sok esetben célravezető, fák esetében azonban meglehetősen
pazarló. A táblázat minden elemét egy bit tárolja, így n2 bitre van szüksé­
günk. A helyzeten javíthatunk, ha észrevesszük, hogy elég a táblázat átlója
fölötti adatokat tárolni, mivel a táblázat szimmetrikus az átlóra. Ez azonban
még mindig (n2 —n )/2 bit tárigényt jelent.

(b) Jobban járunk, ha a fa éleit soroljuk fel. Ehhez csak annyit kell figye­
lembe vennünk, hogy minden élt egyértelműen meghatároznak a végpontjai.
Célszerű, ha olyan listát készítünk, amelynek oszlopai a fa éleinek felelnek
meg. A 8.4. ábrán szereplő fa például a
7 8 9 6 3 0 2 6 6
9 9 2 2 0 2 4 1 5
táblázattal reprezentálható. Táblázatunknak már nem n, hanem csak két
sora van. Ennek persze megvan az ára: a táblázatban nem csupán 0-k és
1-esek, hanem 0 és n —1 közötti egész számok szerepelnek. Ez persze megéri:
egy pont reprezentálásához log2 n, a teljes táblázathoz pedig 2n log2 n bitre
van szükség, ez a szám pedig - legalábbis nagy rc-ek esetén - sokkal kisebb,
mint (n2 —n)/2.
Ugyanaz a fa ezzel a módszerrel többféle módon is reprezentálható. El­
dönthetjük, milyen sorrendben íruk le az éleket, és minden él esetében vá­
laszthatunk, hogy melyik végpontot szerepeltetjük az első, és melyiket a
8.4. HOGYAN TÁROLHATUNK FÁKAT? 157

második sorban. Megegyezhetünk persze - például - abban, hogy az élek


végpontjai közül a kisebb címkéjű szerepeljen az első sorban, az éleket pedig
a kisebbik végpontjuk szerint rendezzük (ha ez megegyezik, akkor a másik
végpont címkéje dönt), de jobban járunk, ha egyúttal a tárhely csökkentését
is szem előtt tartjuk.

(c) Az apakód. A 0 címkéjű pont a továbbiakban kitüntetett jelentőség­


gel bír: ezt tekintjük majd a fa gyökerének. Egy élt ezek után úgy adhatunk
meg, hogy előbb a gyökértől távolabbi, azután a gyökérhez közelebbi végpont­
ját írjuk le. Az éleket pedig rendezzük az első végpontjuk szerint (növekvő
sorrendbe). A 8.4. ábra fájának így az

1 2 3 4 5 6 7 8 9
6 0 0 2 6 2 9 9 2

táblázatot feleltethetjük meg. A táblázat első sorát az 1, 2, 3, 4, 5, 6, 7,8, 9


számok alkotják, méghozzá ebben a sorrendben. Vajon ez csupán a véletlen
műve? A sorrend természetesen nem, elvégre megállapodtunk abban, hogy
az éleket első végpontjaik szerint rendezzük. A 0 címkéjű pont nem szerepel,
mivel az egyetlen másik pontnak sem fia. De miért szerepel a többi szám
mindegyike pontosan egyszer? Kis gondolkodás után rájövünk: ha egy pont
megjelenik az első sorban, akkor az apja alatta jelenik meg. Ám egy pontnak
csak egy apja van, így minden pont legfeljebb egyszer szerepelhet. Ebből
következik, hogy a gyökéren kívül minden pont megjelenik az első sorban,
hiszen az oszlopok száma eggyel kevesebb, mint a pontok száma.
Ha egy fának n pontja van, akkor a fa imént leírt „kétsoros táblázatában”
az első sor biztosan az 1, 2, 3, . . . , n — 1 számokból áll, így nyugodtan el is
hagyhatjuk, hiszen a fát a második sor is meghatározza. A fa tehát repre­
zentálható n — 1 különböző számmal, amelyek mindegyike 0 és n — 1 közé
esik. Ehhez (n —1) [~log2 n] bit tárhelyre van szükség.
Ez a kódolás nem optimális, abban az értelemben, hogy van olyan „kód”,
amelynek egyetlen fa sem feleltethető meg (8.4.1. feladat). Hamarosan kide­
rül azonban, hogy az „optimum” már nincs olyan messze.

8.4.1. Tekintsük a következő „kódokat”: (0,1, 2,3, 4, 5, 6, 7); (7, 6, 5,4, 3, 2,1,0);
(0, 0,0, 0, 0, 0,0, 0); (2, 3,1, 2, 3,1, 2, 3). Közülük melyik egy fa apakódja?

8.4.2. Igazoljuk az apakód alapján, hogy a címkézett fák száma legfeljebb nn~1.

(d) Most megismerkedünk egy módszerrel - Prüfer-kódnak nevezik -,


amelynek segítségével egy n pontú címkézett fát egy n — 2 tagú sorozat­
tal (amelynek tagjai 0 és n — 1 közötti számok) adhatunk meg. A megta­
karítás szerénynek tűnik, egy komoly előnye azonban lesz: be fogjuk látni,
hogy minden ilyen sorozathoz egyértelműen hozzárendelhetünk egy fát. Ez­
zel kölcsönösen egyértelmű (bijektív) megfeleltetést létesítünk az n pontú
címkézett fák és az olyan n —2 tagú sorozatok között, amelyeknek minden
158 8. FÁK

tagja a 0 ,n — 1 számok egyike. Mivel az ilyen sorozatok száma éppen


nn_2, a megfeleltetés bijektivitásának igazolásával egyúttal a Cayley-tételt
is belátjuk.
A Priifer-kódot a (c) pontban leírt apakód „kifinomultabb” változatának
is tekinthetjük. A 0 továbbra is a fa gyökerét jelöli, az élek végpontjait is
úgy rendezzük, hogy a „fiú” jön előbb, az éleket (vagyis a táblázat oszlopait)
azonban másképpen, a fával szorosabb kapcsolatba hozva rendezzük.
Újra táblázatot készítünk tehát, amelynek oszlopai az éleknek felelnek
meg, és minden él esetében a 0-tól távolabbi pont szerepel a felső, az apja
pedig az alsó sorban. A kérdés csak az, hogy hogyan rendezzük sorba az
éleket.
íme az új szabály: megkeressük a 0-tól különböző 1 fokszámú pontok kö­
zül a legkisebb címkéjűt, és a táblázatban rögzítjük azt az élt, amelynek ez
a pont az egyik végpontja. Esetünkben tehát a táblázat első oszlopa * lesz.
Ezután töröljük a szóban forgó pontot a rá illeszkedő éllel együtt, és az el­
járást megismételjük a megmaradt fával: megkeressük a legkisebb címkéjű 1
fokszámú pontot, és rögzítjük a táblázatban azt az élt, amelyre illeszkedik;
az általunk vizsgált példában a második oszlop eszerint (J. Most elhagyjuk
a másodjára kijelölt pontot is, és a megmaradt fát vesszük szemügyre stb.
Az eljárást addig folytatjuk, amíg minden él sorra nem kerül. Az így kapott
táblázatot a fa bővített Prüfer-kódjának nevezzük. (Azért nevezzük „bővített­
nek”, mert - mint látni fogjuk - a „valódi” Prüfer-kód ennek a táblázatnak
csak egy részéből áll.) A 8.4. ábrán látható fa bővített Prüfer-kódja
1 3 4 5 6 7 8 9 2
6 0 2 6 2 9 9 2 0
Miért jobb ez, mint az apakód? Nem kell sokáig vizsgálódnunk, hogy ész­
revegyük: a második sor utolsó tagja mindig 0, ez ugyanis az utolsónak fi­
gyelembe vett él egyik végpontja, és mivel a 0-t sohasem töröltük, az az
utolsónak figyelembe vett élre illeszkedik. Ezért azonban, úgy tűnik, nagy
árat fizettünk: korántsem nyilvánvaló ugyanis, hogy az első sor elhagyható
(mint az apakód esetében). A táblázat első sora továbbra is az 1, 2, . . . , n —1
számokból áll, de nem növekvő sorrendben.
Alapvető tény azonban, hogy az első sort meghatározza a második.

8 .4 .1 L e m m a . A bővített Prüfer-kód második sora egyértelműen megha­


tározza az elsőt.
Illusztráljuk a lemma bizonyítását egy példán. Tegyük fel, hogy valaki azt
állítja: egy nyolcpontú címkézett fa bővített Prüfer-kódjának második sora
2 4 0 3 310 (komoly probléma nincs: 1-gyel kevesebb él van, mint csúcs; a sor
utolsó tagja pedig valóban 0). Próbáljuk kitalálni, mi lehet a táblázat első
sora.
Mi az első sor első tagja? Emlékezzünk arra, hogy az első lépésben éppen
ezt a pontot hagytuk el: ez a legkisebb 1 fokszámú, 0-tól különböző pont.
8.4. HOGYAN TÁROLHATUNK FÁKAT? 159

8.5. ábra. A Prüfer-kód alapján rekonstruált fa.

Lehet-e ez az 1 címkéjű pont? Nem, ekkor ugyanis az első lépésben töröl­


nünk kellett volna, így a későbbiekben nem jelenhet meg - pedig megjelenik.
Ugyanezen oknál fogva a második sor egyetlen eleme sem lehet a kezdetben
a fa levele. Ezzel kizártuk a 2-t, a 3-at és a 4-et is.
És az 5? Az 5 nem szerepel a második sorban. Vajon azt jelenti-e ez, hogy
az eredeti fában az 5-ös címkéjű pont egy levél? A válasz igen: máskülönben
lenne olyan pont, amelynek ő az apja, és amelynek törlésekor bekerült volna
a második sorba. Az 5-ös címkéjű pont tehát az eredeti fa legkisebb címkéjű
levele, a bővített Prüfer-kód első sora tehát vele kezdődik.
Próbáljuk meg ezután kitalálni, mi lehetett az első sor második tagja,
vagyis az 5 elhagyása után megmaradt fa legkisebb címkéjű levele. Az 1-es
címkéjű pontot még mindig kizárhatjuk, mivel a második sorban csak később
kerül sorra. Mivel azonban a 2 a második sorban már nem szerepel, az előző
érvelést megismételve arra a következtetésre jutunk, hogy az 5 „letépése”
után maradt legkisebb címkéjű levél a 2 jelű pont.
A harmadik a 4-es, mivel valamennyi nála kisebb szám vagy később kerül
sorra, vagy már felhasználtuk. Az eljárást folytatva az

5 2 4 6 7 3 1
2 4 0 3 3 1 0

bővített Prüfer-kódot kapjuk; a neki megfelelő fát a 8.5. ábrán tanulmányoz­


hatjuk.

B i z o n y í t á s : A fenti megfontolások teljesen általánosak, a lemma bizonyí­


tásának alapgondolata pedig a következőkben foglalható össze:

a bővített Prüfer-kód első sorának minden eleme a legkisebb pozitív egész


szám, amely nem szerepel sem előtte az első sorban, sem pedig alatta,
illetve utána a második sorban.
160 8. FÁK

Valóban, amire a szóban forgó - mondjuk A-adik - elem bekerült a táb­


lázatba, addigra az első sorban előtte szereplő pontokat már mind töröltük
(az első k — 1 oszlopnak megfelelő élekkel együtt). A második sor megma­
radt elemei viszont ezen a ponton még apák. így szintén nem jöhetnek szóba
legkisebb címkéjű levélként. Az első sor ennek alapján valóban egyértelműen
rekonstruálható a másodikból. □

Nincs tehát szükségünk a bővített Prüfer-kódra: elegendő, ha a második


sort tároljuk. Valójában még ennek a sornak is elhagyhatjuk az utolsó tagját,
erről ugyanis tudjuk, hogy 0. Egy bővített Prüfer-kód második sorának első
n — 2 tagját nevezzük a fa Prüfer-kódjának.
A Prüfer-kód hasonlít az apakódra, csupán rövidebb - de ezzel még nem
nyertünk sokat. A Prüfer-kód szépsége nem is ebben rejlik, hanem abban
hogy optimális: abban az értelemben, hogy

minden olyan n —2 tagú sorozat, amelynek tagjai 0 és n — 1 közötti


számok, egy n pontú fa Priifer-kódja.

Az állítást két lépésben bizonyíthatjuk be. Először a sorozat alapján két­


soros táblázatot készítünk. Előbb a sort kiegészítjük 0-val, majd minden tag
fölé a legkisebb olyan pozitív egész számot írjuk, amely sem az első sorban a
szóban forgó tag előtt, sem a második sorban alatta, illetve utána nem sze­
repel (jegyezzük meg, hogy ilyen egész szám mindig létezik: a feltétel n-ből
legfeljebb n — 1 értéket zárhat ki).
Az így kapott táblázat egy fa kiterjesztett Prüfer-kódja. Ennek a ténynek
a bizonyítása semmiféle problémát nem okoz, így nyugodtan az Olvasóra
hagyhatjuk.

8.4.3. Fejezzük be a bizonyítást.

Foglaljuk össze, mi mindent nyújt számunkra a Prüfer-kód. Először is, a


Cayley-tétel bizonyítását. Másodszor, a fák tárolásának elméletileg leghaté­
konyabb módszerét. Minden Prüfer-kódot tekinthetünk egy n alapú szám-
rendszerben felírt számnak, ezzel minden n pontú címkézett fának megfelel­
tethetünk egy 0 és nn~2—l közötti „rendszámot”. Ezt a számot a kettes szám-
rendszerben felírva egy legfeljebb |"(n — 2) log2 n] hosszúságú 01-sorozatot
kapunk.
A Prüfer-kód harmadszor a véletlen fa-generáláshoz is segítséget nyújt.
Tegyük fel, hogy n pontú fákat kell generálnunk olyan módon, hogy minden
fa ugyanakkora valószínűséggel jelenhessen meg a kimeneten. Ez nem könnyű
feladat, a Prüfer-kód azonban hatékony megoldást ad a kezünkbe. Elegendő,
ha generálunk n —2 darab véletlen számot 0 és n —1 között (erre a legtöbb
programnyelvben külön parancs is létezik), majd „dekódoljuk” a sorozatnak
megfelelő fát.
8.5. A CÍMKÉZETLEN FÁK SZÁMA 161

8.5. A címkézetlen fák száma


Az n pontú címkézetlen fák (T„-nel jelölt) számának meghatározása még
nehezebb feladat. Tn-re nem ismerünk olyan egyszerű képletet, amilyen a
Cayley-tételben szerepel. A célunk most az, hogy legalább közelítőleg meg­
adjuk, mekkora ez a szám.
1, 2 vagy 3 ponton egyaránt egy fa létezik; 4 ponton már kettő: az út és a
csillag; 5 ponton három: a csillag, az út és a 8.3. ábrán látható gráf. Ezek a
számok sokkal kisebbek, mint az ugyanennyi pontú címkézetlen fák száma:
1, 1, 3, 16 és 125 (Cayley tétele szerint).
Persze mi sem nyilvánvalóbb, mint hogy a címkézetlen fák száma kisebb,
mint a címkézetteké, elvégre egy címkézetlen fát sokféle módon címkézhetünk
meg. Ha rajzolunk egy címkézetlen fát, akkor n\ lehetőségünk van arra, hogy
a pontjait - mondjuk a 0, . . . , n — 1 számokkal - megcímkézzük. Az így
kapott címkézett fák mindazonáltal nem feltétlenül különbözőek. Ha például
fánk egy csillag, akkor leveleit bárhogyan permutáljuk, mindig ugyanazt a
címkézett fát kapjuk; egy címkézetlen n pontú csillagból tehát mindössze n
különböző címkézett csillagot kaphatunk.
Az mindenesetre biztos, hogy egy n pontú címkézetlen fa pontjai legfeljebb
n!-féleképpen címkézhetők meg. Mivel az n pontú címkézett fák száma n ”-2 ,
a címkézetleneké legalább nn~2/n\. A Stirling-formula alapán (2.2.1. Tétel)
az utóbbi szám hozzávetőlegesen e " /n 5/ 2v/27T.
Ez a szám jóval kisebb, mint a címkézett fák szánra (nn~2), de ne feledjük:
a címkézetlen fák számára csupán egy alsó korlátot ad. Hogyan kaphatnánk
erre a számra egy felső korlátot? A tárolás problémájára visszatérve, a kérdés
a következő: lehetséges-e gazdaságosabb módon tárolni egy címkézetlen fát
annál, hogy a pontjait megcímkézzük, és a fát címkézett faként tároljuk el?
Informálisan így is fogalmazhatnánk: hogyan adjunk meg egy fát, ha csupán
az „alakjára” vagyunk tekintettel, és nem érdekel bennünket, hogy melyik
csúcsát milyen címkével láttuk el?
Tekintsünk tehát egy n-pontú G fát, nevezzük ki G egyik pontját gyökér­
pontnak. Rajzoljuk le G-t úgy, hogy élei ne metsszék egymást. Ez mindig
megtehető, általában így is szoktuk a fákat lerajzolni.
Képzeljük most a fa éleit a papírra merőleges falaknak. A gyökértől in­
dulva járjuk körbe a gráfot úgy, hogy a „fal” mindvégig jobb kéz felől essen.
Nevezzük lépésnek a körút egy élre eső szakaszát. Mivel a fának n — 1 éle
van, 2(n—1) lépés után érünk vissza a gyökérponthoz. (Egy ilyen körüljárást
mutat a 8.6. ábra.)
Minden olyan lépés alkalmával, amelynek során távolodunk a gyökértől
(vagyis egy apától a fia felé haladunk), írjunk le egy 1-est, amikor pedig a
gyökér felé teszünk egy lépést. írjunk le egy 0-t. így eljárva egy 2(n — 1)
hosszúságú 01-sorozatot kapunk, amelyet a szóban forgó (címkézetlen) fa
planáris kódjának nevezünk. A 8.6. ábra fájának planáris kódja:

1111100100011011010000 .
162 8. FÁK

8.6. ábra. Egy fa körbejárása.

A planáris kód rendelkezik a következő fontos tulajdonsággal (ami igazolja


a sokat mondó „kód” elnevezést):

a planáris kódja bármelyik címkézetten fát egyértelműen meghatározza.

A bizonyítás alapgondolata a következő. Képzeljük el, hogy fánkat hó


lepte be, mi pedig csupán a kódját ismerjük. Megkérjük egy barátunkat,
hogy verje le a fáról a havat, miközben mi magunk a kódot követjük. Mit
tapasztalunk? Amikor egy 1-est látunk, a barát egy lépéssel távolabb kerül
a gyökérponttól, és lesöpri az élt, amelyen haladt. Ilyenkor mindig egy új
„ág” jelenik meg. Amikor viszont a kódban 0-t látunk, barátunk - egy már
megtisztított ág mentén - a gyökér irányába tesz egy lépést.
Ezzel a farajzolás remek módszerét adtuk meg: csak sorra kell venni a
planáris kód elemeit, miközben ceruzánkat fel sem emeljük a papírról. Ami­
kor 1-es látunk, egy új ponthoz húzunk egy (új) élt, amikor pedig 0-t, akkor
vonalunk visszafelé halad, a gyökér irányába. A planáris kód tehát valóban
meghatározza a fát.
Mivel egy n pontból álló fa lehetséges planáris kódjainak száma 22(n_1) =
= 4n_1, az n pontú címkézetlen fák száma nem lehet ennél nagyobb. Ered­
ményeinket egy tételben foglaljuk össze:

8 .5 .1 . T é t e l . A z n p o n tú c ím k é ze tle n fá k T n szá m a k ie lé g íti a z

~n—2
< Tn < 4n —1
n\
eg yen lő tlen ség et.

Az alsó korlát pontos alakjának nincs különösebb jelentősége, ha egysze­


rűbb képletet szeretnénk, elegendő, ha megjegyezzük: ha n elég nagy (30-nál
nagyobb, ha valaki ki akarja számolni), akkor az n pontú címkézetlen fák
száma nagyobb, mint 2". Ha tehát n > 30, akkor a könnyen megjegyezhető
8.5. A CÍMKÉZETLEN FÁK SZÁMA 163

2n < T n < 4n
képletet kapjuk.
A planáris kód messze van attól, hogy optimális legyen: egyrészt egy cím-
kézetlen fát - a gyökér választásától függően - több planáris kóddal is megad­
hatunk, másrészt nem minden 2(n—1) hosszúságú sorozat tekinthető planáris
kódnak (hogy mást ne mondjunk, a sorozatnak 1-gyel kell kezdődnie, és 0-
val kell végződnie). A planáris kód mindazonáltal meglehetősen gazdaságos
módja a fák kódolásának: egy n pontú fa kódolásához mindössze 2n karak­
terre van szükségünk. Mivel több mint 2” címkézetten fa van (amennyiben
n > 30), n hosszúságú kódokkal biztosan nem boldogulnánk, ezekből ugyanis
egyszerűen nincs elég.
A címkézett fák számára vonatkozóan ismerünk egy csinos kis képletet,
a címkézetlen fák esetében már nem ez a helyzet, és valószínű, hogy „szép”
formula nem is létezik. Pólya György bebizonyította, hogy az n pontú cím­
kézetlen fák száma n növekedtével an~5/ 2bn-hez közelít, ahol a = 0, 5349 ...
és b = 2, 9557... bonyolult módon definiált valós számok.

8.5.1. Léteznek-e olyan címkézetlen fák, amelyeknek planáris kódja


(a) 1111111100000000; (b) 1010101010101010; (c) 1100011100?

Á ttekintő feladatok
8.5.2. Legyen G összefüggő' gráf, e pedig G egy éle. Bizonyítsuk be, hogy e pon­
tosan akkor „elvágó él”, ha nem tartozik hozzá G egyetlen köréhez sem.

8.5.3. Igazoljuk, hogy egy n pontú és m élű gráfnak legalább n —m összefüggő


komponense van.

8.5.4. Igazoluk, hogy ha egy fában van d fokszámú pont, akkor a fának legalább
d levele van.

8.5.5. Hány 6 pontú címkézetlen fa létezik?

8.5.6. Kettőscsillagnak nevezzük azokat a fákat, amelyeknek pontosan két olyan


pontja van, amelyik nem levél. Hány címkézetlen n pontú kettőscsillag létezik?

8.5.7. Konstruáljunk fát egy n — 3 hosszúságú útból úgy, hogy felveszünk két
új pontot, és ezeket összekötjük az út ugyanazon végpontjával. Hány különböző
címkézett fát kaphatunk ilyen módon?

8.5.8. Tekintsünk egy 2 sorból és n — 1 oszlopból álló táblázatot; az első sor


1, 2, 3, . . . , n — 1, a második sor elemei pedig tetszőleges 1 és n közötti számok.
Készítsük el azt a gráfot, amelyeknek élei a táblázat oszlopainak pontjai között
haladnak.
164 8. FÁK

(a) Példa segítségével igazoljuk, hogy az így kapott gráf nem feltétlenül fa.
(b) Bizonyítsuk be, hogy ha az így kapott gráf összefüggő, akkor fa.
(c) Mutassuk meg, hogy a gráf minden összefüggő komponensében legfeljebb
egy kör van.

8.5.9. Bizonyítsuk be, hogy egy fában bármely két maximális hosszúságú útnak
van közös pontja. (Maximális, azaz nem bővíthető utakra az állítás nem igaz.)

8.5.10. Ha e egy C kör két, nem szomszédos csúcsát összekötő él, akkor e-t a C kör
húrjának nevezzük. Igazoljuk, hogy ha egy G gráfnak nincs 3-nál kisebb fokszámú
pontja, akkor G-nek van olyan köre, amelyben legalább egy húr is van.
[Ütmutatás: Kövessük annak a tételnek a bizonyítását, amely szerint minden
fának van 1 fokszámú pontja.]

8.5.11. Egy n pontú körben kössünk össze két „másodszomszédos” pontot. Hány
feszítő fája van az így kapott gráfnak?

8.5.12. Ha egy k- és egy I-pontú teljes gráfot egy éllel összekötünk, (kJ) súlyzó­
gráfot kapunk. Hány feszítő fája van egy súlyzógráfnak?

8.5.13. Bizonyítsuk be, hogy ha n > 2, akkor a 8.5.1. Tételben szereplő mindkét
egyenlőtlenség szigorú.
9. fejezet

Optimális megoldások

9.1. A legjobb fa
Képzeljünk el egy országot, amelyben n város van. Az ország a városok
között telefonösszeköttetést kíván létesíteni. Természetesen nem akarják va­
lamennyi várost összekötni az összes többivel, a hálózaton keresztül azonban
minden városnak bármelyik másikból elérhetőnek kell lennie. A gráfelmé­
let terminológiáját használva azt mondhatnánk: a közvetlen összeköttetések
által alkotott gráf összefüggő kell hogy legyen. A kormány úgy dönt, hogy
ha két város közvetetten már összekapcsolható, akkor nem épít közöttük
követlen vonalat. (A későbbiekben megvizsgáljuk, milyen okok szólhatnak
amellett, hogy ne ezt tegyék, de egyelőre fogadjuk el: az egyetlen szempont
az, hogy a hálózat összefüggő legyen.) A kormány tehát egy minimális össze­
függő gráfot, azaz egy fát kíván építeni.
Már tudjuk, hogy bármelyik fát választják ki, n — 1 vonalat kell lefektet­
niük. Vajon eszerint tökéletesen mindegy, hogy melyik fát választják? Nyil­
ván nem, elvégre vonal és vonal között - például az építési költség tekinte­
tében - komoly különbségek lehetnek. Ha két város távolabb van egymástól,
vagy hegyek, esetleg tavak fekszenek közöttük, az nyilván növeli a telefonvo­
nal költségeit. A cél tehát egy olyan fa megtalálása, amelyben a teljes költség
(az egyes élekhez tartozó költségek összege) minimális.
De honnan tudjuk, hogy mekkorák az egyes vonalak költségei? Ezt a mér­
nökök és a közgazdászok nagy pontossággal előre, a tervek alapján ki tudják
számítani, így a továbbiakban adottnak tételezzük őket.
Ezen a ponton a feladat triviálisnak tűnik: vegyük sorra a fákat, adjuk
össze a megfelelő költségeket, és válasszuk azt a fát, amelynél a legkisebb
összeget kaptuk.
Vitába szállnánk azzal az állítással, miszerint a feladat triviális lenne.
A számításba veendő fák száma ugyanis hatalmas: Cayley tétele (8.3.1. Té­
tel) szerint az n pontú címkézett fák száma n n~2, így 10 város esetén már 108
166 9. OPTIMÁLIS MEGOLDÁSOK

lehetséges fát kellene megvizsgálnunk, 20 város esetén pedig 102O-nál is töb­


bet. Az optimális fa kiválasztásához hatékonyabb módszerre van szükségünk
- és ebben segít a matematika!
A pesszimista és az optimista közötti különbséget gyakran a következő pél­
dázattal „világítják meg”. Képzeljük el, hogy mindketten kapnak egy doboz
bonbont. Az optimista minden alkalommal a legfinomabbat, a pesszimista
mindig a legkevésbé finomat választja (mert a legjobbakat a végére tarto­
gatja). Az optimista tehát mindvégig a rendelkezésére álló legfinomabb, a
pesszimista viszont a legkevésbé finom bonbont eszi - végeredményben mégis
ugyanazt a doboz bonbont fogyasztják el.
Lássuk tehát, miként építené meg egy optimista kormány a telefonhálóza­
tot. Amint összegyűlik egy vonalra (nyilván a legolcsóbb vonalra) elegendő
tőke a kincstárban, azt rögtön meg is építi. Ezután kivárja, míg összegyűlik
a második (legolcsóbb) vonalra való, és azt is megépíti. Ezután megint meg
kell várnia, amíg a harmadik legolcsóbb vonalra is meglesz a keret, és így
tovább. Előfordulhat persze, hogy - mondjuk - a harmadik legolcsóbb vo­
nal az első kettővel háromszöget alkot, ebben az esetben kormányunk nem
építkezik, hanem megvárja, míg összegyűlik a pénz a következő legolcsóbb
vonalra (amelynek megépítésével nem keletkezik kör a hálózatban).
Az optimista kormány tehát mindig kivárja, amíg elegendő pénze nem
lesz két - még nem összekapcsolt - város összekötéséhez. A hálózat végül
egy n pontú összefüggő gráfot alkot. Ebben a gráfban nem lehet kör, hiszen
a kör utolsónak megépített éle olyan városokat kötne össze, amelyek között
már létezik (közvetett) összeköttetés. Az eredmény tehát egy fa.
De vajon tényleg az így kapott hálózat a lehetséges legjobb? Nem bosszulja
meg magát a spórolás, nem fizet-e rá a végén a kormány? Be fogjuk bizo­
nyítani, hogy az optimista kormány - érdemtelenül, de mégis - a lehetséges
legolcsóbb hálózatot (fát) építi meg.

Mielőtt hozzálátnánk a bizonyításhoz, meg kell magyaráznunk, miért nevez­


tük a kormány sikerét „érdemtelennek”. Megmutatjuk, hogy ha a feladatot
kissé módosítjuk, akkor ugyanez a hozzáállás katasztrofális eredményhez ve­
zethet.
Tegyük fel, hogy - mondjuk - biztonsági okokból megköveteljük: bárme­
lyik két várost két telefonvonal kösse össze, méghozzá olyanok, amelyeknek
nincs közös éle (így bármelyik város elérhető marad akkor is, ha a vonal
valahol megszakad). Ehhez n — 1 vonal nem elegendő (ha az összefüggő n
pontú gráfnak n —1 éle van, akkor a gráf fa, így ha bármelyik élét elhagyjuk,
a kapott gráf már nem lesz összefüggő). Mindazonáltal n vonal már meg­
teszi: elegendő, ha a városokat egyetlen körre fűzzük fel. A feladat tehát a
következő:

Adjuk meg a minimális költségű, az n város mindegyikén átmenő kört.


9.1. A LEGJOBB FA 167

(Ez az optimalizáció egyik klasszikus feladata: az utazó ügynök problémája.


A későbbiekben még visszatérünk rá.)

Az optimista kormány a következőképpen járna el. Megépítené a legol­


csóbb, a második legolcsóbb, a harmadik legolcsóbb... szóba jöhető vonalat,
ügyelve arra, hogy ha egy városból már két él kiindul, akkor nincs szükség
harmadikra, továbbá, hogy a hálózatot csak akkor szabad „rövidre zárni”, ha
a létrejövő kör az összes városon áthalad. így idővel elkészül az összes várost
összekötő kör, ez azonban nem feltétlenül a legjobb! A 9.1. ábra azt mutatja,
hogy az optimista - a matematikának ezen a területén „mohónak” nevezett
módszerrel olyan körhöz jutunk, amely sokkal többe kerül, mint az optimális
kör.

9.1. ábra. A mohó módszer csődje. Az építési költség a távolsággal arányos.


Az első ábra a legolcsóbb (legrövidebb) kört, a második pedig az optimista
kormány által, a „mohó” módszert követve megépített kört mutatja.

A mohó módszer tehát nem a legjobb megoldást adja arra a problémára,


amely csak kevéssé különbözik a legolcsóbb fa megtalálásának problémájától.
Ezért állítottuk tehát, hogy a „mohó” kormány szerencséje érdemtelen.
Térjünk tehát vissza a legolcsóbb fa problémájához, és lássuk be végre,
hogy az optimista módszer valóban az optimális megoldáshoz vezet. Az op­
timista kormány által követett stratégiát mohó algoritmusnak, a feszítőfák
kontextusában pedig Kruskal- algoritmusnak nevezzük. Nevezzük a mohó al­
goritmus által megadott, E-fel jelölt fát mohó fának. Azt kell tehát belát­
nunk, hogy bármely más fa legalább annyiba kerül, mint a mohó fa (az op­
timista kormányt tehát nem érheti a pazarlás vádja: senki sem tud olcsóbb
megoldást mutatni).
Legyen tehát G az E mohó fától különböző fa. Tekintsük E megépítésének
azt a lépését, amikor elsőként jelölt ki a kormány egy G-ben nem szereplő
vonalat; jelöljük ezt a vonalat e-vel. G-hez e-t hozzávéve egy (G-beli) G kört
kapunk. Ez a kör nem halad teljes egészében E-ben, van tehát egy olyan /
éle, amely E-nek nem éle (9.2. ábra). Ha most G-hez hozzáveszük az e élt,
az f-e t pedig elhagyjuk, akkor egy újabb - ií-val jelölt - fát kapunk. (Hogy
miért fa a H gráf? - Mondja meg az Olvasó!)
Belátjuk, hogy H nem lehet drágább, mint G. Ehhez nyilvánvalóan ele­
gendő bebizonyítani, hogy az e él nem drágább, mint az / . Indirekt bizonyí­
tunk: feltesszük tehát, hogy / olcsóbb, mint e.
168 9. OPTIMÁLIS MEGOLDÁSOK

9.2. ábra. A mohó módszer optimális eredményt szolgáltat

Ha / olcsóbb, mint e, akkor meg kell kérdeznünk: az építkezés adott sza­


kaszában az optimista kormány miért nem f-e t választotta e helyett? Erre
egyetlen válaszuk lehet: az, hogy az / él az F mohó fa már meglévő éleivel
egy C' kört alkotott volna. Ezek az élek azonban a G fának is élei, hiszen
azt a lépést vizsgáltuk, amikor a kormány először választott nem G-beli élt.
Mivel / a G egyik éle, ebből az következne, hogy a C' kör G-ben halad,
ami viszont lehetetlen, elvégre G egy fa. Az ellentmondás azt mutatja, hogy
/ nem lehet olcsóbb, mint e, minek következtében G sem lehet olcsóbb,
mint H.
Cseréljük ki a G fát a nála nem drágább ií-val. A H fának több közös éle
van F-fel, mint G-nek, hiszen úgy kaptuk, hogy G egy nem F-beli élét egy
F-beli élre cseréltük. Ha H különbözik F-től, akkor az iménti gondolatme­
netet újra és újra megismételve olyan fákat kapunk, amelyek nem drágábbak
G-nél, és egyre több élükben egyeznek meg F-fel. Előbb vagy utóbb ilyen mó­
don magát F-et is megkapjuk, amivel igazolást nyer, hogy F nem drágább,
mint G.

9.1.1. A pesszimista kormány a következó'képpen gondolkodna: „Ha nem vagyunk


elég körültekintőek, előfordulhat, hogy meg kell építenünk a szélsőségesen drága
vonalat a hegyeken át, legjobb tehát, ha ezt már most »lehetetlennek« nyilvánítjuk.
Ezután keressük meg a második legdrágább vonalat, és nevezzük ezt is »lehetet­
lennek^ és így tovább. Ezt persze nem folytathatjuk örökké: a még ki nem zárt
élekből álló »lehetőségek gráfjának« összefüggőnek kell maradnia. Más szóval: ha
a legdrágább él kiiktatásával a lehetőségek gráfja szétesik, akkor - akár tetszik
nekünk, akár nem - a szóban forgó vonalat meg kell építenünk.” Meg is építik. (Je­
gyezzük meg: a pesszimista kormány által megépített vonal a szóba jövő vonalak
közül a legdrágább.) Ezután a még szóba jöhető, de még meg nem épített vonalak
közül lehetetlennek nyilvánítják a legdrágábbat (persze csak akkor, ha elhagyása
nem szünteti meg a hálózat összefüggőségét), és így tovább.
Bizonyítsuk be, hogy a pesszimista kormány költsége ugyanakkora lesz, mint az
optimista kormányé.
9.2. AZ UTAZÓ ÜGYNÖK PROBLÉMÁJA 169

9.1.2. Hogyan építene a pesszimista kormány egy minden várost érintő kört? Mu­
tassuk meg egy példán, hogy a pesszimista stratégia nem mindig vezet optimális
megoldáshoz.

9.2. Az utazó ügynök problémája


Térjünk vissza a már említett problémára: keressük meg a legkisebb költ­
ségű, az összes megadott várost érintő kört. A városok száma legyen n, és
bármelyik kettő esetében adott, hogy mennyibe kerül a „közvetlen” össze­
köttetés. Azt a kört kell megkeresni, melyben a teljes költség (a kör éleihez
tartozó költségek összege) a lehető legkisebb.
A feladat a kombinatorikus optimalizálás egyik legfontosabb problémája.
A matematikának ez a területe a különböző kombinatorikus szituációkban
megadható legjobb megoldásokkal foglalkozik; ilyen optimális megoldás az
előző alfejezetben keresett legjobb fa is. A most tárgyalt feladatot az utazó
ügynök problémájának nevezzük, és számos álruhája létezik. Az elnevezés
onnan származik, hogy - a szóban forgó változatban - egy ügynöknek kell
meglátogatni a rá bízott terület összes városát úgy, hogy a körút végén haza­
érjen, és hogy utazási költsége a lehető legalacsonyabb legyen. Nyilvánvaló,
hogy ez matematikai szempontból ugyanaz a feladat, mint a legalacsonyabb
költségű telefonvonalak körének megkeresése. Könnyen elképzelhetők olyan
szituációk - levélkézbesítés, szemétszállítás stb. amelyekben ugyanez a
kérdés merül fel.
Ugyanez a matematikai probléma jelentkezik - más dimenzióban - a kö­
vetkező feladatban is. Képzeljünk el egy gépet, amelynek egy nyomtatott
áramkörre lyukakat kell fúrnia. A furatok száma több ezer is lehet, a fúró­
fejnek az utolsó fúrás után vissza kell térnie a kiindulópontba. A minimali­
zálandó mennyiség ebben az esetben az idő, amíg a fúrófej az egyik furattól
a másikhoz elér. Ezeknek az időtartamoknak az összege szabja meg ugyanis,
hogy - mondjuk - egy nap alatt hány lap készül el. Matematikai szempontból
a gráf pontjai a furatok, egy él „költsége” pedig az az időtartam, amíg a fúró­
fej az egyik végponttól a másikhoz ér - s természetesen most is a minimális
költségű, összes pontot érintő kört keressük.
Az utazó ügynök problémája a Hamilton-körökkel áll szoros kapcsolatban.
Először is, az utazó ügynök körútja a szóban forgó teljes gráf egy Hamilton-
köre. Van azonban egy ennél érdekesebb összefügggés is: egy adott gráfbeli
Hamilton-kör létezésének problémája az utazó ügynök problémájára vezethető
vissza.
Legyen a G gráfnak n pontja. Definiáljuk a pontok közötti távolságot a
következőképpen: a szomszédos pontok távolsága legyen 1, a nem szomszé­
dosaké pedig 2.
Mit tudunk az utazó ügynök problémájáról ebben az esetben? Ha a gráf­
ban van Hamilton-kör, akkor ez egyúttal egy n hosszúságú „ügynöki kör­
útnak” is megfelel. Ha a gráfban nincs Hamilton-kör, akkor a legrövidebb
170 9. OPTIMÁLIS MEGOLDÁSOK

„ügynöki körút” is legalább n + 1 hosszúságú. Eszerint tehát minden olyan


algoritmus, amely megoldást kínál az utazó ügynök problémájára, egyúttal
annak eldöntésére is felhasználható, hogy létezik-e a szóban forgó gráfban
Hamilton-kör.
Az utazó ügynök problémája sokkal nehezebb, mint a legjobb fáé, nem is
áll rendelkezésünkre olyan megoldó algoritmus, amely - akár csak közelítőleg
- olyan egyszerű, elegáns és hatékony lenne, mint az előző a fejezetben tár­
gyalt optimista eljárás. Léteznek persze olyan módszerek, amelyek a legtöbb
esetben jól működnek, de ezek bemutatása meghaladná könyvünk kereteit.
Bemutatunk mindazonáltal egy egyszerű algoritmust, amely nem opti­
mális ugyan, de az általa adott megoldás költsége sohasem haladja meg az
optimális megoldás költségének kétszeresét. Az algoritmust olyan gráfokra al­
kalmazzuk, amelyekben egy él költsége az él hossza, de a távolságfüggvényt
nem adjuk meg, csupán annyit írunk elő, hogy teljesüni kell rá a háromszög-
egyenlőtleségnek: ha az ij él hosszát c(ij) jelöli, akkor az egyenlőtlenség a
következőt jelenti:
c(ij) + c(jk) > c(ik). (9.1)

(Az euklideszi geometriában a távolságok eleget tesznek ennek az összefüg­


gésnek: két pont között valóban az egyenes szakasz a legrövidebb út. A légi-
társaságok díjszabásáról ezt nem mindig mondhatjuk el: előfordulhat, hogy
New Yorkból olcsóbban repülhetünk chicagói átszállással Philadelphiá-ba,
mint átszállás nélkül. Ebben az esetben persze a New York - Chicago -
Philadelphia útvonalat tekinthetjük olyan New York - Philadelphia útnak
is, amely nem érinti Chicagót. A háromszög-egyenlőtlenséget az a távolság­
függvény is kielégíti, amelyet az utazó ügynök és a Hamilton-körök közötti
kapcsolat bemutatásakor vezettünk be.)
Azzal kezdjük, amire ismerjük a megoldást: megkeressük az adott ponto­
kat kifeszítő legolcsóbb fát. Erre jó módszert ad az előző fejezetben bemuta­
tott algoritmus; jelöljük a legolcsóbb fát T-vel, költségét pedig c-vel.
Hogyan kapunk ebből körutat? Körbejárhatjuk a fát olyan módon, aho­
gyan a 8.5.1. Tétel bizonyításában kulcsszerepet játszó planáris kód meg­
adásakor tettük (8.6. ábra). így olyan sétát kapunk, amely a gráf minden
pontját érinti, kiinduló- és végpontja pedig egybeesik.
Ez a séta természetesen bizonyos városokon többször is áthalad, ez azon­
ban nem zavar bennünket: a fölösleges kitérőket levághatjuk. Ha a séta j-n
keresztül vezet i-ből fc-ba, j- t pedig már korábban érintettük, akkor j- t ki­
hagyjuk, és i-ből közvetlenül fc-ba haladunk. A élek számát ilyen módon
addig csökkentve, amíg lehet, olyan körutat kapunk, amely minden várost
pontosan egyszer érint (9.3. ábra). Nevezzük ezt az algoritmus „levágó” al­
goritmusnak.

9 .2 .1 . T é t e l . H a a z u ta zó ü g y n ö k p r o b lé m á já b a n sze re p lő k ö ltsé g e k k i­
e lé g ítik a (9.1) h á ro m szö g -e g y e n lő tle n sé g e t, a k k o r a levágó a lg o ritm u s o lyan
9.2. AZ UTAZÓ ÜGYNÖK PROBLÉMÁJA 171

9.3. ábra. A 15 várost összekötő legolcsóbb fa, a fa körüli séta és a levágások­


kal kapott körút (a halványabb éleket kőrútban nem használjuk). A költségek
a távolságokkal arányosak.

k ö r u ta t szo lg á lta t, a m e ly n e k k ö ltsé g e n e m h a la d ja m e g a z o p tim á lis k ö r ú t


k ö ltsé g é n e k k é tsze re sé t.

B iz o n y ít á s : A fa k ö r b e já r á s á n a k k ö lts é g e p o n to s a n a fa c k ö lts é g é n e k a k é t­
s z e re s e , e lv é g r e m i n d e n é le n p o n t o s a n k é ts z e r h a l a d u n k v é g ig . A h á ro m sz ö g ­
e g y e n lő tle n s é g g a r a n tá lja , h o g y a k ö lts é g m in d e n k e rü lő le v á g á s a k o r c s ö k k e n ,
a k a p o t t k ö r ú t k ö lts é g e t e h á t le g f e lje b b k é ts z e r a k k o r a le h e t, m in t a le g o l­
c s ó b b f e s z ítő fa k ö lts é g e .
Ezt a költséget azonban nem a feszítő fa, hanem az optimális körút költsé­
gével akarjuk összevetni! Ezzel sincs azonban komolyabb probléma, a legol­
csóbb feszítő fa költsége ugyanis mindig kisebb a legolcsóbb körút költségénél.
Hogy miért? A legolcsóbb körút valamely élének elhagyásával egy feszítő fát
(méghozzá egy speciálisat: utat) kapunk. Ez a fa nem feltétlenül optimális,
annyi azonban biztos: a költsége nem lehet kisebb az optimális feszítő fáénál.
Összefoglalva: az algoritmussal kapott út költsége legföljebb kétszer ak­
kora, mint a legolcsóbb feszítő fáé, a legolcsóbb feszítő fa költsége pedig
kisebb a legolcsóbb körút költségénél. □

9.2.1. Létezik-e a rövidebb út a 9.3. ábrán láthatónál?


172 9. OPTIMÁLIS MEGOLDÁSOK

9.2.2. Igazoljuk, hogy ha minden él költsége arányos az él hosszával, akkor a


legrövidebb körút nem metszheti magát.

Á ttekintő feladatok
9.2.3. Bizonyítsuk be, hogy ha az élekhez rendelt költségek mind különbözőek,
akkor pontosan egy legolcsóbb fa létezik.

9.2.4. Adjunk módszert annak a feszítő fának a megkeresésére, amelynél (a) az


élek költségeinek szorzata, illetve (b) a maximális élköltség minimális.

9.2.5. A valódi kormányok esetében az optimista és a pesszimista nézőpont megjó­


solhatatlan módon váltakozik, hol az egyik kerekedik felül, hol a másik. A kormány
így néha a legolcsóbb olyan vonalat építi meg, amely nem alkot kört a már meglévő
vonalakkal, máskor viszont sorra „lehetetlennek” minősíti a legdrágább vonalakat,
amíg el nem jut egy olyan vonalhoz, amelyet az összefüggőség megbontása nélkül
nem bélyegezhet lehetetlennek - és ezt meg is építi. Igazoljuk, hogy az „ingadozó”
lelkületű kormány is a lehetséges legolcsóbb hálózatot építi meg.

9.2.6. Ha a kormány az r városban székel, akkor feltehetően az r-t a többi várossal


összekötő vonalak legolcsóbbikával kezdi a hálózatépítést. Legyen ez mondjuk az
rs él. Ezután a legolcsóbb olyan vonal következik, amely r-t vagy s-et egy másik
várossal köti össze, és így tovább. Amikor tehát adott egy, az r fővárost tartalmazó
összefüggő gráf a városok halmazának egy S részhalmazán, akkor a következő lépés
a legolcsóbb olyan vonal megépítése, amely S valamely pontját egy S-en kívüli
ponttal köti össze. Igazoljuk, hogy ezzel a módszerrel is a legolcsóbb fát kapjuk.

9.2.7. Keressük meg a legrövideb körutat (a) a 3 x 3-as; (b) a 4 x 4-es; (c) az
5 x 5-ös négyzetrácson, (d) Általánosítsuk az eredményeinket n x m-es rácsokra.

9.2.8. Mutassuk meg egy példán, hogy ha nem követeljük meg a háromszög-
egyenlőtlenség teljesülését, akkor a „levágó”’ algoritmussal kapott körút költsége
akár az optimális körút költségének 1000-szerese is lehet.
10. fejezet

Párosítások

10.1. Egy táncterm i probléma


Egy iskolai bálon 300 fős vendégsereg jelent meg. A vendégek közül nem
ismer mindenki mindenkit, annyit azonban tudunk, hogy minden lány 50
fiút, és minden fiú 50 lányt ismer (mint mindig, most is feltesszük, hogy az
ismeretség kölcsönös).

Belátható, hogy ekkor az egész vendégsereg táncra perdülhet úgy, hogy


mindenkinek egy ismerőse a párja.

Mivel ismeretségekről van szó, a szituációt természetes módon egy gráf­


fal ábrázolhatjuk (vagy legalábbis elképzelhetjük a vendégsereg ismeretségi
gráfját). Rajzolunk tehát 300 pontot, és összekötjük azokat, amelyek isme­
rősöket reprezentálnak. Esetünkben a gráf ennél kicsit egyszerűbb: annak,
hogy két fiú vagy két lány ismeri-e egymást, a probléma szempontjából nincs
különösebb jelentősége, az ilyen ismeretségek ábrázolásától ezért el is tekin­
tünk. A gráf pontjait eszerint elrendezhetjük úgy, hogy a fiúknak megfelelő
pontok a bal, a lányokat reprezentálok pedig a jobb oldalon helyezkednek el,
ekkor tehát a gráf minden éle egy jobb és egy bal oldali pontot köt össze. A
bal oldali pontok halmazát A, a jobb oldaliakét B jelöli.
Az így kapott speciális gráfot páros gráfnak nevezzük; egy páros - mind­
azonáltal a példabelinél jóval kisebb szabású partit reprezentáló - gráfot a
10.1. ábrán tanulmányozhatunk. A vastag élek a táncosokat jelzik; az ilyen
élrendszert teljes párosításnak nevezzük.
Adjuk meg a bevezetett fogalmak precíz definícióját is. Egy gráf páros, ha
pontjai két - mondjuk A-val és B-ve 1jelölt - halmazra oszthatók úgy, hogy
a gráf minden éle egy A- és egy B-beli pontot köt össze. A gráf éleinek egy E
részhalmazát teljes párosításnak nevezzük, ha a gráf minden pontja ponto­
san egy Ebbéli élre illeszkedik. (A teljes párosításokat alkalmankét elsőfokú
faktornak is nevezik.)
174 10. PÁROSÍTÁSOK

10.1. ábra. Páros gráf a teljes párosítással.

Mindezen előkészületek után a feladatot a következőképpen fordíthatjuk


le a gráfelmélet nyelvére: azt kell belátnunk, hogy ha egy 300 pontú páros
gráfban minden pont fokszáma 50, akkor a gráfban van teljes párosítás.
Mint már korábban is előfordult, jó ötlet, ha az állítást tetszőleges pont­
számú gráfra általánosítjuk. Talán nem túl nagy vakmerőség, ha feltesszük:
sem a 300, sem az 50 nem játszik fontos szerepet. A lényeges feltétel az,
hogy minden pontnak ugyanannyi (és nem 0) a fokszáma. A célunk tehát,
hogy belássuk a következő, Kőnig Dénestől származó tételt (Kőnig írta az
első gráfelméletről szóló könyvet).

1 0 .1.1. TÉTEL. Ha egy páros gráfban a pontok fokszáma egyenlő, akkor a


gráfban létezik teljes párosítás.

A bizonyítás előtt célszerű, ha megoldunk néhány feladatot, és - a követ­


kező alfejezetben - egy másik problémát is megvizsgálunk.

10.1.1. Nyilvánvaló, hogy egy páros gráfban csak akkor létezhet teljes párosítás,
ha |A| = \B\. Igazoljuk, hogy ha a pontok fokszáma megegyezik, akkor ez a szük­
séges feltétel automatikusan teljesül.

10.1.2. Mutassuk meg példák segítségével, hogy a tételben szereplő feltételek nem
hagyhatók el, azaz
(a) egy nem páros gráfban még akkor sem létezik feltétlenül teljes párosítás, ha
minden pont fokszáma ugyanaz; illetve
(b) egy páros gráfban egy teljes párosítás létezéséhez nem elegendő, ha minden
pont fokszáma pozitív (de nem mind feltétlenül egyenlő).

10.1.3. Bizonyítsuk be a 10.1.1. Tételt a d = l é s a d = 2 esetben.


10.2. MÉG EGY PÁROSÍTÁS 175

10.2. ábra. A hat törzs vadászterülete és a hat teknősbékafaj élőhelye. A


törzseket A, B, C, D, E és F, a teknősbéka-fajtákat 1, 2, 3, 4, 5, 6, az előb­
biek közötti határokat folytonos, az teknősélőhelyeket elválasztó határokat
szaggatott vonal jelzik.

10.2. M ég egy párosítás


Egy szigeten hat törzs él. A törzsek hagyományosan jó kapcsolatokat ápolnak
egymás között, így mindegyik vadászterülete pontosan 100km2. A sziget
teljes területe 600 km2.
A törzsek egy-egy totemállattal kívánják identitásukat jelképezni. Abban
állapodnak meg, hogy mindegyik törzs totemállata a szigeten élő 6 teknős­
békafaj egyike lesz, de különböző törzsek különböző totemállatokat válasz­
tanak. Megegyeznek abban is, hogy minden törzs olyan totemállatot választ,
amely a vadászterületén is előfordul.
Tudjuk, hogy a hat teknősbékafaj mindegyike 100 km2 területen él, a kü­
lönböző fajok élőhelyei pedig nem metszik egymást (így tehát a sziget minden
kis szegletében él egy teknősbékafaj). A teknősök élőhelye természetesen nem
a törzsek vadászterületei szerint oszlik meg a szigeten (10.2. ábra).
A feladat: bizonyítsuk be, hogy lehetséges a megállapodásnak megfelelő
totemválasztás. A feltételek nyilván nem kerülhetők meg. Ha például nem
követeljük meg, hogy minden teknősfaj élőhelye ugyanakkora legyen, ak­
kor lehetséges lenne, hogy - mondjuk - valamelyik faj 200 km2 területen él.
Ekkor azonban előfordulhat, hogy két törzs vadászterületén mindössze egy
teknősbékafaj él, így a törzsek nem választhatnak különböző totemállatokat.
176 10. PÁROSÍTÁSOK

Illusztráljuk a problémát egy gráffal. A törzseket és a teknősfajokat is


egy-egy pont reprezentálja, egy teknős-pont és egy törzs-pont pedig ponto­
san akkor van éllel összekötve, ha a teknősfaj élőhelyének és a törzs vadász-
területének van közös része. (Beszélhetnénk akár arról is, hogy a teknősfajok
totemtörzseket választanak maguknak...) A törzs-pontokat bal oldalra, a
teknős-pontokat pedig jobb oldalra rajzolva nyilvánvaló, hogy egy páros grá­
fot kapunk (10.3. ábra). És mit akarunk bizonyítani? Talán nem meglepő:
azt, hogy a gráfban létezik teljes párosítás!

10.3. ábra. A törzsek és a teknősök gráfja

A probléma tehát hasonló az előző alfejezetben felvetett (de meg nem ol­
dott!) feladathoz: be kell látnunk, hogy egy gráfban létezik teljes párosítás.
A 10.1.1. Tétel szerint ehhez elegendő, ha a gráf minden pontjának ugyan­
annyi a fokszáma. Ez azonban túlágosan erős feltétel, és az imént tárgyalt
példában nem is teljesül (a B törzs 2, míg a D törzs 4 potenciális totemállat
közül választhat).
Milyen feltétel garantálhatja tehát egy teljes párosítás létezését? A visszá­
járól fogalmazva: mit zár ki egy teljes párosítás?
Nem lenne szerencsés például, ha valamelyik törzs vadászterületén egyál­
talán nem élnének teknősök. Ez azt jelentené, hogy a gráfban van 0 fokszámú
pont. Ez a veszély mindazonáltal nem fenyeget, elvégre a teknősök a teljes
szigetet benépesítették.
Probléma lenne az is (erről már volt szó), ha két törzs területén egyet­
len teknősbékafaj élne csak, és így nem tudnának különböző totemállatot
választani. Ekkor azonban ennek a fajnak legalább 200 km2 területet kel­
lene elfoglalnia, amit a feltételeink kizárnak. Előfordulhat-e az, hogy há­
rom törzs vadászterületén összesen mindössze két teknősbékafaj él? Nem:
ebben az esetben ugyanis a két teknősfajnak minimum 300km2-nvi terüle­
10.3. AZ ALAPTÉTEL 177

tét el kellene foglalnia, így legalább az egyiknek nagyobb lenne az élőhelye


100km2-nél. Ennél több is igaz: k törzs együttes vadászterületén legalább k
teknősbékafajnak kell élnie. A gráfban ez a következő feltételt jelenti: a bal
oldali pontok közül akármelyik k-1 választjuk ki. van legalább k pont a jobb
oldalon, amelyeket a szóban forgó pontokkal élek kötnek össze.

10.3. Az alaptétel
Most kimondjuk és belátjuk a teljes párosításról szóló alapvető tételt. Ezzel
(csaknem) megoldódik a törzsek és a totemek, a báli táncrend, valamint egy,
a táncot követő probléma is (amit a tétel neve sugall).

1 0 .3 .1 . T é t e l . (H á z a ssá g i t é t e l) Egy páros gráfban pontosan akkor lé­


tezik teljes párosítás, ha \A\ — \B\ és (mondjuk) az A halmaz tetszőleges
k elemű A' részhalmazához megadható a B egy olyan, legalább k elemű
részhalmaza, amelynek elemeivel A' pontjai össze vannak kötve.
A tételnek több változata ismert, közülük néhányat a feladatokban mu­
tatunk be. Ezeket egymástól függetlenül a német G. Frobenius, a magyar
Kőnig Dénes, az egyesült államokbeli P. Hall és mások fedezték fel.
A bizonyítás előtt még egy körülményt tisztáznunk kell. Ha a „bal” és
a „jobb” szavakat felcseréljük, még minden teljes párosítás teljes párosítás
marad. De mi a helyzet a tétel (szükséges és elégséges) feltételével? Könnyen
belátható, hogy ez a feltétel is érvényben marad (amint azt el is várjuk).
A bizonyításhoz be kell látnunk, hogy ha H-ből kiválasztunk egy k pontból
álló S halmazt, akkor S pontjai legalább k darab A-beli ponttal össze vannak
kötve. Legyen n = \A\ = |£?|; színezzük az S'-beli pontokkal összekötött A-
beli pontokat feketére, a többi pedig maradjon fehér (10.4. ábra). A fehér
pontok legfeljebb n — k ponttal lehetnek összekötve (mivel ezek egyetlen S-
beli ponttal sincsenek összekötve). Mivel a feltétel „balról jobbra” teljesül,
a fehér pontok száma legfeljebb n —k, a fekete pontok száma ennélfogva
legalább k kell hogy legyen - a feltétel tehát „jobbról balra” is teljesül.
B i z o n y í t á s : Rátérünk a 10.3.1. Tétel bizonyítására. A bizonyítás során a
tétel feltételének eleget tevő gráfokat röviden „jó” gráfoknak nevezzük. Egy
páros gráf tehát „jó”, ha a jobb és a bal oldalon ugyanannyi pontja van, és
tetszőleges k bal oldali pont legalább k jobb oldali ponttal össze van kötve.
Nyilvánvaló, hogy minden olyan gráf „jó”, amelyben létezik teljes párosí­
tás, bizonyítanunk tehát csak ennek megfordítását kell: minden „jó” gráfban
van teljes párosítás. Ha a gráfnak két pontja van, akkor a „jóság” egyszerűen
azt jelenti, hogy a két pont össze van kötve. Egy gráfban ennélfogva ak­
kor létezik teljes párosítás, ha létezik 2 pontú „jó” gráfokból álló partíciója.
(A partíció azt jelenti, hogy a gráf pontjait diszjunkt halmazokba soroljuk,
és a gráfnak csak azokat az éleit tartjuk meg, amelyek ugyanazon halmazba
eső pontokat kötnek össze.)
178 10. PÁROSÍTÁSOK

10.4. ábra. Ha egy gráf balról jobbra „jó”, akkor jobbról balra is az.

A stratégiánk a következő lesz: a gráfokat két „jó” részre bontjuk, ez


utóbbiakat szintén két részre... mígnem eljutunk egy olyan „jó” partícióhoz,
amelyben minden részhalmaz kételemű. Ehhez be kell látnunk, hogy

bármely 2-nél több pontú „jó” páros gráfnak van két „jó” páros gráfból
álló partíciója.

Próbát tehetünk egy igencsak egyszerű partícióval: válasszunk ki olyan


a e A és b 6 B pontokat, amelyeket egy él köt össze; legyen a partíció
egyik halmaza {a, &}, a másik pedig a többi pontból álló halmaz. Az első
közülük nyilván „jó”. A második azonban nem feltétlenül: ennek ugyanis lehet
olyan, k darab bal oldali pontból álló S részhalmaza, amelyek fc-nál kevesebb
jobb oldali ponttal vannak összekötve (10.5. ábra). Az eredeti gráfban S
pontjai legalább k jobb oldali ponttal össze vannak kötve, ez pedig csak úgy
lehetséges, ha a fc-adik ilyen pont maga a b. Jelölje T az S pontjaival (az
eredeti gráfban) szomszédos pontok halmazát. Nyilván teljesül, hogy [Sj =
=m
Próbálkozzunk egy másik partícióval: ebben az egyik rész legyen S U T (a
közöttük haladó élekkel), a többi pont (és él) pedig a másik. (Az utóbbi nem
üres, az a pont például biztosan eleme.)
Belátjuk, hogy mindkét gráf „jó”. Kezdjük az elsővel. Tekintsük például
S (az első gráf bal oldala) pontjainak egy j elemű részhalmazát. Mivel az
eredeti gráf „jó”, ennek a részhalmaznak a pontjai legalább j ponttal össze
10.4. HOGYAN ADHATÓ MEG TELJES PÁROSÍTÁS? 179

a b

10.5. ábra. Két pont eltávolításáért „jó” árat fizetünk.

vannak kötve, amelyek mindegyike eleme T-nek (T definíciója szerint).


A második gráf esetében hasonló módon belátható, hogy „jó”, amennyiben
a „bal” és „jobb” szavakat felcseréljük. Ezzel a bizonyítás teljessé vált. □
Adósak vagyunk még a 10.1.1. Tétel bizonyításával. Ez azonban már nem
okozhat problémát, így az Olvasóra bízzuk (10.3.1. feladat).

10.3.1. B izo n y ítsu k be, hogy ha egy páros gráfban m inden pont fokszám a azonos,
akkor a g rá f „jó ” (és így létezik benne teljes p árosítás).

10.3.2. T eg y ü k fel, hogy egy páros gráfban az A halm az m inden X részh alm azá­
hoz létezik legaláb b |X| p ont a B halm azban, am elyekkel X elem ei össze van nak
kö tve (a 10.3.1. T éte lle l ellentétben azonban m ost nem követeljük m eg, h o gy fenn­
álljon \A\ = |B|). Igazoljuk, hogy k iv ála szth a tó a g rá f éleiből egy olyan halm az,
am elyn ek elem ei A m inden p o n tját összekötik B egy p o n tjával (előfordulhat, hogy
B ném elyik elem e „p áratlan ” m arad).

10.4. Hogyan adható meg teljes párosítás?


Rendelkezésünkre áll tehát a teljes párosítás létezésének egy szükséges és
elégséges feltétele. Vajon ezzel a kérdést egyszer és mindenkorra elintézettnek
tekinthetjük? Pontosabban: ha megadnak nekünk egy páros gráfot, van-e jó
módszerünk annak eldöntésére, hogy van-e benne teljes párosítás? És ha van,
hogyan találhatjuk meg?
180 10. PÁROSÍTÁSOK

Először is, teljesülnie kell az |Aj = B feltételnek (ahol, mint korábban,


A a bal, B a jobb oldali pontok halmaza). Ezt könnyű ellenőrizni, ha nem
teljesül, akkor nyilván nem létezik teljes párosítás.
Megpróbálkozhatunk azzal, hogy megvizsgáljuk az élek összes részhalma­
zát, így ha létezik teljes párosítás, akkor biztosan ráakadunk. Elvben ezzel
nincs is probléma - a baj csak az, hogy a részhalmazok száma rettenete­
sen nagy. A bevezető báli példánkban szereplő gráfnak 300 pontja van, így
|A| = \B\ = 150; mivel minden él fokszáma 50. az élek száma 150-50 = 7500;
az élek halmazának így 27500 > 102257 részhalmaza van, ekkora számmal pe­
dig még a csillagászok sem találkoznak!
Valamivel jobban járunk, ha a részhalmazok áttekintése helyett megvizs­
gáljuk az A és B halmaz elemeinek összes lehetséges összepárosítását, és
megnézzük, van-e ezek között olyan, amelyben mindegyik pár tagjai össze
vannak kötve egy éllel. Esetünkben „csupán” 150! « 10263 párosítást kellene
megvizsgálni - ez azonban még mindig reménytelen!
Támaszkodhatunk-e a 10.3.1. Tételre? A tételben szereplő szükséges és
elégséges feltétel teljesülésének ellenőrzéséhez A minden S részhalmaza ese­
tén meg kell állapítanunk, hogy S szomszédainak B-beli halmaza legalább
annyi elemet számlál, mint 5. Az A halmaznak 2150 « 1045 részhalmaza van
- ez kisebb ugyan, mint az előzőek, de még mindig csillagászati.
A 10.3.1. Tétel tehát nincs különösebb segítségünkre abban, hogy eldönt­
sük: létezik-e egy gráfban teljes párosítás. A tétel bizonyítása alapján tudjuk,
hogy bizonyos tulajdonság fennállásából következik a teljes párosítás léte­
zése. A tételre (és jelentőségére) a későbbiekben még visszatérünk. Egyelőre
azonban a problémánkra szeretnénk megoldást találni.
Ezen a ponton célszerű, ha bevezetjük a párosítás fogalmát: párosítás­
nak nevezünk minden élhalmazt, amelyben semelyik két elemnek sincs közös
végpontja. A teljes párosítás az a speciális eset, amely a gráf összes pontját
lefedi (az élek végpontjai között a gráf minden pontja megjelenik). Egy pá­
rosítás persze ennél kisebb is lehet: az üres halmaz és az egyetlen élből álló
halmazok is párosítások.
Próbáljunk teljes párosítást konstruálni úgy, hogy az üres halmazból kiin­
dulva élenként építjük fel. Kiválasztunk két pontot, amelyeket egy él össze­
köt, és megjelöljük ezt az élt. Ezután újabb két, a párosításunkban nem
szereplő, de összekötött pontot választunk, és az őket összekötő élt is meg­
jelöljük. A megjelölt élek egy M párosítást adnak, amelyet gyakran mohó
párosításnak is neveznek, mivel a mohó, a későbbi választásokat figyelmen
kívül hagyó módszerrel választottuk ki. Ha szerencsénk van, a mohó pá­
rosítás teljes, és nincs is más teendőnk. De mi a helyzet, ha M nem teljes?
Következtethetünk-e ebből arra, hogy a gráfban nem létezik teljes párosítás?
Nem: megeshet, hogy a gráfban létezik teljes párosítás, de a mohó módszer
ezt nem találja meg.

10.4.1. A d ju n k p éld át olyan gráfra, am elyben van teljes p árosítás, de ha nincs


szerencsénk, akkor a mohó m ódszer ezt nem ta lá lja meg.
10.4. HOGYAN ADHATÓ MEG TELJES PÁROSÍTÁS? 181

10.4.2. Igazoljuk, h o gy ha egy G gráfban van teljes párosítás, akkor bárm elyik
m ohó párosítás lefedi G p o n tjain ak legalább a felét.

U V

10.6. ábra. Javító út egy páros gráfban. Az M párosítás éleit vastag, a P


javító út nem M-beli éleit szaggatott vonalak jelzik.

Tegyük fel tehát, hogy megadtunk egy M párosítást, amely mindazonáltal


nem teljes. Meg kell próbálnunk növelni ennek a párosításnak a méretét, még­
hozzá úgy, hogy elhagyunk belőle néhány élt, és megpróbáljuk őket többre
cserélni. De hogyan találjuk meg a lecserélendő éleket?
A következő fogást alkalmazzuk. Olyan P utat keresünk G-ben, amelyre
teljesül a következő: P végpontjai olyan u és v pontok, amelyeket az M
párosítás nem fed le, és amelyben minden második él AíT-beli (10.6. ábra).
Az ilyen utat javító útnak nevezzük. Nyilvánvaló, hogy bármelyik P javító
út páratlan számú élen halad át, és hogy eggyel több nem M-beli éle van,
mint M-beli.
Ha találunk egy P javító utat, akkor az M párosításból elhagyhatjuk a
P-beli éleket, és kicserélhetjük őket a P út M-en kívül eső éleivel. Az így
kapott M ' párosításban nyilvánvalóan eggyel több él lesz, mint M-ben. (Az,
hogy M ' párosítás, abból következik, hogy M többi éle közül egyik sem
tartalmaz P-beli pontot: P két végpontja a feltevés szerint nincs lefedve, a
belső pontokat pedig olyan Aí-beli élek fedték, amelyeket elhagytunk.) Az
eljárást mindaddig ismételhetjük, amíg egy teljes párosításhoz, vagy olyan
182 10. PÁROSÍTÁSOK

M párosításhoz jutunk, amelyhez már nem létezik javító út.


O------------------------- O

q c --------------------------------<) r?

o-----------o
10.7. ábra. Csúcsok elérése majdnem javító utakkal. Csak az útra illeszkedő
és az M-beli éleket tüntettük fel.

Két kérdés merül fel: (i) hogyan találunk meg egy javító utat (amennyiben
létezik)? és (ii) ha nem létezik javító út, akkor ez azt jelenti-e, hogy teljes
párosítás sem létezik? Kiderül, hogy az első kérdésre adott válasz alapján a
másodikra is válaszolhatunk (méghozzá igenlően).
Jelöljük 17-val az A, ÍK-vel pedig a B halmaz párosítatlan pontjait. Előbbi
megjegyzésünk szerint egy javító út páratlan számú ponton halad át, így egy
(/-beli pontot egy kh-belivel kell összekötnie. Próbáljunk keresni egy ilyen
utat, amely az U valamely pontjából indul ki. Mondjuk azt, hogy egy Q út
majdnem javító, ha egy [/-beli pontból indul, egy A-beli pontba érkezik, és
minden második éle M-beli. A majdnem javító utak páros sok élen haladnak
át, utolsó élük pedig az M halmaz eleme.
Azokat az A-beli pontokat keressük, amelyek majdnem javító úttal el­
érhetők. Egyezzünk meg abban, hogy az [/-beli pontokat is (0 hosszúságú)
majdnem javító utaknak tekintjük; U minden pontja rendelkezik ezzel a
tulajdonsággal. Az S = U halmazból kiindulva, az 5 halmaz elemeit lépé­
senként választjuk ki. Az S halmaz minden lépésben olyan pontokból fog
állni, amelyekről tudjuk, hogy egy majdnem javító úttal elérhetők. Jelöljük
T-vel a 5 halmaz elemeivel párosított S-beli pontok halmazát (10.7. ábra).
Mivel U elemei mind „párosítatlanok”, továbbá mindegyikük eleme 5-nek,
azt kapjuk, hogy
10.4. HOGYAN ADHATÓ MEG TELJES PÁROSÍTÁS? 183

Olyan élt keresünk, amely egy s 6 5 pontot egy olyan r e B ponttal


köt össze, amely nem T-beli. Legyen Q olyan majdnem javító út, amely egy
u £ U pontból s-ig halad. Két esetet kell megvizsgálnunk:

- Ha r-nek nincs párja (vagyis W eleme), akkor a Q úthoz az sr élt hoz­


závéve egy P javító utat kapunk. Ekkor M -et bővíthetjük (5-ről és T-ről
pedig megfeledkezhetünk).
- Ha r össze van párosítva egy q £ A ponttal, akkor az sr és az rq éleket
Q-hoz illesztve egy majdnem javító utat kapunk C7-ból g-ba. Ekkor q-t
hozzávehetjük 5-hez.

Ha tehát találunk egy élt, amely 5 egy pontját egy T-ben nem szereplő
ponttal köti össze, akkor vagy M -et tudjuk bővíteni, vagy (M-et változatla­
nul hagyva) az 5 halmazt. Előbb vagy utóbb előáll a következő két lehetőség
valamelyike: M teljes párosítás (és akkor meg is vagyunk), vagy M nem tel­
jes ugyan, de nincs már olyan él, amely 5 valamelyik pontját egy T -n kívül
eső ponttal köti össze.
Mit tehetünk az utóbbi esetben? Semmit sem! Ha így áll a dolog, akkor
nem létezik teljes párosítás. Valóban: az 5 halmaz valamennyi pontjának
T-beliek a szomszédai és |Tj = |5j — \U\ < |5|, ebből viszont az következik,
hogy a gráfban nincs teljes párosítás.
A 10.8. ábrán az algoritmus működését tanulmányozhatjuk: a négyzetháló
egy páros részgráfjában keresünk párosítást.
Teendőink a következők. Mindig adott számunkra egy M párosítás, va­
lamint A pontjainak egy 5 részhalmaza, amelynek elemeiről tudjuk, hogy
egy majdnem javító úttal elérhetők. Ha találunk egy élt, amely 5 valamely
pontját olyan ponttal köti össze, amellyel 5 egyik pontja sincs összekötve,
akkor vagy M , vagy 5 növelhető (nagyobb elemszámú halmazra cserélhető).
Ismételjük az eljárást mindaddig, amíg ilyen élt találunk. Ha nincs ilyen él,
akkor két eset lehetséges: M teljes párosítás, vagy egyáltalán nem létezik
teljes párosítás.

M egjegyzés. Ebben a fejezetben kizárólag páros gráfokban kerestünk páro­


sításokat. Természetesen beszélhetünk párosításokról általános (nem feltétle­
nül páros) gráfok esetében is. Belátható, hogy a 10.3.1. Tétel és az ebben az
alfejezetben bemutatott algoritmus kiterjeszthető úgy, hogy nem páros grá­
fokra is érvényben maradjon. Ezeknek a módszereknek a bemutatása azon­
ban meghaladná e könyv kereteit.

10.4.3. Kövessük nyomon a 10.9. ábrán az algoritmus működését.

10.4.4. Mutassuk meg, hogy az algoritmus a 10.3.1. Tétel egy új bizonyítását is


megadja.
10.8. ábra. (a) A gráf, amelyben teljes párosítást keresünk, (b) Induljunk ki
egy (részleges) párosításból, és jelöljük meg a párosítatlan pontokat; 3 fekete
és 3 fehér párosítatlan pont van. A szaggatott vonal egy javító utat jelöl,
(c) A javítás utáni párosítás, illetve a megmaradt párosítatlan pontok. A
szaggatott vonal itt is egy (az előzőnél jóval hosszabb) javító utat jelöl, (d)
A végső állapot: feketével jelöltük azokat a pontokat, amelyek egy majdnem
javító úttal elérhetők. Ez utóbbi pontok többen vannak, mint a szomszédaik,
a kapott párosítás ennélfogva maximális.

Á ttekintő feladatok
10.4.5. Létezik-e olyan páros gráf, amelyben a pontok fokszámai: 3, 3, 3, 3, 3, 3, 3,
3, 3, 5,6, 6? (A számok a partíció elemei között tetszőlegesen szétoszthatók.)

10.4.6. Egy páros gráfnak 16 olyan pontja van, amelynek fokszáma 5, és van
néhány 8 fokszámú pontja. Hány 8 fokszámú pontja lehet a gráfnak, ha mindegyik
a bal oldalon helyezkedik el?

10.4.7. Legyen G olyan páros gráf, amelynek két oldalán ugyanannyi pont van.
Tegyük fel, hogy a bal oldali pontok bármely nemüres A részhalmazának |A| + 1
10.4. HOGYAN ADHATÓ MEG TELJES PÁROSÍTÁS? 185

10.9. ábra. Gráf, amelyen az algoritmus kipróbálható.

szomszédja van a jobb oldalon. Igazoljuk, hogy G bármely éle kiegészíthető teljes
párosítássá.

10.4.8. Tegyük fel, hogy egy G gráf bal oldali pontjai bármely nemüres A rész­
halmazának csupán |A| —1 szomszédja van a jobb oldalon. Igazoljuk, hogy ekkor
G-ben létezik olyan párosítás, amely egy-egy kivétellel a két oldal valamennyi pont­
ját lefedi.

10.4.9. Legyen G olyan páros gráf, amelynek mindkét oldalán m pont van. Bizo­
nyítsuk be, hogy ha minden pont fokszáma nagyobb, mint m / 2, akkor a gráfban
van teljes párosítás.

10.4.10. Van-e teljes párosítás a 10.10. ábrán látható gráfban?

10.10. ábra. Selejtes sakktábla.


186 10. PÁROSÍTÁSOK

10.4.11. Rajzoljunk olyan gráfot, amelynek pontjai az {a, ö, c} halmaz részhal­


mazai, és amelyben azon pontok vannak éllel összekötve, amelyek pontosan egy
elemben térnek el egymástól.
(a) Hány pontja és hány éle van ennek a gráfnak? Tudjuk-e a nevét?
(b) Osszefüggő-e ez a gráf? Van-e benne teljes párosítás? És Hamilton-kör?

10.4.12. Rajzoljuk le azt a gráfot, amelynek pontjai az {a, b, c, d, e} halmaz kéte­


lemű részhalmazai, és amelyben két pont pontosan akkor van éllel összekötve, ha
nincs közös elemük.
(a) Mutassuk meg, hogy a Petersen-gráfot kaptuk. (7.13. ábra).
(b) Hány teljes párosítás adható meg a Petersen-gráfban?

10.4.13. (a) Hány teljes párosítás létezik egy n pontú útban? (b) Hány (nem
feltétlenül teljes) párosítás létezik egy n pontú útban? [Keressünk rekurziós össze­
függést.] (c) Hány párosítás van egy n pontú körben?

10.4.14. Melyik 2-reguláris n pontú páros gráfban van a legtöbb teljes párosítás?

10.4.15. Hány teljes párosítás van a 2n pontú létragráfban (10.11. ábra)?

10.11. ábra. A létragráf.


11. fejezet

Kombinatorika és geometria

11.1. Átlók m etszéspontjai


A cím első olvasásra meglepő lehet: mi köze van a geometriának a kombi­
natorikához? Sok olyan geometriai probléma létezik, amely kombinatorikus
módszerekkel oldható meg, de a fordított eset is előfordul, amikor kombina­
torikai feladatok megoldása során geometriai módszerekhez folyamodunk.
Tekintsünk egy n csúcsú konvex sokszöget (ra-szöget). (Egy sokszög kon­
vex, amennyiben minden szöge kisebb, mint 180°.) Tegyük fel, hogy a sok­
szög semelyik három átlója nem megy át ugyanazon a ponton. Hány met­
széspontja van a sokszög átlóinak? (A sokszög csúcsait nem tekintjük átló­
metszéspontoknak, ahogy az átlóknak a sokszögön kívül eső metszéspontjait
sem. A 11.1. ábrán a telt pont egy „jó”, az üres karika egy figyelmen kívül
hagyott metszéspontot jelöl.)

Az első, természetes módon felmerülő gondolat a következő: számoljuk


össze minden átló esetében a rajta lévő metszéspontokat, és adjuk össze eze­
ket a számokat. Kövessük ezt a módszert egy konvex hatszög (11.2. ábra)
esetében. Tekintsünk először egy olyan átlót, amely a hatszög két „másod-
188 11. KOMBINATORIKA ÉS GEOMETRIA

szomszédos” csúcsát, mondjuk A-t és C-1 köti össze. Az AC átlót valamennyi


B -bői kiinduló átló metszi, ami 3 metszéspontot jelent. Mivel összesen 6 ilyen
átló van, 6 • 3 = 18 metszéspontot számolhatunk össze.

11.2. ábra.

Vizsgáljunk most egy olyan átlót, amely a hatszög két szemközti pontját,
mondjuk A-t és D-t köti össze. Az ábráról leolvasható, hogy ezen az átlón
négy metszéspont van. Mivel 3 ilyen átló van, 3-4 = 12 további metszéspontot
találunk.
Helyes-e a következtetés, miszerint az átlómetszéspontok száma 18 +12 =
30? Óvatosabbnak kell lennünk! Az AC és a B D átló metszéspontját két­
szer számoltuk: egyszer az AC-n, másodszor a B D átlón lévő metszéspon­
tok között. Ugyanez persze bármely metszéspontra igaz: mindegyiket kétszer
vettük számításba. Az eredményt tehát el kell osztanunk 2-vel, a végső (és
helyes) válasz tehát 15 (az ábra alapján könnyen utánaszámolhatunk).
A módszert követve azonban már kis n-ek esetén is meglehetősen sok
esetet kell megvizsgálnunk, megoldásunk tehát túlságosan bonyolult, bár
tetszőleges n esetén működik (próbáljuk ki). A metszéspontok összeszám-
lálására kombinatorikai ismereteinket is hadrendbe állítva sokkal elegánsabb
megoldást is találhatunk.
Jelöljük két átló metszéspontját az átlók végpontjaival. így például az
AC és a B D átló metszéspontját A B C D jelöli, az AD és a C E átló met­
széspontját A C D E, és így tovább. Vajon jó ez a jelölés? Azaz: teljesül-e,
hogy különböző metszéspontok különböző „nevet” kapnak? A jelölés jó: az
A, B , C, D betűket ugyanis csak az A B C D konvex négyszög {AC és BD )
átlói metszéspontjának jelölésére használhatjuk. Ezen felül bármely 4 csúcs­
pont betűi egy átlómetszéspontot jelölnek, az A C E F négyes például az A E
és C F átlókét (11.3. ábra).
Az átlómetszéspontok száma tehát megegyezik a csúcsok négyelemű rész­
halmazainak számával. Ha például n = 6, akkor az átlók száma (®), amit
gyorsan kiszámíthatunk, ha felidézzük, hogy (®) = (®) = = 15. Általá­
ban: egy konvex n-szög átlói (™) pontban metszik egymást.

11.1.1. Hány átlója van egy konvex n-szögnek?


11.2. TARTOMÁNYOK ÖSSZESZÁMOLÁSA 189

11.3. ábra.

11.2. Tartományok összeszám olása


Rajzoljunk n egyenest. Az egyenesek a síkot részekre osztják. Hányra?
Az első észrevételünk az, hogy a válasz az egyenesek elhelyezkedésétől is
függ. Két párhuzamos egyenes például 3 részre osztja a síkot, ha viszont
metszik egymást, akkor 4 részt kapunk.
Rendben: tegyük fel, hogy az egyenesek között nincs két párhuzamos.
Ekkor 2 egyenes esetén mindig 4 részt kapunk. Ha azonban 3 egyenesünk
van, akkor attól függően kapunk 6, illetve 7 részt, hogy az egyenesek mind
átmennek egy ponton, vagy nem (11.4. ábra).

1 2 3

11.4. ábra.

Rendben: tegyük fel, hogy az egyenesek közül semelyik háromnak nem


ugyanaz a metszéspontja. Az Olvasó attól tarthat, hogy 4 egyenes esetében
újabb egyértelműsítő feltevésre van szükségünk, de ha rajzolunk 4 egyenest,
amelyek között nincs két párhuzamos és semelyik három nem megy át ugyan­
azon a ponton, akkor mindig 11 régiót kapunk. Valójában ugyanez a helyzet,
ha tetszőleges számú egyenest rajzolunk: a síkrészek száma mindig ugyan­
annyi lesz (ellenőrizzük ezt a 11.5. ábrán is).
Ha a síkon bizonyos egyenesek úgy helyezkednek el, hogy közülük semelyik
kettő nem párhuzamos, és semelyik három nem megy át ugyanazon a ponton,
akkor általános helyzetű egyenesekről beszélünk. Ha az egyeneseket „vélet­
lenszerűen” választjuk ki, akkor nagyon kicsi a valószínűsége annak, hogy
közülük kettő párhuzamos, vagy hogy három közülük ugyanabban a pont-
190 11. KOMBINATORIKA ÉS GEOMETRIA

11.5. ábra. Négy egyenes 11, öt egyenes 16 részre osztja a síkot.

bán metszi egymást, természetes tehát, ha feladatunkban általános helyzetű


egyenesekről beszélünk.
De ha feltesszük is, hogy n általános helyzetű egyenes mindig ugyanannyi
részre osztja a síkot, még mindig nem tudjuk, hogy hányra. Gyűjtsük össze
adatainkat egy táblázatba (amelyben rözítjük azt is, hogy 0 egyenes 1 részre,
1 egyenes pedig 2 részre osztja a síkot).

0 1 2 3 4
1 2 4 7 11

Ha a táblázatot egy ideig nézegetjük, észrevehetjük, hogy az alsó sor min­


den tagja a fölötte, illetve a tőle balra elhelyezkedő szám összege. Ez a követ­
kező szabályt sugallja: a második sor n-edik tagja n és az előző tag összege,
azaz ha adott a síkon n —1 általános helyzetű egyenes, akkor (a helyzet ál­
talánosságának megőrzésével) egy új egyenest berajzolva a síkrészek száma
n-nel növekszik.
Igazoljuk ezt az állítást. Hogyan növeli egy új egyenes a síkrészek szá­
mát? Ügy, hogy némelyiket kettévágja. A síkrészek számának növekménye
pontosan annyi, ahány síkrészt az új egyenes metsz.
Hány síkrészt metsz tehát az új egyenes? Első pillantásra a válasz nem
tűnik könnyűnek, elvégre az új egyenes - a helyzetétől függően - nagyon sok­
féleképpen metszheti a már kialakult részeket. De képzeljük csak el: ha elég
messziről indulva végigsétálunk az új egyenes mentén, akkor minden egyes
metszéspontnál új régióba lépünk át. Az új egyenes által metszett síkrészek
száma tehát 1-gyel nagyobb az új egyenesnek a többivel való metszéspont­
jainak számánál.
Az új egyenes mármost az összes többi egyenest metszi (hiszen nincs az
egyenesek között párhuzamos), és nincs közülük kettő, amelyeket ugyanab­
ban a pontban (különben lenne 3 egyenes, amelyek ugyanabban a pontban
metszik egymást). A séta során tehát n —1 metszésponton haladunk át, ami
n különböző síkrészt jelent. Ezzel beláttuk, hogy a táblázat adatai alapján
tett megfigyelésünk minden n számra igaz.
Ezzel persze még nem végeztünk, hiszen a kérdés a síkrészek számára
vonatkozott. A 0 egyenessel „keletkező” 1 régióval kezdjük, és ehhez kell
hozzáadnunk az 1, 2, 3, . . . , n számokat. Ez pedig gyerekjáték (emlékezzünk
az ifjú Gaussra):
11.2. TARTOMÁNYOK ÖSSZESZÁMOLÁSA 191

l + (l+ 2+ 3+ ...+„) = l + ^ i± l> .

Eredményünket egy tételben foglaljuk össze:

1 1 .2 .1 . T é t e l , n általános helyzetű egyenes a síkot 1 + n{n + l ) / 2 részre


osztja.

11.2.1. A 11.2.1. Tétel bizonyítása valójában az egyenesek száma szerinti indukció


volt; adjuk meg a bizonyítás lépéseit.

A 11.2.1. Tételre még egy bizonyítást adunk.


B i z o n y í t á s : Ezúttal nem indukcióval bizonyítunk, hanem megpróbáljuk a
feladatot egy már megoldott kombinatorikai feladatra visszavezetni. Ehhez
először képletünket 1 + n + (g) alakba írjuk.

11.6. ábra.

Tegyük fel, hogy az egyeneseket egy táblára rajzoljuk fel (11.6. ábra),
amely elég nagy ahhoz, hogy rajta az összes metszéspont megjelenjen. Fel­
tesszük, hogy az egyenesek egyike sem vízszintes (ha mégis ez lenne a helyzet,
a táblát kissé megdöntjük), és hogy a tábla elég széles ahhoz, hogy alsó ha­
tárvonalát mindegyik egyenes metszi. Feltesszük továbbá, hogy a tábla kissé
jobbra lejt (ha nem, akkor fordítunk rajta egy kicsit).
Tekintsük most mindegyik síkrész legalsó pontját. Minden régiónak van
egy legalsó pontja, mivel az összes régió (a táblán) véges, az őket határoló
192 11. KOMBINATORIKA ÉS GEOMETRIA

egyenesek közül pedig egyik sem vízszintes. A legalsó ilyen pont eszerint
vagy két egyenes metszéspontja, vagy egy egyenes és a tábla alsó vonalának
metszéspontja, vagy a tábla jobb alsó sarka. Minden ilyen pont valamelyik
síkrész legalacsonyabb pontja. Két egyenes metszéspontjában például négy
síkrész találkozik, a szóban forgó pont pedig közülük pontosan egynek lega­
lacsonyabb pontja.
A legalsó pontok számát tehát úgy kapjuk meg, hogy összeadjuk az egye­
nesek metszéspontjainak a számát, az egyenesek és a tábla alsó határvona­
lának a metszéspontjait, és a tábla jobb alsó sarkát. Mivel bármelyik két
egyenes metszi egymást, és ezek a metszéspontok mind különböznek (itt
használjuk ki, hogy a feladat általános helyzetű egyenesekről szól), a legalsó
pontok száma (2) + n + 1- D

11.3. Konvex sokszögek


A kombinatorikus geometria területére tett kirándulásunkat egy könnyen
felvethető, ám a mai napig megoldatlan probléma bemmutatásával fejezzük
be. Happy End-problémának is nevezik, mert a kérdést felvető Klein Eszter
és Szekeres György, aki - Erdős Pállal közösen - az első korlátot megadta,
hamarosan össze is házasodtak. Kezdjük egy feladattal.
Igazoljuk, hogy ha adott a síkon 5 pont úgy, hogy közülük semelyik há­
rom nem illeszkedik egy egyenesre, akkor található közöttük négy, ame­
lyek konvex négyszöget alkotnak.
Egy négyszög pontosan akkor konvex, ha átlói a négyszög belsejében met­
szik egymást. A 11.7. ábrán látható négyszögek közül az első konvex, a má­
sodik pedig konkáv.

11.7. ábra. Egy konvex és egy konkáv négyszög.

A következőkben sík bizonyos pontjait általános helyzetűnek nevezzük, ha


közülük semelyik három nem illeszkedik egy egyenesre.
Képzeljük el, hogy az öt (általános helyzetű) pontot egy táblán tüntet­
tük fel. Verjünk szögeket (szigorúan képzeletben) a pontokba, és húzzunk
köréjük egy gumiszalagot. A szalag egy konvex sokszöget határol, amelynek
minden csúcsa az öt pont valamelyike, az öt pont közül azok, amelyek nem
11.3. KONVEX SOKSZÖGEK 193

csúcspontok, a sokszög belsejében helyezkednek el. A sokszöget a pontok


konvex burkának nevezzük (11.8. ábra).

11.8. ábra. Síkbeli ponthalmaz konvex burka.

A konvex burok konstrukciója alapján problémánk könnyen megoldható.


Mi lehet öt pont konvex burka? Ha ötszög, akkor megvagyunk, hiszen ek­
kor az öt pont közül bármelyik négy konvex négyszöget alkot. Ha a konvex
burok négyszög, akkor ez maga a kívánt konvex négyszög. Elegendő tehát,
ha annak az esetnek a vizsgálatára szorítkozunk, amikor a konvex burok egy
háromszög. Jelöljük a háromszög csúcsait A-val, H-vel és C-vel, a fennma­
radó két pont legyen D és E. A D és az E pont a háromszög belsejében
helyezkedik el, a D-re és E -re illeszkedő egyenes így a háromszög kerüle­
tét két pontban metszi. Tegyük fel, hogy ezek a metszéspontok az A B és
az AC oldalra illeszkednek (ha nem ez a helyzet, nevezzük át a háromszög
csúcsait). Könnyen belátható, hogy ekkor a B, a C, a D és az E pont egy
konvex négyszög csúcsai (11.9. ábra).

11.9. ábra. A konvex négyszög megkeresése.

A következő állítás konvex ötszögekről szól.

A sík 9 általános helyzetű pontja közül mindig kiválasztható 5, amelyek


egy konvex ötszög csúcsai.
194 11. KOMBINATORIKA ÉS GEOMETRIA

A bizonyítás túlságosan hosszú ahhoz, hogy feladatban tűzzük ki, ettől


persze az Olvasó még bátran próbálkozhat.

11.3.1. Adjunk meg 8 pontot a síkon úgy, hogy közülük egyik semelyik 5 ne al­
kosson konvex ötszöget.

Meg lehet adni 16 pontot úgy, hogy nem lehet közülük kiválasztani 6-ot
úgy, hogy azok egy konvex hatszöget adjanak meg. Ugyanilyen tulajdonságú
17 pontot azonban még senkinek sem sikerült megadnia, a könyv írásakor
komoly - számítógépeket is csatasorba állító - projekt folyik annak bizonyí­
tására, hogy a sík 17 általános helyzetű pontja közül mindig kiválasztható
6, amelyek egy konvex hatszöget feszítenek ki. A probléma általánosítása a
következő kérdés: hány (általános helyzetű) pontot kell megadnunk ahhoz,
hogy biztosan kiválasztható legyen közülük egy konvex n - szög? Más szóval:
L e g fe lje b b h á n y á lta l á n o s h e l y z e t ű p o n t v e h e t ő f e l a s í k o n ú g y , h o g y n e
le g y e n k ö z ö t t ü k n , a m e ly k o n v e x n - s z ö g e t a lk o t?

Ha az ismert eseteket egy táblázatban tüntetjük fel, akkor nem nehéz


megsejteni a választ.

n 2 3 4 5 6
1 2 4 8 16?

(Bár az n = 2 és az n = 3 eseteket az előzőekben nem vizsgáltuk, a teljes­


ség kedvéért a táblázatban ezeket is szerepeltetjük. A ,hétszög” természete­
sen egy szakasz, amely éppúgy konvex alakzat, mint bármelyik háromszög.)
Észrevehetjük, hogy a konvex n-szöget nem tartalmazó általános helyzetű
pontok száma megkétszereződik, amint n eggyel növekszik. Természetes te­
hát a sejtés, miszerint a keresett korlát 2"~2. Ismert, hogy tetszőleges n > 1
esetén megadható a síkon 2"-2 általános helyzetű pont, amelyek közül nem
választható ki konvex n-szög. Azt azonban, hogy eggyel több pont már garan­
tálná egy konvex n-szög kiválaszthatóságát, egyelőre senkinek sem sikerült
bizonyítania.

Á ttekintő feladatok
11.3.2. Adott a síkon n > 3 általános helyzetű egyenes (semelyik kettő sem pár­
huzamos, és nincs köztük három, amelyek ugyanabban a pontban metszenék egy­
mást). Bizonyítsuk be, hogy az egyenesek által határolt síkrészek között van lega­
lább egy háromszög.

11.3.3. Hány részre osztja síkot két háromszög?

11.3.4. Hány részre osztja a síkot két négyszög, ha (a) mindkettő konvex, illetve
ha (b) nem feltétlenül konvexek?
11.3. KONVEX SOKSZÖGEK 195

11.3.5. Hány részre osztja a síkot két konvex n-szög?

11.3.6. Legalább és legfeljebb hány részre oszthatja a síkot n kör?

11.3.7. Igazoljuk, hogy a sík bármely 6 általános helyzetű pontja legalább három
konvex négyszöget határoz meg.

11.3.8. Legyen S a sík 100 olyan pontjából álló halmaz, amelyek közül semelyik
3 nem illeszkedik egy egyenesre. Bizonyítsuk be, hogy van olyan konvex sokszög,
amelynek a csúcsai mind S elemei, és amelynek belsejében (a csúcsokkal együtt)
pontosan 50 S-beli pont van.
12. fejezet

Az Euler-formula

12.1. Egy m egtám adott bolygó


A l l . fejezetben olyan problémákat vizsgáltunk, amelyek a gráfelmélet nyel­
vén is megfogalmazhatók. A sík egyenesek általi részekre bontását például
így is megfogalmazhatjuk: hány részre bontja egy síkba rajzolható gráf a
síkot? Valóban: tekintsük a megadott egyenesek metszéspontjait a gráf csú­
csainak, és a metszéspontok közötti szakaszokat a gráf éleinek. (Feledkezzünk
meg a végtelen félegyenesekről. Az egyenesekből álló halmazok és a gráfok
kapcsolatára még visszatérünk.)
A következőkben síkba rajzolható gráfokról lesz szó, vagyis olyan gráfokról,
amelyek lerajzolhatok úgy, hogy éleik ne messék egymást. Feltesszük azt is,
hogy gráfjaink összefüggőek. Az ilyen gráfok - miként egy térkép - a síkot
részekre osztják, így ezeket a részeket alkalmanként országoknak nevezzük.
Az országok egyike végtelen, a többi véges.
Egy fontos, Euler által felfedezett eredmény lehetőséget kínál arra, hogy
egy összefüggő síkbeli térkép élei és pontjai számának ismeretében megha­
tározzuk, hogy a térképen hány ország szerepel.

12.1.1. T é t e l . Országok száma + pontok száma = élek száma + 2.

B i z o n y í t á s : A bizonyítást egy kis történettel dramatizáljuk, de ez nem


megy a pontosság rovására.
Tekintsük gráfunkat egy kicsiny bolygón levő egyetlen kontinens vízrend­
szerének. A gráf élei most nem határok, hanem gátak, a pontok pedig őrtor­
nyok. Az élek által közrefogott területek ennek megfelelően nem országok,
hanem „medencék”. A legkülső „medence” a tenger, a többi - elkerített - me­
dence viszont száraz (12.1. ábra). A változat előnye, hogy megengedhetünk
„kiálló” éleket is: ezek esetünkben gátnak vagy mólónak tekintendők; ország­
határok nemigen lehetnének, elvégre a két oldalukon ugyanaz az „ország” -
azaz a tenger - fekszik.
12.1. EGY MEGTÁMADOTT BOLYGÓ 197

12.1. ábra. A gátak és az őrtornyok gráfja, amelyben 14 őrtornyot, (a tengert


is beleszámítva) 7 medencét és 19 gátat számolhatunk össze. Euler tétele
természetesen itt is érvényes: 14 + 7 = 19 + 2.

Egy napon ellenség támadja meg a szigetet, és a védők úgy döntenek,


hogy vízzel árasztják el. Arra számítanak, hogy a támadás visszaverése után
visszatérhetnek, így a lehető legkevesebb gátat rombolják csak le. A követ­
kező eljárást találják ki: egyszerre csak egy gátat rombolnak le, azt is csak
akkor, ha az egyik oldala már el van árasztva, a másik pedig száraz. Egy
ilyen gát lerombolása után a tengervíz elönt egy addig száraz medencét. A
lerombolt gáttal érintkező gátak (a gráf élei) a helyükön maradnak, elvégre
egy gát lerombolása után mindkét oldalát elönti a víz, a víz tehát minden
lépésben egyetlen újabb medencét önt el. A 12.2. ábrán a számok jelölik a
medencék elárasztásának egy lehetséges sorrendjét.

12.2. ábra. A sziget elárasztása. Hat medence elárasztásához hat gátat kell
lerombolni.
198 12. AZ EULER-FORMULA

Számoljuk össze a lerombolt és az épen hagyott gátakat. Jelöljük az őrtor­


nyok (csúcsok) számát c-vel, a gátak (élek) számát e-vel, a medencékét pedig
(amelyek közé az óceánt is beleszámítjuk) Z-lel. (Hamarosan elmondjuk, mi­
ért ezeket a betűket választottuk.) A sziget l —l medencéjének elárasztásához
pontosan l —1 gátat kell lerombolnunk.
A megmaradt gátak összeszámolásához vizsgáljuk meg, milyen gráf ma­
radt a robbantások után (12.3. ábra).

12.3. ábra. Az elárasztott sziget: a 13 épen maradt gát egy fát alkot.

Vegyük észre először is, hogy ebben a gráfban nincsenek körök, egy kör
belseje ugyanis száraz maradt volna. Másodszor, a gráf összefüggő, mivel
minden lerombolt gát egy (a robbantás következtében elöntött) kör egyik
éle, azt pedig már a 7.2.5. feladat (b) része alapján tudjuk, hogy egy össze­
függő gráf egy ilyen él eltávolítása után is összefüggő marad. Gráfunk tehát
összefüggő és nem tartalmaz kört, vagyis fa. Már tudjuk, hogy egy c pontú
fának c —1 éle van.
Összefoglalva: a védők e — 1 gátat romboltak le és c — 1 gátat hagytak
épen. Az élek száma e két szám összege: (c —1) + (l —1) = e. Az egyenletet
átrendezve:
l -f- c — c -{- 2,
ez pedig éppen az Euler-formula. □

12.1.1. Hány részre osztanak átlói egy konvex n-szöget (feltéve, hogy nincs három
olyan átló, amelyik átmegy ugyanazon a ponton)?

12.1.2. Egy kör alakú szigeten n egyenes vonalú gátat építünk tengertől tengerig
úgy, hogy bármelyik kettő metszi egymást, de nincs olyan pont, amelyben három is
metszené egymást. Az Euler-képlet segítségével határozzuk meg, hogy hány részre
osztják a gátak a szigetet. Használjuk fel a 12.4. ábrát (ugyanarra a problémára
ez már a harmadik megoldás lesz).
12.2. SÍKBA RAJZOLHATÓ GRÁFOK 199

12.4. ábra. Síkbeli gráf, amelyet n egyenes alkot.

12.2. Síkba rajzolható gráfok


Melyik gráfok rajzolhatok síkba? A kérdés nem csupán az Euler-tétel szem­
pontjából fontos, de az alkalmazott gráfelméletben - például nyomtatott
áramkörök tervezésekor - is gyakran előkerül.
Egy gráfot síkba rajzolhatónak nevezünk, ha egy síkbeli térképként is
reprezentálható, azaz lerajzolhatjuk úgy, hogy a gráf pontjai a sík különböző
pontjai, élei pedig olyan vonalak, amelyeknek (végpontjaikat leszámítva)
nincs közös pontjuk.
Vannak egyáltalán olyan gráfok, amelyeknél ezt nem tehetjük meg? Az
Euler-képlet alkalmazásával láthatjuk be a következő tételt.

12.2.1. T é t e l . A z öt pontú teljes gráf ( K5) nem rajzolható síkba.

Az állítást egy kimerítő esetszétválasztással is beláthatjuk a síkbeli vonalak


bizonyos szemléletes (és esetleg félrevezető) tulajdonságai alapján. Az Euler-
formulát felhasználva azonban egyszerű és elegáns megoldást is adhatunk.
B i z o n y í t á s : Indirekt bizonyítunk, feltesszük tehát, hogy K 5 lerajzolható
úgy, hogy semelyik két éle nem metszi egymást. (Ehhez nem mellékelünk áb­
rát, elvégre éppen azt akarjuk bizonyítani, hogy ilyen ábrát nem lehetséges
rajzolni.) Számoljuk ki, hogy hány „ország” lenne ezen a „térképen”. A gráf­
nak 5 pontja és (2) = 10 éle van, az országok száma az Euler-képlet szerint
10 + 2 —5 = 7. Mivel azonban minden országot legalább három él határol,
így lennie kell legalább — = 10, 5 élnek (azért osztottunk 2-vel, mert min­
den élt két különböző országnál is számításba vettünk). Annak feltevéséből
tehát, hogy K§ síkba rajzolható, ellentmondásra jutottunk: azt kaptuk, hogy
10 > 10, 5. Hipotézisünk tehát hamis, K$ nem rajzolható síkba. □
200 12. AZ EULER-FORMULA

Alig van érdekesebb a matematikában, mint amikor egy tételnek olyan


állítások bizonyításakor vesszük hasznát, amelyek a szóban forgó tétellel -
első pillantásra - mintha semmiféle kapcsolatban nem állnának. Gondolta
volna bárki is, hogy az 5 pontú teljes gráf síkba rajzolhatatlansága alapján
új bizonyítást kaphatunk a 11.3 alfejezet első példájára? Adott tehát a síkon
5 pont, kössük össze mindegyiket az összes többivel. így egy 5 pontú teljes
gráfot kapunk, amely nem rajzolható síkba, van tehát két olyan él, amelyek
metszik egymást. A két él végpontjai által meghatározott négyszög átlói
metszik egymást, ez a négyszög tehát konvex.
Az Euler-formula újabb alkalmazásaként választ adunk a következeő kér­
désre: hány éle lehet egy n pontú síkba rajzolható gráfnak?

1 2 .2.2. T é t e l . Egy n pontú síkba rajzolható gráfnak legfeljebb 3n —6 éle


lehet.

B i z o n y í t á s : A tételben szereplő felső korlát levezetésének gondolatmenete


nagyon hasonló a 12.2.1. Tétel bizonyításáéhoz. Tegyük fel, hogy gráfunknak
n pontja és e éle van, továbbá, hogy a síkot l részre osztja. Az Euler-formula
szerint ekkor
n + f — e + 2.
A három szám között egy másik összefüggést is felállíthatunk, ha az éleket
„tartományonként” vesszük sorra. Minden tartományt legalább 3 él határol,
ez összesen legalább 31 élt jelentene. Mivel azonban mindegyiket kétszer szá­
moltuk, az élek számának minimuma 31/2. Eszerint tehát l < |e , amit az
Euler-formulával kombinálva az
2
e + 2 = n + t < n - | - —e,
O

átrendezés után pedig az e < 3n —6 egyenlőtlenséget kapjuk. □

12.2.1. Síkba rajzolható-e az a gráf, amelyet A5-ből az egyik él elhagyásával ka­


punk?

12.2.2. Van három ház és három kút. Lehetséges-e úgy berajzolni a házakat és a
kutakat összekötő utakat, hogy minden ház minden kúttal össze legyen kötve, és
egyik út se messe a másikat? (Az utak nem feltétlenül egyenesek.)

12.3. Az Euler-formula poliéderekre


Adósak vagyunk még annak magyarázatával, hogy miért jelöltük az „orszá­
gok” (tartományok) számát Z-lel. Ez a betű a lap szó kezdőbetűje. Amikor
Euler a képletét próbálta felírni, poliédereket vizsgált: olyan testeket, ame­
lyeknek minden lapja egy sokszög. A kocka, a gúlák és a hasábok például
12.3. AZ EULER-FORMULA POLIÉDEREKRE 201

Poliéder csúcsok élek lapok


kocka 8 12 6
tetraéder 4 6 4
háromszög alapú hasáb 6 9 5
ötszög alapú hasáb 10 15 7
ötszög alapú gúla 6 10 6
dodekaéder 20 30 12
ikozaéder 12 30 20

12.1. táblázat.

mind poliéderek. Számoljuk össze néhány poliéder csúcsait, éleit és lapjait


(12.1. táblázat).
(Az Olvasó, aki még nem találkozott dodekaéderrel vagy ikozaéderrel, a
12.5. ábrán veheti őket szemügyre. Az előbbi lapjai szabályos ötszögek, a
másodikat egyenlő oldalú háromszögek határolják.)

12.5. ábra. Két szabályos poliéder: a dodekaéder és az ikozaéder.

A számokat vizsgálgatva rájöhetünk, hogy a következő összefüggés minden


esetben teljesül:
lapok száma + csúcsok száma = élek száma + 2.
Ez pedig majdnem ugyanaz, mint az Euler-képlet, annyi csupán a különb­
ség, hogy a pontok helyett csúcsokról, országok helyett pedig lapokról be­
szélünk. Ez a hasonlóság természetesen nem a véletlen műve: a poliéderekre
vonatkozó képletet könnyen megkaphatjuk a síkgráfokra érvényes összefüg­
gésből. Képzeljük azt, hogy poliéderünk gumiból készült. Vágjunk valame­
lyik lapján egy lyukat, és fújjuk fel, mint egy léggömböt. A jól ismert testek
- például a kocka vagy a hasábok - ilyen módon egytől-egyig gömbbé fúvód­
nak. Nem árt azonban az óvatosság: a 12.6. ábrán látható képkeret például
nem gömbbé, hanem tórusszá (egy úszógumi szerű testté) fúvódik, a fenti
képlet viszont csak gömbbé fúvódó testekre érvényes. (A képlet azért így is
elég általános: minden konvex test gömbbé fúvódik.) A kapott (képzeletbeli)
202 12. AZ EULER-FORMULA

gömböt a lyukas lapjánál húzzuk szét, amíg síkba kiteríthetővé nem válik.
Erre az eredeti test éleit berajzolva egy síkbeli térképet kapunk, amelyen a
határok a test élei, az országok pedig a test lapjai. A térképekre vonatkozó
Euler-formula ekkor éppen a poliéderekre vonatkozó Euler-formulát adja.
(Az összefüggést maga Euler is poliéderekre bizonyította be.)

12.6. ábra. Konkáv poliéder, amely tórusszá fújható.

Á ttekintő feladatok
12.3.1. Síkba rajzolható-e a 6 élből álló kör komplemense?

12.3.2. Rajzoljuk be egy szabályos hatszög három leghosszabb átlóját. Síkba raj­
zolható gráfot kapunk?

12.3.3. Igaz-e az Euler-formula a 12.6. ábrán látható képkeretre?

12.3.4. Bizonyítsuk be, hogy ha egy n pontú páros gráf síkba rajzolható, akkor
legfeljebb 2n —4 éle van.

12.3.5. Az Euler-formula alapján igazoljuk, hogy a Petersen-gráf nem rajzolható


síkba.

12.3.6. Bizonyítsuk be, hogy ha egy konvex poliéder minden lapja öt- vagy hat­
szög, akkor a hatszögek száma 12.

12.3.7. Tekintsünk egy poliédert, amelynek legalább 5 csúcsa van, és amelyben


minden csúcs fokszáma 3. Igazoljuk, hogy ha a poliédernek n csúcsa van, akkor
éleinek száma legfeljebb 5(n —2)/3.
13. fejezet

Térképek és gráfok színezése

13.1. Tartományok színezése két színnel


Rajzoljunk a síkon néhány (mondjuk n) kört. A körök a síkot tartományokra
osztják; a 13.1. ábrán azt tanulmányozhatjuk, hogy néhány kör két színnel
„felváltva” nagyon csinosan kiszínezhető. Felmerül a kérdés: vajon minden
ilyen ábra kiszínezhető két színnel? Belátjuk, hogy a válasz: igen. Pontosab­
ban a következőről van szó:
13.1.1. T é t e l . A z n kör által meghatározott tartományok kiszínezhetők
kékkel és pirossal úgy, hogy bármely két szomszédos tartomány színe külön­
bözzön.

(Ha két tartomány egy - vagy több - pontban érintkezik, akkor ugyanolyan
színűek is lehetnek.)

13.1. ábra. Körök által adott tartományok színezése két színnel.


204 13. TÉRKÉPEK ÉS GRÁFOK SZÍNEZÉSE

Mindenekelőtt győződjünk meg arról, hogy a tétel „közvetlen-egyszerű”


módon nem bizonyítható be. Ha a legkülső régió - mondjuk kékre - színezé­
sével kezdenénk, akkor a vele szomszédos régiókat mind pirosra kellene fes­
tenünk. Előfordulhat-e, hogy az utóbbi régiók között akad két szomszédos?
Talán egy ügyes ábra alapján beláthatjuk, hogy ez nem fordulhat elő, ez­
után azonban ugyanezt a következő - kék színű - tartományokra is be kel­
lene látnunk - és így tovább... ez pedig alaposan elbonyolítaná a bizonyítást!
Jobb megközelítésre lenne szükségünk, és szerencsénk van: létezik jobb
megközelítés.

B i z o n y í t á s : A z állítást n szerinti indukcióval bizonyítjuk. Ha n — 1, akkor


mindössze két tartományunk van, ezek pedig nyilvánvalóan kiszínezhetők két
színnel. Legyen tehát n > 1. Válasszuk ki az egyik - mondjuk C-vel jelölt -
kört, és feledkezzünk meg róla egy pillanatra. Feltehetjük, hogy a megmaradt
n —1 kör kiszínezhető két színnel úgy, hogy a közös határvonallal rendelkező
tartományok különböző színűek (esetünkben ez az indukciós feltevés).
Most visszahelyezzük az „elfelejtett” C kört, és megváltoztatjuk a színe­
zést. A C körön kívüli tartományokat változatlanul hagyjuk, C-n belül pedig
a kék tartományokat pirosra, a pirosakat pedig kékre festjük át (13.2. ábra).

13.2. ábra. Az új kör és az új színezés.

Könnyen belátható, hogy az új színezés is megfelel a követelményeknek.


Vegyünk szemügyre ugyanis egy tetszőleges határvonal-részletét. Ha ez a
körív C-n kívül helyezkedik el, akkor két oldalán (az indukciós feltevés sze­
rint) különböző színűek a tartományok. Ha az ív C belsejében helyezkedik
el, akkor szintén különböző színű tartományokat választ el egymástól, ezek
ugyanis eredetileg is különböző színűek voltak, amin a színcsere sem változ­
tatott. Végül, ha az ív C-hez tartozik, akkor a két oldalán C visszahelyezése
előtt ugyanolyan színű tartományok helyezkedtek el. Ezek közül azonban
pontosan az egyik a kör belsejébe esik, ez pedig „színt váltott”, míg a másik
(a külső) nem változott, az átszínezés után tehát különböző színűek lettek.
13.2. GRÁF SZÍNEZÉSE KÉT SZÍNNEL 205

Beláttuk tehát, hogy ha n — 1 kör által meghatározott síkrészek kiszí­


nezhetők két színnel, akkor n kör esetében is ugyanaz a helyzet. A teljes
indukció elve alapján ezzel a tétel bizonyítása teljessé vált. □

13.3. ábra. Milyen a színű a kérdőjeles tartomány?

13.1.1. Tegyük fel, hogy a külső tartomány kék színű. Ekkor tetszőleges R tar­
tomány színét a teljes ábra kiszínezése nélkül is megállapíthatjuk a következők
szerint:
- ha R páros számú kör belsejében helyezkedik el, akkor kék,
- ha pedig páratlan számú kör belsejében helyezkedik el, akkor piros.
Bizonyítsuk be, hogy ez valóban így van (lásd a 13.3. ábrát).

13.1.2. (a) Igazoljuk, hogy a sík n egyenese által meghatározott tartományok


kiszínezhetők két színnel.
(b) Adjunk meg egy módszert egy tetszőlegesen kijelölt tartomány színének
megállapítására.

13.2. Gráf színezése két színnel


János bácsinak hat gyereke van, akik között a testvéri szeretet sajátosan
nyilvánul meg. Cili állandóan veszekszik Bécivel, Ferivel és Emmával, Emma
(Cilin kívül) Anikóval és Danival, Anikó pedig Bécivel rúgja össze (rendsze­
resen) a port. János bácsi úgy szeretné a gyerekeket két szobában elhelyezni,
hogy mindegyik ellenérdekelt pár tagjai külön szobába kerüljenek. Sikerülhet
ez neki?
Miként a 7. fejezetben, a megoldás egyszerűbb, ha a rendelkezésünkre álló
információkat egy rajzon szemléltetjük. Adjuk meg a testvérek „veszekedési
gráfját”. Minden gyereknek megfeleltetjük a gráf egy pontját, és azokat a
pontokat kötjük össze, amelyek az egymással állandóan veszekedő feleket
206 13. TÉRKÉPEK ÉS GRÁFOK SZÍNEZÉSE

jelölik. Az eredményt a 13.4. ábra (a) része mutatja. János bácsi feladata az,
hogy a pontokat két részre ossza úgy, hogy a veszekedő párokat szétválassza.
Egy lehetséges megoldást az ábra (b) részén láthatunk.

13.4. ábra. János bácsi gyerekeinek „veszekedési gráfja”; két szobában való
elhelyezésük és ennek kapcsolata a két színnel való színezéssel.

A gráf újrarajzolása helyett a gyerekek elhelyezését úgy is jelölhetjük,


hogy a megfelelő pontokat fekete, illetve fehér színnel tüntetjük fel. A szí­
nezés alapszabálya, hogy a szomszédos pontoknak különböző színűnek kell
lenniük. A 13.4. ábra (c) részén egy ilyen „színezést” tanulmányozhatunk.
János bácsinak nincs más teendője, mint hogy a fehér ponttal jelzett gye­
rekeket az egyik, a fekete ponttal reprezentáltakat pedig a másik szobában
helyezze el.
A 13.4. ábra (b) részét megvizsgálva rájöhetünk, hogy ilyen gráffal már
találkoztunk: ezek voltak a páros gráfok, vagyis amelyeknek pontjai két részre
oszthatók úgy, hogy valamennyi él a két rész között halad.
A körök által meghatározott tartományok színezésének az előző alfeje-
zetben tárgyalt problémája szintén megfogalmazható olyan problémaként,
amely egy gráf két színnel való színezésével kapcsolatos. A tartományokat
egy gráf pontjainak feleltetjük meg, amelyben két pont között pontosan ak­
kor halad él, ha a megfelelő tartományok szomszédosak (ha két régió csupán
egy pontban találkozik, az nem számít szomszédságnak).
Melyek azok a gráfok, amelyek két színnel kiszínezhetők (más szóval: páro­
sak)? Nyilvánvaló, hogy az izolált pontokból álló gráfok színezéséhez egyetlen
szín is elegendő. Ha a gráfban van legalább egy él, akkor egy szín már nem
elég. A háromszög - vagyis a három pontú teljes gráf - kiszínezéséhez már
három szín szükségeltetik. Az is nyilvánvaló, hogy minden olyan gráf szí­
nezéséhez, amelynek van háromszög részgráfja, legalább három színre van
szükségünk.
Előfordulhat az is, hogy egy gráfban nincs háromszög, mégsem lehet két
színnel kiszínezni. Egy ötszög is jó példa: könnyen ellenőrizhetjük, hogy akár­
hogy színezzük ki a pontokat két színnel, mindig lesz két, azonos színű szom­
szédos pont. A megfigyelést könnyen általánosíthatjuk tetszőleges páratlan
hosszúságú körre: ha a színezést - mondjuk - feketével kezdjük, akkor a kö­
13.2. GRÁF SZÍNEZÉSE KÉT SZÍNNEL 207

vetkező pontnak fehérnek, a harmadiknak újra feketének kell lennie, és így


tovább. Mivel azonban a kört páratlan számú pont alkotja, az utolsó pont
ugyanolyan színű lesz, mint az első - márpedig ezek szomszédosak.
Ha tehát egy gráfban van páratlan pontból álló kör, akkor nem színez­
hető ki két színnel. A következő tétel szerint ez a szükséges feltétel egyúttal
elégséges is:

13.2.1. T é t e l . Egy gráf pontosan akkor színezhető ki két színnel, ha nem


tartalmaz páratlan hosszúságú kört.

B i z o n y í t á s : Már láttuk, hogy a feltétel valóban szükséges. Az elégséges­


ség igazolásához tegyük fel, hogy gráfunkban nincs páratlan hosszúságú kör.
Jelöljük ki a gráf egy tetszőleges a pontját, és színezzük feketére. Színez­
zük ezután a minden szomszédját fehérre. Az a pont szomszédjai között
nincsenek szomszédosak, ha lennének, akkor háromszöget kapnánk. Ezután
színezzük ez utóbbi pontok minden - eddig ki nem színezett - szomszédját
feketére. Be kell bizonyítanunk, hogy nincs olyan él, amely két fekete pon­
tot köt össze. Az a pont és az újonnan berajzolt fekete pontok között nem
halad él, mivel az utóbbiak nem szomszédjai a-nak. Az újonnan feketére fes­
tett pontok között sem haladhat él, így ugyanis vagy 3, vagy 5 hosszúságú
kör jönne létre. Ha a gráf összefüggő, akkor az eljárást folytatva valamennyi
pontot kiszínezhetjük két színnel.
Könnyen belátható, hogy két azonos színű pont között nem haladhat él.
Indirekt bizonyítunk: tegyük fel tehát, hogy az u és v szomszédos pontok
(mondjuk) egyaránt feketék. Az u pont szomszédjai között van olyan u\,
amelyet az u-t megelőző körben színeztünk ki (így nyilván fehér), ui-nek van
olyan u2 szomszédja, amelyet ezt megelőzőleg (és így feketére) színeztünk ki.
Az eljárást folytatva olyan P utat kapunk, amely u-ból az a kezdőpontba
vezet. Hasonlóan kaphatunk egy a u-ből az a kezdőpontba vezető Q utat. Ha
most u-ből elindulunk Q-n, addig megyünk, amíg először el nem érjük P-1,
ezután P -t követjük it-ig, végül az uv élen haladunk, akkor egy kört kapunk.
Mivel u-ból indulva a kör mentén haladva a pontok színe váltakozik, u és
v viszont egyaránt fekete, a kör páratlan számú élből kell hogy álljon - ez
pedig ellentmond a feltételünknek (13.5. ábra).
Ha a gráf összefüggő, akkor meg is vagyunk, hiszen minden pontját kiszí­
neztük. Ha a gráf nem összefüggő, akkor az eljárást hajtsuk végre mindegyik
összefüggő komponensen, így nyilvánvalóan a gráf egy „jó” színezését kapjuk.
Ezzel a 13.2.1. Tétel bizonyítása teljessé vált. □
Érdemes megjegyezni, hogy a bizonyításban az első pont kiszínezése után
a kezünk már meg volt kötve: a kezdőpontot tartalmazó összefüggő kom­
ponens színezését csak egyféleképpen folytathattuk. Vagyis amellett, hogy
beláttuk a 13.2.1. Tételt, egyúttal egy algoritmust is megadtunk, amely
megadja a megfelelő színezést (amennyiben létezik, ha ilyen nincs, akkor
az algoritmust követve találhatunk egy páratlan kört).
208 13. TÉRKÉPEK ÉS GRÁFOK SZÍNEZÉSE

13.5. ábra. A rossz színezés páratlan hosszú körhöz vezet.

13.2.1. Bizonyítsuk be, hogy egy körrendszer által meghatározott tartományok


gráfjában nincs páratlan hosszúságú kör!

13.3. Gráfok színezése több színnel


Ha egy gráfot nem sikerül 2 színnel kiszínezni, megpróbálhatjuk többel.
(A szabály most is ugyanaz: a szomszédos pontoknak különböző színűnek
kell lenniük.) Ha elég sok színünk van, akkor megtehetjük például, hogy a
gráf minden pontját más színűre festjük. Ha a gráfnak n pontja van, akkor
n szín nyilván mindig elegendő. Az is nyilvánvaló, hogy teljes n pontú gráf
esetén kevesebb színnel nem is oldhatjuk meg a feladatot, ekkor ugyanis se­
melyik két pont nem lehet ugyanolyan színű (idézzük csak emlékezetünkbe
a skatulyaelvet).
Ha egy gráf k színnel kiszínezhető, k —1 színnel azonban nem, akkor k-t
a gráf kromatikus számának nevezzük.
Tegyük fel, hogy csupán 3 szín áll rendelkezésünkre. Eldönthetjük-e, hogy
egy adott gráf esetében valóban elég három szín? Kiderül, hogy a kettőről a
háromra való lépés a bonyolultság tekintetében igazi ugrás.
Megpróbálkozhatunk a 2 szín esetében bevált módszerrel. Legyen a három
színünk piros, kék és zöld. Kezdjük egy tetszőlegesen kiválasztott a ponttal,
és színezzük pirosra. Ezt az általánosság csorbítása nélkül megtehetjük, el­
végre a három szín teljesen egyenrangú. Vegyük ezután az a pont egy b
szomszédját, és színezzük kékre (az általánosság persze most sem sérül).
Most tekintsük az a egy másik szomszédját, legyen ez c. Ha a c pont 6-vel
is szomszédos, akkor csak zöld lehet, ha nem, akkor két lehetőségünk van:
vagy kékre színezzük, vagy zöldre. Ez a két lehetőség azonban nem megy
egyre: nem mindegy, hogy b és c azonos színűek, vagy nem. Mindenesetre
döntenünk kell, ezután pedig folytathatjuk az eljárást. A következő lépés­
ben megint döntenünk kell, és így tovább. Ha valamikor megakadunk, akkor
vissza kell mennünk, és valamelyik döntésünket felül kell bírálnunk. Ha a
13.3. GRÁFOK SZÍNEZÉSE TÖBB SZÍNNEL 209

gráf kiszínezhető három színnel, akkor előbb vagy utóbb meg is találunk egy
ilyen színezést.
A sok visszatérés azonban sok időbe telhet. Anélkül, hogy a részletek szi­
gorú vizsgálatába belemerülnénk, megjegyezzük: előfordulhat, hogy a pontok
egy jelentős része (mondjuk a fele) esetében meg kell vizsgálnunk mindkét
lehetőséget, ez pedig 2n/ 2 időbe telik (egy felülvizsgálatot egy egységnyi idő­
tartam nak tekintve). Korábban már láttuk, hogy ez a szám már viszonylag
kis n-ek esetében is csillagászati nagyságú.
A bonyolultságbeli ugrás nem csupán abban jelentkezik, hogy az eljárás
hosszú ideig tarthat. Az igazi probléma az, hogy hatékonyabb eljárást egyál­
talán nem ismerünk! Vannak olyan bonyolultságelméleti eredmények (1. a 15.
fejezetet), amelyek szerint ez a helyzet lényegesen nem is fog megváltozni. A
probléma tetszőleges k szín esetében hasonló (ahol természetesen k > 2).
Tegyük fel, hogy van egy gráfunk, amelyet mindenképpen ki kellene szí­
neznünk k színnel. Léteznek legalább olyan speciális esetek, amelyekben el­
dönthetjük, hogy kecsegtet-e sikerrel, ha megpróbálkozunk? A következő,
Brookstól származó tétel erre ad választ.

13.3.1. T é t e l . Ha egy gráf egyik pontjának fokszáma sem nagyobb, mint


d, akkor a gráf kiszínezhető d + 1 színnel.

A tételbeli feltétel természetesen nem szükséges, csupán elégséges: vannak


olyan gráfok, amelyekben néhány - vagy akár az összes - pont fokszáma igen
nagy, mégis kiszínezhetők két színnel.
B i z o n y í t á s : A tételt indukcióval bizonyítjuk. Vizsgáljunk először kicsi grá­
fokat. Ha egy gráfnak d+ 1-nél kevesebb pontja van, akkor minden bizonnyal
kiszínezhető d + 1 színnel (kevesebbel is), hiszen ekkor megtehetjük, hogy
minden pontot más-más színűre festünk. Tegyük fel most, hogy az állítás
minden n-nél kisebb pontszámú gráfra igaz. Tekintsünk egy n pontú G grá­
fot, és ennek egy v pontját. Hagyjuk el G-ből a v pontot az összes olyan
éllel együtt, amelynek v az egyik végpontja. Az így kapott G' gráfnak n —1
pontja van, és egyik pontjának fokszáma sem lehet d-nél nagyobb (az élek
elhagyása csak csökkenthétté a fokszámokat), az indukciós feltevés szerint
így G' kiszínezhető d + 1 színnel. Mivel u-nek legfeljebb d szomszédja van,
a rendelkezésünkre álló színek száma viszont d + 1, lennie kell olyan szín­
nek, amely nem fordul elő a v szomszédjai alkotta palettán. Ha v-t ezzel a
színnel festjük be, akkor G egy „jó” színezését kapjuk. Ezzel az indukciós
bizonyításunk teljessé vált. □
Brooks valójában ennél többet bizonyított be: néhány egyszerű kivételtől
eltekintve az is igaz, hogy azok a gráfok, amelyekben egyik pont fokszáma
sem nagyobb d-nél, d színnel is kiszínezhetők. A kivételek a következők. A
d = 2 esetben azok a gráfok, amelyeknek egyik összefüggő komponense egy
páratlan hosszúságú kör: a d > 2 esetekben azok a gráfok, amelyeknek va­
lamelyik összefüggő komponense d + 1 pontú teljes gráf. Annak bizonyítása,
210 13. TÉRKÉPEK ÉS GRÁFOK SZÍNEZÉSE

hogy az ilyen gráfok kiszínezéséhez valóban szükség van d+ 1 színre, meglehe­


tősen egyszerű, azt viszont már sokkal nehezebb igazolni (ebben a könyvben
nem is fogjuk), hogy velük valamennyi kivételt kimerítettük.
Visszatérve a k színnel való gráfszínezés problémájához, tegyük fel, hogy
gráfunkra Brooks tétele nem alkalmazható, és véletlenszerű próbálkozásaink
is rendre kudarcot vallottak. Hogyan bizonyosodhatnánk meg arról, hogy a
feladat nem oldható meg? Ha szerencsénk van, találunk a gráf részgráfjai
között egy k + 1 pontú teljes gráfot. Ennek a részgráfnak a kiszínezéséhez
nyilvánvalóan legalább k + 1 színre van szükségünk.
A helyzet azonban sajnos az, hogy tetszőleges k esetén léteznek olyan grá­
fok, amelyekben nincs ilyen részgráf, de mégsem színezhetők ki k színnel. A
13.6. ábrán olyan gráfokat tanulmányozhatunk, amelynek részgráfjai között
nincs 4 pontú teljes gráf, mégsem színezhető ki 3 színnel (13.3.1. feladat).
Ezzel a szomorú megjegyzéssel búcsút is intünk az általános gráfszínezés
problémakörének.

13.6. ábra. Két gráf, amely nem színezhető ki 3 színnel.

13.3.1. Igazoljuk, hogy a 1.3.6. ábrán látható gráfok nem színezhetők ki 3 színnel.

13.3.2. Rajzoljunk n egyenest a síkon úgy, hogy közülük semelyik három ne men­
jen át ugyanazon a ponton. Bizonyítsuk be, hogy az egyenesek metszéspontjai ki­
színezhetők 3 színnel úgy, hogy a szomszédos pontok minden egyenesen különböző
színűek.

13.3.3. Legyen G olyan összefüggő gráf, amelyben egy kivétellel minden pont
fokszáma legfeljebb d (azaz legfeljebb egy d-nél nagyobb fokszámú pont lehet).
Igazoljuk, hogy a gráf kiszínezhető d + 1 színnel.

13.3.4. Igazoljuk, hogy ha G minden részgráfjának van olyan pontja, amelynek


fokszáma legfeljebb d, akkor G kiszínezhető d + 1 színnel.
13.4. TÉRKÉPSZÍNEZÉS ÉS A NÉGYSZÍNTÉTEL 211

13.7. ábra. Négy szomszédos ország

13.4. Térképszínezés és a négyszíntétel


A fejezetet azzal kezdtük, hogy kiszíneztük a sík olyan tartományait, ame­
lyek körök rajzolásakor keletkeztek. Mikor van szükségünk arra, hogy sík­
tartományokat színezzünk ki? A probléma természetes módon merül fel a
térképészetben: az egymással szomszédos országoknak különböző színűnek
kell lenniük. A körös példa egyik tanulsága az volt, hogy bizonyos esetekben
(például ha a határokat körök jelölik ki), a „jó” színezéshez akár két szín
is elegendő lehet. A valódi térképek ennél bonyolultabbak, nem meglepő te­
hát, hogy a térképszínezéshez általában kettőnél több színre van szükségünk.
Könnyen rajzolhatunk négy olyan országot, amelyek közül bármelyik kettő­
nek van közös határa (13.7. ábra), kiszínezésükhöz ennélfogva négy színre
van szükségünk.
Tekintsünk most egy „igazi” térképet: az USA (észak-amerikai) tagálla­
mainak térképét. Feltesszük, hogy minden „ország” (tagállam) összefüggő,
vagyis egyetlen részből áll. Az iskolai atlaszokban általában hat színt hasz­
nálnak, bár - miként az a 13.8. ábrából kiderül - négy szín is elegendő.
Elég lenne vajon három szín is? Könnyen bebizonyíthatjuk, hogy nem.
Próbáljuk például kiszínezni a térképet három színnel, mondjuk pirossal,
kékkel és sárgával (mindegy, melyikkel kezdjük), Belátjuk, hogy előbb vagy
utóbb elakadunk. Kezdjük például Nevada pirosra színezésével. A Nevadával
szomszédos államok ekkor csak kékek vagy sárgák lehetnek. Legyen Kalifor­
nia kék (az általánosság ettől még nem csorbul). Az óramutató járásával
egyező irányban haladva, a következő szomszédos állam Oregon, amely -
Nevadával és Kaliforniával is szomszédos lévén - csak sárga lehet. A soron
következő Idahónak kéknek, Utahnak pedig sárgának kell lennie. Arizoná­
nál azonban elakadunk: szomszédjai között van már piros, kék és sárga is,
kiszínezéséhez tehát egy negyedik színre is szükségünk van (13.8. ábra).
Nem véletlen, hogy mindkét esetben szükségünk volt négy színre, de több­
re már nem. A gráfelmélet egy nevezetes tétele szerint minden síkba rajzol­
ható gráf kiszínezhető' négy színnel.
A tétel története a 19. században kezdődött: 1852-ben vetette fel Francis
Guthrie angol matematikus. Néhány évtizeden át a matematikusok szórakoz-
212 13. TÉRKÉPEK ÉS GRÁFOK SZÍNEZÉSE

13.8. ábra. Az USA tagállamainak kiszínezése.

tató kis fejtörőnek tekintették, mígnem - az 1870-es években - nyilvánvalóvá


vált, hogy a bizonyítás nem éppen egyszerű. 1879-ben Alfréd Kempe publi­
kált egy hibás bizonyítást, ezt követően - amíg a hibát föl nem fedezték -
a problémát egy bő évtizeden keresztül elintézettnek tekintették. 1886-ban
például a Clifton College hallgatóinak tűzték ki azzal, hogy a megoldás nem
haladhatja meg az egy oldalt (vagyis a 30 kézzel írt sort), és hozzá legfeljebb
egy oldalnyi ábra mellékelhető. (A 90 évvel későbbi megoldás részét képező
számítógépes programok lefuttatásához több mint 1000 órára volt szükség!)
Kempe biznyításának elvetése után több mint egy évszázadon keresztül
próbálkoztak a matematikusok - hivatásosok és amatőrök egyaránt-, de a
négyszínsejtés ellenállt. Az eltelt idő alatt több bizonyítás is megjelent, de
mindegyik hibásnak bizonyult.
A négyszínsejtés megoldására tett kísérletek a matematika egy teljesen új
területének, a gráfelméletnek a kialakulásához vezettek. Az események végül
1976-ban megdöbbentő fordulatot vettek: Kenneth Appel és Wolfgang Ha­
ken bebizonyították a négyszínsejtést (amelyet ettől kezdve négyszíntételként
emlegetünk), de bizonyításuk - a rendkívül nagy számú eset ellenőrzéséhez
- erősen támaszkodott számítógépekre. A számítógépek használatát a mai
napig sem sikerült kiküszöbölni, bár a bizonyítás ma már gyorsabb, mint
az első (részben a gyorsabb számítógépek, részben a hatékonyabb esetszét­
választás miatt). A tételre „tisztán” matematikai bizonyítást eddig senkinek
sem sikerült adnia.
A négyszíntétel bizonyítása messze túl esik könyvünk keretein, be tudjuk
azonban bizonyítani azt a gyengébb állítást, amely szerint öt szín bármely
síkba rajzolható gráf színezéséhez elegendő.
13.4. TÉRKÉPSZÍNEZÉS ÉS A NÉGYSZÍNTÉTEL 213

A feladatot a gráfok nyelvére fordítjuk. Minden ország belsejében jelöl­


jünk ki egy pontot, és nevezzük el a szóban forgó ország fővárosának. Ha két
országnak van közös határa, akkor fővárosaikat kössük össze olyan vasútvo­
nallal, amely harmadik országot nem érint, és a két ország határát mindössze
egy pontban metszi. Megköveteljük továbbá, hogy a vasútvonalak - a fővá­
rosokon kívül - ne találkozzanak. A fővárosok és a vasútvonalak ekkor egy
síkba rajzolható gráfot határoznak meg, ezt a gráfot nevezzük a térkép duális
gráfjának (13.9. ábra).

13.9. ábra. Gráf és duálisa.

A pontosság kedvéért jegyezzük meg, hogy két ország között a határvonal


meg is szakadhat. (Oroszország és Kína határvonala például két szakaszból
áll, ezeket Mongólia választja el egymástól). A színezések szempontjából a
fővárosokat az ilyen esetekben is csak egy vasútvonallal kötjük össze, amely
a közös határvonalak bármelyikét metszheti.
Az ábrán egy másik gráf is látható, amelyet maguk az országhatárok jelöl­
nek ki. Ennek a gráfnak a pontjai azok a „háromszögek”, amelyekben három
vagy több ország találkozik. De vigyázzunk: előfordulhat, hogy ebben a „gráf­
ban” ugyanazt a két pontot kettő vagy több él köti össze. Ebben a példában
tehát igazából multigráfokat kell használnunk, ha a szituációt kimerítően
akarjuk leírni. Ezzel azonban nem foglalkozunk: figyelmünket a síkbeli tér­
képre és ennek duális gráfjára korlátozzuk.
A térkép színezése helyett tehát foglalkozhatunk a duális gráf színezé­
sével is. A színezés alapszabálya, hogy a szomszédos pontoknak különböző
színűnek kell lenniük. (Ez tehát pontosan az a gráfszínezés, amellyel a 13.3.
alfejezetben foglalkoztunk.) A négyszíntételt tehát a következő formában is
kimondhatjuk:

13.4.1. T é t e l . Minden síkba rajzolható gráf kiszínezhető négy színnel.


Szerényebb célunk az ötszíntétel bizonyítása:

13.4.2. T é t e l . Minden síkba rajzolható gráf kiszínezhető öt színnel.


214 13. TÉRKÉPEK ÉS GRÁFOK SZÍNEZÉSE

Kezdjük egy még szerényebb állítással:


Minden síkba rajzolható gráf kiszínezhető' hat színnel.
(Hét vagy nyolc színnel az állítás szerényebb lenne ugyan, de bizonyítása
nem lenne egyszerűbb.)
Tekintsük át, mit tudunk a gráfszínezésről. Ismerünk-e olyan feltételt,
amely garantálná, hogy egy gráf hat színnel kiszínezhető? Egy ilyen feltételt
Brooks tételéből (13.3.1. Tétel) ismerünk: a gráf egyik pontjának fokszáma
sem lehet 5-nél nagyobb. Ez azonban esetünkben nem alkalmazható, hiszen
egy térkép duális gráfjának minden további nélkül lehet 5-nél nagyobb fok­
számú pontja (a 13.9. ábrán látható duális gráfnak például 7 fokszámú pontja
is van). Ha azonban az Olvasó megoldotta a feladatokat, akkor tudja, hogy
igazából nincs szükségünk arra, hogy a gráf egyetlen pontjának a fokszáma
sem legyen 5-nél nagyobb: a 13.3.1. Tétel bizonyításában leírt eljárás akkor
is működik, ha a gráfnak legalább egy olyan pontja van, amelynek fokszáma
legfeljebb 5, és ez a gráf minden részgráfjára is áll (13.3.4. feladat). Vajon
ennek a feltételnek már hasznát vehetjük? A válasz: igen.

1 3 .4.3 L e m m a . Minden síkba rajzolható gráfnak van olyan pontja, amely­


nek fokszáma nem nagyobb 5-nél.

B i z o n y í t á s : A z állítás az Euler-formula következménye. Valójában csak az


Euler-formula egyik következményére, a 12.2.2. Tételre kell hivatkoznunk,
amely szerint egy n pontú síkba rajzolható gráfnak legfeljebb 3n —6 éle lehet.
Tegyük fel tehát, hogy gráfunk nem tesz eleget a lemma feltételének, azaz
minden pontjának fokszáma legalább 6. Ekkor a gráf éleinek száma legalább
3n (minden pontban legalább 6 élt számolhatunk össze, de ekkor persze
mindegyiket kétszer vesszük figyelembe), ez pedig ellentmond a 12.2.2. Tétel
állításának. □
Mivel egy síkba rajzolható gráf minden részgráfja síkba rajzolható, a
13.3.4. feladatot valóban alkalmazhatjuk. Ezzel tehát beláttuk, hogy 6 szín­
nel minden síkba rajzolható gráf kiszínezhető.
Beláttuk tehát a „hatszíntételt”. Nincs más teendőnk, mint egy színt el­
hagyni. (Milyen szép lenne, ha kettőt is elhagyhatnánk!) Újra a pontonkénti
színezés módszeréhez folyamodunk (a 13.4.3. Lemmát is felhasználjuk), de
ezúttal alaposabban is megvizsgáljuk az eljárást.
Az ö tsz ín té te l bizonyítása. Tekintsünk egy n pontú síkba rajzolható grá­
fot. Bizonyításunk n szerinti indukció lesz, feltesszük tehát, hogy minden
n-nél kevesebb pontú gráf kiszínezhető 5 színnel. A 13.4.3. Lemma alapján
tudjuk, hogy a gráfnak van olyan v pontja, amelynek fokszáma legfeljebb 5.
Ha v fokszáma 4 vagy kisebb, mint 4, akkor a gondolatmenet könnyű:
hagyjuk el a v pontot, és színezzük ki a megmaradt gráfot 5 színnel (az in­
dukciós feltevés szerint ezt megtehetjük, elvégre v elhagyásával egy kevesebb
13.4. TÉRKÉPSZÍNEZÉS ÉS A NÉGYSZÍNTÉTEL 215

pontú, mindazonáltal továbbra is síkbeli gráfot kapunk). Mivel v-nek legfel­


jebb 4 szomszédja van, választhatunk számára olyan színt, amely valamennyi
szomszédjáétól különbözik.
Az egyetlen bonyolult eset tehát az, amikor v fokszáma 5. Legyen v két
szomszédja u és w. Most azon felül, hogy a v pontot töröljük, a gráfot kicsit
jobban megváltoztatjuk: az u és a w pontot egyetlen - itic-vel jelölt - pontba
„olvasztjuk össze”. Minden olyan élt, amelynek egyik végpontja u vagy w, az
új uw pontba irányítjuk át (13.10. ábra).

13.10. ábra. Az ötszíntétel bizonyítása.

A módosított gráf még mindig síkba rajzolható és ra-nél kevesebb pontja


van, az indukciós feltevés szerint tehát kiszínezhető 5 színnel. Ha most újra
„széthúzzuk” u-t és w-1, akkor v kivételével G pontjait sikerült 5 színnel
kiszíneznünk. Az u és w összevonásával azt értük el, hogy a két pont ebben a
színezésben ugyanolyan színű. Hiába van tehát v-nek 5 szomszédja, közülük
kettő azonos színű, így az 5 szín valamelyike nem szerepel a szomszédok
színei között. Ezzel a színnel kiszínezhetjük u-t, és ezzel a bizonyítást be is
fejeztük.
De vigyázat! Figyelmen kívül hagytunk egy problémát! (Az efféle érvelé­
sekben ez igen könnyen előfordulhat.) Amikor u-t és w-t összeolvasztottuk,
két kellemetlen lehetőséggel is számolnunk kell: (a) u és w szomszédosak,
így összevonásukkal olyan él keletkezett, amelynek két végpontja egybeesik;
(b) lehet a gráfnak egy olyan p pontja, amely mind u-val, mind w-vel szom­
szédos, így a két pont összevonása után uw és p között két él is halad.
Mindkét lehetőségről megfeledkeztünk!
A (b) jelű probléma valójában nem probléma. Ha két pont között két él
is halad, akkor egyszerűen feledkezzünk meg az egyikről. A gráf síkba rajzol­
ható marad, és az indukciós feltevés alapján létező színezésben p különbözni
fog u-tól és tu-től is, így amikor a két utóbbit „széthúzzuk”, a p-t u-val, illetve
a p-t w-ve 1 összekötő élek végpontjai is különböző színűek lesznek.
Az (a) probléma már súlyosabb. Az uw pontot önmagával összekötő élt
nem hagyhatjuk egyszerűen figyelmen kívül, hiszen az u és a w pont a végső
színezésben ugyanolyan színű lesz.
216 13. TÉRKÉPEK ÉS GRÁFOK SZÍNEZÉSE

A helyzet azonban megmenthető: mindig találhatunk ugyanis p szomszéd­


jai között két olyat, amelyek nem szomszédosak. Ha ugyanis p szomszádjai
közül bármelyik kettő szintén szomszédos lenne, akkor egy 5 pontú teljes grá­
fot alkotnának, amelyről tudjuk, hogy nem síkbeli. Mindig találhatunk tehát
olyan u-t és w-t, amelyekkel a fent leírt eljárás működik. Ezzel az ötszíntétel
bizonyítása valóban teljessé vált. □

Á ttekintő feladatok
13.4.1. Rajzoljunk a ceruzánk felemelése nélkül a síkon egy zárt görbét (13.11.
ábra), amely többször is metszheti önmagát. Bizonyítsuk be, hogy az így keletkező
tartományok kiszínezhetők két színnel.

13.11. ábra. Zárt görbe által meghatározott tartományok kiszínezése.

13.4.2. Legyen G olyan összefüggő gráf, amelyben minden pont fokszáma legfel­
jebb d, és van legalább egy olyan pont is, amelynek fokszáma határozottan kisebb,
mint d. Igazoljuk, hogy G kiszínezhető d színnel.

13.4.3. Legyen G olyan összefüggő gráf, amelyben d + 1 kivételével minden él


fokszáma legfeljebb d (a fennmaradó d + 1 él fokszáma d-nél nagyobb is lehet).
Igazoljuk, hogy G kiszínezhető d + 1 színnel.

13.4.4. Konstruáljunk egy G gráfot a következőképpen: a pontjai legyenek a K$


(az 5 pontú teljes gráf) élei, ezek közül kettőt pontosan akkor tekintsünk szomszé­
dosnak, ha a megfelelő Ks-beli éleknek van közös végpontja. Határozzuk meg G
kromatikus számát.

13.4.5. Legyen Gn az a gráf, amelyet K n-bői (az n pontú teljes gráfból) kapunk
egy Hamilton-kör elhagyásával. Határozzuk meg G„ kromatikus számát.

13.4.6. Mutassuk be egy példán, hogy egy olyan kontinensen, amelyen (mint a kö­
zépkori Európában) nem minden ország összefüggő, előfordulhat, hogy egy térkép
színezéséhez 100 szín sem elegendő.
13.4. TÉRKÉPSZÍNEZÉS ÉS A NÉGYSZÍNTÉTEL 217

13.4.7. Igazoljuk, hogy ha egy síkba rajzolható gráf minden tartományát páros
számú él határolja, akkor a gráf páros.

13.4.8. Igazoljuk, hogy ha egy térkép minden pontja páros fokszámú, akkor az
országok két színnel is kiszínezhetők.

13.4.9. (a) Tekintsünk egy térképet, amelyben minden pont fokszáma 3. Tegyük
fel, hogy a térkép kiszínezhető 3 színnel. Igazoljuk, hogy a térkép gráfja páros.
(b) [Nem könnyű.] Mutassuk meg, hogy az (a) állítás megfordítása is igaz: ha egy
síkba rajzolható páros gráf minden pontjának fokszáma 3, akkor a gráf tartományai
kiszínezhetők 3 színnel.
14. fejezet

Véges geometriák, kódok,


latin négyzetek és más
egzotikumok

14.1. Különös kis világok


A Fano-sík (14.1. ábra) valóban kicsiny világ: 7 pontból és 7 egyenesből
áll. Annak ellenére, hogy az ábrán az egyenesek közül csak hat „egyenes”
(a hetedik viszont „kör alakú”), a világ lakói minden egyenest egyformának
látnak. Az ábra alapján úgy tűnhet, hogy a „kör alakú” egyenesnek három
másik egyenessel két közös pontja is van, a (karikával) nem jelölt metszés­
pontok mindaználtal nem igazi metszéspontok - csak azért tűnnek fel, mert
a Fano-síkot a mi merőben különböző euklideszi viszonyainknak megfelelően
ábrázoltuk.

A Fano-sík lakói nagyon büszkék a világukra. Elismerik, hogy kicsiny - de


nem haboznak rámutatni, hogy több más tekintetben tökéletes. Megjegyzik
például, hogy a világukban
14.1. KÜLÖNÖS KIS VILÁGOK 219

(a) bármelyik két pontra pontosan egy egyenes illeszkedik.


Könnyen ellenőrizhetjük, hogy ez valóban így van, de joggal vethetjük fel,
hogy a dolgok (pontosabban az egyenesek) a mi világunkban sem állnak
másként. Erre a Fano-síklakók azzal vágnak vissza, hogy náluk
(b) bármely két egyenesnek pontosan egy metszéspontja van.
Ez a mi euklideszi világunkban (ahol léteznek párhuzamos egyenesek) már
valóban nem igaz. Mi sem hagyjuk magúinkat: rajzolunk egy „új világot”
(14.2. ábra) és felhívjuk a figyelmüket: ebben a meglehetősen érdektelen
konstrukcióban (a) és (b) is igaz. A Fano-síklakók persze készen állnak a
riposzttal: „elegendő, ha észreveszitek - mondják -, hogy a mi világunkban
(c) minden egyenesnek van legalább három pontja”.

14.2. ábra. Az érdektelen sík.

És ezzel nincs vége a dicsekvésnek. „Elméleti fizikusaink az (a), (b) és (c)


állításokból a világunk számos tulajdonságát levezették, így például a követ­
kezőt is:
(d) minden egyenesünknek ugyanannyi pontja van. ”
Ha a bizonyítást kérjük, azzal is készen állnak: „Legyen K és L két egyenes;
(b) szerint K és L metszik egymást, jelöljük a metszéspontot p-vel. A (c)
tulajdonság szerint mindkét egyenesnek van legalább még egy pontja (kettő
is, de nekünk egy is elég). Legyen tehát q a K , r pedig az L egyenes egy
p-től különböző pontja; (a) szerint létezik g-ra és r-re illeszkedő M egyenes.
Legyen s az M egyenes - (c) szerint létező - harmadik pontja (14.3. ábra).

14.3. ábra. Minden egyenes ugyanannyi pontból áll.

Ha most x a K egyenes egy tetszőleges pontja, akkor kössük össze s-sel.


Az így kapott egyenes az L egyenest egy x' pontban metszi (a konstrukciót
220 14. VÉGES GEOMETRIÁK, KÓDOK, LATIN NÉGYZETEK...

tekinthetjük úgy, hogy a K egyenest az s pontból L-re vetítjük). Megfordítva,


x'-boi kiindulva éppen x-et kapjuk. A vetítés tehát bijekciót létesít K és L
között, a két egyenesnek ennélfogva ugyanannyi pontja kell hogy legyen.”
„A gondolatmenet azt is megmutatja - folytatják barátaink -, hogy
(e) minden pontra ugyanannyi egyenes illeszkedik. ”
„Ezt az iménti bizonyításunk alapján nyilván Te is be tudod látni” - teszik
hozzá biztatásképpen.
Okos Fano-síklakó ismerősünk kifogyhatatlan az érdekességekből: „Az el­
méleti fizikusok - idejük, mint a tenger - azt is megállapították, hogy (a), (b)
és (c) nem vonja maga után, hogy minden egyenesnek 3 pontja van, mivel lé­
teznek alternatív világok, amelyekben minden egyenesnek 4, 5 vagy 6 pontja
van. Ez persze számomra teljesen elképzelhetetlen... A fizikusok ezen felül
azt állítják, hogy nincs olyan univerzum, amelyben az egyenesek 7 pontból
állnak, a 8, a 9, és a 10 megint lehetséges, 11 azonban újra lehetetlen. A
témát természetesen előszeretettel taglalják sci-fi szerzőink is.”
A Fano-síklakók a 14.2. ábrán látható világot egy másik szempontból
is gyűlölik. Tősgyökeres egalitáriusok, így elfogadhatatlan számukra, hogy
valamelyik pont a többihez képest ki van tüntetve - ez az ő társadalmunkban
eléképzelhetetlen. Arra az ellenvetésre, hogy mintha a Fano-sík „középpontja”
is kitüntetett lenne, azonnal készek a válasszal. „A mi világunkban - szögezik
le -,
(f) sem a pontok, sem az egyenesek nem különböztethetők meg egymástól,
méghozzá abban az értelemben, hogy bárhogy jelöljünk is ki két pontot (vagy
két egyenest), lehetséges úgy átnevezni a sík pontjait, hogy az egyik pont a
másik helyébe kerüljön, és senki ne vegye észre a változást.” Ha az Olvasó
nem hiszi, oldja meg a 14.1.7. feladatot.
Hagyjuk el a Fano-síkot, és tegyünk látogatást egy nagyobb világban, az
amőbasíkon. Ennek a síknak 9 pontja és 12 egyenese van (14.4. ábra). A
Fano-síkon tett kirándulásunk alapján ennek a különös világnak a reprezen­
tációjával is óvatosnak kell lennünk. A jobb oldali ábrán az első két oszlopot
még egyszer berajzoltuk, hogy az egyeneseket alkotó pontokat könnyebben
azonosíthassuk.1
Az amőbasík lakói büszkén vallják: világuk sokkal érdekesebb, mint a
Fano-féle. Náluk is igaz, hogy bármely két pontra pontosan egy egyenes
illeszkedik, de két egyenes lehet, hogy metszi egymást, és az is, hogy párhu­
zamosak (ami csupán annyit jelent, hogy nem metszők). Egy, az amőbasíkon

1H a az Olvasó h a llo tt m ár m átrixokról és determ inánsokról, akkor az am őbasík követ­


kező leírását is érteni fogja: h a a síkot egy 3 x 3-as m á trix elem einek tek in tjü k , akkor
az egyenesek a m á trix sorai, oszlopai, v alam int azok az elem ek, am elyek a m á trix de te r­
m in á n sá n ak kifejtésében szereplő szorzatokat adják. A 14.4. á b ra jo b b oldalán a kifejési
téte ln e k m egfelelő h árm asokat tü n te ttü k fel.
14.1. KÜLÖNÖS KIS VILÁGOK 221

14.4. ábra. Az amőbasík.

élő barátunk jegyezte meg a következőt: „Hallottam, hogy a matematikusai­


tok sokat törték a fejüket azon az állításon, amely szerint
(g) ha adott egy egyenes és egy, az egyenesre nem illeszkedő pont, akkor
egy és csak egy olyan egyenes létezik, amely átmegy a ponton és párhuzamos
a megadott egyenessel.
Az állítást párhuzamossági axiómának vagy Euklidész ötödik posztulátumá-
nak nevezték el. Évszázadokon keresztül próbálták levezetni a világotok más,
alapvető tulajdonságaiból, mígnem rádöbbentek, hogy ilyen bizonyítás nem
létezik. Az állítás a mi világunkban igaz, és ez a tény - mivel a világunk
véges - könnyen ellenőrizhető.” (Reméljük, az Olvasó elfogadja az implicit
kihívást!)
„Miként a Fano-síkon, nálunk is igaz, hogy az egyeneseknek pontosan há­
rom pontjuk van - folytatják világuk leírását az amőbasík lakói -, de nálunk
minden pontra négy egyenes illeszkedik, több tehát, mint a Fano-síkon. A
pontjaink és az egyeneseink nem különböztethetők meg (bár a ti rajzotokon
vannak „egyenes” és „görbe” egyenesek is).

14.5. ábra. Az amőbasík kibővítése egy végtelen távoli egyenessel.


222 14. VÉGES GEOMETRIÁK, KÓDOK, LATIN NÉGYZETEK...

Amikor rámutattunk, hogy a Fano-síklakók számára mennyire kedves a


világuk (b) jellemzője, az amőbasíkon élő idegenvezetőnk azonnal készen állt
a válasszal: „Ezt mi is könnyen elérhetjük. Elég, ha síkunkat 4 új ponttal
egészítjük ki. Minden egyenesnek az új pontok pontosan egyikére kell illesz­
kednie, méghozzá úgy, hogy a párhuzamos egyenesek ugyanazon, az egymást
metszők pedig különböző új pontokon menjenek át. Deklaráljuk továbbá,
hogy a négy új pont szintén egy egyenest alkot. Ezt az egyenest „végtelen tá ­
voli egyenesnek”, pontjait pedig „végtelen távoli pontoknak” nevezzük (14.5.
ábra). Az így kibővített világra (a)-tól (g)-ig minden Fano-féle jellemző tel­
jesül.1 Mi mindazonáltal jobban szeretjük megkülönböztetni a közönséges
egyeneseket a végtelen távoliaktól, a mi világunk ettől csak érdekesebb.”

14.6. ábra. A kockatér.

Utolsó kirándulásunk is egy kicsiny világba, a kockatérbe vezet (14.6.


ábra). Bár ennek a világnak csak 8 pontja van, bizonyos szempontból „gaz­
dagabb”, mint az amőbasík: háromdimenziós. Az egyenesek nem túl érdeke­
sek, minden egyenesnek 2 pontja van, és bármelyik 2 pont meghatároz egy
egyenest. De vannak síkok is! Euklideszi rajzunkon (amely sok tekintetben
gyengécske), a kocka-tér pontjai egy kocka csúcsai. A síkok a következők:
(i) a kocka lapjait alkotó pontnégyesek (6 ilyen van), (ii) a kocka két szem­
közti élének végpontjait tartalmazó pontnégyesek (ilyenből is 6 van), (iii) a
négy fekete pont és (iv) a négy világosszürke pont.
A kocka-térben igazak a következők (az ellenőrzést az Olvasóra hagyjuk):
(A) Bármely három pont egyértelműen meghatároz egy síkot.
(A kocka-tér lakói büszkén teszik hozzá: „A ti világotokban ez csak akkor
igaz, ha a három pont nem illeszkedik ugyanarra az egyenesre. Nálunk ilyen
veszély nem fenyeget: három pont sohasem illeszkedik egy egyenesre.”)
(B) Bármely két sík vagy párhuzamos, vagy egy egyenesben metszi egy­
mást.*

*Ez a konstrukció a m i euklideszi síkunkban is m űködik, az eredm ény egy érdekes geo-
m e tria lesz, a m it projektív geom etriának nevezünk.
14.1. KÜLÖNÖS KIS VILÁGOK 223

(C) Ha adott egy sík és rajta kívül egy pont, akkor létezik egyetlen olyan
sík, amely párhuzamos az adott síkkal és tartalmazza a pontot.
(D) Nincs kitüntetett pont.
(E) Nincs kitüntetett sík.
Az utolsó állítás valószínűtlennek hangzik, elvégre síkból - mint emlék­
szünk - sokféle van. Lássuk tehát a bizonyítást. Jelölje a pontokat A , . . . , H
(14.7. ábra). Világos, hogy a kocka lapjainak megfelelő síkok egyenrangúak
(ezek ugyanis a kocka megfelelő elforgatásával egymásba vihetők, és az elfor­
gatásnál minden sík képe sík lesz). Az is nyilvánvaló, hogy a két-két szemközti
csúcsból, illetve a fekete és a világosszürke pontokból álló síkok is egyenér­
tékűek (a kockát a középpontjára tükrözve ezek egymásba mennek át).
Ezek voltak az egyszerűbb esetek. Most jön a fifikásabb transzformáció:
cseréljük fel az E és F, illetve a G és H pontokat (14.7. ábra). Mi történik
ekkor a síkokkal?

H G G H

14.7. ábra. A síkok csak látszólag különböznek.

Néhány közülük nem változik (bár egyes pontjaik előfordulhat, hogy he­
lyet cserélnek): transzformációnk a felső, az alsó és az elülső lapnak megfelelő
síkokat, valamint az A B G H és a C D E F síkot is helyben hagyja. A bal ol­
dallap A D E H síkjának képe az AD F G sík, és vice versa; ugyancsak egymás
képei a jobb oldallap B C F G síkja és a B C E H sík, a fekete pontokból álló
és az ACEG, végül a világosszürke pontokból álló és a B D F H sík.
Egyetlen sík sem maradt tehát ki. Vegyük észre a következőket.

- Minden sík képe sík, ennélfogva a kocka csúcsainak fenti átcímkézése a


kockatér lakói számára észrevétlen marad.
- Van olyan lapsík, amelynek képe egy szemközti élekből álló sík, és van
olyan szemközti élekből álló sík, amelynek képe a fekete pontokból álló
sík. Mindebből az következik, hogy a kockatér lakói számára a három
különböző síktípus között nincs semmi különbség.
224 14. VÉGES GEOMETRIÁK. KÓDOK, LATIN NÉGYZETEK...

14.1.1. A Fano-sík filozófusait sokat foglalkoztatta az egyenesek és a pontok kü­


lönbsége. Egyenesből és pontból is hét van, miért különböznek? Tekintsük a („régi”)
egyeneseket pontoknak, az új egyeneseket pedig alkossák olyan új ponthármasok,
amelyek „eredetileg” egy ponton átmenő egyenesek voltak. Milyen struktúrát ka­
punk?

14.1.2. A Fano-sík lakói akkor mondják, hogy három pont egy kört alkot, ha ezek
nem illeszkednek egy egyenesre. A 14.1. ábrán a háromszög csúcsai például egy
kört alkotnak. Egy kör érintőjének nevezik azokat az egyeneseket, amelyeknek a
körrel pontosan egy közös pontjuk van. Igazoljuk, hogy minden körnek minden
pontjában pontosan egy érintője van.

14.1.3. A Fano-sík lakói azt mondják, hogy négy pont hiperciklust alkot, amennyi­
ben közülük semelyik három nem illeszkedik egy egyenesre. Igazoljuk, hogy három
pont akkor és csak akkor nem illeszkedik egy hiperciklusra, ha egy egyenesre illesz­
kednek, és megfordítva.

14.1.4. A Fano-sík 7 pontjának képviselői gyakran szavazással döntik el a vitás


kérdéseket. Mindenki igennel vagy nemmel szavaz, a szavazatokat azonban egy
különös szabály szerint összesítik: nem a többség nyer, hanem az egyenes: ha egy
egyenes három pontjának képviselői egyformán szavaznak, akkor az ő akaratuk
érvényesül. Bizonyítsuk be, hogy (a) nem fordulhat elő, hogy két egyenes képviselői
ellentmondásos döntést hoznak, és hogy (b) minden szavazáson van legalább egy
egyenes, amelynek képviselői eldöntik a vitát.

14.1.5. Igazoljuk, hogy a végtelen távoli egyenessel kiegészített amőbasíkon az


(a)-(d) tulajdonságok mind igazak.

14.1.6. Amikor értesültek arról, hogy az amőbasík lakói „végtelen távoli” elemekkel
bővítették ki a világukat, a Fano-síklakók úgy döntöttek, hogy egyik egyenesüket
kinevezik „végtelen távoli egyenesnek”, pontjait pedig végtelen távoli pontoknak.
A megmaradt 4 pont és 6 egyenes egy igen-igen kicsiny síkot alkot. Igaz marad-e
(g) ebben a minivilágban?

14.1.7. Annak igazolására, hogy a Fano-sík minden pontja egyenértékű, rendezzük


át a pontokat úgy, hogy a középső (mondjuk) felülre kerül, de minden egyenes képe
egyenes. Hogyan érhetjük ezt el?

14.1.8. A kockatér minden pontja 7 egyenesre és hét síkra illeszkedik. Véletlen-e


a Fano-sík pontjaival és egyeneseivel való numerikus hasonlóság?

14.2. Véges affin és projektív síkok


Legfőbb ideje, hogy befejezzük a képzeletbeli világokban tett kőrútunkat, és
a megismert struktúrákat a matematika eszközeivel is leírjuk. Ha adott egy
véges elemszámú V halmaz (amelynek elemeit pontoknak nevezzük), vala­
mint egy, a V részhalmazaiból álló halmaz (amelynek elemei az egyenesek),
14.2. VÉGES AFFIN ÉS PROJEKTÍV SÍKOK 225

és teljesülnek rájuk az előző alfejezetbeli (a), (b) és (c) tulajdonságok, akkor


véges projektív síkról beszélünk. A Fano-sík (amely Gino Fano itáliai mate­
matikusról kapta a nevét) például projektív sík. (Később látni fogjuk, hogy
7-nél kevesebb pontú projektív sík nem is létezik.) Projektív sík továbbá az
amőbasík a négy végtelen távoli ponttal és egy végtelen távoli egyenessel való
kibővítésével kapott sík is.
Még emlékszünk arra, miként bizonyították be a Fano-sík fizikusai, hogy
világukban minden egyenesnek ugyanannyi pontja van; ezt a számot n + 1-
gyel jelöljük (hamarosan kiderül majd, hogy miért), a pozitív egész n számot
pedig a sík rendjének nevezzük. A Fano-sík rendje tehát 2, a kibővített amő­
basíké pedig 3. A Fano-sík lakói azt is tudták, hogy ha egy projektív sík
rendje n, akkor minden pontra n + 1 egyenes illeszkedik.

14.2.1. Igazoljuk, hogy egy n rendű projektív síkon n2 + n + 1 pont és n2 + n + 1


egyenes van.
Olyan struktúrákat is vizsgálunk, amelyekben (a) mellett a (g) „párhuza­
mossági axióma” is teljesül, a triviális - vagy csúnya? esetleg érdektelen? -
eseteket kizárandó megköveteljük, hogy minden egyenesnek legyen legalább
két pontja. Az ilyen struktúrát véges affin síknak nevezzük.
A „párhuzamossági axiómából” következik, hogy egy adott L egyenessel
párhuzamos egyenesek egymással is párhuzamosak (ha az uttóbbi egyenesek
közül kettő egy p pontban metszené egymást, akkor két olyan egyenes is
lenne, amely illeszkedik p-re és párhuzamos L-lel). Az L egyenessel párhuza­
mos egyenesek olyan „osztályt” alkotnak, amely az affin sík minden pontját
lefedi.
Affin és projektív síkok. Az amőbasík kiterjesztésének konstrukciója
könnyen általánosítható. A párhuzamos egyenesek minden osztályát kine­
vezzük egy „végtelen távoli” pontnak, és posztulálunk egy „végtelen távoli”
egyenest, amely éppen a végtelen távoli pontokból áll. Ekkor (a) továbbra is
érvényben marad: bármely két „közönséges” pontra illeszkedik egy egyenes
(ugyanaz, mint eddig), két végtelen távoli pontra ugyancsak (a végtelen tá­
voli egyenes), ilyen egyenes végül egy végtelen távoli és egy közönséges pont
esetén is található (a végtelen távoli pontnak megfelelő „osztálynak” az adott
„közönséges” ponton átmenő tagja). Még ennél is könnyebb ellenőrizni, hogy
bármely két pont esetén legfeljebb egy ilyen egyenest találhatunk.
Emellett teljesül (b) is: ha két közönséges egyenes metszi egymást, akkor
metszéspontjuk eleve adott, ha párhuzamosak, akkor ezt a szerepet az „osz­
tályuknak” megfelelő végtelen távoli pont játssza el; egy közönséges egyenes
a végtelen távoli egyenest az osztályához tartozó végtelen távoli pontban
metszi. Az Olvasóra bízzuk (c), (d) és (e) ellenőrzését; (f) - bár a Fano-síkon
igaz - nem teljesül minden projektív síkra.
Általánosítható a 14.1.6. feladatban leírt konstrukció is. Tetszőleges véges
projektív sík bármelyik egyenesét - a rá illeszkedő pontokkal egyetemben
- kinevezhetjük „végtelen távolinak”. A sík többi pontja és egyenese ekkor
226 14. VÉGES GEOMETRIÁK. KÓDOK, LATIN NÉGYZETEK...

egy véges affin síkot alkot. A Fano-sík és az amőbasík lakóinak rivalizálása


ellenére a projektív és az affin síkok ..lényegében” ugyanazok a struktúrák.
Fejtegetéseinket egy tételben foglaljuk össze.

1 4 .2 .1 . T é t e l . M in d e n véges affin s ík k ib ő v íth e tő véges p r o je k tív sík k á


n é h á n y p o n t és e g y e tle n egyenes felvételével. M e g fo rd ítva : e g y p r o je k tív sík
b á rm e ly eg y e n e sé n ek (és a z egyenes p o n tja in a k ) elh agyásával affin sík o t ka ­
punk.

Egy n rendű projektív sík minden egyenesére n + 1 pont illeszkedik; a


megfelelő affin sík egyenesei n pontból állnak. Ezt a számot az affin sík
rendjének nevezzük. (Affin síkok esetében a rend fogalma természetesebb­
nek tűnik, min projektív síkok esetében. Hamarosan kiderül, miért az affin
egyenesek, és miért nem a megfelelő projektív egyenesek pontjainak számát
nevezzük a szóban forgó sík rendjének.)
Már láttuk (14.2.1. feladat), hogy egy n rendű projektív síknak n 2 + n + 1
pontja (és ugyanannyi egyenese) van. A megfelelő affin síkhoz egy egyenes
n + 1 pontját kell elhagynunk, az affin síknak tehát n 2 pontja van.
Koordináták. Két véges síkot már alaposan megvizsgáltunk: a Fano-síkot
és az amőbasíkot (az egyik projktív, a másik affin, de már tudjuk, hogy ez a
különbség nem „lényegi”). Léteznek-e más véges síkok?
A választ a koordinátageometria adja. Ahogy az euklideszi síkot valós
koordinátákkal írjuk le, úgy a véges affin síkokat a prímtestek különös, a
6.8. alfejezetben megismert aritmetikája segítségével reprezentálhatjuk. Ve­
gyünk tehát egy p prímszámot, „számoknak” pedig tekintsük a p elemszámú
prímtest 0 ,1 ,... ,p —1 elemeit.
Az euklideszi síkon minden pontot két koordináta határoz meg, kövessük
ezt az irányt az affin sík esetében is. A pontoknak tehát az (ü , v) számpárokat
feleltetjük meg, a pontok száma így nyilván p2.
Meg kell mondanunk, mit nevezzük egyenesnek. Az euklideszi síkon erre
a célra a kétismeretlenes lineáris egyenletrendszereket használjuk, tegyük itt
is ezt. Minden
ax + by = c,
kétismeretlenes egyenlet esetén azokat az (ü, v) pontokat, amelyekkel x = ü,
y = v kielégítik az egyenletet, tekintsük egy egyenes pontjainak. A pontosság
kedvéért fel kell tennünk, hogy az egyenletben a és b közül legalább az egyik
nemnulla.
Ellenőriznünk kell, hogy (a) bármely két ponton keresztül pontosan egy
egyenes halad, (b) tetszőleges egyenes és rajta kívüli pont esetén van olyan,
az illető egyenessel párhuzamos egyenes, amely átmegy a ponton és hogy
(c) minden egyenesre legalább két pont illeszkedik. A bizonyítás nem ne­
héz, csak kissé hosszadalmas, ezért el is hagyjuk. Sokkal fontosabb, hogy
észrevegyük: a dolognak ugyanaz az alapja, ami az euklideszi sík esetében: a
14.2. VÉGES AFFIN ÉS PROJEKTÍV SÍKOK 227

prímtestekben az alapműveletekre ugyanazok a szabályok érvényesek, mint a


valós számtestben.
A konstrukció alapján minden p prímszámhoz megadhatunk egy p rendű
affin síkot (amelyből megkaphatjuk a p rendű projektív síkot). Lássuk mit ka­
punk a legkisebb, kételemű prímtest esetében. Ekkor az affin síkunknak 22 =
4 pontja van, ezek a (0,0), (0,1), (1,0), (1,1) rendezett párokkal reprezentál­
hatok. Az egyeneseket a lineáris egyenletek szolgáltatják, ilyenből összesen
6 van: x = 0, x — 1, y = 0, y — 1, x + y = 0, x + y = 1. Mindegyik egyenesre
két pont illeszkedik, az y = 1 egyenes például a (0,1) és (1,1), az x + y = 0
egyenes pedig a (0,0) és (1,1) pontokon megy át. Egy meglehetősen triviális
affin síkot kapunk tehát, amely 4 pontból és 6 egyenesből áll, és amelyet a
14.1.6. feladatból már ismerünk. Ha ezt a síkot projektív síkká terjesztjük
ki, akkor a Fano-síkot kapjuk.
A 14.8. ábrán az 5 rendű affin síkot tanulmányozhatjuk (az összes egyenest
nem tüntettük fel, túl sokan vannak ugyanis).

14.8. ábra. Az 5 rendű affin sík. A triviális „vízszintes” és „függőleges” egye­


neseken kívül csupán egyetlen egyenest tüntettünk fel.

14.2.2. Mutassuk meg hogy a kockatér megkapható a 2 elemű test háromdimen­


ziós koordinátageometriájával.

M ennyi lehet egy projektív sík rendje? A koordinátageometriai konst­


rukció azt mutatja, hogy minden p prímszám esetén létezik p rendű affin (és
projektív) sík. Hasonló, bár mélyebb algebrai módszereket felhasználva iga­
zolható, hogy ez minden prímhatványra is igaz (tehát léteznek 4, 8, 9 ... rendű
síkok).
228 14. VÉGES GEOMETRIÁK. KÓDOK, LATIN NÉGYZETEK...

14.2.2. T é t e l . Minden pozitív egész kitevőjű prímhatványhoz (magukat


a prímeket is beleértve) létezik olyan véges afhn (és projektív) sík, amelynek
rendje az illető prímhatvány

A legkisebb olyan pozitív egész szám, amely nem prímhatvány, a 6. Gas-


ton Tarry 1901-ben bizonyította be, hogy nem létezik 6 rendű véges sík. A
következő ilyen szám a 10; Lám, Thiel és Swiersz 1988-ban, számítógépeket
is csatasorba állítva belátták, hogy nem létezik 10 rendű projektív sík. Senki
sem talált még olyan projektív síkot, amelynek rendje nem prímhatvány, de
azt sem bizonyította senki, hogy ilyen nem is létezhet.

14.2.3. Tegyük fel, hogy a 10 rendű projektív sík nemlétezését számítógép segítsé­
gével, de „nyers erővel” akarnánk bizonyítani. Hány esetet kell megvizsgálnunk, ha
az összes lehetőséget sorra vennénk (és ellenőriznénk az (a), (b) és (c) feltételeket)?
Hozzávetőlegesen mennyi ideig tart ez?

14.3. Blokkrendszerek
Egy kisváros lakói klubokat alapítanak. A polgárok a Fano-sík lakóihoz ha­
sonlatosan demokratikus érzelműek, így nem állhatják az egyenlőtlenséget.
Ennek megfelelően nem engedik, hogy egyik klub nagyobb legyen, a másik
kisebb (attól tartanak, hogy a nagyobb klubok elnyomnák a kisebbeket). Az
is tiltott, hogy valaki több klubnak legyen tagja, mint valamelyik polgártársa
- aki ugyanis több klubnak tagja, nagyobb befolyásra tehet szert, mint aki
kevesebb társadalmi kötelezettségekkel rendelkezik. Van még egy szabály is:
minden A polgárnak bármely J3-hez és C-hez „egyenlően” kell viszonyulnia,
vagyis az A és B közötti kapcsolat nem lehet szorosabb, mint az A és C kö­
zötti. Ez azt jelenti, hogy A-nak ugyanannyi klubban kell találkoznia 5-vel,
mint C-vel.
A demokratikus követelményeket a következőképpen fordíthatjuk le a ma­
tematika nyelvére: a városnak v lakosa van, akik b klubot alapítanak; minden
klubnak ugyanannyi - mondjuk k - tagja van, és bármely két polgár esetén
pontosan A olyan klub van, amelynek mindketten tagjai.
Az előző bekezdésben tárgyalt klub-struktúrát blokkrendszernek nevezzük.
Egy ilyen struktúra tehát egy v elemű halmazból és a v halmaz k elemű
részhalmazainak egy családjából, a blokkrendszer blokkjaiból áll, amelyre
teljesülni kell annak, hogy a halmaz minden eleme pontosan r blokknak
eleme, és bármelyik két elemhez pontosan A blokk van, amelynek mindkettő
eleme. A blokkok számát b jelöli. Világos, hogy képzeletbeli városunk lakói
és klubjai egy blokkrendszert alkotnak. A következőkben néha a társadalmi
modell, néha a matematikai struktúra terminológiáját követjük.
Nézzünk néhány konkrét példát. Blokkrendszer például a Fano-sík (14.1.
ábra). A pontokat a városlakóknak (nem túl nagy város...) feleltethetjük
meg, és az egy egyenesre illeszkedő „lakók” alkotják a klubokat.
14.3. BLOKKRENDSZEREK 229

Ellenőrizzük, hogy állításunk helyes. Minden klubnak 3 tagja van (tehát


k = 3), mindenki pontosan 3 klubnak tagja (azaz r = 3). Végül bármely
két lakó pontosan egy klubban találkozik (A = 1). Valóban blokkrendszert
kaptunk tehát: az alaphalmaznak v = 7 eleme van, a blokkok száma pedig
(szintén) b = 7.
Az amőbasík szintén blokkrendszer. Mivel kilenc pontunk van, azért v = 9;
a blokkok most is az egyenesek (3 taggal, azaz fc — 3); 12 klub van (b =
= 12). Minden ponton 4 egyenes megy át (r = 4), végül bármely két pontra
pontosan 1 egyenes illeszkedik (A = 1).
A kockatérből olyan blokkrendszert is előállíthatunk, amelyben A / 1,
ha blokkoknak a síkokat tekintjük. Az alaphalmaznak nyilván v = 8 eleme
van, minden blokk k = 4 tagot számlál, és minden pont r — 7 síknak eleme.
A döntő megfigyelés az, hogy bármely pontpárhoz pontosan 3 olyan síkot
találhatunk, amelyekre a pontok illeszkednek, ebben az esetben tehát A = 3.
Vannak persze kevéssé érdekes, triviális blokkrendszerek is. Ha k = 2,
akkor tetszőleges v elemszám esetén egyetlen blokkrendszer létezik csupán:
az, amelynek blokkjait a Q) darab kételemű részhalmaz alkotja. Ugyanez a
konstrukció tetszőleges k > 2 esetén működik: az összes k elemű részhalmaz
megfelel a blokkok szerepére, az így kapott blokkrendszerben b = Qj), r —
= és A = Q ^ ) - A legunalmasabb blokkrendszer egyetlen blokkból áll
(k = v, b = r = A = 1). Ez annyira érdektelen, hogy a továbbiakban nem is
tekintjük blokkrendszernek.
A blokkrendszerek param éterei. Vannak-e olyan összefüggések, ame­
lyeknek a b, v, r, k, A számoknak eleget kell tenniük? Egy egyenletet levezet­
hetünk például a következőképpen. Tegyük fel, hogy minden klub tagsági
igazolványt ad a tagjainak. Hány igazolványra van szükségünk összesen?
Mivel b klub van, egyenként k taggal, így bk igazolvány kell. Másrészt a vá­
rosnak v lakója van, és mindenki r klubnak tagja, amiből az igazolványok
száma vr. A kétféle számolás eredményének meg kell egyeznie:

bk = vr. (14.1)

Keressünk még egy összefüggést. Ha például a klubok meg akarják erősí­


teni a tagok közötti barátságokat, akkor megkövetelhetik, hogy minden tag
minden klubtársával vegyen részt egy kétfős vacsorán a klub székházában.
Hány vacsorát jelent ez lakónként? Egy C „nevű” polgár a kötelezettségeit
kétféleképpen is összeszámolhatja. Első gondolatmenet: „A városnak rajtam
kívül v — 1 lakosa van, mindenkivel A klubban találkozom, ez pedig X(v —1)
vacsorát jelent”. Második gondolatmenet: „Mivel r klubnak vagyok tagja,
és minden klubnak (rajtam kívül) k —1 tagja van, összesen r(k — 1) köte­
lező vacsorán kell részt vennem.” A két eredménynek természetesen meg kell
egyeznie:
X(v — 1) = r ( k — 1). (1 4 .2 )
230 14. VÉGES GEOMETRIÁK, KÓDOK, LATIN NÉGYZETEK...

14.3.1. Egy városban 924 klub van, amelyek mindegyike 21 tagot számlál, és bár­
mely 2 ember pontosan 2 klubban találkozik egymással. Hány lakosa van a város­
nak? Hány klubnak tagjai a város polgárai? (Ne lepődjünk meg: a város kicsi, de
mindenki elég sok klubnak tagja.)

14.3.2. Igazoljuk, hogy valójában fölösleges kikötnünk, hogy mindenki ugyan­


annyi klubnak legyen tagja, mivel az állítás a klubokról szóló további feltevésekből
már következik.

Mindebből tehát az következik, hogy a blokkrendszereket meghatározó


b, v, r, k, X számokból legfeljebb három adható meg szabadon, a másik ket­
tőt a (14.1) és (14.2) egyenletek már meghatározzák. Valójában még három
szám esetében sem teljes a szabadságunk. Lehetséges-e például az, hogy egy
500 lakosú városban minden klubnak 11 tagja legyen, és mindenki 7 klub­
nak legyen tagja? Nem lehetséges - kérjük az Olvasót, álljon itt meg egy
pillanatra, és próbálja belátni, hogy valóban így áll dolog (nem nehéz).
íme a mi gondolatmenetünk: ha lenne ilyen blokkrendszer, akkor a (14.1)
egyenletből a klubok b számát kifejezve azt kapnánk, hogy
v ■r 500 • 7
6= — = — •
ez azonban nem egész szám, a megadott számok tehát „nem jók”.
A probléma persze eltűnik, ha kikötjük, hogy csak olyan számhármasok
jók, amelyekkel a másik kettőre a (14.1) és (14.2) egyenletekből egész meg­
oldást kapunk. Ez azonban még mindig nem elég! Minden blokkrendszerre
teljesülnie kell a Fisher egyenlőtlenségnek:

b > v. (14.3)

Az egyenlőtlenség bizonyítása túlm utat könyvünk keretein.


A helyzet ráadásul az, hogy léteznek olyan b, v, r, k, X számok, amelyek a
(14.1), (14.2) és (14.3) feltételek mindegyikét kielégítik, mégsem határoznak
meg blokkrendszert. A könnyen ellenőrizhető, egyszerű feltételekből azonban
immár kifogytunk. Nincs például blokkrendszer a 6 = u = 43, k = r = 7
és A = 1 paraméterekkel, ez ugyanis 6 rendű projektív sík lenne, ilyen pe­
dig, mint emlékszünk, nem létezik - holott ezek a számok a (14.1), (14.2) és
(14.3) feltételek mindegyikének eleget tesznek. Az ilyen paraméterek kizárá­
sára nincs egyszerűbb módszer, mint az esetek kissé hosszadalmas átvizsgá­
lása.

14.3.3. (a) Keressünk olyan v, r és k számokat, amelyekből b-re a (14.1) egyenlet


egész megoldást ad, ez a megoldás azonban ellentmond (14.2)-nek. (b) Adjunk meg
olyan b, v, k , r, A számokat (ahol b, k, v,r > 2 és A > 1), amelyekei mind (14.1), mind
(14.2) teljesül, de b < v.

14.3.4. Adjunk meg minden v > 1 esetén olyan blokkrendszert, amelyben b = v.


14.3. BLOKKRENDSZEREK 231

Jelvények. Tegyük fel, hogy a város minden klubjának van jelvénye. Fel­
vonulást szerveznek, amelyen mindenkinek viselnie kell egy olyan klub jel­
vényét, amelynek tagja. Megoldható-e, hogy minden polgár különböző jel­
vénnyel vonuljon fel az ünnepségen?
Fel kell tennünk természetesen, hogy elegendő nagyságú jel vény készlet áll
a rendelkezésünkre, legalább annyi, ahány lakosa a városnak van: b > v (ezt
persze a Fisher-egyenlőtlenség már garantálja). De elég ez? Elvégre nem csak
azt követeljük meg, hogy a felvonulók jelvényei között ne legyenek azonosak,
de azt is, hogy mindenki olyan klub jelvényét viselje, amelynek tagja.

Klubok

P olgárok

14.9. ábra. A klubtagsági viszonyok reprezentálása.

A feladat hasonlít a házassági tétel (10.3.1. Tétel) problémájához. Az


analógiát kiaknázandó a blokkrendszerünkhöz egy páros gráfot rendelünk
(14.9. ábra). Az alsó pontok a polgárokat, a felsők a klubokat reprezentálják;
az a és az A pont között akkor vezet él, ha az a városlakó tagja az X klubnak
(a 14.9. ábrán a gráfnak csak egy élét tüntettük fel). Tudjuk, hogy ebben a
gráfban minden alsó pontból pontosan r él vezet a felső pontok halmazába,
és minden felső pontból pontosan k él vezet az alsó pontok halmazába. Alul
v, felül b pont van. Ha az alsó pontok közül kiválasztunk n darabot (nyilván
n < v), akkor tudjuk, hogy ebből az n pontból összesen nr él indul ki, jelöljük
az ezen élek felső végpontjai által alkotott halmaz elemszámát m-mel.
Belátjuk, hogy n < m. Mivel minden felső pont fokszáma k, a szóban
forgó halmazból m k él indul ki. A már említett nr darab él mindegyike ezek
között van, így fennáll az
nr < m k (14-4)
egyenlőtlenség. Másrészt a (14.1) egyenlet szerint bk = vr, így b > v alapján
azt kapjuk, hogy k < r, amiből

m k < mr. (14-5)

A (14.4) és (14.5) összefüggéseket összevetve:

nr < mr,

amiből n < m, amint azt bizonyítani kellett.


232 14. VÉGES GEOMETRIÁK. KÓDOK, LATIN NÉGYZETEK...

Bármely n alsó pont tehát legalább n felső ponttal össze van kötve. Most
már alkalmazhatjuk a házassági tételt (pontosabban a tételnek a 10.3.2.
feladatban szereplő speciális esetét): azt kapjuk, hogy létezik párosítás az
alsó és a felső pontok között, azaz létezik v darab közös végpont nélküli él,
amely minden alsó pontot összeköt egy felsővel. Ez a párosítás pedig minden
polgárnak „megmondja”, hogy milyen jelvénnyel kell felvonulnia.

14.4. Steiner-rendszerek
Már láttuk, hogy meglehetősen triviálisak azok a blokkrendszerek, amelyek­
ben k < 2, most alaposabban megvizsgáljuk a k = 3 esetet. A A paramé­
ter értékének a szóba jöhető legkisebb számot, az 1-et választjuk. Azokat a
blokkrendszereket, amelyekben k = 3 és A = 1, Jákob Steiner 19. századi
svájci matematikus tiszteletére Steiner-rendszereknek nevezzük. A Fano- és
az amőbasík Steiner-rendszerek, a kockatér azonban nem az.
Minimum hány lakos szükséges ahhoz, hogy egy város kubjai Steiner-
rendszert alkothassanak? Másképpen fogalmazva: milyen kikötést jelent v-re
az, ha a blokkrendszer Steiner-rendszer? Az (14.1) és (14.2) egyenlőtlensé­
gekbe k = 3-at és A = 1-et helyettesítve azt kapjuk, hogy
3b = vr és 2r = v —1,
amiből
(14.6)
és
b = v (v ~ !) (14.7)
6
Az r és a v számnak egésznek kell lennie, ami további megszorítást jelent.
Mivel a (14.7) egyenletben szereplő tört nevezője 6, a (14.6)-beli nevező pedig
6 osztója, a v szám 6-tal osztva nem adhat akármilyen maradékot. A (14.6)
egyenlet szerint u-nek páratlannak kell lennie, 6-tal osztva tehát csak 1, 3,
vagy 5 maradékot adhat, azaz 6j + 1, 6j + 3 vagy 6j + 5 alakba írható, ahol
j egész szám. Világos továbbá, hogy v nem lehet 6j + 5 alakú, ekkor ugyanis
(14.7) alapján azt kapnánk, hogy
(6j + 5) (6j + 4)
b= = 6 j 2 + 9J + 3 + - ,

holott fr-nek is egész számnak kell lennie.


A v tehát csak 6j + 1 vagy 6j + 3 alakú szám lehet. Figyelembe véve, hogy
a v > k = 3 egyenlőtlenségnek is teljesülnie kell, leszögezhetjük: Steiner-
rendszert csak v = 7, 9,13,15,19, 2 1 ,... lakosú városok klubjai alkothatnak.
Ezekkel a számokkal képezhetünk is Steiner-rendszert. A v = 7 esetben a
Fano-, a v = 9 esetben pedig az amőbasíkot kapjuk. Létezik általános konst­
rukció is, ez azonban meglehetősen bonyolult, tárgyalását ehelyütt inkább
mellőzzük.
14.4. STEINER-RENDSZEREK 233

14.4.1. Igazoljuk, hogy a v = 7 esetben a Fano-sík az egyetlen Steiner-rendszer.


(A klubok persze többféle tagnévsorral is megalakulhatnak. Gondoljunk inkább
7 székre, amelyek között a tagsági viszonyokat szétosztottuk, és amelyekben a
lakosok - sokféleképpen - helyet foglalhatnak.)

14.4.2. Ad-e a Fisher-egyenló'tlenség további megszorítást egy Steiner-rendszer


paramétereire vonatkozóan?

A klubok reprezentálása. Képzeljük el, hogy egy v lélekszámú városban,


amelynek klubjai Steiner-rendszert alkotnak, a polgárok megelégelik a magas
tagsági díjakat, és bizottságot hoznak létre, amely a tiltakozó akciót vezeti.
Hány fős lesz a bizottság, ha benne minden klubot legalább egy tagjának
képviselnie kell?
A feladat emlékeztet a jelvényeknek az előző alfejezet végén tárgyalt prob­
lémájára, van azonban két fontos különbség. Először: a jelvényes esetben a
polgárokhoz kellett klubokat választanunk (méghozzá olyat, amelynek az il­
lető tagja, így jogosult a klub jelvényének kitűzésére), most viszont a klubok­
hoz kell őket reprezentáló tagokat kiválasztani. Másodszor (ez a súlyosabb):
míg mindenki egy jelvényt tűz ki, a bizottság esetében egy lakos több klubot
is képviselhet.
Tegyük fel például, hogy Antal barátunk nem tagja a bizottságnak. Mivel
Antal r klubnak tagja, a klubok pedig Steiner-rendszert alkotnak, azt kapjuk,
hogy
v —1

(1. a (14.6) egyenletet).


Minden klubnak, amelynek Antal tagja, rajta kívül pontosan két másik
tagja van; ha ezen felül figyelembe vesszük, hogy bármely másik városlakó
esetében pontosan egy olyan klub létezik, amelynek mindketten tagjai, azt
kapjuk, hogy (v — l)/2 olyan klub van, amelyeknek Antalon kívül nincs
közös tagjuk. A tiltakozó bizottságban e klubok mindegyikét képviselni kell,
és mivel ez a képviselő nem lehet Antal (aki nem tagja a bizottságnak), a
képviselők száma nem lehet kevesebb, mint (v — l)/2 . Ez persze elég nagy
bizottság - csaknem minden második polgár tagja!
És ez a szám ráadásul csak egy alsó korlát! Elképzelhető-e (van-e érv,
amely azt támasztja alá), hogy a bizottság létszámának ennél is nagyobbnak
kell lennie? A Fano-sík esetében alsó korlátunk (7 — l)/2 = 3, és valóban:
bármely egyenes esetén igaz, hogy három pontja az összes egyenest repre­
zentálja (hiszen bármely két egyenesnek van közös pontja). Az amőbasík
esetében alsó korlátunk (9 — l)/2 = 4, viszont egyáltalán nem nyilvánvaló,
hogy egy 4 fős bizottságban minden egyenes reprezentálható - mi több, ez
egyszerűen lehetetlen!
Ez persze a szokásos fárasztó esetszétválasztásnak tűnik, van azonban a
tarsolyunkban egy csinos kis gondolatmenet , amely jó néhány további esetre
is érvényes. Belátható ugyanis a következő megdöbbentő tény:
234 14. VÉGES GEOMETRIÁK. KÓDOK, LATIN NÉGYZETEK...

1 4 .4 .1 . T é t e l . H a van (v — l ) / 2 lé tszá m ú , m in d e n k lu b o t re p re ze n tá ló
b izo ttsá g , a k k o r m a g a a b iz o tts á g is S te in e r-re n d sze rt a lko t.

Az új Steiner-rendszer alaphalmazát a bizottság v\ tagja alkotja, a blokkokat


pedig azok a klubok, amelyeknek mindhárom tagja bizottsági tag (az ilyen
klubokat kiváltságosnak nevezzük).
B i z o n y í t á s : Először belátjuk, hogy a bizottság bármely két tagjához van
olyan kiváltságos klub, amelynek mindketten tagjai. Indirekt bizonyítunk:
tegyük fel, hogy Béla és Csaba olyan bizottsági tagok, akik nem tagtár­
sak egyetlen kiváltságos klubban sem. Ez azt jelenti, hogy annak az eredeti
Steiner-rendszerbeli klubnak a harmadik tagja, amelyben Béla és Csaba is
tagok, nem tagja a bizottságnak. Feltehetjük, hogy ez a harmadik tag a már
jól ismert Antal. A fenti érvelés ekkor azt mutatja, hogy minden olyan klub,
amelynek Antal tagja, legalább egy taggal reprezentálva van a bizottságban,
és van egy olyan is, amelyet két tag (Béla és Csaba) képvisel. Ebből viszont
az következik, hogy a bizottságnak legalább (v —3)/2 + 2 = (v + l)/2 tagja
van, ami ellentmondás.
Beláttuk tehát, hogy bármelyik két bizottsági tag tagtárs egy kiváltsá­
gos klubban. Mivel semelyik két polgár nem jár egynél több közös klubba,
nem létezhet két olyan bizottsági tag, akik egynél több kiváltságos klub­
ban tagtársak. Ebből viszont az következik, hogy bármelyik két bizottsági
tag pontosan egy kiváltságos klubban tagtárs - a bizottság tehát valóban
Steiner-rendszer. □
Ha egy 9 elemű Steiner-rendszer 4 taggal reprezentálható lenne, akkor
létezne 4 elemű Steiner-rendszer - pedig ilyen nem létezik. Hasonló gon­
dolatmenettel igazolható, hogy a 13,21,25,33... pontú Steiner-rendszerek
klubjainak reprezentálásához a városlakók több mint felére szükség van.

14.4.3. Tegyük fel, hogy egy v elemű Steiner-rendszernek van olyan (v — l)/2
elemű 5 részhalmaza, hogy az eredeti Steiner-rendszer azon hármasai, amelyek­
nek minden tagja eleme 5-nek, szintén Steiner-rendszert alkotnak. Igazoljuk, hogy
5 elemei egy „jó” bizottságot alkotnak, azaz az eredeti Steiner-rendszer minden
hármasa képviselve van 5-ben.

N em i egyensúly. Városunk lakói úgy döntöttek, hogy klubjaiktól nem csu­


pán azt követelik meg hogy Steiner-rendszert alkossanak, hanem azt is, hogy
„nemi szempontból kiegyensúlyozottak” legyenek. Azt tartották volna ideá­
lisnak, ha minden klubnak ugyanannyi férfi-, mint nőtagja van, mivel azon­
ban látták, hogy ez lehetetlen (a 3 páratlan szám), megelégedtek azzal, hogy
előírták: minden klub tagjai között lennie kell legalább egy nőnek és legalább
egy férfinak.
A matematika nyelvén ez a következőt jelenti: adott egy Steiner-rendszer,
amelynek elemeit két színnel akarjuk kiszínezni (mondjuk a nőket jelölőket
pirosra, a férfiakat reprezentálókat pedig kékre), méghozzá úgy, hogy egyetlen
14.4. STEINER-RENDSZEREK 235

blokk (klub) se legyen egyszínű. Nevezzük az ilyen színezéseket a Steiner-


rendszer jó 2 -színezésének.
Létezik-e jó 2-színezés? Kezdjük az első nemtriviális esettel: legyen v =
= 7. Már tudjuk (14.4.1. feladat), hogy ebben az esetben az egyetlen Steiner-
rendszer a Fano-sík. Némi kísérletezés után meggyőződhetünk arról, hogy
ennek a rendszernek nem létezik jó 2-színezése. Ez persze már a 14.1.2. fela­
datból is következik: ha ugyanis létezne jó 2-színezés, akkor azokban a vitás
esetekben, amikor a férfiak igennel, a nők pedig nemmel szavaznak, az „egye­
nesszabály” alapján nem lehetne egyértelműen dönteni.
A Fano-sík mindazonáltal nem kivételes:

14.4.2. T é t e l . Egyetlen Steiner-rendszernek sincs jó 2-színezése.

B i z o n y í t á s : A z alapos előkészület után az indirekt bizonyítás már gye­


rekjáték. Tegyük fel tehát, hogy találtunk egy jó 2-színezést, azaz semelyik
hármas sem egyszínű. A kék és a piros pontokra ekkor egyaránt igaz, hogy
valamennyi klubot reprezentálják, így (az előbbi fejtegetéseink szerint) mind
piros, mind kék pontból legalább (v —l)/2-nek kell lennie. Ez összesen v — 1
pontot jelent, egy pont tehát kimarad, persze ez is piros vagy kék - tegyük
fel, hogy piros. A (v —l)/2 darab kék pont egy bizottságot, és mint ilyen,
Steiner-rendszert alkot. Ekkor azonban minden olyan klub, amely ennek a
kisebb Steiner-rendszernek egy blokkját alkotja, maga is Steiner-rendszer,
így viszont a színezésünk nem lehet jó. □

14.4.4. B izo n yítsu k be, hogy ha 3 színt engedélyezünk, akkor a Fano- és az am ő­


basík is kiszínezh ető úgy, hogy m inden blokk legalább kétszínű (de nem feltétlenül
három színű) legyen.

A lányok sétarendje. Egy tanár felügyelete alá 9 lány tartozik. A lányok


minden délután sétát tesznek a városban, hármas sorokban haladnak úgy,
hogy minden sorban hárman mennek egymás mellett. A tanár úgy akarja
rendezni az alakzatot, hogy — bizonyos számú nap elteltével - minden lány
elmondhassa: valamennyi társával sétált már egy sorban, de mindenkivel
csupán egyszer.

14.4.5. H ány n ap n ak kell ehhez eltelnie?

Ha az Olvasó megoldotta az iménti feladatot, akkor már tudja, hogy lega­


lább hány napra van szükség - de vajon lehetséges-e úgy rendezni a sétákat,
hogy ennyi nap valóban elegendő legyen0 Minden előkészület nélkül a terv
elkészítése nem éppen egyszerű feladat.
Segítségünkre lehet azonban a következő megfigyelés. Nevezzük a lányok
minden olyan hármas csoportját blokknak, amelynek tagjai egy alkalommal
már sétáltak egy sorban. így egy Steiner-rendszert kapunk. Egy 9 elemű
Steiner-rendszert pedig már ismerünk: az amőbasíkot.
236 14. VÉGES GEOMETRIÁK. KÓDOK, LATIN NÉGYZETEK...

Ezzel meg is lennénk? Nem, hiszen nem egy Steiner-rendszer megadása


volt a feladat, hanem a séták blokkjainak a meghatározása. A napok sor­
rendje nyilván nem számít, így tehát a 12 hármasból úgy kell négyes csopor­
tokat alkotnunk, hogy minden csoport három diszjunkt hármasból álljon (így
minden csoport megfelel valamelyik nap sétarendjének). Ha alaposan meg­
vizsgáljuk az amőbasíkot, akkor rájöhetünk: a sík pontosan így ,készült”,
bármelyik három párhuzamos egyenes megfelel egy sétatervnek.
Thomas Kirkman angol műkedvelő matematikus tette fel a kérdést 15
lány sétarendjére vonatkozóan (a jó terv ekkor 7 napos). A feladat éveken át
ellenállt a megoldási kísérleteknek, mígnem a matematikusok sikerrel jártak.
Nyilvánvaló, hogy a jó sétatervről könnyen belátható, hogy valóban jó - a
nehézséget a nagyszámú lehetőség jelenti.
A tökéletes sétarend megtalálása az általános esetben, vagyis amikor v =
= 6j + 3, már sokkal keményebb dió. A megoldást 1969-ben adta meg Ray-
Chaudhuri indiai-amerikai matematikus. Vegyük észre: Ray-Chaudhuri ered­
ményéből az is következik, hogy minden v = 6 j + 3 esetén létezik v elem­
számú Steiner-rendszer (ennek az egyszerűbb ténynek az igazolása sem éppen
könnyű feladat).
Egy hasonló feladat az lehet, amikor a tanár olyan sétatervet akar, amely
szerint (a 15-ből) bármelyik három lány pontosan egyszer kerül egy sorba.
Könnyen belátható, hogy ehhez (^ ) /5 = 91 napig kell sétálni. Az együtt
sétáló hármasok most is blokkrendszert alkotnak, ez azonban az általunk
korábban „triviálisnak” nevezett blokkrendszer (amely az összes lehetséges
háromelemű halmazból áll). A probléma tehát egyszerűbbnek tűnik, mint
a Kirkman-féle, általános megoldására (v lány fc-as sorokban) azonban még
tovább kellett várni: 1974-ben Baranyai Zsolt oldotta meg.

14.5. Latin négyzetek


Vizsgáljuk meg az alábbi 4 x 4-es táblázatokat. Mindegyikre igaz, hogy a
mezőkben a 0, 1, 2 és 3 számok valamelyike áll úgy, hogy egy szám minden
sorban és minden oszlopban pontosan egyszer szerepel. Az ilyen tulajdonságú
táblázatokat (4 x 4-es) latin négyzetnek nevezzük.

0 1 2 3 0 2 1 3
1 2 3 0 2 1 3 0
(14.8)
2 3 0 1 1 3 0 2
3 0 1 2 3 0 2 1

0 1 2 3 0 1 2 3
1 0 3 2 3 2 1 0
(1 4 .9 )
2 3 0 1 1 0 3 2
3 2 1 0 2 3 0 1
14.5. LATIN NÉGYZETEK 237

Tetszőleges táblaméret esetén könnyedén konstruálhatunk latin négyze­


teket (14.5.2. feladat), ráadásul ha sikerült egyet megszerkesztenünk, akkor
belőle továbbiakat is alkothatunk. A sorokat és az oszlopokat is átrendez­
hetjük, vagy vehetjük a négyzetben szereplő 0 , 1 .. . számok tetszőleges per­
mutációját is. (Ha például a (14.8) négyzetben a 0-kat 1-esekre, az 1-eseket
pedig 0-kra cseréjük, akkor egy másik latin négyzetet kapunk.)

14.5.1. Hány 4 x 4-es latin négyzet létezik? Mi a válasz a kérdésre akkor, ha a


sor- vagy oszlopcserével, illetve a számok permutálásával egymásból megkapható
latin négyzeteket nem tekintjük különbözőnek?

14.5.2. Adjunk általános módszert n x n-es latin négyzet szerkesztésére.

Vizsgáljuk meg alaposabban a (14.9) latin négyzeteket. Ha a két négyzetet


„egymásra helyezzük”, akkor minden mezőbe egy rendezett számpár kerül,
amelynek első tagja az első, a második pedig a második négyzet megfelelő
mezőjének eleme:
0,0 1,1 2,2 3,3
1,3 0,2 3,1 2,0
(14.10)
2,1 3,0 0,3 1,2
3,2 2,3 1,0 0,1

Észreveszünk-e valami különöset ebben az összetett négyzetben? Minden me­


zőben különböző számpár helyezkedik el, a négyzetben tehát mind a 42 = 16
lehetséges számpár helyet kap. Ha két latin négyzet ilyen, akkor ortogoná­
lisnak nevezzük őket. Két latin négyzet ortogonalitását a következőképpen
ellenőrizhetjük: szemügyre vesszük az első négyzet azon mezőit, amelyekben
a 0 áll, és megnézzük, hogy a másik négyzet megfelelő mezőiben különböző
számok állnak-e, majd ugyanezt elenőrizzük 2-re, 3-ra... is. Ha nem találunk
egyező számokat, akkor a két négyzet ortogonális.

14.5.3. írjunk fel két ortogonális 3 x 3-as latin négyzetet.

M ágikus négyzetek. Ha van két ortogonális latin négyzetünk, akkor köny-


nyen készíthetünk belőlük egy mágikus négyzetet, amelyben minden sor és
minden oszlop összege ugyanakkora. Tekintsük a (14.10) négyzet mezőinek
elemeit. írjuk az (o, b) pár helyébe az ab = 4 a+ 6 számot (vagyis az ab négyes
számrendszerben felírt kétjegyű számot) a számokat a tízes számrendszerben
felírva a (14.11) mágikus négyzetet kapjuk.

0 5 10 15
7 2 13 8
(1 4 .1 1 )
9 12 3 6
14 11 4 1
238 14. VÉGES GEOMETRIÁK. KÓDOK, LATIN NÉGYZETEK...

(A négyzet valóban mágikus: minden sor és minden oszlop összege 30.) Az


imént leírt módszerrel tetszőleges ortogonális latin négyzetpár alapján szer­
keszthetünk egy mágikus négyzetet: a 0, 1, 2, 3... számok minden sorban (és
minden oszlopban) pontosan egyszer szerepelnek az első, és pontosan egy­
szer a második pozícióban, így bármelyik sor (vagy oszlop) elemeit adjuk is
össze, az eredmény:

(0 + 1 + 2 + 3) • 4 + (0 + 1 + 2 + 3) = 30,

amint az egy mágikus négyzettől elvárható.

14.5.4. Mágikus táblázatunkban a 0 , . .., 15 számok szerepelnek. Szerkesszünk


a (14.10) mágikus négyzetből olyan mágikus négyzetet, amelynek mezőiben az
1,. . . , 16 számok állnak.

14.5.5. A két ortognális latin n ég yzetb ő l szerk esztett m ágikus n ég yzetü n k nem tö ­
kéletes, m ivel az átlóösszegek kü lön bözn ek a sor-, illetve oszlopösszegektől. M elyik
ortogonális p árokból k ap h atu n k tökletes m ágikus n égyzeteket?

Létezik-e olyan 4 x 4-es latin négyzet, amely a (14.10) négyzetek minde­


gyikével ortogonális párt alkot? Létezik: az Olvasónak azt javasoljuk, hogy
próbáljon felírni egyet, és csak azután vizsgálja meg a (14.12) négyzetet.
Vegyük észre, hogy a három latin négyzet sorai ugyanazok, csak a sorok
sorrendje különbözik.
0 1 2 3
2 3 0 1
(14.12)
1 0 3 2
3 2 1 0

14.5.6. B izo n y ítsu k be, h o gy nem létezik olyan 4 x 4-es latin n égyzet, am ely a
(14.9) és (14.12 ) a la tti m indhárom latin n ég yzette l ortogonális p árt alkot.

14.5.7. T ek in tsü k a (14.13) latin n égyzetet. E z m ajdn em u gyan az, m int az (14.12)-
beli, viszont az előbbihez - ezt kell belátni! - nem létezik vele ortogonális n égyzet.
A hasonlónak tű n ő latin n ég yzetek kö zö tt teh át ég és föld lehet a különbség!

0 1 2 3
1 3 0 2
(14.13)
2 0 3 1
3 2 1 0

Latin négyzetek és véges geom etriák. A latin négyzetek és a véges


affin geometriák között intim kapcsolat áll fenn. Tekintsünk egy n rendű af-
fin síkot, válasszuk ki párhuzamos egyenesek egy osztályát, és nevezzük el
14.5. LATIN NÉGYZETEK 239

az osztály elemeit „függőleges” egyeneseknek; egy másik párhuzamos egyene­


sosztály elemeit pedig nevezzük „vízszintesnek”. Számozzuk meg a függőleges
és a vízszintes egyeneseket az 0 , . . . , n —1 számokkal. A sík pontjaira ekkor
úgy is gondolhatunk, mint egy n x n-es táblázat mezőire, amely táblázatban
minden sor és minden oszlop pontjai egy egyenest alkotnak (az amőbasíkot
a fejezet elején pontosan így ábrázoltuk).
Tekintsünk most egy harmadik, ugyancsak párhuzamos egyenesekből álló
osztályt, és ennek elemeit is jelöljük a 0 ,1 ,. .. , n —1 számokkal. A táblázatunk
minden eleme (a sík egy-egy pontja) az utóbbi egyenesosztály pontosan egy
elemére illeszkedik, amely egyenesnek a táblázatban fel is tüntethetjük a
számát. A táblázatbeli 0-k ekkor egy egyenes pontjait jelölik, az 1-esek egy
másik (de az előbbivel párhuzamos) egyenes pontjait, és így tovább.
Mivel bármely két, nem párhuzamos egyenes egy pontban metszi egymást,
a 0-kból álló egyenesek minden sorral (és minden oszloppal) egy közös pontja
van, és ugyanez áll az 1-esekből... álló egyenesekre is. A táblázatunk tehát
egy latin négyzet.
Mindez persze nem túlságosan izgalmas, elvégre latin négyzeteket garma­
dával gyárthatunk. Ha azonban veszünk egy újabb, negyedik - párhuzamos
egyenesekből álló - osztályt, és az imént leírt eljárást követve felírjuk a neki
megfelelő latin négyzetet, akkor egy érdekes fordulatra lehetünk figyelmesek:
a két latin négyzet ortogonális. (Ez csupán egy újabb megfogalmazása annak
a ténynek, hogy a harmadik osztály minden egyenese pontosan egy pontban
metszi a negyedik osztály minden egyenesét.) Az affin sík egyenesei n + 1
osztályba sorolhatók, ezek közül kettőt használtunk a táblázat felírására, a
maradék n —1 osztályból viszont páronként ortogonális latin négyzeteket
kapunk.
Az amőbasíkból a fentiek alapján két 3 x 3-as, ortogonális latin négyze­
tet kapunk (azokat, amelyeket a 14.5.3. feladat megoldásakor közvetlenül is
megszerkesztettünk). Az 5 rendű affin síkból 4 páronként ortogonális latin
négyzetet nyerünk, méghozzá a következőket:

0 1 2 3 4 0 1 2 3 4
1 2 3 4 0 2 3 4 0 1
2 3 4 0 1 4 0 1 2 3
3 4 0 1 2 1 2 3 4 0
4 0 1 2 3 3 4 0 1 2

0 1 2 3 4 0 1 2 3 4
co

4 0 1 2 0 1 2 3
1 2 3 4 0 3 4 0 1 2
4 0 1 2 3 2 3 4 0 1
0 1 2 3 4 1 2 3 4 0
240 14. VÉGES GEOMETRIÁK. KÓDOK, LATIN NÉGYZETEK...

A latin négyzetek és az affin síkok közötti kapcsolat kétirányú: ha ren­


delkezésünkre áll n —1 páronként ortogonális latin négyzet, akkor könnyen
konstruálhatunk belőlük egy affin síkot: a sík pontjai az n x n-es táblázat
mezői, az egyenesek a táblázat sorai és oszlopai, és a {0,1,..., n — 1} szá­
mok, valamint a latin négyzetek akármelyiké esetén a táblázat azon mezőiből
alkotunk egyeneseket, amelyek a szóban forgó számot nem tartalmazzák.
Emlékezzünk vissza arra, hogy csak prím rendű véges affin síkokkal foglal­
koztunk, bár jeleztük, hogy ilyen síkok minden prímhatvány rend esetében
léteznek. A most tárgyalt konstrukció alapján az egyik hiányzó láncszemet
pótolhatjuk: a (14.9) és (14.12) alatti, páronként ortogonális latin négyze­
tekből megkaphatunk egy 4 rendű affin síkot.

14.6. Kódok
Itt az ideje, hogy szót ejtsünk a fejezetben tárgyalt gondolatok néhány gya­
korlati alkalmazásáról is. Tegyük fel, hogy egy zajos csatornán keresztül aka­
runk üzenetet küldeni. Az üzenet, mint általában, egy 0-kból és 1-esekből
álló hosszú karaktersorozat („sztring”), a csatorna „zajos” minősítése pedig
azt jelenti, hogy az üzenet bizonyos elemei megváltozhatnak: egy 1-es 0-vá,
egy 0 pedig 1-essé változhat. Maga a csatorna lehet rádióadás, telefonvonal,
az internet, vagy a CD-lejátszó (az utóbbi esetben a „zaj” a lemez felületének
szennyeződése).
Hogyan küszöbölhetjük ki ezeket a hibákat? Másképpen: hogyan állít­
ható helyre az eredeti üzenet? Természetesen sok függ a körülményektől.
Kérhetjük-e például, hogy néhány bitet újra küldjenek el számunkra? Az
internet esetében ezt megtehetjük, de egy Mars-szonda rádiójelei vagy a
CD-lejátszón hallgatott zene esetében nem. Eszerint tehát van, amikor ele­
gendő, ha felismerjük, hogy az üzenet hibás, más esetekben viszont a hibát
ki is kell javítanunk a fogadott üzenet alapján.
A legegyszerűbb megoldás, ha az üzenetet kétszer is elküldjük, és ellenő­
rizzük, hogy a két üzenetben mely bitek térnek el egymástól (annak, hogy
az egész üzenetet, vagy csak néhány bitjét küldjük el kétszer, nincs jelen­
tősége). Az ilyen kódot ismétléses kódnak nevezzük. Ha két bit különbözik,
akkor természetesen tudjuk, hogy valami hiba van, azt viszont nem, hogy
az első vagy a második változat-e a helyes. Felismerjük tehát a hibát, de
nem tudjuk kijavítani. (Az is előfordulhat persze, hogy a szóban forgó bit
mindkét üzenetben hibásan érkezik meg; az egyszerűség kedvéért feltesszük,
hogy a csatorna nem túlságosan zajos, így az ilyen esetek valószínűsége ki­
csi. A problémára még visszatérünk.) A helyzeten javíthatunk, ha az üze­
netet harmadszor is elküldjük. Ekkor már ki is javíthatjuk a hibát (minden
bit esetében a legalább kétszer megérkező változatot tekintve helyesnek) -
amennyiben a csatorna nagyon zajos, úgy persze csak a hiba felismeréséről
lehet szó (ha legfeljebb két üzenetben érkezik meg tévesen).
14.6. KÓDOK 241

Létezik egy másik egyszerű módszer is: a paritásellenőrzés. Egyszerűen


írjunk egy bitet minden adott hosszúságú karaktersorozat (mondjuk 7 bit)
után úgy, hogy az így kapott karaktersorozatban páros számú 1-es legyen
(ha tehát a 7 karakter között páros számú 1-es van, akkor a nyolcadik bit
0 lesz, ellenkező esetben viszont 1). A fogadó fél blokkonként (8 bitenként,
vagyis bájtonként) olvassa az üzenetet, és ellenőrzi, hogy minden bájtban
páros számú 1-es van-e. Ha igen, akkor rendben vagyunk, ha nem, akkor
tudja, hogy az üzenetbe hiba csúszott. (Nagyon zajos csatorna esetén itt is
előfordulhat, hogy a hiba észrevétlen marad: ha a 8 bitből 2 megváltozik,
akkor ezt a paritásellenőrzés nem tudja kiszűrni).
Lássunk egy példát: hogyan kódolható kétféleképpen a 10110010000111
karaktersorozat?
1100111100001100000000111111 (ismétlés)
1011001000001111 (paritásellenőőrzés)
Egyik megoldás sem olcsó: a költséget főként az növeli, hogy az üzenet
hosszabb. Az ismétléses kód esetében a növekedés 100%, a paritásellenőrzéses
kód esetében körülbelül 15%. Ha a csatornazaj elég alacsony ahhoz, hogy
feltehessiik: csupán minden 127-edik bit romlik el, akkor elegendő, ha 127
bitenként beillesztünk egy paritásellenőrző bitet, ami 1%-nál kisebb extra
költséget jelent csak. (Az ismétléses kód a paritásellenőrzés egy speciális
eseteként is felfogható: ilyenkor lényegében minden egyes bithez ellenőrző
bitet fűzünk.)
Ez vajon a legjobb megoldás? A válasz természetesen a csatorna zajos­
ságától is függ. Tegyük fel, hogy k hosszúságú üzenetet küldünk, és hogy a
hibák (tévesen érkező bitek) száma legfeljebb e. Nem használhatunk fel min­
den k hosszúságú karakersorozatot üzenetküldésre (mivel ilyenkor minden
hiba egy másik üzenetet eredményezne, így észrevétlen maradna). Azoknak
a karaktersorozatoknak a halmazát, amelyekkel értelmes üzenetek küldhetők,
kódnak nevezzük. Eszerint tehát minden kódszó egy k hosszúságú 01-sorozat.
A k — 8 esetben (1 bájtos üzenetek) az ismétléses kód a következő 16 soro­
zatból áll:
00000000 , 00000011 , 00001100 , 00001111 , ,
00110000 00110011 ,
00111100 , 00111111, 11000000, 11000011, ,
11001100 11001111 ,
11110000, 11110011, 11111100, 11111111.
A paritásellenőrző kód azokból a 8 hosszúságú sorozatokból áll, amelyek­
ben páros számú 1-es szerepel (ilyenből 27 = 128 darab van, felsorolásuktól
eltekintünk).
Láttuk, hogy mind a paritásellenőrző, mind az ismétléses kód 1-hibafelis-
merő kód, vagyis segítségükkel az üzenetek egybites hibái felismerhetők. Me­
lyik a legjobb 8 bites kód (amelyikkel a legtöbb hiba felismerhető)? A válasz
egyszerű: az a kód, amelynek két szava
0 0 0 0 0 0 0 0 és 1 1 1 1 1 1 1 1 .
242 14. VÉGES GEOMETRIÁK, KÓDOK, LATIN NÉGYZETEK...

Ha ezt a kódot használjuk, akkor a hibát csak akkor nem vesszük részre, ha
a szavak mind a 8 bitje megváltozik. A biztonságnak azonban ára van (a szó
legszorosabb ételmében), hiszen minden bitet nyolcszor kell elküldenünk.
Egy érdekesebb kódot kaphatunk a kockatér felhasználásával. Ennek a
térnek 8 pontja van, amelyeket a 8 bitnek feleltethetünk meg. Rögzítsük
a pontok egy sorrendjét, tartsuk magunkat például a 14.7. ábra szerinti
A B C D E F G H sorrendhez. A kockatér minden P síkja megad számunkra
egy kódszót: 1-est írunk, ha a megfelelő pont illeszkedik P -re, 0-t, ha nem.
Az alsó lap például a 11110000, a fekete pontokkkal jelzett sík a 10100101
szót adja. Ezeket a szavakat a 00000000 és 11111111 szavakkal kikegészítve
egy 16 elemű kódot kapunk.
Mennyire jó ez a kód? A kérdést így is feltehetjük: hány bitnek kell meg­
változnia ahhoz, hogy egy kódszó egy másikká alakuljon? Tegyük fel, hogy
két kódszavunkat a P és a Q sík határozza meg, amely síkok a kockatér (B)
tulajdonsága szerint vagy párhuzamosak, vagy egy egyenes mentén (azaz 2
pontban) metszik egymást.
Tekintsük először azt az esetet, amikor a két sík párhuzamos. Ha például
az egyik a fekete, a másik pedig a világosszürke pontokkal jelzett sík, akkor
a két kódszó:
10100101,
01011010.
A két kódot egymás alá írtuk, hogy minél nyilvánvalóbb legyen: a két sík­
nak egyetlen közös pontja sincs, így (a kód értelmezése folytán) nincs olyan
pozíció, amelyben mindkét szóban 1-es állna. Mivel pedig mindkét szóban
pontosan négy 1-es van, a 0-k sem lehetnek bennük ugyanazon a helyen.
Ahhoz tehát, hogy az egyikből a másikat kapjuk meg, mind a 8 bitjüknek el
kell romolnia.
Másodszor: tegyük fel, hogy a két sík két pontban metszi egymást. A „fe­
kete” és az „alsó” sík például az

10100101, 11110000
szavakat adja. Ezekben két 1-es és két 0 áll ugyanabban a pozícióban, így 4
bitnek kell megváltoznia ahhoz, hogy az egyikből a másikat kapjuk meg.
A csupa 0-ból és csupa 1-esből álló kódszavakkal utólag egészítettük ki a
kódunkat, de ezeket is könnyen ellenőrizetjük: 4 bitet kell bennük megvál­
toztatni ahhoz, hogy egy sík-szót kapjunk, és 8-at, hogy egyikből a másik
álljon elő.
A lényeg, hogy ha szavaink bármelyikében legfeljebb 3 bit változik, akkor
olyan karaktersorozatot kapunk, amely a kódnak nem eleme, más szóval, a
kockatér-kód 3-hibafelismerő.
A Fano-sík egy másik érdekes kódot szolgáltat. A kódszavak bitjeit a sík
pontjai szolgáltatják (a szavaink tehát 7 bitesek), méghozzá a következőkép­
pen. Minden egyenes két kódszót ad meg: az egyik az, amelyben az egyenes
pontjaihoz 1-eseket, a többi ponthoz pedig 0-kat rendelünk, a másik pedig
14.6. KÓDOK 243

14.10. ábra. Két kódszó egy egyenesből.

amit ebből kapunk az 1-esek és a 0-k felcserélésével. A csupa 0-ból és a csupa


1-esből álló szóval együtt most is 16 szavas kódot kapunk.
Elképzelhetjük úgy is, hogy a szavakat nem a szokásos módon, hanem
bitenként a Fano-sík pontjai mellé írjuk. A 14.10. ábrán egy egyenest és az
általa adott kódszavakat vizsgálhatjuk meg.

0 0

14.11. ábra. Három hiba már sok a Fano-kódnak: a biteket a pontozott vonal
mentén megváltoztatva egy másik kódszóhoz jutuk.

Miként a kockatér kódja esetében, most is 16 szavunk van, mivel azonban


a bitek száma mindössze 7, a Fano-kódtól nem várunk annyit, mind kockatér-
féle kódtól. Valóban: a Fano-kód 3 hibát már nem képes felismerni: ha például
az L egyenes által meghatározott egyik szóban (mondjuk abban, amelyben
az egyenes pontjai az 1-esek) három 1-est 0-ra cserélünk, akkor a csupa 0-
ból álló szavunkat kapjuk meg. Ez ráadásul nem csupán a „mesterséges”
kódszavaink esetében fordulhat elő. Ha ugyanebben a kódszóban egy másik
K egyenesnek megfelelő biteket kicseréljük (a K és L metszéspontjában 1-
ről 0-ra, K másik két pontja esetében pedig 0-ról 1-re), akkor egy harmadik
egyenes által meghatározott szót kapunk (14.11. ábra). A gondolatmenetet
folytatva beláthatjuk, hogy

a Fano-kód 2-hibafelismerő kód: két bit megváltoztatásával semelyik kód­


szóból sem kaphatunk másik kódszót.

Ebből viszont az következik hogy


244 14. VÉGES GEOMETRIÁK, KÓDOK, LATIN NÉGYZETEK...

a Fano-kód 1-hibajavító kód.

Az utóbbi állítás szerint ha egy szóban valamelyik bit megváltozik, ak­


kor ezt nem csupán észrevenni leszünk képesek, de ki is tudjuk javítani.
Tegyük fel ugyanis, hogy olyan üzenetet kapunk, amely egy a kódszótól csu­
pán egyetlen bitben különbözik. Lehetséges-e, hogy az üzenet egy másik, b
kódszó elromlásával keletkezett? Nem, ellenkező esetben ugyanis a és b két
bitben különböznének, ami viszont lehetetlen.
A Fano-sík és a kockatér álal meghatározott kódok a Reed-Müller-kódok
családjának a tagjai. Ezeket a gyakorlatban is gyakran alkalmazzák. A NASA
Mariner űrszondái például ilyen kódok segítségével sugároztak képeket a
Marsról. Ahogy a kockatér-kód egy háromdimenziós tér kétdimenziós alte­
rein alapult, úgy a Mariner által használt kód szavait egy ötdimenziós tér
háromdimenziós alterei határozták meg. Ezek a szavak 32 bit hosszúságúak
és blokkonként akár 7 hibát is ki tudnak javítani. A biztonságnak ára volt:
mivel a kód csak 64 szóból állt, 6 bit biztonságos elküldése egy 32 bites cso­
magolást jelentett. Vegyük azonban figyelembe, hogy a csatorna - a világűr
a Föld és a Mars között - igencsak „zajos”!
Hibajavító kódokkal lépten-nyomon találkozunk. A CD-lejátszónk egy bo­
nyolultabb hibajavító kódot használ, amelyet Reed-Solomon-kód néven isme­
rünk, és amelynek segítségével a tiszta hangzás akkor is helyreállítható, ha
a lemezünk megkarcolódott vagy beszennyeződött. Ilyen kódokat használ az
internetkapcsolatunk és a digitális telefon is a vonal zajának kiküszöbölése.

14.6.1. Bizonyítsuk be, hogy egy kód pontosan akkor d-hibajavító, ha 2d-hibafel-
ismerő.

14.6.2. Bizonyítsuk be, hogy a 7 bites karaktersorozatok mindegyike vagy Fano-


kódszó, vagy egy Fano-kódszóból egyetlen bit megváltoztatásával kapható meg.
(Az ilyen tulajdonságú kódokat tö k é le te s 1 -h ib a ja v ű ó k ó d n a k nevezzük.)

Áttekintő feladatok
14.6.3. Igazoljuk, hogy az amőbasík a 3 elemű test felett értelmezett affin sík.

14.6.4. Egy laboratóriumnak hét munkatársa van. Mindenki hetente három éjsza­
kai ügyeletet vállal. Andrea hétfőn, kedden és csütörtökön, Béla kedden, szerdán és
pénteken, Csaba szerdán, csütörtökön és szombaton, és így tovább. Bizonyítsuk be,
hogy bármelyik két munkatárs hetente pontosan egy éjszakát tölt együtt ügyelet­
ben, és hogy a hét bármelyik két éjszakáját jelöljük is ki, van olyan munkatárs, aki
mindkét alkalommal ügyeletben van. Milyen kapcsolat van a feladat és a Fano-sík
között?

14.6.5. A s m a l l s e t n e v ű k á rty a já té k szab ály ai a következők. A p a k lib a n 27 lap


van, am elyek m ind eg y ik én 1, 2 vagy 3 egyform a a la k z a t - kör, h árom szög, vagy
14.6. KÓDOK 245

négyzet - látható, az alakzatok színe piros, kék vagy zöld, de egy lap alakzatai min­
dig ugyanolyan színűek. Van tehát pontosan egy kártya, amelyen 2 zöld háromszög
van, egy olyan, amelyen három piros kör stb. Jó hármasnak nevezünk három kár­
tyalapot akkor, ha mindhármon ugyanannyi, vagy mindhármon különböző számú
alakzat van, ha mindhármon ugyanolyan, vagy mindhármon különböző alakzat
látható, illetve ha mindhármon ugyanolyan színű, vagy mindhármon különböző
színű alakzatok vannak. A játék úgy kezdődik, hogy leteszünk - lapjával felfelé -
kilenc kártyalapot, amelyek közül - amilyen gyorsan csak tudjuk - észrevesszük és
elvesszük a jó hármasokat; ha már nincs jó hármas, akkor felfordítunk 3 új lapot.
Amikor végleg kifogyunk a jó hármasokból, a játék véget ér.
(a) Hány jó hármas van?
(b) Igazoljuk, hogy bármely két lap esetén pontosan egy van, amellyel a szóban
forgó két lap jó hármast alkot.
(c) Milyen kapcsolat van a sm allset és a 3 elemű test feletti affin sík között?
(d) Bizonyítsuk be, hogy a játék végén vagy legalább hat, vagy egy kártya sem
marad.

14.6.6. Hány pontja van a két legkisebb projektív síknak?

14.6.7. A 13 elemű prímtest tetszőleges x és y elemei esetén tekintsük a test


+ y } háromelemű halmazát. Igazoljuk, hogy ezek a hármasok
{ x + y ,2 x + y ,3 x
blokkrendszert alkotnak, és határozzuk meg e blokkrendszer paramétereit.

14.6.8. Állapítsuk meg, létezik-e blokkrendszer az alábbi paraméterekkel.


(a) v = 15, k = 4, A = 1;
(b) v = 8, k = 4, A = 3;
(c) v = 16, k = 6, A = 1.

14.6.9. Bizonyítsk be, hogy az amőbasík az egyetlen Steiner-rendszer, amelyben


v = 9.

14.6.10. Mutassuk meg, hogy a hét napjainak a 6.8. alfejezetben bemutatott


összeadó-táblája latin négyzet. Általánosítható-e ez a megfigyelés?

14.6.11. A Fano-kód mintájára írjuk le a 3 elemű test feletti projektív sík által
meghatározott kódot. Hány hibát képes ez a kód felismerni, illetve kijavítani?
15. fejezet

A komplexitáselmélet és a
kriptográfia elemei

15.1. Art húr király udvarában*


Arthur király udvarában egyszer hosszú ideig 150 (nőtlen) lovag és 150 haja­
don vendégeskedett. A király elhatározta, hogy összeházasítja őket. A világ­
raszóló lakodalom azonban komoly akadályba ütközött: a hölgyek és urak né­
melyike ki nem állhatta egymást, így közöttük nemhogy házasság, de még egy
beszélgetés sem jöhetett szóba. Arthur többször is próbálkozott, de minden
alkalommal kudarcot vallott. Előhívta hát Merlint, a varázslót, és megparan­
csolta neki: házasítsa össze a vendégeket úgy, hogy a frigy egyetlen párnak se
legyen ellenére. A természetfölötti képességekkel rendelkező mágus egy pil­
lantás alatt átlátta, hogy a 150! lehetséges párosítás mindegyikében akadnak
össze nem férő felek, és ezt nyomban közölte is a királlyal. Mivel azonban
Merlin nem csupán nagy varázsló, de meglehetősen kétes alak hírében is állt,
a király csak fenntartásokkal bízott benne:
- Találj egy jó párosítást - követelte ellentmondást nem tűrve, - különben
életed végéig egy barlangban fogsz raboskodni!
Merlinnek ez alkalommal szerencséje volt: természetfeletti képességeit lat­
ba vetve áttekintette a huszadik század elején megjelent szakirodalmat, és
talált egy jó érvet, amely - egyszerű földi halandók számára is - alátámasz­
totta, hogy a nagyszabású terv nem valósítható meg. Visszatért hát a ki­
rályhoz, kiszólított 56 hölgyet a terem egyik oldalára, 95 lovagot pedig a
másikra, majd a szépreményű hajadonokhoz fordult:

*Az alfejezetet, am ely eredetileg a Yale E gyetem en ta r t o t t előadások segédanyaga volt,


(kis m ódosításokkal) Lovász László és M. D. P lu m m e r M atching Theory c. könyvéből
(A kadém iai K iadó, N o rth H olland, B u d ap est, 1986) v e ttü k át, M ike P lu m m er szíves en­
gedélyével.
15.1. ARTHUR KIRÁLY UDVARÁBAN 247

- Szép hölgyek, van-e köztetek, aki ezen lovagok valamelyikéhez szívesen


férjhez menne?
- Nincs! - felelték egyhangúan a hölgyek.
Merlin erre Arthurhoz fordult:
- Felséges király, hogy kívánhatod tőlem, hogy ennek az 56 hölgynek férjet
találjak, amikor már csak 55 lovag jöhet szóba potenciális párként?
így aztán a király, aki kiváló képzésben részesült, minek következtében
a skatulyaelvet is jól ismerte, azonnal belátta, hogy lehetetlent kíván, és
kegyesen útjára bocsátotta a varázslót.
Nem telt bele sok idő azonban, és Arthur újabb kihívás elé álította a
varázslót. Észrevette ugyanis, hogy a híres kerek asztalnál felszolgált vacso­
rákat a 150 lovag soha nem tudta békésen végigülni, a szomszédok állan­
dóan - gyakran a szó szoros értelmében is - hajba kaptak valamin. Arthur
nem tudott efelett napirendre térni, újra magához rendelte tehát Merlint,
és megparancsolta: találjon ki olyan ültetési rendet, amelyben mindenki két
jó barátja között foglal helyet. A természetfeletti képességekkel rendelkező
varázsló egy szempillantás alatt átlátta, hogy a 150! lehetséges ültetési rend
egyike sem megfelelő, és ezt azonmód jelentette is a királynak. Mikor Arthur
magyarázatot követelt, Merlin széttárta a karját:
- Uram, királyom, én lennék a legboldogabb, ha létezne egyszerű magya­
rázat, de csak azt tudom megerősíteni: lehetetlent kívánsz. Ti halandók ezt
nem érthetitek meg, legfeljebb úgy, ha hátralévő életetek egészét az érveim
hallgatásának szentelitek.
A királynak más tervei voltak hátralévő éveit illetően, így aztán beváltotta
fenyegetését: Merlin azóta is befalazva sínylődik egy sötét barlangban - az
alkalmazott matematikusok legnagyobb bánatára!
A mese tanulsága, hogy vannak a gráfoknak olyan tulajdonságai, ame­
lyeknek fennállása - megfelelő „prezentációval” könnyen ellenőrizhető. Azt,
hogy egy gráfban van teljes párosítás vagy Hamilton-kör, legkönnyebben
úgy „bizonyíthatjuk be”, hogy mutatunk egyet. Azt, hogy egy páros gráfban
nincs teljes párosítás, úgy „bizonyíthatjuk”, hogy megadjuk az egyik „oldal”
pontjainak olyan X részhalmazát, amelynek - együttesen - a másik oldalon
|Aj-nél kevesebb szomszédja van. Az Olvasónak és a szigorú Arthur király­
nak egyaránt a 15.1. ábrát ajánljuk figyelmébe. A bal oldali gráfban van
teljes párosítás (vastag vonalak jelölik), a jobb oldaliban viszont nincs. Az
utóbbi tényről a négy fekete pont (és szomszédsága) vizsgálatával győződhe­
tünk meg.
A legtöbb gráfelméleti tulajdonság logikai szempontból így viselkedik. Ha
a tulajdonság fennállása könnyen bizonyítható (demonstrálható), akkor a
számítógéptudósok a szóban forgó jellemzőt az NP osztályba tartozó, röviden
NP-beli tulajdonságnak nevezik. (Ha valaki kíváncsi rá, az NP a nemdeter­
minisztikus polinomiális idő kifejezést rövidíti, ennek a különösen érdekes
fogalomnak az értelmezését mindazonáltal ehelyütt inkább mellőzzük.) A
Merlinnek feladott két probléma - a teljes párosításé és a Hamilton-köré -
248 15. KOMPLEXITÁSELMÉLET ÉS KRIPTOGRÁFIA

15.1. ábra. Egy teljes párosítással rendelkező és egy anélküli páros gráf.

nyilvánvalóan NP-beli tulajdonságok. Ilyen tulajdonságokkal természetesen


nemcsak a gráfelméletben, de a matematika szinte minden területén talál­
kozunk. A természetes számok igen-igen fontos NP-tulajdonsága például az,
hogy összetettek-e: azt, hogy egy n szám összetett, legkönnyebben egy n = ab
felbontás megadásával támaszthatjuk alá (ahol természetesen a,b > 1).
Eddigi megjegyzéseink alapján nyilvánvaló, hogy miként kerülheti el Mer-
lin a bezáratást azokban az esetekben, amelyekben a számára kitűzött fel­
adatnak van megoldása. Tegyük fel például, hogy sikerül találnia a lovagok
számára egy jó ültetési rendet. Ekkor nagyon könnyen meggyőzheti Arhurt,
hogy valóban megoldotta a feladatot: le kell ültetni a lovagokat, és minde­
gyiktől meg kell kérdezni, elégedett-e e szomszédjaival (vagy kivárni, hogy
rendbontás nélkül ér-e véget a vacsora). Ez pontosan annyit jelent, hogy a
„baráti viszonyok gráfjának” az a tulajdonsága, hogy van benne Hamilton-
kör, NP-beli tulajdonság. De akkor hogy lehet, hogy a házassági ügyben a
varázsló megmenekült a bebörtönzéstől, az ültetés ügyében viszont kudar­
cot vallott, és őt magát ültették le (méghozzá örökre) - holott a két feladat
közül egyiknek sem volt megoldása? Mi a különbség a teljes párosítás és a
Hamilton-kör nemlétezése között? A mese alapján nyilván az Olvasó is ki­
találta a választ: a teljes párosítás nemlétezése egy páros gráfnak NP-beli
tulajdonsága (ez lényegében a 10.3.1. Tétel fő tanulsága), az viszont, hogy
egy gráfban nincs Hamilton-kör, az a gráfnak nem NP-beli tulajdonsága.
(Hogy pontosak legyünk: az utóbbi tényt egyelőre senki sem bizonyította
be, mindazonáltal erős érvek szólnak mellette.)
Vannak tehát olyan NP-tulajdonságok, amelyeknek a fenn-nem-állása is
NP-tulajdonság. Azokat a tételeket, amelyek egy NP-tulajdonság fennállásá­
nak és egy másik NP-tulajdonság fenn-nem-állásának ekvivalenciáját mond­
ják ki, jó jellemzésnek nevezzük. Nevezetes jó jellemzésekkel a gráfelméletben
és a matematika más területein is találkozhatunk.
Sok olyan NP-beli tulajdonság van, amely még ennél is kellemesebben
viselkedik. A lovagok és a hölgyek összeházasításának problémájáról (mond­
juk ennek a könyvnek az elolvasása után) akár maga Arthur is eldöntheti,
hogy megoldható-e: nem kell mást tennie, mint követni a 10.4. alfejezetben
15.2. KLASSZIKUS KRIPTOGRÁFIA 249

leírt algoritmust. Ez persze sok időt és fáradságot kíván, de közönséges földi


halandók is elvégezhetik, Merlin természetfeletti képességeire nincs hozzá
szükség. Az efféle, effektív módon eldönthető tulajdonságokat P osztálybeli
tulajdonságoknak nevezzük (a P a p o li n o m i á li s i d ő t rövidíti, ami az effektív
módon való kiszámíthatóság pontos, de meglehetősen technikai jellemzése).
Ebbe az osztályba tartozik még a gráfok több más - ebben a könyvben is
vizsgált - tulajdonsága, mint például az összefüggőség vagy egy kör léte­
zése. Annak eldöntése, hogy egy szám prímszám-e, vagy sem, szintén ilyen
probléma - ezt nem sokkal e könyv nyomdába kerülése előtt sikerült bebi­
zonyítani! (A 6.10. alfejezetben leírt algoritmus ezt nem bizonyítja: ebben
ugyanis az a alapok véletlen kiválasztása is szerepet kap.)
A polinomiális idő és az NP-beli tulajdonság fogalmai jelentik a modern
komplexitáselmélet kezdeteit. Az elmélet a tiszta és az alkalmazott mate­
matika számos területét áthatja. A következő alfejezetekben bemutatjuk,
miként alkalmazhatók a komplexitáselmélet gondolatai a k r ip to g r á fiá b a n , az
elméleti számítástudomány egyik legfontosabb területén.

15.2. Klasszikus kriptográfia


Az emberiséget az írás feltalása óta érdekli, miként kerülhetné el, hogy az
írásos üzenetek avatatlan, kiváltképp ellenséges kézbe kerüljenek. A titkosírás
(vagy kriptográfia) tudománya ennélfogva évezredes múltra tekinthet vissza.
A kriptoráfia alaphelyzete a következő: az egyik fél, mondjuk Arthur ki­
rály, üzenetet kíván küldeni kollégájának, Béla királynak. Fennáll azonban a
veszély, hogy a gonosz Caligula császár elfogja az üzenetet, és olyan dolgokat
tud meg, amelyek a két királyt (és népét) veszélybe sodorhatják. Magát az
üzenetet, amelyet mindenki (Caligulát is beleértve) megérthet, (rejtjelezés
nélküli) n y ű t s z ö v e g n e k nevezzük. Az üzenetet biztosítandó Arthur t i t k o ­
s í t j a a szöveget. Amikor Béla király megkapja, m e g f e j t i az üzenetet. Ahhoz,
hogy a királyok képesek legyenek az üzeneteket titkosítani, illetve a titko­
sított üzeneteket megfejteni, olyan információval kell rendelkezniük, amivel
Caligula nem: ez az információ a titkosírás k u lc s a .
A történelem folyamán számos titkosírásrendszert alkalmaztak, de ezek
többségéről kiderült, hogy nem biztonságosak, különösen olyan szituációk­
ban, amelyekben az ellenségnek hatékony eszközei vannak a kód feltörésére.
A legegyszerűbb módszer a h e l y e t t e s í t é s e s k ó d Ennek kulcsa egy táblá­
zat, amely megadja, hogy melyik betű helyébe melyiket kell írni. Bár az így
titkosított szövegek eléggé zavarosnak tűnhetnek, a helyettesítéses kódokat
valójában elég könnyen fel lehet törni. A 15.2.1. feladat megoldása világosan
mutatja, miként lehet a szavak hosszából és elhelyezkedéséből kikövetkez­
tetni az eredeti üzenetet - feltéve, hogy a szóközök képe szóköz, nem pedig
valamilyen más karakter. De ha a szóközök helyett más karakterek állnak, az
egyes betűk gyakoriságának elemzése általában akkor is elegendő információt
szolgáltat a kód feltöréséhez.
250 15. KOMPLEXITÁSELMÉLET ÉS KRIPTOGRÁFIA

A o n e-tim e pad. A „one-time pad” használata sokkal biztonságosabb: ezt


a módszert alkalmazta például a második világháborúban az USA elnöke és
a brit miniszterelnök is. A módszer hátulütó'je, hogy meglehetősen hosszú
„pad” szükséges hozzá, amely ráadásul csupán egyszer használható.
Egy one-time pad nem más, mint egy 0-kból és 1-esekből álló véletlen
sorozat, amilyen például a következő:

11000111000010000110010100100100101100110010101100001110110000010

Arthur és Béla egyaránt ismerik ezt a sorozatot (már jó előre elküldték egy­
másnak). Arthur a következő üzenetet kívánja elküldeni Bélának:

ATTACK MONDAY

Ehhez először át kell alakítania az üzenetet úgy, hogy csupán 0-ból és 1-esből
álljon. Nem biztos, hogy a középkori királyok erre ismertek jó módszereket,
de az Olvasó számára ez nyilván nem okoz gondot: használhatjuk például a
betűk ASCII-kódját, vagy a Unicode rendszert. Mi nem akarjuk túlságosan
elbonyolítani a dolgot, így az ábécé betűihez 1-től 26-ig számokat rendelünk,
ezeket a számokat pedig kettes számrendszerben írjuk fel (a számok elé annyi
nullát írunk, hogy valamennyi 5 számjegyből álljon). Az A betű számjele
eszerint 00001, a B-é 00010 és így tovább. A fenti üzenet ezzel

00001100101001000001000110101100000011010111101110001000000111001

alakot ölt. Ez elég titkosnak tűnik ugyan, de Caligulának (vagy inkább az ud­
varában raboskodó kiváló görög tudósoknak) nem okozna különösebb prob­
lémát a megfejtése. Arthur úgy titkosítja az üzenetet, hogy azt karakteren­
ként összeadja a one-time paddel. Az üzenet első karakteréhez (a 0-hoz) a
pad első karakterét (1-et) adja, így megkapja a kódolt üzenet első karakterét:
0 © 1 = 1. A második, harmadik, negyedik.. .karaktert hasonlóan számítja
ki: 0 © 1 = 1, 0 © 0 = 0, 0 © 0 = 0, 1 © 0 = 1, 1 © 1 = 0 . . . (Ne felejtsük
el, hogy a kételemű test különös összeadótábláját kell használnunk, amely
szerint 1 © 1 = 0.) Másképpen: ha a pad fc-adik karaktere 1, akkor Arthur az
eredeti üzenet fc-adik betűjét felcseréli (a 0 helyébe 1-et ír, illetve fordítva),
ha viszont ez a karakter 0, akkor az üzenet fc-adik karaktere változatlan
marad.
Arthur így a következő titkos üzenetet számítja ki:

11001011101011000111010010001000101111100101000010000110110111011.

Ezt elküldi Bélának, aki a one-time pad ismeretében visszacseréli a megfelelő


karaktereket, és így visszakapja az eredeti üzenetet.
Caligula azonban, aki a one-time pádét nem ismeri - tudósaival egyetem­
ben - reménytelen helyzetben van: nem tudja, hogy a titkos üzenet melyik
karaktereit kell kicserélnie. Az üzenet tehát biztonságos.
15.3. AZ UTOLSÓ SAKKLÉPÉS 251

Sokba kerülhet persze annak biztosítása, hogy az üzenet feladója és ve­


vője egyaránt rendelkezzen a kulccsal, de vegyük figyelembe, hogy a kulcs
békés években is elküldhető, méghozzá az üzenettől teljesen eltérő módszer­
rel. (Egy kulcsban a felek ráadásul anélkül is megállapodhatnak, hogy el
kellene küldeniük egymásnak - ennyire azonban nem akarunk elmerülni a
kriptográfia rejtelmeiben.)
Ha a királyoknak sikerül elküldeniük a kulcsot, nagy lehet a kísértés, hogy
újra és újra felhasználják, elvégre ha Béla ugyanannak a one-time padnek a
segítségével titkosítja válaszát, az még mindig a titokzatosság látszatát kelti.
A15.2.2 és a 15.2.3. feladatot megoldva az Olvasó meggyőződhet arról, hogy
ez nem különösebben jó ötlet (és hogy a módszernek egyéb gyengeségei is
vannak).

15.2.1. A királyok egyike a következő üzenetet a helyettesítéses módszerrel titko­


sította. Caligula elfogta az üzenetet, és könnyedén meg is fejtette. Képes erre az
Olvasó is?
Ü W P X Ű K Y W D Ü C K S C R Ű L D Á ÚÜ K Ü B A Ü J Ü ÍG Ó Ü B . T Ű B R

15.2.2. Arthur egy alkalommal hibát követett el: az üzenet első karakterét a one-
time pad második karakterével, az üzenet második karakterét a pad harmadik
karakterével titkosította, és így tovább. Ezt azonban csak akkor vette észre, amikor
a küldönc már úton volt az üzenettel. Attól tartva, hogy Béla nem érti meg az
üzenetét, ugyanazzal a one-time paddel újra titkosította (másodszor már helyesen),
és ezt is elküldte Bélának.
Caligula mindkét üzenetet elfogta, és megfejtette az üzenetet. Hogyan?

15.2.3. A királyok kifogytak a one-time padekből, egy alkalommal így Béla éppen
ugyanazzal a paddel kódolta a választ, amellyel Arthur magát az üzenetet küldte.
Caligula elfogta az üzeneteket, és mindkettőt megfejtette. Hogyan?

15.3. Az utolsó sakklépés


A modern kriptográfia kezdetei a 70-es évekre tehetőek, amikor felismerték,
hogy az üzenetek biztonságát nem csupán egy, az illetéktelen harmadik fél
előtt ismeretlen információ biztosíthatja, de az üzenet kódolásának bonyo­
lultsága is. Az alapgondolatot egy egyszerű példával szemléltethetjük.
Adél és Béla telefonon sakkoznak. A partit éjszakára meg akarják sza­
kítani, de ezt úgy akarják tenni, hogy az a fél, aki következik, ne gondol­
kodhasson egész éjjel azon, hogy mi lenne a legjobb lépés. Egy bajnokságon
ilyenkor az utolsó lépést borítékolják, odaadják a bírónak, aki reggel felnyitja
a borítékot, és a lépésre következő játékos órája csak ekkor kezd ketyegni.
Adél és Béla azonban bíró nélkül játszanak, tehát sem boríték, sem har­
madik fél nem áll a rendelkezésükre. Annak, aki utolsónak lép - mondjuk
Adélnak - üzenetet kell küldenie a partnernek. Másnap reggel (vagy amikor
folytatják a játékot), újabb üzenetet küld, amelyben további információkat
252 15. KOMPLEXITÁSELMÉLET ÉS KRIPTOGRÁFIA

- egy kulcsot - ad meg, és ennek alapján Béla rekonstruálhatja a szóban


forgó lépést. A két fontos szempont: Béla nem lehet képes arra, hogy a kulcs
nélkül megfejtse, mit lépett Adél, Adélnak viszont nem állhat módjában az
éjszaka folyamán megváltoztatni a lépését.
Ez lehetetlennek tűnik! Ha az első üzenet alapján Béla egyértelműen re­
konstruálhatja a lépést, akkor túlságosan hamar tudomására juthat, ha pedig
az elküldött információ nem tartalmaz mindent, akkor az éjszaka folyamán
Adél akár meg is változtathatja a döntését, és a másnap reggeli üzenetet - a
„kulcsot” - ennek megfelelően küldheti el.
Ha az információt a klasszikus elmélet szerint mérjük, akkor a dilemma
valóban megoldhatatlan. Ezen a ponton van segítségünkre a komplexitás:
nem elég ugyanis, ha az információt továbbítjuk - azt fel is kell dolgozni.
Lássuk tehát a probléma megoldását, amely csupán az elemi számelmé­
letre támaszkodik. (Persze nem ez az egyetlen lehetőség.) Adél és Béla meg­
egyeznek abban, hogy minden lépést egy négyjegyű számmal kódolnak: ha
mondjuk „11” jelöli a K-t, „6” jelöli az f-et, „3” pedig önmagát, akkor „1163”
jelentése: „Kf3”. Ez persze még nem titkosítás, csupán jelölés.
Ezután Adél a lépését megadó négy számjegy után ír még 196-ot úgy,
hogy egy 200 jegyű p = 1163... prímszámot kapjon. Generál egy másik,
201 jegyű q prímszámot is, és kiszámítja az N — pq szorzatot (ez tollal és
papíron nehezen oldható meg, de egy számítógép segítségével gyerekjáték).
A 400 vagy 401 jegyű N számot ezután elküldi Bélának.
Másnap reggel aztán Béla megkapja a p és q prímeket is. Adél lépése ekkor
p (vagyis a kisebbik) szám első négy számjegye alapján rekonstruálható, és
Béla azt is könnyen beláthatja, hogy Adél nem csalt: csak azt kell ellenőriznie,
hogy a pq szorzat valóban az előző este kapott N szám.
Belátható, hogy a módszer kielégíti a vele szemben tám asztott követelmé­
nyeket. Először is, Adél nem változtathatja meg a lépését, ezt ugyanis az N
kisebbik prímtényezőjének első négy számjegye kódolja. Abban a pillanatban
tehát, amikor elküldte N -t Bélának, Adél végérvényesen lerakta a figurát.
De ha az N szám minden információt magába foglal, vajon nem kerül
Béla előnybe? Előnybe kerülhetne - amennyiben korlátlan idő és hihetetlen
számítógépes kapacitás állna rendelkezésére. A teendője egyszerű: egy 400
(vagy 401) jegyű szám prímtényezőit kell megtalálnia. Ez a feladat azonban
a tudomány és a technika jelenlegi fokán reménytelen.
Megteheti-e Adél, hogy egy másik p' , q' prímpárt küld másnap reggel?
Nem, hiszen Béla könnyen kiszámíthatja a p'q' szorzatot, és ellenőrizheti,
hogy az eredmény az N szám-e vagy sem. (Ezen a ponton a prímtényezős
felbontásnak a 6.3.1. Tételben bizonyított egyértelműségére kell hivatkoz­
nunk.)
Adél lépését a p prímszám első négy számjegye egyértelműen meghatá­
rozza. Azt is mondhatnánk, hogy a p prímszám utolsó 196 számjegyét és a
q prímszámot egyfajta dobozként kell felfognunk, amelybe az üzenetet „be­
csomagoltuk”. A doboz elrejti Béla elől az információt, kinyitni pedig csak
15.4. HOGYAN ELLENŐRIZHETŐ EGY ISMERETLEN JELSZÓ? 253

a megfelelő kulccsal - az N szám prímtényezős felbontása alapján - lehet.


A módszer döntő eleme a bonyolultság: annak nehézsége, hogy megtaláljuk
egy egész szám prímtényezős felbontásában szereplő számokat.
Az elektronikus kommunikáció módszereinek elterjedésével a hagyomá­
nyos és üzleti leveleket is elektronikusan továbbítjuk. A fentiekben egy elekt­
ronikus „csomagolási lehetőséget” ismertettünk. Más módszerek is ismerete­
sek, amelyekkel az elektronikus jelszavak, az autorizáció vagy az elektronikus
aláírás problémája megoldható. Ezeknek a módszereknek a jelentőségét ne­
héz lenne eltúlozni: a számítógépes biztonság, a titkosírás, a bankjegykiadó
automaták csak néhány a számos alkalmazási terület közül. A módszerek
gyakran alapvető számelméleti tényeken alapulnak; a következő alfejezet-
ben az egyik ilyen módszert (pontosabban annak egyszerűsített változatát)
vesszük alaposabban szemügyre.

15.3.1. A one-time padek sikerén felbuzdulva Adél a következő eljárást javasolja a


nap utolsó lépésének titkosítására. Este titkosítja a lépést (amelyet esetleg kibővít
kissé, hogy hosszabb legyen) egy véletlenül generált 01-sorozattal (a one-time pad
módszerhez hasonlóan), elküldi Bélának, majd másnap reggel mellékeli a kulcsot.
Elfogadja-e Béla a javaslatot?

15.3.2. Adél megváltoztatja az eljárást: a véletlen 01-sorozat helyett egy szintén


véletlen, mindazonáltal értelmes szöveget javasol kulcsnak. Melyikük számára jár
ez előnyökkel?

15.4. Hogyan ellenőrizhető egy ism eretlen


jelszó?
Egy bankjegykiadó automata a név és a jelszó alapján azonosítja az ügyfe­
let. A rendszer mindaddig biztonságos, amíg a jelszót sikerül titokban tar­
tani. Van azonban egy gyenge pont: a bank számítógépének memóriájában
a jelszavak is el vannak raktározva, így a számítógép kezelője is tudomást
szerezhet róluk, ami visszaélésekre adhat lehetőséget.
A komplexitáselmélet lehetőséget kínál arra, hogy a bank úgy ellenőriz­
hesse, tudja-e az ügyfél a jelszót, hogy az a saját rendszerében nincs is el­
raktározva. Első hallásra ez lehetetlennek tűnhet - de elsőre a sakk utolsó
lépésének „biztonságos” továbbítását is lehetetlen feladatnak gondoltuk! A
megoldás a sakkos példánkban már bevált módszeren alapul.
Tegyük fel, hogy a jelszó egy 100 jegyű p prímszám (ez persze minden­
napos használatra kissé hosszú jelszó, de az alapgondolat így illusztrálható
a legjobban). Amikor az ügyfél kiválasztja magának a jelszót, választ hozzá
egy másik q prímet is, kiszámítja a két prím N = pq szorzatát, a bank­
nak pedig ezt az N számot adja meg. A bank számítógépe ellenőrzi, hogy
a megadott „jelszó” osztója-e az N számnak: ha igen, akkor elfogadja. Egy
254 15. KOMPLEXITÁSELMÉLET ÉS KRIPTOGRÁFIA

200 jegyű számnak egy 100 jegyűvel való osztása egy számítógép számára
triviális feladat.
Tegyük fel, hogy a rendszergazda az ügyfél fájljai között megtalálja a
szóban forgó N számot is. Ahhoz, hogy az információval visszaélhessen, meg
kellene találnia az N szám egy 100 jegyű osztóját, így ő is a nagy számok
prímtényezős felbontásának - reménytelen - problémájába ütközik. Annak
ellenére tehát, hogy az N szám minden fontos információt magába foglal, a
prímtényezős felbontás elvégzésének bonyolultsága folytán a jelszó tökéletes
biztonságot garantál az ügyfél számára.

15.5. Hogyan találjunk nagy prímeket?


A „modern kriptográfiát” illusztráló példáinkban - csakúgy, mint néhány ki­
vételtől eltekintve az összes többiben - nagy prímszámokra volt szükségünk.
Már tudjuk, hogy bármilyen nagy prímszámok is léteznek (6.4.1. Tétel), de
vannak-e olyan 200 jegyű prímek, amelyeknek az első négy számjegye 1163
(vagy négy másik, előre kijelölt szám)? A Maple néhány másodperc alatt
megadja az ilyen számok legkisebbikét:

11630000000000000000000000000000000000000000000000
00000000000000000000000000000000000000000000000000
00000000000000000000000000000000000000000000000000
00000000000000000000000000000000000000000000000371

A legkisebb olyan 200 jegyű szám, amelynek első négy számjegye 1163,
1163 • 10196. Ez természetsen nem prímszám, de a fenti számhoz igencsak
közel esik. A feltételünknek valójában rengeteg prímszám eleget tesz! A 6.4.
alfejezetben bemutatotthoz hasonló gondolatmenet azt mutatja, hogy Adél
mintegy 1, 95 • 10193 prímszám közül választhat.
Ez valóban sok lehetőség - de hogyan találjunk meg közülük egyet? Nem
volna helyes, ha Adél a fenti (szóba jöhető legkisebb) számot használná, ezt
ugyanis Béla kitalálná, és megfejthetné, mi Adél lépése. Adélnak nem kell
egyebet tennie, mint véletlenszerűen kiválasztani a maradék számjegyeket,
és tesztelni, hogy az így kapott szám prím-e vagy sem. Ha nem prím, ak­
kor újra próbálkozhat. A 6.4. alfejezetben már kiszámítottuk: a 200-jegyű
számok között körülbelül minden 460-adik prím, így átlagosan Adél minden
460-adik próbálkozásra egy prímszámot fog eredményezni. Ez hosszadalmas­
nak tűnhet, számítógéppel azonban mindössze néhány másodpercbe telik: a
következő számot például így kaptuk meg:

11631467128765557632799097045596606908283654760066
68873814489354662474360419891104680411103886895880
57457155724800095696391740333854584185935354886223
23782317577559864739652701127177097278389465414589
15.6. NYILVÁNOS KULCSÚ TITKOSÍRÁS 255

Látjuk tehát, hogy az információ prímekbe csomagolásához a 6.10. alfe-


jezetben említett mindkét tényt kihasználjuk: azt is, hogy a prímtesztelés
könnyű (a titkosítás tehát egyszerűen megoldható), és azt is, hogy a prímté­
nyezős felbontás reménytelenül nehéz feladat (aminek következtében a kulcs
gyakorlatilag feltörhetetlen).

15.6. Nyilvános kulcsú titkosírás


A gyakorlatban alkalmazott kriptográfiai rendszerek sokkal összetettebbek,
mint az előző alfejezetekben látottak, de hasonló alapelveken nyugszanak.
Ebben az alfejezetben a legismertebb ilyen rendszer, az RSA-kód mögött
„rejlő” matematikával ismerkedünk meg. (A kód három felfedezőjéről kapta
a nevét: Rivest, Shamir és Adleman.)

A p r o to k o ll. Adél generál két százjegyű prímszámot, p-t és q-1, majd ki­
számítja ezek m = pq szorzatát. Ezután generál két 200 jegyű számot, d-1 és
e-t, amelyekre teljesül, hogy a (p — l)(q — 1) szorzat osztója az ed — 1-nek.
(Hamarosan viszatérünk arra, hogy ez miként tehető meg.)
Az m és e számokat Adél felteszi a honlapjára (vagy közzéteszi a telefon­
könyvben), a p, q és d számokat azonban titokban tartja. A d szám Adél
privát, az e szám pedig a nyilvános kódja (a p és q prímeket akár el is fe­
lejtheti, ezekre csak a rendszer beindításához van szükség, a továbbiakban
semmi szerepük nincs).
Tegyük fel, hogy Béla üzenetet küld Adélnak. Üzenetét egy x szám adja
meg (már láttuk, hogy miként lehet egy szöveges üzenetet számmá alakítani).
Az x nemnegatív egész szám nem lehet m-nél nagyobb (ha mégis ez a helyzet,
akkor az üzenetet több kisebb részletben kell elküldeni).
A következő lépés a legtrükkösebb: Béla kiszámítja az x e szám maradé­
kát modulo m. Mivel x és e egyaránt igen nagy (200 jegyű) számok, x e
számjegyeinek száma meghaladja a 10200-t. Ekkora számot még leírni sem
tudnánk, a kiszámításáról már nem is szólva. Szerencsére azonban nem ma­
gára a számra, csupán az m-mel való osztásakor kapott maradékára van
szükségünk. Ez utóbbi is elég nagy, de már elfér 2 vagy 3 sorban.
Legyen tehát r a szóban forgó maradék, Béla ezt küldi el Adélnak. Adél
az üzenetet a d privát kulcs segítségével, lényegében a Béla által elvégzett
műveleteket követve fejti meg: kiszámítja az rd szám maradékát modulo m.
És most jön a számelmélet fekete mágiája (ami addig mágia, amíg meg nem
ismerkedünk a magyarázattal): ez a maradék éppen az x „nyílt szöveg”.
És ha Adél válaszolni akar Bélának? Ehhez Bélának is szüksége van egy
nyilvános és egy titkos kulcsra: ő is választ tehát két {p' és q') prímszámot,
kiszámítja ezek m ' szorzatát, választ két olyan d! és e! pozitív számot, hogy
e!d! —1 osztható legyen (p' —\ )(q' —l)-gyel, végül nyilvánosságra hozza m '-t
és e'-t. Ezután Adél már küldheti is a maga - szintén titkos - üzenetét.
256 15. KOMPLEXITÁSELMÉLET ÉS KRIPTOGRÁFIA

A p r o to k o ll m ö g ö t t i „ fek ete m á g ia ”. A módszer lényegében a „kis”


Fermat-tételen (6.5.1. Tétel) alapul. Emlékeztetünk arra, hogy a nyílt szöveg
esetünkben az x szám, a titkosított üzenet pedig r: az x e szám maradéka
modulo m. Ezt így is írhatjuk:

r = x e (mód m).

Az üzenet dekódolásához Adél a kongruencia mindkét oldalát d-edik hat­


ványra emeli:
rd = x ed (mód m).
Pontosában: Adél az rd szám m-rnel való osztásakor adott x' maradékát
számítja ki, ez pedig megegyezik x ed maradékával modulo m. Bebizonyítjuk,
hogy ez a maradék éppen x. Mivel 0 < x < m, elegendő azt igazolni, hogy
x ed — x osztható m-mel. Mivel pedig m = pq két különböző prím szorzata,
elegendő megmutatni, hogy a x ed —x szám p-vel és g-val is osztható.
Lássuk - mondjuk - a p-vel való oszthatóságot. Az e és d számok szá­
munkra legfontosabb tulajdonsága az, hogy ed—1 osztható (p—1) (g—l)-gyel,
és így persze p — 1-gyel is. Eszerint az ed szorzat alkalmas l egész számmal
ed — (p — 1)1 + 1 alakba írható. így azt kapjuk, hogy

x ed — x = x(x(p~ ^ 1 — l).

Az aÁP-1)* — 1 szám osztható x p~l — 1-gyel (6.1.6. feladat), minek követ­


keztében x(x(p~1')l — l) osztható x p —a’-szel, ez utóbbi viszont - a „kis”
Fermat-tétel értelmében - osztható p-vel.
H ogyan végezzük el a szám ításo k at? Azt már láttuk, hogy milyen mó­
don találhatunk nagy prímszámokat: Adélnak csupán a 6.10. alfejezetben
leírtakat kell követnie.
A következő feladat a két kulcs, e és / kiszámítása. Közülük az egyiket -
mondjuk e-t - Adél véletlenszerűen választja ki az 1,. .. , (p —1){q —1) — 1
számok közül. Ellenőriznie kell, hogy a kiválasztott szám relatív prím-e
(p —l)(g —l)-hez, amiben a 6.6. alfejezetben tárgyalt euklideszi algoritmus
nyújthat segítséget. Ha a kiválasztott szám, valamint a (p—l)(q —1) szorzat
nem relatív prímek, akkor másikat választ. A feladat nem sokban különbö­
zik a prímkereséstől, és nem nehéz belátni, hogy a szükséges próbálkozások
száma is nagyjából ugyanannyi.
Amikor végül sikerrel jár, és az euklideszi algoritmus azt mutatja, hogy
kiválasztott e szám, valamint (p —l)(g —1) relatív prímek, akkor az algorit­
mus „melléktermékeként” (mint a 6.6. fejeteben) két olyan u és v számot is
megkap, amelyekkel
eu — (p —l)(g —l)t> = 1.
Az eu — 1 szám tehát osztható (p — l)(g — l)-gyel. Ha most d az u szám
maradéka modulo (p —í)(q —1), akkor ed —1 szintén osztható (p —l)(g —1)-
gyel, találtunk tehát egy megfelelő nyilvános kulcsot.
15.6. NYILVÁNOS KULCSÚ TITKOSÍRÁS 257

Ezek után már csak egy kérdés marad: hogyan számítja ki az x e szám
maradékát modulo m, amikor az x e szám leírására az egész Világegyetem
kicsi volna? A válasz: úgy, ahogy azt a 6.10. alfejezetben már bemutattuk.
Partnerhitelesítés és egyebek. Az RSA-rendszer számos más területen is
alkalmazható. Tegyük fel például, hogy Adél üzenetet kap Bélától. Hogyan
bizonyosodhat meg arról, hogy az üzenetet valóban Béla küldte? Attól, hogy
az aláírás „Béla”, az üzenet még bárkitől érkezhet. Béla a következőképpen
oszlathatja el a kételyeket. Először saját titkos kódjával titkosítja az üzene­
tet, majd aláírja, és az egészet újra titkosítja, de most már Adél - nyilvános
- kódjával. Amikor Adél megkapja az üzenetet, először a nyilvános kódját
alkalmazza. Ekkor egy - még mindig - titkos üzenetet kap „Béla” aláírással.
Ezután nincs más teendője, mint hogy az üzenet aláírás nélküli részét Béla
nyilvános kódjának segítségével megfejtse.
Elképzelhető-e, hogy az üzenet nem Bélától, hanem egy harmadik (csaló)
féltől származik? Nem: a csalónak ugyanis Béla privát kódját is ismernie kel­
lene (ha ugyanis más kóddal titkosítja az üzenetet, akkor Adél Béla nyilvános
kódjával nem kap értelmes üzenetet, a turpisságra így nyomban fény derül).
Hasonló trükkökkel az RSA nyilvános kódok más elektronikus rendszerek­
ben is használhatók, így többek között autentifikációra vagy vízjelezésre is.
Biztonság. Az RSA-protokoll biztonsága bonyolult kérdés, amely a rend­
szer 1977-es bevezetése óta kutatók ezreit foglalkoztatta. Biztató jel, hogy
egyetlen általános támadás sem aratott még sikert, de sajnos ezidáig a biz­
tonság egzakt bizonyítása sem sikerült senkinek (úgy tűnik, hogy a jelen
matematikájának nincs elegendő eszköze egy ilyen bizonyításhoz).
Néhány érv mindazonáltal létezik, amely a rendszer biztonságát támasztja
alá. Képzeljük el, hogy elfogtuk Béla üzenetét, és meg akarjuk fejteni. Ismer­
jük az r maradékot (ez maga az üzenet), Adél e nyilvános kódját és az m
számot. Két támadási felület kínálkozik: megpróbálhatjuk kitalálni Adél tit­
kos d kódját, és azzal dekódolni az üzenetet, vagy megkísérelhetjük valami­
lyen közvetlenebb módon megtalálni az x számot x e modulo m maradékának
ismeretében.
Sajnos nincs olyan tétel, amely igazolná, hogy egyik feladat sem oldható
meg emberi léptékű időintervallumon belül. A rendszer biztonságát minda­
zonáltal a következő tény erősen alátámaszthatja: ha valaki fel tudja törni
az RSA-rendszert, akkor ugyanazzal a módszerrel az m szám prímtényezős
felbontását is megtalálná (15.6.1. feladat). A prímtényezős felbontással szin­
tén rengetegen foglalkoztak, hatékony módszert azonban senki sem talált -
ami erősen valószínűvé teszi, hogy az RSA-rendszer biztonságos.

15.6.1. Tegyük fel, hogy Béla kidolgoz egy algoritmust, amellyel az RSA-rendszert
az imént leírt első irányból képes feltörni: Adél nyilvános m és e kódjának ismere­
tében ki tudja számítani a titkos d kódot.
(a) Mutassuk meg, hogy ennek alapján miként számíthatja ki a (p —1)(<7 —1)
számot,
258 15. KOMPLEXITÁSELMÉLET ÉS KRIPTOGRÁFIA

(b) és hogy ez utóbbi segítségével meghatározhatja az m = pq prímtényezős


felbontást.

A gyakorlat. Mennyire lehet gyakorlatias egy ilyen bonyolult rendszer? Ügy


tűnik, hogy legfeljebb néhány matematikus képes arra, hogy az RSA-kódolást
a gyakorlatban is alkalmazza. Pedig elég valószínű, hogy az Olvasó is több
százszor használta már! Az RSA-rendszert használják az SSL-rendszerek (Se-
cure Socket Layer), utóbbiakat pedig az shttp-k (biztonságos http). Amikor
egy biztonságos internetoldalra látogatunk (például ha az e-mailjeinket ol­
vassuk, vagy rendelünk valamit), akkor a számítógépünk generál számunkra
egy nyilvános és egy titkos kódot, ezáltal biztosítva, hogy a hitelkártyánk
száma - más személyes adatainkkal együtt - titokban maradjon. Ezt igazából
észre sem vesszük, csupán azt, hogy a kapcsolat létrehozása a megszokottnál
valamivel hosszabb időbe telik.
A gyakorlatban a 100 jegyű prímszámokon alapuló kódokat nem tekintik
eléggé biztonságosnak: az e-kereskedelem több mint 200, a katonai kommu­
nikáció több mint 400 jegyű prímeket használ.
Az x nyílt szöveg e kitevőjű hatványának kiszámítására megdöbbentően
hatékony eljárások állnak rendelkezésünkre, mégis túlságosan lassú lenne, ha
minden egyes üzenetet ezen a módon titkosítanánk, illetve fejtenénk meg. A
megoldást az jelenti, ha első üzenetként egy egyszerűbb rendszer kulcsát
küldjük el. Gondolhatunk akár egy one-time padre is, bár a gyakorlatban
sokkal hatékonyabb rendszereket alkalmaznak, mint amilyen például a DES
(Digital Encryption Standard). Ezt a kulcsot ezután néhány üzenet erejéig
használjuk, majd eldobjuk. A lényeg, hogy egy kódot csak olyan rövid ideg
használjunk, amennyi a feltöréséhez nem elegendő.
16. fejezet

Megoldások

1. Számoljuk össze!
1.1. A n d rea szü letésn a p ja
1.1.1. 7 - 6 - - - 2 - 1 = 5040.
1.1.2. Csaba: 15 • 23 = 120. Dóra: 15 • 3 • 2 • 1 = 90.
1.1.3. Béla: 9-7-5-3 = 945. Csaba: 945-25 = 302,40. Dóra: 945-5-4-3-2-1 =
= 113400.
1.2. H alm azok
1.2.1. (a) Az utca összes háza; (b) egy olimpiai csapat; (c) a 99-esek
osztálya ; (d) egy erdő összes fája; (e) a racionális számok halmaza; (f) egy
kör a síkon.
1.2.2. (a) Katonák; (b) emberek; (c) könyvek; (d) állatok.
1.2.3. (a) Egy pakli francia kártya; (b) a pikk lapok; (c) egy pakli magyar
kártya; (d) a legfeljebb kétjegyű nemnegatív egész számok; (e) a pontosan
kétjegyű pozitív egészek; (f) Budapest lakosai.
1.2.4. Andrea, és az a halmaz, amelynek egyetlen eleme van, az 1.
1.2.5. Nem.
1.2.6. 0, {0}, {1}, {3}, {0,1}, (0, 3}, {1, 3}, {0,1,3}. 8 részhalmaz van.
1.2.7. nők; a parti vendégei; a Yale hallgatói.
1.2.8. {a}, {a, c}, {a, d}, {a, e}, {a, c, d}, {a, c, e}, {a, d, e}, {a, c, d, e}.
1.2.9. Z vagy Z+. A legkisebb: {0,1,3,4, 5}.
1 .2.10. (a) {a, b, c, d, e}. (b) Az unió asszociatív művelet, (c) Egy halma­
zokból álló halmaz uniója azoknak az objektumoknak a halmaza, amelyek a
szóban forgó halmazok közül legalább az egyiknek elemei.
1 .2.11. Az {Ai, A.2, . . . . A-} halmaz uniója a legszűkebb olyan halmaz,
amelynek valamennyi A, halmaz részhalmaza.
260 MEGOLDÁSOK

1 .2.12. 6,9,10,14.
1 .2.13. Az unió elemeinek száma legalább akkora, mint n és m közül a
nagyobb, és legfeljebb n + m .
1 .2.14. (a) {1,3}; (b) 0; (c) {2}.
1 .2.15. A metszet elemeinek száma nem lehet kisebb, mint n és m mi­
nimuma.
1 .2.16. A kommutativitás nyilvánvaló. Az (Ar\B)P\C = Ar)(Bí)C) azo­
nosság belátásához elegendő észrevenni, hogy mindkét oldalon olyan halmaz
szerepel, amelynek elemei A-nak, H-nek és C-nek egyaránt elemei. Hason­
lóan megy a másik (1.3) címkéjű azonosság igazolása is; (1.4) bizonyítása
pedig teljesen analóg (1.1) bizonyításával.
1 .2.17. Az A és a B halmaz közös elemeit mindkét oldalon kétszer vettük
figyelembe; azokat, amelyek A és B közül pontosan egynek elemei, egyszer.
1 .2.18. (a) A páros negatív és a páratlan pozitív egészek halmaza,
(b) B.
1.3. A részh alm azok szám a
1.3.1. (a) 2-hatványok; (b) 2" - 1; (c) az utolsó elemet (elemként) nem
tartalmazó halmazok.
1.3.2. 2n~1.
1.3.3. Alkossunk a részhalmazokból olyan párokat, amelyek csupán egy
adott elemben különböznek. Minden pár egy páros és egy páratlan részhal­
mazt tartalmaz, ezeknek a száma tehát meg kell, hogy egyezzen.
1.3.4. (a) 2 • 10n —1; (b) 2 • (10n - 10""1).
1.4. A részh alm azok szám ának k ö zelítése
1.4.1. 101.
1.4.2. l + | n l g 2 j .

1.5. V é g es k araktersorozatok
1.5.1. A két fának rendre 9, illetve 12 levele van.
1.5.2. 5 -4- 3 = 60.
1.5.3. 314.
1.5.4. 6 -6 = 36.
1.5.5. 1220.
1.5.6. (220)12.

1.6. P erm u tá ció k


1.6.1. n \ .
1.6.2. (a) 7 • 5 • 3 • 1 = 105. (b) (2n - 1) ■(2n - 3) • • ■3 ■1.
MEGOLDÁSOK 261

1.7. A r e n d e z e tt részh alm azok szám a


1.7.1. (Az Olvasó feltehetően nem rajzolta le a teljes fát, amelynek 1020
levele van, élei pedig 11 szintre sorolhatók be.
1.7.2. (a) 100!, (b) 90!, (c) 100!/90! = 100 ■99 ■• • 91.
1-7.3. Tn=W- = n (n - 1 )' (n ~ k + !)•
1.7.4. Az egyik esetben megengedett az ismétlés, a másikban nem.
1.8. A d o tt elem szám ú részh alm azok szám a
1.8.1. Kézfogások; lottó; bridzsleosztások.
1.8.2. Lásd a Pascal-háromszögről szóló 3. fejezetet.
i-s .3 . (;) = o = i , ( ; ) = ( „ ! ,) = » ■
1.8.4. Az (1.7) összefüggés algebrai bizonyítása magától értetődő. Az
(1.8) összefüggés jobb oldala egy n elemű halmaz fc-részhalmazait számolja
össze úgy, hogy külön veszi sorra azokat a részhalmazokat, amelyek egy adott
elemet tartalmaznak, és azokat, amelyek nem.
1.8.5. Az algebrai bizonyítás most is egyszerű. Egy kombinatorikus in­
terpretáció: n 2 azoknak az (a, b) rendezett pároknak a száma, amelyeknek
mindkét tagja az a,b G { 1 ,2 ,..., rz} halmaz eleme, (!)) pedig ezek közül
azoknak a száma, amelyekben a < b (miért?). A maradék (a,b) rendezett
párok (amelyekben tehát a > b) összeszámolásához adjunk 1-et a párok első
tagjához. így olyan, (a1, b) rendezett párt kapunk, amelyben 1 < a',b < n + 1,
a' > b, és megfordítva: ezen a módon minden ilyen pár megadható. A párok
száma eszerint (" J 1) •
1.8.6. Az algebrai bizonyítás ezúttal sem jelenthet gondot. Egy kom­
binatorikus interpretáció: Egy k elemű halmazt kiválaszthatunk úgy, hogy
előbb kijelölünk egy elemet (n lehetőség), ezután pedig kiválasztunk a mara­
dék n —1 elemű halmazról egy (k —1) elemű részhalmazt ((£{j) lehetőség).
Ekkor azonban minden k elemű halmazt pontosan k-szór számoltunk, az
eredményt tehát el kell osztanunk fc-val.
1.8.7. Mindkét oldal azt adja meg, hogy hányféleképpen lehet egy a
elemszámú halmazt három, egyenként a—b, b—c és c elemű halmazra bontani.

2. Kombinatorikus módszerek
2.1. T eljes ind uk ció
2.1 .1 . Mivel n és n + 1 közül egyik páros, n(n + 1) is az. Indukcióval: az
állítás = 0 estén igaz; ha pedig n > 1, akkor az indukciós feltevés alapján
mind n(n + 1) = (n —1)n + 2n, mind n(n — 1) páros, minek következtében
a kettő összege is az.
2.1 .2 . Az állítás a z n = l esetben igaz; ha pedig n > 1, akkor

(n l)n n(n + 1)
1 + 2 + ... + n — (1 + 2 + .. .n + (n !))+ « = +n =
2 2
262 MEGOLDÁSOK

2.1.3. A legfiatalabb vendég n kézfogást számolhat össze, a 7-dik legi­


dősebb pedig 6 kézfogást. Összesen tehát 1 + 2 + ... + n kézfogás van; már
tudjuk, hogy a kézfogások száma n(n + l)/2 .
2.1.4. Számítsuk ki a négyszög területét kétféle módon.
2.1.5. n szerinti indukció; n = 2 esetén az állítás igaz. Ha n > 2, akkor

1-2 + 2- 3 + 3- 4 + ... + (n —1) ■ti —


(n —2) • (n —1) ■n
+ (n —1) • n =
~ 3
(n —1) • n ■(n + 1)
3

2 .1 .6 . Ha n páros, akkor l + n = 2 + (n —1) = . . . = (§ ~~ l) + § = n + 1,


az összeg ennélfogva ^( n + 1) = n(n+1'). Ha n páratlan, akkor a középső
tagot még hozzá kell adnunk.
2 .1 .7 . Ha n páros, akkor 1 + (2n —1) = 3 + (2n —3) = ... = (n —1) +
+(n + 1) = 2n, az összeg így f (2n) = n2. Ha n páratlan, akkor a megoldás
hasonló, csupán az utolsó tagra kell ügyelni.
2 .1 .8 . Indukcióval; n = 1 esetén az állítás igaz; ha n > 1, akkor

l 2 + 22+ . .. + (n - l ) 2 = ( l2 + 22 + ... + (n - l ) 2) + n 2 =
(n —l)n(2n —1) 2 n(n + l ) ( 2 n + l)
= 6 +U = 6 '

2 .1 .9 . Indukcióval; n = 1 esetén az állítás igaz; ha n > 1, akkor

2° + 21 + 22 + ... + 2n ~ 1 = (2 ° + 21 + ... + 2 n~2) + 2n_1 =


= (211- 1- l ) + 2n~1 = 2 n -1.
2.1.10. (Karaktersorozatok.) Az állítás n = 1 esetén igaz. Ha n > 1,
akkor egy n hosszúságú karaktersorozatot úgy kaphatunk meg, hogy egy
n — 1 hosszúságú karaktersorozat valamelyikéhez egy további tagot fűzünk
(amit ^-féleképpen tehetünk meg). A lehetőségek száma tehát A;"-1 -k — kn.
(Permutációk.) Az állítás n = 1 esetén igaz. Ha n embert le akarunk ül­
tetni, kezdhetjük a legidősebbel (akit n különböző helyre ültethetünk), aztán
a többieket (őket az indukciós feltevés szerint (n —l)!-féleképpen ültethetjük
le). A lehetőségek száma tehát n ■(n — 1)1 — ni.
2.1.11. Az állítás az n = 1 esetben igaz; legyen n > 1. Ha n ember
találkozik, és mindenki mindenkivel kezet fog, akkora kézfogások száma: a
legidősebb kézfogásai (n —1), valamint a z n - 1 többi vendég egymás közötti
kézfogásai (az indukciós feltevés szerint ezek száma (n — 1)(n — 2)/2). A
kézfogások száma így (n — 1) + (n —l)(n —2)/2 = n(n — l)/2 .
2.1.12. Nem ellenőriztük az n = 1 esetet.
MEGOLDÁSOK 263

2.1.13. A bizonyítás abból indult ki, hogy van legalább négy egyenes.
Az indukció alapjaként azonban csupán az n = 1, 2 eseteket ellenőriztük. Az
állítás n = 3 esetén - ahogy minden nagyobb számra is - hamis.

2.2. Ö sszeh ason lítás és b ecslés


2.2.1. (a) A bal oldal egy n elemű halmaz összes részhalmazát, a jobb
oldal a 3 elemű részhalmazokat számolja össze, (b) 2™/n2 > (g )/n 2 —
= (n —l)(n —2)/(6n), az utóbbi kifejezés bármilyen nagy lehet.
2.2.2. Kezdjük az indukciót az n = 4 esettel: 4! = 24 > 16 = 24. Ha az
egyenlőtlenség n esetén igaz, akkor (n + 1)! = (n + l)n! > ( n + l)2 n > 2-2" =
= 2n + 1 .

2.3. A szitaform u la
2.3.1. 18 + 23 + 21 + 17 —9 —7 —6 —12 —9 —12 + 4 + 3 + 5 + 7 —3 —40.

2.4. A sk atu lyaelv


2.4.1. Ha valamennyi (gigantikus méretű) skatulyába legfeljebb 20 New
York-i kerülhet, akkor 500 000 skatulyában legfeljebb 20-500 000 = 10 000 000
New York-it helyezhetünk el, holott ennél többen vannak.

3. A binomiális együtthatók és a
Pascal-három szög
3.1 A b in om iális té te l
3.1.1.

(x + y)n+1 = (x + y)n(x + y) =

=(*"+ ■■+(„”-iK +(">”) {x + y) =

= xn (x + y ) + ^ j x n~ 1y(x + y) + ...

•■•+ (^n 7^ ^ j x y n~ 1(x + y) + ^ j y n{x + y) =

= (xn+l + xny) + Q (xny + x ^ y 2) +...

■•■ + ( „ ! i ) i ^ y 1" 1 + *yn) + Q y y n + yn+1) =


264 MEGOLDÁSOK

= Xn+1 ®"“V
. . . + xyn + y 7 1 + 1 _

= x n+1 + V xyn + yn+1.

3 .1 .2 . ( a ) ( l - l ) " = 0;(b) (") = („ + )•


3.1 .3 . Az azonosság tartalm a a következő: egy n elemű halmaznak ugyan­
annyi páros elemszámú részhalmaza van, mint páratlan elemszámú. Ezt úgy
igazolhatjuk, hogy megadunk egy bijekciót a páros és páratlan elemszámú
részhalmazok között: ha egy részhalmaznak eleme az 1, rendeljük hozzá az
1 elhagyásával kapott halmazt, ha nem eleme, akkor az 1 „hozzávételével”
kapott halmazt.
3.2. A ján d ék osztás
3.2.1.

( 71V ( n ~ ... ( n ~ ni ~ • - nk-i


\ n i j V n2 ) V nk
_ n\ (n —ni)! (n - m - ... - n k-i)\
n + n —ni)! n 2!(n —ni —n2)! nk\(n — ni — ... — n k)\
ni
= — j— j------- :, mivel n - ni - ... - n k- 1 - nk = 0.
ni!n2! • • ■nk\

3 .2 .2 . (a) n! (az ajándékok helyett osszuk el a helyezéseket), (b) n(n —


1) • • • (n —A: + 1) („ajándék” gyanánt osszuk ki az első A, majd az n — A
„nem nyilvántartott” helyezést, (c) ( " ) . (d) Sakkültetés Dóra módszerével
(a játékosokat osztjuk ki a táblákhoz).
3.2 .3 . (a) 8!, (b) 8!- («), (c) (8!)2.
3.3. A n agram m ák
3.3 .1 . 13!/24.
3 .3 .2 . C O M B IN A T O R IC S .

3 .3 .3 . A legtöbbet a 13 különböző betűből, a legkevesebbet a 13 azonos


betűből álló „szavakból”.
3 .3 .4 . (a) 356.
(b) 4 betű kiválasztására (345) lehetőségünk van; ezekből (^-féleképpen
választhatjuk ki a kétszer szereplő betűket; minden kiválasztás esetén 6 po­
zíciót oszthatunk ki a a betűk között (amelyek közül 2 két pozíciót is kap),
amire ^ lehetőségünk van. Az eredmény tehát (35) (4) (ezt persze más
módon is megkaphatjuk).
MEGOLDÁSOK 265

(c) A 6-ot 11-félekékppen írhatjuk fel pozitív egész számok össszegeként:

6=6=5+l=4+2=4+l+l=3+3=3+2+l=3+l+l+l=
= 2+ 2+2= 2+ 2+ l+ l=2+ l+ l+ l+l= l+ l+l+ l+ l+ l.

(d) A feladat ebben a formában túlságosan bonyolult. A következőre gon­


doltunk: hány olyan n hosszúságú szó van, amelyek közül egyik sem anagram­
mája a másiknak? Ez lényegében ugyanaz, mintha n százforintost osztanánk
szét 35 gyerek között, a válasz ennélfogva: ("Jj34) ■
3.4. P é n z o sztá s
í n —k —1\
3.4.1.
V k- 1 )
í n + k —1\
3.4.2.
V +k-l)'
kp + k — 1
3.4.3.
k- 1
3.5. A P ascal-h árom szög
3 .5 .1 . Ez ugyanaz, mint (”) = (n” fc).
3 .5 .2 . (o) = (n) = 1 (például a binomiális együtthatókra vonatkozó
általános összefüggés alapján).
3.6. A zo n o ssá g o k a P a sca l-h á ro m szö g b en
3.6.1.

3 .6 .2 . Az x nyn tag együtthatója az


2
n
xn 1y + . . . + xy n- x +
n —1
kifejezésben:
266 MEGOLDÁSOK

3.6 .3 . A bal oldal aszerint számolja össze egy (n + m) elemű halmaz k


elemű részhalmazait, hogy hány elemet tartalmaznak az első n elem közül.
3.6 .4 . Ha a legnagyobb elem j (ez legalább n + 1), akkor a többi kivá­
lasztására (“,~1) lehetőségünk van. Összegezve a j > n + 1 értékekre, az

( iM T h - c r M " ::;1)
azonosságot, az összefüggést felhasználva pedig a (3.5) azo­
nosságot kapjuk.
3.7. A P a scal-h árom szög m a d á rtá v la tb ó l
3.7 .1 . n = 3fc + 2.
3.7 .2 . Nem könnyű. Meg akarjuk határozni az első olyan k-1, amelynél
a különbségek különbsége már nem pozitív:

Az egyenletet (/." 1)-vel elosztva és k(k + l)-vel szorozva az

(n — k + l)(n —k) —2(n —k + 1)(k + 1) + k(k + 1) < 0.

egyenlőtlenséget, ebből pedig egyszerűsítéssel a

4k 2 —Ank + n 2 — n — 2 < 0.

egyenlőtlenséget kapjuk. Az utóbbit k-ra megoldva azt kapjuk, hogy a bal


oldal
n 1 /----- x , n 1 /----- -
2 “ 2 + 2 - ^ - 2 + 2 ^ n + 2'
esetén nem pozitív. Az első olyan k egész szám tehát, amelynél a kifejezés
nem pozitív,
n
k= -v V + 2
2

3.8. F in om kis részletek


3 .8 .1 . (a) Be kell látnunk, hogy e_í~/(m_t+1) < e“ 4"/m < e- í2/(m+t). g z
nyilvánvaló, ha figyelembe vesszük, hogy ex monoton növekvő függvény.
(b) A felső és az alsó korlát hányadosa:
e- t 2/(m+t)
_ t2/(m -t+ l)-t2/(m+t)
g—í2/(m—í+1)
a kitevő így
t2 t2 _ (2í - l ) t 2
m- t+1 TO+ f (m —í + 1) (m + ű)'
MEGOLDÁSOK 267

Esetünkben 1900/(41 • 60) ~ 0, 772, a hányados tehát e0,772 « 2,1468.


3.8.2. A 2.5.1. Lemmában szereplő alsó korlátot alkalmazzuk; egy tipikus
tag esetében azt kapjuk, hogy
m + t —k
ln ( m + t ~ k \ > m - k = t
\ m —k ) ~ m + t —k m + t —k ’
m —k
amiből
In (m + i ) + ln ( m+ízzi') + ... + ln ( >
\ m ) y m—1 j ym — í+1 j —
t t t
>
m +t m + t —1 m+ 1
Ha valamennyi nevező helyébe a legnagyobbat írjuk, akkor az összeg csökken:

t t t t2
+ >
m + t ' m + t —1 m+ 1 m +t
A logaritmust „eltüntetve” a (3.9) összefüggésbeli felső korlátot kapjuk.
3.8.3. A (3.9) összefüggés alapján

2m 2m > gí2/(m+ty
m m —t

Ha t > 0, akkor a kitevő a t változó monoton növekvő függvénye (ezt be­


láthatjuk deriválással, vagy úgy, hogy í(l — ^yp^) alakba írjuk), abból a
feltevésből tehát, hogy t > V m l n C + InC, az következik, hogy

t 2 ^ (V m lnC + ln C )2 ln C(m + 2v/m lnC ' + InC) ^


m +t m + V m l n C + ln C m + V m l n C + ln C
amiből

(:) /c r t) >c-
2
Az állítás másik felének bizonyítása hasonlóan megy.

4. Fibonacci-számok
4.1. F ib o n a cci felad ata
4 .1 .1 . Mivel mindegyik tag kiszámításakor a két megelőző tagra hivat­
kozunk.
4 .1 .2 . Fn+1.
4.1 .3 . Jelölje Sn a jó részhalmazok számát. Ha n = 1, akkor S i = 2 (az
üres és az {1} halmaz). Ha n — 2. akkor 0. {!}, {2}, amiből 52=3. Általában
268 MEGOLDÁSOK

pedig: tetszőleges n esetén, ha a részhalmaznak n eleme, akkor n — 1 nem


eleme, az ilyen típusú részhalmazok száma ennélfogva Sn- 2. Másrészt az n-et
nem tartalmazó részhalmazok száma Sn- 1. Mivel a rekurziós képlet ugyanaz,
Sn — Fn+2-
4.2. A zo n o ssá g o k sokasága
4 .2 .1 . A rekurziós képlet alapján nyilvánvaló hogy két páratlan tag után
egy páros, majd újabb két páratlan következik és így tovább.
4 .2 .2 . Kimondhatjuk a következő állítást: ha n osztható 5-tel, akkor
Fn is, ha n öttel osztva 1 maradékot ad, akkor Fn is, ha n 5-tel osztva 2
maradékot ad, akkor Fn 1-et, ha n öttel osztva 3 maradékot ad, akkor Fn
kettőt, ha n 5-tel osztva 4 maradékot ad, akkor Fn hármat. A bizonyítás (n
szerinti indukció) semmi problémát nem okozhat.
4 .2 .3 . Indukcióval. Az n — 1 és az n = 2 esetben valamennyi állítás igaz.
Tegyük fel tehát, hogy n > 3.
(a) F i + Í 3 + F 5 + . . . + F2n-1 = {Fi + Í 3 + . . . + F2n—‘i ) + F 2 n -l —
= F 2n~2 + F 2n- 1 = F2n.
(b) Fo —Fi + F2 —F3 + . . . —Í2„_i + Í2„ = (Fo —Fi + F2 —... + Í2„_2)T
+ {—F 2 n - l + F 2 n) — ( Í 2n - 3 ~ 1) + Í 2 n - 2 = Í2 ra -1 ~ 1-
(c) Fg + F?+F2 + . . ,+ F „2 = (F2 + F2 + . . . + F 2_ 1) + F 2 = =
= Fn{Fn^i + Fn) = Fn ■Fn+1-
(d) F„_1Fra+1 - F 2 = F„_!(Fn_x + F„) - F 2 = F l _ x + Fn (F„_! - Fn) =
= í ;2- i - FnFn—2 - - ( - l ) " - 1 = ( - l ) T
4 .2 .4 . A (4.1) képletet F„_i = Fn+i —Fn alakban is felírhatjuk, amiből
negatív indexű Fn tagokat is kiszámíthatjuk („lefelé” haladó rekurzióval):

. . . , - 2 1 , 13, - 8 , 5, - 3 , 2, - 1 , 1, 0.

Azonnal szembeötlik, hogy a sorozat megegyezik a közönséges Fibonacci-


sorozattal - csupán annyi a különbség, hogy minden második tag negatív
előjelű. Képletben:
F - n = (—1)n+1Fn,
ez pedig n szerinti indukcióval könnyen igazolható. Állításunk az n = 0,1
esetekben igaz; ha n — 1 és n esetén szintén, akkor

F-(n+i) = - F_„ = ( - l ) " F n_! - (—l) ra+1Fn =


= (-1 )" (F „ _ 1 + F„) = (—l ) raFra+1 = (—l ) n+2Fra+1,

és meg is vagyunk.

4 .2 .5 .

Fn+2 — Fn+i + Fn — (Fn + Fn- i ) + F n — 2Fn + (Fn — Fn_ 2 ) — 3Fn — Fra_ 2 -


MEGOLDÁSOK 269

Az n helyébe 2n —1-et írva megkapjuk a páratlan indexű tagokra vonatkozó


rekurziós képletet. Ezt felhasználva beláthatjuk a (4.2) összefüggést:

Fn+i + Fn = (Fn + F n. i ) 2 + F 2 = 2F 2 + F 2_, + 2 F nF n - 1

= 3F 2n + 2F 2n _ x - (Fn - Fn _ x ) 2 = SF 2 + 2F 2_, - F 2_ 2
= 3{F 2 + F 2_ t ) - (F2_! + F 2_2) = 3F2„_ i - F2n_3
= Í2n+1-

4 .2 .6 . Azonosságunk:

n —k
F n +1 j
k

ahol k = |_n /2 j. Indukcióval bizonyítunk; n — 0 és n = 1 esetén az állítás


igaz. Legyen n > 2. Azt az esetet vizsgáljuk, amikor n páratlan (a páros eset
hasonlóan kezelhető, csupán az utolsó tag esetében kell változtatni).

— Fn + Fn - 1 — F n+ 1 -

4 .2 .7 . (4.2) az a — b = n — 1 választással, (4.3) pedig az a = n, b — n — 1


választással kapható meg.
4 .2 .8 . Legyen n = k m ; m szerinti indukcióval bizonyítunk. Az m = 1
esetben az állítás nyilvánvaló; ha m > 1, akkor a (4.5) összefüggést használ­
juk az a - k(m - 1), b = k - 1 esetben: F ka = F (f c_ 1 ) a F a _ 1 + F {k_ 1 )a+1 F a.
Az indukciós feltevés szerint mindkét tag osztható Ea-val.
4 .2 .9 . Az „átló” valójában egy hosszú és keskeny, egységnyi területű
paralelogramma. A trükk azon múlik, hogy Fn+iFn- i — FI = ( - l ) n sokkal
kisebb, mint F 2.
4.3. A F ib o n a cci-szá m o k k ép lete
4 .3 .1 . Az állítás az n = 0,1 esetekben igaz. Legyen n > 2, akkor az
indukciós feltevés szerint
270 MEGOLDÁSOK

Fn — Ffi- 1 + F n- 2 —
' r—\ n —1 / _ \ n —l'N
1 i + 75\ /1-VM
~vs
2-2N
1 1+ 7 7 1- 7 7
+
7!
' r - \ n~2 / /—
1 l + 75\ / 1 + V5 'l-TöV Vl-Tö + i
7H +J- 1 2 / 2

'l + 7 7 7 -7 5
= Ti I

4 .3 .2 . Az n = 1 és n = 2 esetekben - feltéve, hogy A„ adott alakú - azt


kapjuk, hogy

T 1 , . r o 1 + 7 5 . 1 — 7 5
L\ — 1 —a, + 6, ----- 1- b— —
Í2 —3 — o— — — .

Ezt a-ra és b-re megoldva:

1 + 75 1 - 75
b=

így

Ln —
7 77
+ 1 77
-

ami n szerinti indukcióval az előző feladathoz hasonlóan bizonyítható.


4 .3 .3 . (a) Például: Jóska minden nap vagy egy kis adag fagylaltot vásárol
1 dollárért, vagy egy fagylaltkelyhet 4 dollárért. Kis adag fagyiból 4-féle
kapható, kehely viszont csak egyféle van. Hányféleképpen költhet el Jóska n
dollárt?
In = ^ f ( (2 + 7 5 r - (2 - 7 5 r ) .

4 .3 .4 . A képlet n = 1, 2 ,..., 10 esetén működik, n = 11-re viszont már


nem jó: ekkor ugyanis 91-et ad. A hiba n-nel együtt növekszik.

= ( 0 ,4 4 7 ...) • ( ! ,6 1 8 ...) " .


MEGOLDÁSOK 271

Andrea képletében a kerekítés jelentősége folyamatosan ehalványul:

\en/ 2~1] ~ e"/2” 1 = (0 ,3 6 7 ...) • (1 ,6 4 8 ...)",

az Andrea-féle számok s a Fibonacci-számok hányadosa így

[~era/ 2-1] (0 ,3 6 7 ...) • (1 ,6 4 8 ...)”


(0 ,8 2 2 ...) • (1 ,0 1 8 ...)” .
~Fn 0 ,4 4 7 ...

Mivel a hatvány alapja nagyobb, mint 1, az eltérés „minden határon túl”


növekszik, amint n egyre nagyobb.

5. Kombinatorikus valószínűség
5.1. E sem én yek és valószín ű ségek
5.1 .1 . Az A és B események uniója az „A vagy B ” esemény, amely
pontosan akkor követezik be, ha A és B közül legalább az egyik bekövetkezik.
5.1 .2 . Az összes lehetséges kimenetel valószínűségének összegénél, vagyis
1-nél nagyobb valószínűséget semmiképpen sem kaphatunk.
5.1 .3 . P(E) = 4, P(T) = 4.
5.1 .4 . Mindkét oldalon ugyanazokat a P(s) valószínűségeket adjuk össze.
5.1 .5 . Minden olyan P(s) valószínűség, amelynél s £ A n B, mindkét
oldalon kétszer szerepel, minden olyan P(s) valószínűség, amelynél s e AUB,
de s fi A n B, egyszer.
5.2. K ísérletek fü g g etlen m e g ism é tlé se
5 .2 .1 . Az (E, T), (O, T), (L, T) párok függetlenek, az (E, O) párok kizár­
ják egymást. Az (E , L ) és (0 , L ) párok egyike sem független.
5 .2 .2 . P(0 n A) = P (0) = 0 = P(0) • P(A). Ezzel a tulajdonsággal az S
halmaz is rendelkezik: P(S fi A) = P(A) = P(5) • P(A).
5.2.3. P(A) = J f p = P (B) = ^ P(A n B) = Jfp =
= = P(>1) • P(B).
5 .2 .4 . Annak valószínűsége, hogy valakinek ugyanakkor van a születés­
napja, mint az anyjának, ^4_ (feltesszük, hogy az év minden napja egy­
forma valószínűséggel jön számításba, a szökőévektőől pedig eltekintünk).
A világon körülbelül 7 milliárd ember él, így körülbelül 7 • 109/365 (mint­
egy 20 millió) azoknak a száma, akiknek a születésnapja egybeesik az any­
juk születésnapjával. Az, hogy a születésnapunk egybeesik anyánk, apánk
és házastársunk születésnapjával, független események, annak valószínűége
tehát, hogy valakinek az esetében a négy születésnap egybeesik: 1/3653 =
1/48 627 125. Ha a világon mondjuk 2 milliárd házasember él, akkor közülük
2 000 000 000/48 627125 ~ 41 ünnepel „családi” születésnapot.
272 MEGOLDÁSOK

6. Egész számok, osztók és prímek


6.1. O szth a tó sá g
6.1.1. a = a ■1 = (—a) ■(—1).
6.1.2. (a) páros; (b) páratlan; (c) a = 0.
6.1 .3 . (a) Ha b = am és c = bn, akkor c = amn. (b) Ha b = am és
c = an, akkor b + c = a(m + n) és b —c = a(m — n). (c) Ha b = am
és a, b > 0, akkor m > 0, ennélfogva m > 1, minek következtében b > a.
(d) Nyilvánvaló, ha a = 0. Ha a ^ 0, akkor amennyiben b = am, és a = bn,
úgy a = amn, amiből mn = 1. Végeredményben tehát vagy m = n = 1,
vagy m = n = —1.
6.1 .4 . Tudjuk, hogy a — cn és b = cm, így r = b —aq = c(m —nq).
6.1 .5 . Tudjuk, hogy b = am, c = aq + r és c = bt + s. Ennélfogva s =
= c —bt = (aq + r) —(am)t = (q —mt)a + r. Mivel 0 < r < a, az s-v-a osztás
maradéka r.
6.1.6. (a) a2 —1 = (a —l)(a + 1). (b) an —1 = (a —l)(a rl_1 + ... + a + 1).

6.3. P rím tén y ező s felb on tás


6.3 .1 . A pozitív kriminálisok között (ahogyan a pozitív számok tetszőle­
ges nemüres részhalmazában) van legkisebb, a negatív egészek között azon­
ban nem feltétlenül ez a helyzet.
6.3 .2 . Van: 2.
6.3 .3 . (a) Mivel p szerepel az ab szorzat prímtényezős felbontásában, így
szerepelnie kell vagy a, vagy b prímtényezős felbontásában is.
(b) p | a(b/a), de p \ a , így (a) alapján p \ (b/a).
6.3 .4 . Legyen n = P1 P2 ■■-pk\ minden i-re pi > 2, így n > 2k.
6.3 .5 . Ha Ti — rj, akkor ia—j a osztható p-vel, viszont ia—ja = (i—j)a és
sem a, sem i —j nem osztható p-vel. Eszerint tehát az r,-k mind különbözőek.
Mivel egyikük sem 0, számuk pedig p — 1, közöttük az 1, 2 ,... ,p —1 számok
mindegyike előfordul.
6.3 .6 . Ha p prím, akkor a bizonyítás ugyanúgy megy, mint a 2 esetében.
Ha n összetett, de nem négyzetszám, akkor van olyan p prím, amely n prím-
tényezős felbontásában páratlan kitevővel szerepel. A bizonyítás során erre
a p-re kell hivatkozni.
6 .3 .7 . Belátható, hogy ha \Jn nem egész szám akkor irracionális. Bizo­
nyítás: van olyan p prímszám, amely - mondjuk a t kitevővel - szerepel n
prímtényezős felbontásában, és k \ t. Ha i/n = a/b (lenne), akkor nbk = ak,
a bal oldalon álló kifejezésben tehát p olyan kitevővel szerepel, amely nem
osztható k-val, a jobb oldalon viszont nem ez a helyzet. Ellentmondás.
MEGOLDÁSOK 273

6.4. A p rím szám ok h alm aza


6 .4 .1 . Miként a k = 200 esetben, újra kivonjuk a 10fc_1nél nem na­
gyobb prímszámok számát a 10fc-nál nem kisebb prímszámok számából. A
prímszámtétel szerint a különbség hozzávetőlegesen

1 0 k_______Í O ^ 1 _ (9k - lOjlQk-1


H nlO (fe —1) In 10 fe(fc —1) In 10
Mivel
9k —10 1
k- 1 ~ ~ k - 1
közel van 9-hez, amennyiben k elég nagy, a k jegyű prímek száma nagyjából

9 • ÍO^-1
fclnlO
Tudjuk, hogy k jegyű számból összesen 10fc —10fc_1 = 9 • 10fc_1 van, amiből

9 -lO k -1 1 _ 1
k In 10 ■9 ■10fc_1 “ (lnlO)fc ~ 2,3k'

6.5. A „kis” F e r m a t-tétel


6 .5 .1 . 4 j (2) = 6; 4 j 24 —2 = 14.
6 .5 .2 . (a) Be kell bizonyítanunk, hogy egy halmaz p elforgatottja mind
különbözőek. Tegyük fel, hogy van olyan elforgatott, amely a-szor szerepel.
Ekkor bármely másik elforgatott is a-szor jelenik meg. Ekkor azonban a \ p,
így a = 1 vagy a = p. Ha valamennyi (p számú) elforgatott ugyanaz, akkor
nyilván k = 0 vagy k = p, ezt azonban kizártuk. Eszerint tehát a = 1, amint
bizonyítani akartuk, (b) Tekintsük a négyzet két szemközti csúcsát, (c) Ha
minden skatulyába p darab, k elemű részhalmaz kerül, akkor a részhalmazok
számának oszthatónak kell lennie p-vel.
6 .5 .3 . Minden számot p jegyűnek tekintünk, ha szükséges, akkor megfe­
lelő számú 0-t írunk a szám elejére. A számjegyek ciklikus eltolásával minden
a számból p darab számot kaphatunk. Ezek a számok csak akkor azonosak,
ha a minden számjegye ugyanaz, ellenkező esetben viszont különböznek (mi­
ért? - a válaszhoz fel kell használnunk, hogy p prímszám). így ap — a szá­
mot kapunk, amelyek p elemszámú halmazokba sorolhatók. Eszerint tehát
p | ap — a.
6 .5 .4 . Tegyük fel, hogy p \ a. Tekintsük az a(2a)(3a) • • • ((p — l)a) =
= (p—ly.aP^ 1 szorzatot. Legyen r, az ia szorzat p-vel való osztásakor kapott
maradék. A fenti szorzat p-vel osztva ugyanazt a maradékot adja, mint az
rir2 • • -7p_ 1 szorzat. Ez a szorzat azonban éppen (p — 1)!, p tehát osztója
(p — \)\ap~l — (p — 1)! = (p — l)!(ap~1 — l)-nek. Mivel p prímszám, nem
osztója (p —l)!-nak, ennélfogva osztója kell hogy legyen ap_1 —1-nek.
274 MEGOLDÁSOK

6.6. A z eu k lid eszi algoritm u s


6.6.1. lnko(a, 6) < a, mivel azonban a közös osztó, azt kapjuk, hogy
lnko(a, 6) = a.
6 .6 .2 . (a) Legyen d = lnko(a,6). Ekkor d \ a és d \ 6, amiből d \ b — a.
Eszerint tehát d közös osztója a-nak és b —a-nak, minek következtében d <
< lnko(a, b — a). A fordított irányú egyenlőtlenség ugyanígy igazolható, (b)
Az (a) gondolatmenet többszöri alkalmazásával.
6 .6 .3 . (a) lnko(a/2,6) | (a/2), amiből lnko(a/2,6) | a; lnko(a/2,6) te­
hát közös osztója a-nak és 6-nek, így lnko(a/2,6) < lnko(a,6). A fordított
irányú egyenlőtlenség hasonlóan bizonyítható, felhasználva, hogy lnko(a, 6)
páratlan, minek következtében lnko(a, 6) j (a/2).
(b) lnko(a/2,6/2) | (a/2), így 21nko(a/2,6/2) | a. Hasonlóan kapjuk,
hogy 2 lnko(a/2,6/2) | 6, amiből 21nko(a/2, 6/2) < lnko(a, 6). Megfordítva,
lnko(a, 6) | a, így |lnko(a, 6) | a/2. Hasonlóan: |lnko(a, 6) | 6/2, minek kö­
vetkeztében |lnko(a, 6) < lnko(a/2, 6/2).
6 .6 .4 . Válasszuk ki azokat a prímeket, amelyek valamelyik szám prím-
tényezős felbontásában szerepelnek, emeljük ezeket a szereplő legmagasabb
kitevőre, és szorozzuk össze az így kapott hatványokat.
6.6 .5 . Ha a és 6 egész számok, a prímtényezős felbontását pedig ismer­
jük, akkor tekintsük a egy prímtényezőjét, és osszuk el vele 6-t annyiszor,
amennyiszer tudjuk, így kiderül, hogy az illető prím 6 felbontásában milyen
kitevővel szerepel. Emeljük a prímet az a és 6 felbontásában szereplő kitevők
közül a kisebbikre. Járjunk el ugyanígy az a összes prímtényezőjével, végül
szorozzuk össze a kapott prímhatványokat.
6 . 6 . 6 . Az lnko és az lkkt iménti leírása alapján a két oldalon minden
prímtényező ugyanazon a kitevőn szerepel.
6 .6 .7 . (a) Nyilvánvaló, (b) Legyen z = lnko(a, 6, c), A = a / z , B =
b/z, C = c/z. Az A, B és C számok relatív prímek, és egy pitagoraszi
számhármast alkotnak. A és B közül az egyiknek páratlannak kell lennie, ha
ugyanis mindkettő páros, akkor C is az, így a számok nem lehetnének relatív
prímek. Tegyük fel, hogy B páratlan. A ekkor csak páros lehet, mivel egy
páratlan szám négyzete 4-gyel osztva 1 maradékot ad, így ha A és B egyaránt
páratlan lenne, akkor C 2 = A 2 + B 2 szám 4-gyel osztva 2 maradékot adna,
ami lehetetlen. így tehát C páratlan kell, hogy legyen.
Ha A páros, akkor alkalmas Ao-lal A = 2Ao- írjuk az egyenletet
.2 C+B C -B
A°= — — — •
alakban; legyen p tetszőleges olyan prímszám, amely osztója Ao-nak. Ekkor
p vagy (C + £?)/2-nek, vagy (C —H)/2-nek mindenképpen osztója. Mind­
kettőnek azonban nem lehet, ekkor ugyanis a = C összeget és
a —^-y^ = B különbséget egyaránt osztaná, ami ellentmond annak a
feltevésünknek, miszerint A, B és C relatív prímek.
MEGOLDÁSOK 275

A p prímszám az A0 prímtényezős felbontásában többször - mondjuk k-


szor - is előfordulhat. Ekkor Ag felbontásában p éppen 2fc-szor szerepel. Az
iménti gondolatmenet szerint p-nek a (C + B) /2 és (C —B ) j 2 prímtényezős
felbontása közül az egyikben 2fc-szor kell szerepelnie, a másikban viszont egy­
általán nem szerepelhet. Mindezek alapján nyilvánvaló, hogy (C + B ) / 2 (és
(C —B ) / 2) prímtényezős felbontásában minden prím páros kitevőn szerepel.
Ez viszont pontosan azt jelenti, hogy ( C + B ) / 2 és (C —B ) / 2 négyzetszámok:
(C + B ) / 2 = x2 és (C —-B) /2 = y 2 megfelelő x és y egész számok esetén.
Most kifejezzük A-t, B-t és C-t x, illetve y segítégével:

C+B C —B 2 2 C+B
----------- = x - V , c = ——

Az a, b és c számokat végül megkapjuk, ha A-t, B-t és C-t megszorozzuk


z-vel, és ezzel a feladatot megoldottnak nyilváníthatjuk.
6.6.8. lnko(a, a + 1) = lnko(a, 1) = lnko(0,1) = 1.
6 .6 .9 . Az Fn+1 szám Fn-nel való osztásakor kapott maradék Fn_i. Így
lnko(An+i ,F n) = lnko(Fra, Fn_i) = ... = lnko(F3,F 2) = 1. A legnagyobb
közös osztó meghatározása n — 1 lépést vesz igénybe.
6 .6 .1 0 . Bizonyítás k szerinti indukcióval; k = 1 esetén az állítás igaz. Te­
gyük fel, hogy k > 1; legyen b = aq+r, 1 < r < a. Az euklideszi algoritmussal
lnko(a, r) kiszámítása k —1 lépést vesz igénybe, így az indukiós feltevés sze­
rint a > Fk és r > F k - 1- Ekkor azonban b = aq + r > a + r > F k + Fk- i =
= -Ffc+1-
6 .6 .1 1 . (a) 10 lépés, (b) Kövekezik abból, hogy lnko(a, b) = lnko(a—b, b).
(c) lnko(l0100 —1, ÍO100 —2) kiszámítása ÍO100 —1 lépésbe telik.
6 .6 .1 2 . (a) 8 lépés, (b) A számok közül az egyik mindvégig páratlan
marad, (c) Az 6.6.2 és a 6.6.3 feladat alapján, (d) A két szám szorzata
minden lépésben felére csökken.

6.7. K on gru en ciák


6 .7 .1 . m = 54321 - 12345 = 41976.
6 .7 .2 . Csak (b) helyes.
6 .7 .3 . a = b (mód 0) a következőt kell, hogy jelentse: van olyan k egész
szám, hogyt a — b = 0 • k. Ez annyit tesz, hogy a — b = 0, azaz, hogy a = b.
Az egyenlőég tehát a kongruencia speciális esetének is tekinthető.
6.7 .4 . (a) Legyen a = 2 és b = 5. (b) Ha ac = be (mód mc), akkor
mc | ac —be, létezik tehát olyan k egész szám, amellyel ac —bc= kmc. Mivel
c ^ O , ebből az következik, hogy a —b = km, amiből a = b (mód m).
276 MEGOLDÁSOK

6.7.5. Abból, hogy x = y (mód p) (a szorzásszabály alapján) következik,


hogy xv = yv (mód p), elegendő tehát belátni, hogy

xu = x v (m odp). (16-1)
Ha x = 0 (mód p), akkor (16.1) mindkét oldala osztható p-vel, amiből
azonnal megkapjuk az állítást. Tegyük fel, hogy x ^ 0 (mód p), valamint,
hogy - mondjuk - u < v. Tudjuk, hogy p — 1 | v —u, így valamely pozi­
tív k egész számmal v — u = k(p — 1). A „kis” Fermat-tétel szerint ekkor
xp~x = 1 (mód p), a kongruenciák szorzására vonatkozó szabály szerint
x k(p-i) = i (mód p), majd a szabályt újra alkalmazva: x v = xu ■x k^p~^ =
= x u (mód p), amivel (16.1) igazolást nyert.
6.8. K ü lön ös szám ok
6.8.1. KE, SZÓ, CS, SZE.
6.8.2. nem-A = 1 ® A; A-v&gy-B = A ® B © A ■B; A-és-B = A ■B.
6.8.3. 2 ■0 = 2 • 3 (mód 6), de 0 ^ 3 (mód 6). Általánosabban, ha az
m = ab (a, b > 1) modulus összetett szám, akkor a ■0 = a ■b (mód m), de
0 ^ b (mód m).
6.8.4. Az euklideszi algoritmusssal kezdjük:

lnko(53, 234527) = lnko(53,2) = lnko(l,2) = 1.


Ebből a 2-t 2 = 234527 —4425 • 53 alakban kapjuk meg, 1-et pedig így:

1 = 53 - 26 • 2 = 53 - 26(234527 - 4425 • 53) = 115051 • 53 - 26 ■234527.


Mindebből 1 = 115051 • 53 (mód 234527), és így 1/53 = 115051.
6.8.5. x = 5, y = 8 (mód 11).
6.8.6. (a) 11 | x 2 — 2 x = x(x — 2), minek következtében vagy 11 | x,
vagy 11 | x —2, amiből a két megoldás x = 0 (mód 11) és x = 2 (mód 11).
(b) Hasonlóan: abból, hogy 23 | x 2 — 4 — (x — 2)(x + 2), azt kapjuk, hogy
vagy x = 2 (mód 23), vagy x = —2 (mód 23).
6.9. S zá m elm élet és kom binatorika
6.9.1. A megadott n szám között (a skatulyaelv alapján) biztosan van
két szomszédos: k és k + 1; ezek pedig relatív prímek.
6.9.2. A logikai szita módszerét követve minden pi prímszám esetén ki
kell vonni n-ből pi valmennyi (1 és n közé eső) többszörösét, a különbséghez
hozzá kell adni minden pi, pj pár közös többszöröseit, ki kell vonni a pi,
Pj és pk hármasok közös többszöröseit, és így tovább. Miként a numerikus
példában, pi többszöröseinek száma n/pi, pi és pj közös többszöröseinek
száma n/(piPj), pt, pj és pk közös többszöröseinek száma n/(piPjPk) stb.
Végül azt kapjuk, hogy
,. . n n n n n n
<p{n) —n ---------. . . ---------1--------- 1----------b .. • H---------------------------.. . .
Pl Pr PlP2 PlP3 Pr-lPr PlP2P2
MEGOLDÁSOK 277

Ez megegyezik a (6.7) kifejezéssel. Valóban, a szorzást elvégezve minden


tagot úgy kapunk meg, hogy a (l — -{-) tényezőkből vagy 1-et vagy —-j—t
választunk. Egy tipikus tag tehát

_l)fc
Pii ■ ■ ■ Pik

és ilyeneket kaptunk a „szitálás” eredményeként is.


6.9.3. Nem nehéz megsejteni, hogy a válasz n. A bizonyításhoz tekintsük
az i , . . . , ^ törteket, és egyszerűsítsük őket addig, amíg lehet. Ezzel olyan
2 törteket kapunk, ahol d osztója n-nek, továbbá 1 < a < d és lnko(a, d) = 1.
Világos az is, hogy minden ilyen törtet megkapunk. Adott nevezővel az ilyen
törtek száma éppen <fi(d). Kiinduláskor összesen n törtünk volt, és ezzel a
sejtés igazolttá is vált.
6.9.4. Az n = 1, 2 esetekben a válasz 1. Tegyük fel, hogy n > 2. Ha k
ilyen szám, akkor n — k is ilyen; ezek a számok tehát párosával fordulnak
elő, és minden párban n a tagok összege (bár n/2 nincs közöttük). A ilyen
párok száma 4>(n)/2, a válasz tehát ncj)(n)/2.
6.9.5. Kövessük a 6.5.4. feladat megoldásának gondolatmenetét.
Legyenek s í , . . . , sk 1 és 6 közötti, 6-hez relatív prím számok; eszerint tehát
k = 4>(b). Legyen 7y az s^a szorzat p-vel való osztásakor kapott maradék.
Nyilván lnko(6, ri) = 1, ha ugyanis lenne olyan p prím, amely 6-nek és r^-nek
is osztója, akkor p osztaná s^a-t is, ami lehetetlen, elvégre sí és a egyaránt
relatív prímek 6-hez. Másodszor, az 7*1, r 2, . . . , r*, számok mind különbözők,
r’j = rj ugyanis azt jelentené, hogy 6 | Síü —sja = (sj —Sj)a; lnko(a, 6) =
= 1 m iatt pedig ebből az következne, hogy 6 | Sj —Sj, ami lehetetlen. Az
r í , r 2, . . . , r-fc számok tehát valóban az s±,S2 , ■■■,Sk számok, csak a sorrend
különbözik.
Tekintsük az (sia)(s2a) ■• ■(s^a) szorzatot. Ezt egyrészt

(sia)(s2a) • • • (ska) - (sis2 ■■■sk)ak,

alakban, másrészt

(sio)(s2a) • • • (ska) = r i r 2 • • • rk = S1S2 • • • sk (mód 6).

alakban is felírhatjuk. A kettőt összevetve:

(sis2 • • • sk)ak = s is 2 ■■• Sfc (mód 6),

másképpen:
b | (sis2 •••sk)(ak - l).
Mivel a SiS2 ... sk számok mindegyike relatív prím 6-hez, így 6 | ak — 1, és
éppen ezt kellett bizonyítani.
278 MEGOLDÁSOK

6.10. P r ím te sz te lé s
6 .1 0 .1 . Bizonyítás k szerinti indukcióval; az állítás a k = 1 esetben igaz.
Legyen n = 2m + a, ahol a vagy 0, vagy 1. Ekkor m számjegyeinek száma
k — 1, így 2m legfeljebb 2(k —1) szorzással megkapható. Végül 2n = (2m)2,
amennyiben a = 0, és 2n = (2TO)2 • 2, amennyiben a = 1.
6.10.2. Ha 3 | a, akkor nyilván 3 | a561 — a. Ha 3 j a , akkor 3 | a2 —1 a
„kis” Fermat-tétel szerint, amiből 3 | (a2)280 —1 = a560 —1. Hasonlóan: ha
11 j a, akkor 11 | a 10 —1, amiből 11 | (a10)56 —1 = a560 —1. Végül, ha 17 \ a,
akkor 17 | a 16 —1, és így 17 j (a16)35 —1 = a560 —1.

7. Gráfok
7.1. P áros és p áratlan fok szám ú p o n to k
7.1.1. Kétpontú gráf 2, hárompontú 8 van (bár az utóbbiak közül csak 4
„lényegileg különböző”). A négypontú gráfok száma 64, ezekből 11 „lényegileg
különböző”.
7.1 .2 . (a) Nem, a páratlan fokszámú pontok száma páros, (b) Nem,
az 5 fokszámú pont az összes többivel össze van kötve, így nem létezhet 0
fokszámú pont. (c) 12 (ezek azonban mind „lényegileg azonosak”), (d) 9-7-
•5 ■3 • 1 = 945 (de ezek is „lényegileg azonosak”).
7 .1 .3 . Az ilyen (teljesnek nevezett) gráfnak (!() éle van, amennyiben
pontjainak száma n.
7 .1 .4 . Az (a) gráfnak 17 éle van, a fokszámok: 9, 5, 3, 3, 2 ,3 , 1 , 3, 2, 3. A
(b) gráfnak 31 éle van, a pontok fokszámai 9, 5, 7, 5,8,3, 9, 5, 7,4.
7 .1 .5 . (2°) = 45.
7 .1 .6 . 2a°) = 2190.
7.1.7. Minden gráfban van két azonos fokszámú pont. Mivel minden fok­
szám 0 és n — 1 közötti, ha minden pont fokszáma különbözne, akkor a
fokszámok (valamilyen sorrendben) az 0,1, 2, 3, . . . n — 1 számok lennének.
Az n —1 fokszám pontból azonban az összes többi ponthoz vezet él, így a 0
fokszámúhoz is, ez viszont lehetetlen.
7.2. U ta k , körök, ö sszefü g g ő ség
7 .2 .1 . 4 út, 6 kör és 1 teljes gráf.
7.2.2. Az n pontú él nélküli gráfnak 2” részgráfja van. A háromszög
részgráfjainak száma 18.
7.2 .3 . Csak a 3 hosszúságú út és az 5 hosszúságú kör. (Hosszabb út vagy
kör komplementerének túlságosan sok éle van.)
7.2.4. Igen, a bizonyítás érvényes marad.
7.2 .5 . (a) Hagyjunk el egy élt az útból, (b) Tekintsük az u és v pontokat.
Az eredeti gráfban van u-t és v-t összekötő út. Ha ez az út nem halad át az
MEGOLDÁSOK 279

e élen, akkor e elhagyása után is út marad. Ha viszont áthalad e-n, akkor


legyen e = xy, és tegyük fel, hogy az út (u-ból u-be „haladva”) x-be érkezik
meg elsőként. Ha most e-t töröljük, akkor a megmaradt gráfban lesz u-t és
x-et, valamint x-et és y-t összekötő út is (ami a körből megmaradt), így u-t
és y-t összekötő út is. Mivel y-t és u-t is út köti össze, van út u és v között
is.
7.2.6. (a) Tekintsük a legrövidebb sétát u-bői u-be; amennyiben ez va­
lamely ponton kétszer is áthalad, hagyjuk el a beérkezés és a továbbhaladás
közötti szakaszt, a séta így rövidebb lesz. (b) A két út együtt kiad egy a-ból
6-be vezető sétát.
7.2.7. Legyen w a H\ és H 2 részgráfok közös pontja. A H gráf u és v
pontja között megkaphatunk egy sétát, ha előbb egy úton u-ból w-be, majd
w-ből u-be megyünk, ebből egy út létezése már bizonyítható.
7.2.8. Mindkét gráf összefüggő.
7.2.9. A szóban forgó él valamelyik összefüggő komponenssel együtt
olyan összefüggő gráfot alkot, amely szigorúan bővebb, mint az összefüggő
komponens - ez viszont ellentmond az utóbbi definíciójának.
7 .2.10. Ha u és v ugyanabba az összefüggő komponensbe esik, akkor a
szóban forgó komponensben - és így persze a G gráfban is - összeköthetők
egy úttal. Megfordítva, ha van a G gráfban egy P út az u és v pontok között,
akkor ez az út G egy összefüggő részgráfja, így egy P -t tartalmazó maximális
összefüggő gráf a G gráf egy u-t és u-t tartalmazó összefüggő komponense.
7 .2.11. Tegyük fel, hogy a gráf nem összefüggő; tekintsük egy k pontú
H összefüggő komponensét. Ekkor H-nak legfeljebb (*), a maradék gráfnak
pedig legfeljebb fc) éle lehet. Az élek száma így nem lehet nagyobb, mint
n —1
(k —1)(n —k —1) <
2

7.3. E u ler-sétá k és H am ilton -k örök


7.3.1. A bal felső gráfban nincs Euler-séta. A bal alsóban van egy (nem
körré záródó) Euler-séta, a két jobb odali gráfban zárt Euler-séta van.
7.3 .2 . Ha egy pont fokszáma páratlan, akkor a két séta egyikének biz­
tosan végpontja, egy szükséges feltétel így a következő: páratlan fokszámú
pontból legfeljebb négy van. Belátjuk, hogy ez a feltétel elégséges is. Tudjuk,
hogy a páratlan fokszámú pontból páros sok van. Ha ez a szám 0 vagy 2,
akkor egyetlen Euler-séta létezik (és bármelyik pontot tekinthetjük a másik
sétának).
Tegyük fel tehát, hogy ez a szám: 4. Kössünk össze közülük kettőt egy
új éllel. Az így kapott gráfban két páros fokszámú pont van, így van benne
Euler-séta. A berajzolt élt elhagyva az Euler-séta két sétára esik szét, ame­
lyek együtt mindent élt pontosan egyszer érintenek.
7.3.3. Az első gráf igen, a második nem.
280 MEGOLDÁSOK

8. Fák
8.1. A lte r n a tív d efin íciók
8 .1 .1 . Ha G fa, akkor (a definíció szerint) nincs benne kör, de tetszőleges
új él berajzolásával kör keletkezik benne (amelyet az új él, és annak két
végpontját a gráfban összekötő út alkotnak). Megfordítva, ha egy gráfban
nincs kör, de bárhova rajzolunk be egy új élt, azzal kör keletkezik, akkor
a gráf összefüggő kell hogy legyen (ha két pont, mondjuk u és v nincs éllel
összekötve, akkor az uv él berajzolásával keletkező körnek lesz olyan szakasza,
amely az u és v pontokat az eredeti gráfban összekötő út).
8.1 .2 . Ha u és v ugyanannak az összefüggő komponensnek a pontjai,
akkor az új uv él az u-t és v-t az eredeti gráfban összekötő úttal egy kört
alkot. Ha u és v összekötésével kör keletkezik, akkor ennek a körnek az uv
él nélküli része egy u-t és u-t összekötő út, u és v tehát ugyanannak az
összefüggő komponensnek a pontjai.
8.1 .3 . Tegyük fel, hogy G egy fa. Mivel G összefüggő, bármely két pontját
összeköti legalább egy út. Két út azonban nem létezhet, ekkor ugyanis egy
kört kapnánk (legyen v az a pont, ahol a két út elágazik; kövessük innen a
második utat az első úttal való első közös pontjáig, innen pedig haladjunk
visszafelé az első út mentén).
Megfordítva, tegyük fel, hogy bármely két pont között pontosan egy út
halad. Ekkor a gráf összefüggő, kört azonban nem tartalmazhat (hiszen a
kör bármely két pontját legalább két út összeköti).
8.2. H ogyan n övesszü n k fát?
8 .2 .1 . Induljon az út egy 1 fokszámú pontból.
8 .2 .2 . Egyetlen élen sem lehet két várúr, hiszen ekkor egymással szembe
haladnak, ami azt jelenti, hogy a királyhoz két úton is el lehet jutni. Ha­
sonlóan: egy olyan élnek, amelyen egyetlen várúr sem tartózkodik, kétféle
irányban kellene a király felé vezetnie.
8 .2 .3 . Induljunk egy tetszőleges v pontból. Ha a v-beli ágak valamelyi­
kén a fa pontjainak több mint a fele megtalálható, akkor haladjunk az ehhez
az ághoz vezető él mentén. Ismételjük meg ugyanezt. Nem fogunk visszafor­
dulni, ez ugyanis azt jelentené, hogy van olyan él, amelynek elhagyásával két
olyan összefüggő komponens keletkezne, amelyek mindegyikében több pont
van, mint az összes pont fele. Mivel a gráf fa, soha nem térünk vissza olyan
pontba, ahol már jártunk. Végül tehát eljutunk egy olyan ponthoz, amely­
nél minden ág legfeljebb feleannyi pontot tartalmaz, mint amennyi a gráfban
összesen van.
8.3. H o gyan szám olju k ö ssze a fákat?
8 .3 .1 . A 2, 3,4, 5 pontú címkézetlen fák száma rendre 1,1, 2,3, a címké­
zetteké pedig 1,3,16,125.
8 .3 .2 . n ponton n csillag és n \ j 2 út adhat meg.
MEGOLDÁSOK 281

8.4. F ák tá rolása
8 .4 .1 . Az első egy út, a harmadik egy csillag apakódja; a másik kettő
egyetlen fának sem apakódja.
8.4.2. Ennyi a lehetséges apakódok száma.
8 .4 .3 . Adjunk meg az {1, . . . , n} pontokon egy gráfot úgy, hogy az ugyan­
abban az oszlopban lévő pontpárokat összekötjük. Ha az utolsó oszloppal
kezdjük és visszafelé haladunk, akkor a „fanövesztő” eljárást kapjuk: minden
lépésben felveszünk egy új pontot, és összekötjük valamelyik már meglévő
ponttal.
8.5. A cím k ézetlen fák szám a
8 .5 .1 . (a) egy utat, (b) egy csillagot kódol; (c) nem kódol (az első 5 szám
között több 0 van, mint 1, ami egy fa planáris kódjánál nem fordulhat elő).

9. Optimális megoldások
9.1. A legjob b fa
9 .1 .1 . Legyen H egy optimális fa, G pedig az, amelyet a pesszimista
kormány épített meg. Tekintsük az első lépést, amelynek során a H gráf egy
e = uv élét elhagytuk. Ha H-ból töröljük e-t, akkor két komponensre bomlik,
mivel G összefüggő, van olyan / él, amely ezeket a komponenseket összeköti.
Az / él (által reprezentált vonal) megépítése nem kerülhet többe, mint az
e megépítése, máskülönben a pesszimista kormány f-et törölte volna el e
helyett. Ez azonban azt jelenti, hogy H-bán az e élt a költségek növekedése
nélkül /-re cserélhetjük. A gondolatmenet ugyanúgy fejezhető be, mint az
opitmista esetben.
9 .1 .2 . Tekintsük az 1,2,3,4 pontokat és a c(12) = c(23) = c(34) =
= c(41) = 3, c(13) = 4, c(24) = 1 költségeket. A pesszimista kormány az
(12341) kört építené meg, holott a legjobb megoldás az (12431) kör.
9.2. A z u ta zó ü g y n ö k p rob lém ája
9 .2 .1 . Igen, mert metszi magát (1. a következő feladatot).
9 .2 .2 . Két egymást metsző élt két másik, ugyanazon négy pontot össze­
párosító élre cserélve a háromszög-egyenlőtlenség miatt egy rövidebb utat
kapunk.

10. Párosítások
10.1. A tá n cren d p rob lém ája
1 0 .1 .1 . Ha minden pont fokszáma d, akkor az élek száma egyrészt d- |A|,
másrészt d • |H|.
10.1.2. (a) háromszög; (b) csillag.
282 MEGOLDÁSOK

1 0 .1 .3 . A d = 1 eset triviális. Ha pedig egy gráfban minden pont fok­


száma 2, akkor a gráf diszjunkt körök uniója. Ha a gráf páros, akkor ezek
a körök páros hosszúságúak. Minden második élt véve egy teljes párosítást
kapunk.
10.3. A z a la p té te l
1 0 .3 .1 . Legyen X C A, jelölje Y az A'-beli pontok B-beli szomszédainak
halmazát. Az X halmazból pontosan d\X\ él indul ki; ezekből az élekből Y
bármely pontjába legfeljebb d érkezik, így |F | > |A|.
1 0 .3 .2 . Az X = A esetben a feltevés szerint \B\ > |A|. A \B\ = |A| esetre
az állítást már beláttuk (10.3.1. Tétel), tegyük fel tehát, hogy \B\ > |A|.
Adjunk \B\ — |A| darab új pontot A-hoz, így olyan A' halmazt kapunk,
amelyre \A'\ = \B\. Kössük össze az új pontok mindegyikét a B halmaz
összes pontjával. Az így kapott gráf kielégíti a 10.3.1. Tétel feltételeit: \A'\ =
\B\, és ha X C l ' , akkor vagy X C A (ekkor a feladat feltétele szerint X
pontjainak \X\ szomszédja van B-ben), vagy X elemei között van egy „új”
pont (ekkor B minden pontja szomszédja A-nek). Az új gráfban tehát létezik
teljes párosítás. Az „új” pontokat elhagyva a teljes párosításban szereplő élek
az eredeti gráfban A minden pontját B egy-egy különböző pontjával kötik
össze.
10.4. H ogyan a d h a tó m eg te lje s párosítás?
1 0 .4 .1 . Négy pontból álló úton kiválaszthatjuk a középső élt.
1 0 .4 .2 . Az M mohó párosításban megjelenő éleknek G minden élével
van közös pontjuk (különben Af-et tovább bővíthetnénk), speciálisan a tel­
jes párosítás minden élével is. A teljes párosítás élei mindegyikének tehát
legfeljebb egy olyan végpontja van, amely M egyetlen élének sem végpontja.
1 0 .4 .3 . A legnagyobb párosítás 5 élből áll.
1 0 .4 .4 . Ha az algoritmus a teljes párosítás megtalálása nélkül megáll,
akkor az S halmaz azt mutatja, hogy a gráf nem „jó”.

11. Kombinatorika a geom etriában


11.1. Á tló k m e tszé sp o n tja i
11.1.1.
11.2. T artom ányok ö sszeszá m o lá sa
1 1 .2 .1 . Az n = 1 esetben igaz; legyen n > 1. Hagyjuk el az egyik
egyenest. A megmaradt egyenesek - az indukciós feltevés szerint - a síkot
(n —l )n/ 2 + 1 részre osztják. Az utolsó egyenes ezek közül n részt metsz,
így
(■n —1)n i(n + 1)
+ 1+ n =
2
+ 1.
11.3. K o n v ex sok szögek
1 1 .3 .1 . Lásd a 16.1. ábrát.
MEGOLDÁSOK 283

16.1. ábra.

12. Az Euler-formula
12.1. E gy m e g tá m a d o tt b o ly g ó
Van n pont, amelynek fokszáma n — 1, és (^) olyan, amelynek
1 2 .1 .1 .
fokszáma 4 (1. a 11.1. alfejezetet). Az élek száma így 1 (n • (» —!) + 0 - 4 ) .
Az Euler-formula szerint ekkor

+ —n + 2

ország van, ebből egyet (a „külsőt”) ki kell vonnunk.


1 2 .1 .2 . Legyen / a sziget tartományainak halmaza. Tekintsük azt a
gráfot, amelyet a gátak és a sziget határvonala együttesen határoznak meg.
Ennek a gráfnak 2n darab 3 fokszámú pontja van (a partvidék pontjai) és (”)
darab 4 fokszámú pontja (az egyenes gátak metszéspontjai). Az élek száma
így
1
^(2n) • 3 + + 3n.
2

Az országok száma (az óceánnal együtt) / + 1, az Euler-formulából így azt


kapjuk, hogy / + 1 + 2n + Q) = 2(£) + 3n + 2, amiből / = (2) + n + 1-

12.2. Sík ba ra jzolh ató gráfok


1 2 .2 .1 . Igen, lásd az 16.2. ábrát.

1 2 .2 .2 . Nem; a gondolatmenet hasonló ahhoz, amellyel azt támasztottuk


alá, hogy K 5 nem rajzolható síkba. A házak és a kutak egy 6 pontból és 9
élből álló páros gráfot alkotnak. Ha ez síkba rajzolható, akkor 9 + 2 —6 =
= 5 tartomány keletkezik. Minden tartományt legalább 4 él határol, az élek
száma így legalább | • 5 • 4 = 10 kellene hogy legyen - ellentmondás.
284 MEGOLDÁSOK

16.2. ábra.

13. Térképek és gráfok színezése


13.1. T artom ányok szín ezése két szín n el
1 3 .1 .1 . Indukcióval; n = 1 esetén az állítás igaz, legyen n > 1. Tegyük
fel, hogy az első n — 1 körre teljesülnek a leírtak. Ha berajzoljuk az n-edik
kört, akkor a körön kívül a tartományoknak sem a színe, sem a paritása nem
változik, a körön belül viszont mindkettő.
1 3 .1 .2 . (a) Indukció; 1 egyenesre az állítás igaz; amikor újabb egyenest
rajzolunk be, változtassuk meg az egyik oldal valamennyi tartományának
színét.
(b) Egy lehetséges megoldás: legyen az egyik irány „felfelé”. Legyen P
olyan pont, amely egyik „felfelé” haladó egyenesre sem illeszkedik. Indít­
sunk egy félegyenest P-ből felfelé. Számoljuk össze, hogy hányat metsz ez a
félegyenes az adott egyenesek közül. Színezzük ki a tartományokat a met­
széspontok paritása szerint.
13.2. G ráfok szín ezése két szín n el
1 3 .2 .1 . A gráfban nem lehet páratlan hosszúságú kör. Valóban, ha C
egy kör, akkor minden éle pontosan egy pontban metszi a körök unióját.
A metszéspontok halmazához minden kör páros számú ponttal járul hozzá,
mivel C-1 végigjárva minden körbe felváltva lépünk be, illetve ki.
13.3. G ráfok szín ezése tö b b szín n el
1 3 .3 .1 . Tegyük fel, hogy az első gráf esetén létezik „jó” színezés 3 színnel.
Induljunk el felülről, az első pont legyen „1” színű, a második szint pontjai
„2” és „3” színűek, a legalsó két szint pontjai pedig „1” színűek lesznek. Ez
azonban lehetetlen, mivel ezek a csúcsok szomszédosak.
Tegyük fel, hogy a második gráf esetében létezik „jó” színezés 3 színnel. A
középpontból indulunk, legyen ez „1” színű. Ekkor a középpont minden szom­
szédja vagy „2” vagy „3” színű lesz. Színezzük át a legkülső „1” színű pontokat
MEGOLDÁSOK 285

a belső „ikertestvésük” színére. Ezzel a színezéssel megkapnánk egy 5 hosszú­


ságú kör 2 színnel való „jó” színezését, mivel az „ikertestvérek” szomszédai
ugyanazok (kivéve, hogy a belső ikertestvér szomszédos a középponttal is).
Ez pedig lehetetlen.
1 3 .3 .2 . A sík kis mértékű elforgatása árán feltehetjük, hogy minden
metszéspont y-koordinátája (amit egyszerűen „magasságnak” nevezhetünk)
különböző legyen. A legfelső metszésponttól lefelé haladva egyenként vala­
mennyi metszéspontot kiszínezhetjük. Az éppen sorra került pontnak a két,
már kiszínezett egyenesen minden esetben legfeljebb két szomszédos met­
széspontja lehet, így mindig találhatunk olyan színt, amely ez utóbbiakétól
különbözik.
1 3 .3 .3 . Feltehetjük, hogy van legalább két pont, így van olyan pont,
amelynek fokszáma nem nagyobb d-nél. Ezt a pontot hagyjuk el, színezzük
ki a gráfot d + 1 színnel, majd terjesszük ki ezt a színezést az utolsó pontra
- amit megtehetünk, mivel a d szomszédos pont csak d színt zár ki.
1 3 .3 .4 . Hagyjunk el egy d fokszámú pontot, és színezzük ki a megmaradt
gráfot d + 1 színnel. Ezt a színezést az előző feladat megoldásához hasonlóan
kiterjeszthetjük.

14. V éges geometriák, kódok, latin négyzetek


és más egzotikumok
14.1. K ü lön ös kis v ilágok
1 4 .1 .1 . Magát a Fano-síkot kapjuk.
1 4 .1 .2 . Legyen abc egy kör. Az a pontra illeszkedő egyenesek közül az
egyike átmegy 6-n, a másik pedig c-n, így egyik sem érintő. A harmadik a-ra
illeszkedő egyenes viszont már az.
1 4 .1 .3 . Ha H hiperciklus, akkor 4 pontja 6 egyenest határoz meg. A
hetedik egyenes H egyik pontján sem megy át. Megfordítva: ha L egyenes,
akkor a 4 rajta kívüli pontból álló halmaz egyetlen részhalmaza sem lehet
egyenes, egy ilyen egyenesnek ugyanis L-lel egy metszéspontja sem lenne, ez
a négy pont tehát egy hiperciklust alkot.
1 4 .1 .4 . (a) Ha az L minden pontja igennel szavaz, akkor - mivel minden
egyenesnek van L-lel közös pontja - minden egyenesnek lesz igen szavazata,
nem lesz tehát egyhangú nemmel szavazó egyenes, (b) Feltehetjük, hogy
legalább 4 pont igennel szavaz, legyen ilyen mondjuk a, b, c és d. Tegyük fel,
hogy nincs olyan egyenes, amelynek minden pontja igennel szavaz. Az a-ra
illeszkedő egyenesek mindegyikének van legalább egy további igen szavazata
is, így 6, c és d közül pontosan az egyiken minden ilyen egyenes átmegy. A
megmaradt három pont tehát nemmel szavaz. Mivel az igen szavazatok egy
hiperciklust, a nem szavazatok egy egyenest alkotnak (14.1.3 feladat).
1 4 .1 .5 . (a) Két eredeti pontra egy eredeti egyenes illeszkedik; egy ere­
deti a és egy új 6 ponthoz egyértelműen létezik egy rájuk illeszkedő egyenes
286 MEGOLDÁSOK

azok között a párhuzamos egyenesek között, amelyekhez 6-t hozzáadtuk, két


új ponton pedig az új egyenes megy át. (b) hasonlóan igazolható, (c) nyil­
vánvaló, (d) pedig - mint azt már láttuk - következik (a)-ból, (b)-ből és
(c)-ből.
1 4 .1 .6 . Igen: minden egyeneshez (bármely 2 ponthoz) pontosan egy tőle
diszjunkt egyenes (másik két pont) található.
1 4 .1 .7 . Lásd a 16.3. ábrát (sok más megoldás is létezik).

1 6 .3 . á b r a .

1 4 .1 .8 . N e m v é le t le n . R ö g z í t s ü k a k o c k a t é r e g y A p o n t j á t . M in d e n A- r a
i lle s z k e d ő s í k b a n v a n 3 A - n á t m e n ő e g y e n e s . H a a z e g y p o n t o n á t m e n ő e g y e ­
n e s n y a l á b o k a t P O N T -n a k , a z e g y s í k b a e s ő e g y e n e s h á r m a s o k a t p e d i g E G Y E -
N E S -n e k n e v e z z ü k , a k k o r a P O N T -o k é s E G Y E N E S -e k F a n o - s ík o t a lk o t n a k .

14.2. V é g es affin és p ro jek tív síkok


1 4 .2 .1 . Rögzítsünk egy a pontot. Az a pontra n + 1 egyenes illeszkedik,
amelyeknek nincs más közös pontjuk, és - (a) miatt - az egész síkot lefedik.
Minden egyenesnek n darab a-tól különböző pontja van, az a-tól különböző
pontok száma így (n + l)n. A síknak tehát (a-val együtt) összesen n(n + l)+
+1 = n 2 + n + 1 pontja van.
1 4 .2 .2 . Rendeljünk koordinátákat a kockatér pontjaihoz, de ezek a ko­
ordináták legyenek a 2 elemű test rendezett hármasai (16.4. ábra). Könnyű
(csak sokáig tart) ellenőrizni, hogy a kockatér síkjait pontosan a (háromisme-
retlenes) lineáris egyenletek „megoldáshalmazai” alkotják. Az x + y + z = 1
egyenlet például a 001, 010, 100, 111 (világosszürke) pontokat adja meg.
1 4 .2 .3 . Egy 10 rendű projektív síknak 102+ 10+1 = 111 pontja és ugyan­
ennyi - egyenként 11 pontot tartalmazó - egyenese lenne. Egy egyenesjelöltet
(Y^)-féleképpen választhatunk ki, 111 „egyenesjelölt” kiválasztására pedig

■473239787751081'

lehetőségünk van. Ennyi lehetőséget napjaink leggyorsabb számítógépei sem


MEGOLDÁSOK 287

011 111

tudnának megvizsgálni - az univerzum fennállása óta eltelt idő alatt sem!


Lám, Thiel és Swiercz bonyolultabb módszereket alkalmaztak.
14.3. B lok k ren d szerek
1 4 .3 .1 . 441, 44.
1 4 .3 .2 . Bármely két - mondjuk C-vel és D-vel jelölt - polgár esetén pon­
tosan A klub létezik, amelynek mindketten tagjai. Ha ezeket minden D esetén
összeadjuk, ( v —1)A olyan klubot kapunk, amelynek C tagja. Minden klubot
k —1-szer számoltunk, azoknak a kluboknak a száma tehát, amelyeknek C
tagja, (v —1)A/k. Ez a szám bármely C polgár esetén ugyanennyi.
1 4 .3 .3 . (a) Ha v = 6, r = 3 és k = 3, akkor (14.1) alapján 6 = 6, viszont
ekkor (14.2)-ból A = 6/5 következne, (b) b = 8, v = 16, r = 3, k = 6, A = 1
(sok más példa is lehetséges).
1 4 .3 .4 . Legyen b — v klub, és minden C polgár esetén alapítsuk meg azt
a klubot, amelynek C kivételével mindenki tagja. Ekkor b = v, k = v — 1,
r = v —1 és A = v —2.
14.4. S tein er-ren d szerek
1 4 .4 .1 . Legyen A, B és C olyan 3 elem, amely nem alkot klubot. Van
egyetlen olyan klub, amelynek A és B is tagja, legyen ennek a klubnak a har­
madik tagja D. Hasonlóan: van pontosan egy E, amellyel A C E , és pontosan
egy F, amellyel B C F egy-egy klub. A D, E, F tagok páronként különbö­
zőek, ha ugyanis - mondjuk - D = E, akkor A és D két klubban is tagtársak
lennének (az egyikben H-vel, a másikban C-vel). Legyen a hetedik tag G.
Egyetlen olyan klub van, amelyben C és D együtt tagok, e klub harma­
dik tagja pedig csak G lehet (a másik négy lehetőséget rendre kizárhatjuk).
Hasonlóan belátható, hogy AFG és BÉG is klubok. Végül létezik egyetlen
klub, amelyben D és E tagtársak, és amelynek harmadik tagja F kell hogy
288 MEGOLDÁSOK

legyen. A klubok struktúráját ezzel - a tagok nevét leszámítva - egyértel­


műen meghatároztuk.
1 4 .4 .2 . (14.2) m iatt r = (y — l)/2, amiből (14.1)-t is figyelembe véve
b = v(y —l)/6 . Mivel v —1 > 6, azt kapjuk, hogy b > v.
1 4 .4 .3 . Nevezzük az 5-beli hármasokat S-hármasnak. Hármasból össze­
sen b — v(y — l)/6 , 5-hármasból pedig

= ^ ( ^ - 1 ) = (v ~ 1)(^ ~ 3)
6 24
darab van, a nem-S-hármasok száma tehát b —b ' — _Minden nem-
5'-hármasnak legfeljebb egy pontja van á'-ben, így legalább két olyan pontja
van, amely nem eleme fj-nek. Az S-en kívüli kételemű halmazok száma vi­
szont (('v+2 ^ 2) = ; és mivel ezen párok mindegyike egyetlen nem-
S-hármasnak lehet csak része, a nem-S-hármasok mindegyikében pontosan
két S-en kívüli elemnek kell lennie. Ezzel beláttuk, hogy minden nem-S-
hármasnak van egy S-beli eleme.
1 4 .4 .4 . A megoldást az 16.5. ábra mutatja.

1 4 .4 .5 . Minden lánynak 8 másik lánnyal kell sétálnia, minden lány min­


den nap 2 másikkal sétál együtt, így 4 napos tervre van szükség.
14.5. L atin n é g y z etek
1 4 .5 .1 . 576 különböző 4 x 4-es latin négyzet van. Ez többféleképpen is
belátható, az egyik lehetőség a következő. Az első sort 4!-féleképpen tölthet­
jük ki. Ezek a lehetőségek mind egyenértékűek abban az értelemben, hogy a
négyzet többi elemének kitöltése mindegyiknél ugyanúgy megy. Feltehetjük
tehát hogy az első sor a 0 1 2 3 számokból áll. Az első oszlop ezek után
3!-féleképpen tölthető ki, ezek a lehetőségek újra egyenértékűek, feltehetjük
tehát, hogy az első oszlop 0 1 2 3.
Ha a második sor második mezőjébe 0-t írunk, akkor a második sor és
a második sor többi elemét már nem választhatjuk meg tetszés szerint, de
a (jobb alsó sarokban elhelyezkedő) maradék négy mező kitöltésére két le­
hetőségünk is marad. Ha a második sorbeli 0 a harmadik vagy a negyedik
MEGOLDÁSOK 289

mezőbe kerül, akkor ez az összes többi mezőt egyértelműen meghatározza,


így az alábbi négy latin négyzetet kapjuk:
0 1 2 3 0 1 2 3 0 1 2 3 0 1 2 3
1 0 3 2 1 0 3 2 1 2 3 0 1 3 0 2
2 3 0 1 2 3 1 0 2 3 0 1 2 0 3 1
3 2 1 0 3 2 0 1 3 0 1 2 3 2 1 0
A maradék 9 mező tehát 4-féleképpen tölthető ki, a lehetőségek száma
ennélfogva 4! • 3! • 4 = 576.
A négy négyzet különbözőnek látszik ugyan, de a látszat csal: ha az első­
ben az 1-esek és a 2-eseket, az 2. és a 3. sort, valamint a 2. és a 3. oszlopot
felcseréljük, akkor megkapjuk a másodikat. Hasonlóan: ha a negyedikből az
1-esek és a 4-esek, a 2. és a 4. oszlop, valamint a 2. és a 4. sor felcserélésével a
másodikat kapjuk. A négyzetek közül tehát az utolsó három lényegileg nem
különbözik.
A második viszont nem kapható meg az elsőből efféle cserékkel (ez követke­
zik például a 14.5.7 feladatból). Vagyis mindössze két „lényegileg” különböző
4 x 4-es latin négyzet létezik.
14.5.2. Ez egyszerű; a következő táblázat például megfelel (sok más
megoldás is elképzelhető):
0 1 2 n —2 n —1
1 2 3 n —1 0
2 3 4 0 1

n —1 0 1 n —3 n —2
14.5.3.
1 2 3 1 2 3
2 3 1 3 1 2
3 1 2 2 3 1
14.5.4. Minden számhoz 1-et adunk, így minden sor-, illetve oszlopösszeg
4-gyel növekszik.
14.5.5. Olyan latin négyzetekre van szükségünk, amelyekben nem csu­
pán a sorokban és az oszlopokban, de a két átlóban is különböző számok
szerepelnek. A következő kettő például megfelel:
0 1 2 0 1 2 3
eo

2 3 0 i 3 2 1 0
3 2 1 0 1 0 3 2
1 0 3 2 2 3 0 1
Ezekből a következő „tökéletes” latin négyzetet kapjuk:
0 5 10 15
11 14 1 4
13 8 7 2
6 3 12 9
290 MEGOLDÁSOK

1 4 .5.6. Ha van ilyen latin négyzet, akkor a 0,1,2,3 számok tetszőleges


permutációjával egy másik négyzetet kapnánk, amely a (14.9) és a (14.12)
alatt szereplő mindhárom latin négyzetre ortogonális lenne. (Bizonyítsuk
be!) Feltehetjük tehát, hogy a négyzet első sora 0 1 2 3. De mi lehet ekkor a
második sor első eleme? A 0 ki van zárva (már szerepel fölötte), de az 1, a 2 és
a 3 sem jó: a 2-vel kapott négyzet nem lenne ortogonális a (14.12) négyzetre,
mivel a (2, 2) pár kétszer is megjelenne. Nem létezik tehát a feltételnek eleget
tevő latin négyzet. (Az eredmény általánosítható: n x n-es latin négyzetből
legfeljebb n — 1 páronként ortogonális létezik.)
1 4 .5.7. Ha egy latin négyzet ortogonális a (14.13) négyzetre, akkor a
14.5.6. feladat gondolatmenete szerint feltehetjük, hogy az első sor 0 1 2 3. Az
első sor ekkor a (0,0), (1,1), (2, 2) és (3, 3) párokból áll, vagyis a két négyzet
többi sorának minden mezőjében különböző számoknak kell szerepelnie.
Speciálisan: a második sor első mezőjében nem állhat sem 1, sem 0 (mivel
felette 0 áll), így tehát vagy 2, vagy 3.
Tegyük fel, hogy 2. A sor második tagja nem lehet sem 1, sem 2 (1 fölötte,
2 mellette szerepel), és mivel 3 sem lehet, az egyetlen lehetőség a 0. A ne­
gyedik nem lehet sem 2, sem 0, sem 3, így 1 kell hogy legyen: a második sor
tehát: 2 0 3 1 (mint a (14.13) négyzet harmadik sora). Ezután meghatároz­
zuk az utolsó sor elemeit. Minden tag különbözik az - első, illetve második
sorban - fölötte lévőktől, ezen felül pedig a (14.13) utolsó elemének megfelelő
elemétől is, így ez a sor: 1 3 0 2 (az (14.13) második sora). A harmadik sor
eszerint 3 2 1 0 , így viszont a negyedik sorok összefésülésekor a (3,1) pár
kétszer is megjelenik.
Hasonlóan érvelhetünk, ha a második sor 3-mal kezdődik.
14.6. K ódok
1 4 .6.1. Tegyük fel, hogy a kód d-hibajavító. Belátjuk, hogy bármely
két kódszó legalább 2d + 1 bitben különbözik egymástól. Valóban: ha az u
kódszóból a v-t mindössze 2d bit megváltoztatásával megkaphatnánk, akkor
tekintsük azt a w karaktersorozatot, amelyet az u-ból úgy kapunk, hogy a
szóban forgó 2d bitből d-t változtatunk csak meg. A w ekkor éppúgy tekint­
hető elromlott u-nak, mint elromlott v-nek, ami ellentmond annak, hogy a
kód d-hibajavító.
Ha tehát olyan üzenetet kapunk, amely legfeljebb 2d hibát tartalmaz,
akkor ez az üzenet biztosan nem kódszó - vagyis egy 2d bites hibát még
biztosan fel tudunk ismerni.
Az állítás megfordítása hasonlóan bizonyítható.
1 4 .6.2. Ha a karaktersorozatban nincs 1-es, akkor kódszó. Ha egy 1-es van
benne, akkor ez megváltoztatható úgy, hogy a eredményül kódszót kapjunk.
Ha két 1-est tartalmaz, akkor van Fano-síkon egy, a szóban forgó két ponton
átmenő egyenes, ha ennek az egyenesnek a harmadik pontjához tartozó 0-t
megváltoztatjuk, egy kódszót kapunk. Ha a karaktersorozatban három 1-es
van, és a pozícióiknak megfelelő pontok egy egyenesre illeszkednek, akkor
MEGOLDÁSOK 291

a karaktersorozat kódszó. Ha három 1-es van, de a megfelelő pontok nem


kollineárisak, akkor van egyetlen olyan pont, amely az általuk meghatáro­
zott három egyenes egyikére sem illeszkedik, e pontnak megfelelő karakter
megváltoztatásával pedig egy kódszót kapunk. Ha a karaktersorozatban az
egyesek száma több mint három, akkor az érvelés hasonlóan megy, csak az
1-esek szerepét a 0-k veszik át, és vice versa.

15 A kom plexitáselm élet és a kriptográfia


elemei
15.2 K lasszik u s kriptogrfia
15.2.1. E G Y H É T IG NEM TÁM ADUNK DE UTÁNA T E L JE S ERŐ V EL. BÉLA

15.2.2. Legyen a ia 2 . . . a n a kulcs, &i &2 ...6 „ pedig a nyílt szöveg. A


Caligula által elfogott első üzenet karakterei ü2 ® &i, <23 ® &2, • • • an © bn- 1,
a másodiké pedig a\ ® bi, C12 © &2, • • •, «n © bn. (A második üzenet egy bittel
hosszabb, amiből rájöhet, hogy mi történhetett.) Kiszámíthatja az első, a
második, a harm adik.. .karakterek bináris összegét, így a (02 © b±) © (a\ ©
bi) = a\ © ö2, (&3 © &2) © (a2 © Ö2) = 02 © 03 karaktersorozatot kapja.
Most megvizsgálja, mit kap, ha a\ = 0. Mivel tudja, hogy mennyi a\ ©02,
kiszámíthatja 02-t; aztán ű3-at, és így tovább. Ha az üzenet zagyva, abból
arra következtet, hogy az első karakter mégsem 0, ezután már csak ai = 1-
gyel kell próbát tennie. A két próbálkozás közül az egyik feltöri a kódot.
15.2.3. Legyen 0102 ... an a kulcs; legyen továbbá bi&2 ■• • bn és C1C2 ... c„
a két nyílt szöveg. Caligula megint két üzenetet fog el: az első karakterei
ai © h , a2 © b2, ■■■an © bn, a másodikéi pedig a\ © ©, a2 © c2, . . . , an © cn.
Miként az előbb, megint kiszámítja az első, a második, a harm adik... bitek
bináris összegét: (ai ©61) © (ai ©ci) = b1 ©ci, (a2 ©62) © («2 ©C2) = b2 ffic2
és így tovább.
A folytatás mindazonáltal nem olyan egyértelmű, mint az előző feladat­
ban, de tegyük fel, hogy Caligulának sikerül Arthur üzenetének bizonyos
részletét (például az aláírást vagy a címzést) megfejtenie. Ekkor - a két üze­
net bitenkénti összegének ismeretében - meg tudja fejteni Béla üzenetének
megfelelő részleteit is. Ha szerencséje van, akkor ez nem egy teljes szó, ha­
nem tartalmazza egy szó részletét is. A fennmaradó rész kitalálásával Arthur
üzenetének további karaktereire is fényt deríthet, aminek alapján továbbha­
ladhat Béla üzenetének megfejtésében is, stb.
A módszer általában kissé bonyolultabb, de tipikus esetben elegendő az
üzenetek megfejtéséhez (amit a II. világháború kódtörői is megtanultak).
Fontos körülmény, hogy Caligula ellenőrizni tudja, hogy helyes-e az általa
adott megfejtés, mivel ekkor mindkét üzenetnek értelmesnek kel lennie.
15.3 A z u to lsó sak k lép és
15.3.1. Adél könnyen csalhat: este elküld egy x véletlen karaktersoro­
zatot, éjszaka kigondolja a megfelelő lépést, majd a lépést kódoló y bináris
szám és x összegét elküldi mint reggeli kódot.
292 MEGOLDÁSOK

1 5 .3.2. Ez a módszer kizárja az előző feladatbelihez hasonló csalás le­


hetőségét, mivel ha Adél meggondolja magát, a reggel kiszámított „kód”
értelmetlen szöveget ad. Ezúttal azonban Bélánál az előny: kipróbálhatja a
„véletlenszerű, de nem értelmetlen” kódokat, ilyenekből ugyanis nincsen túl
sok.
15.6 N y ilv á n o s k u lcsú titk osírá s
1 5 .6.1. (a) Válasszuk nyilvános kulcsnak az ei , e2, . . . eM számokat, és
alkalmazzuk a feltételezett algoritmust a di, d2, . . . , dM titkos kulcsok meg­
határozására. A k = (jp —l)(q —1) szám az eidi —í , e 2 d2 —1, . . . , ejv/ c?m —1
számok közös osztója, ennélfogva osztója az általunk kiszámítható

K = gcd(eid1 - 1, e2 d2 - 1, . . . , eMdM ~ 1)

számnak is. Ha K < m, akkor tudjuk, hogy valójában k = K, elvégre


k — (p —l)(q —l) > pq/2 = m/2. Ha nem, akkor válasszunk másik ejvf+i nyil­
vános kódot, és ismételjük meg az eljárást. Belátható, hogy ekkor logm-nél
kevesebb próbálkozással k nagy valószínűséggel meghatározható.
(b) Ha tudjuk, hogy m = pq és k = (p — l)(q —1), akkor az is nyilvánvaló,
hogy p + q = m —k + l, p és q tehát a x 2 —(m —k + l)x + m = 0 másodfokú
egyenlet két gyökeként határozható meg.
Név- és tárgymutató

Adleman, L., 255 egészrész, 24


affin sík, 225 felső, 24
ág, 153 él, 134
aláírás, 257 elvágó, 150
általános helyzetű egyenesek, 189 párhuzamos, 134
amőbasík, 220, 229, 232 elsőfokú faktor, 173
Appel, K., 212 elvágó él, 150
aranymetszés, 82 esemény, 85
asszociativitás, 17 kizáró, 86
eseménytér, 85
Baranyai, Zsolt, 236 euklideszi algoritmus, 106-112,
bijekció,’ 23, 157 120, 131, 256
bináris reprezentáció, 21 euklideszi sík, 218
binomiális együtthatók, 30-31, 33, Euler, L., 142
52-73, 79, 89 Euler-séta, 144
binomiális tétel, 53
biztonság, 257
blokkrendszer, 228-232 fa, 20, 149, 198
bonyolultságelmélet, 209 címkézetlen, 154, 161
Brooks tétele, 209, 214 címkézett, 154
feszítő, 150, 164
címkézett fa, 154 gyökérpontja, 150
Carmichael-számok, 128 levele, 151
Cayley tétele, 155 számozatlan, 154
Cayley-tétel, 158, 165 számozott, 154
csúcs, 134 fanövesztő eljárás, 152
szomszédos, 134 Fano, G., 225
csillag, 138 Fano-sík, 218, 228, 232
kettős-, 163 felső egészrész, 24
Fermat, Pierre de, 104
DES, 258 „kis” tétele, 104-106, 256
diszjunkt halmazok, 15 -sejtés, 105
dodekaéder, 201 -teszt, 125, 128
dodekaédergráf, 147 feszítő fa, 150, 164
duális gráf, 213 Fibonacci, Leonardo, 74
294 NÉV- ÉS TÁRGYMUTATÓ

Fibonacc.i-számok, 74-84, 91, 109, hibafelismerő kód, 241


110, 130 hiperciklus, 224
Fisher-egyenló'tlenség, 230, 231 hurokéi, 134
fokszám, 134
Frobenius, G., 177 ikerparadoxon, 46
független események, 87 ikerprím, 101
ikozaéder, 201
Gauss, C.F., 112 indirekt bizonyítás, 46, 99, 167
Gauss-görbe, 67 indukció, 50, 152, 204, 209
Goldbach-sejtés, 103 szimultán, 78
gráf, 134 irracionális szám, 99
csúcsa, 134 ismétléses kód, 240
duális, 213 izomorf fák, 154
egyszerű, 134
él nélküli, 138 javító út, 181
éle, 134 jelszó, 253
feszítő fája, 150
komplemense, 138 különbség, 15
kromatikus száma, 208 kód, 240
összeíiggő komponense, 140 1-hibajavító
páros, 173, 206, 231 tökéletes, 244
részgráfja, 139 hibafelismerő, 241
síkba rajzolható, 196, 212 ismétléses, 240
színezése, 208 nyilvános, 255
teljes, 138, 199 planáris, 170
Guthrie, F., 211 privát, 255
gyökérpont, 150 Reed-Müller, 244
Reed-Solomon, 244
Haken, W., 212 RSA-, 255
Hall, P., 177 kódolás, 21
halmaz, 13 Kőnig Dénes, 174
elemei, 13 kísérlet, 85
elemeinek száma, 14 Kempe,A., 212
komplementere, 30 kettőscsillag, 163
részhalmaza, 14 Kirkman, T., 236
rendezett, 27 kis számok tétele, 91
számossága, 14 kizáró események, 86
üres, 14 Klein, E., 192
Hamilton, W. R., 146 kocka, 201
Hamilton-kör, 146, 169, 216 kockatér, 222, 229
happy end-probléma, 192 kommutativitás, 17
haranggörbe, 67 komplementer halmaz, 30
háromszög-egyenlőtlenség, 170 komplexitáselmélet, 249, 253
házassági tétel, 177, 231 kongruencia, 112-114
helyettesítéses kód., 249 modulusa, 112
NÉV- ÉS TÁRGYMUTATÓ 295

konvex n-szög, 198 nagy számok törvénye, 85, 88


konvex burok, 193 négy színtétel, 213
konvex sokszög, 187 NP-beli tulajdonság, 247
König, D., 177
Königsberg hidjai, 144 nyilvános kód, 255
kör, 138 nyilvános kulcsú titkosírás, 255
Hamilton-, 146, 169
hossza, 138 one-time pad. 250
húrja, 164 oszthatóság, 94
körséta, 140
kriptográfia, 130, 249 összefüggő komponens, 140
kromatikus szám, 208 összetett szám, 95
Kruskal-algoritmus, 167 ötszíntétel, 213
kulcs, 249
paritásellenőrzés, 241
Lám C. W. H., 228 párhuzamossági axióma, 221
latin négyzet, 236-240 páros gráf, 173, 206, 231
ortogonális, 237 párosítás, 173-186
legkisebb közös többszörös, 107 mohó, 180
legnagyobb közös osztó, 106 teljes, 173
levágó algoritmus, 170 partíció, 177
levél, 151 Pascal, Blaise, 58
logaritmus, 41, 47-50, 65, 68 Pascal-háromszög, 58, 85
Lucas-számok, 83 permutáció, 27
Petersen-gráf, 147, 186, 202
mágikus négyzet, 237 Pitagorasz, 99
Maple, 130, 254 pitagoraszi számhármas, 107
maradékos osztás, 94 planáris kód, 161, 170
Matematica, 130 poliéder, 200, 201
megfejtés, 249 Pólya György, 163
megfeleltetés pont, 134
kölcsönösen egyértelmű, 23 apja, 150
mértani sorozat, 81 fia, 150
metszet, 15 fokszáma, 134
Miller-Rabin teszt, 129 szomszédos, 134
minimális kriminális, 97 prímszám, 95, 226
moduláris aritmetika, 117 prímszámtétel, 102
modulus, 112 prímtényezős felbontás, 97, 252
mohó algoritmus, 167 prímtest, 117, 226
mohó fa, 167 privát kód, 255
mohó párosítás, 180 projektív geometria, 222
multigráf, 134, 213 projektív sík, 225
művelet Prüfer-kód, 157, 160
asszociatív, 17 bővített. 158
kommutatív, 17 pszeudoprím, 127
296 NÉV- ÉS TÁRGYMUTATÓ

Ray-Chaudhuri, D.K., 236 szimultán indukció, 78


Reed-Müller-kód, 244 szitaformula, 43, 122
Reed-Solomon-kód, 244 szomszédsági mátrix, 156
reflexvitás, 113
rekurzív definíció, 75 Tarry, G, 228
relatív prím, 106, 256 tartalmazás és kizárás , 43
rendezett halmaz, 27 Taylor, R., 105
részgráf, 139 teljes gráf, 138
részhalmaz, 14 teljes indukció, 34-39, 71,122,136
Rivest, R., 255 teljes párosítás, 173
RSA-kód, 255 tetraéder, 201
Thiel L., 228
séta, 140, 143 titkosítás, 249
Euler-, 144 tranzitivitás, 113
zárt, 140
Shamir, A., 255 unió, 15
shttp, 258 uniform valószínűségi mező, 86
sík út, 138
affin, 225 hossza, 138
rendje, 226 javító, 181
amőba-, 220, 229, 232 utazó ügynök, 167, 169
euklideszi, 218
üres halmaz, 14
Fano-, 218, 228, 232
projektív, 225
valószínűségi mező, 86
rendje, 225
uniform, 86
síkba rajzolható gráf, 196
Venn-diagram, 16
skatulyaelv, 44, 122, 208, 247
SSL ,258 Wiles, A., 105
Steiner, J., 232
Steiner-rendszer, 232-236, 245 zajos csatorna, 240
színezése, 235
súlyzógráf, 164
Swierz S., 228

számelmélet, 94
alaptétele, 97
számhalmazok, 14
számítógép, 95, 253
számosság, 14
színezés
gráfé, 205
Steiner-rendszeré, 235
tartományoké, 203, 205, 212
Szekeres, Gy., 192
szimmetrikus differencia, 15
E L M E L E T I M A T E M A T I K A

A diszkrét (vagy véges) matematika a matematika egyik leggyorsabban


fejlődő, az alkalmazások szempontjából kitüntetett jelentőségű fejezete,
amely az analízis által vizsgált folytonos struktúrákkal szemben diszkrét
(véges) objektumokkal és problémákkal foglalkozik. A három kiváló szerző
közösen írt könyve ebbe a területbe nyújt bevezetést úgy, hogy egyúttal
a matematikai gondolkodásmód természetéről is képet ad. A klasszikus
kombinatorikai, gráfelméleti és számelméleti eredményeket - egyebek
mellett a nevezetes leszámlálási feladatokat, a prímszámokat, az euklideszi
algoritmust, a Pascal-háromszöget, a Fibonacci-számokat, a Hamilton-
köröket, a fákat, a páros gráfokat, az Euler-tételt, az optimalizálás és a
térképszínezés problémakörét - bemutató részek mellett külön fejezet
foglalkozik a kombinatorikus valószínűséggel, a véges geometriákkal, a
bonyolultságelmélet, valamint az informatikai alkalmazásokban alapvető
kódelmélet és kriptográfia elemeivel. Az anyag elsajátítását számos példa,
feladat és illusztráció segíti.

Lovász László az ELTE Matematikai Intézetének igazgatója, a Microsoft


Theory Eroupjának vezető munkatársa, Wolf- és Gödel-díjas.
Pelikán József az ELTE Algebra és Számelmélet Tanszékén tanít, a
Nemzetközi Matematikai Dlimpia tanácsadó testületének elnöke.
Vesztergombi Katalin a University of Washington és az ELTE Számítógép-
tudományi Tanszék tanára.

3500 Ft
ISBN 9 7 8 - 9 6 3 - 2 7 9 - 0 8 5 - 5

9 789632 790855

You might also like