Julekalenderanbefaling

Jeg er lidt sent ude, men det bliver jo jul alligevel.

Der kommer ikke julekalender her på bloggen. Men der er heldigvis andre, der tror, de kan holde dampen oppe og poste 24 indlæg med matematik. Så her skyder vi genvej og henviser til andre.

Først på tysk Mathe im Advent
Man skal vistnok tilmelde sig.
The Aperiodical har selvfølgelig en julekalender. Der er mange fine matematikhistorier og opgaver. Og naturligvis Møbiusbånd.

Matthew Scroggs, endnu en matematikformidler i Storbritannien, har opgaver og hovedbrud.

Plus Magazine har en. Med Podcasts.

Transum, som jeg ikke kendte i forvejen har også en – med opgaver.

Og så noget matlabkode forklædt som juletræ:

Koden finder I her.

I kan vælge forskellige parametre. Hvor mange kugler skal der på? Hvor skinnende skal kuglerne være… Uhyre nyttigt 🙂

Scutoiden- en ny byggeblok i biologi

En artikel i Nature Communications om et “nyt matematisk objekt” har givet genlyd. Scutoiden hedder den lille ny. Den kan ses på figur d, hvor to scutoider passer sammen (den grønne og den gule)

Fig. 1

Illustration fra Nature Communications.

Scutoider er (op)fundet af en gruppe forskere – biologer, dataloger, matematikere, som ville forstå, hvordan visse typer væv, epithelvæv, er opbygget. Den slags væv er lagdelt – eller pakket mellem nogle lag. Ifølge artiklen i Nature, er der epithel-celler, som forbinder celler i to (flade) lag. Det har man bl.a. set i bananfluer – drosophila.

File:Epithelium TCJ.pngBillede fra Wikipedia – cell junctions.

Hvis lagene ikke krummer, er der allerede en fin model, hvor de to lag forbindes med prismer og keglestubbe (a og b på første figur – frustrum er keglestub).

Men hvad nu, hvis lagene krummer? Som eksempelvis når væv er afgrænset omkring en blodåre, tarmene eller noget i den retning?

I hvert afgrænsende lag danner cellegrænserne Voronoiceller:

Billedresultat for cells form voronoi De røde prikker er centre. Et punkt i en “celle” ligger tættere på det røde punkt i cellen end på noget andet rødt punkt.

Sådan er det altid – uanset, om lagene krummer eller ej. Nu skal to sådanne lag forbindes. I modellen skal der laves en forbindelse fra hver Voronoicelle i det ene lag til hver Voronoicelle i det andet, som man ser i a) og b) i første figur. Når lagene er plane, har man hidtil kunnet gøre det med keglestubbe og prismer – fordi man i det tilfælde har lige mange kanter langs matchende Voronoiceller i de to lag.

Forestiller vi os nu, at de to lag er cylindriske med forskellig radius som i c) og desuden for at gøre det simplere, at cellekernerne ligger “samme sted” bortset fra radiuskoordinaten – mere præcist: Punkter i rummet kan beskrives med en radius, vinkel og en højde. Figuren nedenfor viser radius, vinkel og højde (\rho,\varphi, z). Cellekernerne på de to forskellige cylindere har altså samme (\varphi,z), men forskellig \rho

Hvad sker der så med Voronoicellerne? Bliver de ikke bare “ganget ud” med radius? Nej! For afstande mellem punkter på cylinderne bliver ikke bare ganget:

Afstande på en cylinder kan findes ved at “rulle cylinderen ud” til et rektangel og måle i planen.

Er cylinderen h høj og har radius r, er rektanglet h på den ene led og 2\pi r på den anden. Med samme højde og radius R er det h på den ene led og 2 \pi R på den anden. Og så ændrer Voronoicellerne sig kvalitativt. På billederne nedenfor, som Jakob Gulddahl Rasmussen har lavet til mig, er 6-kanten omkring det midterste punkt blevet til en 4-kant, når der strækkes på den ene led. Linjestykkerne er midtnormaler mellem par af punkter (på linjestykket er der lige langt til to af “cellekernerne”) og de slutter, når de møder andre midtnormaler. I kan lege med, hvordan det ændrer sig, når man strækker på den ene led, eller  når man flytter  i en af de mange apps, der findes. Her er en på University of Michigan. – Se mere på Numb3rsbloggen

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Og så kommer problemet: Man skal indsætte en forbindelse mellem celler med forskelligt antal kanter. Det kan ikke være en keglestub eller et prisme, for de har samme antal kanter i øverste og nederste flade. Det er her Scutoiden skal bruges. I figuren øverst ser man scutoider mellem femkanter og sekskanter. Den ene kant i scutoiden deler sig et stykke nede i to kanter. (Hvis man flytter delepunktet helt ned (eller op), får man et prisme, men det er ikke sådan, vævet opfører sig.)

Scutoidens sider er ikke plane – de krummer. Men det har vist sig, at det er sådan, det ser ud, når man kigger nærmere på en bananflue, eller hvad man nu har.

Scutoider bruges nu til at lave modeller for epithelvæv. Man gætter på, at de kan bruges til at lave kunstigt væv.

Man kan købe 3d-printede scutoider, der er artikler om scutoider her, der og allevegne. Jo, den lille ny er berømt.

Pair of Packable Scutoids 3d printed Order "Small" for hollow models or "Large" for (same size) solid models

Selvfølge har den uforlignelige Matt Parker lavet en video om scutoider. Med piberensere… Og interview med matematikeren bag.

Om det er ny matematik, kan man bestemt godt diskutere. Men det er ny indsigt og giver nye anvendelsesmuligheder i et samarbejde mellem mange fagområder. Det er da helt fremragende!

p-værdier, p < 0.05, og multiple testing

Lisbeth Fajstrup spurgte mig tidligere på året, om jeg kunne skrive et blogindlæg, som svarede på de to følgende spørgsmål: (1) hvorfor skal p-værdier være mindre end 5\% og (2) hvordan flere sammenligninger har indflydelse på p-værdien (også kaldt multiple testing problemet). Det er to gode spørgsmål, og i skrivende stund, mens vi er kommet godt ind i det nye år, har jeg endelig tid (taget mig sammen til at finde tiden) til at svare på de to spørgmål. Inden jeg gør dette, for at sikre vi alle er på samme side, introducerer jeg kort p-værdi konceptet, med den sædvanlige tunge definition og et kort eksempel. Hvis læser allerede ved hvad p-værdier er, kan dette afsnit nemt hoppes over. Hvis læser aldrig har hørt om p-værdier før og ønsker en mere fuldstændig introduktion, så se for eksempel the American Statistical Association’s artikel fra 2016.

Kort introduktion til p-værdier

Helt generelt defineres p-værdien som:

Sandsynligheden for at observere en teststørrelse der er ligeså eller mere ekstrem, end hvad der allerede er observeret, givet at nulhypotesen er sand.

For at illustrere, hvordan dette skal forståes, lad os tage et eksempel:
Lad os sige, at vi vil undersøge om befolkningen bakker op om Formel 1 ræs i København. Vores nul hypotese er at befolkningen hverken er for eller imod, altså at opbakningen er fifty-fifty. Alternativet er, at opbakningen er mindre eller større end 50\%, da vi ikke forud for undersøgelsen har indsamlet noget information.

Vi går ud i landet og spørger seks tilfældige personer. Det viser sig at alle seks personer støtter op om forslaget. Under nulhypotesen er sandsynligheden for at se seks observationer ‘imod‘ forslaget:

