理论计算机科学

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


2
归纳类型的声明顺序重要吗?
我想知道归纳类型的声明顺序是否重要。 例如,在Coq中,您可以Nat通过以下方式之一进行定义: Inductive Nat := | O : Nat | S : Nat -> Nat. 要么 Inductive Nat := | S : Nat -> Nat | O : Nat. 这也许会改变自动生成的消除器中参数的顺序,但这没什么大不了的。 我想知道的是,是否可以编写像这样的声明 Inductive typewhereordermatters := | cons1 : type1 | cons2 : type2. 其中type2是一个依赖型,这取决于cons1?(在这种情况下,以其他顺序编写声明将没有任何意义,因为type2要引用的声明cons1尚不存在)。

5
您如何确定何时有足够的研究成果来撰写论文,以及将论文提交给哪一期刊?
在CS的一些研究领域,我们得到了一些非常有趣的结果。现在我们正在考虑发布它们。在我们这个小组中,哲学是在会议论文中中等程度地发布小事情,这是好的,但不是最好的。现在,我正在考虑收集更多这些“小东西”,并在JCR论文中发表,影响因子超过2。我的问题是,您将如何决定何时有足够的材料在JCR期刊中准备像样的论文?而且,一旦您认为可以,您将如何决定将论文提交到哪个期刊? PS: JCR是指Journal Citation Reports,这是一个广泛的列表,收集有关所有科学领域中最具代表性和相关期刊的信息及其影响因素,因此通常会对其进行引用,并且那里没有会议论文

2
有没有可以描述图的“形状”的“图形”代数?
图枚举中的主要问题之一是确定图的“形状”,例如任何特定图的同构类。我完全知道,每个图都可以表示为对称矩阵。但是,要使其具有形状,您需要一个行/列排列的集合,这会使矩阵不太适合。一旦采用这种形式,“查看”图表也将变得更加困难。 我的问题是:是否有任何可以描述图形“形状”的“图形”代数? 我在想的是代数拓扑学家倾向于提出什么样的形式系统。特别地,诸如结不变式的代数之类的东西,或诸如操作数或测谎器之类的符号系统之类的东西。这种“涂鸦代数”的发展程度不高,因此也许有理由相信图形中不存在这样的代数,但是我想在假设其他情况之前先问一下。 更新: 我的问题可能非常狭窄,无法立即回答“是”,因此,如果主持人不介意,我将通过提出以下问题扩大范围: 是否有任何现有系统(我在上面描述的那种系统)可以(轻松地或以其他方式)修改为创建这样的系统?如果不止一个,请随意提及所有这些。并添加已经提到的内容。 动机 我提出这样一个问题的动机实际上是关于对不对称图进行分类。我只是一个本科生,所以我对代数图论的当前状态的评论很薄。但是,我还没有看到很多尝试以代数方式系统地描述所有图形的工作,如果有的话,尤其是使用视觉隐喻而非符号隐喻的图形。 这样的系统有用的实际例子 假设要描述一个证明,证明所有欧拉图都必须具有偶数个顶点。标准证明通常使用关于偶数和奇数度的参数,而没有提及所使用的实际边缘。一个典型的学生会第一次找到这样的证明,并可能开始绘制图表,试图说服自己。但是也许比纯粹的“逻辑”论证更好的工具是表明,从这种语言中收集的任何“符号”都不能满足某些“完整性”条件。 是的,我知道,在最后一部分中,我会手挥手。如果不是,尽管我可能自己开始创建这样的系统! 但是暂时忽略了我的模糊性,我感觉到图论中的许多古老而著名的定理并不困难,但是需要一些概念化,即一个真正好的框架可以将“捆绑”和“打包”成一个统一的视图。

1
数据库查询语言可实现高效查询
在关系数据库的流行查询语言中,似乎可以创建需要大量资源来回答的查询。在实践中,数据库管理员通过限制每个查询的内存量并检查是否存在长时间运行的查询(如果数据库速度变慢)来进行管理。这似乎是临时的,是否有TCS解决方案? 是否存在只能实现高效查询的查询语言? 如果没有这种语言,是否有理论上的原因? 我可能希望这类事物存在或至少存在的一些原因是有道理的: 我们有专门设计用于仅实现有效计算的编程语言(通常通过在其类型系统中使用一些限制性逻辑) 流行的查询语言(例如SQL)已经受到逻辑的启发,因此对于数据库用户来说,考虑使用更多限制性逻辑似乎并不困难。 一个非恶意数据库用户已经尝试准备快速执行的查询,因此我们应该期望这些限制性更强的查询语言只会阻碍恶意用户。 这个问题的灵感来自于前面两个问题的交集: 用于高效计算的编程语言 考虑到答案查找的理论指数复杂性(以查询的大小为单位),为什么关系数据库根本无法工作?

