> Big O notation is a mathematical notation that describes the limiting behavior of a function when the argument tends towards a particular value or infinity.
I.e., it's an asymptotic upper bound.
It's also interesting to compare with Ω() (Big Omega — asymptotic lower bound) and Θ() (Big Theta) (big-O AND big-Omega): https://en.wikipedia.org/wiki/Big_O_notation#Family_of_Bachm...
A good textbook on this subject is Introduction to Algorithms: https://www.amazon.com/dp/0262033844/ .
If you want to be puritan the only fault I see in my definition is instead of using a generic function I assumed it's linear function - but that's for explaining the colloquial use.