К содержимому

o-малое: пренебрежимо меньший рост

Как в учебнике

Пусть $f(n)\ge0$ и $g(n)>0$ при достаточно больших натуральных $n$. Запись $f\in o(g)$ означает $\lim_{n\to\infty}f(n)/g(n)=0$. Сравнивается относительный размер функций, а не их абсолютные значения.

Равносильно: для любого $\varepsilon>0$ существует $n_0$, после которого $f(n)\le\varepsilon g(n)$. В отличие от O-большого, разрешённый множитель можно потребовать сколь угодно малым, сдвигая порог начала хвоста.

Например, $n\in o(n^2)$, поскольку отношение равно $1/n\to0$. Сама функция $n$ при этом не уменьшается и не стремится к нулю. Но $3n\notin o(n)$: отношение постоянно равно 3, хотя обычная верхняя оценка $3n\in O(n)$ верна.

Пренебрежимость здесь асимптотическая: на небольшом входе константы могут сделать меньший порядок численно значительным. Исключение слагаемого из конкретного расчёта требует проверки его относительного вклада на используемом масштабе.

Порог $n_0$ разрешено выбирать заново для каждого $\varepsilon$, но после выбора условие должно выполняться для всех больших $n$. Отдельные удачные значения отношения недостаточны. При положительных функциях умножение $f$ на любую фиксированную положительную константу сохраняет принадлежность $o(g)$: константа меняет требуемый порог, но нулевой предел отношения остаётся нулевым.

Определения и обозначения: Mathematics for Computer Science.

Связанные понятия: Предел последовательности, O-большое: верхняя оценка роста.

На пальцах

Расход может расти в деньгах и одновременно занимать всё меньшую долю бюджета. Для малого o эта доля должна стремиться к нулю и оставаться сколь угодно малой на всём достаточно далёком хвосте. Так линейное слагаемое теряется рядом с квадратом, хотя само вовсе не уменьшается. «Пренебрежимо» относится к сравнению масштабов: карманные расходы тоже бывают астрономическими у соответствующего хозяина, а один удачный месяц ещё не доказывает тенденцию.

Пример

В учебном сравнении $f(n)=n$ и $g(n)=n^2$ показаны обе величины и их отношение.

o-малое: пренебрежимо меньший рост

Вход 1

Функции пока равны, отношение равно 1.

Шаг 1 из 4: Вход 1

Все шаги текстом
  1. Вход 1

    Функции пока равны, отношение равно 1.

    f; g; отношение
    111текущий
  2. Вход 10

    Числитель вырос, но его доля уменьшилась до 0.1.

    f; g; отношение
    101000.1текущий
  3. Вход 100

    Линейная часть уже составляет одну сотую квадратичной.

    f; g; отношение
    100100000.01включён
  4. Любая доля

    Для заданного положительного допуска достаточно взять n больше его обратной величины.

    Допуск; достаточный порог
    0.001текущийn > 1000включён

Для требования «меньше одного процента» здесь нужно $1/n<0.01$, то есть $n>100$. В строке $n=100$ отношение равно ровно одному проценту, поэтому строгий допуск ещё не выполнен. Если числитель заменить на $1000n$, потребуется $n>100000$. Он всё равно имеет меньший порядок, но на умеренных входах может оказаться значительным. Именно поэтому утверждение о пределе не служит готовой численной оценкой на произвольном входе.

Критерий — предел отношения. Совместного роста или обычного O-ограничения для o-малого недостаточно.

Авторский текст этой бесплатной статьи опубликован по лицензии CC BY-NC-ND 4.0.

Предыдущая / следующая

Предыдущая
Асимптотическая эквивалентность
Следующая
O-большое: верхняя оценка роста
  • Асимптотическая эквивалентность

    Когда две функции отличаются на исчезающую относительную долю.

    Читать статью
    Алгоритмы
  • O-большое: верхняя оценка роста

    Как постоянный множитель и порог превращают сравнение функций в асимптотическую оценку.

    Читать статью
    Алгоритмы
  • Ω-большое: нижняя оценка роста

    Как доказать, что функция после некоторого порога не растёт медленнее выбранного масштаба.

    Читать статью
    Алгоритмы