理论计算机科学

理论计算机科学家和相关领域的研究人员的问答


2
考官的问题(SAT决策实例/答案的统一生成)
该课程的助教已设法编写了一个程序(确定性地)生成困难的考试题。现在,她想编写一个生成相应答案的程序。在考官的问题询问这是否是总是可能的; 在考官的猜想指出,假设,,它是不是:想出一个问题往往比想出他们的解决方案更容易。P≠NPP≠NP\mathsf{P} \neq \mathsf{NP} 更正式地说,令为确定性图灵机,在输入1 n上,它在多项式时间内生成大小为n的布尔公式。我想知道对于所有这样的M,是否存在确定性多项式时间图灵机M ',如果M (1 n)具有令人满意的赋值,则在输入1 n上输出“ 1 ”,否则输出“ 0 ” 。MMM1n1n1^nnnnMMMM′M′M'1n1n1^n111M(1n)M(1n)M(1^n)000 假设,是否已经提出或回答了这个问题?如果未回答,那么可能会对结果产生什么样的附加假设(例如单向函数?)?除上述任何一项外,我的“猜想”是“应答” TM并不总是存在,但是您的直觉是什么?P≠NPP≠NP\mathsf{P} \neq \mathsf{NP} 谢谢!

1
计算图形平均距离的复杂性
让a d(G)一种d(G)\rm{ad}(G)是一个连通图的平均距离摹。G。G. 计算单程a d(G)一种d(G)\rm{ad}(G)是通过累加的元素D (G ),d(G),D(G),的距离矩阵GGG并适当地缩放的总和。 如果输出图是一棵树,则已知可以在线性时间内计算平均距离(请参见B.Mohar,T.Pisanski-如何计算图的Wiener指数)。对于具有有限树宽的图,似乎也有快速算法。 因此,一个有趣的问题是知道是否有帮助。D (G )。d(G)。D(G).换一种说法 是否有可能来计算a d(G)一种d(G)\rm{ad}(G)子二次时间? 我有兴趣知道的是,关于为什么不可能实现这一点,是否存在理论下限。

1
见证数学软件
与许多人一样,我是Mathematica和Maple等数学软件的热衷用户。但是,对于这样的软件在没有警告的情况下给您错误答案的许多情况,我感到越来越沮丧。在执行许多其他示例中的从简单总和到优化的各种操作时,可能会发生这种情况。 我一直在想如何解决这个严重的问题。所需要的是允许用户验证给出的答案的正确性的某种方式,以使他们对被告知的内容具有一定的信心。如果您想从数学同事那里获得解决方案,她/他可能会坐下来向您展示他们的工作。但是,这在大多数情况下对于计算机而言是不可行的。相反,计算机能否为您提供一个简单且易于检查的见证人,以证明他们答案的正确性?检查可能必须由计算机完成,但是希望检查检查算法比首先检查产生证人的检查算法容易得多。什么时候可行,如何将其正式化? 总而言之,我的问题如下。 至少在理论上,数学软件是否可以提供简短的可检验证据以及您所要求的答案? 我们可以立即执行此操作的一个简单案例是将整数当然分解或分解为许多经典的NP完全问题(例如哈密顿回路等)。

1
比特币加密安全吗
我正在尝试在计算密码安全性的背景下理解比特币协议。 问题是对有关比特币密码学文章基础的参考要求。 我的第一个问题是什么抽象的加密协议比特币试图实现?我们在捕获比特币的密码学中是否有电子货币/数字货币的定义?安全电子货币有哪些安全要求? 如果答案是肯定的,那么像eBay这样的公司将提供一种集中化的电子汇款方式。考虑去中心化的电子货币是否会改变电子货币的抽象密码协议的定义?还是只是在没有可信任的第三方的模型中使用相同的概念? 如果对手的计算能力比其他(诚实)参与方的计算能力强,则对手可以破坏协议吗? 假设我们有各方为加上对手联网和对手都想打破Bitcoin的协议。为简单起见,我们假设网络图是而对手并不控制网络,而只是像其他方一样的一方。在这种简单情况下,关于协议安全性的确切数学主张是什么?ññnP一世P一世P_i1个≤ 我≤ Ñ1个≤一世≤ñ1 \leq i \leq n一种一种Aķn + 1ķñ+1个K_{n+1}

