宇宙与sumbool不一致

问题描述 投票:1回答:1

我已经定义并证明了以下引理:

    NM.In k m -> {NM.In k m0}+{NM.In k m1}.

我还可以证明一个对称引理:

    {NM.In k m0}+{NM.In k m1} -> NM.In k m

但是,当我尝试将它们合并为一个时:

    NM.In k m <-> {NM.In k m0}+{NM.In k m1}.

我收到以下错误:

The term "sumbool (@NM.In CarrierA k m0) (@NM.In CarrierA k m1)" has type 
"Set" while it is expected to have type "Prop" (universe inconsistency: Cannot enforce
Set = Prop).

这怎么可以解决?

coq
1个回答
1
投票

正如丹尼尔指出的那样,问题在于<->结缔组织只把命题作为论据,而sumbool则生活在Set。这可以通过以下几种方式规避:你可以用sumbool替换or,或者你可以用计算相关的连接词取代iff

Variables A B C : Prop.

Check (({A} + {B} -> C) * (C -> {A} + {B}))%type.
© www.soinside.com 2019 - 2024. All rights reserved.