proposition: Lemma Qlt_Zlt_inject_Z (q : Q) (z : Z) : inject_Z z < q <-> (z < Qceiling q)%Z.
proof: Proof. assert (A : forall (x y : Q), not (x <= y)%Q <-> (y < x)%Q). + intros; split; [apply Qnot_le_lt | apply Qlt_not_le]. + assert (A1 := Zle_Qle_Qceiling q z). apply Z.iff_not in A1. now rewrite A, Z.nle_gt in A1. Qed.
imports: Coq.QArith.QArith Coq.ZArith.ZArith Coq.NArith.NArith Coq.QArith.Qpower Coq.QArith.Qround Coq.QArith.Qround Coq.QArith.Qabs CoRN.stdlib_omissions.List