Sistem de numere Fibonacci - un sistem de numere mixt pentru numere întregi bazat pe numerele Fibonacci F 2 =1, F 3 =2, F 4 =3, F 5 =5, F 6 =8 etc.
Număr | Înregistrarea în FSS |
Codul Fibonacci |
---|---|---|
0 | 0 …… 0 | |
F 2 \u003d 1 | unu | 1 1 |
F 3 \u003d 2 | zece | 01 1 |
F4 = 3 | 100 | 001 1 |
patru | 101 | 101 1 |
F5 = 5 | 1000 | 0001 1 |
6 | 1001 | 1001 1 |
7 | 1010 | 0101 1 |
F 6 \u003d 8 | 10000 | 00001 1 |
… | ||
F n - 1 | 101010 … | … 010101 1 |
F n | 10 …… 00 | 00 …… 01 1 |
F n + 1 | 10 …… 01 | 10 …… 01 1 |
Orice număr întreg nenegativ poate fi reprezentat în mod unic printr-o succesiune de biți …ε k …ε 4 ε 3 ε 2 ( ) astfel încât și secvența {ε k } conține doar un număr finit de 1 și nu are perechi de 1 învecinați : . Cu excepția ultimei proprietăți, această reprezentare este similară cu sistemul de numere binar .
Se bazează pe teorema Zeckendorf [1] — orice număr întreg nenegativ este reprezentabil în mod unic ca suma unui set de numere Fibonacci distincte în perechi cu indici mai mari decât unu, care nu conține perechi de numere Fibonacci învecinate.
Dovada existenței este ușor de făcut prin inducție . Orice număr întreg va cădea în decalajul dintre două numere Fibonacci adiacente, adică pentru unele , inegalitatea este adevărată: . Astfel, , unde , astfel încât extinderea numărului să nu mai conțină termenul .
Se crede că unele soiuri de yupana ( abacus Inca ) au folosit sistemul numeric Fibonacci pentru a minimiza numărul de boabe necesare calculelor [2] .
În teoria informațieiPe baza sistemului de numere Fibonacci, este construit codul Fibonacci (codificare) - un cod universal pentru numere naturale (1, 2, 3 ...), folosind secvențe de biți . Deoarece combinația 11 este interzisă în sistemul numeric Fibonacci, aceasta poate fi folosită ca marcator de sfârșit de înregistrare.
Pentru a compila codul Fibonacci prin scrierea unui număr în sistemul numeric Fibonacci, ar trebui să rescrieți numerele în ordine inversă (astfel încât cea mai mare unitate să fie ultimul caracter) și să adăugați din nou 1 la sfârșit (vezi tabelul). Adică, secvența de cod arată astfel:
ε 2 ε 3 …ε n 1 ,unde n este numărul cifrei celei mai semnificative cu unu.
Adăugarea numerelor în sistemele de numere poziționale se realizează folosind carry , care vă permite să eliminați consecințele depășirii biților. De exemplu, în binar: 01 + 01 = 0 2 = 10 .
În sistemul numeric Fibonacci, situația este mai complicată:
Număr | Reprezentarea prin grade |
---|---|
unu | unu |
2 | 10.01 |
3 | 100.01 |
patru | 101.01 |
5 | 1000,1001 |
6 | 1010,0001 |
7 | 10000,0001 |
opt | 10001,0001 |
9 | 10010.0101 |
zece | 10100.0101 |
unsprezece | 10101.0101 |
12 | 100000,101001 |
13 | 100010.001001 |
paisprezece | 100100.001001 |
Un dispozitiv similar are un sistem numeric pozițional cu o bază irațională egală cu raportul de aur .
Orice număr real x din intervalul [0,1] poate fi extins într- o serie în termeni de puteri negative ale raportului de aur:
unde are aceeași proprietate a absenței celor vecine. Coeficienții se găsesc comparând succesiv x cu raportul de aur al segmentului [0,1], scăzând (dacă ) și înmulțind cu . Din aceasta este ușor de observat că orice număr real nenegativ poate fi descompus:
unde N este astfel încât . Desigur, ar trebui să presupunem că pentru toți .
Aceste formule sunt complet similare cu formulele pentru sistemele poziționale convenționale cu baze întregi. Rezultă că orice număr întreg nenegativ (și, mai general, orice element nenegativ al inelului ) are o reprezentare doar cu un număr finit de unități, adică ca o sumă finită a puterilor nerepetabile ale puterii de aur. raport. [3]
Analogia dintre numerele Fibonacci și puterile secțiunii de aur se bazează pe aceeași formă de identități:
permiţând eliminarea unităţilor învecinate. Nu există o legătură directă între reprezentarea numerelor naturale în sistemul secțiunii de aur și în sistemul Fibonacci.
Regulile de adăugare sunt similare cu cele prezentate mai sus , cu modificarea că transferul către cifrele inferioare se extinde fără restricții. În acest sistem de numere se poate efectua și înmulțirea.
Pentru numere întregi și se poate defini „înmulțirea” [4]
care este analog cu înmulțirea numerelor în sistemul binar .
Desigur, această operație nu este o înmulțire reală a numerelor și este exprimată prin formula: [5]
unde este partea întreagă a , este raportul de aur .
Această operație are asociativitate , care a fost observată pentru prima dată de Donald Knuth [6] . O altă „lucrare” care diferă doar printr-o deplasare cu două cifre nu mai este asociativă.