\mathbb{P}\left(6\text{ personer imod}\right)=\left(\frac{1}{2}\right)^{6} = \frac{1}{64},

 

og da vi ikke er forudindtagede, så er seks individer ‘for‘ forslaget lige så ekstrem en observation. (Og der kan ikke være observationer, som er mere ekstreme.) Dette medfører en p-værdi på:

p = \mathbb{P}\left(6\text{ personer imod}\right) + \mathbb{P}\left(6\text{ personer for}\right) = 2\cdot\frac{1}{64} = \frac{1}{32} = 0{,}03125.

 

Er dette nok til at forkaste nulhypotesen? Hvis vi skal spørge det hav af lærebøger der bruges i statistik undervisning, vil de sige, at nulhypotesen forkastes så snart p-værdien er mindre end 5\%. Perfekt! Alt er som det være, verden er flad placeret på ryggen af en skildpadde der står på ryggen af en større skildpadde.

Den udregnede p-værdi fortæller os ikke meget andet end, hvad vi kan læse af definitionen: Hvis nulhypotesen er sand, så er sandsynligheden for at trække en ny stikprøve, hvor andelen er mere ekstrem end den vi så ovenfor, lige over 3\%. Er tre procent nok til at vi ikke tror det er et tilfælde?

Hvis vi sætter en beslutningsgrænse (signifikansniveau) kan vi begå to typer af fejl:

  • Type I: Nulhypotesen forkastes selvom den er sand.
  • Type II: Nulhypotesen forkastes ikke selvom den er falsk.

Sætter vi beslutningsgrænsen i vores eksempel ovenfor til, at alle seks er ‘for‘ eller alle seks er ‘imod‘, før vi forkaster nulhypotesen, så er sandsynligheden for at begå en Type I fejl 3{,}125\% (p-værdien set ovenfor).

Sandsynligheden for at vi begår en Type II fejl vil afhænge af signifikansniveauet og den sande andel af populationen som er ‘imod‘ (eller ‘for‘) Formel 1 løb i København. Lad os se hvad der sker, når vi antager at sande andel af populationen som er ‘imod‘ er 0{,}25 (altså er andelen, der er ‘for0{,}75). Vi antager som ovenfor, at vi kun forkaster nulhypotesen når alle seks er ‘for‘ eller alle seks er ‘imod‘, givet dette signifikansniveau er sandsynligheden for at se seks observationer ‘imod‘ forslaget:

\mathbb{P}\left(6\text{ personer imod}\right) = \left(\frac{1}{4}\right)^{6},

 

og sandsynligheden for at se seks observationer ‘for‘ er:

\mathbb{P}\left(6\text{ personer for}\right) = \left(\frac{3}{4}\right)^{6}.

 

Dette giver en sandsynlighed for at begå en Type II fejl på:

1 - \mathbb{P}\left(\text{Type II fejl}\right) = \mathbb{P}\left(6\text{ personer imod}\right) + \mathbb{P}\left(6\text{ personer for}\right) = 0{,}17822,

 

hvor 1 - \mathbb{P}\left(\text{Type II fejl}\right) kaldes for den statistiske styrke af testen, og fortolkes som sandsynligheden for forkaste nulhypotesen, givet at den faktisk er falsk.

Det vil sige, at hvis den sande andel af populationen som er ‘imod‘ er 0{,}25, vil nulhypotesen ikke blive forkastet i knap 82\% af tilfældende, selvom den er falsk og  den sande andel ‘imod‘ forslaget endda ligger meget langt fra nulhypotesen, 50\%. Vi kan gøre det samme for enhver andel og resultatet kan ses i figuren nedenfor. Bemærk: figuren kun viser den første halvdel, da figuren er symmetrisk omkring 0.5.

 

Grunden til den høje sandsynlighed for Type II fejl i denne sammenhæng er valget af signifikansniveau og, hovedsageligt, det lave antal af observationer. Dette betyder at når vi designer et studie, (planlægger, hvor mange og hvem, vi skal spørge/teste/…,)  så prøver vi at finde en balance mellem tre størrelser: signifikansniveauet, styrken, og stikprøve størrelsen.

 

Hvorfor skal p-værdier være mindre end 5%, før de kaldes statistisk signifikante?

Ikke et specielt tilfredsstillende svar, men det er sandheden. Vi lærer vore elever og studerende det, fordi vi selv fik det at vide af vore undervisere. Dette svar, kombineret med at flere tidsskrifter i de seneste år har valgt at direkte afvise artikler der indeholder p-værdier, gjorde at ‘the American Statistical Association’ (ASA) i 2016 publiserede en artikel der redegjorde for, hvad p-værdier er og hvordan de bør fortolkes (en udmelding der fik, blandet andet, danske statistikere Claus Thorn Ekstrøm og Per Bruun Brockhoff, til at stikke hånden i vejret og proklamere: “Intet nyt under solen”). Det svarer dog ikke rigtigt på spørgsmålet: Hvorfor lige præcis 5\%?

Det simple svar er: fordi R. A. Fisher skrev det og hans ord lov. Fisher er en af de mest anerkendte statistikere, og bliver generelt betragtet som en af fædrene til moderne statistik. Et eksempel på Fishers brug af signifikansniveauet, kan ses i hans artikel fra 1926:

If one in twenty does not seem high enough odds, we may, if we prefer it, draw the line at one in fifty (the 2 per cent point), or one in a hundred (the 1 per cent point). Personally, the writer prefers to set a low standard of significance at the 5 per cent point, and ignore entirely all results which fail to reach this level. A scientific fact should be regarded as experimentally established only if a properly designed experiment rarely fails to give this level of significance.

Altså giver Fisher en følge af mulige signifikansniveauer efterfulgt af hans foretrukne niveau på 5\%. Lignende argument findes i hans bog ‘Statistical Methods for Research Workers‘ (1925), dog præsenteret ved standardafvigelser (for en normalfordelt teststørrelse svarer et signifikansniveu på 5\% til knap 2 standard afvigelser). Ydermere, indeholdt bogen tabeller til opslag af fraktiler af (bestemte) sandsynlighedsfordelinger, som indeholdte: 1\%, 2\%, 5\%, 10\%, 20\%,….

Det heller ikke vigtigt at signifikansniveauet lige præcist er 5\%, det er størrelsesordenen som er vigtig; det gør ikke den store forskel om signifikansniveauet er 4\%, 5\%, eller 6\%. Men denne størrelsesorden giver, i de fleste tilfælde, en god balance mellem den statistiske styrke og stikprøve størrelsen. Altså kan vi med et signifikansniveau omkring 5\% opnå en høj styrke uden at skulle indsamle en fuldstændig ekstrem stor stikprøve.

Hvorfor lærer vi så stadig vore elever og studerende, at signifikansniveauet bør være 5\%? Som jeg ser det er der tre grunde:

  1. Det leder, i de fleste tilfælde, til en god balance mellem andelen af Type I fejl, Type II fejl og størrelsen af stikprøven.
  2. Det gør det nemmere at sammenligne studier, hvis alle bruger det samme signifikansniveau og samme styrke.
  3. Det er nemmere at lære et stort antal elever en ‘kageopskrift’, end at få dem til at tage stilling til den andel af Type I og II fejl, de vil tillade i deres analyse.

 

Multiple testing problemet

Problemet opstår, når flere hypoteser testes på samme tid. Jo flere hypoteser der testes på samme tid, jo større er sandsynligheden for, at der opstår en fejl. Lad os i det følgende antage at andelen af acceptable Type I fejl er sat til 5\%.

