Fraktálok és káosz egy egyszerű kombinatorikus játékban

Facebook
Nyomtatás

Ebben a cikkben egy egyszerű kombinatorikus játékot mutatunk be, amely középiskolás szinten is megérthető, ugyanakkor gazdag és érdekes matematikai tulajdonságokkal rendelkezik, számos nyitott kérdéssel. A kivonós játékot két játékos játssza a következő szabályokkal. Adott egy pozitív egész szám, \(n\), és pozitív egész számok véges halmaza, \(A\). Elhelyezünk \(n\) db kavicsot egy asztalra, és a két játékos felváltva vesz el a kavicsokból. Minden lépésben az elvett kavicsok száma meg kell, hogy egyezzen az \(A\) halmaz valamely elemével, de ezen felül semmi további kikötés nincsen, az \(A\) halmaz bármelyik eleme akármelyik játékos által akármikor, akárhányszor választható a játék során. Ha az asztalon levő kavicsok száma kevesebb, mint az \(A\) halmaz minimuma, akkor az aktuálisan lépő játékos elveszítette a játékot, és a másik játékos nyert. Az alapkérdés az, hogy adott \(n\) és \(A\) halmaz esetén melyik játékosnak van nyerő stratégiája, azaz melyik játékos az, aki mindenképpen meg tudja nyerni a játékot, bárhogyan is játszik a másik játékos. Az olvasókat buzdítjuk arra, hogy próbálják maguk bizonyítani a következő állítást, mielőtt elolvasnák a bizonyítást.

1. Állítás. Legyen \(A=\{1,2,3,4\}\) és \(n=20\). Ekkor a második (azaz nem a kezdő) játékosnak van nyerő stratégiája.

Bizonyítás. A nyerő stratégia az, hogy minden fordulóban, ha az első játékos \(k\) kavicsot vesz el, a második játékos \(5-k\) kavicsot vesz el. Ez mindig lehetséges, hiszen az \(A\) halmaz minden lehetséges \(k\) elemére igaz az, hogy az \(A\) halmaz az \(5-k\) elemet is tartalmazza. Így az első forduló után 15 kavics marad, a második forduló után 10, a harmadik forduló után 5, a negyedik forduló után pedig 0 kavics marad, akárhogyan is játszik az első játékos. Ezután az első játékos nem tud lépni, így a második játékos nyert. 

Mi a helyzet, ha továbbra is \(A=\{1,2,3,4\}\), de \(n=23\)? Könnyen belátható, hogy ebben az esetben a kezdő játékosnak van nyerő stratégiája. Valóban, az első játékos az első lépésben 3 kavicsot vesz el. Ekkor 20 kavics marad, tehát a helyzet most megegyezik az előbbi játékkal, de most a második játékos lép először, és el fogja veszíteni a játékot, amennyiben az első játékos az előző bizonyításban leírt stratégiát követi.

Általánosan is igaz, hogy ha egy adott állásban az aktuálisan lépő játékosnak van olyan lépése, amely olyan álláshoz vezet, amelyben a második játékosnak van nyerő stratégiája, akkor az aktuális játékos meg tudja nyerni a játékot. Azonban ha minden lehetséges lépés olyan álláshoz vezet, amelyben a kezdő játékosnak van nyerő stratégiája, akkor az aktuális játékos elveszíti a játékot.

Definiáljuk az \(f_A(n)\) függvényt a következőképpen. Legyen \(f_A(n)=1\), ha n kaviccsal kezdve az első játékosnak van nyerő stratégiája abban a játékban, amelyben az elvehető kavicsok számát az \(A\) halmaz adja meg, és legyen \(f_A(n)=0\), ha a második játékosnak van nyerő stratégiája. Ekkor teljesül a

\[\displaystyle f_A(n)=1-\min\limits_{x\in A} \{f_A(n-x)\}\]

egyenlőség. Valóban, \(f_A(n)\) 1 lesz, amennyiben \(\min\limits_{x\in A} \{f_A(n-x)\}=0\), azaz van olyan \(x\in A\), hogy \(f_A(n-x)=0\), azaz az első játékos el tudja navigálni a játékot egy olyan állásba, ahonnan kezdve a második játékosnak van nyerő stratégiája. Ha azonban \(\min\limits_{x\in A} \{f_A(n-x)\}=1\), akkor \(f_A(n)\) 0 lesz, mert az első játékos bármelyik lépésére az ellenfelének lesz nyerő stratégiája.