2
是否存在用于快速列表操作和订单查询的数据结构?
我们有一个集合中的元素列表。中的每个元素都显示在L中的单个列表中。我正在寻找可以执行以下更新的数据结构:LLLN={1,2,3,...,n}N={1,2,3,...,n}N = \{ 1, 2, 3, ..., n \}NNNLLL concat(x,y)concat(x,y)concat(x, y):将包含y的列表连接yyy到包含x的列表的末尾xxx split(x)split(x)split(x):含有分割列表xxx后直接xxx 它还需要执行以下查询: follows(x,y)follows(x,y)follows(x, y):返回truetruetrue,如果xxx和yyy是在同一列表和yyy后自带xxx(但不一定是相邻的xxx) first(x)first(x)first(x):返回包含x的列表的第一个元素xxx next(x)next(x)next(x):返回下一个元素后xxx在含列表xxx 我已经想出了一个数据结构,该结构在O(lg ^ 2(n))中执行这些更新,O(lg2(n))O(lg2(n))O(lg^2 (n))并在O(lg(n))O(lg(n))O(lg (n))时间内进行查询。我最感兴趣的是是否已经有一个数据结构可以做到这一点(希望更快吗?)。 动机:可以用其中的两个列表集来表示有根的定向森林,它们可以快速计算此类森林的可达性。我想看看它们还有什么用,如果所有这些都已知。

1
启发式优化
既然是星期五,是时候问CW了。我正在寻找在优化问题中广泛使用的启发式方法。为了将范围限制为更“理论友好”的启发式方法,以下是规则(有些是任意的,有些不是) 它应该是定义明确的方法,没有大量参数,并且具有具体的运行时间(可能是每次迭代) 它应该具有一些与之相关的已知理论结果(收敛速度,近似边界(如有),平稳性质等) 它应该具有广泛的适用性,并且至少是一种旗舰应用程序,无论是选择方法还是其中几种方法之一。 它不应该受到大自然的启发(尽管这似乎是轻率的反对,但我试图排除遗传算法,蚁群优化等)。 理想情况下,答案应采用以下格式:这是一个示例。 名称:交替优化 目标:最小化(通常是非凸的)函数F(x ,y)f(x,y)f(x,y) 条件:相关功能G(x )=分ÿF(x ,y)g(x)=minyf(x,y)g(x) = \min_y f(x,y) 和 ħ (ÿ)=分XF(x ,y)h(y)=minxf(x,y)h(y) = \min_x f(x,y) 是凸的 算法:一世日ithi^{\text{th}} 迭代开始于 X一世,ÿ一世xi,yix_i, y_i。 xi+1←argminxf(x,yi)xi+1←arg⁡minxf(x,yi)x_{i+1} \leftarrow \arg \min_x f(x, y_i) yi+1←argminyf(xi+1,y)yi+1←arg⁡minyf(xi+1,y)y_{i+1} \leftarrow \arg\min_y f(x_{i+1}, y) 最知名的应用程序:kkk-表示,迭代最接近的对。 理论:关于的已知结果kkk-手段,框架全局最优的一般充分条件 ps:您可能会发现您的答案最终成为了我正在计划的算法研讨会的演讲:)

2
最大化总边缘权重
我想知道以下问题是否有名称,或与之相关的任何结果。 令是权重图,其中表示和之间的边缘权重,并且对于所有,。问题是找到一个顶点子集,该子集最大化与它们相邻的边的权重之和: 注意,我要计算子集内和子集外的边,这是将此问题与max-cut区别开的原因。但是,即使u和v都在S中,我也只想计算边(u,v)G=(V,w)G=(V,w)G = (V,w)w(u,v)w(u,v)w(u,v)uuuvvvu,v∈Vu,v∈Vu,v \in Vw(u,v)∈[−1,1]w(u,v)∈[−1,1]w(u,v) \in [-1,1]maxS⊆V∑(u,v):u∈S or v∈Sw(u,v)maxS⊆V∑(u,v):u∈S or v∈Sw(u,v)\max_{S \subseteq V} \sum_{(u,v) : u \in S\ \textrm{or}\ v\in S} w(u,v)uuuvvvSSS(u,v)(u,v)(u,v) 一次(而不是两次),这就是将目标与仅是度之和区别开来的原因。 请注意,如果所有边缘权重均为非负数,那么问题就微不足道了-只需拿整张图!