Lad os eksempelvis sige, at vi i stedet for at teste et nyfundent stof x direkte for dens effekt på sygdommen s, derimod tester det for effekten på 100 forskellig symptomer. Ydermere, antag at nulhypotesen er sand i alle 100 tilfælde (altså at der ingen effekt er). Dette vil medføre et forventet antal Type I fejl på 5 (100 \times 5\%). Hvis de 100 hypotesetest, vi foretager, kan antages at være uafhængige, giver dette en sandsynlighed på 99{,}4\% for at se mindst en Type I fejl, (hvor vi altså konkluderer, at stoffet virker på mindst et af symptomerne) da: 1-(1-0,05)^{100}=0.994.

Sandsynligheden for mindst en Type I fejl, kaldes også ‘the familywise error rate‘ (FWER). Et oplagt spørgsmål er: hvordan kan vi sikrer at FWER er mindre end den acceptable andel af Type I fejl? Der har gennem årene været en del bud på løsninger til dette problem. Vi kaster et kort blik på den simpleste og mest anvendte procedure, Bonferroni korrektionen.

Lad p_i være p-værdien for hypotese H_i, så afvises H_i, i følge Bonferroni, hvis

p_i < \frac{\alpha}{I},

 

hvor \alpha er den acceptable andel af Type I fejl og I er det totale antal af hypoteser. I vores eksempel er \alpha = 0.05 og I = 100. Beviset for at Bonferroni korrektionen sikre FWER \leq \alpha er som følger:

\text{FWER} = \mathbb{P}\left(\bigcup\limits_{i=1}^{I}\left[p_i \leq \frac{\alpha}{I}\right]\right) \leq \sum_{i = 1}^{I} \mathbb{P}\left(p_i \leq \frac{\alpha}{I}\right) = I\frac{\alpha}{I} = \alpha,

 

hvor første ulighed holder ved Booles ulighed, der siger at:

\mathbb{P}\left(\bigcup\limits_i A_i\right) \leq \sum_i \mathbb{P}\left(A_i\right).

 

Bonferroni korrektionen er en særdeles konservativ metode, hvis der laves mange hypotese test eller p-værdierne er positivt korrelerede. Dette betyder at korrektionen foregår på bekostning af et større antal Type II fejl.

I de senere år, er dette blevet et problem ifm. ‘genome-wide association studies‘ (GWAS). Her testes forskellen i individers DNA baser (de byggesten vore kromosomer består af) for deres indflydelse på en sygdom eller et fænotypisk træk (så som hårfarve). Applikationer som denne, har ført til en række alternativer til Bonferroni korrektionen. Den mest anvendte her i blandt er ‘false discovery rate‘ (FDR), som blev formelt beskrevet af Yoav Benjamini og Yosef Hochberg i 1995, altså en forholdsvis ny metode i denne sammenhæng. Mere information kan findes på wikipedia siderne: ‘Multiple comparison problem‘, ‘Bonferroni correction‘, ‘False discovery rate‘, og ‘Genome-wide association study‘.

Sommerferie – og masser af matematik

Det er sommer og der er stilhed på bloggen. Mens I venter er her et tilbud:

På The Aperiodical har de The Big Internet Math-Off – inspireret af VM i fodbold, I presume. Det er knock out fra begyndelsen af. To matematikformidlere fortæller om deres yndlingsmatematik og der kan så stemmes. Her er et forslag: Jeg lover, at vi vil fortælle mere her på bloggen om mindst et af emnerne. (Eller måske bare give en dansk version – det er svært at konkurrere med Matt Parker og co.)

Her er de hidtidige indlæg:

James Tanton mod Nira Chamberlain.

Tanton: Om at skære en kage op og samle den igen og få kage tilovers – og lave uendelig meget kage.

Chamberlain: Om Formel 1 og hvordan Reynoldsligningen sikrer, hjulene ikke falder af.

Samuel Hansen mod Paul Taylor

Hansen: Hvorfor dine venner har flere venner, end du har (Link til Soundcloud) og hvordan det kan bruges til at stoppe epidemier.

Taylor: Hvordan kan man være helt sikker på, Pythagoras’ sætning holder (se linket ovenfor – det er ikke en video.)

Peter Rowlett mod Alison Kiddle

Rowlett: Parabolske kurver – herunder at tegne dem med rette linjer. Og tikz-kode, så du kan gøre det i LaTeX. Også en lille video

Kiddle: Hagas sætning – matematisk origami, om at folde et kvadrat og få delt siderne  i diverse brøkdele Se også Plus Magazine

Edmund Harriss mod Colin Wright

Harriss: Penrose fliselægning. Det har vi haft på bloggen før, men ikke med så fine fliser skåret i træ 🙂

Wright: Tag et spil kort og lav 13 bunker (med 4 i hver). Hvis der er alle kort es, 2,3,…, konge, (ikke nødvendigvis i rækkefølge)  er du færdig. Ellers: Kan du omorganisere hver bunke, så du ender med at have es,to,…, konge øverst? Svaret er, ifølge Wright, altid ja.

Tiago Hirth mod Evelyn Lamb

Hirth: Et rebtrick med Borromeanske ringe

 

Lamb: Wallis’ si og sammenhængen med \pi. (I familie med Sierpinskis tæppe, Mengers svamp,…) One level of the construction of the Wallis sieve Hun har mere om det på sin blog Det er et af en længere række af yndlingsobjekter (favourite spaces – svært at oversætte)

Matt Parker mod Matthew Scroggs 

Parker: Machine Learning med perler i æsker. En “maskine” lærer at spille kryds og bolle.

 

Scroggs: Om at spille Asteroids i en kortprojektion (han kalder det Mathsteroids). Blogmosteren her synes, det er supercool, men kortprojektioner er altså virkelig god matematik.

Her er spillet i Mercatorprojekttionen

Der er andre, som er mere udfordrende: Billedet her viser rette linjer i den projektion, der bruges i FNs logo.

FNs logo

James Propp mod Zoe Griffiths

Propp: Om knuder og rebtrick.

Griffiths: Sandsynlihedsteori og placering af passagerer i et fly

 

Jo Morgan mod Tony Mann

Morgan: Hexaflexagons. Med link til Vi Harts videoer om netop det. De har danske undertekster!

 

Mann: Om tilfældige tal og at score 100% til enhver eksamen (Njah, mon dog)

 

 

 

 

 

 

 

 

 

 

 

Om at blande kort

Dette indlæg er motiveret af https://fredhohman.com/card-shuffling/.

Opdateret 24/6-2018 10:20: Links til Numb3rs-bloggen tilføjet.

Spillekort skal blandes. En gængs måde at gøre det på, er at dele kortbunken i to mindre bunker af (ca.) samme størrelse og mikse de to bunker fra bund til top. På engelsk hedder det et riffle shuffle. (Jeg kender ikke det danske navn for denne måde at blande på.) Man kan overveje hvor mange gange dette skal gøres for bunken “er godt nok blandet” (for en passende definition af det). 7 gange er tilsyneladende nok (hvis man gør det rigtigt osv.). En matematisk model for denne måde at blande på er Gilbert-Shannon-Reeds modellen. Ovre på Numb3rs-bloggen er der mere om spillekort og matematik i dette indlæg. Bemærk at videoen (“7 gange er tilsyneladende nok”) er med Persi Diaconis som også omtales i Numb3rs-indlægget.

En mere simpel måde at blande på, er at tage det øverste kort og indsætte det et tilfældigt sted i bunken. Og sådan fortsætter man. Man kan nu stille sig selv det samme spørgsmål: hvor mange gange skal man gøre dette for at kortbunken er blandet “nok” (jf. ovenfor)?