Az olvasókat megint biztatjuk, hogy a következő állítást próbálják meg bizonyítani, mielőtt elolvasnák a bizonyítást.

2. Állítás. Bármely véges \(A\) halmazra az \(f_A(n)\) függvény időben periodikussá válik, azaz létezik olyan \(n_0\) és \(p\), hogy minden \(n\ge n_0\)-ra \(f_A(n)=f_A(n+p)\).

Bizonyítás. Legyen \(F_A\) egy, a \(\max\{A\}\) hosszúságú 0-1 vektorokat \(\max\{A\}\) hosszúságú 0-1 vektorokba képező függvény a következő hozzárendelési szabállyal. Ha \(Z=(z_0,z_1,\dots ,z_{\max\{A\}-1})\), akkor

\[\displaystyle F_A(Z)=\Bigl(z_1,z_2,\dots z_{\max\{A\}-1},1-\min\limits_{x\in A} \{z_{\max\{A\}-x}\}\Bigr).\]

Vegyük észre a következőt.
Ha \(Z_0:=(f_A(0),f_A(1),\dots ,f_A(\max\{A\}-1))\), akkor 
\(Z_1:=F_A(Z_0)=(f_A(1),f_A(2),\dots ,f_A(\max\{A\}))\), és rekurzívan minden \(n\)-re
\(Z_n:=F_A(Z_{n-1})=(f_A(n),f_A(n+1),\dots ,f_A(\max\{A\}+n-1))\). Mivel \(F_A\) egy véges halmazból ugyanabba a véges halmazba képező függvény, a skatulyaelv alapján lesznek olyan \(p_1<\) \(p_2\) számok, hogy \(Z_{p_1}=Z_{p_2}\). De ekkor \(Z_{p_{1+1}}=Z_{p_{2+1}}\), stb. azaz a \(Z_n\) vektorok \(p_2-p_1\) periódussal ismétlődnek. Így az \(f_A(n)\) értékek is. 

Mivel a lehetséges \(\max\{A\}\) hosszúságú 0-1 vektorok száma \(2^{\max\{A\}}\), ez egy felső határ a periódus hosszára. Nyitott kérdés, hogy létezik-e (\(\max\{A\}\) függvényében) exponenciális periódushossz. A játék egy kissé módosított változatában sikerült nemrégiben szuperpolinomiális periódushosszakat bizonyítani [4]. A tipikus periódushossz azonban általában lineáris vagy még rövidebb hosszúságú \(\max\{A\}\) függvényében. Pl. belátható, hogy ha \(A=\{a_1,a_2\}\), akkor a periódushossz \(2a_1\), ha \(a_2\) páratlan többszöröse \(a_1\)-nek, és minden más esetben \(a_1+a_2\) [1]. A nyerő pozíciók periódushosszai csak a kételemű \(A\) halmazok esetén ismertek teljes egészében.

Háromelemű halmazok esetében, pl. ha \(a_1=s\), \(a_2=2s+1\) és \(a_3=3s+1\), akkor a periódushossz \(4s^2+3s\) [1]. Nem ismert négyzetesnél hosszabb periódushossz, és a legtöbb esetben a periódushossz vagy \(a_1+a_2\) vagy \(a_1+a_3\) vagy \(a_2+a_3\), vagy ennek a három számnak az osztója [2]. Itt a következő érdekes jelenséget figyelhetjük meg. Ha egy fix nagy \(a_3\) értékre ábrázoljuk minden lehetséges \(A=\{a_1,a_2,a_3\}\)-ra, hogy az \(f_A\) függvény periódushossza a fenti három összeg közül melyiknek az osztója (esetleg több összegnek vagy egyikének sem), akkor az 1. ábrán látható fraktálstruktúrát kapjuk. Ennek a fraktálnak a struktúrája lényegében nem függ \(a_3\)-tól. Az 1. ábrán \(a_3=293\)-ra és \(a_3=300\)-re mutatjuk, hogy melyek azon \({(a}_1,a_2)\) párok, amelyekre az \(f_A\) függvény periódusa \(a_1+a_2\) osztója vagy \(a_1+a_3\) osztója vagy \(a_2+a_3\) osztója. Míg 293 prím, 300 összetett szám. Ennek ellenére a két esetben kapott ábra nagyon hasonlít egymásra. Egyelőre nem ismert ennek a jelenségnek a magyarázata.

