Search code examples
nonlinear-functionslittle-o

Does f(x) = 2*x + 1 belong to $o(X)$?


Suppose a function f: R -> R defined as f(x) = mx + c for some m, c > 0 and x in R. Does f(x) belong to o(x)?

If the answer is "NO", can we conclude that o(x) does not properly contain the set of sub-linear functions?

The reason I'm asking this: It is easy to see that f(x) is sub-linear because f(x1) + f(x2) = mx1 + c + mx2 + c > m(x1+x2) + c = f(x1+x2). But lim x-> infinity f(x)/x = 2. In this sense f(x) is not in o(x). But o(x) represents the set of sub linear functions. That's where my confusion comes from.


Solution

  • No, f(x) = 2x + 1 ∉ o(x).

    I think your confusion comes from the definition of sublinear. Linear algebra and computer science use two different meanings here:

    • In linear algebra, sublinear functions are a generalization of linear functions, i.e. every linear function is a sublinear function. As you have shown in the question, your f(x) satisfies the subadditivity criterion.

    • In computer science, linear and sublinear describe the asymptotic behavior. A sublinear function is a function which grows slower than every linear function, given a large enough input. Thus, no linear function is a sublinear function.

    Thus, your f(x) is sublinear w.r.t. linear algebra, but it is not sublinear w.r.t. computer science.