La stessa formula compare su un francobollo svizzero, emesso il 6 marzo 2007 per celebrare il tricentenario della nascita di Leonhard Eulero, e su un francobollo della Germania Est, emesso il 6 settembre 1983 per commemorare il bicentenario della sua morte.
La formula di Eulero afferma che e ‒ k + f = 2 (in francese si scrive piuttosto s ‒ a + f = 2), ossia che, nello spazio, il numero s dei vertici meno il numero a degli spigoli più il numero f delle facce di un poliedro convesso è invariabilmente uguale a 2.
Non tutto è in dimensione 3 ---------------------------------
La formula di Eulero è generalizzabile? Osserviamo le dimensioni inferiori a 3, usando la notazione *ai per indicare il numero di elementi di dimensione i presenti nell’oggetto di dimensione n. Per il punto, a*0 = 1: abbiamo semplicemente un punto.
Per il segmento, a0 ‒ a1 = 1: abbiamo due punti e un segmento (e 2 – 1 = 1).
Per un poligono, a0 ‒ a1 + a2 = 1: abbiamo n punti, n segmenti e una superficie (e n ‒ n + 1 = 1).
Per un poliedro, a0 ‒ a1 + a2 ‒ a3 = 1: ritroviamo la formula di Eulero per un solido (con a0 = s, a1 = a, a2 = f e a3 = 1).
Il matematico francese Henri Poincaré (1854‒1912) dimostrò che, per un politopo convesso di dimensione n qualunque, si ha: a0 ‒ a1 + a2 ‒ a3 +… + (‒1)*nan = 1, che si scrive più concisamente ∑i=0n(−1)iai=1,\sum^n_{i=0} (-1)^ia_i =1, con in realtà an* = 1 (poiché il politopo è supposto convesso, è anche connesso).
La convessità (proprietà geometrica per cui, presi due punti del politopo, il segmento che li unisce è anch’esso interamente contenuto nel politopo) è una condizione sufficiente, ma non necessaria, affinché la formula di Eulero si applichi al politopo. Tuttavia, essa non si applica più a forme più sofisticate, per esempio «con buchi».

Il tesseratto.

Per un «volume» in dimensione 4 (o policoro), come rendere concreta l’espressione a0 ‒ a1 + a2 ‒ a3 + a4 = 1?
L’ipercubo in quattro dimensioni, chiamato tesseratto, può essere rappresentato su un piano (in due dimensioni) mediante una vista prospettica tridimensionale, come mostra lo schema. Questa rappresentazione (ne esistono altre) facilita il conteggio dei cubi tridimensionali presenti nel tesseratto.
L’origine O del sistema di riferimento ortonormale (O, x, y, z, w) nel quale è rappresentato il tesseratto si trova al centro della figura; l’asse (Ow) non è visualizzabile. La coordinata w è proporzionale al lato del cubo nella figura; così il «piccolo» cubo della figura è più vicino a O di quello «grande».
Un normale quadrato bidimensionale può essere riprodotto lungo una terza dimensione per formare un cubo: i due quadrati sono collegati da quattro spigoli e quattro facce supplementari. Analogamente, un cubo può essere riprodotto lungo la quarta dimensione per formare un tesseratto: i due cubi sono collegati da otto spigoli, dodici facce e sei cubi supplementari.
Tra gli otto cubi troviamo i due cubi ottenuti dalla duplicazione, entrambi descritti nel sistema di riferimento (O, x, y, z), posti rispettivamente alle coordinate w1 e w2. Vi sono anche i sei interstizi compresi tra le facce di questi due cubi: due sono descritti in (O, w, x, y) alle due coordinate z1 e z2; altri due sono descritti allo stesso modo nel sistema di riferimento (O, w, x, z) e gli ultimi due nel sistema di riferimento ( O , w , y , z ) .
Breve viaggio nella 4D ---------------------------
Costruiamo il tesseratto in due passaggi. Al cubo (per il quale a0 ‒ a1 + a2 ‒ a3 = 8 – 12 + 6 – 1 = 1), aggiungiamo un punto nella quarta dimensione per formare un’iperpiramide (o un ipercono).
L’espressione diventa allora:
(a0 + 1) ‒ (a1 + 8) + (a2 + 12) ‒ (a3 + 6) + 1 = (8 + 1) – (12 + 8) + (6 + 12) – (1 + 6) + 1 = 1.
A questo punto (a0 ‒ a1 + a2 ‒ a3 + a4 = 9 – 20 + 18 – 7 + 1 = 1), se il punto torna a essere un cubo «parallelo» al primo (un ipercilindro), otteniamo:
(a0 – 1 + 8) ‒ (a1 + 12) + (a2 + 6) ‒ (a3 + 1) + a4 = (9 – 1 + 8) – (20 + 12) + (18 + 6) – (7 + 1) + 1 = 1.
Procediamo allo stesso modo partendo da un tetraedro (per il quale a0 ‒ a1 + a2 ‒ a3 = 4 – 6 + 4 – 1 = 1), aggiungendo un punto nella quarta dimensione per formare un ipercono (chiamato pentacoro). Si ottiene:
(a0 + 1) ‒ (a1 + 4) + (a2 + 6) ‒ (a3 + 4) + 1 = (4 + 1) – (6 + 4) + (4 + 6) – (1 + 4) + 1 = 1.
####