1 bra
1. ábra. Az \(f_A(n)\) függvény periodikussága, amikor \(A=\{a_1,a_2,a_3\}\). A bal oldali ábrán \(a_3=293\), a jobb oldali ábrán \(a_3=300\). A színkódok: piros: \(f_A(n)\) periódusa osztója \(a_1+a_2\)-nek, zöld: \(f_A(n)\) periódusa osztója \(a_1+a_3\)-nak, kék: \(f_A(n)\) periódusa osztója \(a_2+a_3\)-nak, fekete: a periódus valami más, más szín: a periódus osztója az \(a_1+a_2\), \(a_1+a_3\) és \(a_2+a_3\) számok közül többnek is. Az ábrákon az \(a_1=1\), \(a_2=1\) eset a bal fölső sarokban van, \(a_1\) értékei az \(x\) tengelyen nőnek, \(a_2\) értékei az \(y\) tengelyen nőnek.

Még érdekesebb jelenségeket figyelhetünk meg, ha a játékot úgy játsszuk, hogy nem 1, hanem 2 kupac kavicsunk van, és az \(A\) halmaz véges, kétdimenziós nemnegatív egész vektorokat tartalmaz (legalább az egyik vektor koordináta pozitív). A két játékos ismét felváltva játszik, és minden lépésben az \(A\) halmazból választanak egy vektort, amely megmondja, hogy melyik kupacból hány kavicsot kell elvenni. Amennyiben a maradék kavicsok száma annyi, hogy egyetlen \(A\)-beli vektor sem választható (mert legalább az egyik kupacban levő kavicsok száma kevesebb, mint a vektor megfelelő koordinátája), az aktuális játékos elveszíti a játékot, és a másik nyert. Ekkor definiálhatjuk az \(f_A(n_1,n_2)\) függvényt a következőképpen. \(f_A(n_1,n_2)=1\), ha \(n_1\) és \(n_2\) kaviccsal kezdve a kezdő játékosnak van nyerő stratégiája, és \(f_A(n_1,n_2)=0\), ha a második játékosnak van nyerő stratégiája. Fennáll a

\[\displaystyle f_A(n_1,n_2)=1-\min\limits_{(x_1,x_2)\in A} \{f_A(n_1-x_1,n_2-x_2)\}\]

egyenlőség, amelynek segítségével könnyen ki tudjuk számolni az \(f_A(n_1,n_2)\) értékeket.

Míg egydimenziós esetben skatulyaelvvel könnyen lehetett bizonyítani a periodikusságot, addig két dimenzióban nem ismert ilyen bizonyítás, sőt, úgy néz ki, hogy bizonyos esetekben az \(f_A(n_1,n_2)\) függvény kaotikus viselkedést mutathat. Kaotikus viselkedést gyakran figyelhetünk meg olyan \(A\) halmazoknál, amelyek tartalmaznak egy olyan \(x_{\max}\) vektort, amelyre minden \(x\in A\), \(x\neq x_{\max}\)-ra \(x_{\max}-x\in A\) [3]. Ezek közül most az \(A=\{(3,0),(0,3),(2,5),(5,2),(5,5)\}\) esetet mutatjuk be. Ekkor az átló körüli, azaz \(n_1\approx n_2\) tartományban teljes káoszt mutat az \(f_A(n_1,n_2)\) függvény (ld. 2. ábra), míg az átló alatt függőleges, az átló fölött vízszintes irányban periodikusságot mutat \(f_A(n_1,n_2)\), de a másik irányban kaotikus viselkedést mutat (ld. 3. ábra). Ide kattintva erre a játékra \(f_A(n_1,n_2)\) első 16000-szer 16000 értékeit mutatjuk be. További két \(A\) halmazra ugyanennyi értéket mutatunk be, itt az \(A=\{(1,9),(8,3),(9,1),(2,7),(10,10)\}\), itt pedig az \(A=\{(2,9),(8,3),(8,1),(2,7),(10,10)\}\) halmazhoz tartozó \(f_A(n_1,n_2)\) függvény értékeit. A \((0,0)\) a bal felső sarokban van. A fekete szín jelöli az \(f_A(n_1,n_2)=1\) értéket, a fehér szín pedig a \(f_A(n_1,n_2)=0\) értéket.

