(** We provide a tactic converting from one style to the other. *)

Ltac swap_greater := rewrite ?gt_lt_iff in *; rewrite ?ge_le_iff in *.

(* Specifications: *)
Lemma gtb_ltb n m : (n >? m) = (m <? n).
Lemma geb_leb n m : (n >=? m) = (m <=? n).
Lemma gtb_lt n m : (n >? m) = true <-> m < n.
Lemma geb_le n m : (n >=? m) = true <-> m <= n.
Lemma gtb_spec n m : BoolSpec (m<n) (n<=m) (n >? m).
Lemma geb_spec n m : BoolSpec (m<=n) (n<m) (n >=? m).
Lemma add_reg_l n m p : n + m = n + p -> m = p.
Lemma opp_eq_mul_m1 n : - n = n * -1.
Lemma add_diag n : n + n = 2 * n.
Lemma compare_opp n m : (- n ?= - m) = (m ?= n).
Lemma add_compare_mono_l n m p : (n + m ?= n + p) = (m ?= p).
Lemma testbit_mod_pow2 a n i (H : 0 <= n) : testbit (a mod 2 ^ n) i = ((i <? n) && testbit a i)%bool.
Lemma testbit_ones n i (H : 0 <= n) : testbit (ones n) i = ((0 <=? i) && (i <? n))%bool.
Lemma testbit_ones_nonneg n i (Hn : 0 <= n) (Hi: 0 <= i) : testbit (ones n) i = (i <? n).