理论计算机科学

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

7
类别理论在TCS中的扎实应用?
我一直在学习一些类别理论。当然,这是另一种看待事物的方式。(对于未曾看过它的人,这是一个非常粗略的总结:类别理论提供了仅根据对象之间的功能关系来表达各种数学行为的方式。例如,两组的笛卡尔积之类的东西完全按照其他函数的行为方式,而不是集合中的元素是什么。) 我有些模糊的理解,范畴论在编程语言/逻辑(“理论B”)方面很有用,我想知道算法和复杂性(“理论A”)能从中受益。但是,如果我知道理论B中类别理论的某些可靠应用,那可能会帮助我起步。(我已经隐含地假设,到目前为止,理论A中没有发现任何应用,但是如果您有其中一些,那甚至对我来说更好!) 我所说的“可靠的申请”是: (1)应用程序非常依赖于类别理论,以至于不使用机器就很难实现。 (2)应用程序调用至少一个类别理论的非平凡定理(例如,Yoneda引理)。 (1)可能暗示(2),但是我想确保它们是“真实的”应用程序。 虽然我确实有一些“理论B”背景,但已经有一段时间了,因此,不加任何术语都将不胜感激。 (根据我得到的答案的种类,我可能会在以后将这个问题转换为社区Wiki。但是我确实希望有良好的应用程序,并且要有很好的解释,所以似乎不给某些答卷人奖励是可耻的。)

30
可在线获取其草案的最新TCS书籍是什么?
在发布了《每个人都应该读什么书》一文之后,我注意到最近有几本书的草稿可在线获得。 例如,以上文章的“ 近似算法”条目引用了2011年一本书(尚未出版),标题为“近似算法的设计”。 我认为了解最新作品对希望了解TCS趋势的人真的很有用。如果有草稿,可以在实际购买书之前先检查一下。 所以, 可在线获取其草案的最新TCS书籍是什么? 在这里,“最近”是指不超过5年的事物。

6
用于更改图形(D *,D * -Lite,LPA *等)的最新路径查找算法有何不同?
近年来,已经开发了许多寻路算法,它们可以比A *更快地响应图形变化来计算最佳路径-它们是什么,它们之间有什么不同?他们是针对不同的情况,还是有些过时? 这些是我到目前为止能够找到的: D *(1994) 专注D *(1995) 动态SWSF-FP(1996) LPA(1997) LPA * /增量A *(2001) D * Lite(2002) SetA *(2002年) HPA *(2004) 随时D *(2005) PRA *(2005年) 领域D *(2007) Theta *(2007) HAA *(2008) GAA *(2008) LEARCH(2009) BDDD *(2009年-我无法访问本文:|) 增量披披*(2009) GFRA *(2010) MTD * -Lite(2010) 树AA *(2011) 我不确定其中哪一个适用于我的特定问题-如有必要,我将全部阅读,但是如果有人可以编写摘要,这将为我节省很多时间。 我的特定问题:我有一个带有起点,终点和一些墙的网格。我目前正在使用A *从头到尾查找最佳路径。 然后,用户将移动一堵墙,而我必须再次重新计算整个路径。在“移动墙/重新计算路径”的步骤发生在连续很多次,所以我在寻找一种算法,将能够快速重新计算最佳路径,而无需运行A *的一个完整的迭代。 不过,我不一定要寻找对A *的更改-它可以是完全独立的算法。

15
一个可判定性未知的简单问题
我正在准备针对本科数学专业的演讲,作为其中的一部分,我正在考虑讨论可判定性的概念。我想举一个我们目前不知道可决定或不可决定的问题的例子。有很多这样的问题,但是到目前为止,似乎没有一个例子能很好地脱颖而出。 什么是可决定性开放的简单描述问题?

5
TCS会议和研讨会列表
我想寻求帮助,以整理尽可能多的与TCS相关的会议和研讨会的清单。我这样做的主要动机是计划更多理论场所的博客覆盖范围-寻找参加这些活动的通讯员,他们愿意就他们参加的活动撰写简短或深入的博客条目。除此之外,我希望这样的清单可以使每个人对理论领域的布局有更好的认识。 我将以包含几个“显而易见的”会议的答案作为问题的种子。请随时编辑我的答案和/或发布您自己的其他答案。 会议的标准缩写,会议名称,主题,任何其他注释。 旨在作为社区Wiki。

