看来,由于w/Inductive
和Fixpoint
,您可以相互定义Function
的w/with
。你能给出这个的语法和/或例子吗?我什么都找不到。我想这跟Fixpoint
一样(也没有发现这个)。非工作(但半编译 - 2分最后几行以红色突出显示),例如:Coq:`Function ... with` syntax
Variable ARG:Type.
Variable phy inf phyinf: ARG.
Function Phy (x:ARG): ARG := match x with Inf x => phyinf | _ => phy end
with Inf (x:ARG): ARG := match x with Phy x => phyinf | _ => inf end. (*Error: Unknown constructor: Inf.*)
对我来说,你完全不清楚你在问什么。另外:你怎么能说你的例子正在编译,如果行被红色突出显示。恰恰相反!最后,不要使用“w /”或这种类型的缩写。 –
您有一个有效的观点:我更正为“半编译”。编译器有几个通行证。如果一条线突出显示红色,其中一些成功。尝试删除一个“结束”,看看会发生什么 – jaam