Il sistema di numeri ordinali è un sistema con numeri infiniti. Molti numeri infiniti. Tanti numeri infiniti che letteralmente non ha un infinito per rappresentare la propria infinità. L'immagine in alto dà una piccola idea di come funzionano. Un numero ordinale ( costruzione di Von Neumann ) è un insieme di ordinali precedenti. Ad esempio, 0 è l'insieme vuoto, 1 è l'insieme {0}, 2 è l'insieme {0, 1} e così via. Quindi arriviamo a ω, che è {0, 1, 2, 3 ...}. ω + 1 è {0, 1, 2, 3 ... ω}, ω volte due è {0, 1, 2 ... ω, ω + 1, ω + 2 ...} e continui ad andare avanti come quella.
Il tuo programma produrrà una serie di ordinali, come {0, 1, 4}. Il tuo punteggio sarà quindi il meno ordinale più di tutto l'ordinale nel tuo set. Per {0, 1, 4} il punteggio sarebbe 5. Per {0, 1, 2 ...}, il punteggio sarebbe ω.
In che modo produci i tuoi ordinali che chiedi. Codice ovviamente Vale a dire, il tuo programma produrrà un elenco potenzialmente infinito di altri programmi, tra virgolette, uno su ogni riga (usa la stringa letterale "\ n" per rappresentare nuove righe). Un programma corrisponde al suo punteggio come indicato sopra. Ad esempio, se si esegue l'output
"A"
"B"
"C"
dove A, B e C sono risposte valide e hanno punteggi {0, 1, 4}, il punteggio del tuo programma sarebbe 5. Nota che A, B e C devono essere programmi completi, non frammenti.
Sulla base delle regole precedenti, un programma che non emette nulla ha un punteggio di 0 (il minimo ordinale maggiore di tutto {} è 0). Inoltre, ricorda che un insieme non può contenere se stesso, tramite l' assioma della fondazione . Vale a dire, ogni set (e quindi ordinale) ha un percorso fino a zero. Ciò significa che un full-quine non sarebbe valido in quanto non è un set.
Inoltre, nessun programma è autorizzato ad accedere a risorse esterne (il proprio file, Internet ecc ...). Inoltre, quando elenchi il tuo punteggio, metti la forma normale del cantor accanto a essa se non è già nella forma normale del cantor, se puoi (in caso contrario, qualcun altro può).
Dopo aver tenuto conto di tutto quanto sopra, la risposta effettiva che pubblichi deve essere inferiore a 1.000.000 di byte (senza contare i commenti). (Questo limite superiore probabilmente entrerà in gioco solo per il codice generato automaticamente). Inoltre, puoi aumentare il tuo punteggio per ogni byte che non usi (poiché abbiamo a che fare con gli infiniti, questo probabilmente verrà preso in considerazione solo quando gli ordinali sono molto vicini o uguali). Ancora una volta, questo paragrafo si applica solo alla risposta postata, non a quelle generate o generate da quelle generate, e così via.
Questo ha il tag quine, perché può essere utile generare almeno parte del codice proprio delle fonti, da usare per creare ordinali di grandi dimensioni. Tuttavia non è necessario (ad esempio, una presentazione con punteggio 5 probabilmente non avrebbe bisogno del proprio codice sorgente).
Per un esempio elaborato e annotato, vedere qui .