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, , és pozitív egész számok véges halmaza,
. Elhelyezünk
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
halmaz valamely elemével, de ezen felül semmi további kikötés nincsen, az
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
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
és
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 és
. 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 kavicsot vesz el, a második játékos
kavicsot vesz el. Ez mindig lehetséges, hiszen az
halmaz minden lehetséges
elemére igaz az, hogy az
halmaz az
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 , de
? 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üggvényt a következőképpen. Legyen
, 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
halmaz adja meg, és legyen
, ha a második játékosnak van nyerő stratégiája. Ekkor teljesül a

egyenlőség. Valóban, 1 lesz, amennyiben
, azaz van olyan
, hogy
, 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
, akkor
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 halmazra az
függvény időben periodikussá válik, azaz létezik olyan
és
, hogy minden
-ra
.
Bizonyítás. Legyen egy, a
hosszúságú 0-1 vektorokat
hosszúságú 0-1 vektorokba képező függvény a következő hozzárendelési szabállyal. Ha
, akkor

Vegyük észre a következőt. Ha , akkor
, és rekurzívan minden n-re
. Mivel
egy véges halmazból ugyanabba a véges halmazba képező függvény, skatulya elv alapján lesznek olyan
számok, hogy
. De ekkor
, stb. azaz a
vektorok
periódussal ismétlődnek. Így az
értékek is.
Mivel a lehetséges hosszúságú 0-1 vektorok száma
, ez egy felső határ a periódushosszára. Nyitott kérdés, hogy létezik-e (
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ú
függvényében. Pl. belátható, hogy ha
, akkor a periódushossz
ha
páratlan többszöröse
-nek és minden más esetben
[1]. A nyerő pozíciók periódushosszai csak a kételemű
halmazok esetén ismertek teljes egészében.
Háromelemű halmazok esetében, pl. ha ,
és
, akkor a periódushossz
[1]. Nem ismert négyzetesnél hosszabb periódushossz, és a legtöbb esetben a periódushossz vagy
vagy
vagy
, 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
értékre ábrázoljuk minden lehetséges
-ra, hogy az
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
-tól. Az 1. ábrán
-ra és
-re mutatjuk, hogy melyek azon
párok, amelyekre az
függvény periódusa
osztója vagy
osztója vagy
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. Az függvény periodikussága, amikor
. A bal oldali ábrán
, a jobb oldali ábrán
. A színkódok: piros:
periódusa osztója
-nek, zöld:
periódusa osztója
-nak, kék:
periódusa osztója
-nak, fekete: a periódus valami más, más szín: a periódus osztója az
,
és
számok közül többnek is. Az ábrákon az
,
eset a bal fölső sarokban van,
értékei az
tengelyen nőnek,
értékei az
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 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
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
-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üggvényt a következőképpen.
, ha
és
kaviccsal kezdve a kezdő játékosnak van nyerő stratégiája, és
, ha a második játékosnak van nyerő stratégiája. Fennáll a

egyenlőség, amelynek segítségével könnyen ki tudjuk számolni az é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üggvény kaotikus viselkedést mutathat. Kaotikus viselkedést gyakran figyelhetünk meg olyan
halmazoknál, amelyek tartalmaznak egy olyan
vektort, amelyre minden
,
-ra
[3]. Ezek közül most az
esetet mutatjuk be. Ekkor az átló körüli, azaz
tartományban teljes káoszt mutat az
függvény (ld. 2. ábra), míg az átló alatt függőleges, az átló fölött vízszintes irányban periodikusságat mutat
, de a másik irányban kaotikus viselkedést mutat (ld. 3. ábra). Ide kattintva erre a játékra
első 16000-szer 16000 értékeit mutatjuk be. További két
halmazra ugyanennyi értéket mutatunk be, itt az
, itt pedig az
halmazhoz tartozó
függvény értékeit. A
a bal felső sarokban van. A fekete szín jelöli az
értéket, a fehér szín pedig a
értéket.
2. ábra. Az függvény egy részlete
környékén,
. A fekete szín jelenti az
értékeket, míg a fehér az
értékeket.
3. ábra. Az függvény egy részlete
környékén,
. A fekete szín jelenti az
értékeket, míg a fehér az
értékeket.
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.