Natural number logarithms #
This file defines two ℕ-valued analogs of the logarithm of n with base b:
log b n: Lower logarithm, or floor log. Greatestksuch thatb^k ≤ n.clog b n: Upper logarithm, or ceil log. Leastksuch thatn ≤ b^k.
These are interesting because, for 1 < b, Nat.log b and Nat.clog b are respectively right and
left adjoints of Nat.pow b. See pow_le_iff_le_log and le_pow_iff_clog_le.
Floor logarithm #
log b n, is the logarithm of natural number n in base b. It returns the largest k : ℕ
such that b^k ≤ n, so if b^k = n, it returns exactly k.
Equations
Instances For
pow b and log b (almost) form a Galois connection. See also Nat.pow_le_of_le_log and
Nat.le_log_of_pow_le for individual implications under weaker assumptions.
Ceil logarithm #
clog b n, is the upper logarithm of natural number n in base b. It returns the smallest
k : ℕ such that n ≤ b^k, so if b^k = n, it returns exactly k.