在之前的问题中,我展示了(希望是正确的)这f(n) = O(g(n))意味着lg(f(n)) = O(lg(g(n)))有充分的条件(例如lg(g(n)) >= 1, f(n) >= 1, 和足够大的 n)。
现在,我需要证明或反驳这f(n) = O(g(n))意味着2^(f(n)) = O(2^g(n)))。直观地说,这是有道理的,所以我想我可以借助前面的定理来证明它。我注意到f(n)可以重写为just lg(2^f(n)),这让我很兴奋......这是我想要证明的双方的 log base 2,它简化了很多事情!g(n)lg(2^g(n))
但我很确定这行不通。仅仅因为lg(2^f(n)) = O(lg(2^g(n)))并不一定意味着2^f(n) = O(2^g(n))……这与前面的定理相反(它说“暗示”,而不是“当且仅当”)。
我是否需要以另一种方式尝试这个证明,或者我真的可以放弃我所拥有的(至少作为首发)?
**说到其他方式,也许我可以争论如何将 2 提高到g(n)“高于”的一些f(n)仍然会保持更高?这几乎感觉像是一个常识性的论点,但也许我错过了一些重要的东西..
**哦,哎呀!我忘了添加,f(n)并且g(n)是渐近积极的。根据我们的教科书定义,这意味着它们“对于所有足够大的 n 都是正的”。