我正在尝试证明以下琐碎的引理:
Lemma lt_or_ge: forall a b : nat,
((a <? b) = false) -> (b <= a).
Proof.
intros a0 b0 H.
我需要类似的东西:
((a <? b) = false) -> (a >= b)
但是在Coq库中似乎找不到它。 谢谢您的任何帮助。
答案 0 :(得分:1)
Search
命令仅考虑了导入的模块,这意味着您需要导入Arith
模块才能访问许多有用的(现在可搜索的)引理。
类似于以下内容的搜索查询
From Coq Require Import Arith.
(* queries separated by whitespace mean boolean "and" *)
Search (_ <? _) false (_ <= _).
将立即为您提供所需的东西:
lt_or_ge: forall a b : nat, (a <? b) = false -> b <= a
Nat.ltb_ge: forall x y : nat, (x <? y) = false <-> y <= x