Coq是一种形式化的证明管理系统,半交互式定理证明器和函数式编程语言。 Coq用于软件验证,编程语言的形式化,数学定理的形式化,教学等。由于Coq的交互性,如果认为合适,我们建议将问题链接到https://x80.org/collacoq/上的可执行示例。
我试图证明Coq中的n <= 2 ^ n,并且我缺少一个必须存在于某处的简单引理:a <= b / \ c <= d-> a + c <= b + d更一般地说,如何搜索Coq库...
我正与这样的目标相等性绑定(我认为细节无关紧要):tcast tc0 [take i(s_bs bs)的元组++ i。+ 1(s_bs bs)++的元组[:: [ffun⇒0]]] = ...我如何摆脱tcast ...
看来我无法正确安装Coq导入系统。我在Coq.Arith.PeanoNat中找到了pow_succ_r。所以我导入了它,并希望它可以使用Require Import Coq.Arith.PeanoNat。打印pow_succ_r。我得到了...
我有以下Coq程序试图通过自动证明n <= 2 ^ n:(***********)(*进口*)(********** *)需要输入Nat。 (****************************)(*指数函数*)(****** ...
我具有以下Haskell函数,该函数输出所有可能的方法来拆分列表:split :: [a]-> [([a],[a])] split [] = [([],[])] split(c:cs)=([],c:cs):[(c:s1,s2)| (s1,s2)&...
我不确定如何在coq中应用let表达式。这来自PF中的选择排序示例。一旦定义了选择函数,就证明了这一引理。引理select_perm:forall x l,让...
如果我具有如下所示的常规设置,如何证明我主张(f a)? A:类型f:A->属性a:A ... =========================== fa具体来说,为什么不能我使用任何这些...
在平凡上将\ sum_(i ...)(F i-G i)重写为(\ sum_(i ...)F i-\ sum_(i ...)G i)的最佳方法是什么?与bigop一起,假设是否正确管理了下溢?似乎big_split应该...
如何在Coq中证明以下内容?需要导入Coq.Reals.Reals。定义f(x:R):R:= pow x2。引理f_2:f 2 = 4%R。证明。允许。
为什么我在此示例中定义的强制方式是错误的,正确的方法是什么?
我的Coq代码如下:归纳A(X:Type):= n1:nat-> X->(A X)。参数n1 {X} _ _。归纳B:= m1:(A nat)-> B | m2:B-> B-> ...
这是对我问过的上一个问题的跟进,但是现在我只是在尝试实现自己对等式类型的归纳原理,我不确定在没有某种类型的情况下该怎么做...
我试图在Coq中明确证明命题主体与归纳原理的对称性,但是不能像在agda中那样用归纳原理做到这一点。我不知道如何在本地...
我在带有通用证明的Ubuntu中使用Coq 8.11。我写道:Ltac example1:=失败。并成功。假设我要使用Unicode符号:校对->显示->快速选项-> Unicode标记,然后...
我有一些仅在Coq 8.09.0中编译coq代码的代码。我通常使用的版本是现在的最新版本,即Coq 8.11.0。我能够使用opam ...
我使用的是VST 2.5和Coq 8.11.0,使用非标准的调用约定对函数进行forward_call时出错。最小的代码示例:struct t {int t_1; int t_2; }; struct t test_aux()...
Fixpoint index_value(i:nat)(j:nat)(l:list nat):nat:=将l与|匹配nil => 0 | cons h t =>与|匹配(eqb i j) true => h | false => index_value(S i)j t结束。 ...
考虑以下玩具开发:声明范围entails_scope。绑定范围entails_scope与nat。保留的表示法“ A |-B”(级别60,无关 联性)。归纳法包括:nat-> nat-&...