在之前的问题中,我展示了(希望是正确的)这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 都是正的”。