Questions tagged «combinatory-logic»

2
Lambda演算和组合逻辑是否相同?
我目前正在阅读Hindley和Seldin撰写的“ Lambda微积分和组合器 ”。我不是专家,但是由于参与函数式编程(从Lisp和SICP​​开始,现在到R和Haskell),所以一直对lambda微积分感兴趣。 在“ 二进制演算和组合逻辑”,约翰·特朗普说: CL可以看作是Lambda演算的子集...理论在很大程度上是相同的,在存在可扩展性规则的情况下变得等效。 在什么条件下,人们会使用组合逻辑而不是lambda微积分? 任何参考将不胜感激。

2
图形的简洁电路表示
可以将复杂度等级PPAD(例如,计算各种Nash平衡)定义为可减少到LINE OF THE LINE的总搜索问题集: 行的结尾:给定电路S和P具有n个输入位和n个输出位,使得P(0 n) = 0 n!= S(0 n),在{0,1} n中找到一个输入x,使得P (S(x))!= x 或S(P(x))!= x!= 0 n。 电路或算法,例如S和 P之隐式定义了一个指数级大图,该图仅在逐个查询的基础上才显示(以将问题保留在PSPACE中!),例如Papadimitrou的论文。 但是,我不明白如何设计一种电路可以实现任意图形(如果图形具有系统结构,则查找电路似乎容易得多)。例如,如何设计一个代表指数长的有向线的多项式大小的电路,其中源顶点为全0标记,而对所有其他顶点则随机分配为二进制标记?在与PPAD有关的论文中,这似乎是隐含的。 我最接近在线搜索的是 Galperin / Widgerson的论文,但是那里描述的电路带有两个顶点标签,并返回布尔值答案:“这些顶点相邻吗?” 因此,您将如何设计指数大小图的多项式大小的电路,该电路需要一个n位输入并分别输出其前任或后继的n位标签?甚至,有人知道能很好解释这一点的资源吗?

5
是否可以测试可计算数字是有理数还是整数?
是否可以通过算法测试可计算数是有理数还是整数?换句话说,将有可能为图书馆实现可计算数提供的功能isInteger还是isRational? 我猜测这是不可能的,并且这在某种程度上与以下事实有关:无法测试两个数字是否相等,但是我看不出如何证明这一点。 编辑:可计算的数字xxx由函数给出,该函数fx(ϵ)fx(ϵ)f_x(\epsilon)可以返回精度为ϵ的的有理近似值:| x − f x(ϵ )| ≤ ε,对于任何ε > 0。鉴于这样的功能,就是可以测试,如果X ∈ Q或X ∈ ž?xxxϵϵ\epsilon|x−fx(ϵ)|≤ϵ|x−fx(ϵ)|≤ϵ|x - f_x(\epsilon)| \leq \epsilonϵ>0ϵ>0\epsilon > 0x∈Qx∈Qx \in \mathrm{Q}x∈Zx∈Zx \in \mathrm{Z}
18 computability  computing-over-reals  lambda-calculus  graph-theory  co.combinatorics  cc.complexity-theory  reference-request  graph-theory  proofs  np-complete  cc.complexity-theory  machine-learning  boolean-functions  combinatory-logic  boolean-formulas  reference-request  approximation-algorithms  optimization  cc.complexity-theory  co.combinatorics  permutations  cc.complexity-theory  cc.complexity-theory  ai.artificial-intel  p-vs-np  relativization  co.combinatorics  permutations  ds.algorithms  algebra  automata-theory  dfa  lo.logic  temporal-logic  linear-temporal-logic  circuit-complexity  lower-bounds  permanent  arithmetic-circuits  determinant  dc.parallel-comp  asymptotics  ds.algorithms  graph-theory  planar-graphs  physics  max-flow  max-flow-min-cut  fl.formal-languages  automata-theory  finite-model-theory  dfa  language-design  soft-question  machine-learning  linear-algebra  db.databases  arithmetic-circuits  ds.algorithms  machine-learning  ds.data-structures  tree  soft-question  security  project-topic  approximation-algorithms  linear-programming  primal-dual  reference-request  graph-theory  graph-algorithms  cr.crypto-security  quantum-computing  gr.group-theory  graph-theory  time-complexity  lower-bounds  matrices  sorting  asymptotics  approximation-algorithms  linear-algebra  matrices  max-cut  graph-theory  graph-algorithms  time-complexity  circuit-complexity  regular-language  graph-algorithms  approximation-algorithms  set-cover  clique  graph-theory  graph-algorithms  approximation-algorithms  clustering  partition-problem  time-complexity  turing-machines  term-rewriting-systems  cc.complexity-theory  time-complexity  nondeterminism 

