在 Coq 中部分计算目标的策略

Tactic to partially compute goal in Coq

我有目标

quad X Y

,但我不记得 "quad" 的定义,我不想开始搜索它的定义。

是否有一种策略可以让我用它的定义快速替换 quad?

 Record quad (X Y:Type):= { x:X; y:Y}.

或者我必须记住并使用

refine (@Build_quad _ _).

?

你有点误会了,Build_quad不是quad的定义,而是它的构造函数。它创建 quad 类型的术语。 正如@ejgallego 所说,在这种情况下你应该使用 constructor 策略。

您的目标是提供 quad X Y 类型的术语,从头开始构建此类术语的唯一方法是使用 forall X Y: Type, X -> Y -> quad X Y 类型的构造函数 Build_quad