7
lambda演算对计算理论领域有什么贡献?
我只是在阅读lambda演算以“了解它”。我认为它是图灵机的另一种计算形式。这是一种有趣的用功能/约简做事的方式(简而言之)。一些问题一直困扰着我: Lambda微积分的意义是什么?为什么要经历所有这些功能/减少?什么目的? 结果,我不得不怀疑:lambda微积分到底是做什么来推动CS理论的?是什么使我有一个“哈哈”的时刻来了解其存在的必要性? 为什么关于自动机理论的文章中没有涵盖lambda演算?常见的途径是遍历各种自动机,语法,图灵机和复杂性类。Lambda演算仅包含在SICP样式课程的课程提纲中(也许不?)。但是我很少看到它是CS核心课程的一部分。这是否意味着它不那么有价值?也许不是,也许我在这里错过了一些东西? 我知道函数式编程语言基于lambda演算,但我不认为这是有效的贡献,因为它是在我们拥有编程语言之前就创建的。那么,了解/理解lambda演算的真正意义是什么,它对理论的应用/贡献呢?

10
驳斥教会图灵的论点意味着什么?
对不起,标题很吸引人。我想了解,应该怎么做才能反驳“ Turing-Turing”论题?我读过某个地方,从数学上讲是不可能做到的!为什么? Turing,Rosser等使用不同的术语来区分:“可以计算出什么”和“可以由Turing机器计算出什么”。 图灵在1939年对此的定义是:“我们将使用“可计算的功能”一词来表示可由机器计算的功能,而“有效地可计算的”是指直觉性的想法,而没有对这些定义中的任何一种进行特殊识别。 因此,Church-Turing论文可以说如下:每个有效可计算的函数都是可计算的函数。 那么,如果有人反驳这一猜想,证明又将如何?

30
与TCS相关的有趣论文等?
您知道与TCS相关的最有趣的著作是什么? 请仅包括那些有意思的内容。明确设计为具有幽默感的作品(而不是发表有关复杂性理论的简短笑话的收藏)是首选。也接受带有幽默(实际上是幽默,而不仅仅是可爱)标题的作品。 每个答案请只做一份工作,这样“最佳”的答案就会冒出来。

2
Shor最初发现Shor算法的减少吗?
这是一个“历史性问题”,而不是研究性问题,但这是Peter Shor最初发现Shor的因式分解算法中对阶数查找的经典归约,还是先前已知?是否有一篇文章描述了Shor之前的减少量,还是仅仅是所谓的“民间结果”?还是仅仅是同一篇论文中的另一个突破?

14
复杂性理论需要什么样的数学背景?
我目前是一名本科生,今年定会毕业。毕业后,我正在考虑成为一名TCS硕士/博士。我开始想知道哪些数学领域被认为对TCS有帮助,特别是(经典)复杂性理论。 对于想研究复杂性理论的人,您认为哪些领域至关重要?您是否知道涵盖这些领域的任何优秀教科书,如果有,请说明其难度等级(入门级,研究生等)。 如果您考虑的领域在复杂性理论中使用不多,但认为对TCS至关重要,则也请参考它。

7
一个非常简单的量子程序将是什么样?
考虑到世界上第一个可编程量子光子芯片的发布,我想知道用于使用量子纠缠的计算机的软件是什么样的。我写过的第一个程序就是 for i = 1 to 10 print i next i 谁能以伪代码或高级语言给出使用量子光子芯片(或类似硬件)的相当简单的代码示例?我很难使概念从传统编程过渡到纠缠等。

8
研究论文难读吗?
这个问题可能不适合这里,但是我找不到更好的地方了(SO已关闭)。 我发现关于计算机科学的研究论文很难理解。当然,主题很复杂。但是,在我理解了一篇论文之后,通常我可以用更简单的术语告诉别人,并使他们理解。如果有人告诉我在这项研究中做了什么,我也理解。 我认为我可以在这里说出的最好的例子是:我已经尝试了很长时间理解SIFT论文,并且在谷歌搜索时找到了一个教程,在几个小时内我已经准备好实现该算法。如果我想从论文本身理解算法,那我可能要花几天时间。 我的问题是:难道只有我发现研究论文难以理解吗?如果没有,您将如何处理?你有什么技巧?你能给小费吗?

