intros P p q H' H'0 H'1 H'2.
apply (oneExp_Zle radix); auto.
apply Rle_trans with (FtoRradix (Fabs q)).
unfold FtoRradix in |- *; apply MSB_le_abs; auto.
red in |- *; intros H'3; absurd (q = 0%R :>R).
apply MSBBoundNotZero with (P := P) (f1 := p); auto.
apply (is_Fzero_rep1 radix); auto.
unfold FtoRradix in |- *; rewrite Fabs_correct; auto with arith;
fold FtoRradix in |- *.
apply RoundAbsMonotoner with (P := P) (p := FtoRradix p); auto.
apply (FboundedOne _ radixMoreThanOne b precision); auto with zarith.
unfold FtoRradix in |- *; rewrite <- (Fabs_correct radix); auto with arith.
apply Rlt_le; apply abs_lt_MSB; auto.
Qed.

(* Specifications: *)
Theorem RoundMSBmin :
forall (P : R -> float -> Prop) (p q : float),
RoundedModeP b radix P ->
P p q ->
p <> 0%R :>R ->
(- dExp b <= MSB radix p)%Z -> (MSB radix p <= MSB radix q)%Z.