Coq是一种形式化的证明管理系统,半交互式定理证明器和函数式编程语言。 Coq用于软件验证,编程语言的形式化,数学定理的形式化,教学等。由于Coq的交互性,如果认为合适,我们建议将问题链接到https://x80.org/collacoq/上的可执行示例。
说我有以下内容: 引理 my_lemma : 对于所有 a b c, a -> (b -> c) -> d。 证明。 介绍。 然后,在线上方,我得到: ×:一个 X0 : b -> c 假设在我的证明中,我知道我是......
如何告诉 vscode Coq 在哪里? (修复无法启动 coqtop(coqtop))
我试图在 vscode 中使用 coq,但我似乎无法让它工作。 错误: 无法启动 coqtop (coqtop) 我得到这个选项: 这很令人费解,因为我的终端机似乎知道在哪里...
我想定义一个归纳类型Foo,构造函数接受一些属性作为参数。我想让这些属性依赖于我当前定义的类型的归纳参数。我想...
我有两个定理tst4和tst3,为什么 "omega "能解tst4而不能解tst3?这对我来说是没有意义的。定理tst4 : forall (a b c : nat), (a = b + 1 \ b = 0) -> (False / a & ...
如何在Coq中证明以下内容?Require Import Coq.Reals.Reals. 定义 f (x:R) :R := pow x 2.Lemma f_2: f 2 = 4%R. 证明:f 2 = 4%R. 承认。
这可能看起来是个愚蠢的问题,但我想知道为什么规范类型(例如 nat)会 "继承 "Set类型(和Type类型),而程序类型不会?这种包容性是用来做什么的?...
我想在Coq中定义一个功率函数,但似乎找不到相关模块来导入。要求导入Coq.Numbers.NatInt.NZPow. 定义 func (a b : nat) : nat := a+b*2^a. 给我...
我想在一个 "稃 "中去掉tcast,比如下面这个。但由于依赖型的 "约束",这甚至没有进行类型检查。Lemma foo : forall {T} m n (tc : n = m) (f : m.-tuple T -> ...
我正在Coq中实现一些领域理论和表义语义,但是被一些技术问题卡住了。首先,我定义了流,定义为CoInductive Stream (D : Type) := ...
我对l'进行归纳。当第一次进行归纳时,在第二次归纳n::[],n::n0::t后,我遇到了[]和n::l''两种情况。我想简化一下,在执行两次归纳后 ...
如何在Coq中实现开放公式?我觉得Coq的Prop就是封闭式的意思,但是我也想用开放式,比如x=0,如果说x在R中,检查x=0,(*没有找到引用x ....
我请求您的帮助,因为我想知道是否可以允许在Coq中定义潜在的无限fixpoints,只是为了检查当前的定义是否最终产生......
如果有人能给我解释一下证明函数在下面这个简单的例子中是如何使用的,那将有助于我对'programsproofs'并行的理解。定理ex1: forall n:nat, 7*5 < ....
关于coq的非常基本的问题。如何定义以下两种归纳类型?类型1包含:o fo, ffo, fffo......k, sk, ssk, sssk......。请注意,这里的f也可以用表征......。
我在小于或等于的情况下使用destruct命令,在小于的情况下使用同样的命令。我在应用(ltb_correct)命令时遇到了问题,错误信息是 "this command is not found."。...
我想写一个函数,其类型是forall n, option (n = 1)。我选择option作为altertnative来反射,避免给出否定情况的证明。所以,Some扮演了ReflectT的角色......。
我试图证明eqb_neq:定理eqb_neq : forall x y : nat, x =?y = false x <> y.这是我目前的证明状态。在证明过程中,我到了最后一步,我只需要... ...