1
限制星图之间的边数,以使图为平面
我有一个仅由星形图组成的图星形图由一个中心节点组成,该中心节点具有到其中每个其他节点的边。令为存在于的不同大小的不同星形图。我们称所有星图为中心的所有节点的集合。GGGH1个,H2,… ,HñH1,H2,…,HnH_1, H_2, \ldots, H_nGGG[RRR 现在,假设这些星形图正在建立其他星形图的边缘,使得任何节点之间都没有边缘入射。然后,有多少边缘在节点之间存在最大,哪些不是在节点,如果图应保持平面?[RRR[RRR[RRR 我想要这样的边缘数量的上限。一上限,我已经记:考虑它们作为二分平面图,其中是一组顶点的休息的顶点形成另一组。我们对这些集合(和)之间的边缘感兴趣。由于它是平面二分体,因此此类边的数量以中节点数的两倍为界。[RRR一个AARRRAAAGGG 我的感觉是有一个更好的界限,可能是节点的两倍加上中节点的数量。AAARRR 如果您可以反驳我的直觉,那也很好。希望你们中的一些人能提出一些相关的论点。

1
确定一个通配符字符串是否与集合中的另一个通配符字符串完全匹配
这是困扰我一段时间的问题。假设字符串是1和0 的序列,通配符字符串是1、0和?s的序列。所有字符串和通配符字符串具有相同的长度。这些是标准的UNIX通配符。10 ?? 1匹配10011、10111等-a?在该位置匹配1或0。如果和是通配符字符串,那么如果与匹配的每个字符串也与匹配,则我们写。vvvwwwv ≤ w ^v≤wv \leq wvvvwww 问题:给定一组通配符字符串和一个查询(也是通配符字符串),是否存在使得吗?如果不是,我们可以有效地将添加到吗?小号SSvvvw ^ ∈ 小号w∈Sw \in Sv ≤ w ^v≤wv \leq wvvv小号SS 这是显而易见的解决方案(其中是字符串的大小,是RAM的字大小(通常为32或64)):遍历列表中的每个元素并进行测试条件(可以使用位旋转2或3个操作来完成)。还要在扫描时测试是否适合任何。如果未能通过我们的测试,则将添加到集合中,并删除我们标记的。O (ķ米n )O(kmn)O(\frac{k}{m}n)ķkk米mmv ≥ w ^v≥wv \geq wwwwvvvvvvwww 但这还不够快。如果有解决方案,或者在理想情况下,复杂度类似于基数树(),那真的很酷。查询大致正确也可以:即,如果,则返回yes或no;否则,返回false。但是如果条件不成立,则绝对不返回。O (对数n )O(log⁡n)O(\log n)O(k)O(k)O(k)v≤wv≤wv \leq w 尽管这并不能解决最坏的情况,但是您可以假定中的所有元素都由通配符字符串限制;也就是说,存在一些,使得对于所有,。SSSvvvw∈Sw∈Sw \in Sv≥wv≥wv \geq w 我尝试过的想法 通配符字符串形成联接符号。我们可以有一棵包含通配符字符串的n元树;叶子将是通配符字符串,分支将代表所有子代的联接。如果查询和联接是不可比拟的,那么我们不必浪费时间尝试与该分支的所有子代进行比较。此外,如果我们进行更新,而该更新恰好大于联接,则可以简单地删除整个分支。不幸的是,在最坏的情况下,这仍然是,并且在遍历树中添加元素时,我们并不总是找到建立的“最佳”联接。O(n)O(n)O(n) 一个可以形成的基数树根。我们知道由一些通配符字符串限制;假设它是0到0。然后,特里树的所有分支只需位于字符串的第1位和第3位。如果查询的当前位是1,则必须检查?。1个分支;如果为0,我们检查?0个分支;如果是?,我们只检查?。科。因为我们必须潜在地采取多个分支,所以这看起来不太好(出于相同的原因很难更新trie)。由于匹配是非常快速的操作,因此与幼稚的策略相比,在树中进行大量遍历会比较麻烦(遵循一堆指针比进行一些OR和AND的代价高得多)。SSSSSS 相关工作 在网络社区中,此问题表现为“数据包分类”,这是对已知算法和数据结构的良好概述。不幸的是,几乎总是假设通配符字符串仅匹配前缀,并且查询是此类字符串的元组。当然,我们总是可以转换通用通配符字符串来满足以下条件:1?00?1 ?? 是(1,?,0,0,?,1,?,?)。但是,这将是无效的。做出的另一个假设是,这些元组与“颜色”相关联,并且查询应返回颜色(不仅仅是匹配的颜色)。这使问题变得更加困难,因为我们必须对元组进行排序(否则,(0,?)和(?,1)中的哪一个与(0,1)相匹配是模棱两可的)。 在算法社区中,我发现了很多与查找与“无关”匹配的子字符串相关的结果。这是一个相当困难的问题,我无法真正利用任何技术。 结论 谢谢你的帮助!

1
非统一vs.统一对手
这个问题出现在密码学的背景下,但是下面我将以复杂性理论来介绍它,因为这里的人们更加熟悉后者。该问题与NP中的问题有关,但与“平均P / poly和Oracle Access克服不均匀性”无关。 非正式声明:非统一对手(即多尺寸电路系列)何时能成功突破密码方案,而统一对手(即概率多时图灵机)却无法成功? 复杂度理论声明:这与上面的非正式声明并不完全相同,但是我实际上对此版本感兴趣: 存在哪些自然问题 (NP∩P/poly)−AvgP(NP∩P/poly)−AvgP(\mathsf{NP} \cap \mathsf{P/poly}) - \mathsf{AvgP} ? 换句话说,有什么难的平均自然NPNP\mathsf{NP}多尺寸电路系列可以解决问题吗? 可以将“已解决 ”一词解释为最坏情况或平均情况(最好使用后者)。 如果不容易发现自然问题,那么人为问题也是可以接受的。


2
UPB的多项式算法(不可扩展的产品基础)
考虑希尔伯特空间 H=H1⊗⋯⊗HnH=H1⊗⋯⊗HnH = H_1 \otimes \dots \otimes H_n。不可扩展乘积基(UPB)是一组乘积向量|v一世⟩ = |v1个一世⟩ ⊗ ⋯ ⊗ |vñ一世⟩|v一世⟩=|v一世1个⟩⊗⋯⊗|v一世ñ⟩\vert v_i \rangle = \vert v_i^1 \rangle \otimes \dots \otimes \vert v_i^n \rangle 这样: a)全部 |v一世⟩|v一世⟩\vert v_i \rangle 互相正交 b)没有与所有正交的乘积向量 |v一世⟩|v一世⟩\vert v_i \rangle c)基础不平凡,即不跨越 HHH (这样的碱基对量子信息很重要) 问题: 是否有多项式算法(在 ññn)以查找UPB?(请注意,一般而言,UPB的大小没有上限,因此在先验中,它的大小可能是指数的ññn) 是否存在用于检查给定产品基础是否为UPB的多项式算法?(即不可扩展) 还是问题NP完全?

2
有界交叉数的绘制图
法里定理说,可以画出一个简单的平面图而不会相交,因此每个边都是一条直线段。 我的问题是有界交叉数图是否有一个类似的定理。具体来说,我们是否可以说可以绘制一个具有交叉数k的简单图形,以便在图形中有k个交叉,并且每个边缘对于某些函数f而言都是度为f(k)的曲线? 编辑:正如大卫·埃普斯坦(David Eppstein)所言,很容易看出法里定理蕴含一个具有交叉数k的图的图形,因此每个边都是最多具有k个弯曲的多边形链。我仍然很好奇,尽管是否可以用有界度曲线绘制每个边缘。张显治指出,如果k为0、1、2、3,则f(k)= 1,否则,f(k)> 1。

1
金融经济学中投资组合理论的复杂性分类是什么?
大家都知道,2008年金融危机的后果正在持续发生。当我意识到我不了解与金融经济学相关的基本复杂性类别时,我在考虑复杂性理论如何适应所有这些。 所以我的问题是,Markowitz投资组合理论的总体复杂度分类(如果有)是什么,特别是CAPM模型是什么?此外,任何有关复杂性理论与金融危机的关系的评论都将受到欢迎!

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.