Che si possa usare la matematica per parlare di giochi è una cosa abbastanza scontata, ma usare i giochi per parlare di numeri è qualcosa che poteva fare solo quel geniaccio di Conway, l’inventore del Game of Life (che, a dispetto del nome, non è un gioco ma un automa cellulare).
Lo fa nel suo On Numbers and Games, pubblicato dall’Academic Press nel 1976 (seconda ed. 1977), dove generalizza e fonde insieme la costruzione dei numeri reali ideata da Dedekind (alternativa a quella basata sulle sequenze di Cauchy) e quella dei numeri ordinali introdotta da Cantor e poi perfezionata da Von Neumann (che, sia detto per inciso, ebbe anche una parte rilevante nella nascita della teoria dei giochi e degli automi cellulari), dando così una definizione generale del concetto di numero, la quale comprende sia i reali che gli ordinali (e dunque numeri infiniti; ma anche numeri infinitesimali, come nell’analisi non-standard di A. Robinson – che in realtà è la “vera” analisi, quella di Leibniz) ed identifica i numeri come casi particolari di oggetti ancora più generali: i giochi, appunto.
Il libro è diviso in due parti: la parte “zeroesima” tratta dei numeri, e la prima parte dei giochi; cercherò di riassumere soltanto i concetti-base di entrambe, con qualche esempio qua e là (tra parentesi i riferimenti all’edizione del 1977).
Numeri
La prima definizione è abbastanza semplice: se L e R sono insiemi di numeri e nessun membro di L è maggiore o uguale a qualche membro di R, allora {L|R} è un numero; tutti i numeri sono costruiti così (p. 4). Convenzione: se x={L|R}, scriviamo e
per indicare, rispetttivamente, i tipici membri di L e di R; quindi
. (Perdoniamo WordPress per il pessimo allineameno LaTeX…)
Le definizioni seguenti sono un po’ più complicate e quindi vanno prese, per il momento, così come sono (in compenso, ometto quella della moltiplicazione):
se e solo se non esiste un
né un
sse
e
sse
e
Queste definizioni sono tutte spiegabili tenendo presente l’”interpretazione intesa” della notazione di Conway, in base alla quale ogni numero x si trova tra e
, cioè
. Una cosa interessante di queste definizioni è che sono induttive ma non richiedono alcuna base, dato che alla fine (o meglio, all’inizio) tutto si riduce a questioni su membri dell’insieme vuoto. Un’altra cosa interessante è che l’uguaglianza è una relazione definita (pp. 5-6).
Ma è giunto il momento di vedere alcuni esempi. Se ogni numero ha forma {L|R}, dove L e R sono insiemi di numeri, come si iniziano a costruire numeri… senza avere già a disposizione dei numeri? Facile: anche se non abbiamo numeri con cui partire, abbiamo pur sempre un insieme di numeri: l’insieme vuoto ∅. Dunque il primo numero sarà {|} (cioè {L|R} con L=R=∅), e ovviamente questo è il numero 0.
Per poter dire che 0 è un numero, però, bisogna verificare che rispetti la condizione che nessun membro di L sia maggiore o uguale a qualche membro di R; e le cose stanno proprio così, perché ∅ non ha membri, dunque in particolare non c’è un membro di ∅ che sia maggiore o uguale a qualche membro di ∅!
Inoltre perché, di nuovo, non esistono
e
tali che
o
(dal momento che
e
non esistono, punto). Similmente si dimostra che
(p. 7).
Altri numeri: 1 e -1 sono rispettivamente {0|} e {|0} (cfr. la definizione di -x sopra). D’altra parte, {0|0} non è un numero, perché ; ma è pur sempre un gioco (vedi oltre)! Anche in questo caso tutto funziona come dovrebbe: per esempio,
perché non c’è un
né un
; mentre
perché c’è un
, cioè 0.
Ora, in generale si può immaginare che i numeri vengano costruiti in vari giorni, in modo tale che i numeri costruiti in un certo giorno abbiano nei rispettivi insiemi L e R numeri costruiti in giorni precedenti. Dunque il giorno 0 viene costruito il numero 0; il primo giorno vengono costruiti i numeri 1 e -1; il secondo giorno vengono costruiti i numeri 2, -2, 1/2 e -1/2 (infatti 2={1|}, -2={|-1}, 1/2={0|1}, -1/2={-1|0}); e così via (da notare che i numeri si possono scrivere in diversi modi; per esempio, si può verificare che è anche 2={0,1|}).
Prima di passare a numeri più interessanti, facciamo qualche somma: 1+0=0+1=1, perché (dato che
non esistono). E, incredibile ma vero,
!
Ma i giorni a disposizione sono veramente tanti, cosicché il giorno “nascono” il più piccolo ordinale infinito, cioè appunto
, e l’infinitesimale
; inoltre nascono anche parecchi numeri reali, come
,
e
(cfr. Fig. 0 a p. 11).
Basta così: per quanto i numeri siano belli, è ora di passare a qualcosa di più divertente.
Giochi
Ho già accennato al fatto che Conway costruisce i numeri come un caso particolare di giochi; dunque nella definizione dei secondi mancherà qualcosa rispetto a quella dei primi: si tratta della clausola che gli oggetti in L non debbano essere maggiori o uguali di quelli in R (i giochi, infatti, al contrario dei numeri, non sono linearmente ordinati).
La definizione, quindi, suona così: se L e R sono insiemi di giochi, allora {L|R} è un gioco. Prima di spiegare come va interpretata questa definizione, occorre fare una premessa: gli unici giochi considerati sono quelli per 2 giocatori, in cui non si può passare, senza patte né stalli, e che finiscono quando un giocatore al suo turno non può più muovere, cosicché la vittoria spetta al suo avversario (un gioco di questo tipo, ad esempio, è Sprouts). I due giocatori si chiamano Left e Right (o Black e White), e apprendiamo con lietezza che Conway simpatizza con Left.
Ora, ogni gioco ha degli stati, o posizioni; una posizione P è identificata dalle mosse che Left può fare partendo dalla posizione P e da quelle che può fare Right partendo dalla stessa posizione, in base alle regole del gioco; tali mosse sono rappresentate come le nuove posizioni a cui portano, le quali si chiamano rispettivamente le opzioni sinistre di P e le opzioni destre di P. Come nel caso dei numeri, le “tipiche” opzioni sinistra e destra di P sono chiamate, rispettivamente, e
. Quindi per una data posizione P possiamo scrivere
.
Ogni gioco G ha una posizione di partenza P; ma si può ottenere un gioco più breve G’ partendo invece da una qualsiasi altra posizione P’ di G: in tal caso identificheremo il gioco G’ con la posizione P’; allo stesso modo, identificheremo il gioco G con la posizione P: in generale, ogni gioco è identificabile con la propria posizione di partenza.
Dunque ogni gioco G può essere rappresentato da un albero (orientato), in cui ogni nodo è una posizione di G (la radice è la posizione di partenza); le frecce che partono da ciascun nodo P rappresentano le mosse legali per Left e per Right a partire da P, e i nodi a cui portano (i nodi “figli” di P) sono quindi le varie posizioni e
. Sottintendendo che ciascun albero sia disegnato dal basso verso l’alto, al posto delle frecce si possono usare semplici spigoli, orientati verso sinistra o verso destra a seconda che rappresentino opzioni sinistre o destre (pp. 71-72).
Ed ecco i primi, elementari esempi (“rubo” la Fig. 4 a p. 72):
Anziché commentarli, lascio la parola all’autore, traducendone più o meno liberamente la spassosa spiegazione:
Il gioco più semplice di tutti è l’Endgame,
. Ti offro cortesemente la prima mossa in questo gioco, e ti invito a farla. Tu perdi, ovviamente, perché
è definito come il gioco in cui non è mai legale fare una mossa.
Nel gioco, c’è una mossa legale per Left, la quale conclude il gioco, ma non c’è mai una mossa legale per Right. Se io gioco come Left, e tu come Right, e hai di nuovo la prima mossa (mi sembra giusto, visto che hai perso la partita precedente), perderai ancora, essendo incapacitato a muovere perfino dalla posizione iniaziale. Per dimostrare la mia abilità, ora inizierò dalla stessa posizione, farò la mia mossa legale verso
, e ti inviterò a fare la tua.
Naturalmente adesso starai iniziando a sospettare che Left vince sempre, quindi nel nostro prossimo gioco,, tu puoi giocare come Left e io come Right! Nell’ultimo dei nostri esempi,
, puoi giocare scegliendo il ruolo che desideri, purché per questo privilegio mi permetti di giocare per primo.
Riassumendo, abbiamo i seguenti esiti:
- Nel gioco
c’è una strategia vincente per il giocatore che muove per secondo
- Nel gioco
c’è una strategia vincente per Left (chiunque inizi)
- Nel gioco
c’è una strategia vincente per Right (chiunque inizi)
- Nel gioco
c’è una stretegia vincente per il giocatore che muove per primo
In generale, per ogni gioco G si può verificare una di queste quattro situazioni (ce lo assicura il Teorema 50 a p. 73):
(G è positivo): esiste una strategia vincente per Left
(G è negativo): esiste una strategia vincente per Right
(G è zero): esiste una strategia vincente per il secondo giocatore
(G è fuzzy): esiste una strategia vincente per il primo giocatore
Anche per i giochi si possono definire alcune operazioni. Dato un gioco G, il suo negativo -G è definito dall’equazione : Left e Right si scambiano i ruoli. È anche possibile giocare più giochi contemporaneamente: per giocare la somma (disgiunta)
, ogni giocatore al proprio turno seleziona uno dei due componenti
e
(possiamo immaginarli come due giochi separati, per es. giocati simultaneamente su due scacchiere diverse) e fa una mossa che per lui sia legale in quel componente; un giocatore perde nel gioco
quando non può più muovere in nessuno dei due componenti (pp. 73-74).
Finora ho mostrato solo esempi astratti di giochi; vediamo allora almeno un esempio concreto: Domineering. Si tratta di un gioco da giocare con le tessere del Domino, dove Left e Right si alternano piazzando una tessera a turno su una scacchiera rettangolare, il primo verticalmente e il secondo orizzontalmente (senza sovrapporre le tessere); come sempre, l’ultimo giocatore che riesce a muovere è il vincitore.
Man mano che il gioco procede la scacchiera viene suddivisa in varie porzioni libere non connesse tra loro; allora il gioco sarà di fatto la somma disgiunta di vari sotto-giochi, uno per ogni porzione libera (pp.74-75).
La porzione più piccola possibile è costituita da una sola casella:
Giocando in questa porzione, naturalmente, si gioca al gioco , in cui nessuno dei due giocatori può fare una mossa (ovviamente, dunque, i giocatori ignoreranno tutte le porzioni siffatte).
In una porzione come questa:
c’è solamente una mossa possibile per Left (che consiste nel riempirla tutta, ottenendo così una porzione “nulla”, che è un altro esempio del gioco ), ma nessuna mossa per Right. Tale porzone corrisponde quindi al gioco
, ed infatti il valore (per Left) del gioco giocabile su di essa è 1, perché Left ha esattamente una mossa di vantaggio su Right.
D’altra parte, in questa porzione di scacchiera:
ci sono due mosse a disposizione per Right (e nessuna per Left): giocare una tessera al centro, ottenendo due porzioni sconnesse costituite ognuna da una singola casella (e quindi il gioco ), oppure a una delle due estremità, ottenendo una singola porzione costituita da due caselle adiacenti (e quindi il gioco
, dove Right ha ancora una mossa a disposizione); il valore del gioco giocabile in questa porzione, dunque, è -2 (ricordiamo che uno dei modi per scrivere
è
; quindi, similmente,
): Right sta “due mosse avanti” rispetto a Left, che quindi sta “due mosse indietro”.
La situazione è un po’ più complessa in questa porzione:
Qui possono iniziare sia Left che Right (cioè, diversamente dagli esempi precedenti, ci sono mosse “non vuote” legali per entrambi). Left ha due mosse (ovviamente, nella parte verticale della “L”) : occupare le prime due caselle dall’alto oppure occupare le prime due caselle dal basso. Nel primo caso, lascia vuote due caselle adiacenti in orizzontale (il gioco ), quindi una mossa per Right; la seconda opzione è invece più vantaggiosa, perché lascia due caselle vuote sconnesse (quella più in alto di tutte e quella in basso a destra), cioè il gioco
, dove Right non ha nessuna mossa legale da fare. D’altro canto, Right ha soltanto una mossa a disposizione: piazzare una tessera sulle due caselle in basso, lasciando così il gioco
a Left (le due caselle adiacenti in alto a sinistra).
Ricapitolando, Left può muovere lasciando a Right il gioco o il gioco
; nel primo caso vincerebbe, nel secondo perderebbe. Right, invece, può solo muovere lasciando a Left il gioco
e quindi la vittoria assicurata. Dunque la porzione “a L” ha valore
; infatti, considerando solo la strategia migliore per Left (passando ai numeri, si può scrivere anche
, perché basta sapere che 1/2 sta tra 0 e 1, quindi la presenza di -1 è irrilevante; tornando ai giochi: perché mai considerare il valore -1 quando c’è un gioco di valore maggiore, cioè 0?), gli esiti possibili sono
se inizia Left e
se inizia Right: in ogni caso una vittoria per Left, ma con un vantaggio di 0 mosse nel primo caso e di 1 nel secondo, quindi con valore medio pari a 1/2 (un esempio concreto di una porzione di gioco con valore 1/2 – seppure con un modo abbastanza complicato di calcolarlo – è il “ko da mezzo punto” nel gioco del Go).
Da notare, infine, che non tutti i “valori” dei giochi sono numerici come quelli visti in questi esempi (infatti, non tutti i giochi sono numeri). Per esempio, il valore di una configurazione “a L corta” (cioè come quella dell’ultimo esempio, ma senza la casella superiore) è (provare per credere!), mentre il valore di un gioco su una scacchiera 2×2 è
: entrambi i giochi sono fuzzy.
Concluderò raccontandovi del Teorema 51 (pp. 75-76), il cui enunciato è molto semplice: per ogni gioco G,
Banale, no? Ma è un po’ meno banale capire cosa vuol dire questa profonda verità ludoteoretica: si tratta della cosiddetta copycat strategy, messa in pratica (così si narra, o almeno così narra Conway) da una bambina che affrontò due campioni di scacchi contemporaneamente, impegnandosi a vincere con almeno uno dei due; e in effetti così fu, perché la bambina giocò come nero contro uno (il giocatore iniziale) e come bianco contro l’altro, copiando le mosse dell’uno nella partita con l’altro (quindi sostanzialmente facendo da tramite tra i due giocatori, che giocavano di fatto l’uno contro l’altro). La vittoria del “giocatore copione” in una situazione di questo tipo è sempre certa, escludendo la possibilità di stallo e dunque pareggio (quindi con gli Scacchi Cinesi, dove lo stallo non implica il pareggio – come negli Scacchi – ma la sconfitta del giocatore che non può più muovere, il trucco funzionerebbe sempre e comunque).
Il gioco G-G menzionato dal teorema non è altro che G+(-G), cioè due copie del gioco G (quale che esso sia) giocate simultaneamente su due scacchiere identiche, in cui una mossa legale per Left in G diventa legale per Right in -G (cfr. definizione di -G), perché nei due giochi i giocatori si invertono i ruoli. Il gioco G-G sarà sempre vinto dal secondo giocatore (quindi ha valore 0), come nell’esempio della bambina (che infatti muove per seconda), se questi adotta la copycat strategy! La differenza rispetto al simpatico aneddoto scacchistico è che qui i due campioni sono la stessa persona: quel che avviene è che il secondo giocatore “ruba” la strategia al primo, applicandola contro di lui.
Questo concetto, in modo simile ma opposto, viene sfruttato nell’argomento della strategia rubata (dovuto a John Nash), grazie a cui si dimostra che in certi giochi (come l’Hex) esiste una strategia vincente per il primo giocatore: se così non fosse, esisterebbe una strategia vincente per il secondo (poiché non si può pattare); ma allora il primo può “sottrargliela” copiandola, dato che la mossa iniziale non può costituire uno svantaggio (è una pedina in più), e avere così una strategia vincente: contraddizione (piccola nota di logica: quest’argomento è un caso di consequentia mirabilis).
P.s.: apprendo or ora dal Web che i numeri costruiti da Conway si chiamano numeri surreali, e che sono stati chiamati così da D. Knuth (inventore del TeX, il motore tipografico alla base del LaTeX) in un libro dal titolo Surreal Numbers: How two ex-students turned on to pure mathematics and found total happiness.
P.p.s.: detto questo, per quanto sia interessante Domineering, credo proprio che Dominion rimanga decisamente più entusiasmante… ; )
(post clonato dal mio mini-blog ludico)




