fact: Definition div mode prec (x y : type) := match x, y with | Fnan, _ => x | _, Fnan => y | Float mx ex, Float my ey => let prec := match exponent_cmp prec exponent_zero with Gt => prec | _ => exponent_one end in match mantissa_sign mx, mantissa_sign my with | _, Mzero => Fnan | Mzero, _ => x | Mnumber sx px, Mnumber sy py => let dx := mantissa_digits px in let dy := mantissa_digits py in let e := exponent_sub ex ey in let nb := exponent_sub (exponent_add dy prec) dx in match exponent_cmp nb exponent_zero with | Gt => div_aux mode prec (xorb sx sy) (mantissa_shl px nb) py (exponent_sub e nb) | _ => div_aux mode prec (xorb sx sy) px py e end end end.
imports: Coq(ZArith Reals Lia Bool Psatz) Flocq(Zaux Raux Digits Bracket) mathcomp.ssreflect(ssrbool) Xreal Basic Generic Generic_proof Sig Specific_sig