定理证明,目前是自动推理中最发达的子领域,是计算机程序证明数学定理。
我试图形式化证明DFA在联合下是封闭的,我已经到了证明"∀ 𝒜 ℬ.语言 𝒜 ∪语言 ℬ =语言 (DFA_union 𝒜 ℬ) "的程度,但实际上我想 ...
我试图通过Isar章节的Isabelle(定理Prover),第一句话有:稃"¬ surj(f :: 'a ⇒ 'a set) "我想了解常数surj是什么。我知道...
我如何在Isabelle的归纳类型规范中添加额外的类型变量?
我定义了这样一个归纳类型:归纳I :: "tau ⇒ bool "其中规则0: "I C0"
我想做的是:数据类型 my_bool = true。
我想证明一个类似于PFPL第4章中Harper的弱化定理,即弱化 : {x : String}。也就是说,弱化:{x : String}。{Γ : Context} {e : Expr} {τ τ': Type} → x ∉dom Γ → Γ ⊢ e ؛ τ' → (Γ , x ؛ τ) ⊢ e ؛......。
使用Isar时,我发现了一个令人惊讶的行为(对我来说)。我尝试使用假设,有时Isar抱怨它无法解决未完成的目标,例如,我最典型的示例是假设...
[当证明开始时,我们如何迫使Isabelle向我们透露它在Isar的背景中应用了什么规则?
[我正试图证明:引理显示“¬ev(Suc 0)”我做了:引理显示“¬ev(Suc 0)”证明(规则notI)假设为“ ev(Suc 0)”然后显示了虚假证明,给了我非常漂亮的目标:...
为什么我不能在Isabelle中明确证明我的案件,但已经给出了证明,但给出了“未能完善任何待解决的目标”错误?
我正在学习具体语义的第5章。在研究此玩具示例证明时,我遇到了一些错误:引理显示为“¬ev(Suc 0)”,我知道这超出了需要(由于情况而定...)>
为什么不能在Isabelle中简化Σ{0} = 0以使它们相等?
[我正在阅读第5章(Isar),我尝试对“Σ{0..n :: nat} = n *(n + 1)div 2”做结构归纳证明,但失败了:引理“Σ{ 0..n :: nat} = n *(n + 1)div 2“证明(归纳n)显示...
如何在Isabelle证明中打印局部变量和主题(在Isabelle中调试)?
我有时很难使用Isabelle,因为我无法像普通编程中那样拥有“打印命令”。例如,我想看什么主题。具体的语义书说:未知的?...
我有时很难使用Isabelle,因为我无法像普通编程中那样拥有“打印命令”。例如,我想看什么主题。具体的语义书说:未知的?...
我在使用字符串可确定性时遇到麻烦。首先,我感到困惑,为什么在阿格达(Agda)中难以决定性工作,而在Coq中看起来却像黄油一样光滑。当我试图证明这一点...
我有一个函数减去两个Nats。我如何证明我要传递给它的第一个参数实际上小于第二个伪参数:(k:Nat)->(n:Nat)-> {自动更小:LTE kn}-&...
可扩展性公理说,如果两个函数在域的每个自变量上的作用相等,则它们相等。公理func_ext_dep:forall(A:类型)(B:A->类型)(f g:forall x,B x),...
如何在字符串的布尔等式上进行模式匹配,并同时在Coq的证明中获得所需的命题等式?
我在尝试证明SF中的substi_correct定理时陷入困境,因为我不知道如何分解布尔相等性,同时又将其断言为命题相等性。定理...
为什么我们需要证明两个命题才能在Isabelle中应用析取消除?
[我看到了析取消除的证明规则,并且我注意到我们必须证明两个语句都可以使用它:?P∨QQ⟹(?P⟹R)⟹(?Q⟹R)⟹为什么那?就像在正常逻辑中,如果我知道一个...
我想阻止isabelle在编写时执行证明步骤,因为当我尝试使用rule_tac告诉它消失时该术语应该是什么时,它不可能记住复杂的方程式。 ...