Il pentacoro.

A questo punto (a0 ‒ a1 + a2 ‒ a3 + a4 = 5 – 10 + 10 – 5 + 1 = 1), se il punto diventa un tetraedro «parallelo» al primo (un ipercilindro), si calcola che:
(a0 – 1 + 4) ‒ (a1 + 6) + (a2 + 4) ‒ (a3 + 1) + a4 = (5 – 1 + 4) – (10 + 6) + (10 + 4) – (5 + 1) + 1 = 1.
In dimensione 4, un simplesso è un ipervolume i cui vertici si trovano su ciascuno degli assi del sistema di riferimento ortonormale (O, x, y, z, w), oltre all’origine O. Analogamente, in uno spazio di dimensione n si definisce la nozione di simplesso: si tratta di un ipervolume i cui vertici si trovano su ciascuno degli assi del sistema di riferimento ortonormale (O, x1, x2, x3… *xn), oltre all’origine O. Un simplesso possiede dunque n* + 1 vertici.
In dimensione 1, il simplesso è un segmento; si ha: 2 – 1 = 1.
In dimensione 2, il simplesso è un triangolo; si ha: 3 – 3 + 1 = 1.
In dimensione 3, il simplesso è un tetraedro; si ha: 4 – 6 + 4 – 1 = 1.
In dimensione 4, il simplesso è un pentacoro; si ha: 5 – 10 + 10 – 5 + 1 = 1.
Per dimensioni superiori, è facile convincersi che ai=Cn+1i+1.a_i= \text{C}^{i+1}_{n+1}. dove tale simbolo indica un coefficiente binomiale, ossia il numero di combinazioni di p oggetti scelti fra n.
Infatti, ci sono n + 1 vertici e ogni «elemento» di dimensione i del simplesso si ottiene scegliendo i + 1 vertici fra tutti i vertici.
Da ciò si ricava la seguente relazione fondamentale:
∑i=0n(−1)i Cn+1i+1=1.\sum^n_{i=0} (-1)^i \,\text{C}^{i+1}_{n+1} =1.
Infatti, si ha
(1−1)n+1=0=1−∑i=0n(−1)i Cn+1i+1.(1-1)^{n+1}= 0 =1 - \sum^n_{i=0} (-1)^i \,\text{C}^{i+1}_{n+1}.
Si comincia con un simplesso ---------------------------------
La formula di Eulero vale dunque per ogni simplesso. Per generalizzarla a qualsiasi politopo convesso di dimensione n, il simplesso di dimensione n subisce successivamente diverse modifiche, come l’aggiunta o l’«appiattimento» di un vertice o di uno spigolo. Senza pretendere di esaurire tutte le possibilità, qui di seguito sono presentate sette modifiche (per rendere più agevole la comprensione dei fenomeni geometrici in gioco, gli schemi rappresentano politopi tridimensionali).
Duplicazione di un vertice da cui partono a spigoli: a0 aumenta di 1, a1 aumenta di 1 + 2, a2 aumenta di 2 (la ripartizione degli a spigoli fra i due vertici non ha alcuna influenza).
Bilancio: 1 – 3 + 2 = 0; la relazione resta quindi invariata dopo questa operazione.
Vertice ricavato da una faccia con s vertici: a0 aumenta di 1, a1 aumenta di s, a2 aumenta di s ‒ 1 (la faccia da cui si ricava il punto scompare).
Bilancio: 1 – s + (s – 1) = 0; la relazione resta quindi invariata.
*Vertice estratto da uno spigolo che separa due facce con s1 e s2 vertici, restando nel piano di una delle due facce. Il numero intero a*0 aumenta di 1, a1 di s2 – 1 (uno spigolo scompare nell’operazione), a2 di (s2 – 1) – 1 (la faccia ingrandita esisteva già; l’altra faccia originaria scompare).
Bilancio: 1 – (s2 – 1) + (s2 – 2) = 0.
*Vertice ricavato da uno spigolo che separa due facce con s1 e s2 vertici: a*0 aumenta di 1, a1 di s1 + s2 – 2 – 1 (due vertici sono comuni alle due facce; uno spigolo scompare), a2 di s1 + s2 – 2 – 2 (due vertici sono comuni alle due facce; le due facce originarie scompaiono).
Bilancio: 1 – (s1 + s2 – 3) + (s1 + s2 – 4) = 0.
Si ricava uno spigolo: i suoi estremi provengono da due spigoli appartenenti alla stessa faccia. a0 aumenta di 2, a1 aumenta di 1 + 2 (gli spigoli originari vengono spezzati) e a2 aumenta di 2 – 1 (una faccia scompare).
Bilancio: 2 – (1 + 2) + (2 – 1) = 0.
Un vertice (da cui partono a spigoli) viene appiattito: a0 aumenta di a – 1 (un vertice scompare), a1 aumenta di a, a2 aumenta di 1.
Bilancio: a – 1 – a + 1 = 0.
*Uno spigolo, i cui estremi sono vertici da cui partono a1 e a2 spigoli, viene appiattito: a*0 aumenta di a1 + a2 – 2 – 2 (due vertici scompaiono), a1 di a1 + a2 – 2 – 1 (due spigoli sono comuni; uno spigolo scompare) e a2 di 1.
Bilancio: (a1 + a2 – 4) – (a1 + a2 – 3) + 1 = 0.

