fact: Definition sqr prec xi := match xi with | Ibnd xl xu => match sign_large_ xl xu with | Xund => let xm := F.max (F.abs xl) xu in Ibnd F.zero (F.mul_UP prec xm xm) | Xeq => Ibnd F.zero F.zero | Xlt => let lb := F.mul_DN prec xu xu in match F.cmp lb F.zero with | Xgt => Ibnd lb (F.mul_UP prec xl xl) | _ => Ibnd F.zero (F.mul_UP prec xl xl) end | Xgt => let lb := F.mul_DN prec xl xl in match F.cmp lb F.zero with | Xgt => Ibnd lb (F.mul_UP prec xu xu) | _ => Ibnd F.zero (F.mul_UP prec xu xu) end end | _ => Inan end.
imports: Coq(Bool Reals Psatz) Flocq(Raux) Stdlib Xreal Basic Sig Interval