使用归纳法时保留信息?
我正在使用 Coq Proof Assistant 来实现(小型)编程语言的模型(扩展 Bruno De Fraine、Erik Ernst、Mario Südholt 的 Featherweight Java 实现)。…
coq 中的所有介绍?
我试图(经典地) ~ (forall t : U, phi) -> exists t: U, ~phi 在 Coq 中证明。我想做的是用反证法证明它: 1. Assume there is no such t (so ~(exi…
在递归函数定义中使用 forall
我试图使用 Function 使用度量来定义递归定义,但出现错误: Error: find_call_occs : Prod 我将整个源代码发布在底部,但我的功能是 Function kripke…
如何在 Coq 中编写不带参数的定义?
我在 Coq 中定义了以下归纳类型。 Inductive natlist : Type := | nil : natlist | cons : nat -> natlist -> natlist. Notation "x :: l" := (cons x…
使用 Coq 证明谓词逻辑 - 初学者语法
我试图在 Coq 中证明以下内容: Goal (forall x:X, P(x) /\ Q(x)) -> ((对于所有 x:X, P (x)) // (对于所有 x:X, Q (x)))。 有人可以帮忙吗?我不确定…
证明 f (f bool) = bool
我如何在 coq 中证明函数 f 接受 bool true|false 并返回 bool true|false (如下所示) ,当对单个 bool true|false 应用两次时,将始终返回相同的值…
如何证明(forall x, P x /\ Q x) -> (对于所有 x,P x)
如何证明 (forall x, P x /\ Q x) -> (forall x, P x) 在 Coq 中? 已经尝试了几个小时,但无法弄清楚如何将先行词分解为 Coq 可以消化的内容。 (显…