Qui, a1 = a2 = 3.

Ogni politopo ha il suo duale ----------------------------
È possibile scambiare i numeri di vertici e di facce (la figura mostra l’esempio del cubo). I punti centrali di ogni faccia del cubo (poliedro primal) sono i vertici del poliedro duale. Ciascuno di questi vertici è l’intersezione di tante facce quanti sono i vertici della faccia originaria del cubo. Il duale di un cubo è un ottaedro, e viceversa. Il cubo ha infatti otto vertici, dodici spigoli e sei facce, mentre l’ottaedro possiede sei vertici, dodici spigoli e otto facce.

Poliedro primale e poliedro duale

con l’esempio cubo‒ottaedro.
Il duale di un tetraedro (che possiede quattro vertici, sei spigoli e quattro facce) è un tetraedro. Il duale di un icosaedro (dodici vertici, trenta spigoli e venti facce) è un dodecaedro (venti vertici, trenta spigoli e dodici facce), e viceversa.
A partire dalla dimensione 4, il passaggio al politopo duale si presenta come un’inversione dell’ordine dei primi n – 1 coefficienti *ai. Così, la n-upla (a*0, a1… *ak … an*‒2, *an*‒1) diventa (*an*‒1, *an*‒2… *an*‒*k*‒1 … a1, a0). Il politopo duale del tesseratto (che possiede sedici vertici, trentadue spigoli, ventiquattro facce e otto celle) è l’esadecacoro o 16-celle (politopo costituito da otto vertici, ventiquattro spigoli, trentadue facce e sedici celle). La formula di Eulero resta valida per questi due oggetti geometrici.

Rappresentazione di un esadecacoro.

L’icositetracoro (con i suoi ventiquattro vertici, novantasei spigoli, novantasei facce e ventiquattro celle) è duale di sé stesso. L’ecatonicosacoro (600, 1 200, 720, 120) e l’esacosicoro (120, 720, 1 200, 600) sono duali l’uno dell’altro.
Applicazione alla programmazione lineare --------------------------------------------
La nozione di dualità ricorre nella tecnica di risoluzione dei problemi chiamata programmazione lineare. Nota anche con il nome di algoritmo del simplesso, fu introdotta a partire dal 1947 dal matematico statunitense George Bernard Dantzig (1914‒2005). Il problema è posto sotto forma di una successione di disequazioni che esprimono vincoli (valori massimi o minimi imposti), ciascuna delle quali collega linearmente le variabili del problema (la parola «simplesso» acquista tutto il suo significato quando si aggiungono variabili di scarto per trasformare le disequazioni in equazioni, ossia passando dalla forma canonica alla forma standard). I vincoli rappresentano iperpiani del politopo i cui vertici corrispondono alle variabili del problema. Una combinazione lineare delle variabili deve essere massimizzata (o minimizzata): è la funzione di costo, che corrisponde a un iperpiano indipendente dal politopo. La soluzione si trova dunque su un vertice del politopo (dove la funzione di costo raggiunge il massimo!). L’algoritmo percorre allora gli spigoli del politopo in un ordine opportuno per raggiungere «la» soluzione il più rapidamente possibile. È il problema primale.
Il problema ottenuto trasformando le variabili del problema primale in vincoli e viceversa (quindi i vertici in iperpiani e viceversa) si chiama problema duale e la sua funzione di costo fornisce lo stesso valore ottimale! Il risolutore (algoritmo che risolve questo tipo di problema dichiarativo) può, quando lo ritiene opportuno, passare dal problema primale al problema duale, e viceversa.
Una volta sostituite le disequazioni con equazioni (forma standard), i problemi primale e duale hanno effettivamente lo stesso numero di variabili. Questo numero (la dimensione del simplesso) è uguale al numero di vincoli, dopo aver tenuto conto dei vincoli sulle variabili (per esempio la positività). In pratica, il numero di variabili per questo tipo di problemi è molto… variabile: va da qualche decina a qualche migliaio, se non addirittura molto di più per alcune applicazioni.