Я верю, что это утверждение верно. Вот доказательство.
Предположим, что f (n) = Ω (n). Это означает, что существуют константы c, n 0 , такие что
f (n) ≥ cn для любого n ≥ n 0 . (1)
Аналогично, поскольку f (g (n)) = O (n), мы знаем, что существуют такие константы d, n 1 , что
f (g (n)) ≤ dn для любого n ≥ n 1 . (2)
Теперь есть два варианта. Во-первых, g (n) = O (1), и в этом случае мы закончили, потому что тогда g (n) равно O (n). Второй случай состоит в том, что g (n) ≠ O (1), и в этом случае g растет без ограничения. Это означает, что существует n 2 , для которого g (n 2 ) ≥ n 0 (g растет без ограничений, поэтому в итоге он обгоняет n 0 ) и n 2 ≥ n 1 (просто выберите большое n 2 ).
Теперь выберите любое n ≥ п 2 . Поскольку n ≥ n 2 , имеем g (n) ≥ g (n 2 ) ≥ n 0 , поскольку g монотонно возрастает, и, следовательно, ( 1) мы видим, что
f (g (n)) ≥ cg (n).
, поскольку n ≥ n 2 ≥ n 1 , мы можем объединить это неравенство с уравнением (2), чтобы увидеть, что
dn ≥f (g (n)) ≥ cg (n).
так, в частности, имеем, что
g (n) ≤ (d / c) n
для всех n ≥ n 2 , поэтому g (n) = O (n).