Lattia- ja kattofunktio
Lattia- ja kattofunktio ovat kaksi matematiikassa ja tietojenkäsittelytieteessä käytettävää funktiota, jotka muuntavat mielivaltaisen reaaliluvun kokonaisluvuksi.[1]
Nimet "katto" (ceiling) ja "lattia" (floor) sekä vakiintuneet merkintätavat esitti ensimmäisenä Kenneth E. Iverson vuonna 1962. [2]
Lattiafunktio
[muokkaa | muokkaa wikitekstiä]Lattiafunktio reaaliluvusta x, joka merkitään tai floor(x), palauttaa suurimman kokonaisluvun, joka on pienempi tai yhtäsuuri kuin x. Siis kaikille reaaliluvuille x pätee:
Esimerkiksi floor(2.9) = 2, floor(−2) = −2 ja floor(−2.3) = −3.
Positiivisilla luvuilla x funktiota floor(x) voidaan kutsua myös x:n kokonaislukuosaksi. Funktio (myös x mod 1) on x:n desimaaliosa.
Kattofunktio
[muokkaa | muokkaa wikitekstiä]Kattofunktio, jota merkitään tai ceil(x), palauttaa pienimmän kokonaisluvun, joka on suurempi tai yhtäsuuri kuin x. Siis kaikille reaaliluvuille x pätee:
Esimerkiksi ceil(2,3) = 3, ceil(2) = 2 ja ceil(−2.3) = −2.
Lattiafunktion ominaisuuksia
[muokkaa | muokkaa wikitekstiä]- Seuraava epäyhtälö on aina voimassa reaaliluvulle x :
- Kun x ja n ovat positiivisia lukuja,
- Lattiafunktio on idempotentti: .
- Mille tahansa kokonaisluvulle k ja reaaliluvulle x,
- Luvun x perinteinen pyöristäminen voidaan ilmaista tavalla: floor(x + 0,5)
- Lattiafunktio ei ole jatkuva, vaan puolijatkuva funktio. Vakiofunktiona sen derivaatta on nolla jokaisessa pisteessä jotka eivät ole kokonaislukuja.
- Jos x on reaaliluku ja n on kokonaisluku, pätee n ≤ x jos ja vain jos n ≤ floor(x).
- Reaalilukujen x, jotka eivät ole kokonaislukuja, lattiafunktio voidaan esittää Fourier-esityksenä:
- Jos m ja n ovat keskenään jaottomia lukuja, niin
- Jokaisen positiivisen kokonaisluvun k numeroiden määrä määritellään
Kattofunktion ominaisuuksia
[muokkaa | muokkaa wikitekstiä]- Voidaan näyttää, että
- sekä
- Jokaiselle kokonaisluvulle k pätee
Lähteet
[muokkaa | muokkaa wikitekstiä]- ↑ Ronald Graham, Donald Knuth ja Oren Patashnik. "Concrete Mathematics". Addison-Wesley, 1999. Chapter 3, "Integer Functions".
- ↑ Kenneth E. Iverson. "A Programming Language". Wiley, 1962.