2
最小的通用组合器
我正在寻找最小的通用组合器,该组合器是通过在lambda演算中指定这种组合器所需的抽象次数和应用程序数量来衡量的。通用组合器的示例包括: 大小23: λf.f(fS(KKKI))K 大小18: λf.f(fS(KK))K 大小14: λf.fKSK 大小12: λf.fS(λxyz.x) 大小11: λf.fSK 其中S = 大小为6的 λxyz.xz(yz)和K = 大小为2的 λxy.x 是SK组合器演算的组合器。本文描述了前4个示例。 我的问题是: 是否有尺寸更小的通用组合器? 最小的通用组合器是什么? 编辑:另请参阅/math//a/180263/76284,它具有λazbc.bc(a(λy.c))(大小为8,与SK基础的大小之和匹配)。有人知道如何从该组合器表达S和K吗?

1
如何将非终止
我一直在思考以下问题: 是否存在类型一致且图灵完成的lambda演算? /cs/65003/if-%CE%BB-xxx-has-a-type-then-is-the-type-system-inconsistent 在无类型设置中已经存在一些难以回答的相关问题!更具体地说,我很想知道我们是否可以通过以下方式从非终止中恢复图灵完备性: 问题:给定一个(纯)λλ\lambda -term ttt与没有弱头正常形式,确实有总是存在一个定点组合子YtYtY_t使得 Yt (λx.x)=tYt (λx.x)=t Y_t\ (\lambda x.x) = t 等式都取模βηβη\beta\eta。 其实,我怀疑这个版本的问题是假的,那么一个可以放松的问题,以循环组合程序,其中一个循环组合子YYY被定义为一个任期,从而使每一fff Y f=f (Y′ f)Y f=f (Y′ f) Y\ f=f\ (Y'\ f) ,其中Y′Y′Y'再次需要成为循环组合器。当然,这足以照常定义递归函数。 更一般而言,即使不满足上述公式,我也有兴趣寻找一种从非终止ttt到循环组合器的“自然”方法。 我也有兴趣在较弱的版本上面的问题,例如ttt可以被视为是一个应用程序t≡t1 t2…tnt≡t1 t2…tnt\equiv t_1\ t_2\ldots t_n每个titit_i在正常的形式(虽然我不知道确实有帮助)。 到目前为止:自然的方法是在整个过程中采用f的ttt和“ pepper”应用程序,例如fff Ω:=(λx.x x)(λx.x x)Ω:=(λx.x x)(λx.x x) \Omega:=(\lambda x.x\ x)(\lambda x.x\ x) 变成平常 YΩ:=λf.(λx.f …

1
组合器的基础不完整
这是通过激发这个问题。令为仅具有两个绑定变量的所有组合器的集合。是组合地完成?CC\mathcal{C}CC\mathcal{C} 我相信答案是否定的,但是我无法为此找到参考。我也会对参考资料中组合集集合的组合不完整性的证明感兴趣(我可以看到为什么仅由一个绑定变量组成的组合集是不完整的,因此,这些集合应该包含的不仅仅是元素)。DD\mathcal{D}DD\mathcal{D}

1
编程语言理论试图回答的“问题”是什么?
我一直对诸如组合逻辑,Lambda微积分,函数式编程等各种主题感兴趣,并一直在研究它们。但是,与试图回答“可计算性”问题(即可以/不能在各种约束条件下进行计算的问题)的“计算理论”不同,我努力寻找“编程理论”的类似物 维基百科将其描述为: 编程语言理论(PLT)是计算机科学的一个分支,致力于编程语言及其各个功能的设计,实现,分析,表征和分类。 这就像说“一切”,这并不是很具体。 主题的共同进展通常是这样的: 组合逻辑>演算>马丁·洛夫类型理论>类型lambda积分>(有什么在这里发生)>编程语言开发的-有很少与CL连接/λλ\lambda 我可以看到与CL /相关的底层“数学”λλ\lambda以及由此产生的有趣证明,包括Church-Rosser定理,这很简洁。但是,我正在努力了解所有这些工作的“最终目标”吗?什么是圣杯 PLT的,如果你愿意?就目前而言,这似乎只是在刮擦知识分子的痒,但我真的无法跨过研究/理论到任何实际的桥梁。 注意:在使用 λλ\lambda-calc用于不确定性证明。但是,除了它对“可计算性”的适用性之外,我只是不了解它,甚至很难从这种狭窄的POV理解PLT研究的需要。是否有任何现有的书籍,参考文献可以阐明PLT的“大局”?
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.