8

According to "Constructible function", Wikipedia:

In complexity theory, a time-constructible function is a function f from natural numbers to natural numbers with the property that f(n) can be constructed from n by a Turing machine in the time of order f(n).

But $\log\left(n\right)$ doesn't map onto natural numbers but to real numbers.

Why is $\log\left(n\right)$ nevertheless a space-constructible function?

Nat
  • 1,351
  • 1
  • 10
  • 18
Maxim
  • 221
  • 1
  • 9

1 Answers1

12

Because when we write $\log n$ it's either in a context where it doesn't matter (e.g. Landau bounds) or with the implicit meaning of $\lfloor \log n \rfloor$ or $\lceil \log n \rceil$.

It certainly doesn't make sense to talk about constructible functions with real range, I would assume your source is talking about $\lfloor \log n \rfloor$ or $\lceil \log n \rceil$.

quicksort
  • 4,252
  • 1
  • 9
  • 21
  • but sir, the log n function disobeys the law of f(n) >=n of time constructble functions ,doesn't it? – kapil Jul 05 '20 at 10:06