找到所有质数小于n且在多项式时间内可行吗?

时间:2018-06-24 01:44:33

标签: algorithm complexity-theory np p

请记住,在复杂性理论上,我几乎是个菜鸟。

我正在阅读有关AKS Primality如何显示大小为n的数字在多项式时间内可以显示为质数或复合数的信息。鉴于此,在多项式时间内是否确实暗示找到所有小于数n的素数也是可行的,因此该算法在FP中运行。另外,这是否意味着在#P中不计算所有小于n的素数?

感谢任何想法或评论,谢谢!

1 个答案:

答案 0 :(得分:0)

好吧。 aks 说的是,数 n 的素性测试是 O(b^k),其中 b = log2(n) 并且 k 是某个整数。 因此,如果您的问题是列出从 1 到 n 的所有素数,那么 O(b^k) 也是如此。那么答案是否定的,因为小于 n 的素数的数量是 O(n/logn)。因此你需要 O(n/log(n) ) 来列出它们 如果您的问题是是否存在 k 使得列出所有小于 n 的素数的复杂度为 O(n^k)。 那么答案很简单,因为筛的最简单形式是 O(n^(1.5))。 如果有什么不清楚的请告诉我