Hva er doomsday-algoritmen?
6 min lesing
Doomsday-algoritmen er en metode for å regne ut ukedagen for hvilken som helst dato — fortid eller fremtid — helt i hodet. Gi noen en dato som 4. juli 1776 eller 1. januar 2000, og med litt øvelse kan du fortelle dem at det var en torsdag eller en lørdag på noen sekunder, uten kalender, telefon eller penn.
Det høres ut som et selskapstriks, og det er et godt et. Men det er også et genuint elegant stykke matematikk som avslører hvordan kalenderen faktisk fungerer under de rotete reglene vi alle vokste opp med.
Hvem fant den opp?
Algoritmen ble utviklet av den britiske matematikeren John Horton Conway i 1973. Conway er bedre kjent for å ha funnet opp «Game of Life», men han var også fascinert av rask hoderegning. Han designet doomsday-metoden spesifikt slik at regnestykkene forblir små og stegene er lette å huske — han skal ha øvd på den daglig, med datamaskinen innstilt på å spørre ham om en tilfeldig dato hver gang han logget på.
Den bygger på tidligere formler for ukedag (særlig arbeidet til Christian Zeller på 1800-tallet), men Conways innsikt var å gjøre det hele minneverdig i stedet for bare korrekt.
Den ene ideen den bygger på
Trikset hviler på én enkelt observasjon: innenfor et gitt år faller en overraskende mengde lette-å-huske datoer alle på samme ukedag. Conway kalte den delte dagen årets «doomsday».
For eksempel havner 4/4, 6/6, 8/8, 10/10 og 12/12 alltid på samme ukedag som hverandre i et hvilket som helst år. Det samme gjelder 9. mai, 11. juli, 5. september og 7. november. Hvis du vet hvilken dag doomsday faller på for et bestemt år, vet du umiddelbart ukedagen for alle disse datoene — og du kan telle noen dager frem eller tilbake for å nå en hvilken som helst annen dato i måneden.
Det gjør et umulig-utseende spørsmål («hvilken dag var 23. mars 1857?») om til tre små, vennlige spørsmål: hva er doomsday for det århundret, hva er doomsday for det året, og hvor langt er datoen din fra nærmeste doomsday i sin måned?
Hvorfor virker det?
Kalenderen gjentar seg i en 7-dagers syklus, så det eneste som betyr noe for ukedagen, er resten etter å ha delt på 7 — det matematikere kaller regning modulo 7. Hver del av algoritmen er egentlig bare bokføring av disse restene:
- Hvert århundre har en fast ankerdag fordi en 400-års syklus inneholder et helt antall uker, så mønsteret nullstilles hvert fjerde århundre.
- Å legge til ett år forskyver normalt ukedagen med én dag (365 = 52 uker + 1), og skuddår gir en ekstra forskyvning — noe som er akkurat det årsutregningen tar høyde for.
- De minneverdige doomsday-datoene er valgt slik at avstandene mellom dem er lette å håndtere, noe som holder det siste opptellingssteget lite.
Med andre ord er algoritmen ikke magi — det er kalenderens egen struktur, ompakket slik at et menneske kan kjøre den uten papir.
Er det fortsatt verdt å lære?
Enhver enhet i lomma di kan allerede fortelle deg ukedagen, så ingen trenger dette lenger. Men folk lærer det fortsatt av samme grunner som de lærer hoderegning eller pugger en kortstokk:
- Det er en kompakt, tilfredsstillende ferdighet du genuint kan mestre på en uke eller to.
- Det er utmerket mental trening — en liten, strukturert treningsøkt for arbeidsminnet og modulær regning.
- Det lærer deg hvordan kalenderen egentlig fungerer, noe som er mer interessant enn det har noen rett til å være.
- Det er noe som pålitelig imponerer folk.
Hvor du bør gå videre
Hvis du vil faktisk gjøre det i stedet for bare å lese om det, går den neste guiden gjennom hele metoden ett steg av gangen: Hvordan regne ut ukedagen for hvilken som helst dato i hodet. Du kan også hoppe rett inn i den interaktive algoritmegjennomgangen eller begynne å øve på de enkelte stegene som små spill.