proposition: Lemma lt_Z_B2P: forall x y, Z.ltb x y = true <-> ltP_Z x y.
proof: Proof. intros x y; split; intro H. unfold ltP_Z; now rewrite H. unfold ltP_Z in H. case_eq ((x <? y)%Z ); intros; try now subst. rewrite H0 in H. now contradict H. Qed.
imports: Bool OrderedType BinPos ZArith OrderedTypeEx Int63 State BVList FArray SMT_classes