2
欺骗
我有一些关于欺骗恒定深度电路的问题。 众所周知,独立性对于愚弄深度为d的A C 0电路是必要的,其中n是输入的大小。如何证明这一点?日志Ø (d)(n )logO(d)⁡(n)\log^{O(d)}(n)一ç0AC0AC^0dddñnn 由于上述事实是正确的,因此任何欺骗深度为d的电路的伪随机发生器都必须具有种子长度l = Ω (log d(n )),这意味着不能期望证明R A C 0 = A通过PRG的C 0。我相信R A C 0 吗?= A C 0仍然是一个悬而未决的问题,因此这意味着人们必须使用PRG以外的技术来证明R A C一ç0AC0AC^0dddl=Ω(logd(n))l=Ω(logd⁡(n))l = \Omega(\log^d(n))RAC0=AC0RAC0=AC0RAC^0 = AC^0RAC0=?AC0RAC0=?AC0RAC^0 \stackrel{?}{=} AC^0。我觉得这很奇怪,因为至少在 P情况下?= B P P,我们认为PRG本质上是回答这个问题的唯一方法。RAC0=AC0RAC0=AC0RAC^0 = AC^0P=?BPPP=?BPPP \stackrel{?}{=} BPP 我想我在这里确实缺少一些基本知识。

1
数据库聚合如何形成一个monoid?
在cs.stackexchange上,我询问了github上的algebird scala库,推测他们为什么可能需要抽象的代数包。 github页面有一些线索: Monoid的实现用于有趣的近似算法,例如Bloom过滤器,HyperLogLog和CountMinSketch。这些使您可以像想数字一样思考这些复杂的操作,然后将它们加到hadoop或在线中以生成强大的统计信息和分析数据。 并在GitHub页面的另一部分中: 它最初是作为Scalding的Matrix API的一部分开发的,其中矩阵的值是Monoids,Groups或Rings的元素。随后,很明显,该代码在Scalding和Twitter的其他项目中具有更广泛的应用。 甚至Twitter的Oskar Boykin也赞叹道: 主要的答案是,通过利用半群结构,我们可以构建可以正确并行化的系统,而无需了解底层操作(用户有望实现关联性)。 通过使用Monoid,我们可以利用稀疏性(我们处理许多稀疏矩阵,其中在某些Monoid中几乎所有值都是零)。 通过使用Rings,我们可以对数字以外的东西进行矩阵乘法(有时我们做过)。 algebird项目本身(以及发行历史)非常清楚地解释了这里发生的事情:我们正在构建许多用于聚合大型数据集的算法,并且利用操作的结构使我们在系统方面取得了成功(这通常是尝试在1000个节点上生产算法时的痛点)。 为任何Semigroup / Monoid / Group / Ring解决一次系统问题,然后您可以插入任何算法,而无需考虑Memcache,Hadoop,Storm等。 怎么样Bloom filters/ hyperloglog/ countminsketch同样的数字? 数据库聚合如何具有单调结构? 这个半身像是什么样的?他们曾经有过小组组织吗? 参考文献会有所帮助。

4
两个单词之间的最短编辑次数
我正在寻找一种数据结构和一种算法来计算将一个单词转换为另一个单词所需的最小更改数量,假设两个单词作为输入,其中唯一允许的更改是 在其中一个末端添加一个字母(例如AB-> ABC), 复制并连接整个单词(例如,ABC-> ABCABC), 切成两个词(重复动作的对偶,ABCABC-> ABC + ABC), 删除字母之一(例如,ABC-> AC),然后 重复字母之一(例如,ABC-> ABBC)。 例如,从ABC到BCBC的最小移动顺序是ABC-> BC(删除A)-> BCBC(重复)。 我没有计算机科学背景。也许这是一个众所周知的问题,但是我的Google搜索没有给我任何帮助。 您知道一些相关的,定义明确的问题吗? 编辑:正如安东尼·拉巴雷(Anthony Labarre)的答案所建议的那样,我阅读了一些有关摆球置换/排列问题的论文,该问题与上述问题相似。有人知道这个问题吗?这相关吗?

2
在超立方体上找到两组点之间最接近的对
鉴于的两个子集维超立方体(即,),我寻找以检索点的算法 ST的汉明距离(或在超立方体-distance)是最小的。仅检查每对的天真算法时间,还有更好的结果吗?中号,Ñ ⊆ { 0 ,1 } d米∈ 中号,Ñ ∈ Ñ 大号1 d ħ(米,Ñ )| M | ⋅ | N | ⋅ ddddM,N⊆{0,1}d中号,ñ⊆{0,1个}dM, N \subseteq \{0,1\}^dm∈M,n∈N米∈中号,ñ∈ñm\in M, n\in NL1大号1个L_1dH(m,n)dH(米,ñ)d_H(m,n)|M|⋅|N|⋅d|中号|⋅|ñ|⋅d|M|\cdot |N| \cdot d 为简单起见,我们可以假设。|M|=|N|=d|中号|=|ñ|=d|M|=|N|=d