Man kan vise (se fx 7 gange er tilsyneladende nok / https://fredhohman.com/card-shuffling/), at man i gennemsnit skal gentage en sådan simpel blanding 235 gange for at kortbunken er blandet “nok”. En del af svaret er, at bunken er blandet “nok” når bundkortet (det nederste kort i bunken inden man går i gang med at blande) har nået toppen af bunken og også selv er blevet blandet (dvs. flyttet til et tilfældigt sted i bunken).

I dette indlæg skal vi se, hvordan man kan opnå viden om eksempelvis sådanne processer ved at få computeren til at simulere mange, mange af sådanne blandinger og så registrere interessante egenskaber ved hver realiserede blanding. Denne fremgangsmåde kaldes for Monte Carlo-metoder og er et kraftfuldt værktøj indenfor statistikken. Man kan med en beskrivelse af den datagenererende process finde egenskaber for processen ved at få computeren til at realisere processen mange, mange gange.

Teoretiske resultater er ekstremt vigtige af mange årsager. Men det betyder ikke, at det er den eneste måde at opnå viden om processer på. Med Monte Carlo-metoden kan man dels kontrollere de teoretiske resultater, men ofte kan man faktisk opnå resultater som kan virke umulige at opnå teoretisk.

I dette tilfælde vil vi bruge Monte Carlo-metoden til at dels at finde det gennemsnitlige antal gange man skal blande før bunken er godt nok blandet. Det kan man også relativt let finde teoretisk (se ovenfor). Men man kunne også være interesseret i at finde fraktiler i fordelingen af antal blandinger. Så kan angive, at man i 95% af tilfældene skal blande mellem L og U gange før at bunken er blandet “nok”.

Den letteste måde at lave sådanne simulationer er på computeren med en random number generator (RNG), der kan generere tilfældige tal. Ofte må man nøjes med pseudorandom number generator (PRNG), men det er som regel også tilstrækkeligt. Og så skal man bruge et interface til denne PRNG således man kan få nogle tilfældige tal i beskrivelsen af processen. Ovre på Numb3rs-bloggen er der mere om tilfældige tal i dette indlæg.

Jeg vil her bruge R, der er et helt programmeringsmiljø (inkl. programmeringssprog) hovedsageligt anvendt til statistik, big data, maskinlæring, kunstig intelligens, dataanalyse m.fl. Det er et rigtigt godt vækrtøj at have i sin værktøjskasse. Rstudio er et fint IDE (integrated development environment) til R. Nedenfor bruges R’s sample-funktion til at trække tilfældige tal.

(Helt til sidst i dette indlæg kan I finde den komplette R-kode. Nedenfor kommer koden med output.)

Først skal vi have repræsenteret kortbunken:

> # C: Clubs / klør
> # D: Diamonds / ruder
> # H: Hearts / hjerter
> # S: Spades / spar
> faces <- c("C", "D", "H", "S")
> nums <- c("A", 2:10, "J", "Q", "K")
> 
> # Vores kortbunke: CA, C2, C2, ..., CQ, CK, DA, ..., DK, ...., SK
> # Denne genereres automatisk, men man kunne også gøre det manuelt:
> # pile_init <- c("CA", "C2") # Osv.
> pile_init <- unlist(lapply(faces, function(x) paste0(x, nums)))
> 
> # De første 6 kort i bunken
> head(pile_init, n = 6)
[1] "CA" "C2" "C3" "C4" "C5" "C6"
> 
> # De sidste 6 kort i bunken
> tail(pile_init, n = 6)
[1] "S8"  "S9"  "S10" "SJ"  "SQ"  "SK" 
> 
> # Antallet af kort i bunken
> length(pile_init)
[1] 52

Det er ikke så vigtigt hvordan bunken er blandet når vi går i gang. Vi skal egentlig bare holde styr på det sidste kort som her er “SK”.

Og så går vi i gang med at simulere 1,000 kortblandinger. Hver gang registrerer vi antallet af blandinger, der blev foretaget før bunken var blandet “nok”:

> # Funktion der simulerer én blanding
> simulate_process <- function() {
+   # Vi starter med en ny bunke
+   pile <- pile_init
+   
+   # En tæller til antallet af blandinger
+   rifs <- 0
+   
+   while (TRUE) {
+     # Registrer at der nu er bladet én gang mere
+     rifs <- rifs + 1
+     
+     # Tilfældig position som topkortet skal hen til
+     top_pos <- sample(x = seq_along(pile), size = 1)
+     
+     # Med sandsynlighed 1/52 ender det igen i toppen
+     if (top_pos == 1) {
+       #pile <- pile
+     } else if (top_pos == length(pile)) {
+       # Det kan også ende i bunden
+       pile <- c(pile[-1], pile[1])
+     } else {
+       # Eller et sted midt i mellem
+       pile <- c(pile[2:top_pos], pile[1], pile[-(1:top_pos)])
+     }
+     
+     # Hvis topkortet er bundkortet; 
+     # her kunne man også have skrevet
+     #   if (pile[1] == "SK") {
+     # men dette virker også selvom man ændrer pile_init
+     if (pile[1] == pile_init[length(pile_init)]) {
+       break
+     }
+   }
+   
+   # Topkortet (der er nu er det oprindelige bundkort)
+   # skal også blandes, men vi er ligeglade med hvor det ender
+   rifs <- rifs + 1
+   
+   return(rifs)
+ }
> 
> # Indstiller PRNG til samme tilstand for at kunne reproducere resultaterne
> set.seed(1)
> 
> # Simulér processen 1,000 gange
> riffles <- replicate(1000, simulate_process())
> 
> # De første 6 blandinger:
> head(riffles, n = 6)
[1] 249 191 205 280 189 314
> 
> # Gennemsnittet af antal blandinger
> mean(riffles)
[1] 234.757

Som I kan se får vi også at der i gennemsnit skal 235 blandinger til.

Men vores simulationer gør os i stand til at finde og vise fordelingen af antal blandinger:

> # Estimer fordelingen
> rif_dens <- density(riffles)
> 
> # Equal-tailed interval (begge haler har samme sandsynlighed)
> qs <- quantile(riffles, c(0.025, 0.975))
> 
> # Find x-værdierne
> x1 <- min(which(rif_dens$x >= qs[1]))  
> x2 <- max(which(rif_dens$x <  qs[2]))
> 
> # De centrale 95%
> rif_dens$x[c(x1, x2)]
[1] 144.2375 384.8943
> 
> plot(rif_dens)
> polygon(x = c(rif_dens$x[c(x1, x1:x2, x2)]), y = c(0, rif_dens$y[x1:x2], 0), col = "gray")
> abline(v = mean(riffles), lty = 2)

 

Altså vil man skulle forvente at skulle blande mellem 144 og 385 gange (og i gennemsnit 235) før at denne måde at blande på giver en bunke der er blandet nok.

(Hvilket nok er medvirkende til at jeg aldrig har set nogen praktisere denne form for kortblanding.)

Komplet R-kode:

# C: Clubs / klør
# D: Diamonds / ruder
# H: Hearts / hjerter
# S: Spades / spar
faces <- c("C", "D", "H", "S")
nums <- c("A", 2:10, "J", "Q", "K")

# Vores kortbunke: CA, C2, C2, ..., CQ, CK, DA, ..., DK, ...., SK
# Denne genereres automatisk, men man kunne også gøre det manuelt:
# pile_init <- c("CA", "C2") # Osv.
pile_init <- unlist(lapply(faces, function(x) paste0(x, nums)))

# De første 6 kort i bunken
head(pile_init, n = 6)

# De sidste 6 kort i bunken
tail(pile_init, n = 6)

# Antallet af kort i bunken
length(pile_init)

# Funktion der simulerer én blanding
simulate_process <- function() {
  # Vi starter med en ny bunke
  pile <- pile_init
  
  # En tæller til antallet af blandinger
  rifs <- 0
  
  while (TRUE) {
    # Registrer at der nu er bladet én gang mere
    rifs <- rifs + 1
    
    # Tilfældig position som topkortet skal hen til
    top_pos <- sample(x = seq_along(pile), size = 1)
    
    # Med sandsynlighed 1/52 ender det igen i toppen
    if (top_pos == 1) {
      #pile <- pile
    } else if (top_pos == length(pile)) {
      # Det kan også ende i bunden
      pile <- c(pile[-1], pile[1])
    } else {
      # Eller et sted midt i mellem
      pile <- c(pile[2:top_pos], pile[1], pile[-(1:top_pos)])
    }
    
    # Hvis topkortet er bundkortet; 
    # her kunne man også have skrevet
    #   if (pile[1] == "SK") {
    # men dette virker også selvom man ændrer pile_init
    if (pile[1] == pile_init[length(pile_init)]) {
      break
    }
  }
  
  # Topkortet (der er nu er det oprindelige bundkort)
  # skal også blandes, men vi er ligeglade med hvor det ender
  rifs <- rifs + 1
  
  return(rifs)
}

# Indstiller PRNG til samme tilstand for at kunne reproducere resultaterne
set.seed(1)

# Simulér processen 1,000 gange
riffles <- replicate(1000, simulate_process())

# De første 6 blandinger:
head(riffles, n = 6)

# Gennemsnittet af antal blandinger
mean(riffles)

# Estimer fordelingen
rif_dens <- density(riffles)

# Equal-tailed interval (begge haler har samme sandsynlighed)
qs <- quantile(riffles, c(0.025, 0.975))

# Find x-værdierne
x1 <- min(which(rif_dens$x >= qs[1]))  
x2 <- max(which(rif_dens$x <  qs[2]))

# De centrale 95%
rif_dens$x[c(x1, x2)]

plot(rif_dens)
polygon(x = c(rif_dens$x[c(x1, x1:x2, x2)]), y = c(0, rif_dens$y[x1:x2], 0), col = "gray")
abline(v = mean(riffles), lty = 2)

Om matematikken bag kvantetransport

Når man zoomer ind på atomart-niveau, ser verden helt anderledes ud. Den består af små partikler, som vekselvirker med hinanden, og deres egenskaber er vidt forskellige fra alt det, som vi kender fra vores “egen størrelse”.

En af de mest effektive metoder, som er brugte til at forstå den elektroniske struktur af et givet stykke materiel,  er at løbe en elektrisk strøm gennem det. Når dette stykke består af ganske få atomer, for at få ledningsprocessen ordenligt modelleret er man nødt til at bruge avancerede matematiske evolutionsligninger som Schrödingers eller Liouvilles

I næste uge skal vi afholde  en lille wokshop på instituttet, der skal samle på et sted flere førende forskere fra hele verden. Foredragsholderne tæller eksperter i matematisk-fysik, numerisk analyse og modellering. Målet er at kigge sammen (dog fra ganske forskellige synsvinkler) på det der er sket nyt  i dette spændende forskningsområde. Nogle nøgleord er: spin og ledningstransport i topologiske isolatorer, Wannier funktioner i metalliske systemer, spredningsteori for langtrækkende vekselvirkninger m.fl.

Workshoppens hovedsponsor er DFF1 bevillingen 4181-00042 fra Det Frie Forskningsråd | Natur og Univers.

Ford-cirkler – og addition af brøker som vor mor IKKE gør det.

Vælg to hele tal p og q, som er parvis primiske (det eneste tal, der går op i både p og q er tallet 1). Tegn cirklen i planen med radius \frac{1}{2q^2} og centrum i (\frac{p}{q},\frac{1}{2q^2}) . Bed nu en anden om at gøre det samme – med nyt valg af p og q. De to cirkler vil tangere x-aksen og enten tangere hinanden eller ikke have noget til fælles. Bliv ved og der opstår et fint mønster af cirkler. De kaldes Ford-cirkler, fordi de blev beskrevet i en artikel i American Mathematical Monthly i 1938 af Lester R. Ford Sr.

Notation: Fordcirklen svarende til p,q kaldes C(p,q).

Her på figuren er valgt p\leq q, så 0\leq \frac{p}{q}\leq 1 og dermed er x-koordinaten for centrum mellem 0 og 1. Tallet i cirklen er x-koordinaten for centrum (forkortet, så det svarer til p/q). Farven indikerer nævneren p.

Her er nogle konstateringer:

  • Ethvert rationalt tal a/b på x-aksen bliver rørt af en Fordcirkel: Forkort a/b og lav så Fordcirklen.
  • Radius og dermed højde af C(p,q) afhænger kun af q.

To Fordcirkler skærer ikke hinanden:

To Fordcirkler C(p,q) og C(r,s) vil enten tangere (kysse kaldte jeg det i indlægget om kuglepakninger) eller slet ikke røre hinanden:

De har centrum i hhv. (\frac{p}{q},\frac{1}{2q^2}) og (\frac{r}{s},\frac{1}{2s^2}) så afstand mellem centrene opfylder

d^2=(\frac{p}{q}-\frac{r}{s})^2+(\frac{1}{2q^2}-\frac{1}{2s^2})^2

Summen af de to radier er s=\frac{1}{2q^2}+\frac{1}{2s^2}

Nu sammenligner vi d og s ved at udregne d^2-s^2. Hvis de to cirkler skærer hinanden er d^2-s^2<0 . Tangerer de, er d^2-s^2=0.

d^2-s^2=(\frac{p}{q}-\frac{r}{s})^2+(\frac{1}{2q^2}-\frac{1}{2s^2})^2-(\frac{1}{2q^2}+\frac{1}{2s^2})^2=(\frac{p}{q}-\frac{r}{s})^2- 4(\frac{1}{2q^22s^2})=(\frac{ps-rq}{qs})^2- (\frac{1}{q^2s^2})=\frac{(ps-rq)^2-1}{(qs)^2}

Forskellige Fordcirkler skærer ikke:

Hvis de to cirkler skærer, er
( ps - rq )^2 - 1<0 og altså ( ps - rq )^2 <1

Men  ps – rq  er et helt tal, så det vil kræve
ps – rq = 0 og altså  ps = rq ,
\frac{p}{q}=\frac{r}{s}
og altså er det samme cirkel.

Fareyfølger.

Hvis C(p,q) og C(r,s) tangerer, er |ps-rq|=1. Det leder til en anden pudsig observation. men først skal vi have indført brøkregning a la Farey:

Dette er de første Fareyfølger

  1. F_1=\frac{0}{1},\frac{1}{1}
  2. F_2=\frac{0}{1},\frac{1}{2}, \frac{1}{1}
  3. F_3=\frac{0}{1},\frac{1}{3},\frac{1}{2},\frac{2}{3}\frac{1}{1}
  4. F_4=\frac{0}{1},\frac{1}{4},\frac{1}{3},\frac{1}{2},\frac{2}{3},\frac{3}{4},\frac{1}{1}
  5. F_5=\frac{0}{1},\frac{1}{5},\frac{1}{4},\frac{1}{3},\frac{2}{5},\frac{1}{2},\frac{3}{5},\frac{2}{3},\frac{3}{4},\frac{4}{5},\frac{1}{1}

Fareyfølgen F_n er uforkortelige brøker mellem 0 og 1 med nævner højst n. Rækkefølgen er efter størrelse. De elementer, der tilføjes til F_n for at få F_{n+1} er medianten af naboerne:

I F_5 tilføjes \frac{2}{5}. Naboerne er \frac{1}{3},\frac{1}{2}. Medianten er dårlig brøkregning, Fareyplus:

\frac{1}{3}\oplus\frac{1}{2}=\frac{1+1}{3+2}=\frac{2}{5}

Her er det tilsvarende for Fordcirklerne

Hvorfor gælder det? Her er først nogle konstateringer:

  1. Hvis 0<\frac{a}{b}<\frac{c}{d}<1 ligger medianten imellem dem \frac{a}{b}<\frac{a+c}{b+d}<\frac{c}{d}. Man viser det første ulighedstegn som følger:  \frac{a}{b}<\frac{a+c}{b+d} \Leftrightarrow (b+d)a<(a+c)b \Leftrightarrow da<cb og det følger af \frac{a}{b}<\frac{c}{d}.
  2. Medianten mellem to naboer i F_k tilføjes i skridtet fra F_n til F_{n+1}, når nævneren den forkortede brøk svarende til \frac{a+c}{b+d} er højst n+1.
  3. Medianten af to naboer i en Fareyfølge F_k er uforkortelig: Medianten er ikke i F_k, da \frac{a}{b}, \frac{c}{d} er naboer. Antag \frac{a+c}{b+d}=\frac{rq}{rp} og $\frac{q}{p}$ er uforkortelig. Så er p>k, da medianten ikke er i F_k. rp=b+d og b+d\leq 2k. Altså er r=1.

Medianten tilføjes altså i skridtet fra F_{b+d-1} til F_{b+d}.

Nu mangler vi blot at se, at alle uforkortelige brøker kommer med i en proces, hvor vi begynder med \frac{0}{1},\frac{1}{1} og tilføjer medianter.

Stern Brocot-træet.

Lad os undlade at holde styr på, hvor store nævnerne er. Så bygger vi Stern-Brocot-træet (opkadt efter Moritz Stern, matematiker, og Achille Brocot, urmager (!) ):

Vi bruger kun den venstre side. De stiplede linjer hjælper til at se, hvad der tages medianter af, men et lag eller “niveau” er kun de sidst tilkomne.

Påstand: Alle uforkortelige brøker kommer med i et lag i træet. (Og det er derfor ok at konstruere Fareyfølger via medianter.)

Først er hjælperesultat: Hvis \frac{a}{b} < \frac{c}{d} er barn og forælder eller forælder og barn i træet (forbundet med en kant opad eller nedad fra \frac{a}{b} til $latex  \frac{c}{d}$, så er bc-ad=1. Bevis: Induktion. Det er ok for 0/1 og 1/1. Hvis ok for \frac{a}{b} < \frac{c}{d}, så er det ok for kanter til og fra medianten: Der er enten en  kant nedad mellem  \frac{a}{b} < \frac{a+c}{b+d} eller opad \frac{a+c}{b+d}<\frac{c}{d}.
b(a+c)-a(b+d)=bc-ad=1 pr antagelse. Og tilsvarende for den anden side. (Lav selv et særargument for medianterne med hhv. 0/1 og 1/1.) En konsekvens er, at afstanden er  |\frac{a}{b} - \frac{c}{d}|=\frac{1}{bd}.

 

Argument for, at alle uforkortelige brøker er med i Stern-Brocot-træet: : På det k’te niveau i træet er summen af nævner og tæller i brøkerne mindst k+2, da Niveau k fremkommer som medianter fra niveau k-1 og højere niveauer. (Der laves hele tiden medianter med 0/1 og 1/1).

Antag nu, at p/q ikke er med i træet. Specielt er den ikke med på niveau p+q-1. Men den ligger mellem to naboer (forbundet med en kant), hvor den ene er på niveau p+q-1: \frac{a}{b} <\frac{p}{q}< \frac{c}{d}. Omskriv de to uligheder til

bp-aq>0 og cq-dp>0. Det er hele tal, så vi kan skrive \geq 1 begge steder.

Heraf: (bp-aq)(c+d)+(cq-dp)\geq c+d+a+b\geq p+q+1 (Det sidste følger af, at den ene brøk er fra niveau p+q)

Udregn venstresiden og brug bc-ad=1, da disse er forælder og barn i træet. Venstresiden giver da p+q. Og vi har en modstrid.

Tilbage til Fordcirklerne:

To Fordcirkler C(p,q) og C(r,s) tangerer hvis og kun hvis |ps-rq|=1. Altså svarer brøker, som er naboer i en Fareyfølge til tangerende Fordcirkler. Og det gælder også omvendt, men det har vi ikke vist her.

Endnu et pænt billede. His Fordcirklerne skærer, så vil halvcirklen fra (p/q,0) til (r/s,0) passere skæringspunktet.  Farven på halvcirklerne svarer til den Fareyfølge, hvori brøkerne er naboer.

 

 

 

God grafik – og Ihaka-foredrag

I dette indlæg vil jeg først vise noget grafik. Sidst i indlægget vil jeg give nogle links til nogle gode foredrag om grafik.

DR.dk bringer i dag artiklen “Ny måling: Danskerne har mest sympati med lønmodtagerne“. I den er der følgende graf:

(Kilde: DR.dk “Ny måling: Danskerne har mest sympati med lønmodtagerne“)

Min umiddelbare reaktion var: “Den graf er godt nok svær at tyde!”.

Der er flere problemer med den. For det første er cirkeldiagrammer/lagkagediagrammer svære at tyde – forstået på den måde, at det er svært at sammenligne størrelsen på de forskellige “lagkagestykker”. Hvor mange gange større er et stykke i forhold til et andet stykke? For det andet er farvevalget måske ikke velegnet til denne type graf, hvis man gerne vil bruge den til at illustrere forholdene mellem de forskellige svarmuligheder. Man kan (meget groft) dele farveskalaer op i to grupper: sekventielle (fra lyseblå til mørkeblå, fra rød til grøn osv.) eller kvalitative. De sekventielle bruges ofte til at illustrere en talværdi (fx indkomst) og de kvalitative bruges ofte til grupper (fx køn eller region).

Så alt i alt er grafen svær at tyde pga. både typen og farvevalget. Det skal dog siges, at man inde på artiklen kan køre musen over “lagkagestykkerne” for at få hjælpetekst og andelen oplyst. (Men man kan spørge om interaktivitet virkelig er nødvendig til at illustrere dette data.)

Til denne type grafer, vil man typisk anvende søjlediagrammer som fx:

Her er et par varianter. Først hvor søjlerne ordnes efter værdi:

Og vil man gerne have farver på, kan man da godt det:

Jeg vil påstå, at sådanne grafer er bedre til at hjælpe mig med at sammenligne svarmulighederne end cirkeldiagrammet er.

Det leder frem til det næste: Der er meget psykologi i grafik. Det handler ikke kun om statistik og om rent teknisk at få produceret noget grafik.

Og det er svært at lave god grafik!

Der forskes stadigvæk i, hvordan grafik tolkes – og om der er forskel mellem folkeslag. Fx er farver en oplagt del af grafik: Men man kan være farveblind og det kan man endda være på mange måder. Derfor er det vigtigt at producere grafik som også farveblinde kan læse – men det er ikke let. Og der kan muligvis også være forskel på, hvordan forskellige kulturer opfatter farver.

Auckland University (i New Zealand) har afholder hvert år en foredragsrække kaldet Ihaka lectures. Den blev første gang afholdt i 2017 og hver række består af 3 foredrag i marts måned. I år var der følgende tre foredrag:

  1. “Myth busting and apophenia in data visualisation: is what you see really there?” med Dianne Cook. Link til foredraget på YouTube.
  2. “Making colour accessible” med Paul Murrell. Link til foredraget på YouTube.
  3. “Visual trumpery: How charts lie – and how they make us smarter” med Alberto Cairo. Link til foredraget på YouTube.

Alle disse tre foredragsholdere er kendte og gode. Jeg vil ikke bruge tid på at præsentere dem hver især her. Se i stedet deres foredrag. Men de alle illustrerer fint det sammenspil der er mellem statistik og psykologi når man laver visualiseringer/illustrationer/grafik.

Relateret til dette indlæg er måske specielt nr. 3 af Alberto Cairo. Han giver en masse gode eksempler på dårlig grafik. Ikke nødvendigvis åbenlys dårlig grafik, men grafik der kan vildlede læseren.

Di Cook (nr. 1 ovenfor) forklarer i sit foredrag også om, hvordan kan kan bruge visualiseringer til statistisk inferens i stedet for den traditionelle tilgang med hypotesetest. De har lavet forsøg med at lade folk vurdere visualiseringer, der er lavet med udgangspunkt i nulhypotesen og så se om folk kan genkende det observerede datasæt. Hvis de kan det, “stikker det ud” og kommer så måske ikke fra den model, man har specificeret i nulhypotesen. Der er muligvis nogle problemer med denne tilgang – fx er det ikke åbenlyst hvad den alternative hypotese er. Derudover er det svært at vælge teststatistik/teststørrelse (der i dette tilfælde svarer til typen af grafik brugeren skal vurdere, fx scatterplot, barplot osv.). Men det er bestemt interessant at høre om denne vinkel på statistisk inferens.

 

 

 

Langlands får Abelprisen 2018 for at stille gode og dybe spørgsmål.

I 1967 skrev den dengang 31-årige Robert P.Langlands et 17 sider langt brev til André Weil. Weil var 30 år ældre og en af den tids store og indflydelsesrige matematikere. De to mødte hinanden, da de ventede på at komme ind til et foredrag, Langlands gav sig til at fortælle om nogle ideer og Weil foreslog ham at skrive dem ned. Måske for at slippe væk… Weil inviterede desuden Langlands til at besøge ham på Institute of Advanced Studies, Princeton og det lange brev skrev han inden besøget. Billedet her viser, hvad Langlands skrev på forsiden:  ”In response to your invitation to come and talk I
wrote the enclosed letter. After I wrote it I realized
there was hardly a statement in it of which I was certain.
If you are willing to read it as pure speculation
I would appreciate that; if not – I am sure you have
a waste basket handy.”

Weil fik renskrevet de 17 sider – på skrivemaskine – og det er det, derblandt matematikere kaldes Langlandsprogrammet.

Nu får Langlands  Abelprisen for sine “spekulationer”! Han har naturligvis selv bevist matematiske resultater, men priskomitéen skriver, han får prisen for “sit visionære program, der forbinder repræsentationsteori og talteori.”

Langlands på en konference i 2016. (Dan Komoda/Institute for Advanced Study)

Langlandsprogrammet indeholder nogle formodninger (conjectures) og et program for, hvordan man bør kunne bevise, at disse er korrekte. Det drejer sig om nogle forbindelser mellem områder af matematik, som ellers er ret forskellige i både emneområde og metoder. Den slags forbindelser giver sædvanligvis anledning til rigtig mange nye indsigter i begge områder. Lad mig forsøge at kaste lys på et lille hjørne af, hvad det går ud på:

Nogle primtal kan skrives som en sum af to kvadrattal:

2= 1^2+1^2
5= 1^2+2^2
13=2^2+3^2
17=1^2+4^2
29=2^2+5^2

Hvis man ser bort fra 2 (vi skriver “for et ulige primtal”, men der betyder jo bare, at 2 ikke er med) har alle disse primtal en fælles egenskab: Et primtal p, som ikke er 2, kan skrives som en sum af to kvadrattal hvis og kun hvis p=4k+1, hvor k er et naturligt tal. Det beviste Euler. Det er et eksempel på en reciprocitetslov – en egenskab ved primtallene udtrykkes ved division med rest . Her er det division med 4, som skal give rest 1. Vi skriver p\equiv 1 \mod 4

Et komplekst tal a+bi kaldes et Gaussisk heltal, hvis a,b er hele tal. Hvis p=m^2+n^2, så er (m+in)(m-in)=p ( husk, i^2=-1 og så er resten givet ved at gange ind i paranteser) og omvendt. Et primtal p er et produkt af to Gausisske heltal hvis og kun hvis det er en sum af to kvadrattal. 

De Gaussiske rationale tal er tal a+bi, hvor a og b er rationale tal (kan skrives som en brøk \frac{c}{d}, hvor c og d er hele tal. Ganger, dividerer, adderer eller subtraherer man to Gaussiske rationale tal med hinanden, er resultatet rationalt. De Gaussiske rationale tal udgør derfor ikke bare en delmængde \mathbb{Q}(i) af de komplekse tal, men et legeme. Man kan se det som en udvidelse af de rationale tal – man tilføjer i og reglen i^2=-1 og “beholder” regnereglerne. Det kaldes en legemsudvidelse. 

Nu ser vi på symmetrier.
Hvilke afbildninger har vi f:\mathbb{Q}(i)\to \mathbb{Q}(i), som er lineære: f((a+bi)+(c+di))=f(a+bi)+f(c+di) og bevarer produktstrukturen f((a+bi)(c+di))=f(a+bi)f(c+di) og desuden opfylder f(a+0i) = a+0i. Der er kun to afbildninger: Identitetsafbildningen f(a+bi)=a+bi og g(a+bi)=a-bi.

Da g(g(a+ib))=a+ib (man får skiftet fortegnet to gange), udgør funktionerne f og g en gruppe og g har orden 2 – sammensæt den med sig selv to gange, så får man identiteten.Det er Galoisgruppen for legemsudvidelsen \mathbb{Q}(i) over \mathbb{Q}.

Tilsvarende kan man se på Galoisgruppen for andre udvidelser af de rationale tal. Tænk på \mathbb{Q}(i) som en udvidelse af \mathbb{Q} med rødder i x^2+1 og dermed kvadratrødder af alle negative rationale kvadrattal. Vi ved, at alle andengradspolynomier ax^2+bx+c med rationale a,b,c, har to rødder (mere præcist, kan skrives a(x-r_1)(x-r_2) med  r_1,r_2\in \mathbb{R}(i) og en formel for disse rødder kan skrives blot med brug af kvadratrodssymbolet.

Alle tredjegradspolynomier med rationale koefficienter x^3+ a_2x^2+a_1x+a_0 har rødder, som kan opskrives ved brug af kvadratrødder og kubikrødder. Tilsvarende for 4.gradspolynomier, når man tilføjer fjerde rødder. Men for femtegradspolynomier går det galt. Det viste Abel og Galois. Det er altså ikke nok at kunne løse ligninger x^5=a for at kunne løse alle femtegradspolynomieligninger. Det mere generelle spørgsmål er, om der er en sammenhæng mellem løsninger til et polynomium P(x) og et andet Q(x).

Man kan formulere resultatet om primtal som sum af kvadrattal via Galoisgrupper. For et (ulige) primtal p er i^p=i, hvis p\equiv 1\mod 4 og i^p=-i, hvis p\equiv 3\mod 4. Funktionen z\to z^p kaldes en Frobeniusafbildning og er et element af  Galoisgruppen. Frobeniusafbildningen er forbindelsen mellem “kan man skrive p som en sum af to kvadrattal” og  “hvad er p \mod 4“.

Tilsvarende spørgsmål. Polynomiet x^2+x+1 har rod 1, når man regner modulo 3, da  1^2+1+1=3\equiv 0\mod 3. Men 1 er ikke en rod modulo 5. Hvor meget information er der i, at kende antallet af rødder modulo  primtal? Og hvad har det med Galoisgrupper at gøre?

Langlandsprogrammet foreslår en vidtrækkende generalisering af dette.

Det giver en forbindelse mellem harmonisk analyse – automorfe former, som er funktioner fra de komplekse tal til de komplekse tal med visse periodicitets egenskaber  –  og rødder i polynomier undersøgt via regning med rest som ovenfor. Andrew Wiles brugte en forbindelse af den type, da han løste Fermats problem.

Jeg har støttet mig til dels informationen på Abelprissiderne nogle noter fra et foredrag at Laurent Lafforgue, som fik Fieldsmedaljen for sit arbejde med Langlandsprogrammet og diverse populariseringer.

 

 

 

 

 

 

 

 

Grisecykler og differensligninger.

Cykler og cyklisk betyder her perioder og periodisk opførsel. Men der er faktisk et begreb i økonomi, som hedder “The Pork cycle” eller “The hog cycle” og det giver vel hos de fleste indre billeder af grise på cykel. Inden vi går videre, skal I have sådan en gris:

Billedresultat for buon compleanno in ritardo

I økonomi er det en anden historie: Med en meget simpel model, afhænger efterspørgslen efter grise(kød) (kun) af prisen og det gør udbuddet også. Der er to funktioner  D er “demand”, efterspørgsel, S er “supply”, udbud og de er funktioner af prisen p: D(p) og S(p).

Men prisen varierer jo med tiden, så det er ikke hele historien. Her lader vi tiden gå i “hop” og altså gør priserne det også: p_1, p_2,\ldots, p_{n-1}.p_n,\ldots Og naturligvis udbud og efterspørgsel: S_1,S_2,\ldots,S_{n-1},S_n,\ldots og  D_1,D_2,\ldots,D_{n-1},D_n,\ldots.

Man kan lade hvert hop svare til en time, en dag, en uge, en måned eller hvad der nu passer i modellen.

Nu kan vi så skrive D_n=f(p_n) for at indikere at efterspørgslen idag afhænger af prisen idag. Men udbuddet af grise kan ikke afhænge af prisen idag. Den kendte griseavleren ikke, da hun besluttede, hvor mange grise, der skulle produceres. Med en passende periode (den tid, det tager at få en gris klar til salg) kan vi skrive S_n=g(p_{n-1}) – udbuddet idag afhænger af prisen i forrige periode.

Hvad kan vi mere sige om funktionerne f og g? Las os gå ud fra, de er differentiable funktioner af en variabel f,g:\mathbb{R}\to \mathbb{R}, hvor input er pris og output er mængden af grisekød – i kilo eller en anden passende enhed. Højere pris giver mindre efterspørgsel og mere udbud, så f'(x)<0 og g'(x) >0. Der er eksempler på varer, hvor det ikke er rigtigt – basale fødevarer, som er forholdsvis billige er et eksempel. Men det er en model, så nu går vi med den.

Her er en graf (fra Wikipedia, Creative Commons) med de to funktioner

Bemærk, at prisen er op ad andenaksen, mens mængden er på førsteaksen. Efterspørgsel er den røde kurve, udbud er den blå.

Pilene indikerer et tidsforløb: Griseavleren ved, at grisene til tid 1 er blevet solgt til prisen p_1 og sætter gang i produktion af g(p_1)=Q_2 grise. De udbydes til salg og man må forestille sig en slags auktion, hvor der nu er Q_2 grise, som give prisen p_2=f^{-1}(Q_2).

Det ser griseavleren og producerer så g(p_2)=Q_3 grise til salg. De går til prisen p_3. Fortsætter man pilene rundt, kan man se, prisen svinge ind mod den pris, der svarer til skæringspunktet mellem de to kurver – den kaldes ligevægtsprisen.

Men det kunne også være gået anderledes:

Her vil prisen svinge længere og længere væk fra ligevægtsprisen. Modellen er en cobweb-model; det ligner et spindelvæv, hvis man tager flere ture rundt. Svingningen i priser er den såkaldte grisecykel.

Det afhænger tydeligvis af funktionerne f og g, om det går mod eller væk fra ligevægt. Det kan skrives op med en differensligning:

S_n=D_n og altså f(p_n)=g(p_{n-1}). Nu simplificerer vi yderligere og lader begge funktioner være lineære:

f(x)=a+bx og g(x)=c+dx, hvor a>0, b<0,d>0 og a>c.  c kan  godt være negativ – måske produceres der ikke grise, hvis prisen er for lav.) Så bliver ligningen a+bp_n=c+dp_{n-1}, som kan omskrives til

bp_n-dp_{n-1}=c-a

Skæringspunktet, ligevægtsprisen, er \bar{p}=\frac{c-a}{ b-d}.

Sådan en førsteordens differensligning kan man løse. Generelt ser det sådan ud – vi ser på løsninger til differensligningen

k_1y_n+k_2y_{n-1}=\varphi(n) med k_1\neq 0 og omskriver til y_n+ky_{n-1}= h(n)

  1. Løs det tilhørende homogene problem y_n+ky_{n-1}= 0. Løsningen er $latex  y_n=(-k)^nA$ – det er ikke svært at se, at det er en løsning, uanset A, og at der ikke er andre. (Et induktionsbevis kan gøre det. Ikke noget fancy som for differentialligninger.)
  2. Nu finder man en partikulær (altså bare en) løsning til det inhomogene problem. I vores tilfælde, hvor h(n) er konstant, har vi fundet ligevægtsløsningen \bar{y}.
  3. Den generelle løsning er nu, som vi kender det fra differentialligninger, y_n =A(-k)^n+\bar{y}

Det bruger vi for bp_n-dp_{n-1}=c-a – omskriv til p_n+\frac{-d}{b}p_{n-1}=\frac{c-a}{b} og får

p_n=A(\frac{d}{b})^n+\bar{p}

Da \frac{d}{b}<0, vil $p_n$ svinge omkring \bar{p}. Hvis d<b svinger det ind mod \bar{p}, hvis d=b svinger det frem og tilbage mellem de samme to værdier (grafen i midten nedenfor) og d>b giver svingning væk fra ligevægten. Man kan selvfølgelig finde A, hvis man kender en begyndelsesbetingelse. Kender man p_ 0, er A= p_0-\bar{p}

Billedresultat for cobweb model

Man kan lege med andre forventede priser. Ovenfor tror griseavleren, prisen holder fra en periode til den næste og det synes lidt naivt… Måske ser producenterne  på prisen i de to seneste perioder og så får man en andenordens differensligning. Mere generelt er adaptive forventninger det, at man lærer af, hvor meget, man skød forkert i de seneste perioder. Der findes naturligvis mere generelle modeller og prisdannelse på andre markeder såsom ejendomsmarkedet.