Fibonaccitall

integer i den uendelige Fibonacci sekvensen

Fibonacci-tallene, også skrevet fibonaccitallene og kalt Fibonacci-rekken og liknende, er en serie tall der hvert ledd (fra og med det tredje) er lik summen av de to foregående og forholdet mellom to påfølgende tall er lik det gylne snitt. Tallrekka er oppkalt etter den italienske matematikeren Leonardo Fibonacci (cirka 1175–1235). Historisk er også navnet Lames tall brukt etter den franske matematikeren Gabrielle Lame. I matematikk er et fibonaccitall et tall i den uendelige følgen

Følgen kalles for Fibonacci-følgen. Bortsett fra de to første startverdiene 0 og 1 framkommer leddene i følgen ved å summere de to forrige leddene. Formelt kan dette uttrykkes som

Fibonaccitallene kan også finnes ved å ta utgangspunkt i Pascals trekant og forskyve alle radene slik at hver rad begynner én posisjon lengre til høyre enn raden over. Da vil den venstre delen se slik ut:

1
1 1
1 2 1
1 3 3 1
1 4 6 4 1
1 5 10 10 5 1
1 6 15 20 15
1 7 21 35
1 8 28
1 9
1
osv.
Σ 1   1   2   3   5   8   13   21   34   55   89 osv.

Summen (Σ) av hver enkelt rekke er et fibonaccitall.

Liste over fibonaccitall

rediger

De første fibonaccitallene er (følge A000045 i OEIS)

F0 F1 F2 F3 F4 F5 F6 F7 F8 F9 F10 F11 F12 F13 F14 F15 F16 F17 F18 F19 F20
0 1 1 2 3 5 8 13 21 34 55 89 144 233 377 610 987 1597 2584 4181 6765

Eksplisitt form for fibonaccitall

rediger

Fibonaccitallene kan uttrykkes eksplisitt, det vil si uten bruk av rekursjonsformelen. Den lukkete formen er kjent som Binets formel

 

selv om den ble først utledet av de Moivre. Her er φ forholdstallet i det gyldne snitt, definert ved

 

Forholdet mellom påfølgende fibonaccitall

rediger

Forholdet mellom to påfølgende fibonaccitall nærmer seg forholdstallet i det gylne snitt som grenseverdi:

 

Grenseverdien ble først påvist av Johannes Kepler.

Historie

rediger

Fibonaccitallene ble først beskrevet av den indiske matematikeren Pingala, født ca. år 500 f. Kr.[1][2] Han beskrev de grunnleggende idéene bak Fibonnacifølgen. I den moderne verden er likevel fenomenet best kjent på grunn oppdagelsene gjort av Leonardo Fibonacci (11701250), fra Pisa i Nord-Italia. Han beskrev økningen i en noe idealisert kaninbestand (antall par kaniner) etter n måneder hvis følgende kriteria blir møtt:

  • Den første måneden blir det bare født ett kaninpar,
  • Nyfødte kaninpar blir produktive fra og med den andre måneden og utover,
  • Innavl eksisterer ikke,
  • Hver måned produserer hvert kjønnsmodent par et nytt kaninpar, og
  • Kaninene dør aldri.

Formelen ovenfor passer til kaninproblemet fordi hvis vi i måneden n har a kaniner og i måneden n+1 har b kaniner, så vil vi i måneden n+2 ha a+b kaniner. Dette fordi vi vet at hver kanin hovedsakelig føder en ny kanin hver måned (eller egentlig at hvert par føder et annet par, men det er akkurat det samme) og det betyr at alle a kaniner føder et tilsvarende antall a kaniner som vil bli kjønnsmodne etter to måneder, som er nøyaktig i måneden n+2. Det er derfor vi har bestanden ved tidspunktet n+1 (som er b) pluss bestanden ved tidspunkt n (som er a).

Eksempler på Fibonacci-følgen finnes også i stor grad i naturen, for eksempel vil antall kronblader på blomster og antall blader ofte følge følgen.

I den norske artikkelen von Brasch mfl. 2013[3] vises det hvordan Fibonaccifølgen på to måter kan kobles til økonomifaget. For det første kan den kobles direkte til økonomiske teorier, som for eksempel en sentralbanks rentesetting, konsument- og investeringsadferd. For det andre kan den brukes som måleinstrument for å tallfeste økonomiske parametre. Den norske populærvitenskapelige fremstillingen bygger i hovedsak på resultatene i von Brasch mfl. 2012 [4].

Perl-script for utskrift av følgen

rediger
#!/usr/bin/perl

use bigint;

my ($i, $j) = (1, 1);
for (;;) {
    print("$i\n");
    ($i, $j) = ($i, $i+$j);
}

Java-kode for å beregne fibonaccitall nummer n

rediger
public static int fib(int n) {
    if (n < 2) {
        return n;
    } else {
        return fib(n - 1) + fib(n - 2);
    }	
}

Python-kode for å beregne fibonaccitall nummer n

rediger
def fib(n): return n if n in (0,1) else fib(n-1)+fib(n-2)

ActionScript-kode for å beregne fibonaccitall nummer n

rediger
public static function fib (n:uint):uint
{
	if (n <= 1 && n >= 0)
	{
		return n;
	}
			
	return fib (n  2) + fib (n  1);
}

PHP-kode for å beregne fibonaccitall nummer n

rediger
public function fib ($n)
{
	if ($n AND $n <= 1)
	{
		return $n;
	}
			
	return fib ($n  2) + fib ($n  1);
}

Referanser

rediger
  1. ^ Parmanand Singh. "Acharya Hemachandra and the (so called) Fibonacci Numbers". Math. Ed. Siwan, 20(1):28-30, 1986. ISSN 0047-6269]
  2. ^ Parmanand Singh,"The So-called Fibonacci numbers in ancient and medieval India." Historia Mathematica 12(3), 229–44, 1985.
  3. ^ Fibonaccirekken i økonomifaget, Samfunnsøkonomen nr 2, 2013 [1] Arkivert 27. oktober 2013 hos Wayback Machine.
  4. ^ Optimal Control and the Fibonacci Sequence, 2012, Journal of Optimization Theory and Applications, DOI: 10.1007/s10957-012-0061-2 [2]