1
“边缘或孤立顶点”删除游戏的获胜策略
这个在图表上玩的完美信息游戏是否已知/研究过? 给定一个图G=(V,E)G=(V,E)G= (V,E),两个玩家交替选择一条边或一个孤立的节点。如果玩家选择边缘e=(u,v)e=(u,v)e = (u,v)则两个节点uuu和vvv及其入射边缘将被删除。如果玩家选择一个孤立的节点,则删除该节点。第一个无法移动的玩家将输掉比赛。 寻找获胜者的复杂性是什么? 是否有提及类似游戏的内容?

3
计算机发现的证据
1996年,计算机解决了一个长期存在的开放性问题。即罗宾代数和布尔代数相同。该证明是由自动定理证明者发现的。 此外,四色定理的已知证明包含计算机生成的成分。 这个问题的目的是到被(完全或部分)由计算机发现列表样张(是否唯一已知的证据或发现一个用于第一时间)。

1
存在哪些用于构造DFA的算法,该DFA可以识别给定正则表达式描述的语言?
我的所有教科书都使用相同的算法来生成给定正则表达式的DFA:首先,制作一个可以识别正则表达式语言的NFA,然后使用子集(也称为“ powerset”)构造将NFA转换为等效的DFA( (可选)最小化DFA)。我也曾经听过一位教授提到其他算法。有人知道吗?也许是直接从正则表达式转换为DFA而没有中间NFA的代码?

4
带有数值数据的强NP难问题列表
我正在寻找解决NP问题的方法。到目前为止,我发现了以下问题: 3分区问题 装箱问题 数值3维匹配 TSP 没有数值数据的任何NP完全问题,例如,可满足性,哈密顿循环,三色性。 有谁知道一个强烈的NP难题的清单? 如果没有,让我们在这里构建一个。您是否知道其他对NP有严格要求的数值数据问题? 我对加权图上的强NP难问题特别感兴趣。

4
我想知道是否存在以下问题的下限(就样本复杂性而言): 给定示例oracle访问{ 1 ,… ,n }上的两个未知分布D1D1D_1,,测试(whp)是否D2D2D_2{1,…,n}{1,…,n}\{1,\dots,n\} D1=D2D1=D2D_1=D_2 或d2(D1,D2)=∥D1−D2∥2=∑ni=1(D1(i)−D2(i))2−−−−−−−−−−−−−−−−−−√≥ϵd2⁡(D1,D2)=‖D1−D2‖2=∑i=1n(D1(i)−D2(i))2≥ϵ\operatorname{d_2}(D_1,D_2)=\lVert D_1-D_2\rVert_2 = \sqrt{\sum_{i=1}^n\left(D_1(i)-D_2(i)\right)^2} \geq \epsilon Batu等。[BFR + 00]显示O(1ϵ4)O(1ϵ4)O\left(\frac{1}{\epsilon^4}\right)样本足够,但是我还没有发现下界的任何提法吗? 我认为总可以显示Ω(1ϵ2)Ω(1ϵ2)\Omega(\frac{1}{\epsilon^2})通过减少区分此问题的公平与ϵϵ\epsilon偏向硬币的任务(模拟仅支持两点的分布,并根据iid抛硬币来回答测试者的问题)来降低下限,但这仍然留下二次缺口... (我要关注的另一点是估计(最大为累加ϵϵ\epsilon)此L2L2L_2距离的下限-再次,我在文献中未发现此类结果的参考) 谢谢你的帮助,

4
NP完整性/硬度是否必须具有建设性?
是否有任何具有以下属性:L∈NPL∈NPL\in {\bf NP} 已知的是,意味着P = Ñ P。L∈PL∈PL\in {\bf P}P=NPP=NP{\bf P}={\bf NP} 没有(或其他一些N P完全问题)到L的多项式时间Turing约简。SATSATSATNPNP{\bf NP}LLL 换句话说,如果对于一个多项式时间算法意味着崩溃Ñ P到P,然后是有必要的是这种“一般硬度” 大号为Ñ P必须以某种方式Ç ö Ñ 小号吨ř ü Ç 吨我v ë,从某种意义上说,S A T必须通过某些特定的还原反应才能还原为L?LLLNPNP{\bf NP}PP{\bf P}LLLNPNP{\bf NP}constructiveconstructiveconstructiveSATSATSATLLL

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.