Questions tagged «constructive-mathematics»

4
理论CS何时(或应该)关心直觉证明?
据我了解(很少,所以请纠正我的错误!),编程语言理论通常与“直觉”证明有关。在我自己的解释中,该方法要求我们认真考虑计算对逻辑和可证明性的后果。除非存在一种从假设中构造后果的算法,否则证明就不存在。我们可能会拒绝作为公理排中的原则,例如,因为它表现出的一些对象,要么是或¬ X,nonconstructively。XXX¬ X¬X\lnot X 以上哲学可能使我们更倾向于直觉上有效的证明,而不是没有证明的证明。但是,在理论CS的其他领域中,我对论文中实际使用直觉逻辑没有任何担忧。我们似乎很高兴使用经典逻辑来证明我们的结果。例如,您可能想像使用排除中间的原理来证明一种算法是正确的。换句话说,我们在结果中关注并认真考虑计算受限的宇宙,但不一定要在我们对这些结果的证明中。 1.理论CS的研究人员是否曾经担心编写直觉上有效的证明?我很容易想到理论计算机科学的一个子领域,该子领域试图了解TCS结果(尤其是算法结果)何时包含直觉逻辑(或更有趣的是,当它们不包含)。但是我还没有碰到任何东西。 2.他们应该有什么哲学上的争论吗?似乎可以声称,计算机科学的结果应该在可能的情况下凭直觉来证明,我们应该知道哪些结果需要例如 PEM。有没有人试图提出这样的论点?也许已经达成共识,这个问题不是很重要? 3.作为一个附带的问题,我很好奇要知道在哪些情况下这实际上很重要:在传统逻辑中,是否有重要的TCS结果已知,而在直觉逻辑中却没有?或怀疑不符合直觉逻辑。 对于这个问题的柔和性表示歉意!在听取专家意见后,可能需要重新措辞或重新解释。

3
没有有效正确性和效率证明的建设性高效算法
我正在寻找有效算法的自然实例(即在多项式时间内) 它们的正确性和效率可以得到建设性的证明(例如在PRAPRAPRA或HAHAHA),但是 没有已知仅使用有效概念的证明(即,我们不知道如何在TV0TV0TV^0或证明其正确性和效率S12S21S^1_2)。 我可以自己做一些人造的例子。但是,我想要有趣的自然示例,即为自己而研究的算法,而不仅仅是为了回答此类问题而创建的。

3
为什么建构主义者似乎不太在乎通话/抄送
所以不久前,我第一次有人告诉我,通过实现皮尔士定律,call / cc可以允许证明对象成为经典证明。我最近对这个话题做了一些思考,但似乎找不到任何缺陷。但是我似乎看不到其他人在谈论它。似乎没有讨论。是什么赋予了? 在我看来,如果您在某种情况下具有这样的构造,那么两件事中的一件是正确的。您可以在当前上下文中以某种方式访问实例,在这种情况下,控制流将永远无法到达这里,并且鉴于意味着的唯一途径可以返回是通过构建的一个实例和应用的两项它的参数(实例。在这种情况下,已经有一些构造实例的方法f:¬(¬P)f:¬(¬P)f : \neg(\neg P)⊥⊥\botf:¬(¬P)f:¬(¬P)f : \neg(\neg P)f:(P→⊥)→⊥f:(P→⊥)→⊥f : (P \to \bot) \to \botfff⊥⊥\botPPPP→⊥)P→⊥)P \to \bot)PPP; call / cc为我撤出此构造似乎是合理的。我的推理在我看来有些令人怀疑,但我的困惑仍然存在。如果call / cc不仅仅是凭空创建的实例(我不知道它是怎么回事),那是什么问题?PPP 某些不包含call / cc的类型正确的术语是否没有正常形式?此类表达式是否还有其他属性使它们令人怀疑?有什么明显的理由为什么建构主义者不喜欢call / cc?

1
是什么使一种语言(及其类型系统)能够证明有关其自身术语的定理?
我最近尝试实现Aaron的Cedille-Core,这是一种极简主义的编程语言,能够证明有关其术语的数学定理。我还证明了其上的λ编码数据类型的归纳法,这使他的扩展为什么必要的原因更加清楚。 几乎没有,我仍然想知道这些扩展来自何处。为什么他们是他们自己?什么使他们合理?我知道,例如,某些扩展(例如递归)破坏了该语言作为证明系统的地位。如果我决定也将CoC与其他原语一起扩展,我将如何辩解?我知道有必要进行标准化的证明,但这并不能证明这些原语“有意义”。 简而言之,什么使语言(及其类型系统)成为能够证明自己的术语定理的系统呢?

1
决定性证据是否平等?
我想知道是否可以在归纳构造微积分中没有任何其他公理的情况下证明同一命题的两个可判定证明的相等性的可判定性。 具体来说,我想知道在Coq中没有任何其他公理的情况下这是否成立。 ∀P:Prop,P∨¬P⇒(∀p1:P,∀p2:P,{p1=p2}∨{p1≠p2})∀P:Prop,P∨¬P⇒(∀p1:P,∀p2:P,{p1=p2}∨{p1≠p2})\forall P: \texttt{Prop}, P \vee \neg P \Rightarrow (\forall p_1 : P, \forall p_2: P, \{p_1 = p_2\} \vee \{p_1 \neq p_2\}) 谢谢! 编辑以更正错误:编辑2使其Prop更明确
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.