1 确定间隔是否包含质数 确定自然数的间隔是否包含质数的复杂性是什么?Eratosthenes筛子的一个变体给出了算法,其中是区间的长度,在区间的起点隐藏了多对数因子;我们可以做得更好(单就而言)?大号〜大号Ø〜(大号)Ø〜(大号)\tilde O(L)大号大号L〜〜\sim大号大号L 14 cc.complexity-theory ds.algorithms nt.number-theory comp-number-theory
4 多项式共域的基数k表示-是否与上下文无关? 在Jeffrey Shallit的“自动机理论的第二门课程”的第4章中,以下问题被列为开放问题: 令p (n )p(n)p(n)是有理系数的多项式,使得对于所有。证明或证明中所有整数的基数k表示的语言是上下文无关的,且仅当为\ leqslant 1时。p (Ñ )∈ Ñp(n)∈Np(n) \in \mathbb{N} Ñ ∈ Ñn∈Nn \in \mathbb{N} { p (Ñ )| Ñ ⩾ 0 } {p(n)∣n⩾0}\{p(n) \mid n \geqslant 0\}p pp⩽ 1⩽1\leqslant 1 现在的状态如何(截至2018年10月)?被证明吗?那一些特殊情况呢? 14 fl.formal-languages nt.number-theory grammars
1 是否有用于计算GCD的量子NC算法? 从我对MathOverflow的一个问题的评论中,我 感觉到有关GCD位于与中的问题类似于有关整数分解的问题位于与的问题。。氮碳ñC\mathsf{NC}PP\mathsf{P}PP\mathsf{P}ñ PñP\mathsf{NP} 对于GCD,是否存在类似于“量子 ”算法的东西,因为存在用于整数分解的量子多项式时间()算法?氮碳ñC\mathsf{NC}乙Q P乙问P\mathsf{BQP} 相关问题:最大公约数(gcd)的复杂度 14 cc.complexity-theory quantum-computing dc.parallel-comp nt.number-theory comp-number-theory
2 成功解决的Collatz猜想的“最近”问题是什么? 我对已成功解决的Collatz猜想的“最近”(和“最复杂”)问题感兴趣(鄂尔多斯曾著名地说过“数学尚未解决此类问题”)。已经证明,一类“类似Colatz的”问题是无法确定的。但是,诸如Hofstadter的MIU游戏(已解决,但可以承认更多是玩具问题)之类的模糊问题确实可以解决或已经解决。 相关问题 Collatz猜想与语法/自动机 14 reference-request open-problem nt.number-theory halting-problem computability
1 这个数论问题属于哪个复杂度类别? '给出,有, '是。 X ,ÿ ∈ Ñ一个X 2 + b Ŷ = Ç Ñ Pa,b,c∈Na,b,c∈Na,b,c\in\Bbb Nx,y∈Nx,y∈Nx,y\in\Bbb Nax2+by=cax2+by=cax^2+by=cNPNP\mathsf{NP} 给定,,属于哪个复杂度类? X ,ÿ ∈ Ñ一个X 2 + b Ŷ 2 = C ^a,b,c∈Na,b,c∈Na,b,c\in\Bbb Nx,y∈Nx,y∈Nx,y\in\Bbb Nax2+by2=cax2+by2=cax^2+by^2=c 12 ds.algorithms complexity-classes reductions nt.number-theory np-complete
2 什么是除数最有效的算法? aaabbbaaabbbaaabbbO(mlogmloglogm)O(mlogmloglogm)O(m\log m\log\log m)mmmmax{a,b}max{a,b}\max\{a,b\}Ω(mlogmloglogm)Ω(mlogmloglogm)\Omega(m\log m\log\log m)这个问题的下限? 感谢和问候,如果这是一个幼稚的问题,我们深表歉意。 12 time-complexity lower-bounds nt.number-theory primes
2 成员资格的复杂性-有限的阿贝尔群的测试 考虑以下阿贝尔亚组成员资格测试问题。 输入: 具有任意大的有限阿贝尔群并具有任意大的。G=Zd1×Zd1…×ZdmG=Zd1×Zd1…×ZdmG=\mathbb{Z}_{d_1}\times\mathbb{Z}_{d_1}\ldots\times\mathbb{Z}_{d_m}didid_i 子组的生成集。{h1,…,hn}{h1,…,hn}\lbrace h_1,\ldots,h_n\rbraceH⊂GH⊂GH\subset G 的元素。b∈Gb∈Gb\in G 输出:如果 'yes',其他地方为'no'。b∈Hb∈Hb\in H 问题:可以在传统计算机中有效解决此问题吗?如果在传统图灵机的通常意义上使用时间和内存资源,我认为该算法有效。注意,对于任何子组,我们都可以假设。此问题的输入大小为。O(polylog|G|)O(polylog|G|)O(\text{polylog}|G|)n=O(log|G|)n=O(log|G|)n= O(\log|G|)HHH⌈log|G|⌉⌈log|G|⌉\lceil \log|G|\rceil 有点动力。从直觉上看,似乎可以使用算法来解决同余线性系统或线性双色子方程组(请参阅下文)。但是,似乎在使用整数进行计算时会使用不同的计算效率概念,例如:强多项式时间与弱多项式时间,代数与位复杂度。我不是这些定义的专家,我找不到明显解决此问题的参考。 更新:问题的答案是“是”。 在一个较晚的答案中,我提出了一种基于史密斯范式的方法,该方法对于具有规定格式的任何组都是有效的。 Blondin的答案表明,在所有都为且的形式的特殊情况下是“微小整数”,那么问题就属于。微小的整数随输入大小呈指数减小。ð 我 = Ñ Ë 我我 Ñ 我,ë 我NC 3 ⊂ P ø (日志的日志|甲|)didid_idi=Neiidi=Nieid_i= N_i^{e_i}Ni,eiNi,eiN_i, e_iNC3⊂PNC3⊂P\text{NC}^3\subset \text{P}O(loglog|A|)O(loglog|A|)O(\log\log|A|) 在我的回答中,我使用“正交子组”来解决此问题,但是我认为这不是必需的。将来,我将基于我正在阅读的连续梯形表格方法,尝试提供更直接的答案。 一些可能的方法 该问题与求解全等线性系统和/或线性双色子方程密切相关。为了简单起见,我简要总结了这些连接。 以为矩阵,其生成集的元素 。以下方程组{ h 1,… ,h n }AAA{h1,…,hn}{h1,…,hn}\lbrace h_1, \ldots, h_n \rbrace AxT=⎛⎝⎜⎜⎜⎜h1(1)h1(2)⋮h1(m)h2(1)h2(2)⋮h2(m)……⋯…hn(1)hn(2)⋮hn(m)⎞⎠⎟⎟⎟⎟⎛⎝⎜⎜⎜⎜x(1)x(2)⋮x(n)⎞⎠⎟⎟⎟⎟=⎛⎝⎜⎜⎜⎜b(1)b(2)⋮b(m)⎞⎠⎟⎟⎟⎟modd1modd2⋮moddmAxT=(h1(1)h2(1)…hn(1)h1(2)h2(2)…hn(2)⋮⋮⋯⋮h1(m)h2(m)…hn(m))(x(1)x(2)⋮x(n))=(b(1)b(2)⋮b(m))modd1modd2⋮moddm Ax^{T}= … 12 ds.algorithms time-complexity matrices nt.number-theory gr.group-theory
3 使用de Bruijn序列找到整数的 肖恩·安德森发表位摆弄黑客包含埃里克·科尔的算法来找到一个的位整数在的操作与乘法和查找。Ñ v ø (LG (Ñ ))⌈log2v⌉⌈log2v⌉\lceil\log_2 v \rceilNNNvvvO(lg(N))O(lg(N))O(\lg(N)) 该算法依赖于De Bruijn序列中的“魔术”数。谁能解释这里使用的序列的基本数学特性? uint32_t v; // find the log base 2 of 32-bit v int r; // result goes here static const int MultiplyDeBruijnBitPosition[32] = { 0, 9, 1, 10, 13, 21, 2, 29, 11, 14, 16, 18, 22, 25, 3, 30, 8, … 11 nt.number-theory comp-number-theory
3 梅林可以说服亚瑟多少钱吗? 梅林,谁拥有无限的计算资源,希望说服亚瑟 m|∑p≤N, p primepkm|∑p≤N, p primepkm|\sum_{p\le N,\ p\text{ prime}}p^k 为(N,m,k)(N,m,k)(N,m,k)与k=O(logN)k=O(logN)k=O(\log N)和m=O(N).m=O(N).m=O(N). 以直接方式(模取幂和加法)计算此总和需要时间N(loglogN)2+o(1)N(loglogN)2+o(1)N(\log\log N)^{2+o(1)}基于FFT的乘法。*但是Arthur只能执行O(N)O(N)O(N)运算。 (符号,与早期版本的这个问题的兼容性:让总和等于mαmαm\alpha ;然后,问题是是否αα\alpha是整数。) 梅林可以用长度为的字符串说服亚瑟O(N)O(N)O(N)吗?如果不是,他是否可以用交互式证明说服亚瑟(总交流,当然必须是O(N)O(N)O(N))?如果是这样,Merlin可以使用长度为的字符串o(N)o(N)o(N)吗?亚瑟可以利用o(N)o(N)o(N)时间吗? Arthur无法使用不确定性或其他特殊工具(量子方法,Merlin以外的Oracle等),但是如果需要,可以使用O(N)O(N)O(N)空间。当然,亚瑟不必直接计算总和,他只需要确信给定的三元组(N,m,k)会使方程为真或为假。 注意,与k=0k=0k=0它可以计算在时间的总和O(N1/2+ε)O(N1/2+ε)O(N^{1/2+\varepsilon})使用Lagarias-奥德里兹科方法。对于k>0k>0k>0该和是超线性的,因此无法直接存储(没有(例如,模块归约)),但是尚不清楚是否存在快速算法。 除了通过直接加电和加法运算之外,我还将对计算总和(模数或其他形式)的任何算法感兴趣。 * 要计算的数字,每次计算的时间为lg k log N (log log N )1 + o (1 ) = log N (log log N )2 + o (1 )。N/logNN/logNN/\log NlgklogN(loglogN)1+o(1)=logN(loglogN)2+o(1)lgklogN(loglogN)1+o(1)=logN(loglogN)2+o(1)\lg k\log N(\log\log N)^{1+o(1)}=\log N(\log\log N)^{2+o(1)} 11 cc.complexity-theory ds.algorithms time-complexity interactive-proofs nt.number-theory
1 扩展欧几里得算法中的“溢出” 抱歉,如果我误会问这个问题的地方(也许我应该去stackoverflow.com/mathoverflow.net?)。 我想知道是否有证据证明在评估扩展的欧几里得算法时,Bézout的系数(即s和t的身份为 + bt = gcd(a,b))不会超过一些合理的值(取决于a,b,我猜)。特别是在某些通用编程语言上的实现,我对程序的溢出正确性感兴趣。 确切地说,我可以提到我使用Victor Shoup对算法的描述(可从他的主页上免费获得他的书中的“ 4.2 数论和代数的计算导论 ”中的4.2 )。 11 ds.algorithms nt.number-theory
2 有效地获取N位!? 给定和,就有可能获得的第个位(或任何小基数的位)在时间/空间中,其中是和y中的多项式函数?M M N !O (p (l n (N ),l n (M )))p (x ,y )xññN中号中号M中号中号Mñ!ñ!N!O(p(ln(N),ln(M)))Ø(p(升ñ(ñ),升ñ(中号)))O( p( ln(N), ln(M) ) )p(x,y)p(X,ÿ)p(x, y)xXxyÿy 即鉴于,中号= 2 μ(与Ñ,中号∈ Ž),发现位2 μ的(2 η)!以O (p (η ,μ ))为单位。N=2ηñ=2ηN = 2^\etaM=2μ中号=2μM = 2^\muNñNM∈Z中号∈žM \in \mathbb{Z}2μ2μ2^\mu(2η)!(2η)!(2^\eta)!O(p(η,μ))O(p(η,μ))O( p(\eta, \mu) ) 注意:我已经在此处的 mathoverflow.net上询问了此信息,但尚未得到任何答案,因此我已交叉发布。 从另一站点的评论中,吉恩·科普(Gene Kopp)指出,人们可以通过使用斯特林近似进行模算术和高阶位来有效地计算低阶位,所以这个问题的确是“一个人如何有效地计算中阶位?” 。 11 ds.algorithms nt.number-theory
1 比较整数列表的两个乘积? 假设我有两个经度正整数的列表,并且取每个列表的所有元素的乘积。确定哪个产品更大的最佳方法是什么? 当然,我可以简单地计算每个乘积,但是我希望有一种更有效的方法,因为乘积中的位数将随着项的数量线性增加,因此整个计算是二次的。 如果我要添加而不是相乘,则可以使用“压缩策略”,即从第一个列表中增量添加项,然后从第二个列表中减去,从而避免了计算(大)总和的需求。产品的类似技术将是对条目的对数求和,但是现在的问题是,计算对数需要使用不精确的算法。除非有某种方法可以证明数值误差无关紧要? 10 time-complexity nt.number-theory
2 子集编号 修复。对于足够大的,我们想用正整数标记大小为的的所有子集。我们希望该标签满足以下属性:有一组整数,stk≥5k≥5k\ge5nnn{1..n}{1..n}\{1..n\}n/kn/kn/k{1...T}{1...T}\{1...T\}SSS 如果大小为个子集不相交(即这些集合的并集形成所有集合),则它们的标签之和在。kkkn/kn/kn/k{1..n}{1..n}\{1..n\}SSS 否则,它们的标签之和不在。SSS 是否存在和标签st?k≥5k≥5k\ge5T⋅|S|=O(1.99n)T⋅|S|=O(1.99n)T\cdot|S|=O(1.99^n) 例如,对于任何我们可以按以下方式标记子集。 ,每个子集具有在他们的比特数:第一比特等于且仅当子集包含,第二位等于且仅当子集包含等可以很容易地看到,仅包含一个元素。但是这里。我们可以做得更好吗?kkkT=2nT=2nT=2^nnnn111111111222SSS2n−12n−12^n-1T⋅|S|=Θ(2n)T⋅|S|=Θ(2n)T\cdot|S|=\Theta(2^n) 10 ds.algorithms graph-algorithms it.information-theory nt.number-theory exp-time-algorithms
1 将分解质数乘积还原为整数乘积(在平均情况下) 我的问题是可以基于分解的难度构造的各种候选单向函数的安全性是否相等。 假设问题 分解:[给定随机素数P ,Q < 2 n的,找到P,Q。]ñ= P问N=PQN = PQP,Q < 2ñP,Q<2nP, Q < 2^nPPP问QQ 不能在多项式时间内以不可忽略的概率求解,函数 优先:[给出位串作为输入,使用x作为种子来生成两个随机质数P和Q(其中P,Q的长度仅比x的长度小)。然后输出P Q。 ]XxxXxxPPPQQQPPPQQQxxxPQPQPQ 可以证明是单向的。 另一个候选单向函数是 整数-整数:[给出随机整数作为输入,输出A B。 ]A,B<2nA,B<2nA, B < 2^nABABA B 与PRIME-MULT相比,INTEGER-MULT具有更易于定义的优点。(尤其要注意,在PRIME-MULT中,种子无法生成素数的P ,Q(尽管可以忽略不计)。)xxxP,QP,QP, Q 至少在两个不同的地方(Arora-Barak,计算复杂性,第177页,脚注2)和(Vadhan的《密码学概论》讲义)中,提到INTEGER-MULT是假设平均分解系数的单向方法。但是,这两个都没有给出这个事实的原因或参考。 所以问题是: 我们如何才能将多项式时间因式分解成不可忽略的概率,而将INTEGER-MULT转化成不可忽略的概率呢?N=PQN=PQN = PQ 这是一种可能的方法(我们将看到它不起作用!):给定,将N乘以(尽管是多项式地)更长的随机整数A '来获得A = N A '。这个想法是,A '太大,以至于它有许多大小近似等于P ,Q的素数,因此P ,Q不会在A的素数中“脱颖而出” 。则A在给定范围内近似具有均匀随机整数的分布(例如[ 0N=PQN=PQN = PQNNNA′A′A'A=NA′A=NA′A = … 10 reference-request cr.crypto-security nt.number-theory average-case-complexity one-way-function
1 计算幂之间距离的算法 给定互质,您可以快速计算a,ba,ba, bminx,y>0|ax−by|minx,y>0|ax−by| \min_{x, y > 0} |a^x - b^y| 在此,x,yx,yx, y是整数。显然,使x=y=0x=y=0x = y = 0给出了一个没有意思的答案;通常,这些权力能达到多近的距离?另外,我们如何快速计算最小化x,yx,yx, y? 9 ds.algorithms randomized-algorithms nt.number-theory comp-number-theory