谓词逻辑的自然演绎

时间:2016-04-19 20:16:32

标签: logic predicate coq

我长期以来一直坚持使用特定的谓词逻辑问题(使用Coq)。我已经解决了30-40个谓词逻辑问题但是有了这个,我就无法弄明白。

这是问题所在: 〜所有x,(P(x)/(Q(x) - > T(x))) - > 〜所有x,T(x)。

Or in box form

任何人都可以向我发送正确的方向吗?谢谢!

编辑:

这是问题的coq代码:

Variables P Q T : D -> Prop.

Theorem pred_015 : ~all x, (P(x) \/ (Q(x) -> T(x))) -> ~all x, T(x).
Proof.
imp_i H.



Qed.

1 个答案:

答案 0 :(得分:2)

在我看来,你正在使用一些非常古老的Coq版本。 在为D添加遗漏声明并将all替换为forall后,我们会收到一条看似不可证明的声明。 但是,如果我有一组括号,我会得到一个现在可证明的目标。请参阅以下代码:

Variable D : Set.
Variables P Q T : D -> Prop.

Theorem pred_015 : (~forall x, (P(x) \/ (Q(x) -> T(x)))) -> ~forall x, T(x).
Proof.

现在,我不认为我应该在公开场合给出解决方案,但如果你记得~H被定义为H -> False,这很容易