2 bra
2. ábra. Az \(f_A(n_1,n_2)\) függvény egy részlete \(n_1\approx n_2\approx 10000\) környékén, \(A=\{(3,0),(0,3),(2,5),(5,2),(5,5)\}\). A fekete szín jelenti az \(f_A(n_1,n_2)=1\) értékeket, míg a fehér az \(f_A(n_1,n_2)=0\) értékeket.
3 bra
3. ábra. Az \(f_A(n_1,n_2)\) függvény egy részlete \(n_1\ll n_2\approx 10000\) környékén, \(A=\{(3,0),(0,3),(2,5),(5,2),(5,5)\}\). A fekete szín jelenti az \(f_A(n_1,n_2)=1\) értékeket, míg a fehér az \(f_A(n_1,n_2)=0\) értékeket.

Miklós István
HUN-REN Rényi Intézet

Hivatkozások

[1] I. Althöfer, and J. Bültermann. Superlinear period lengths in some subtraction games. Theoretical Computer Science, 148 (1995) No 1, 111–119, 1995.

[2] U. Larsson, I. Saha, A brief conversation about subtraction games, https://arxiv.org/abs/2405.20054. (2024)

[3] U. Larsson, I. Saha, M. Yokoo, Subtraction games in more than one dimension, https://arxiv.org/abs/2307.12458. (2024)

[4] I. Miklós, L. Post, Superpolynomial period lengths of the winning positions in the subtraction game. International Journal of Game Theory, 53(2024), 1275-1313.

A rovat ajánlott cikkei
A modern matematika nagy fejezetei nőttek ki a 100 éve meghalt Felix Klein gondolatai nyomán, beleértve Klein Erlangen-programját, valamint a Lie-csoportok és Lie-algebrák jelentős területeit. Míg sokáig úgy tűnhetett, hogy a szimmetriák diszkrét és folytonos csoportjainak vizsgálata messze esik egymástól, a későbbi kutatások határozottan közelebb hozták ezt a két területet.
Miközben a természetes számoktól eljut az algebrai számokig és mai alkalmazásukig, a szerző, Szalkai István rengeteg hivatkozással és lábjegyzettel indokolja, magyarázza mondanivalóját, amivel bevezeti az Olvasót az algebrai számok körébe.
2025. március 27-én Kalmár László Emléknapot tartottak Szegeden a jeles matematikus, az informatika hazai úttörője születésének napra pontosan 120. évfordulóján. A Magyar Tudományos Akadémia Szegedi Akadémiai Bizott­sá­gá­nak székházában elhangzott előadásokból Szabó Péter Gábor: Kalmár László, a matematikus című előadásának lejegyzett és szerkesztett változatát tesszük most közzé.
A 2025-ös Abel-díjat Kasivara Maszaki japán matematikus (Masaki Kashiwara, fotó: Thomas Brun) kapta az algebrai analízishez és a reprezentációelmélethez való alapvető hozzájárulásaiért, ezen belül a D-modulusok elméletének kidol­go­zá­sá­ért és a kristálygráfok felfedezésééert. Szabó Szilárd cikke rövid betekintést nyújt Kasivara matematikai munkásságába.
Kollár János 2025-ben elnyerte a Bolyai János Nemzetközi Díjat, erről az Érintő két hírében is olvashatnak: Kéri Gerzson: A Bolyai-díjakról és a 2025-ös díjazottakról és Az MTA 199. közgyűlésének díjazottjai című cikkekben. Kovács Sándor írása Kollár János matematikai munkásságának egyik kiemelkedő részét, a magasabb dimenziós moduluselméletben elért eredményeit ismerteti meg az olvasóval.
Hírlevél feliratkozás