我的问题是如何在Coq中定义未指定的常量。
为了明确我的意思,假设以下玩具系统:
我想定义一个函数
f:nat-> nat,除了一个地方w之外它的值都是0,其中它的值为1。
地点w应该是系统的参数。
系统的所有证明都可以假设w是固定的但是任意的。
我的想法是介绍
参数w:nat。
但我因定义f(x)而陷入困境,因为我不知道如何将x与a匹配。
处理这个问题的正确方法是什么?
或者,使用w作为参数是错误的方法吗?
(这不是一个家庭作业问题)
答案 0 :(得分:2)
我就是这样做的:
myOtherFun(mydf, v2)
# [1] "E" "F" "G" "H" "I"
在证明Require Import Arith.
Parameter w : nat.
Definition f (n : nat) := if beq_nat n w then 1 else 0.
的属性时,您可以使用lemma指定f
确实是否beq_nat n w
。您可以使用例如
n = w