Questions tagged «calculus-of-constructions»

2
您如何从Lambda多维数据集的其他方面获得构造微积分?
据说CoC是Lambda Cube的所有三个维度的顶点。这一点对我来说一点都不明显。我想我了解各个方面,并且任何两个方面的结合似乎都导致相对简单的结合(也许我缺少了什么?)。但是,当我看CoC时,与其看起来像是这三者的结合,不如说是完全不同的事情。类型,属性和小型/大型字体来自哪个维度?依赖产品消失在哪里?为何为什么只关注命题和证明而不是类型和程序呢?是否有一些针对类型和程序的等效项? 编辑:如果不清楚,我要求解释CoC如何等效于Lambda Cube尺寸的直接结合。在我可以研究的某个地方是否存在所有这三个方面的实际结合(就程序和类型而言,而不是证明和命题)?这是对问题的评论,而不是当前的答案。

2
为什么是无限类型层次结构?
Coq,Agda和Idris具有无限的类型层次结构(类型1:类型2:类型3:...)。但是,为什么不像λC那样代替它呢?λC是最接近构造演算的lambda立方系统,它只有两种,和and,并且有这些规则?∗∗*◽◽◽ ∅⊢∗:◽∅⊢∗:◽\frac {} {∅ ⊢ * : ◽} Γ⊢T1:s1Γ,x:T1⊢t:T2Γ⊢(λx:T1,t):(Πx:T1,T2)Γ⊢T1:s1Γ,x:T1⊢t:T2Γ⊢(λx:T1,t):(Πx:T1,T2)\frac {Γ ⊢ T _ 1 : s _ 1 \qquad Γ, \: x : T _ 1 ⊢ t : T _ 2} {Γ ⊢ (λ \: x : T _ 1, \: t) : (Π \: x : T _ …

1
如何显示不存在具有依赖类型的系统中的类型(即,公式不可证明)?
对于没有依赖类型的系统,例如Hindley-Milner类型系统,这些类型对应于直觉逻辑的公式。在那里,我们知道它的模型是Heyting代数,特别是为了证明一个公式,我们可以限制为一个Heyting代数,其中每个公式都由一个开放子集表示。RR\mathbb{R} 例如,如果我们想表明,没有人居住,我们构建了一个映射φ从公式的子集开放ř通过定义: φ (α )∀α.α∨(α→⊥)∀α.α∨(α→⊥)\forall\alpha.\alpha\lor(\alpha\rightarrow\bot)ϕϕ\phiRR\mathbb{R} 然后 ϕ (α → ⊥ )ϕ(α)=(−∞,0)ϕ(α)=(−∞,0)\begin{align} \phi(\alpha) &= (-\infty, 0) \end{align} 这表明原始公式无法得到证明,因为我们有一个模型,该模型不成立,或者等效地(根据Curry-Howard同构),无法使用该类型。ϕ(α→⊥)ϕ(α∨(α→⊥))=int([0,∞))=(0,∞)=(−∞,0)∪(0,∞)=R∖0.ϕ(α→⊥)=int([0,∞))=(0,∞)ϕ(α∨(α→⊥))=(−∞,0)∪(0,∞)=R∖0.\begin{align} \phi(\alpha\rightarrow\bot) &= \mbox{int}( [0, \infty) ) \\ & = (0,\infty) \\ \phi(\alpha\lor(\alpha\rightarrow\bot)) &= (-\infty, 0) \cup (0,\infty) \\ &= \mathbb{R} \setminus {0}. \end{align} 另一种可能性是使用Kriepke框架。 对于依赖类型的系统,是否有任何类似的方法?像Heyting代数或Kripke框架的一般化? 注意:我不是在要求决策程序,我知道不可能有任何程序。我只是在寻求一种可以证明公式不可证明的机制-说服某人它不可证明。

3
结构演算:将表达压缩到最小形式
我知道构造演算正在高度规范化,这意味着每个表达式都具有不能被beta,eta进一步简化的法线。因此,实际上,这是计算与原始表达式相同值的最有效表达式。 但是在某些情况下,规范化可能会将一个小表达式缩减为一个大表达式(就大小而言)。 有最小形式的表达式吗?以最小的尺寸计算相同值的表单。 换句话说,代替了节省时间的范式,而是节省了空间的范式。


1
构造纸演算中的错字?
在经典的建筑学演算中,有一条规则规定 (pdf的第7页,原始文件的第101页) 该规则将意味着任何上下文都可以归结为该上下文的成员。这似乎不正确,因为这将导致 1 ≅ Nat 3 ≅ Nat 1 ≅ 3 如果Nat是上下文。 我认为最好的解释是,较低的增量应该是M。尤其是考虑下一页给出的规则。 那么,这仅仅是错别字还是我不理解的一些微妙的逻辑规则吗?

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.