20
在TCS中扮演重要角色的“无关”数学的例子?
请列举一些例子,其中数学中的一个定理通常不被认为是在计算机科学中首先被用来证明计算机科学的结果。最好的例子是那些不很明显的联系,但是一旦发现联系,显然是实现联系的“正确方法”。 这是TCS在古典数学中的应用问题的相反方向吗? 例如,请参阅“平面图中的格林定理和隔离”,其中,使用多元微积分的格林定理重新证明了隔离定理(使用技术证明是已知的)。 还有什么其他例子?

5
反转量化器顺序的技术
众所周知,一般而言,通用量词和存在量词的顺序不能颠倒。换句话说,对于一般的逻辑公式ϕ(⋅,⋅)ϕ(⋅,⋅)\phi(\cdot,\cdot), (∀x)(∃y)ϕ(x,y)⇎(∃y)(∀x)ϕ(x,y)(∀x)(∃y)ϕ(x,y)⇎(∃y)(∀x)ϕ(x,y)(\forall x)(\exists y) \phi(x,y) \quad \not\Leftrightarrow \quad (\exists y)(\forall x) \phi(x,y) 另一方面,我们知道右侧比左侧更具限制性。也就是说,。(∃y)(∀x)ϕ(x,y)⇒(∀x)(∃y)ϕ(x,y)(∃y)(∀x)ϕ(x,y)⇒(∀x)(∃y)ϕ(x,y)(\exists y)(\forall x) \phi(x,y) \Rightarrow (\forall x)(\exists y) \phi(x,y) 这个问题的重点在于只要对成立,就可以导出。(∀x)(∃y)ϕ(x,y)⇒(∃y)(∀x)ϕ(x,y)(∀x)(∃y)ϕ(x,y)⇒(∃y)(∀x)ϕ(x,y)(\forall x)(\exists y) \phi(x,y) \Rightarrow (\exists y)(\forall x) \phi(x,y)ϕ(⋅,⋅)ϕ(⋅,⋅)\phi(\cdot,\cdot) 对角化就是这样一种技术。我首先在问题的相对论中P=?NPP=?NP\mathcal{P} \overset{?}{=} \mathcal{NP}看到了对角线的使用(另请参见Katz的简短说明)。在该论文中,作者首先证明: 对于任何确定性的多项式时间预言机M,都存在一种语言B,使得。LB≠L(MB)LB≠L(MB)L_B \ne L(M^B) 然后,他们反转量词的顺序(使用对角线化),以证明: 存在一种语言B,使得对于所有确定性的时间M,我们都有。LB≠L(MB)LB≠L(MB)L_B \ne L(M^B) 此技术已在其他论文中使用,例如[CGH]和[AH]。 我在[IR]定理6.3的证明中找到了另一种技术。它结合了测度理论和鸽子洞原理来逆转量词的顺序。 我想知道计算机科学中还使用了哪些其他技术来逆转通用量词和存在量词的顺序?

2
高斯消除的实际时间复杂度是多少?
在回答前面的问题时,我提到了普遍但错误的信念,即“高斯”消除在时间内运行。显然,该算法使用算术运算,但是粗心的实现可能会创建位数成倍增长的数字。作为一个简单的示例,假设我们要对角以下矩阵:O(n3)O(n3)O(n^3)O(n3)O(n3)O(n^3) ⎡⎣⎢⎢⎢⎢⎢⎢⎢211⋮1021⋮1002⋮1⋯⋯⋯⋱⋯000⋮2⎤⎦⎥⎥⎥⎥⎥⎥⎥[200⋯0120⋯0112⋯0⋮⋮⋮⋱⋮111⋯2]\begin{bmatrix} 2 & 0 & 0 & \cdots & 0 \\ 1 & 2 & 0 & \cdots & 0 \\ 1 & 1 & 2 & \cdots & 0 \\ \vdots & \vdots & \vdots & \ddots & \vdots\\ 1 & 1 & 1 & \cdots & 2 …

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.