Built with Alectryon, running Coq+SerAPI v8.10.0+0.7.0. Coq sources are in this panel; goals and messages will appear in the other. Bubbles () indicate interactive fragments: hover for details, tap to reveal contents. Use Ctrl+↑ Ctrl+↓ to navigate, Ctrl+🖱️ to focus.
This file is part of the Flocq formalization of floating-point
arithmetic in Coq: http://flocq.gforge.inria.fr/
Copyright (C) 2010-2018 Sylvie Boldo
Copyright (C) 2010-2018 Guillaume Melquiond
This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either
version 3 of the License, or (at your option) any later version.
This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
COPYING file for more details.
Copyright (C) 2010-2018 Guillaume Melquiond
Require Import Psatz. Require Import Core Operations Relative Sterbenz Mult_error. Section Fprop_divsqrt_error. Variable beta : radix. Notation bpow e := (bpow beta e). Variable prec : Z.beta:radixprec:Zforall fexp : Z -> Z, (forall e : Z, (fexp e <= e - prec)%Z) -> forall (x y : R) (fx fy : float beta), x = F2R fx -> y = F2R fy -> (Rabs (x + y) < bpow (prec + Fexp fx))%R -> (Rabs (x + y) < bpow (prec + Fexp fy))%R -> generic_format beta fexp (x + y)beta:radixprec:Zforall fexp : Z -> Z, (forall e : Z, (fexp e <= e - prec)%Z) -> forall (x y : R) (fx fy : float beta), x = F2R fx -> y = F2R fy -> (Rabs (x + y) < bpow (prec + Fexp fx))%R -> (Rabs (x + y) < bpow (prec + Fexp fy))%R -> generic_format beta fexp (x + y)beta:radixprec:Zfexp:Z -> ZHfexp:forall e : Z, (fexp e <= e - prec)%Zx, y:Rfx, fy:float betaHx:x = F2R fxHy:y = F2R fyH1:(Rabs (x + y) < bpow (prec + Fexp fx))%RH2:(Rabs (x + y) < bpow (prec + Fexp fy))%Rgeneric_format beta fexp (x + y)beta:radixprec:Zfexp:Z -> ZHfexp:forall e : Z, (fexp e <= e - prec)%Zx, y:Rfx, fy:float betaHx:x = F2R fxHy:y = F2R fyH1:(Rabs (x + y) < bpow (prec + Fexp fx))%RH2:(Rabs (x + y) < bpow (prec + Fexp fy))%RH:(x + y)%R = 0%Rgeneric_format beta fexp (x + y)beta:radixprec:Zfexp:Z -> ZHfexp:forall e : Z, (fexp e <= e - prec)%Zx, y:Rfx, fy:float betaHx:x = F2R fxHy:y = F2R fyH1:(Rabs (x + y) < bpow (prec + Fexp fx))%RH2:(Rabs (x + y) < bpow (prec + Fexp fy))%RH:(x + y)%R <> 0%Rgeneric_format beta fexp (x + y)beta:radixprec:Zfexp:Z -> ZHfexp:forall e : Z, (fexp e <= e - prec)%Zx, y:Rfx, fy:float betaHx:x = F2R fxHy:y = F2R fyH1:(Rabs (x + y) < bpow (prec + Fexp fx))%RH2:(Rabs (x + y) < bpow (prec + Fexp fy))%RH:(x + y)%R <> 0%Rgeneric_format beta fexp (x + y)beta:radixprec:Zfexp:Z -> ZHfexp:forall e : Z, (fexp e <= e - prec)%Zx, y:Rfx, fy:float betaHx:x = F2R fxHy:y = F2R fyH1:(Rabs (x + y) < bpow (prec + Fexp fx))%RH2:(Rabs (x + y) < bpow (prec + Fexp fy))%RH:(x + y)%R <> 0%Rgeneric_format beta fexp (F2R (Fplus fx fy))beta:radixprec:Zfexp:Z -> ZHfexp:forall e : Z, (fexp e <= e - prec)%Zx, y:Rfx, fy:float betaHx:x = F2R fxHy:y = F2R fyH1:(Rabs (x + y) < bpow (prec + Fexp fx))%RH2:(Rabs (x + y) < bpow (prec + Fexp fy))%RH:(x + y)%R <> 0%R(let (Fnum, _) := Fplus fx fy in Fnum) <> 0%Z -> (cexp beta fexp (F2R {| Fnum := let (Fnum, _) := Fplus fx fy in Fnum; Fexp := let (_, Fexp) := Fplus fx fy in Fexp |}) <= (let (_, Fexp) := Fplus fx fy in Fexp))%Zbeta:radixprec:Zfexp:Z -> ZHfexp:forall e : Z, (fexp e <= e - prec)%Zx, y:Rfx, fy:float betaHx:x = F2R fxHy:y = F2R fyH1:(Rabs (x + y) < bpow (prec + Fexp fx))%RH2:(Rabs (x + y) < bpow (prec + Fexp fy))%RH:(x + y)%R <> 0%R(cexp beta fexp (F2R {| Fnum := let (Fnum, _) := Fplus fx fy in Fnum; Fexp := let (_, Fexp) := Fplus fx fy in Fexp |}) <= (let (_, Fexp) := Fplus fx fy in Fexp))%Zbeta:radixprec:Zfexp:Z -> ZHfexp:forall e : Z, (fexp e <= e - prec)%Zx, y:Rfx, fy:float betaHx:x = F2R fxHy:y = F2R fyH1:(Rabs (x + y) < bpow (prec + Fexp fx))%RH2:(Rabs (x + y) < bpow (prec + Fexp fy))%RH:(x + y)%R <> 0%Rforall Fnum Fexp : Z, Fplus fx fy = {| Fnum := Fnum; Fexp := Fexp |} -> (cexp beta fexp (F2R {| Fnum := Fnum; Fexp := Fexp |}) <= Fexp)%Zbeta:radixprec:Zfexp:Z -> ZHfexp:forall e : Z, (fexp e <= e - prec)%Zx, y:Rfx, fy:float betaHx:x = F2R fxHy:y = F2R fyH1:(Rabs (x + y) < bpow (prec + Fexp fx))%RH2:(Rabs (x + y) < bpow (prec + Fexp fy))%RH:(x + y)%R <> 0%Rmz, ez:ZHz:Fplus fx fy = {| Fnum := mz; Fexp := ez |}(cexp beta fexp (F2R {| Fnum := mz; Fexp := ez |}) <= ez)%Zbeta:radixprec:Zfexp:Z -> ZHfexp:forall e : Z, (fexp e <= e - prec)%Zx, y:Rfx, fy:float betaHx:x = F2R fxHy:y = F2R fyH1:(Rabs (x + y) < bpow (prec + Fexp fx))%RH2:(Rabs (x + y) < bpow (prec + Fexp fy))%RH:(x + y)%R <> 0%Rmz, ez:ZHz:Fplus fx fy = {| Fnum := mz; Fexp := ez |}(cexp beta fexp (F2R (Fplus fx fy)) <= ez)%Zbeta:radixprec:Zfexp:Z -> ZHfexp:forall e : Z, (fexp e <= e - prec)%Zx, y:Rfx, fy:float betaHx:x = F2R fxHy:y = F2R fyH1:(Rabs (x + y) < bpow (prec + Fexp fx))%RH2:(Rabs (x + y) < bpow (prec + Fexp fy))%RH:(x + y)%R <> 0%Rmz, ez:ZHz:Fplus fx fy = {| Fnum := mz; Fexp := ez |}(cexp beta fexp (F2R (Fplus fx fy)) <= Z.min (Fexp fx) (Fexp fy))%Zbeta:radixprec:Zfexp:Z -> ZHfexp:forall e : Z, (fexp e <= e - prec)%Zx, y:Rfx, fy:float betaHx:x = F2R fxHy:y = F2R fyH1:(Rabs (x + y) < bpow (prec + Fexp fx))%RH2:(Rabs (x + y) < bpow (prec + Fexp fy))%RH:(x + y)%R <> 0%Rmz, ez:ZHz:Fplus fx fy = {| Fnum := mz; Fexp := ez |}(Z.min (Fexp fx) (Fexp fy) <= ez)%Zbeta:radixprec:Zfexp:Z -> ZHfexp:forall e : Z, (fexp e <= e - prec)%Zx, y:Rfx, fy:float betaHx:x = F2R fxHy:y = F2R fyH1:(Rabs (x + y) < bpow (prec + Fexp fx))%RH2:(Rabs (x + y) < bpow (prec + Fexp fy))%RH:(x + y)%R <> 0%Rmz, ez:ZHz:Fplus fx fy = {| Fnum := mz; Fexp := ez |}(cexp beta fexp (x + y) <= Z.min (Fexp fx) (Fexp fy))%Zbeta:radixprec:Zfexp:Z -> ZHfexp:forall e : Z, (fexp e <= e - prec)%Zx, y:Rfx, fy:float betaHx:x = F2R fxHy:y = F2R fyH1:(Rabs (x + y) < bpow (prec + Fexp fx))%RH2:(Rabs (x + y) < bpow (prec + Fexp fy))%RH:(x + y)%R <> 0%Rmz, ez:ZHz:Fplus fx fy = {| Fnum := mz; Fexp := ez |}(Z.min (Fexp fx) (Fexp fy) <= ez)%Zbeta:radixprec:Zfexp:Z -> ZHfexp:forall e : Z, (fexp e <= e - prec)%Zx, y:Rfx, fy:float betaHx:x = F2R fxHy:y = F2R fyH1:(Rabs (x + y) < bpow (prec + Fexp fx))%RH2:(Rabs (x + y) < bpow (prec + Fexp fy))%RH:(x + y)%R <> 0%Rmz, ez:ZHz:Fplus fx fy = {| Fnum := mz; Fexp := ez |}(fexp (mag beta (x + y)) <= Z.min (Fexp fx) (Fexp fy))%Zbeta:radixprec:Zfexp:Z -> ZHfexp:forall e : Z, (fexp e <= e - prec)%Zx, y:Rfx, fy:float betaHx:x = F2R fxHy:y = F2R fyH1:(Rabs (x + y) < bpow (prec + Fexp fx))%RH2:(Rabs (x + y) < bpow (prec + Fexp fy))%RH:(x + y)%R <> 0%Rmz, ez:ZHz:Fplus fx fy = {| Fnum := mz; Fexp := ez |}(Z.min (Fexp fx) (Fexp fy) <= ez)%Zbeta:radixprec:Zfexp:Z -> ZHfexp:forall e : Z, (fexp e <= e - prec)%Zx, y:Rfx, fy:float betaHx:x = F2R fxHy:y = F2R fyH1:(Rabs (x + y) < bpow (prec + Fexp fx))%RH2:(Rabs (x + y) < bpow (prec + Fexp fy))%RH:(x + y)%R <> 0%Rmz, ez:ZHz:Fplus fx fy = {| Fnum := mz; Fexp := ez |}(mag beta (x + y) - prec <= Z.min (Fexp fx) (Fexp fy))%Zbeta:radixprec:Zfexp:Z -> ZHfexp:forall e : Z, (fexp e <= e - prec)%Zx, y:Rfx, fy:float betaHx:x = F2R fxHy:y = F2R fyH1:(Rabs (x + y) < bpow (prec + Fexp fx))%RH2:(Rabs (x + y) < bpow (prec + Fexp fy))%RH:(x + y)%R <> 0%Rmz, ez:ZHz:Fplus fx fy = {| Fnum := mz; Fexp := ez |}(Z.min (Fexp fx) (Fexp fy) <= ez)%Zbeta:radixprec:Zfexp:Z -> ZHfexp:forall e : Z, (fexp e <= e - prec)%Zx, y:Rfx, fy:float betaHx:x = F2R fxHy:y = F2R fyH1:(Rabs (x + y) < bpow (prec + Fexp fx))%RH2:(Rabs (x + y) < bpow (prec + Fexp fy))%RH:(x + y)%R <> 0%Rmz, ez:ZHz:Fplus fx fy = {| Fnum := mz; Fexp := ez |}(mag beta (x + y) <= prec + Z.min (Fexp fx) (Fexp fy))%Zbeta:radixprec:Zfexp:Z -> ZHfexp:forall e : Z, (fexp e <= e - prec)%Zx, y:Rfx, fy:float betaHx:x = F2R fxHy:y = F2R fyH1:(Rabs (x + y) < bpow (prec + Fexp fx))%RH2:(Rabs (x + y) < bpow (prec + Fexp fy))%RH:(x + y)%R <> 0%Rmz, ez:ZHz:Fplus fx fy = {| Fnum := mz; Fexp := ez |}(Z.min (Fexp fx) (Fexp fy) <= ez)%Zbeta:radixprec:Zfexp:Z -> ZHfexp:forall e : Z, (fexp e <= e - prec)%Zx, y:Rfx, fy:float betaHx:x = F2R fxHy:y = F2R fyH1:(Rabs (x + y) < bpow (prec + Fexp fx))%RH2:(Rabs (x + y) < bpow (prec + Fexp fy))%RH:(x + y)%R <> 0%Rmz, ez:ZHz:Fplus fx fy = {| Fnum := mz; Fexp := ez |}(Rabs (x + y) < bpow (prec + Z.min (Fexp fx) (Fexp fy)))%Rbeta:radixprec:Zfexp:Z -> ZHfexp:forall e : Z, (fexp e <= e - prec)%Zx, y:Rfx, fy:float betaHx:x = F2R fxHy:y = F2R fyH1:(Rabs (x + y) < bpow (prec + Fexp fx))%RH2:(Rabs (x + y) < bpow (prec + Fexp fy))%RH:(x + y)%R <> 0%Rmz, ez:ZHz:Fplus fx fy = {| Fnum := mz; Fexp := ez |}(Z.min (Fexp fx) (Fexp fy) <= ez)%Zbeta:radixprec:Zfexp:Z -> ZHfexp:forall e : Z, (fexp e <= e - prec)%Zx, y:Rfx, fy:float betaHx:x = F2R fxHy:y = F2R fyH1:(Rabs (x + y) < bpow (prec + Fexp fx))%RH2:(Rabs (x + y) < bpow (prec + Fexp fy))%RH:(x + y)%R <> 0%Rmz, ez:ZHz:Fplus fx fy = {| Fnum := mz; Fexp := ez |}(Z.min (Fexp fx) (Fexp fy) <= ez)%Zapply Z.le_refl. Qed. Context { prec_gt_0_ : Prec_gt_0 prec }. Notation format := (generic_format beta (FLX_exp prec)). Notation cexp := (cexp beta (FLX_exp prec)). Variable choice : Z -> bool.beta:radixprec:Zfexp:Z -> ZHfexp:forall e : Z, (fexp e <= e - prec)%Zx, y:Rfx, fy:float betaHx:x = F2R fxHy:y = F2R fyH1:(Rabs (x + y) < bpow (prec + Fexp fx))%RH2:(Rabs (x + y) < bpow (prec + Fexp fy))%RH:(x + y)%R <> 0%Rmz, ez:ZHz:Fplus fx fy = {| Fnum := mz; Fexp := ez |}(Fexp {| Fnum := mz; Fexp := ez |} <= ez)%Z
Remainder of the division in FLX
beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolforall rnd : R -> Z, Valid_rnd rnd -> forall x y : R, format x -> format y -> format (x - round beta (FLX_exp prec) rnd (x / y) * y)beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolforall rnd : R -> Z, Valid_rnd rnd -> forall x y : R, format x -> format y -> format (x - round beta (FLX_exp prec) rnd (x / y) * y)beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolrnd:R -> ZZrnd:Valid_rnd rndx, y:RHx:format xHy:format yformat (x - round beta (FLX_exp prec) rnd (x / y) * y)beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolrnd:R -> ZZrnd:Valid_rnd rndx, y:RHx:format xHy:format yZy:y = 0%Rformat (x - round beta (FLX_exp prec) rnd (x / y) * y)beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolrnd:R -> ZZrnd:Valid_rnd rndx, y:RHx:format xHy:format yZy:y <> 0%Rformat (x - round beta (FLX_exp prec) rnd (x / y) * y)beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolrnd:R -> ZZrnd:Valid_rnd rndx, y:RHx:format xHy:format yZy:y <> 0%Rformat (x - round beta (FLX_exp prec) rnd (x / y) * y)beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolrnd:R -> ZZrnd:Valid_rnd rndx, y:RHx:format xHy:format yZy:y <> 0%RHr:round beta (FLX_exp prec) rnd (x / y) = 0%Rformat (x - round beta (FLX_exp prec) rnd (x / y) * y)beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolrnd:R -> ZZrnd:Valid_rnd rndx, y:RHx:format xHy:format yZy:y <> 0%RHr:round beta (FLX_exp prec) rnd (x / y) <> 0%Rformat (x - round beta (FLX_exp prec) rnd (x / y) * y)beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolrnd:R -> ZZrnd:Valid_rnd rndx, y:RHx:format xHy:format yZy:y <> 0%RHr:round beta (FLX_exp prec) rnd (x / y) <> 0%Rformat (x - round beta (FLX_exp prec) rnd (x / y) * y)beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolrnd:R -> ZZrnd:Valid_rnd rndx, y:RHx:format xHy:format yZy:y <> 0%RHr:round beta (FLX_exp prec) rnd (x / y) <> 0%Rx <> R0beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolrnd:R -> ZZrnd:Valid_rnd rndx, y:RHx:format xHy:format yZy:y <> 0%RHr:round beta (FLX_exp prec) rnd (x / y) <> 0%RZx:x <> R0format (x - round beta (FLX_exp prec) rnd (x / y) * y)beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolrnd:R -> ZZrnd:Valid_rnd rndx, y:RHx:format xHy:format yZy:y <> 0%RHr:x = R0round beta (FLX_exp prec) rnd (x / y) = 0%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolrnd:R -> ZZrnd:Valid_rnd rndx, y:RHx:format xHy:format yZy:y <> 0%RHr:round beta (FLX_exp prec) rnd (x / y) <> 0%RZx:x <> R0format (x - round beta (FLX_exp prec) rnd (x / y) * y)beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolrnd:R -> ZZrnd:Valid_rnd rndx, y:RHx:format xHy:format yZy:y <> 0%RHr:x = R0round beta (FLX_exp prec) rnd (R0 / y) = 0%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolrnd:R -> ZZrnd:Valid_rnd rndx, y:RHx:format xHy:format yZy:y <> 0%RHr:round beta (FLX_exp prec) rnd (x / y) <> 0%RZx:x <> R0format (x - round beta (FLX_exp prec) rnd (x / y) * y)beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolrnd:R -> ZZrnd:Valid_rnd rndx, y:RHx:format xHy:format yZy:y <> 0%RHr:x = R0round beta (FLX_exp prec) rnd (R0 * / y) = 0%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolrnd:R -> ZZrnd:Valid_rnd rndx, y:RHx:format xHy:format yZy:y <> 0%RHr:round beta (FLX_exp prec) rnd (x / y) <> 0%RZx:x <> R0format (x - round beta (FLX_exp prec) rnd (x / y) * y)beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolrnd:R -> ZZrnd:Valid_rnd rndx, y:RHx:format xHy:format yZy:y <> 0%RHr:round beta (FLX_exp prec) rnd (x / y) <> 0%RZx:x <> R0format (x - round beta (FLX_exp prec) rnd (x / y) * y)beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolrnd:R -> ZZrnd:Valid_rnd rndx, y:RHx:format xHy:format yZy:y <> 0%RHr:round beta (FLX_exp prec) rnd (x / y) <> 0%RZx:x <> R0fx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxformat (x - round beta (FLX_exp prec) rnd (x / y) * y)beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolrnd:R -> ZZrnd:Valid_rnd rndx, y:RHx:format xHy:format yZy:y <> 0%RHr:round beta (FLX_exp prec) rnd (x / y) <> 0%RZx:x <> R0fx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfy:float betaHy1:y = F2R fyHy2:canonical beta (FLX_exp prec) fyformat (x - round beta (FLX_exp prec) rnd (x / y) * y)beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolrnd:R -> ZZrnd:Valid_rnd rndx, y:RHx:format xHy:format yZy:y <> 0%RHr:round beta (FLX_exp prec) rnd (x / y) <> 0%RZx:x <> R0fx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfy:float betaHy1:y = F2R fyHy2:canonical beta (FLX_exp prec) fyformat (round beta (FLX_exp prec) rnd (x / y))beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolrnd:R -> ZZrnd:Valid_rnd rndx, y:RHx:format xHy:format yZy:y <> 0%RHr:round beta (FLX_exp prec) rnd (x / y) <> 0%RZx:x <> R0fx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfy:float betaHy1:y = F2R fyHy2:canonical beta (FLX_exp prec) fyfr:float betaHr1:round beta (FLX_exp prec) rnd (x / y) = F2R frHr2:canonical beta (FLX_exp prec) frformat (x - round beta (FLX_exp prec) rnd (x / y) * y)beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolrnd:R -> ZZrnd:Valid_rnd rndx, y:RHx:format xHy:format yZy:y <> 0%RHr:round beta (FLX_exp prec) rnd (x / y) <> 0%RZx:x <> R0fx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfy:float betaHy1:y = F2R fyHy2:canonical beta (FLX_exp prec) fyfr:float betaHr1:round beta (FLX_exp prec) rnd (x / y) = F2R frHr2:canonical beta (FLX_exp prec) frformat (x - round beta (FLX_exp prec) rnd (x / y) * y)beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolrnd:R -> ZZrnd:Valid_rnd rndx, y:RHx:format xHy:format yZy:y <> 0%RHr:round beta (FLX_exp prec) rnd (x / y) <> 0%RZx:x <> R0fx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfy:float betaHy1:y = F2R fyHy2:canonical beta (FLX_exp prec) fyfr:float betaHr1:round beta (FLX_exp prec) rnd (x / y) = F2R frHr2:canonical beta (FLX_exp prec) frforall e : Z, (FLX_exp prec e <= e - prec)%Zbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolrnd:R -> ZZrnd:Valid_rnd rndx, y:RHx:format xHy:format yZy:y <> 0%RHr:round beta (FLX_exp prec) rnd (x / y) <> 0%RZx:x <> R0fx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfy:float betaHy1:y = F2R fyHy2:canonical beta (FLX_exp prec) fyfr:float betaHr1:round beta (FLX_exp prec) rnd (x / y) = F2R frHr2:canonical beta (FLX_exp prec) fr(- (round beta (FLX_exp prec) rnd (x / y) * y))%R = F2R (Fopp (Fmult fr fy))beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolrnd:R -> ZZrnd:Valid_rnd rndx, y:RHx:format xHy:format yZy:y <> 0%RHr:round beta (FLX_exp prec) rnd (x / y) <> 0%RZx:x <> R0fx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfy:float betaHy1:y = F2R fyHy2:canonical beta (FLX_exp prec) fyfr:float betaHr1:round beta (FLX_exp prec) rnd (x / y) = F2R frHr2:canonical beta (FLX_exp prec) fr(Rabs (x + - (round beta (FLX_exp prec) rnd (x / y) * y)) < bpow (prec + Fexp fx))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolrnd:R -> ZZrnd:Valid_rnd rndx, y:RHx:format xHy:format yZy:y <> 0%RHr:round beta (FLX_exp prec) rnd (x / y) <> 0%RZx:x <> R0fx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfy:float betaHy1:y = F2R fyHy2:canonical beta (FLX_exp prec) fyfr:float betaHr1:round beta (FLX_exp prec) rnd (x / y) = F2R frHr2:canonical beta (FLX_exp prec) fr(Rabs (x + - (round beta (FLX_exp prec) rnd (x / y) * y)) < bpow (prec + Fexp (Fopp (Fmult fr fy))))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolrnd:R -> ZZrnd:Valid_rnd rndx, y:RHx:format xHy:format yZy:y <> 0%RHr:round beta (FLX_exp prec) rnd (x / y) <> 0%RZx:x <> R0fx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfy:float betaHy1:y = F2R fyHy2:canonical beta (FLX_exp prec) fyfr:float betaHr1:round beta (FLX_exp prec) rnd (x / y) = F2R frHr2:canonical beta (FLX_exp prec) fr(- (round beta (FLX_exp prec) rnd (x / y) * y))%R = F2R (Fopp (Fmult fr fy))beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolrnd:R -> ZZrnd:Valid_rnd rndx, y:RHx:format xHy:format yZy:y <> 0%RHr:round beta (FLX_exp prec) rnd (x / y) <> 0%RZx:x <> R0fx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfy:float betaHy1:y = F2R fyHy2:canonical beta (FLX_exp prec) fyfr:float betaHr1:round beta (FLX_exp prec) rnd (x / y) = F2R frHr2:canonical beta (FLX_exp prec) fr(Rabs (x + - (round beta (FLX_exp prec) rnd (x / y) * y)) < bpow (prec + Fexp fx))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolrnd:R -> ZZrnd:Valid_rnd rndx, y:RHx:format xHy:format yZy:y <> 0%RHr:round beta (FLX_exp prec) rnd (x / y) <> 0%RZx:x <> R0fx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfy:float betaHy1:y = F2R fyHy2:canonical beta (FLX_exp prec) fyfr:float betaHr1:round beta (FLX_exp prec) rnd (x / y) = F2R frHr2:canonical beta (FLX_exp prec) fr(Rabs (x + - (round beta (FLX_exp prec) rnd (x / y) * y)) < bpow (prec + Fexp (Fopp (Fmult fr fy))))%R(* *)beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolrnd:R -> ZZrnd:Valid_rnd rndx, y:RHx:format xHy:format yZy:y <> 0%RHr:round beta (FLX_exp prec) rnd (x / y) <> 0%RZx:x <> R0fx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfy:float betaHy1:y = F2R fyHy2:canonical beta (FLX_exp prec) fyfr:float betaHr1:round beta (FLX_exp prec) rnd (x / y) = F2R frHr2:canonical beta (FLX_exp prec) fr(Rabs (x + - (round beta (FLX_exp prec) rnd (x / y) * y)) < bpow (prec + Fexp fx))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolrnd:R -> ZZrnd:Valid_rnd rndx, y:RHx:format xHy:format yZy:y <> 0%RHr:round beta (FLX_exp prec) rnd (x / y) <> 0%RZx:x <> R0fx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfy:float betaHy1:y = F2R fyHy2:canonical beta (FLX_exp prec) fyfr:float betaHr1:round beta (FLX_exp prec) rnd (x / y) = F2R frHr2:canonical beta (FLX_exp prec) fr(Rabs (x + - (round beta (FLX_exp prec) rnd (x / y) * y)) < bpow (prec + Fexp (Fopp (Fmult fr fy))))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolrnd:R -> ZZrnd:Valid_rnd rndx, y:RHx:format xHy:format yZy:y <> 0%RHr:round beta (FLX_exp prec) rnd (x / y) <> 0%RZx:x <> R0fx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfy:float betaHy1:y = F2R fyHy2:canonical beta (FLX_exp prec) fyfr:float betaHr1:round beta (FLX_exp prec) rnd (x / y) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps < bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) rnd (x / y) = (x / y * (1 + eps))%R(Rabs (x + - (round beta (FLX_exp prec) rnd (x / y) * y)) < bpow (prec + Fexp fx))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolrnd:R -> ZZrnd:Valid_rnd rndx, y:RHx:format xHy:format yZy:y <> 0%RHr:round beta (FLX_exp prec) rnd (x / y) <> 0%RZx:x <> R0fx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfy:float betaHy1:y = F2R fyHy2:canonical beta (FLX_exp prec) fyfr:float betaHr1:round beta (FLX_exp prec) rnd (x / y) = F2R frHr2:canonical beta (FLX_exp prec) fr(Rabs (x + - (round beta (FLX_exp prec) rnd (x / y) * y)) < bpow (prec + Fexp (Fopp (Fmult fr fy))))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolrnd:R -> ZZrnd:Valid_rnd rndx, y:RHx:format xHy:format yZy:y <> 0%RHr:round beta (FLX_exp prec) rnd (x / y) <> 0%RZx:x <> R0fx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfy:float betaHy1:y = F2R fyHy2:canonical beta (FLX_exp prec) fyfr:float betaHr1:round beta (FLX_exp prec) rnd (x / y) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps < bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) rnd (x / y) = (x / y * (1 + eps))%R(Rabs (x + - (x / y * (1 + eps) * y)) < bpow (prec + Fexp fx))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolrnd:R -> ZZrnd:Valid_rnd rndx, y:RHx:format xHy:format yZy:y <> 0%RHr:round beta (FLX_exp prec) rnd (x / y) <> 0%RZx:x <> R0fx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfy:float betaHy1:y = F2R fyHy2:canonical beta (FLX_exp prec) fyfr:float betaHr1:round beta (FLX_exp prec) rnd (x / y) = F2R frHr2:canonical beta (FLX_exp prec) fr(Rabs (x + - (round beta (FLX_exp prec) rnd (x / y) * y)) < bpow (prec + Fexp (Fopp (Fmult fr fy))))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolrnd:R -> ZZrnd:Valid_rnd rndx, y:RHx:format xHy:format yZy:y <> 0%RHr:round beta (FLX_exp prec) rnd (x / y) <> 0%RZx:x <> R0fx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfy:float betaHy1:y = F2R fyHy2:canonical beta (FLX_exp prec) fyfr:float betaHr1:round beta (FLX_exp prec) rnd (x / y) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps < bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) rnd (x / y) = (x / y * (1 + eps))%R(Rabs (- (x + - (x / y * (1 + eps) * y))) < bpow (prec + Fexp fx))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolrnd:R -> ZZrnd:Valid_rnd rndx, y:RHx:format xHy:format yZy:y <> 0%RHr:round beta (FLX_exp prec) rnd (x / y) <> 0%RZx:x <> R0fx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfy:float betaHy1:y = F2R fyHy2:canonical beta (FLX_exp prec) fyfr:float betaHr1:round beta (FLX_exp prec) rnd (x / y) = F2R frHr2:canonical beta (FLX_exp prec) fr(Rabs (x + - (round beta (FLX_exp prec) rnd (x / y) * y)) < bpow (prec + Fexp (Fopp (Fmult fr fy))))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolrnd:R -> ZZrnd:Valid_rnd rndx, y:RHx:format xHy:format yZy:y <> 0%RHr:round beta (FLX_exp prec) rnd (x / y) <> 0%RZx:x <> R0fx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfy:float betaHy1:y = F2R fyHy2:canonical beta (FLX_exp prec) fyfr:float betaHr1:round beta (FLX_exp prec) rnd (x / y) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps < bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) rnd (x / y) = (x / y * (1 + eps))%R(Rabs (x * eps) < bpow (prec + Fexp fx))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolrnd:R -> ZZrnd:Valid_rnd rndx, y:RHx:format xHy:format yZy:y <> 0%RHr:round beta (FLX_exp prec) rnd (x / y) <> 0%RZx:x <> R0fx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfy:float betaHy1:y = F2R fyHy2:canonical beta (FLX_exp prec) fyfr:float betaHr1:round beta (FLX_exp prec) rnd (x / y) = F2R frHr2:canonical beta (FLX_exp prec) fr(Rabs (x + - (round beta (FLX_exp prec) rnd (x / y) * y)) < bpow (prec + Fexp (Fopp (Fmult fr fy))))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolrnd:R -> ZZrnd:Valid_rnd rndx, y:RHx:format xHy:format yZy:y <> 0%RHr:round beta (FLX_exp prec) rnd (x / y) <> 0%RZx:x <> R0fx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfy:float betaHy1:y = F2R fyHy2:canonical beta (FLX_exp prec) fyfr:float betaHr1:round beta (FLX_exp prec) rnd (x / y) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps < bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) rnd (x / y) = (x / y * (1 + eps))%R(Rabs x * Rabs eps < bpow (prec + Fexp fx))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolrnd:R -> ZZrnd:Valid_rnd rndx, y:RHx:format xHy:format yZy:y <> 0%RHr:round beta (FLX_exp prec) rnd (x / y) <> 0%RZx:x <> R0fx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfy:float betaHy1:y = F2R fyHy2:canonical beta (FLX_exp prec) fyfr:float betaHr1:round beta (FLX_exp prec) rnd (x / y) = F2R frHr2:canonical beta (FLX_exp prec) fr(Rabs (x + - (round beta (FLX_exp prec) rnd (x / y) * y)) < bpow (prec + Fexp (Fopp (Fmult fr fy))))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolrnd:R -> ZZrnd:Valid_rnd rndx, y:RHx:format xHy:format yZy:y <> 0%RHr:round beta (FLX_exp prec) rnd (x / y) <> 0%RZx:x <> R0fx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfy:float betaHy1:y = F2R fyHy2:canonical beta (FLX_exp prec) fyfr:float betaHr1:round beta (FLX_exp prec) rnd (x / y) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps < bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) rnd (x / y) = (x / y * (1 + eps))%R(Rabs x * Rabs eps < Rabs x * 1)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolrnd:R -> ZZrnd:Valid_rnd rndx, y:RHx:format xHy:format yZy:y <> 0%RHr:round beta (FLX_exp prec) rnd (x / y) <> 0%RZx:x <> R0fx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfy:float betaHy1:y = F2R fyHy2:canonical beta (FLX_exp prec) fyfr:float betaHr1:round beta (FLX_exp prec) rnd (x / y) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps < bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) rnd (x / y) = (x / y * (1 + eps))%R(Rabs x * 1 <= bpow (prec + Fexp fx))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolrnd:R -> ZZrnd:Valid_rnd rndx, y:RHx:format xHy:format yZy:y <> 0%RHr:round beta (FLX_exp prec) rnd (x / y) <> 0%RZx:x <> R0fx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfy:float betaHy1:y = F2R fyHy2:canonical beta (FLX_exp prec) fyfr:float betaHr1:round beta (FLX_exp prec) rnd (x / y) = F2R frHr2:canonical beta (FLX_exp prec) fr(Rabs (x + - (round beta (FLX_exp prec) rnd (x / y) * y)) < bpow (prec + Fexp (Fopp (Fmult fr fy))))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolrnd:R -> ZZrnd:Valid_rnd rndx, y:RHx:format xHy:format yZy:y <> 0%RHr:round beta (FLX_exp prec) rnd (x / y) <> 0%RZx:x <> R0fx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfy:float betaHy1:y = F2R fyHy2:canonical beta (FLX_exp prec) fyfr:float betaHr1:round beta (FLX_exp prec) rnd (x / y) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps < bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) rnd (x / y) = (x / y * (1 + eps))%R(0 < Rabs x)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolrnd:R -> ZZrnd:Valid_rnd rndx, y:RHx:format xHy:format yZy:y <> 0%RHr:round beta (FLX_exp prec) rnd (x / y) <> 0%RZx:x <> R0fx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfy:float betaHy1:y = F2R fyHy2:canonical beta (FLX_exp prec) fyfr:float betaHr1:round beta (FLX_exp prec) rnd (x / y) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps < bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) rnd (x / y) = (x / y * (1 + eps))%R(Rabs eps < 1)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolrnd:R -> ZZrnd:Valid_rnd rndx, y:RHx:format xHy:format yZy:y <> 0%RHr:round beta (FLX_exp prec) rnd (x / y) <> 0%RZx:x <> R0fx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfy:float betaHy1:y = F2R fyHy2:canonical beta (FLX_exp prec) fyfr:float betaHr1:round beta (FLX_exp prec) rnd (x / y) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps < bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) rnd (x / y) = (x / y * (1 + eps))%R(Rabs x * 1 <= bpow (prec + Fexp fx))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolrnd:R -> ZZrnd:Valid_rnd rndx, y:RHx:format xHy:format yZy:y <> 0%RHr:round beta (FLX_exp prec) rnd (x / y) <> 0%RZx:x <> R0fx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfy:float betaHy1:y = F2R fyHy2:canonical beta (FLX_exp prec) fyfr:float betaHr1:round beta (FLX_exp prec) rnd (x / y) = F2R frHr2:canonical beta (FLX_exp prec) fr(Rabs (x + - (round beta (FLX_exp prec) rnd (x / y) * y)) < bpow (prec + Fexp (Fopp (Fmult fr fy))))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolrnd:R -> ZZrnd:Valid_rnd rndx, y:RHx:format xHy:format yZy:y <> 0%RHr:round beta (FLX_exp prec) rnd (x / y) <> 0%RZx:x <> R0fx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfy:float betaHy1:y = F2R fyHy2:canonical beta (FLX_exp prec) fyfr:float betaHr1:round beta (FLX_exp prec) rnd (x / y) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps < bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) rnd (x / y) = (x / y * (1 + eps))%R(Rabs eps < 1)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolrnd:R -> ZZrnd:Valid_rnd rndx, y:RHx:format xHy:format yZy:y <> 0%RHr:round beta (FLX_exp prec) rnd (x / y) <> 0%RZx:x <> R0fx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfy:float betaHy1:y = F2R fyHy2:canonical beta (FLX_exp prec) fyfr:float betaHr1:round beta (FLX_exp prec) rnd (x / y) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps < bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) rnd (x / y) = (x / y * (1 + eps))%R(Rabs x * 1 <= bpow (prec + Fexp fx))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolrnd:R -> ZZrnd:Valid_rnd rndx, y:RHx:format xHy:format yZy:y <> 0%RHr:round beta (FLX_exp prec) rnd (x / y) <> 0%RZx:x <> R0fx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfy:float betaHy1:y = F2R fyHy2:canonical beta (FLX_exp prec) fyfr:float betaHr1:round beta (FLX_exp prec) rnd (x / y) = F2R frHr2:canonical beta (FLX_exp prec) fr(Rabs (x + - (round beta (FLX_exp prec) rnd (x / y) * y)) < bpow (prec + Fexp (Fopp (Fmult fr fy))))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolrnd:R -> ZZrnd:Valid_rnd rndx, y:RHx:format xHy:format yZy:y <> 0%RHr:round beta (FLX_exp prec) rnd (x / y) <> 0%RZx:x <> R0fx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfy:float betaHy1:y = F2R fyHy2:canonical beta (FLX_exp prec) fyfr:float betaHr1:round beta (FLX_exp prec) rnd (x / y) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps < bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) rnd (x / y) = (x / y * (1 + eps))%R(bpow (- prec + 1) <= 1)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolrnd:R -> ZZrnd:Valid_rnd rndx, y:RHx:format xHy:format yZy:y <> 0%RHr:round beta (FLX_exp prec) rnd (x / y) <> 0%RZx:x <> R0fx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfy:float betaHy1:y = F2R fyHy2:canonical beta (FLX_exp prec) fyfr:float betaHr1:round beta (FLX_exp prec) rnd (x / y) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps < bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) rnd (x / y) = (x / y * (1 + eps))%R(Rabs x * 1 <= bpow (prec + Fexp fx))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolrnd:R -> ZZrnd:Valid_rnd rndx, y:RHx:format xHy:format yZy:y <> 0%RHr:round beta (FLX_exp prec) rnd (x / y) <> 0%RZx:x <> R0fx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfy:float betaHy1:y = F2R fyHy2:canonical beta (FLX_exp prec) fyfr:float betaHr1:round beta (FLX_exp prec) rnd (x / y) = F2R frHr2:canonical beta (FLX_exp prec) fr(Rabs (x + - (round beta (FLX_exp prec) rnd (x / y) * y)) < bpow (prec + Fexp (Fopp (Fmult fr fy))))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolrnd:R -> ZZrnd:Valid_rnd rndx, y:RHx:format xHy:format yZy:y <> 0%RHr:round beta (FLX_exp prec) rnd (x / y) <> 0%RZx:x <> R0fx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfy:float betaHy1:y = F2R fyHy2:canonical beta (FLX_exp prec) fyfr:float betaHr1:round beta (FLX_exp prec) rnd (x / y) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps < bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) rnd (x / y) = (x / y * (1 + eps))%R(bpow (- prec + 1) <= bpow 0)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolrnd:R -> ZZrnd:Valid_rnd rndx, y:RHx:format xHy:format yZy:y <> 0%RHr:round beta (FLX_exp prec) rnd (x / y) <> 0%RZx:x <> R0fx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfy:float betaHy1:y = F2R fyHy2:canonical beta (FLX_exp prec) fyfr:float betaHr1:round beta (FLX_exp prec) rnd (x / y) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps < bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) rnd (x / y) = (x / y * (1 + eps))%R(Rabs x * 1 <= bpow (prec + Fexp fx))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolrnd:R -> ZZrnd:Valid_rnd rndx, y:RHx:format xHy:format yZy:y <> 0%RHr:round beta (FLX_exp prec) rnd (x / y) <> 0%RZx:x <> R0fx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfy:float betaHy1:y = F2R fyHy2:canonical beta (FLX_exp prec) fyfr:float betaHr1:round beta (FLX_exp prec) rnd (x / y) = F2R frHr2:canonical beta (FLX_exp prec) fr(Rabs (x + - (round beta (FLX_exp prec) rnd (x / y) * y)) < bpow (prec + Fexp (Fopp (Fmult fr fy))))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolrnd:R -> ZZrnd:Valid_rnd rndx, y:RHx:format xHy:format yZy:y <> 0%RHr:round beta (FLX_exp prec) rnd (x / y) <> 0%RZx:x <> R0fx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfy:float betaHy1:y = F2R fyHy2:canonical beta (FLX_exp prec) fyfr:float betaHr1:round beta (FLX_exp prec) rnd (x / y) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps < bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) rnd (x / y) = (x / y * (1 + eps))%R(- prec + 1 <= 0)%Zbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolrnd:R -> ZZrnd:Valid_rnd rndx, y:RHx:format xHy:format yZy:y <> 0%RHr:round beta (FLX_exp prec) rnd (x / y) <> 0%RZx:x <> R0fx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfy:float betaHy1:y = F2R fyHy2:canonical beta (FLX_exp prec) fyfr:float betaHr1:round beta (FLX_exp prec) rnd (x / y) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps < bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) rnd (x / y) = (x / y * (1 + eps))%R(Rabs x * 1 <= bpow (prec + Fexp fx))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolrnd:R -> ZZrnd:Valid_rnd rndx, y:RHx:format xHy:format yZy:y <> 0%RHr:round beta (FLX_exp prec) rnd (x / y) <> 0%RZx:x <> R0fx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfy:float betaHy1:y = F2R fyHy2:canonical beta (FLX_exp prec) fyfr:float betaHr1:round beta (FLX_exp prec) rnd (x / y) = F2R frHr2:canonical beta (FLX_exp prec) fr(Rabs (x + - (round beta (FLX_exp prec) rnd (x / y) * y)) < bpow (prec + Fexp (Fopp (Fmult fr fy))))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolrnd:R -> ZZrnd:Valid_rnd rndx, y:RHx:format xHy:format yZy:y <> 0%RHr:round beta (FLX_exp prec) rnd (x / y) <> 0%RZx:x <> R0fx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfy:float betaHy1:y = F2R fyHy2:canonical beta (FLX_exp prec) fyfr:float betaHr1:round beta (FLX_exp prec) rnd (x / y) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps < bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) rnd (x / y) = (x / y * (1 + eps))%R(0 < prec)%Z -> (- prec + 1 <= 0)%Zbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolrnd:R -> ZZrnd:Valid_rnd rndx, y:RHx:format xHy:format yZy:y <> 0%RHr:round beta (FLX_exp prec) rnd (x / y) <> 0%RZx:x <> R0fx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfy:float betaHy1:y = F2R fyHy2:canonical beta (FLX_exp prec) fyfr:float betaHr1:round beta (FLX_exp prec) rnd (x / y) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps < bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) rnd (x / y) = (x / y * (1 + eps))%R(Rabs x * 1 <= bpow (prec + Fexp fx))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolrnd:R -> ZZrnd:Valid_rnd rndx, y:RHx:format xHy:format yZy:y <> 0%RHr:round beta (FLX_exp prec) rnd (x / y) <> 0%RZx:x <> R0fx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfy:float betaHy1:y = F2R fyHy2:canonical beta (FLX_exp prec) fyfr:float betaHr1:round beta (FLX_exp prec) rnd (x / y) = F2R frHr2:canonical beta (FLX_exp prec) fr(Rabs (x + - (round beta (FLX_exp prec) rnd (x / y) * y)) < bpow (prec + Fexp (Fopp (Fmult fr fy))))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolrnd:R -> ZZrnd:Valid_rnd rndx, y:RHx:format xHy:format yZy:y <> 0%RHr:round beta (FLX_exp prec) rnd (x / y) <> 0%RZx:x <> R0fx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfy:float betaHy1:y = F2R fyHy2:canonical beta (FLX_exp prec) fyfr:float betaHr1:round beta (FLX_exp prec) rnd (x / y) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps < bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) rnd (x / y) = (x / y * (1 + eps))%R(Rabs x * 1 <= bpow (prec + Fexp fx))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolrnd:R -> ZZrnd:Valid_rnd rndx, y:RHx:format xHy:format yZy:y <> 0%RHr:round beta (FLX_exp prec) rnd (x / y) <> 0%RZx:x <> R0fx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfy:float betaHy1:y = F2R fyHy2:canonical beta (FLX_exp prec) fyfr:float betaHr1:round beta (FLX_exp prec) rnd (x / y) = F2R frHr2:canonical beta (FLX_exp prec) fr(Rabs (x + - (round beta (FLX_exp prec) rnd (x / y) * y)) < bpow (prec + Fexp (Fopp (Fmult fr fy))))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolrnd:R -> ZZrnd:Valid_rnd rndx, y:RHx:format xHy:format yZy:y <> 0%RHr:round beta (FLX_exp prec) rnd (x / y) <> 0%RZx:x <> R0fx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfy:float betaHy1:y = F2R fyHy2:canonical beta (FLX_exp prec) fyfr:float betaHr1:round beta (FLX_exp prec) rnd (x / y) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps < bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) rnd (x / y) = (x / y * (1 + eps))%R(Rabs x <= bpow (prec + Fexp fx))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolrnd:R -> ZZrnd:Valid_rnd rndx, y:RHx:format xHy:format yZy:y <> 0%RHr:round beta (FLX_exp prec) rnd (x / y) <> 0%RZx:x <> R0fx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfy:float betaHy1:y = F2R fyHy2:canonical beta (FLX_exp prec) fyfr:float betaHr1:round beta (FLX_exp prec) rnd (x / y) = F2R frHr2:canonical beta (FLX_exp prec) fr(Rabs (x + - (round beta (FLX_exp prec) rnd (x / y) * y)) < bpow (prec + Fexp (Fopp (Fmult fr fy))))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolrnd:R -> ZZrnd:Valid_rnd rndx, y:RHx:format xHy:format yZy:y <> 0%RHr:round beta (FLX_exp prec) rnd (x / y) <> 0%RZx:x <> R0fx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfy:float betaHy1:y = F2R fyHy2:canonical beta (FLX_exp prec) fyfr:float betaHr1:round beta (FLX_exp prec) rnd (x / y) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps < bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) rnd (x / y) = (x / y * (1 + eps))%R(Rabs x <= bpow (prec + cexp x))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolrnd:R -> ZZrnd:Valid_rnd rndx, y:RHx:format xHy:format yZy:y <> 0%RHr:round beta (FLX_exp prec) rnd (x / y) <> 0%RZx:x <> R0fx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfy:float betaHy1:y = F2R fyHy2:canonical beta (FLX_exp prec) fyfr:float betaHr1:round beta (FLX_exp prec) rnd (x / y) = F2R frHr2:canonical beta (FLX_exp prec) fr(Rabs (x + - (round beta (FLX_exp prec) rnd (x / y) * y)) < bpow (prec + Fexp (Fopp (Fmult fr fy))))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolrnd:R -> ZZrnd:Valid_rnd rndx, y:RHx:format xHy:format yZy:y <> 0%RHr:round beta (FLX_exp prec) rnd (x / y) <> 0%RZx:x <> R0fx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfy:float betaHy1:y = F2R fyHy2:canonical beta (FLX_exp prec) fyfr:float betaHr1:round beta (FLX_exp prec) rnd (x / y) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps < bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) rnd (x / y) = (x / y * (1 + eps))%R(Rabs x <= bpow (prec + FLX_exp prec (mag beta x)))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolrnd:R -> ZZrnd:Valid_rnd rndx, y:RHx:format xHy:format yZy:y <> 0%RHr:round beta (FLX_exp prec) rnd (x / y) <> 0%RZx:x <> R0fx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfy:float betaHy1:y = F2R fyHy2:canonical beta (FLX_exp prec) fyfr:float betaHr1:round beta (FLX_exp prec) rnd (x / y) = F2R frHr2:canonical beta (FLX_exp prec) fr(Rabs (x + - (round beta (FLX_exp prec) rnd (x / y) * y)) < bpow (prec + Fexp (Fopp (Fmult fr fy))))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolrnd:R -> ZZrnd:Valid_rnd rndx, y:RHx:format xHy:format yZy:y <> 0%RHr:round beta (FLX_exp prec) rnd (x / y) <> 0%RZx:x <> R0fx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfy:float betaHy1:y = F2R fyHy2:canonical beta (FLX_exp prec) fyfr:float betaHr1:round beta (FLX_exp prec) rnd (x / y) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps < bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) rnd (x / y) = (x / y * (1 + eps))%Rex:ZHex:x <> 0%R -> (bpow (ex - 1) <= Rabs x < bpow ex)%R(Rabs x <= bpow (prec + FLX_exp prec (Build_mag_prop beta x ex Hex)))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolrnd:R -> ZZrnd:Valid_rnd rndx, y:RHx:format xHy:format yZy:y <> 0%RHr:round beta (FLX_exp prec) rnd (x / y) <> 0%RZx:x <> R0fx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfy:float betaHy1:y = F2R fyHy2:canonical beta (FLX_exp prec) fyfr:float betaHr1:round beta (FLX_exp prec) rnd (x / y) = F2R frHr2:canonical beta (FLX_exp prec) fr(Rabs (x + - (round beta (FLX_exp prec) rnd (x / y) * y)) < bpow (prec + Fexp (Fopp (Fmult fr fy))))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolrnd:R -> ZZrnd:Valid_rnd rndx, y:RHx:format xHy:format yZy:y <> 0%RHr:round beta (FLX_exp prec) rnd (x / y) <> 0%RZx:x <> R0fx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfy:float betaHy1:y = F2R fyHy2:canonical beta (FLX_exp prec) fyfr:float betaHr1:round beta (FLX_exp prec) rnd (x / y) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps < bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) rnd (x / y) = (x / y * (1 + eps))%Rex:ZHex:x <> 0%R -> (bpow (ex - 1) <= Rabs x < bpow ex)%R(Rabs x <= bpow (prec + FLX_exp prec ex))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolrnd:R -> ZZrnd:Valid_rnd rndx, y:RHx:format xHy:format yZy:y <> 0%RHr:round beta (FLX_exp prec) rnd (x / y) <> 0%RZx:x <> R0fx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfy:float betaHy1:y = F2R fyHy2:canonical beta (FLX_exp prec) fyfr:float betaHr1:round beta (FLX_exp prec) rnd (x / y) = F2R frHr2:canonical beta (FLX_exp prec) fr(Rabs (x + - (round beta (FLX_exp prec) rnd (x / y) * y)) < bpow (prec + Fexp (Fopp (Fmult fr fy))))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolrnd:R -> ZZrnd:Valid_rnd rndx, y:RHx:format xHy:format yZy:y <> 0%RHr:round beta (FLX_exp prec) rnd (x / y) <> 0%RZx:x <> R0fx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfy:float betaHy1:y = F2R fyHy2:canonical beta (FLX_exp prec) fyfr:float betaHr1:round beta (FLX_exp prec) rnd (x / y) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps < bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) rnd (x / y) = (x / y * (1 + eps))%Rex:ZHex:(bpow (ex - 1) <= Rabs x < bpow ex)%R(Rabs x <= bpow (prec + FLX_exp prec ex))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolrnd:R -> ZZrnd:Valid_rnd rndx, y:RHx:format xHy:format yZy:y <> 0%RHr:round beta (FLX_exp prec) rnd (x / y) <> 0%RZx:x <> R0fx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfy:float betaHy1:y = F2R fyHy2:canonical beta (FLX_exp prec) fyfr:float betaHr1:round beta (FLX_exp prec) rnd (x / y) = F2R frHr2:canonical beta (FLX_exp prec) fr(Rabs (x + - (round beta (FLX_exp prec) rnd (x / y) * y)) < bpow (prec + Fexp (Fopp (Fmult fr fy))))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolrnd:R -> ZZrnd:Valid_rnd rndx, y:RHx:format xHy:format yZy:y <> 0%RHr:round beta (FLX_exp prec) rnd (x / y) <> 0%RZx:x <> R0fx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfy:float betaHy1:y = F2R fyHy2:canonical beta (FLX_exp prec) fyfr:float betaHr1:round beta (FLX_exp prec) rnd (x / y) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps < bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) rnd (x / y) = (x / y * (1 + eps))%Rex:ZHex:(bpow (ex - 1) <= Rabs x < bpow ex)%R(Rabs x < bpow (prec + FLX_exp prec ex))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolrnd:R -> ZZrnd:Valid_rnd rndx, y:RHx:format xHy:format yZy:y <> 0%RHr:round beta (FLX_exp prec) rnd (x / y) <> 0%RZx:x <> R0fx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfy:float betaHy1:y = F2R fyHy2:canonical beta (FLX_exp prec) fyfr:float betaHr1:round beta (FLX_exp prec) rnd (x / y) = F2R frHr2:canonical beta (FLX_exp prec) fr(Rabs (x + - (round beta (FLX_exp prec) rnd (x / y) * y)) < bpow (prec + Fexp (Fopp (Fmult fr fy))))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolrnd:R -> ZZrnd:Valid_rnd rndx, y:RHx:format xHy:format yZy:y <> 0%RHr:round beta (FLX_exp prec) rnd (x / y) <> 0%RZx:x <> R0fx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfy:float betaHy1:y = F2R fyHy2:canonical beta (FLX_exp prec) fyfr:float betaHr1:round beta (FLX_exp prec) rnd (x / y) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps < bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) rnd (x / y) = (x / y * (1 + eps))%Rex:ZHex:(bpow (ex - 1) <= Rabs x < bpow ex)%R(bpow ex <= bpow (prec + FLX_exp prec ex))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolrnd:R -> ZZrnd:Valid_rnd rndx, y:RHx:format xHy:format yZy:y <> 0%RHr:round beta (FLX_exp prec) rnd (x / y) <> 0%RZx:x <> R0fx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfy:float betaHy1:y = F2R fyHy2:canonical beta (FLX_exp prec) fyfr:float betaHr1:round beta (FLX_exp prec) rnd (x / y) = F2R frHr2:canonical beta (FLX_exp prec) fr(Rabs (x + - (round beta (FLX_exp prec) rnd (x / y) * y)) < bpow (prec + Fexp (Fopp (Fmult fr fy))))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolrnd:R -> ZZrnd:Valid_rnd rndx, y:RHx:format xHy:format yZy:y <> 0%RHr:round beta (FLX_exp prec) rnd (x / y) <> 0%RZx:x <> R0fx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfy:float betaHy1:y = F2R fyHy2:canonical beta (FLX_exp prec) fyfr:float betaHr1:round beta (FLX_exp prec) rnd (x / y) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps < bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) rnd (x / y) = (x / y * (1 + eps))%Rex:ZHex:(bpow (ex - 1) <= Rabs x < bpow ex)%R(ex <= prec + FLX_exp prec ex)%Zbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolrnd:R -> ZZrnd:Valid_rnd rndx, y:RHx:format xHy:format yZy:y <> 0%RHr:round beta (FLX_exp prec) rnd (x / y) <> 0%RZx:x <> R0fx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfy:float betaHy1:y = F2R fyHy2:canonical beta (FLX_exp prec) fyfr:float betaHr1:round beta (FLX_exp prec) rnd (x / y) = F2R frHr2:canonical beta (FLX_exp prec) fr(Rabs (x + - (round beta (FLX_exp prec) rnd (x / y) * y)) < bpow (prec + Fexp (Fopp (Fmult fr fy))))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolrnd:R -> ZZrnd:Valid_rnd rndx, y:RHx:format xHy:format yZy:y <> 0%RHr:round beta (FLX_exp prec) rnd (x / y) <> 0%RZx:x <> R0fx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfy:float betaHy1:y = F2R fyHy2:canonical beta (FLX_exp prec) fyfr:float betaHr1:round beta (FLX_exp prec) rnd (x / y) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps < bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) rnd (x / y) = (x / y * (1 + eps))%Rex:ZHex:(bpow (ex - 1) <= Rabs x < bpow ex)%R(ex <= prec + (ex - prec))%Zbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolrnd:R -> ZZrnd:Valid_rnd rndx, y:RHx:format xHy:format yZy:y <> 0%RHr:round beta (FLX_exp prec) rnd (x / y) <> 0%RZx:x <> R0fx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfy:float betaHy1:y = F2R fyHy2:canonical beta (FLX_exp prec) fyfr:float betaHr1:round beta (FLX_exp prec) rnd (x / y) = F2R frHr2:canonical beta (FLX_exp prec) fr(Rabs (x + - (round beta (FLX_exp prec) rnd (x / y) * y)) < bpow (prec + Fexp (Fopp (Fmult fr fy))))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolrnd:R -> ZZrnd:Valid_rnd rndx, y:RHx:format xHy:format yZy:y <> 0%RHr:round beta (FLX_exp prec) rnd (x / y) <> 0%RZx:x <> R0fx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfy:float betaHy1:y = F2R fyHy2:canonical beta (FLX_exp prec) fyfr:float betaHr1:round beta (FLX_exp prec) rnd (x / y) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps < bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) rnd (x / y) = (x / y * (1 + eps))%Rex:ZHex:(bpow (ex - 1) <= Rabs x < bpow ex)%R(ex <= ex)%Zbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolrnd:R -> ZZrnd:Valid_rnd rndx, y:RHx:format xHy:format yZy:y <> 0%RHr:round beta (FLX_exp prec) rnd (x / y) <> 0%RZx:x <> R0fx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfy:float betaHy1:y = F2R fyHy2:canonical beta (FLX_exp prec) fyfr:float betaHr1:round beta (FLX_exp prec) rnd (x / y) = F2R frHr2:canonical beta (FLX_exp prec) fr(Rabs (x + - (round beta (FLX_exp prec) rnd (x / y) * y)) < bpow (prec + Fexp (Fopp (Fmult fr fy))))%R(* *)beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolrnd:R -> ZZrnd:Valid_rnd rndx, y:RHx:format xHy:format yZy:y <> 0%RHr:round beta (FLX_exp prec) rnd (x / y) <> 0%RZx:x <> R0fx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfy:float betaHy1:y = F2R fyHy2:canonical beta (FLX_exp prec) fyfr:float betaHr1:round beta (FLX_exp prec) rnd (x / y) = F2R frHr2:canonical beta (FLX_exp prec) fr(Rabs (x + - (round beta (FLX_exp prec) rnd (x / y) * y)) < bpow (prec + Fexp (Fopp (Fmult fr fy))))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolrnd:R -> ZZrnd:Valid_rnd rndx, y:RHx:format xHy:format yZy:y <> 0%RHr:round beta (FLX_exp prec) rnd (x / y) <> 0%RZx:x <> R0fx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfy:float betaHy1:y = F2R fyHy2:canonical beta (FLX_exp prec) fyfr:float betaHr1:round beta (FLX_exp prec) rnd (x / y) = F2R frHr2:canonical beta (FLX_exp prec) fr(Rabs (x + - (round beta (FLX_exp prec) rnd (x / y) * y)) < bpow (prec + (Fexp fr + Fexp fy)))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolrnd:R -> ZZrnd:Valid_rnd rndx, y:RHx:format xHy:format yZy:y <> 0%RHr:round beta (FLX_exp prec) rnd (x / y) <> 0%RZx:x <> R0fx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfy:float betaHy1:y = F2R fyHy2:canonical beta (FLX_exp prec) fyfr:float betaHr1:round beta (FLX_exp prec) rnd (x / y) = F2R frHr2:canonical beta (FLX_exp prec) fr(Fexp fr + Fexp fy)%Z = Fexp (Fopp (Fmult fr fy))beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolrnd:R -> ZZrnd:Valid_rnd rndx, y:RHx:format xHy:format yZy:y <> 0%RHr:round beta (FLX_exp prec) rnd (x / y) <> 0%RZx:x <> R0fx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfy:float betaHy1:y = F2R fyHy2:canonical beta (FLX_exp prec) fyfr:float betaHr1:round beta (FLX_exp prec) rnd (x / y) = F2R frHr2:canonical beta (FLX_exp prec) fr(Rabs (x + - (round beta (FLX_exp prec) rnd (x / y) * y)) < bpow (prec + (Fexp fr + Fexp fy)))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolrnd:R -> ZZrnd:Valid_rnd rndx, y:RHx:format xHy:format yZy:y <> 0%RHr:round beta (FLX_exp prec) rnd (x / y) <> 0%RZx:x <> R0fx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfy:float betaHy1:y = F2R fyHy2:canonical beta (FLX_exp prec) fyfr:float betaHr1:round beta (FLX_exp prec) rnd (x / y) = F2R frHr2:canonical beta (FLX_exp prec) fr(Rabs (y * - (round beta (FLX_exp prec) rnd (x / y) - x / y)) < bpow (prec + (Fexp fr + Fexp fy)))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolrnd:R -> ZZrnd:Valid_rnd rndx, y:RHx:format xHy:format yZy:y <> 0%RHr:round beta (FLX_exp prec) rnd (x / y) <> 0%RZx:x <> R0fx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfy:float betaHy1:y = F2R fyHy2:canonical beta (FLX_exp prec) fyfr:float betaHr1:round beta (FLX_exp prec) rnd (x / y) = F2R frHr2:canonical beta (FLX_exp prec) fr(y * - (round beta (FLX_exp prec) rnd (x / y) - x / y))%R = (x + - (round beta (FLX_exp prec) rnd (x / y) * y))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolrnd:R -> ZZrnd:Valid_rnd rndx, y:RHx:format xHy:format yZy:y <> 0%RHr:round beta (FLX_exp prec) rnd (x / y) <> 0%RZx:x <> R0fx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfy:float betaHy1:y = F2R fyHy2:canonical beta (FLX_exp prec) fyfr:float betaHr1:round beta (FLX_exp prec) rnd (x / y) = F2R frHr2:canonical beta (FLX_exp prec) fr(Rabs (y * - (round beta (FLX_exp prec) rnd (x / y) - x / y)) < bpow (prec + (Fexp fr + Fexp fy)))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolrnd:R -> ZZrnd:Valid_rnd rndx, y:RHx:format xHy:format yZy:y <> 0%RHr:round beta (FLX_exp prec) rnd (x / y) <> 0%RZx:x <> R0fx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfy:float betaHy1:y = F2R fyHy2:canonical beta (FLX_exp prec) fyfr:float betaHr1:round beta (FLX_exp prec) rnd (x / y) = F2R frHr2:canonical beta (FLX_exp prec) fr(Rabs y * Rabs (- (round beta (FLX_exp prec) rnd (x / y) - x / y)) < bpow (prec + (Fexp fr + Fexp fy)))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolrnd:R -> ZZrnd:Valid_rnd rndx, y:RHx:format xHy:format yZy:y <> 0%RHr:round beta (FLX_exp prec) rnd (x / y) <> 0%RZx:x <> R0fx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfy:float betaHy1:y = F2R fyHy2:canonical beta (FLX_exp prec) fyfr:float betaHr1:round beta (FLX_exp prec) rnd (x / y) = F2R frHr2:canonical beta (FLX_exp prec) fr(Rabs y * Rabs (- (round beta (FLX_exp prec) rnd (x / y) - x / y)) < Rabs y * bpow (Fexp fr))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolrnd:R -> ZZrnd:Valid_rnd rndx, y:RHx:format xHy:format yZy:y <> 0%RHr:round beta (FLX_exp prec) rnd (x / y) <> 0%RZx:x <> R0fx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfy:float betaHy1:y = F2R fyHy2:canonical beta (FLX_exp prec) fyfr:float betaHr1:round beta (FLX_exp prec) rnd (x / y) = F2R frHr2:canonical beta (FLX_exp prec) fr(Rabs y * bpow (Fexp fr) <= bpow (prec + (Fexp fr + Fexp fy)))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolrnd:R -> ZZrnd:Valid_rnd rndx, y:RHx:format xHy:format yZy:y <> 0%RHr:round beta (FLX_exp prec) rnd (x / y) <> 0%RZx:x <> R0fx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfy:float betaHy1:y = F2R fyHy2:canonical beta (FLX_exp prec) fyfr:float betaHr1:round beta (FLX_exp prec) rnd (x / y) = F2R frHr2:canonical beta (FLX_exp prec) fr(0 < Rabs y)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolrnd:R -> ZZrnd:Valid_rnd rndx, y:RHx:format xHy:format yZy:y <> 0%RHr:round beta (FLX_exp prec) rnd (x / y) <> 0%RZx:x <> R0fx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfy:float betaHy1:y = F2R fyHy2:canonical beta (FLX_exp prec) fyfr:float betaHr1:round beta (FLX_exp prec) rnd (x / y) = F2R frHr2:canonical beta (FLX_exp prec) fr(Rabs (- (round beta (FLX_exp prec) rnd (x / y) - x / y)) < bpow (Fexp fr))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolrnd:R -> ZZrnd:Valid_rnd rndx, y:RHx:format xHy:format yZy:y <> 0%RHr:round beta (FLX_exp prec) rnd (x / y) <> 0%RZx:x <> R0fx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfy:float betaHy1:y = F2R fyHy2:canonical beta (FLX_exp prec) fyfr:float betaHr1:round beta (FLX_exp prec) rnd (x / y) = F2R frHr2:canonical beta (FLX_exp prec) fr(Rabs y * bpow (Fexp fr) <= bpow (prec + (Fexp fr + Fexp fy)))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolrnd:R -> ZZrnd:Valid_rnd rndx, y:RHx:format xHy:format yZy:y <> 0%RHr:round beta (FLX_exp prec) rnd (x / y) <> 0%RZx:x <> R0fx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfy:float betaHy1:y = F2R fyHy2:canonical beta (FLX_exp prec) fyfr:float betaHr1:round beta (FLX_exp prec) rnd (x / y) = F2R frHr2:canonical beta (FLX_exp prec) fr(Rabs (- (round beta (FLX_exp prec) rnd (x / y) - x / y)) < bpow (Fexp fr))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolrnd:R -> ZZrnd:Valid_rnd rndx, y:RHx:format xHy:format yZy:y <> 0%RHr:round beta (FLX_exp prec) rnd (x / y) <> 0%RZx:x <> R0fx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfy:float betaHy1:y = F2R fyHy2:canonical beta (FLX_exp prec) fyfr:float betaHr1:round beta (FLX_exp prec) rnd (x / y) = F2R frHr2:canonical beta (FLX_exp prec) fr(Rabs y * bpow (Fexp fr) <= bpow (prec + (Fexp fr + Fexp fy)))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolrnd:R -> ZZrnd:Valid_rnd rndx, y:RHx:format xHy:format yZy:y <> 0%RHr:round beta (FLX_exp prec) rnd (x / y) <> 0%RZx:x <> R0fx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfy:float betaHy1:y = F2R fyHy2:canonical beta (FLX_exp prec) fyfr:float betaHr1:round beta (FLX_exp prec) rnd (x / y) = F2R frHr2:canonical beta (FLX_exp prec) fr(Rabs (round beta (FLX_exp prec) rnd (x / y) - x / y) < bpow (Fexp fr))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolrnd:R -> ZZrnd:Valid_rnd rndx, y:RHx:format xHy:format yZy:y <> 0%RHr:round beta (FLX_exp prec) rnd (x / y) <> 0%RZx:x <> R0fx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfy:float betaHy1:y = F2R fyHy2:canonical beta (FLX_exp prec) fyfr:float betaHr1:round beta (FLX_exp prec) rnd (x / y) = F2R frHr2:canonical beta (FLX_exp prec) fr(Rabs y * bpow (Fexp fr) <= bpow (prec + (Fexp fr + Fexp fy)))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolrnd:R -> ZZrnd:Valid_rnd rndx, y:RHx:format xHy:format yZy:y <> 0%RHr:round beta (FLX_exp prec) rnd (x / y) <> 0%RZx:x <> R0fx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfy:float betaHy1:y = F2R fyHy2:canonical beta (FLX_exp prec) fyfr:float betaHr1:round beta (FLX_exp prec) rnd (x / y) = F2R frHr2:canonical beta (FLX_exp prec) fr(Rabs (round beta (FLX_exp prec) rnd (x / y) - x / y) < ulp beta (FLX_exp prec) (F2R fr))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolrnd:R -> ZZrnd:Valid_rnd rndx, y:RHx:format xHy:format yZy:y <> 0%RHr:round beta (FLX_exp prec) rnd (x / y) <> 0%RZx:x <> R0fx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfy:float betaHy1:y = F2R fyHy2:canonical beta (FLX_exp prec) fyfr:float betaHr1:round beta (FLX_exp prec) rnd (x / y) = F2R frHr2:canonical beta (FLX_exp prec) frulp beta (FLX_exp prec) (F2R fr) = bpow (Fexp fr)beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolrnd:R -> ZZrnd:Valid_rnd rndx, y:RHx:format xHy:format yZy:y <> 0%RHr:round beta (FLX_exp prec) rnd (x / y) <> 0%RZx:x <> R0fx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfy:float betaHy1:y = F2R fyHy2:canonical beta (FLX_exp prec) fyfr:float betaHr1:round beta (FLX_exp prec) rnd (x / y) = F2R frHr2:canonical beta (FLX_exp prec) fr(Rabs y * bpow (Fexp fr) <= bpow (prec + (Fexp fr + Fexp fy)))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolrnd:R -> ZZrnd:Valid_rnd rndx, y:RHx:format xHy:format yZy:y <> 0%RHr:round beta (FLX_exp prec) rnd (x / y) <> 0%RZx:x <> R0fx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfy:float betaHy1:y = F2R fyHy2:canonical beta (FLX_exp prec) fyfr:float betaHr1:round beta (FLX_exp prec) rnd (x / y) = F2R frHr2:canonical beta (FLX_exp prec) fr(Rabs (round beta (FLX_exp prec) rnd (x / y) - x / y) < ulp beta (FLX_exp prec) (round beta (FLX_exp prec) rnd (x / y)))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolrnd:R -> ZZrnd:Valid_rnd rndx, y:RHx:format xHy:format yZy:y <> 0%RHr:round beta (FLX_exp prec) rnd (x / y) <> 0%RZx:x <> R0fx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfy:float betaHy1:y = F2R fyHy2:canonical beta (FLX_exp prec) fyfr:float betaHr1:round beta (FLX_exp prec) rnd (x / y) = F2R frHr2:canonical beta (FLX_exp prec) frulp beta (FLX_exp prec) (F2R fr) = bpow (Fexp fr)beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolrnd:R -> ZZrnd:Valid_rnd rndx, y:RHx:format xHy:format yZy:y <> 0%RHr:round beta (FLX_exp prec) rnd (x / y) <> 0%RZx:x <> R0fx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfy:float betaHy1:y = F2R fyHy2:canonical beta (FLX_exp prec) fyfr:float betaHr1:round beta (FLX_exp prec) rnd (x / y) = F2R frHr2:canonical beta (FLX_exp prec) fr(Rabs y * bpow (Fexp fr) <= bpow (prec + (Fexp fr + Fexp fy)))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolrnd:R -> ZZrnd:Valid_rnd rndx, y:RHx:format xHy:format yZy:y <> 0%RHr:round beta (FLX_exp prec) rnd (x / y) <> 0%RZx:x <> R0fx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfy:float betaHy1:y = F2R fyHy2:canonical beta (FLX_exp prec) fyfr:float betaHr1:round beta (FLX_exp prec) rnd (x / y) = F2R frHr2:canonical beta (FLX_exp prec) fr(x / y)%R <> 0%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolrnd:R -> ZZrnd:Valid_rnd rndx, y:RHx:format xHy:format yZy:y <> 0%RHr:round beta (FLX_exp prec) rnd (x / y) <> 0%RZx:x <> R0fx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfy:float betaHy1:y = F2R fyHy2:canonical beta (FLX_exp prec) fyfr:float betaHr1:round beta (FLX_exp prec) rnd (x / y) = F2R frHr2:canonical beta (FLX_exp prec) frulp beta (FLX_exp prec) (F2R fr) = bpow (Fexp fr)beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolrnd:R -> ZZrnd:Valid_rnd rndx, y:RHx:format xHy:format yZy:y <> 0%RHr:round beta (FLX_exp prec) rnd (x / y) <> 0%RZx:x <> R0fx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfy:float betaHy1:y = F2R fyHy2:canonical beta (FLX_exp prec) fyfr:float betaHr1:round beta (FLX_exp prec) rnd (x / y) = F2R frHr2:canonical beta (FLX_exp prec) fr(Rabs y * bpow (Fexp fr) <= bpow (prec + (Fexp fr + Fexp fy)))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolrnd:R -> ZZrnd:Valid_rnd rndx, y:RHx:format xHy:format yZy:y <> 0%RHr:round beta (FLX_exp prec) rnd (x / y) <> 0%RZx:x <> R0fx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfy:float betaHy1:y = F2R fyHy2:canonical beta (FLX_exp prec) fyfr:float betaHr1:round beta (FLX_exp prec) rnd (x / y) = F2R frHr2:canonical beta (FLX_exp prec) frulp beta (FLX_exp prec) (F2R fr) = bpow (Fexp fr)beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolrnd:R -> ZZrnd:Valid_rnd rndx, y:RHx:format xHy:format yZy:y <> 0%RHr:round beta (FLX_exp prec) rnd (x / y) <> 0%RZx:x <> R0fx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfy:float betaHy1:y = F2R fyHy2:canonical beta (FLX_exp prec) fyfr:float betaHr1:round beta (FLX_exp prec) rnd (x / y) = F2R frHr2:canonical beta (FLX_exp prec) fr(Rabs y * bpow (Fexp fr) <= bpow (prec + (Fexp fr + Fexp fy)))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolrnd:R -> ZZrnd:Valid_rnd rndx, y:RHx:format xHy:format yZy:y <> 0%RHr:round beta (FLX_exp prec) rnd (x / y) <> 0%RZx:x <> R0fx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfy:float betaHy1:y = F2R fyHy2:canonical beta (FLX_exp prec) fyfr:float betaHr1:round beta (FLX_exp prec) rnd (x / y) = F2R frHr2:canonical beta (FLX_exp prec) frbpow (cexp (F2R fr)) = bpow (Fexp fr)beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolrnd:R -> ZZrnd:Valid_rnd rndx, y:RHx:format xHy:format yZy:y <> 0%RHr:round beta (FLX_exp prec) rnd (x / y) <> 0%RZx:x <> R0fx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfy:float betaHy1:y = F2R fyHy2:canonical beta (FLX_exp prec) fyfr:float betaHr1:round beta (FLX_exp prec) rnd (x / y) = F2R frHr2:canonical beta (FLX_exp prec) frF2R fr <> 0%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolrnd:R -> ZZrnd:Valid_rnd rndx, y:RHx:format xHy:format yZy:y <> 0%RHr:round beta (FLX_exp prec) rnd (x / y) <> 0%RZx:x <> R0fx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfy:float betaHy1:y = F2R fyHy2:canonical beta (FLX_exp prec) fyfr:float betaHr1:round beta (FLX_exp prec) rnd (x / y) = F2R frHr2:canonical beta (FLX_exp prec) fr(Rabs y * bpow (Fexp fr) <= bpow (prec + (Fexp fr + Fexp fy)))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolrnd:R -> ZZrnd:Valid_rnd rndx, y:RHx:format xHy:format yZy:y <> 0%RHr:round beta (FLX_exp prec) rnd (x / y) <> 0%RZx:x <> R0fx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfy:float betaHy1:y = F2R fyHy2:canonical beta (FLX_exp prec) fyfr:float betaHr1:round beta (FLX_exp prec) rnd (x / y) = F2R frHr2:canonical beta (FLX_exp prec) frbpow (cexp (F2R fr)) = bpow (Fexp fr)beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolrnd:R -> ZZrnd:Valid_rnd rndx, y:RHx:format xHy:format yZy:y <> 0%RHr:round beta (FLX_exp prec) rnd (x / y) <> 0%RZx:x <> R0fx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfy:float betaHy1:y = F2R fyHy2:canonical beta (FLX_exp prec) fyfr:float betaHr1:round beta (FLX_exp prec) rnd (x / y) = F2R frHr2:canonical beta (FLX_exp prec) fr(Rabs y * bpow (Fexp fr) <= bpow (prec + (Fexp fr + Fexp fy)))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolrnd:R -> ZZrnd:Valid_rnd rndx, y:RHx:format xHy:format yZy:y <> 0%RHr:round beta (FLX_exp prec) rnd (x / y) <> 0%RZx:x <> R0fx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfy:float betaHy1:y = F2R fyHy2:canonical beta (FLX_exp prec) fyfr:float betaHr1:round beta (FLX_exp prec) rnd (x / y) = F2R frHr2:canonical beta (FLX_exp prec) frcexp (F2R fr) = Fexp frbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolrnd:R -> ZZrnd:Valid_rnd rndx, y:RHx:format xHy:format yZy:y <> 0%RHr:round beta (FLX_exp prec) rnd (x / y) <> 0%RZx:x <> R0fx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfy:float betaHy1:y = F2R fyHy2:canonical beta (FLX_exp prec) fyfr:float betaHr1:round beta (FLX_exp prec) rnd (x / y) = F2R frHr2:canonical beta (FLX_exp prec) fr(Rabs y * bpow (Fexp fr) <= bpow (prec + (Fexp fr + Fexp fy)))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolrnd:R -> ZZrnd:Valid_rnd rndx, y:RHx:format xHy:format yZy:y <> 0%RHr:round beta (FLX_exp prec) rnd (x / y) <> 0%RZx:x <> R0fx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfy:float betaHy1:y = F2R fyHy2:canonical beta (FLX_exp prec) fyfr:float betaHr1:round beta (FLX_exp prec) rnd (x / y) = F2R frHr2:canonical beta (FLX_exp prec) fr(Rabs y * bpow (Fexp fr) <= bpow (prec + (Fexp fr + Fexp fy)))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolrnd:R -> ZZrnd:Valid_rnd rndx, y:RHx:format xHy:format yZy:y <> 0%RHr:round beta (FLX_exp prec) rnd (x / y) <> 0%RZx:x <> R0fx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfy:float betaHy1:y = F2R fyHy2:canonical beta (FLX_exp prec) fyfr:float betaHr1:round beta (FLX_exp prec) rnd (x / y) = F2R frHr2:canonical beta (FLX_exp prec) fr(Rabs y * bpow (Fexp fr) <= bpow (prec + Fexp fy + Fexp fr))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolrnd:R -> ZZrnd:Valid_rnd rndx, y:RHx:format xHy:format yZy:y <> 0%RHr:round beta (FLX_exp prec) rnd (x / y) <> 0%RZx:x <> R0fx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfy:float betaHy1:y = F2R fyHy2:canonical beta (FLX_exp prec) fyfr:float betaHr1:round beta (FLX_exp prec) rnd (x / y) = F2R frHr2:canonical beta (FLX_exp prec) fr(Rabs y * bpow (Fexp fr) <= bpow (prec + Fexp fy) * bpow (Fexp fr))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolrnd:R -> ZZrnd:Valid_rnd rndx, y:RHx:format xHy:format yZy:y <> 0%RHr:round beta (FLX_exp prec) rnd (x / y) <> 0%RZx:x <> R0fx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfy:float betaHy1:y = F2R fyHy2:canonical beta (FLX_exp prec) fyfr:float betaHr1:round beta (FLX_exp prec) rnd (x / y) = F2R frHr2:canonical beta (FLX_exp prec) fr(0 <= bpow (Fexp fr))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolrnd:R -> ZZrnd:Valid_rnd rndx, y:RHx:format xHy:format yZy:y <> 0%RHr:round beta (FLX_exp prec) rnd (x / y) <> 0%RZx:x <> R0fx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfy:float betaHy1:y = F2R fyHy2:canonical beta (FLX_exp prec) fyfr:float betaHr1:round beta (FLX_exp prec) rnd (x / y) = F2R frHr2:canonical beta (FLX_exp prec) fr(Rabs y <= bpow (prec + Fexp fy))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolrnd:R -> ZZrnd:Valid_rnd rndx, y:RHx:format xHy:format yZy:y <> 0%RHr:round beta (FLX_exp prec) rnd (x / y) <> 0%RZx:x <> R0fx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfy:float betaHy1:y = F2R fyHy2:canonical beta (FLX_exp prec) fyfr:float betaHr1:round beta (FLX_exp prec) rnd (x / y) = F2R frHr2:canonical beta (FLX_exp prec) fr(Rabs y <= bpow (prec + Fexp fy))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolrnd:R -> ZZrnd:Valid_rnd rndx, y:RHx:format xHy:format yZy:y <> 0%RHr:round beta (FLX_exp prec) rnd (x / y) <> 0%RZx:x <> R0fx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfy:float betaHy1:y = F2R fyHy2:canonical beta (FLX_exp prec) fyfr:float betaHr1:round beta (FLX_exp prec) rnd (x / y) = F2R frHr2:canonical beta (FLX_exp prec) fr(Rabs y <= bpow (prec + (mag beta y - prec)))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolrnd:R -> ZZrnd:Valid_rnd rndx, y:RHx:format xHy:format yZy:y <> 0%RHr:round beta (FLX_exp prec) rnd (x / y) <> 0%RZx:x <> R0fx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfy:float betaHy1:y = F2R fyHy2:canonical beta (FLX_exp prec) fyfr:float betaHr1:round beta (FLX_exp prec) rnd (x / y) = F2R frHr2:canonical beta (FLX_exp prec) fr(Rabs y <= bpow (mag beta y))%Rleft; now apply a. Qed.beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolrnd:R -> ZZrnd:Valid_rnd rndx, y:RHx:format xHy:format yZy:y <> 0%RHr:round beta (FLX_exp prec) rnd (x / y) <> 0%RZx:x <> R0fx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfy:float betaHy1:y = F2R fyHy2:canonical beta (FLX_exp prec) fyfr:float betaHr1:round beta (FLX_exp prec) rnd (x / y) = F2R frHr2:canonical beta (FLX_exp prec) frmag_val:Za:y <> 0%R -> (bpow (mag_val - 1) <= Rabs y < bpow mag_val)%R(Rabs y <= bpow mag_val)%R
Remainder of the square in FLX (with p>1) and rounding to nearest
Variable Hp1 : Z.lt 1 prec.beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zforall x : R, format x -> format (x - (round beta (FLX_exp prec) (Znearest choice) (sqrt x))²)beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zforall x : R, format x -> format (x - (round beta (FLX_exp prec) (Znearest choice) (sqrt x))²)beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xformat (x - (round beta (FLX_exp prec) (Znearest choice) (sqrt x))²)beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x < 0)%Rformat (x - (round beta (FLX_exp prec) (Znearest choice) (sqrt x))²)beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:x = 0%Rformat (x - (round beta (FLX_exp prec) (Znearest choice) (sqrt x))²)beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%Rformat (x - (round beta (FLX_exp prec) (Znearest choice) (sqrt x))²)beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x < 0)%Rformat (x - (round beta (FLX_exp prec) (Znearest choice) match Rcase_abs x with | left _ => 0 | right a => Rsqrt {| nonneg := x; cond_nonneg := Rge_le x 0 a |} end)²)beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:x = 0%Rformat (x - (round beta (FLX_exp prec) (Znearest choice) (sqrt x))²)beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%Rformat (x - (round beta (FLX_exp prec) (Znearest choice) (sqrt x))²)beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz, r:(x < 0)%Rformat (x - (round beta (FLX_exp prec) (Znearest choice) 0)²)beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x < 0)%Rr:(x >= 0)%Rformat (x - (round beta (FLX_exp prec) (Znearest choice) (Rsqrt {| nonneg := x; cond_nonneg := Rge_le x 0 r |}))²)beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:x = 0%Rformat (x - (round beta (FLX_exp prec) (Znearest choice) (sqrt x))²)beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%Rformat (x - (round beta (FLX_exp prec) (Znearest choice) (sqrt x))²)beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz, r:(x < 0)%Rformat (x - 0²)beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x < 0)%Rr:(x >= 0)%Rformat (x - (round beta (FLX_exp prec) (Znearest choice) (Rsqrt {| nonneg := x; cond_nonneg := Rge_le x 0 r |}))²)beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:x = 0%Rformat (x - (round beta (FLX_exp prec) (Znearest choice) (sqrt x))²)beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%Rformat (x - (round beta (FLX_exp prec) (Znearest choice) (sqrt x))²)beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz, r:(x < 0)%Rformat (x - 0 * 0)beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x < 0)%Rr:(x >= 0)%Rformat (x - (round beta (FLX_exp prec) (Znearest choice) (Rsqrt {| nonneg := x; cond_nonneg := Rge_le x 0 r |}))²)beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:x = 0%Rformat (x - (round beta (FLX_exp prec) (Znearest choice) (sqrt x))²)beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%Rformat (x - (round beta (FLX_exp prec) (Znearest choice) (sqrt x))²)beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x < 0)%Rr:(x >= 0)%Rformat (x - (round beta (FLX_exp prec) (Znearest choice) (Rsqrt {| nonneg := x; cond_nonneg := Rge_le x 0 r |}))²)beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:x = 0%Rformat (x - (round beta (FLX_exp prec) (Znearest choice) (sqrt x))²)beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%Rformat (x - (round beta (FLX_exp prec) (Znearest choice) (sqrt x))²)beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x < 0)%Rr:(x >= 0)%R(0 < 0)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:x = 0%Rformat (x - (round beta (FLX_exp prec) (Znearest choice) (sqrt x))²)beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%Rformat (x - (round beta (FLX_exp prec) (Znearest choice) (sqrt x))²)beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:x = 0%Rformat (x - (round beta (FLX_exp prec) (Znearest choice) (sqrt x))²)beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%Rformat (x - (round beta (FLX_exp prec) (Znearest choice) (sqrt x))²)beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:x = 0%Rformat (0 - 0²)beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%Rformat (x - (round beta (FLX_exp prec) (Znearest choice) (sqrt x))²)beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:x = 0%Rformat (0 - 0 * 0)beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%Rformat (x - (round beta (FLX_exp prec) (Znearest choice) (sqrt x))²)beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:x = 0%Rformat 0beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%Rformat (x - (round beta (FLX_exp prec) (Znearest choice) (sqrt x))²)beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%Rformat (x - (round beta (FLX_exp prec) (Znearest choice) (sqrt x))²)beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = 0%Rformat (x - (round beta (FLX_exp prec) (Znearest choice) (sqrt x))²)beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rformat (x - (round beta (FLX_exp prec) (Znearest choice) (sqrt x))²)beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rformat (x - (round beta (FLX_exp prec) (Znearest choice) (sqrt x))²)beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxformat (x - (round beta (FLX_exp prec) (Znearest choice) (sqrt x))²)beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxformat (round beta (FLX_exp prec) (Znearest choice) (sqrt x))beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) frformat (x - (round beta (FLX_exp prec) (Znearest choice) (sqrt x))²)beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) frformat (x - (round beta (FLX_exp prec) (Znearest choice) (sqrt x))²)beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) frforall e : Z, (FLX_exp prec e <= e - prec)%Zbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(- (round beta (FLX_exp prec) (Znearest choice) (sqrt x))²)%R = F2R (Fopp (Fmult fr fr))beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(Rabs (x + - (round beta (FLX_exp prec) (Znearest choice) (sqrt x))²) < bpow (prec + Fexp fx))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(Rabs (x + - (round beta (FLX_exp prec) (Znearest choice) (sqrt x))²) < bpow (prec + Fexp (Fopp (Fmult fr fr))))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(- (round beta (FLX_exp prec) (Znearest choice) (sqrt x))²)%R = F2R (Fopp (Fmult fr fr))beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(Rabs (x + - (round beta (FLX_exp prec) (Znearest choice) (sqrt x))²) < bpow (prec + Fexp fx))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(Rabs (x + - (round beta (FLX_exp prec) (Znearest choice) (sqrt x))²) < bpow (prec + Fexp (Fopp (Fmult fr fr))))%R(* *)beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(Rabs (x + - (round beta (FLX_exp prec) (Znearest choice) (sqrt x))²) < bpow (prec + Fexp fx))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(Rabs (x + - (round beta (FLX_exp prec) (Znearest choice) (sqrt x))²) < bpow (prec + Fexp (Fopp (Fmult fr fr))))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(Rabs (x + - (round beta (FLX_exp prec) (Znearest choice) (sqrt x))²) <= x)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(x < bpow (prec + Fexp fx))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(Rabs (x + - (round beta (FLX_exp prec) (Znearest choice) (sqrt x))²) < bpow (prec + Fexp (Fopp (Fmult fr fr))))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(0 <= (round beta (FLX_exp prec) (Znearest choice) (sqrt x))²)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr((round beta (FLX_exp prec) (Znearest choice) (sqrt x))² <= 2 * x)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(x < bpow (prec + Fexp fx))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(Rabs (x + - (round beta (FLX_exp prec) (Znearest choice) (sqrt x))²) < bpow (prec + Fexp (Fopp (Fmult fr fr))))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr((round beta (FLX_exp prec) (Znearest choice) (sqrt x))² <= 2 * x)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(x < bpow (prec + Fexp fx))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(Rabs (x + - (round beta (FLX_exp prec) (Znearest choice) (sqrt x))²) < bpow (prec + Fexp (Fopp (Fmult fr fr))))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps <= / 2 * bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%R((round beta (FLX_exp prec) (Znearest choice) (sqrt x))² <= 2 * x)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(x < bpow (prec + Fexp fx))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(Rabs (x + - (round beta (FLX_exp prec) (Znearest choice) (sqrt x))²) < bpow (prec + Fexp (Fopp (Fmult fr fr))))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps <= / 2 * bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%R((sqrt x * (1 + eps))² <= 2 * x)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(x < bpow (prec + Fexp fx))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(Rabs (x + - (round beta (FLX_exp prec) (Znearest choice) (sqrt x))²) < bpow (prec + Fexp (Fopp (Fmult fr fr))))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps <= / 2 * bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%R((1 + eps)² * x <= 2 * x)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps <= / 2 * bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%R(0 <= x)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(x < bpow (prec + Fexp fx))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(Rabs (x + - (round beta (FLX_exp prec) (Znearest choice) (sqrt x))²) < bpow (prec + Fexp (Fopp (Fmult fr fr))))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps <= / 2 * bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%R((1 + eps)² * x <= 2 * x)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(x < bpow (prec + Fexp fx))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(Rabs (x + - (round beta (FLX_exp prec) (Znearest choice) (sqrt x))²) < bpow (prec + Fexp (Fopp (Fmult fr fr))))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps <= / 2 * bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%R(0 <= x)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps <= / 2 * bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%R((1 + eps)² <= 2)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(x < bpow (prec + Fexp fx))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(Rabs (x + - (round beta (FLX_exp prec) (Znearest choice) (sqrt x))²) < bpow (prec + Fexp (Fopp (Fmult fr fr))))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps <= / 2 * bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%R((1 + eps)² <= 2)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(x < bpow (prec + Fexp fx))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(Rabs (x + - (round beta (FLX_exp prec) (Znearest choice) (sqrt x))²) < bpow (prec + Fexp (Fopp (Fmult fr fr))))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps <= / 2 * bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%R((1 + eps)² <= 5² / 4²)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps <= / 2 * bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%R(5² / 4² <= 2)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(x < bpow (prec + Fexp fx))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(Rabs (x + - (round beta (FLX_exp prec) (Znearest choice) (sqrt x))²) < bpow (prec + Fexp (Fopp (Fmult fr fr))))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps <= / 2 * bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%R((1 + eps)² <= (5 / 4)²)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps <= / 2 * bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%R4%R <> 0%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps <= / 2 * bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%R(5² / 4² <= 2)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(x < bpow (prec + Fexp fx))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(Rabs (x + - (round beta (FLX_exp prec) (Znearest choice) (sqrt x))²) < bpow (prec + Fexp (Fopp (Fmult fr fr))))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps <= / 2 * bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%R(Rabs (1 + eps) <= Rabs (5 / 4))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps <= / 2 * bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%R4%R <> 0%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps <= / 2 * bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%R(5² / 4² <= 2)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(x < bpow (prec + Fexp fx))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(Rabs (x + - (round beta (FLX_exp prec) (Znearest choice) (sqrt x))²) < bpow (prec + Fexp (Fopp (Fmult fr fr))))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps <= / 2 * bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%R(Rabs 1 + Rabs eps <= Rabs (5 / 4))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps <= / 2 * bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%R4%R <> 0%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps <= / 2 * bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%R(5² / 4² <= 2)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(x < bpow (prec + Fexp fx))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(Rabs (x + - (round beta (FLX_exp prec) (Znearest choice) (sqrt x))²) < bpow (prec + Fexp (Fopp (Fmult fr fr))))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps <= / 2 * bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%R(1 + Rabs eps <= Rabs (5 / 4))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps <= / 2 * bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%R4%R <> 0%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps <= / 2 * bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%R(5² / 4² <= 2)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(x < bpow (prec + Fexp fx))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(Rabs (x + - (round beta (FLX_exp prec) (Znearest choice) (sqrt x))²) < bpow (prec + Fexp (Fopp (Fmult fr fr))))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps <= / 2 * bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%R(-1 + (1 + Rabs eps) <= -1 + Rabs (5 / 4))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps <= / 2 * bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%R4%R <> 0%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps <= / 2 * bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%R(5² / 4² <= 2)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(x < bpow (prec + Fexp fx))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(Rabs (x + - (round beta (FLX_exp prec) (Znearest choice) (sqrt x))²) < bpow (prec + Fexp (Fopp (Fmult fr fr))))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps <= / 2 * bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%R(Rabs eps <= -1 + Rabs (5 / 4))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps <= / 2 * bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%R4%R <> 0%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps <= / 2 * bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%R(5² / 4² <= 2)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(x < bpow (prec + Fexp fx))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(Rabs (x + - (round beta (FLX_exp prec) (Znearest choice) (sqrt x))²) < bpow (prec + Fexp (Fopp (Fmult fr fr))))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps <= / 2 * bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%R(/ 2 * bpow (- prec + 1) <= -1 + Rabs (5 / 4))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps <= / 2 * bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%R4%R <> 0%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps <= / 2 * bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%R(5² / 4² <= 2)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(x < bpow (prec + Fexp fx))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(Rabs (x + - (round beta (FLX_exp prec) (Znearest choice) (sqrt x))²) < bpow (prec + Fexp (Fopp (Fmult fr fr))))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps <= / 2 * bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%R(/ 2 * bpow (- prec + 1) <= -1 + 5 / 4)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps <= / 2 * bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%R(0 <= 5 / 4)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps <= / 2 * bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%R4%R <> 0%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps <= / 2 * bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%R(5² / 4² <= 2)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(x < bpow (prec + Fexp fx))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(Rabs (x + - (round beta (FLX_exp prec) (Znearest choice) (sqrt x))²) < bpow (prec + Fexp (Fopp (Fmult fr fr))))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps <= / 2 * bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%R(0 < 2)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps <= / 2 * bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%R(2 * (/ 2 * bpow (- prec + 1)) <= 2 * (-1 + 5 / 4))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps <= / 2 * bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%R(0 <= 5 / 4)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps <= / 2 * bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%R4%R <> 0%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps <= / 2 * bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%R(5² / 4² <= 2)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(x < bpow (prec + Fexp fx))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(Rabs (x + - (round beta (FLX_exp prec) (Znearest choice) (sqrt x))²) < bpow (prec + Fexp (Fopp (Fmult fr fr))))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps <= / 2 * bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%R(2 * (/ 2 * bpow (- prec + 1)) <= 2 * (-1 + 5 / 4))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps <= / 2 * bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%R(0 <= 5 / 4)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps <= / 2 * bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%R4%R <> 0%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps <= / 2 * bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%R(5² / 4² <= 2)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(x < bpow (prec + Fexp fx))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(Rabs (x + - (round beta (FLX_exp prec) (Znearest choice) (sqrt x))²) < bpow (prec + Fexp (Fopp (Fmult fr fr))))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps <= / 2 * bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%R(bpow (- prec + 1) <= 2 * (-1 + 5 / 4))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps <= / 2 * bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%R2%R <> 0%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps <= / 2 * bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%R(0 <= 5 / 4)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps <= / 2 * bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%R4%R <> 0%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps <= / 2 * bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%R(5² / 4² <= 2)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(x < bpow (prec + Fexp fx))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(Rabs (x + - (round beta (FLX_exp prec) (Znearest choice) (sqrt x))²) < bpow (prec + Fexp (Fopp (Fmult fr fr))))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps <= / 2 * bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%R(bpow (- prec + 1) <= bpow (-1))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps <= / 2 * bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%R(bpow (-1) <= 2 * (-1 + 5 / 4))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps <= / 2 * bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%R2%R <> 0%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps <= / 2 * bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%R(0 <= 5 / 4)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps <= / 2 * bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%R4%R <> 0%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps <= / 2 * bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%R(5² / 4² <= 2)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(x < bpow (prec + Fexp fx))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(Rabs (x + - (round beta (FLX_exp prec) (Znearest choice) (sqrt x))²) < bpow (prec + Fexp (Fopp (Fmult fr fr))))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps <= / 2 * bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%R(- prec + 1 <= -1)%Zbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps <= / 2 * bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%R(bpow (-1) <= 2 * (-1 + 5 / 4))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps <= / 2 * bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%R2%R <> 0%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps <= / 2 * bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%R(0 <= 5 / 4)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps <= / 2 * bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%R4%R <> 0%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps <= / 2 * bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%R(5² / 4² <= 2)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(x < bpow (prec + Fexp fx))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(Rabs (x + - (round beta (FLX_exp prec) (Znearest choice) (sqrt x))²) < bpow (prec + Fexp (Fopp (Fmult fr fr))))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps <= / 2 * bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%R(bpow (-1) <= 2 * (-1 + 5 / 4))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps <= / 2 * bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%R2%R <> 0%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps <= / 2 * bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%R(0 <= 5 / 4)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps <= / 2 * bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%R4%R <> 0%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps <= / 2 * bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%R(5² / 4² <= 2)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(x < bpow (prec + Fexp fx))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(Rabs (x + - (round beta (FLX_exp prec) (Znearest choice) (sqrt x))²) < bpow (prec + Fexp (Fopp (Fmult fr fr))))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps <= / 2 * bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%R(bpow (-1) <= / 2)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps <= / 2 * bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%R2%R <> 0%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps <= / 2 * bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%R(0 <= 5 / 4)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps <= / 2 * bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%R4%R <> 0%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps <= / 2 * bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%R(5² / 4² <= 2)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(x < bpow (prec + Fexp fx))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(Rabs (x + - (round beta (FLX_exp prec) (Znearest choice) (sqrt x))²) < bpow (prec + Fexp (Fopp (Fmult fr fr))))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps <= / 2 * bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%R(0 < 2)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps <= / 2 * bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%R(2 <= IZR (Z.pow_pos beta 1))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps <= / 2 * bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%R2%R <> 0%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps <= / 2 * bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%R(0 <= 5 / 4)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps <= / 2 * bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%R4%R <> 0%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps <= / 2 * bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%R(5² / 4² <= 2)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(x < bpow (prec + Fexp fx))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(Rabs (x + - (round beta (FLX_exp prec) (Znearest choice) (sqrt x))²) < bpow (prec + Fexp (Fopp (Fmult fr fr))))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps <= / 2 * bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%R(2 <= IZR (Z.pow_pos beta 1))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps <= / 2 * bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%R2%R <> 0%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps <= / 2 * bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%R(0 <= 5 / 4)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps <= / 2 * bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%R4%R <> 0%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps <= / 2 * bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%R(5² / 4² <= 2)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(x < bpow (prec + Fexp fx))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(Rabs (x + - (round beta (FLX_exp prec) (Znearest choice) (sqrt x))²) < bpow (prec + Fexp (Fopp (Fmult fr fr))))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps <= / 2 * bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%R(2 <= Z.pow_pos beta 1)%Zbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps <= / 2 * bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%R2%R <> 0%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps <= / 2 * bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%R(0 <= 5 / 4)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps <= / 2 * bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%R4%R <> 0%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps <= / 2 * bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%R(5² / 4² <= 2)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(x < bpow (prec + Fexp fx))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(Rabs (x + - (round beta (FLX_exp prec) (Znearest choice) (sqrt x))²) < bpow (prec + Fexp (Fopp (Fmult fr fr))))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps <= / 2 * bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%R(2 <= Pos.iter (Z.mul beta) 1 1)%Zbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps <= / 2 * bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%R2%R <> 0%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps <= / 2 * bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%R(0 <= 5 / 4)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps <= / 2 * bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%R4%R <> 0%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps <= / 2 * bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%R(5² / 4² <= 2)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(x < bpow (prec + Fexp fx))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(Rabs (x + - (round beta (FLX_exp prec) (Znearest choice) (sqrt x))²) < bpow (prec + Fexp (Fopp (Fmult fr fr))))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps <= / 2 * bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%R(2 <= beta * 1)%Zbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps <= / 2 * bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%R2%R <> 0%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps <= / 2 * bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%R(0 <= 5 / 4)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps <= / 2 * bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%R4%R <> 0%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps <= / 2 * bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%R(5² / 4² <= 2)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(x < bpow (prec + Fexp fx))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(Rabs (x + - (round beta (FLX_exp prec) (Znearest choice) (sqrt x))²) < bpow (prec + Fexp (Fopp (Fmult fr fr))))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps <= / 2 * bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%R(2 <= beta)%Zbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps <= / 2 * bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%R2%R <> 0%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps <= / 2 * bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%R(0 <= 5 / 4)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps <= / 2 * bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%R4%R <> 0%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps <= / 2 * bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%R(5² / 4² <= 2)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(x < bpow (prec + Fexp fx))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(Rabs (x + - (round beta (FLX_exp prec) (Znearest choice) (sqrt x))²) < bpow (prec + Fexp (Fopp (Fmult fr fr))))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps <= / 2 * bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%R(2 <=? beta)%Z = truebeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps <= / 2 * bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%R2%R <> 0%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps <= / 2 * bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%R(0 <= 5 / 4)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps <= / 2 * bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%R4%R <> 0%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps <= / 2 * bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%R(5² / 4² <= 2)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(x < bpow (prec + Fexp fx))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(Rabs (x + - (round beta (FLX_exp prec) (Znearest choice) (sqrt x))²) < bpow (prec + Fexp (Fopp (Fmult fr fr))))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps <= / 2 * bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%R2%R <> 0%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps <= / 2 * bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%R(0 <= 5 / 4)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps <= / 2 * bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%R4%R <> 0%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps <= / 2 * bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%R(5² / 4² <= 2)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(x < bpow (prec + Fexp fx))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(Rabs (x + - (round beta (FLX_exp prec) (Znearest choice) (sqrt x))²) < bpow (prec + Fexp (Fopp (Fmult fr fr))))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps <= / 2 * bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%R(0 <= 5 / 4)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps <= / 2 * bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%R4%R <> 0%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps <= / 2 * bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%R(5² / 4² <= 2)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(x < bpow (prec + Fexp fx))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(Rabs (x + - (round beta (FLX_exp prec) (Znearest choice) (sqrt x))²) < bpow (prec + Fexp (Fopp (Fmult fr fr))))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps <= / 2 * bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%R(0 <= 5 * / 4)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps <= / 2 * bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%R4%R <> 0%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps <= / 2 * bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%R(5² / 4² <= 2)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(x < bpow (prec + Fexp fx))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(Rabs (x + - (round beta (FLX_exp prec) (Znearest choice) (sqrt x))²) < bpow (prec + Fexp (Fopp (Fmult fr fr))))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps <= / 2 * bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%R(0 <= 5)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps <= / 2 * bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%R(0 <= / 4)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps <= / 2 * bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%R4%R <> 0%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps <= / 2 * bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%R(5² / 4² <= 2)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(x < bpow (prec + Fexp fx))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(Rabs (x + - (round beta (FLX_exp prec) (Znearest choice) (sqrt x))²) < bpow (prec + Fexp (Fopp (Fmult fr fr))))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps <= / 2 * bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%R(0 <= / 4)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps <= / 2 * bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%R4%R <> 0%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps <= / 2 * bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%R(5² / 4² <= 2)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(x < bpow (prec + Fexp fx))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(Rabs (x + - (round beta (FLX_exp prec) (Znearest choice) (sqrt x))²) < bpow (prec + Fexp (Fopp (Fmult fr fr))))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps <= / 2 * bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%R(0 < / 4)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps <= / 2 * bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%R4%R <> 0%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps <= / 2 * bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%R(5² / 4² <= 2)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(x < bpow (prec + Fexp fx))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(Rabs (x + - (round beta (FLX_exp prec) (Znearest choice) (sqrt x))²) < bpow (prec + Fexp (Fopp (Fmult fr fr))))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps <= / 2 * bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%R(0 < 4)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps <= / 2 * bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%R4%R <> 0%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps <= / 2 * bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%R(5² / 4² <= 2)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(x < bpow (prec + Fexp fx))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(Rabs (x + - (round beta (FLX_exp prec) (Znearest choice) (sqrt x))²) < bpow (prec + Fexp (Fopp (Fmult fr fr))))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps <= / 2 * bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%R4%R <> 0%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps <= / 2 * bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%R(5² / 4² <= 2)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(x < bpow (prec + Fexp fx))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(Rabs (x + - (round beta (FLX_exp prec) (Znearest choice) (sqrt x))²) < bpow (prec + Fexp (Fopp (Fmult fr fr))))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps <= / 2 * bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%R(5² / 4² <= 2)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(x < bpow (prec + Fexp fx))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(Rabs (x + - (round beta (FLX_exp prec) (Znearest choice) (sqrt x))²) < bpow (prec + Fexp (Fopp (Fmult fr fr))))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps <= / 2 * bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%R(5 * 5 / (4 * 4) <= 2)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(x < bpow (prec + Fexp fx))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(Rabs (x + - (round beta (FLX_exp prec) (Znearest choice) (sqrt x))²) < bpow (prec + Fexp (Fopp (Fmult fr fr))))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps <= / 2 * bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%R(25 * / 16 <= 2)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(x < bpow (prec + Fexp fx))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(Rabs (x + - (round beta (FLX_exp prec) (Znearest choice) (sqrt x))²) < bpow (prec + Fexp (Fopp (Fmult fr fr))))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps <= / 2 * bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%R(0 < 16)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps <= / 2 * bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%R(25 * / 16 * 16 <= 2 * 16)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(x < bpow (prec + Fexp fx))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(Rabs (x + - (round beta (FLX_exp prec) (Znearest choice) (sqrt x))²) < bpow (prec + Fexp (Fopp (Fmult fr fr))))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps <= / 2 * bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%R(25 * / 16 * 16 <= 2 * 16)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(x < bpow (prec + Fexp fx))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(Rabs (x + - (round beta (FLX_exp prec) (Znearest choice) (sqrt x))²) < bpow (prec + Fexp (Fopp (Fmult fr fr))))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps <= / 2 * bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%R(25 <= 2 * 16)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps <= / 2 * bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%R16%R <> 0%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(x < bpow (prec + Fexp fx))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(Rabs (x + - (round beta (FLX_exp prec) (Znearest choice) (sqrt x))²) < bpow (prec + Fexp (Fopp (Fmult fr fr))))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) freps:RHeps1:(Rabs eps <= / 2 * bpow (- prec + 1))%RHeps2:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%R16%R <> 0%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(x < bpow (prec + Fexp fx))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(Rabs (x + - (round beta (FLX_exp prec) (Znearest choice) (sqrt x))²) < bpow (prec + Fexp (Fopp (Fmult fr fr))))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(x < bpow (prec + Fexp fx))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(Rabs (x + - (round beta (FLX_exp prec) (Znearest choice) (sqrt x))²) < bpow (prec + Fexp (Fopp (Fmult fr fr))))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(x < bpow (prec + (mag beta x - prec)))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(Rabs (x + - (round beta (FLX_exp prec) (Znearest choice) (sqrt x))²) < bpow (prec + Fexp (Fopp (Fmult fr fr))))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(x < bpow (mag beta x))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(Rabs (x + - (round beta (FLX_exp prec) (Znearest choice) (sqrt x))²) < bpow (prec + Fexp (Fopp (Fmult fr fr))))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) frmag_val:Za:x <> 0%R -> (bpow (mag_val - 1) <= Rabs x < bpow mag_val)%R(x < bpow mag_val)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(Rabs (x + - (round beta (FLX_exp prec) (Znearest choice) (sqrt x))²) < bpow (prec + Fexp (Fopp (Fmult fr fr))))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) frmag_val:Za:x <> 0%R -> (bpow (mag_val - 1) <= Rabs x < bpow mag_val)%R(Rabs x < bpow mag_val)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) frmag_val:Za:x <> 0%R -> (bpow (mag_val - 1) <= Rabs x < bpow mag_val)%R(x >= 0)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(Rabs (x + - (round beta (FLX_exp prec) (Znearest choice) (sqrt x))²) < bpow (prec + Fexp (Fopp (Fmult fr fr))))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) frmag_val:Za:x <> 0%R -> (bpow (mag_val - 1) <= Rabs x < bpow mag_val)%Rx <> 0%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) frmag_val:Za:x <> 0%R -> (bpow (mag_val - 1) <= Rabs x < bpow mag_val)%R(x >= 0)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(Rabs (x + - (round beta (FLX_exp prec) (Znearest choice) (sqrt x))²) < bpow (prec + Fexp (Fopp (Fmult fr fr))))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) frmag_val:Za:x <> 0%R -> (bpow (mag_val - 1) <= Rabs x < bpow mag_val)%R(x >= 0)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(Rabs (x + - (round beta (FLX_exp prec) (Znearest choice) (sqrt x))²) < bpow (prec + Fexp (Fopp (Fmult fr fr))))%R(* *)beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(Rabs (x + - (round beta (FLX_exp prec) (Znearest choice) (sqrt x))²) < bpow (prec + Fexp (Fopp (Fmult fr fr))))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(Rabs (x + - (round beta (FLX_exp prec) (Znearest choice) (sqrt x))²) < bpow (prec + (Fexp fr + Fexp fr)))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(Fexp fr + Fexp fr)%Z = Fexp (Fopp (Fmult fr fr))beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(Rabs (x + - (round beta (FLX_exp prec) (Znearest choice) (sqrt x))²) < bpow (prec + (Fexp fr + Fexp fr)))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(Rabs (x + - (F2R fr)²) < bpow (prec + (Fexp fr + Fexp fr)))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(Rabs (- ((F2R fr - sqrt x) * (F2R fr + sqrt x))) < bpow (prec + (Fexp fr + Fexp fr)))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(- ((F2R fr - sqrt x) * (F2R fr + sqrt x)))%R = (x + - (F2R fr)²)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(Rabs (- ((F2R fr - sqrt x) * (F2R fr + sqrt x))) < bpow (prec + (Fexp fr + Fexp fr)))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(- ((F2R fr - sqrt x) * (F2R fr + sqrt x)))%R = (sqrt x * sqrt x + - (F2R fr)²)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(0 <= x)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(Rabs (- ((F2R fr - sqrt x) * (F2R fr + sqrt x))) < bpow (prec + (Fexp fr + Fexp fr)))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(0 <= x)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(Rabs (F2R fr - sqrt x) * Rabs (F2R fr + sqrt x) < bpow (prec + (Fexp fr + Fexp fr)))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(0 <= x)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(Rabs (F2R fr - sqrt x) * Rabs (F2R fr + sqrt x) <= / 2 * bpow (Fexp fr) * Rabs (F2R fr + sqrt x))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(/ 2 * bpow (Fexp fr) * Rabs (F2R fr + sqrt x) < bpow (prec + (Fexp fr + Fexp fr)))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(0 <= x)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(0 <= Rabs (F2R fr + sqrt x))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(Rabs (F2R fr - sqrt x) <= / 2 * bpow (Fexp fr))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(/ 2 * bpow (Fexp fr) * Rabs (F2R fr + sqrt x) < bpow (prec + (Fexp fr + Fexp fr)))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(0 <= x)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(Rabs (F2R fr - sqrt x) <= / 2 * bpow (Fexp fr))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(/ 2 * bpow (Fexp fr) * Rabs (F2R fr + sqrt x) < bpow (prec + (Fexp fr + Fexp fr)))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(0 <= x)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(Rabs (F2R fr - sqrt x) <= / 2 * ulp beta (FLX_exp prec) (F2R fr))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(/ 2 * ulp beta (FLX_exp prec) (F2R fr) <= / 2 * bpow (Fexp fr))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(/ 2 * bpow (Fexp fr) * Rabs (F2R fr + sqrt x) < bpow (prec + (Fexp fr + Fexp fr)))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(0 <= x)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(Rabs (round beta (FLX_exp prec) (Znearest choice) (sqrt x) - sqrt x) <= / 2 * ulp beta (FLX_exp prec) (round beta (FLX_exp prec) (Znearest choice) (sqrt x)))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(/ 2 * ulp beta (FLX_exp prec) (F2R fr) <= / 2 * bpow (Fexp fr))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(/ 2 * bpow (Fexp fr) * Rabs (F2R fr + sqrt x) < bpow (prec + (Fexp fr + Fexp fr)))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(0 <= x)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(/ 2 * ulp beta (FLX_exp prec) (F2R fr) <= / 2 * bpow (Fexp fr))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(/ 2 * bpow (Fexp fr) * Rabs (F2R fr + sqrt x) < bpow (prec + (Fexp fr + Fexp fr)))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(0 <= x)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(/ 2 * bpow (cexp (F2R fr)))%R = (/ 2 * bpow (Fexp fr))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) frF2R fr <> 0%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(/ 2 * bpow (Fexp fr) * Rabs (F2R fr + sqrt x) < bpow (prec + (Fexp fr + Fexp fr)))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(0 <= x)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(/ 2 * bpow (cexp (F2R fr)))%R = (/ 2 * bpow (Fexp fr))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(/ 2 * bpow (Fexp fr) * Rabs (F2R fr + sqrt x) < bpow (prec + (Fexp fr + Fexp fr)))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(0 <= x)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) frbpow (cexp (F2R fr)) = bpow (Fexp fr)beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(/ 2 * bpow (Fexp fr) * Rabs (F2R fr + sqrt x) < bpow (prec + (Fexp fr + Fexp fr)))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(0 <= x)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(/ 2 * bpow (Fexp fr) * Rabs (F2R fr + sqrt x) < bpow (prec + (Fexp fr + Fexp fr)))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(0 <= x)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(bpow (Fexp fr) * Rabs (F2R fr + sqrt x) * / 2 < bpow (prec + (Fexp fr + Fexp fr)))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(0 <= x)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(bpow (Fexp fr) * Rabs (F2R fr + sqrt x) * / 2 < bpow (Fexp fr + (prec + Fexp fr)))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(0 <= x)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(bpow (Fexp fr) * (Rabs (F2R fr + sqrt x) * / 2) < bpow (Fexp fr) * bpow (prec + Fexp fr))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(0 <= x)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(0 < bpow (Fexp fr))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(Rabs (F2R fr + sqrt x) * / 2 < bpow (prec + Fexp fr))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(0 <= x)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(Rabs (F2R fr + sqrt x) * / 2 < bpow (prec + Fexp fr))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(0 <= x)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(2 * (Rabs (F2R fr + sqrt x) * / 2) < 2 * bpow (prec + Fexp fr))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(0 <= x)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(2 * (Rabs (F2R fr + sqrt x) * / 2) <= Rabs (F2R fr + sqrt x))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(Rabs (F2R fr + sqrt x) < 2 * bpow (prec + Fexp fr))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(0 <= x)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(Rabs (F2R fr + sqrt x) < 2 * bpow (prec + Fexp fr))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(0 <= x)%R(* . *)beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(Rabs (F2R fr) + Rabs (sqrt x) < 2 * bpow (prec + Fexp fr))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(0 <= x)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(Rabs (F2R fr) < bpow (prec + Fexp fr))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) frH:(Rabs (F2R fr) < bpow (prec + Fexp fr))%R(Rabs (F2R fr) + Rabs (sqrt x) < 2 * bpow (prec + Fexp fr))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(0 <= x)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(Rabs (F2R fr) < bpow (prec + cexp (F2R fr)))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) frH:(Rabs (F2R fr) < bpow (prec + Fexp fr))%R(Rabs (F2R fr) + Rabs (sqrt x) < 2 * bpow (prec + Fexp fr))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(0 <= x)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(Rabs (F2R fr) < bpow (prec + (mag beta (F2R fr) - prec)))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) frH:(Rabs (F2R fr) < bpow (prec + Fexp fr))%R(Rabs (F2R fr) + Rabs (sqrt x) < 2 * bpow (prec + Fexp fr))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(0 <= x)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(Rabs (F2R fr) < bpow (mag beta (F2R fr)))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) frH:(Rabs (F2R fr) < bpow (prec + Fexp fr))%R(Rabs (F2R fr) + Rabs (sqrt x) < 2 * bpow (prec + Fexp fr))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(0 <= x)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) frmag_val:Za:F2R fr <> 0%R -> (bpow (mag_val - 1) <= Rabs (F2R fr) < bpow mag_val)%R(Rabs (F2R fr) < bpow mag_val)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) frH:(Rabs (F2R fr) < bpow (prec + Fexp fr))%R(Rabs (F2R fr) + Rabs (sqrt x) < 2 * bpow (prec + Fexp fr))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(0 <= x)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) frmag_val:Za:F2R fr <> 0%R -> (bpow (mag_val - 1) <= Rabs (F2R fr) < bpow mag_val)%RF2R fr <> 0%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) frH:(Rabs (F2R fr) < bpow (prec + Fexp fr))%R(Rabs (F2R fr) + Rabs (sqrt x) < 2 * bpow (prec + Fexp fr))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(0 <= x)%R(* . *)beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) frH:(Rabs (F2R fr) < bpow (prec + Fexp fr))%R(Rabs (F2R fr) + Rabs (sqrt x) < 2 * bpow (prec + Fexp fr))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(0 <= x)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) frH:(Rabs (F2R fr) < bpow (prec + Fexp fr))%R(Rabs (F2R fr) + Rabs (sqrt x) < bpow (prec + Fexp fr) + Rabs (sqrt x))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) frH:(Rabs (F2R fr) < bpow (prec + Fexp fr))%R(bpow (prec + Fexp fr) + Rabs (sqrt x) <= 2 * bpow (prec + Fexp fr))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(0 <= x)%R(* . *)beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) frH:(Rabs (F2R fr) < bpow (prec + Fexp fr))%R(bpow (prec + Fexp fr) + Rabs (sqrt x) <= 2 * bpow (prec + Fexp fr))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(0 <= x)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) frH:(Rabs (F2R fr) < bpow (prec + Fexp fr))%R(bpow (prec + Fexp fr) + Rabs (sqrt x) <= bpow (prec + Fexp fr) + bpow (prec + Fexp fr))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(0 <= x)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) frH:(Rabs (F2R fr) < bpow (prec + Fexp fr))%R(Rabs (sqrt x) <= bpow (prec + Fexp fr))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(0 <= x)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) frH:(Rabs (F2R fr) < bpow (prec + Fexp fr))%Rsqrt x <> 0%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) frH:(Rabs (F2R fr) < bpow (prec + Fexp fr))%RH0:sqrt x <> 0%R(Rabs (sqrt x) <= bpow (prec + Fexp fr))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(0 <= x)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) frH:(Rabs (F2R fr) < bpow (prec + Fexp fr))%R(sqrt x > 0)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) frH:(Rabs (F2R fr) < bpow (prec + Fexp fr))%RH0:sqrt x <> 0%R(Rabs (sqrt x) <= bpow (prec + Fexp fr))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(0 <= x)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) frH:(Rabs (F2R fr) < bpow (prec + Fexp fr))%RH0:sqrt x <> 0%R(Rabs (sqrt x) <= bpow (prec + Fexp fr))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(0 <= x)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) frH:(Rabs (F2R fr) < bpow (prec + Fexp fr))%RH0:sqrt x <> 0%Res:ZEs:sqrt x <> 0%R -> (bpow (es - 1) <= Rabs (sqrt x) < bpow es)%R(Rabs (sqrt x) <= bpow (prec + Fexp fr))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(0 <= x)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) frH:(Rabs (F2R fr) < bpow (prec + Fexp fr))%RH0:sqrt x <> 0%Res:ZEs:(bpow (es - 1) <= Rabs (sqrt x) < bpow es)%R(Rabs (sqrt x) <= bpow (prec + Fexp fr))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(0 <= x)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) frH:(Rabs (F2R fr) < bpow (prec + Fexp fr))%RH0:sqrt x <> 0%Res:ZEs:(bpow (es - 1) <= Rabs (sqrt x) < bpow es)%R(Rabs (sqrt x) <= bpow es)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) frH:(Rabs (F2R fr) < bpow (prec + Fexp fr))%RH0:sqrt x <> 0%Res:ZEs:(bpow (es - 1) <= Rabs (sqrt x) < bpow es)%R(bpow es <= bpow (prec + Fexp fr))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(0 <= x)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) frH:(Rabs (F2R fr) < bpow (prec + Fexp fr))%RH0:sqrt x <> 0%Res:ZEs:(bpow (es - 1) <= Rabs (sqrt x) < bpow es)%R(bpow es <= bpow (prec + Fexp fr))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(0 <= x)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) frH:(Rabs (F2R fr) < bpow (prec + Fexp fr))%RH0:sqrt x <> 0%Res:ZEs:(bpow (es - 1) <= Rabs (sqrt x) < bpow es)%R(es <= prec + Fexp fr)%Zbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(0 <= x)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) frH:(Rabs (F2R fr) < bpow (prec + Fexp fr))%RH0:sqrt x <> 0%Res:ZEs:(bpow (es - 1) <= Rabs (sqrt x) < bpow es)%R(prec + Fexp fr < es)%Z -> (es <= prec + Fexp fr)%Zbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(0 <= x)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) frH:(Rabs (F2R fr) < bpow (prec + Fexp fr))%RH0:sqrt x <> 0%Res:ZEs:(bpow (es - 1) <= Rabs (sqrt x) < bpow es)%RH1:(prec + Fexp fr < es)%Z(es <= prec + Fexp fr)%Zbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(0 <= x)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) frH:(Rabs (F2R fr) < bpow (prec + Fexp fr))%RH0:sqrt x <> 0%Res:ZEs:(bpow (es - 1) <= Rabs (sqrt x) < bpow es)%RH1:(prec + Fexp fr < es)%Z~ (Rabs (F2R fr) < bpow (es - 1))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) frH:(Rabs (F2R fr) < bpow (prec + Fexp fr))%RH0:sqrt x <> 0%Res:ZEs:(bpow (es - 1) <= Rabs (sqrt x) < bpow es)%RH1:(prec + Fexp fr < es)%Z(Rabs (F2R fr) < bpow (es - 1))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(0 <= x)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) frH:(Rabs (F2R fr) < bpow (prec + Fexp fr))%RH0:sqrt x <> 0%Res:ZEs:(bpow (es - 1) <= Rabs (sqrt x) < bpow es)%RH1:(prec + Fexp fr < es)%Z(bpow (es - 1) <= Rabs (F2R fr))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) frH:(Rabs (F2R fr) < bpow (prec + Fexp fr))%RH0:sqrt x <> 0%Res:ZEs:(bpow (es - 1) <= Rabs (sqrt x) < bpow es)%RH1:(prec + Fexp fr < es)%Z(Rabs (F2R fr) < bpow (es - 1))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(0 <= x)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) frH:(Rabs (F2R fr) < bpow (prec + Fexp fr))%RH0:sqrt x <> 0%Res:ZEs:(bpow (es - 1) <= Rabs (sqrt x) < bpow es)%RH1:(prec + Fexp fr < es)%Z(bpow (es - 1) <= Rabs (round beta (FLX_exp prec) (Znearest choice) (sqrt x)))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) frH:(Rabs (F2R fr) < bpow (prec + Fexp fr))%RH0:sqrt x <> 0%Res:ZEs:(bpow (es - 1) <= Rabs (sqrt x) < bpow es)%RH1:(prec + Fexp fr < es)%Z(Rabs (F2R fr) < bpow (es - 1))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(0 <= x)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) frH:(Rabs (F2R fr) < bpow (prec + Fexp fr))%RH0:sqrt x <> 0%Res:ZEs:(bpow (es - 1) <= Rabs (sqrt x) < bpow es)%RH1:(prec + Fexp fr < es)%Zformat (bpow (es - 1))beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) frH:(Rabs (F2R fr) < bpow (prec + Fexp fr))%RH0:sqrt x <> 0%Res:ZEs:(bpow (es - 1) <= Rabs (sqrt x) < bpow es)%RH1:(prec + Fexp fr < es)%Z(bpow (es - 1) <= Rabs (sqrt x))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) frH:(Rabs (F2R fr) < bpow (prec + Fexp fr))%RH0:sqrt x <> 0%Res:ZEs:(bpow (es - 1) <= Rabs (sqrt x) < bpow es)%RH1:(prec + Fexp fr < es)%Z(Rabs (F2R fr) < bpow (es - 1))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(0 <= x)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) frH:(Rabs (F2R fr) < bpow (prec + Fexp fr))%RH0:sqrt x <> 0%Res:ZEs:(bpow (es - 1) <= Rabs (sqrt x) < bpow es)%RH1:(prec + Fexp fr < es)%Z(FLX_exp prec (es - 1 + 1) <= es - 1)%Zbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) frH:(Rabs (F2R fr) < bpow (prec + Fexp fr))%RH0:sqrt x <> 0%Res:ZEs:(bpow (es - 1) <= Rabs (sqrt x) < bpow es)%RH1:(prec + Fexp fr < es)%Z(bpow (es - 1) <= Rabs (sqrt x))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) frH:(Rabs (F2R fr) < bpow (prec + Fexp fr))%RH0:sqrt x <> 0%Res:ZEs:(bpow (es - 1) <= Rabs (sqrt x) < bpow es)%RH1:(prec + Fexp fr < es)%Z(Rabs (F2R fr) < bpow (es - 1))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(0 <= x)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) frH:(Rabs (F2R fr) < bpow (prec + Fexp fr))%RH0:sqrt x <> 0%Res:ZEs:(bpow (es - 1) <= Rabs (sqrt x) < bpow es)%RH1:(prec + Fexp fr < es)%Z(bpow (es - 1) <= Rabs (sqrt x))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) frH:(Rabs (F2R fr) < bpow (prec + Fexp fr))%RH0:sqrt x <> 0%Res:ZEs:(bpow (es - 1) <= Rabs (sqrt x) < bpow es)%RH1:(prec + Fexp fr < es)%Z(Rabs (F2R fr) < bpow (es - 1))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(0 <= x)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) frH:(Rabs (F2R fr) < bpow (prec + Fexp fr))%RH0:sqrt x <> 0%Res:ZEs:(bpow (es - 1) <= Rabs (sqrt x) < bpow es)%RH1:(prec + Fexp fr < es)%Z(Rabs (F2R fr) < bpow (es - 1))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(0 <= x)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) frH:(Rabs (F2R fr) < bpow (prec + Fexp fr))%RH0:sqrt x <> 0%Res:ZEs:(bpow (es - 1) <= Rabs (sqrt x) < bpow es)%RH1:(prec + Fexp fr < es)%Z(bpow (prec + Fexp fr) <= bpow (es - 1))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(0 <= x)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) frH:(Rabs (F2R fr) < bpow (prec + Fexp fr))%RH0:sqrt x <> 0%Res:ZEs:(bpow (es - 1) <= Rabs (sqrt x) < bpow es)%RH1:(prec + Fexp fr < es)%Z(prec + Fexp fr <= es - 1)%Zbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(0 <= x)%Rnow apply Rlt_le. Qed.beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RHx:format xHxz:(x > 0)%RHr:round beta (FLX_exp prec) (Znearest choice) (sqrt x) <> 0%Rfx:float betaHx1:x = F2R fxHx2:canonical beta (FLX_exp prec) fxfr:float betaHr1:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = F2R frHr2:canonical beta (FLX_exp prec) fr(0 <= x)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPx:(0 < x)%Rexists (mu : R) (e : Z), format mu /\ x = (mu * bpow (2 * e))%R /\ (1 <= mu < bpow 2)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPx:(0 < x)%Rexists (mu : R) (e : Z), format mu /\ x = (mu * bpow (2 * e))%R /\ (1 <= mu < bpow 2)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPx:(0 < x)%Re:=((mag beta x - 1) / 2)%Z:Zexists (mu : R) (e0 : Z), format mu /\ x = (mu * bpow (2 * e0))%R /\ (1 <= mu < bpow 2)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPx:(0 < x)%Re:=((mag beta x - 1) / 2)%Z:Zmu:=(x * bpow (-2 * e))%R:Rexists (mu0 : R) (e0 : Z), format mu0 /\ x = (mu0 * bpow (2 * e0))%R /\ (1 <= mu0 < bpow 2)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPx:(0 < x)%Re:=((mag beta x - 1) / 2)%Z:Zmu:=(x * bpow (-2 * e))%R:R(bpow (-2 * e) * bpow (2 * e))%R = 1%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPx:(0 < x)%Re:=((mag beta x - 1) / 2)%Z:Zmu:=(x * bpow (-2 * e))%R:RHbe:(bpow (-2 * e) * bpow (2 * e))%R = 1%Rexists (mu0 : R) (e0 : Z), format mu0 /\ x = (mu0 * bpow (2 * e0))%R /\ (1 <= mu0 < bpow 2)%Rnow rewrite <- bpow_plus; case e; simpl; [reflexivity| |]; intro p; rewrite Z.pos_sub_diag.beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPx:(0 < x)%Re:=((mag beta x - 1) / 2)%Z:Zmu:=(x * bpow (-2 * e))%R:R(bpow (-2 * e) * bpow (2 * e))%R = 1%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPx:(0 < x)%Re:=((mag beta x - 1) / 2)%Z:Zmu:=(x * bpow (-2 * e))%R:RHbe:(bpow (-2 * e) * bpow (2 * e))%R = 1%Rexists (mu0 : R) (e0 : Z), format mu0 /\ x = (mu0 * bpow (2 * e0))%R /\ (1 <= mu0 < bpow 2)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPx:(0 < x)%Re:=((mag beta x - 1) / 2)%Z:Zmu:=(x * bpow (-2 * e))%R:RHbe:(bpow (-2 * e) * bpow (2 * e))%R = 1%RFmu:format muexists (mu0 : R) (e0 : Z), format mu0 /\ x = (mu0 * bpow (2 * e0))%R /\ (1 <= mu0 < bpow 2)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPx:(0 < x)%Re:=((mag beta x - 1) / 2)%Z:Zmu:=(x * bpow (-2 * e))%R:RHbe:(bpow (-2 * e) * bpow (2 * e))%R = 1%RFmu:format mux = (mu * bpow (2 * e))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPx:(0 < x)%Re:=((mag beta x - 1) / 2)%Z:Zmu:=(x * bpow (-2 * e))%R:RHbe:(bpow (-2 * e) * bpow (2 * e))%R = 1%RFmu:format mu(1 <= mu)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPx:(0 < x)%Re:=((mag beta x - 1) / 2)%Z:Zmu:=(x * bpow (-2 * e))%R:RHbe:(bpow (-2 * e) * bpow (2 * e))%R = 1%RFmu:format mu(mu < bpow 2)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPx:(0 < x)%Re:=((mag beta x - 1) / 2)%Z:Zmu:=(x * bpow (-2 * e))%R:RHbe:(bpow (-2 * e) * bpow (2 * e))%R = 1%RFmu:format mux = (mu * bpow (2 * e))%Rnow unfold e2; rewrite Hbe, Rmult_1_r.beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPx:(0 < x)%Re:=((mag beta x - 1) / 2)%Z:Zmu:=(x * bpow (-2 * e))%R:RHbe:(bpow (-2 * e) * bpow (2 * e))%R = 1%RFmu:format mue2:=(2 * e)%Z:Zx = (x * (bpow (-2 * e) * bpow e2))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPx:(0 < x)%Re:=((mag beta x - 1) / 2)%Z:Zmu:=(x * bpow (-2 * e))%R:RHbe:(bpow (-2 * e) * bpow (2 * e))%R = 1%RFmu:format mu(1 <= mu)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPx:(0 < x)%Re:=((mag beta x - 1) / 2)%Z:Zmu:=(x * bpow (-2 * e))%R:RHbe:(bpow (-2 * e) * bpow (2 * e))%R = 1%RFmu:format mu(mu < bpow 2)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPx:(0 < x)%Re:=((mag beta x - 1) / 2)%Z:Zmu:=(x * bpow (-2 * e))%R:RHbe:(bpow (-2 * e) * bpow (2 * e))%R = 1%RFmu:format mu(1 <= mu)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPx:(0 < x)%Re:=((mag beta x - 1) / 2)%Z:Zmu:=(x * bpow (-2 * e))%R:RHbe:(bpow (-2 * e) * bpow (2 * e))%R = 1%RFmu:format mu(0 < bpow (2 * e))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPx:(0 < x)%Re:=((mag beta x - 1) / 2)%Z:Zmu:=(x * bpow (-2 * e))%R:RHbe:(bpow (-2 * e) * bpow (2 * e))%R = 1%RFmu:format mu(1 * bpow (2 * e) <= mu * bpow (2 * e))%Rapply bpow_gt_0.beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPx:(0 < x)%Re:=((mag beta x - 1) / 2)%Z:Zmu:=(x * bpow (-2 * e))%R:RHbe:(bpow (-2 * e) * bpow (2 * e))%R = 1%RFmu:format mu(0 < bpow (2 * e))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPx:(0 < x)%Re:=((mag beta x - 1) / 2)%Z:Zmu:=(x * bpow (-2 * e))%R:RHbe:(bpow (-2 * e) * bpow (2 * e))%R = 1%RFmu:format mu(1 * bpow (2 * e) <= mu * bpow (2 * e))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPx:(0 < x)%Re:=((mag beta x - 1) / 2)%Z:Zmu:=(x * bpow (-2 * e))%R:RHbe:(bpow (-2 * e) * bpow (2 * e))%R = 1%RFmu:format mue2:=(2 * e)%Z:Z(bpow e2 <= x * bpow (-2 * e) * bpow e2)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPx:(0 < x)%Re:=((mag beta x - 1) / 2)%Z:Zmu:=(x * bpow (-2 * e))%R:RHbe:(bpow (-2 * e) * bpow (2 * e))%R = 1%RFmu:format mue2:=(2 * e)%Z:Z(bpow (2 * e) <= x)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPx:(0 < x)%Re:=((mag beta x - 1) / 2)%Z:Zmu:=(x * bpow (-2 * e))%R:RHbe:(bpow (-2 * e) * bpow (2 * e))%R = 1%RFmu:format mue2:=(2 * e)%Z:Z(bpow (2 * e) <= bpow (mag beta x - 1))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPx:(0 < x)%Re:=((mag beta x - 1) / 2)%Z:Zmu:=(x * bpow (-2 * e))%R:RHbe:(bpow (-2 * e) * bpow (2 * e))%R = 1%RFmu:format mue2:=(2 * e)%Z:Z(bpow (mag beta x - 1) <= x)%Rnow apply bpow_le; unfold e; apply Z_mult_div_ge.beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPx:(0 < x)%Re:=((mag beta x - 1) / 2)%Z:Zmu:=(x * bpow (-2 * e))%R:RHbe:(bpow (-2 * e) * bpow (2 * e))%R = 1%RFmu:format mue2:=(2 * e)%Z:Z(bpow (2 * e) <= bpow (mag beta x - 1))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPx:(0 < x)%Re:=((mag beta x - 1) / 2)%Z:Zmu:=(x * bpow (-2 * e))%R:RHbe:(bpow (-2 * e) * bpow (2 * e))%R = 1%RFmu:format mue2:=(2 * e)%Z:Z(bpow (mag beta x - 1) <= x)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPx:(0 < x)%Re:=((mag beta x - 1) / 2)%Z:Zmu:=(x * bpow (-2 * e))%R:RHbe:(bpow (-2 * e) * bpow (2 * e))%R = 1%RFmu:format mue2:=(2 * e)%Z:Zl:=mag beta x:mag_prop beta x(bpow (l - 1) <= Rabs x)%Rintro Hx; revert Px; rewrite Hx; apply Rlt_irrefl.beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPx:(0 < x)%Re:=((mag beta x - 1) / 2)%Z:Zmu:=(x * bpow (-2 * e))%R:RHbe:(bpow (-2 * e) * bpow (2 * e))%R = 1%RFmu:format mue2:=(2 * e)%Z:Zl:=mag beta x:mag_prop beta xx <> 0%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPx:(0 < x)%Re:=((mag beta x - 1) / 2)%Z:Zmu:=(x * bpow (-2 * e))%R:RHbe:(bpow (-2 * e) * bpow (2 * e))%R = 1%RFmu:format mu(mu < bpow 2)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPx:(0 < x)%Re:=((mag beta x - 1) / 2)%Z:Zmu:=(x * bpow (-2 * e))%R:RHbe:(bpow (-2 * e) * bpow (2 * e))%R = 1%RFmu:format mu(x * bpow (-2 * e) < bpow 2)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPx:(0 < x)%Re:=((mag beta x - 1) / 2)%Z:Zmu:=(x * bpow (-2 * e))%R:RHbe:(bpow (-2 * e) * bpow (2 * e))%R = 1%RFmu:format mu(x * bpow (-2 * e) * bpow (2 * e) < bpow 2 * bpow (2 * e))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPx:(0 < x)%Re:=((mag beta x - 1) / 2)%Z:Zmu:=(x * bpow (-2 * e))%R:RHbe:(bpow (-2 * e) * bpow (2 * e))%R = 1%RFmu:format mu(x < bpow 2 * bpow (2 * e))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPx:(0 < x)%Re:=((mag beta x - 1) / 2)%Z:Zmu:=(x * bpow (-2 * e))%R:RHbe:(bpow (-2 * e) * bpow (2 * e))%R = 1%RFmu:format mu(x < bpow (mag beta x))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPx:(0 < x)%Re:=((mag beta x - 1) / 2)%Z:Zmu:=(x * bpow (-2 * e))%R:RHbe:(bpow (-2 * e) * bpow (2 * e))%R = 1%RFmu:format mu(bpow (mag beta x) <= bpow 2 * bpow (2 * e))%Rrewrite <- (Rabs_pos_eq _ (Rlt_le _ _ Px)) at 1; apply bpow_mag_gt.beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPx:(0 < x)%Re:=((mag beta x - 1) / 2)%Z:Zmu:=(x * bpow (-2 * e))%R:RHbe:(bpow (-2 * e) * bpow (2 * e))%R = 1%RFmu:format mu(x < bpow (mag beta x))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPx:(0 < x)%Re:=((mag beta x - 1) / 2)%Z:Zmu:=(x * bpow (-2 * e))%R:RHbe:(bpow (-2 * e) * bpow (2 * e))%R = 1%RFmu:format mu(bpow (mag beta x) <= bpow 2 * bpow (2 * e))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPx:(0 < x)%Re:=((mag beta x - 1) / 2)%Z:Zmu:=(x * bpow (-2 * e))%R:RHbe:(bpow (-2 * e) * bpow (2 * e))%R = 1%RFmu:format mumxm1:=(mag beta x - 1)%Z:Z(mag beta x <= 2 + 2 * (mxm1 / 2))%Zbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPx:(0 < x)%Re:=((mag beta x - 1) / 2)%Z:Zmu:=(x * bpow (-2 * e))%R:RHbe:(bpow (-2 * e) * bpow (2 * e))%R = 1%RFmu:format mumxm1:=(mag beta x - 1)%Z:Z(mag beta x <= 2 + (2 * (mxm1 / 2) + mxm1 mod 2 - mxm1 mod 2))%Zbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPx:(0 < x)%Re:=((mag beta x - 1) / 2)%Z:Zmu:=(x * bpow (-2 * e))%R:RHbe:(bpow (-2 * e) * bpow (2 * e))%R = 1%RFmu:format mumxm1:=(mag beta x - 1)%Z:Z(mag beta x <= 2 + (mxm1 - mxm1 mod 2))%Zunfold mxm1; destruct (Z.mod_bound_or (mag beta x - 1) 2); omega. Qed. Notation u_ro := (u_ro beta prec).beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPx:(0 < x)%Re:=((mag beta x - 1) / 2)%Z:Zmu:=(x * bpow (-2 * e))%R:RHbe:(bpow (-2 * e) * bpow (2 * e))%R = 1%RFmu:format mumxm1:=(mag beta x - 1)%Z:Z(mag beta x + (mxm1 mod 2 - mag beta x) <= 2 + (mxm1 - mxm1 mod 2) + (mxm1 mod 2 - mag beta x))%Zbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format x(1 <= x)%R -> x = 1%R \/ x = (1 + 2 * u_ro)%R \/ (1 + 4 * u_ro <= x)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format x(1 <= x)%R -> x = 1%R \/ x = (1 + 2 * u_ro)%R \/ (1 + 4 * u_ro <= x)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xHxGe1:(1 <= x)%Rx = 1%R \/ x = (1 + 2 * u_ro)%R \/ (1 + 4 * u_ro <= x)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xHxGe1:(1 <= x)%RPu_ro:(0 <= u_ro)%Rx = 1%R \/ x = (1 + 2 * u_ro)%R \/ (1 + 4 * u_ro <= x)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xHxGe1:(1 <= x)%RPu_ro:(0 <= u_ro)%RHxGt1:(1 < x)%Rx = (1 + 2 * u_ro)%R \/ (1 + 4 * u_ro <= x)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xHxGe1:(1 <= x)%RPu_ro:(0 <= u_ro)%RHxGt1:(1 < x)%RF1:format 1x = (1 + 2 * u_ro)%R \/ (1 + 4 * u_ro <= x)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xHxGe1:(1 <= x)%RPu_ro:(0 <= u_ro)%RHxGt1:(1 < x)%RF1:format 1(2 * u_ro)%R = bpow (- prec + 1)beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xHxGe1:(1 <= x)%RPu_ro:(0 <= u_ro)%RHxGt1:(1 < x)%RF1:format 1H2eps:(2 * u_ro)%R = bpow (- prec + 1)x = (1 + 2 * u_ro)%R \/ (1 + 4 * u_ro <= x)%Runfold u_ro; rewrite bpow_plus; field.beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xHxGe1:(1 <= x)%RPu_ro:(0 <= u_ro)%RHxGt1:(1 < x)%RF1:format 1(2 * u_ro)%R = bpow (- prec + 1)beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xHxGe1:(1 <= x)%RPu_ro:(0 <= u_ro)%RHxGt1:(1 < x)%RF1:format 1H2eps:(2 * u_ro)%R = bpow (- prec + 1)x = (1 + 2 * u_ro)%R \/ (1 + 4 * u_ro <= x)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xHxGe1:(1 <= x)%RPu_ro:(0 <= u_ro)%RHxGt1:(1 < x)%RF1:format 1H2eps:(2 * u_ro)%R = bpow (- prec + 1)(1 + 2 * u_ro <= x)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xHxGe1:(1 <= x)%RPu_ro:(0 <= u_ro)%RHxGt1:(1 < x)%RF1:format 1H2eps:(2 * u_ro)%R = bpow (- prec + 1)HmuGe1p2eps:(1 + 2 * u_ro <= x)%Rx = (1 + 2 * u_ro)%R \/ (1 + 4 * u_ro <= x)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xHxGe1:(1 <= x)%RPu_ro:(0 <= u_ro)%RHxGt1:(1 < x)%RF1:format 1H2eps:(2 * u_ro)%R = bpow (- prec + 1)(1 + 2 * u_ro <= x)%Rnow apply succ_le_lt; [now apply FLX_exp_valid| | |].beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xHxGe1:(1 <= x)%RPu_ro:(0 <= u_ro)%RHxGt1:(1 < x)%RF1:format 1H2eps:(2 * u_ro)%R = bpow (- prec + 1)(succ beta (FLX_exp prec) 1 <= x)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xHxGe1:(1 <= x)%RPu_ro:(0 <= u_ro)%RHxGt1:(1 < x)%RF1:format 1H2eps:(2 * u_ro)%R = bpow (- prec + 1)HmuGe1p2eps:(1 + 2 * u_ro <= x)%Rx = (1 + 2 * u_ro)%R \/ (1 + 4 * u_ro <= x)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xHxGe1:(1 <= x)%RPu_ro:(0 <= u_ro)%RHxGt1:(1 < x)%RF1:format 1H2eps:(2 * u_ro)%R = bpow (- prec + 1)HmuGe1p2eps:(1 + 2 * u_ro <= x)%RHxGt1p2eps:(1 + 2 * u_ro < x)%R(1 + 4 * u_ro <= x)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xHxGe1:(1 <= x)%RPu_ro:(0 <= u_ro)%RHxGt1:(1 < x)%RF1:format 1H2eps:(2 * u_ro)%R = bpow (- prec + 1)HmuGe1p2eps:(1 + 2 * u_ro <= x)%RHxGt1p2eps:(1 + 2 * u_ro < x)%Rulp beta (FLX_exp prec) (1 + 2 * u_ro) = (2 * u_ro)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xHxGe1:(1 <= x)%RPu_ro:(0 <= u_ro)%RHxGt1:(1 < x)%RF1:format 1H2eps:(2 * u_ro)%R = bpow (- prec + 1)HmuGe1p2eps:(1 + 2 * u_ro <= x)%RHxGt1p2eps:(1 + 2 * u_ro < x)%RHulp1p2eps:ulp beta (FLX_exp prec) (1 + 2 * u_ro) = (2 * u_ro)%R(1 + 4 * u_ro <= x)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xHxGe1:(1 <= x)%RPu_ro:(0 <= u_ro)%RHxGt1:(1 < x)%RF1:format 1H2eps:(2 * u_ro)%R = bpow (- prec + 1)HmuGe1p2eps:(1 + 2 * u_ro <= x)%RHxGt1p2eps:(1 + 2 * u_ro < x)%Rulp beta (FLX_exp prec) (1 + 2 * u_ro) = (2 * u_ro)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xHxGe1:(1 <= x)%RPu_ro:(0 <= u_ro)%RHxGt1:(1 < x)%RF1:format 1H2eps:(2 * u_ro)%R = bpow (- prec + 1)HmuGe1p2eps:(1 + 2 * u_ro <= x)%RHxGt1p2eps:(1 + 2 * u_ro < x)%RHsucc:ulp beta (FLX_exp prec) (succ beta (FLX_exp prec) 1) = ulp beta (FLX_exp prec) 1ulp beta (FLX_exp prec) (1 + 2 * u_ro) = (2 * u_ro)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xHxGe1:(1 <= x)%RPu_ro:(0 <= u_ro)%RHxGt1:(1 < x)%RF1:format 1H2eps:(2 * u_ro)%R = bpow (- prec + 1)HmuGe1p2eps:(1 + 2 * u_ro <= x)%RHxGt1p2eps:(1 + 2 * u_ro < x)%RHsucc:succ beta (FLX_exp prec) 1 = bpow (mag beta 1)ulp beta (FLX_exp prec) (1 + 2 * u_ro) = (2 * u_ro)%Rnow rewrite H2eps, <- succ_FLX_1, <- ulp_FLX_1.beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xHxGe1:(1 <= x)%RPu_ro:(0 <= u_ro)%RHxGt1:(1 < x)%RF1:format 1H2eps:(2 * u_ro)%R = bpow (- prec + 1)HmuGe1p2eps:(1 + 2 * u_ro <= x)%RHxGt1p2eps:(1 + 2 * u_ro < x)%RHsucc:ulp beta (FLX_exp prec) (succ beta (FLX_exp prec) 1) = ulp beta (FLX_exp prec) 1ulp beta (FLX_exp prec) (1 + 2 * u_ro) = (2 * u_ro)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xHxGe1:(1 <= x)%RPu_ro:(0 <= u_ro)%RHxGt1:(1 < x)%RF1:format 1H2eps:(2 * u_ro)%R = bpow (- prec + 1)HmuGe1p2eps:(1 + 2 * u_ro <= x)%RHxGt1p2eps:(1 + 2 * u_ro < x)%RHsucc:succ beta (FLX_exp prec) 1 = bpow (mag beta 1)ulp beta (FLX_exp prec) (1 + 2 * u_ro) = (2 * u_ro)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xHxGe1:(1 <= x)%RPu_ro:(0 <= u_ro)%RHxGt1:(1 < x)%RF1:format 1H2eps:(2 * u_ro)%R = bpow (- prec + 1)HmuGe1p2eps:(1 + 2 * u_ro <= x)%RHxGt1p2eps:(1 + 2 * u_ro < x)%R(succ beta (FLX_exp prec) 1 < bpow (mag beta 1))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xHxGe1:(1 <= x)%RPu_ro:(0 <= u_ro)%RHxGt1:(1 < x)%RF1:format 1H2eps:(2 * u_ro)%R = bpow (- prec + 1)HmuGe1p2eps:(1 + 2 * u_ro <= x)%RHxGt1p2eps:(1 + 2 * u_ro < x)%R(1 + 2 * u_ro < IZR beta)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xHxGe1:(1 <= x)%RPu_ro:(0 <= u_ro)%RHxGt1:(1 < x)%RF1:format 1H2eps:(2 * u_ro)%R = bpow (- prec + 1)HmuGe1p2eps:(1 + 2 * u_ro <= x)%RHxGt1p2eps:(1 + 2 * u_ro < x)%R(2 * u_ro < R1)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xHxGe1:(1 <= x)%RPu_ro:(0 <= u_ro)%RHxGt1:(1 < x)%RF1:format 1H2eps:(2 * u_ro)%R = bpow (- prec + 1)HmuGe1p2eps:(1 + 2 * u_ro <= x)%RHxGt1p2eps:(1 + 2 * u_ro < x)%R(2 <= IZR beta)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xHxGe1:(1 <= x)%RPu_ro:(0 <= u_ro)%RHxGt1:(1 < x)%RF1:format 1H2eps:(2 * u_ro)%R = bpow (- prec + 1)HmuGe1p2eps:(1 + 2 * u_ro <= x)%RHxGt1p2eps:(1 + 2 * u_ro < x)%R(2 * u_ro < R1)%Rchange R1 with (bpow 0); apply bpow_lt; omega.beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xHxGe1:(1 <= x)%RPu_ro:(0 <= u_ro)%RHxGt1:(1 < x)%RF1:format 1H2eps:(2 * u_ro)%R = bpow (- prec + 1)HmuGe1p2eps:(1 + 2 * u_ro <= x)%RHxGt1p2eps:(1 + 2 * u_ro < x)%R(bpow (- prec + 1) < R1)%Rapply IZR_le, Zle_bool_imp_le, radix_prop.beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xHxGe1:(1 <= x)%RPu_ro:(0 <= u_ro)%RHxGt1:(1 < x)%RF1:format 1H2eps:(2 * u_ro)%R = bpow (- prec + 1)HmuGe1p2eps:(1 + 2 * u_ro <= x)%RHxGt1p2eps:(1 + 2 * u_ro < x)%R(2 <= IZR beta)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xHxGe1:(1 <= x)%RPu_ro:(0 <= u_ro)%RHxGt1:(1 < x)%RF1:format 1H2eps:(2 * u_ro)%R = bpow (- prec + 1)HmuGe1p2eps:(1 + 2 * u_ro <= x)%RHxGt1p2eps:(1 + 2 * u_ro < x)%RHulp1p2eps:ulp beta (FLX_exp prec) (1 + 2 * u_ro) = (2 * u_ro)%R(1 + 4 * u_ro <= x)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xHxGe1:(1 <= x)%RPu_ro:(0 <= u_ro)%RHxGt1:(1 < x)%RF1:format 1H2eps:(2 * u_ro)%R = bpow (- prec + 1)HmuGe1p2eps:(1 + 2 * u_ro <= x)%RHxGt1p2eps:(1 + 2 * u_ro < x)%RHulp1p2eps:ulp beta (FLX_exp prec) (1 + 2 * u_ro) = (2 * u_ro)%Rsucc beta (FLX_exp prec) (1 + 2 * u_ro) = (1 + 4 * u_ro)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xHxGe1:(1 <= x)%RPu_ro:(0 <= u_ro)%RHxGt1:(1 < x)%RF1:format 1H2eps:(2 * u_ro)%R = bpow (- prec + 1)HmuGe1p2eps:(1 + 2 * u_ro <= x)%RHxGt1p2eps:(1 + 2 * u_ro < x)%RHulp1p2eps:ulp beta (FLX_exp prec) (1 + 2 * u_ro) = (2 * u_ro)%RHsucc1p2eps:succ beta (FLX_exp prec) (1 + 2 * u_ro) = (1 + 4 * u_ro)%R(1 + 4 * u_ro <= x)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xHxGe1:(1 <= x)%RPu_ro:(0 <= u_ro)%RHxGt1:(1 < x)%RF1:format 1H2eps:(2 * u_ro)%R = bpow (- prec + 1)HmuGe1p2eps:(1 + 2 * u_ro <= x)%RHxGt1p2eps:(1 + 2 * u_ro < x)%RHulp1p2eps:ulp beta (FLX_exp prec) (1 + 2 * u_ro) = (2 * u_ro)%Rsucc beta (FLX_exp prec) (1 + 2 * u_ro) = (1 + 4 * u_ro)%Rapply Rplus_le_le_0_compat; lra.beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xHxGe1:(1 <= x)%RPu_ro:(0 <= u_ro)%RHxGt1:(1 < x)%RF1:format 1H2eps:(2 * u_ro)%R = bpow (- prec + 1)HmuGe1p2eps:(1 + 2 * u_ro <= x)%RHxGt1p2eps:(1 + 2 * u_ro < x)%RHulp1p2eps:ulp beta (FLX_exp prec) (1 + 2 * u_ro) = (2 * u_ro)%R(0 <= 1 + 2 * u_ro)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xHxGe1:(1 <= x)%RPu_ro:(0 <= u_ro)%RHxGt1:(1 < x)%RF1:format 1H2eps:(2 * u_ro)%R = bpow (- prec + 1)HmuGe1p2eps:(1 + 2 * u_ro <= x)%RHxGt1p2eps:(1 + 2 * u_ro < x)%RHulp1p2eps:ulp beta (FLX_exp prec) (1 + 2 * u_ro) = (2 * u_ro)%RHsucc1p2eps:succ beta (FLX_exp prec) (1 + 2 * u_ro) = (1 + 4 * u_ro)%R(1 + 4 * u_ro <= x)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xHxGe1:(1 <= x)%RPu_ro:(0 <= u_ro)%RHxGt1:(1 < x)%RF1:format 1H2eps:(2 * u_ro)%R = bpow (- prec + 1)HmuGe1p2eps:(1 + 2 * u_ro <= x)%RHxGt1p2eps:(1 + 2 * u_ro < x)%RHulp1p2eps:ulp beta (FLX_exp prec) (1 + 2 * u_ro) = (2 * u_ro)%RHsucc1p2eps:succ beta (FLX_exp prec) (1 + 2 * u_ro) = (1 + 4 * u_ro)%R(succ beta (FLX_exp prec) (1 + 2 * u_ro) <= x)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xHxGe1:(1 <= x)%RPu_ro:(0 <= u_ro)%RHxGt1:(1 < x)%RF1:format 1H2eps:(2 * u_ro)%R = bpow (- prec + 1)HmuGe1p2eps:(1 + 2 * u_ro <= x)%RHxGt1p2eps:(1 + 2 * u_ro < x)%RHulp1p2eps:ulp beta (FLX_exp prec) (1 + 2 * u_ro) = (2 * u_ro)%RHsucc1p2eps:succ beta (FLX_exp prec) (1 + 2 * u_ro) = (1 + 4 * u_ro)%Rformat (1 + 2 * u_ro)now apply generic_format_succ; [apply FLX_exp_valid|]. Qed.beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xHxGe1:(1 <= x)%RPu_ro:(0 <= u_ro)%RHxGt1:(1 < x)%RF1:format 1H2eps:(2 * u_ro)%R = bpow (- prec + 1)HmuGe1p2eps:(1 + 2 * u_ro <= x)%RHxGt1p2eps:(1 + 2 * u_ro < x)%RHulp1p2eps:ulp beta (FLX_exp prec) (1 + 2 * u_ro) = (2 * u_ro)%RHsucc1p2eps:succ beta (FLX_exp prec) (1 + 2 * u_ro) = (1 + 4 * u_ro)%Rformat (succ beta (FLX_exp prec) 1)beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Z(u_ro / sqrt (1 + 4 * u_ro) <= 1 - 1 / sqrt (1 + 2 * u_ro))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Z(u_ro / sqrt (1 + 4 * u_ro) <= 1 - 1 / sqrt (1 + 2 * u_ro))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%ZPu_ro:(0 <= u_ro)%R(u_ro / sqrt (1 + 4 * u_ro) <= 1 - 1 / sqrt (1 + 2 * u_ro))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%ZPu_ro:(0 <= u_ro)%R(u_ro * / sqrt (1 + 4 * u_ro) + / sqrt (1 + 2 * u_ro) <= 1)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%ZPu_ro:(0 <= u_ro)%R(0 < sqrt (1 + 4 * u_ro) * sqrt (1 + 2 * u_ro))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%ZPu_ro:(0 <= u_ro)%R((u_ro * / sqrt (1 + 4 * u_ro) + / sqrt (1 + 2 * u_ro)) * (sqrt (1 + 4 * u_ro) * sqrt (1 + 2 * u_ro)) <= 1 * (sqrt (1 + 4 * u_ro) * sqrt (1 + 2 * u_ro)))%Rapply Rmult_lt_0_compat; apply sqrt_lt_R0; lra.beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%ZPu_ro:(0 <= u_ro)%R(0 < sqrt (1 + 4 * u_ro) * sqrt (1 + 2 * u_ro))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%ZPu_ro:(0 <= u_ro)%R((u_ro * / sqrt (1 + 4 * u_ro) + / sqrt (1 + 2 * u_ro)) * (sqrt (1 + 4 * u_ro) * sqrt (1 + 2 * u_ro)) <= 1 * (sqrt (1 + 4 * u_ro) * sqrt (1 + 2 * u_ro)))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%ZPu_ro:(0 <= u_ro)%R(u_ro * sqrt (1 + 2 * u_ro) + sqrt (1 + 4 * u_ro) <= sqrt (1 + 4 * u_ro) * sqrt (1 + 2 * u_ro))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%ZPu_ro:(0 <= u_ro)%R(u_ro * sqrt (1 + 2 * u_ro) + sqrt (1 + 4 * u_ro) <= sqrt (1 + 4 * u_ro) * sqrt (1 + 2 * u_ro))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%ZPu_ro:(0 <= u_ro)%R((u_ro * sqrt (1 + 2 * u_ro) + sqrt (1 + 4 * u_ro))² <= (sqrt (1 + 4 * u_ro) * sqrt (1 + 2 * u_ro))²)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%ZPu_ro:(0 <= u_ro)%R((u_ro * sqrt (1 + 2 * u_ro) + sqrt (1 + 4 * u_ro))² <= (sqrt ((1 + 4 * u_ro) * (1 + 2 * u_ro)))²)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%ZPu_ro:(0 <= u_ro)%R((u_ro * sqrt (1 + 2 * u_ro) + sqrt (1 + 4 * u_ro))² <= (1 + 4 * u_ro) * (1 + 2 * u_ro))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%ZPu_ro:(0 <= u_ro)%R(u_ro * u_ro * (sqrt (1 + 2 * u_ro) * sqrt (1 + 2 * u_ro)) + 2 * u_ro * sqrt (1 + 2 * u_ro) * sqrt (1 + 4 * u_ro) + sqrt (1 + 4 * u_ro) * sqrt (1 + 4 * u_ro) <= 8 * (u_ro * u_ro) + 6 * u_ro + 1)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%ZPu_ro:(0 <= u_ro)%R(u_ro * u_ro * (1 + 2 * u_ro) + 2 * u_ro * sqrt (1 + 2 * u_ro) * sqrt (1 + 4 * u_ro) + (1 + 4 * u_ro) <= 8 * (u_ro * u_ro) + 6 * u_ro + 1)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%ZPu_ro:(0 <= u_ro)%R(u_ro * u_ro * (1 + 2 * u_ro) + 2 * u_ro * sqrt (1 + 2 * u_ro) * sqrt (1 + 4 * u_ro) + (1 + 4 * u_ro) + (- u_ro * u_ro - 1 - 4 * u_ro - 2 * u_ro ^ 3) <= 8 * (u_ro * u_ro) + 6 * u_ro + 1 + (- u_ro * u_ro - 1 - 4 * u_ro - 2 * u_ro ^ 3))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%ZPu_ro:(0 <= u_ro)%R((2 * u_ro * sqrt (1 + 2 * u_ro) * sqrt (1 + 4 * u_ro))² <= (-2 * u_ro ^ 3 + 7 * u_ro ^ 2 + 2 * u_ro)²)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%ZPu_ro:(0 <= u_ro)%R(0 <= -2 * u_ro ^ 3 + 7 * u_ro ^ 2 + 2 * u_ro)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%ZPu_ro:(0 <= u_ro)%R((2 * u_ro * sqrt (1 + 2 * u_ro) * sqrt (1 + 4 * u_ro))² <= (-2 * u_ro ^ 3 + 7 * u_ro ^ 2 + 2 * u_ro)²)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%ZPu_ro:(0 <= u_ro)%R(4 * u_ro ^ 2 * sqrt (1 + 2 * u_ro) ^ 2 * sqrt (1 + 4 * u_ro) ^ 2 <= 4 * u_ro ^ 6 - 28 * u_ro ^ 5 + 41 * u_ro ^ 4 + 28 * u_ro ^ 3 + 4 * u_ro ^ 2)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%ZPu_ro:(0 <= u_ro)%R(4 * (u_ro * u_ro) * (1 + 2 * u_ro) * (1 + 4 * u_ro) <= 4 * (u_ro * (u_ro * (u_ro * (u_ro * (u_ro * u_ro))))) - 28 * (u_ro * (u_ro * (u_ro * (u_ro * u_ro)))) + 41 * (u_ro * (u_ro * (u_ro * u_ro))) + 28 * (u_ro * (u_ro * u_ro)) + 4 * (u_ro * u_ro))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%ZPu_ro:(0 <= u_ro)%R(4 * (u_ro * u_ro) * (1 + 2 * u_ro) * (1 + 4 * u_ro) + (-32 * u_ro ^ 4 - 24 * u_ro ^ 3 - 4 * u_ro ^ 2) <= 4 * (u_ro * (u_ro * (u_ro * (u_ro * (u_ro * u_ro))))) - 28 * (u_ro * (u_ro * (u_ro * (u_ro * u_ro)))) + 41 * (u_ro * (u_ro * (u_ro * u_ro))) + 28 * (u_ro * (u_ro * u_ro)) + 4 * (u_ro * u_ro) + (-32 * u_ro ^ 4 - 24 * u_ro ^ 3 - 4 * u_ro ^ 2))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%ZPu_ro:(0 <= u_ro)%R(0 <= 4 * u_ro ^ 6 - 28 * u_ro ^ 5 + 9 * u_ro ^ 4 + 4 * u_ro ^ 3)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%ZPu_ro:(0 <= u_ro)%R(0 <= ((4 * u_ro ^ 2 - 28 * u_ro + 9) * u_ro + 4) * u_ro ^ 3)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%ZPu_ro:(0 <= u_ro)%R(0 <= (4 * u_ro ^ 2 - 28 * u_ro + 9) * u_ro + 4)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%ZPu_ro:(0 <= u_ro)%R(u_ro <= 1 / 2)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%ZPu_ro:(0 <= u_ro)%RHeps_le_half:(u_ro <= 1 / 2)%R(0 <= (4 * u_ro ^ 2 - 28 * u_ro + 9) * u_ro + 4)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%ZPu_ro:(0 <= u_ro)%R(u_ro <= 1 / 2)%Rchange 1%R with (bpow 0); apply bpow_le; omega.beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%ZPu_ro:(0 <= u_ro)%R(bpow (- prec + 1) <= 1)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%ZPu_ro:(0 <= u_ro)%RHeps_le_half:(u_ro <= 1 / 2)%R(0 <= (4 * u_ro ^ 2 - 28 * u_ro + 9) * u_ro + 4)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%ZPu_ro:(0 <= u_ro)%RHeps_le_half:(u_ro <= 1 / 2)%R(-8 * u_ro + 4 <= (4 * u_ro ^ 2 - 28 * u_ro + 9) * u_ro + 4)%Rnow assert (H : (0 <= u_ro ^ 2)%R); [apply pow2_ge_0|lra].beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%ZPu_ro:(0 <= u_ro)%RHeps_le_half:(u_ro <= 1 / 2)%R(-8 <= 4 * u_ro ^ 2 - 28 * u_ro + 9)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%ZPu_ro:(0 <= u_ro)%R(0 <= -2 * u_ro ^ 3 + 7 * u_ro ^ 2 + 2 * u_ro)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%ZPu_ro:(0 <= u_ro)%R(u_ro ^ 3 <= u_ro ^ 2)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%ZPu_ro:(0 <= u_ro)%RH:(u_ro ^ 3 <= u_ro ^ 2)%R(0 <= -2 * u_ro ^ 3 + 7 * u_ro ^ 2 + 2 * u_ro)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%ZPu_ro:(0 <= u_ro)%R(u_ro ^ 3 <= u_ro ^ 2)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%ZPu_ro:(0 <= u_ro)%R(u_ro * u_ro * u_ro <= u_ro * u_ro * 1)%Rnow apply Rlt_le, u_ro_lt_1.beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%ZPu_ro:(0 <= u_ro)%R(u_ro <= 1)%Rnow assert (H' : (0 <= u_ro ^ 2)%R); [apply pow2_ge_0|lra]. Qed.beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%ZPu_ro:(0 <= u_ro)%RH:(u_ro ^ 3 <= u_ro ^ 2)%R(0 <= -2 * u_ro ^ 3 + 7 * u_ro ^ 2 + 2 * u_ro)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Z(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Z(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Z(0 <= / 1 - / sqrt (1 + 2 * u_ro))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Z(1 <= sqrt (1 + 2 * u_ro))%Rassert (H := u_ro_pos beta prec); lra. Qed.beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Z(1 <= 1 + 2 * u_ro)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Z(1 - 1 / sqrt (1 + 2 * u_ro) <= u_ro / (1 + u_ro))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Z(1 - 1 / sqrt (1 + 2 * u_ro) <= u_ro / (1 + u_ro))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%ZPu_ro:(0 <= u_ro)%R(1 - 1 / sqrt (1 + 2 * u_ro) <= u_ro / (1 + u_ro))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%ZPu_ro:(0 <= u_ro)%R(0 < sqrt (1 + 2 * u_ro) * (1 + u_ro))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%ZPu_ro:(0 <= u_ro)%R((1 - 1 / sqrt (1 + 2 * u_ro)) * (sqrt (1 + 2 * u_ro) * (1 + u_ro)) <= u_ro / (1 + u_ro) * (sqrt (1 + 2 * u_ro) * (1 + u_ro)))%Rapply Rmult_lt_0_compat; [apply sqrt_lt_R0|]; lra.beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%ZPu_ro:(0 <= u_ro)%R(0 < sqrt (1 + 2 * u_ro) * (1 + u_ro))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%ZPu_ro:(0 <= u_ro)%R((1 - 1 / sqrt (1 + 2 * u_ro)) * (sqrt (1 + 2 * u_ro) * (1 + u_ro)) <= u_ro / (1 + u_ro) * (sqrt (1 + 2 * u_ro) * (1 + u_ro)))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%ZPu_ro:(0 <= u_ro)%R(sqrt (1 + 2 * u_ro) * u_ro + sqrt (1 + 2 * u_ro) - u_ro - 1 <= sqrt (1 + 2 * u_ro) * u_ro)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%ZPu_ro:(0 <= u_ro)%R(sqrt (1 + 2 * u_ro) * u_ro + (sqrt (1 + 2 * u_ro) + (- u_ro + - (1))) <= sqrt (1 + 2 * u_ro) * u_ro)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%ZPu_ro:(0 <= u_ro)%R(sqrt (1 + 2 * u_ro) + (- u_ro + - (1)) <= 0)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%ZPu_ro:(0 <= u_ro)%R(sqrt (1 + 2 * u_ro) <= u_ro + 1)%Rassert (H : (0 <= u_ro * u_ro)%R); [apply Rmult_le_pos|]; lra. Qed.beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%ZPu_ro:(0 <= u_ro)%R(1 + 2 * u_ro <= (u_ro + 1) * (u_ro + 1))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Z(0 <= sqrt (1 + 2 * u_ro) - 1)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Z(1 <= sqrt (1 + 2 * u_ro))%Rassert (H := u_ro_pos beta prec); lra. Qed.beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Z(1 <= 1 + 2 * u_ro)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format x(Rabs (round beta (FLX_exp prec) (Znearest choice) (sqrt x) - sqrt x) <= (1 - 1 / sqrt (1 + 2 * u_ro)) * Rabs (sqrt x))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format x(Rabs (round beta (FLX_exp prec) (Znearest choice) (sqrt x) - sqrt x) <= (1 - 1 / sqrt (1 + 2 * u_ro)) * Rabs (sqrt x))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPeps:(0 <= u_ro)%R(Rabs (round beta (FLX_exp prec) (Znearest choice) (sqrt x) - sqrt x) <= (1 - 1 / sqrt (1 + 2 * u_ro)) * Rabs (sqrt x))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPeps:(0 <= u_ro)%R(0 < u_ro)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPeps:(0 <= u_ro)%RPeps':(0 < u_ro)%R(Rabs (round beta (FLX_exp prec) (Znearest choice) (sqrt x) - sqrt x) <= (1 - 1 / sqrt (1 + 2 * u_ro)) * Rabs (sqrt x))%Runfold u_ro; apply Rmult_lt_0_compat; [lra|apply bpow_gt_0].beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPeps:(0 <= u_ro)%R(0 < u_ro)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPeps:(0 <= u_ro)%RPeps':(0 < u_ro)%R(Rabs (round beta (FLX_exp prec) (Znearest choice) (sqrt x) - sqrt x) <= (1 - 1 / sqrt (1 + 2 * u_ro)) * Rabs (sqrt x))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPeps:(0 <= u_ro)%RPeps':(0 < u_ro)%RPb:(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%R(Rabs (round beta (FLX_exp prec) (Znearest choice) (sqrt x) - sqrt x) <= (1 - 1 / sqrt (1 + 2 * u_ro)) * Rabs (sqrt x))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPeps:(0 <= u_ro)%RPeps':(0 < u_ro)%RPb:(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%RPb':(0 <= sqrt (1 + 2 * u_ro) - 1)%R(Rabs (round beta (FLX_exp prec) (Znearest choice) (sqrt x) - sqrt x) <= (1 - 1 / sqrt (1 + 2 * u_ro)) * Rabs (sqrt x))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPeps:(0 <= u_ro)%RPeps':(0 < u_ro)%RPb:(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%RPb':(0 <= sqrt (1 + 2 * u_ro) - 1)%RNx:(x <= 0)%R(Rabs (round beta (FLX_exp prec) (Znearest choice) (sqrt x) - sqrt x) <= (1 - 1 / sqrt (1 + 2 * u_ro)) * Rabs (sqrt x))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPeps:(0 <= u_ro)%RPeps':(0 < u_ro)%RPb:(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%RPb':(0 <= sqrt (1 + 2 * u_ro) - 1)%RPx:(0 < x)%R(Rabs (round beta (FLX_exp prec) (Znearest choice) (sqrt x) - sqrt x) <= (1 - 1 / sqrt (1 + 2 * u_ro)) * Rabs (sqrt x))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPeps:(0 <= u_ro)%RPeps':(0 < u_ro)%RPb:(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%RPb':(0 <= sqrt (1 + 2 * u_ro) - 1)%RNx:(x <= 0)%R(Rabs (round beta (FLX_exp prec) (Znearest choice) (sqrt x) - sqrt x) <= (1 - 1 / sqrt (1 + 2 * u_ro)) * Rabs (sqrt x))%Rnow unfold Rminus; rewrite Rplus_0_l, Rabs_Ropp, Rabs_R0; right.beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPeps:(0 <= u_ro)%RPeps':(0 < u_ro)%RPb:(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%RPb':(0 <= sqrt (1 + 2 * u_ro) - 1)%RNx:(x <= 0)%R(Rabs (0 - 0) <= 0)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPeps:(0 <= u_ro)%RPeps':(0 < u_ro)%RPb:(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%RPb':(0 <= sqrt (1 + 2 * u_ro) - 1)%RPx:(0 < x)%R(Rabs (round beta (FLX_exp prec) (Znearest choice) (sqrt x) - sqrt x) <= (1 - 1 / sqrt (1 + 2 * u_ro)) * Rabs (sqrt x))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPeps:(0 <= u_ro)%RPeps':(0 < u_ro)%RPb:(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%RPb':(0 <= sqrt (1 + 2 * u_ro) - 1)%RPx:(0 < x)%Rmu:Re:ZFmu:format muHmu:x = (mu * bpow (2 * e))%RHmuGe1:(1 <= mu)%RHmuLtsqradix:(mu < bpow 2)%R(Rabs (round beta (FLX_exp prec) (Znearest choice) (sqrt x) - sqrt x) <= (1 - 1 / sqrt (1 + 2 * u_ro)) * Rabs (sqrt x))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPeps:(0 <= u_ro)%RPeps':(0 < u_ro)%RPb:(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%RPb':(0 <= sqrt (1 + 2 * u_ro) - 1)%RPx:(0 < x)%Rmu:Re:ZFmu:format muHmu:x = (mu * bpow (2 * e))%RHmuGe1:(1 <= mu)%RHmuLtsqradix:(mu < bpow 2)%Rt:=sqrt x:R(Rabs (round beta (FLX_exp prec) (Znearest choice) (sqrt x) - sqrt x) <= (1 - 1 / sqrt (1 + 2 * u_ro)) * Rabs (sqrt x))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPeps:(0 <= u_ro)%RPeps':(0 < u_ro)%RPb:(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%RPb':(0 <= sqrt (1 + 2 * u_ro) - 1)%RPx:(0 < x)%Rmu:Re:ZFmu:format muHmu:x = (mu * bpow (2 * e))%RHmuGe1:(1 <= mu)%RHmuLtsqradix:(mu < bpow 2)%Rt:=sqrt x:Rrt:=round beta (FLX_exp prec) (Znearest choice) (sqrt x):R(Rabs (rt - sqrt x) <= (1 - 1 / sqrt (1 + 2 * u_ro)) * Rabs (sqrt x))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPeps:(0 <= u_ro)%RPeps':(0 < u_ro)%RPb:(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%RPb':(0 <= sqrt (1 + 2 * u_ro) - 1)%RPx:(0 < x)%Rmu:Re:ZFmu:format muHmu:x = (mu * bpow (2 * e))%RHmuGe1:(1 <= mu)%RHmuLtsqradix:(mu < bpow 2)%Rt:=sqrt x:Rrt:=round beta (FLX_exp prec) (Znearest choice) (sqrt x):Rt = (sqrt mu * bpow e)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPeps:(0 <= u_ro)%RPeps':(0 < u_ro)%RPb:(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%RPb':(0 <= sqrt (1 + 2 * u_ro) - 1)%RPx:(0 < x)%Rmu:Re:ZFmu:format muHmu:x = (mu * bpow (2 * e))%RHmuGe1:(1 <= mu)%RHmuLtsqradix:(mu < bpow 2)%Rt:=sqrt x:Rrt:=round beta (FLX_exp prec) (Znearest choice) (sqrt x):RHt:t = (sqrt mu * bpow e)%R(Rabs (rt - sqrt x) <= (1 - 1 / sqrt (1 + 2 * u_ro)) * Rabs (sqrt x))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPeps:(0 <= u_ro)%RPeps':(0 < u_ro)%RPb:(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%RPb':(0 <= sqrt (1 + 2 * u_ro) - 1)%RPx:(0 < x)%Rmu:Re:ZFmu:format muHmu:x = (mu * bpow (2 * e))%RHmuGe1:(1 <= mu)%RHmuLtsqradix:(mu < bpow 2)%Rt:=sqrt x:Rrt:=round beta (FLX_exp prec) (Znearest choice) (sqrt x):Rt = (sqrt mu * bpow e)%Rnow rewrite sqrt_bpow.beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPeps:(0 <= u_ro)%RPeps':(0 < u_ro)%RPb:(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%RPb':(0 <= sqrt (1 + 2 * u_ro) - 1)%RPx:(0 < x)%Rmu:Re:ZFmu:format muHmu:x = (mu * bpow (2 * e))%RHmuGe1:(1 <= mu)%RHmuLtsqradix:(mu < bpow 2)%Rt:=sqrt x:Rrt:=round beta (FLX_exp prec) (Znearest choice) (sqrt x):R(sqrt mu * sqrt (bpow (2 * e)))%R = (sqrt mu * bpow e)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPeps:(0 <= u_ro)%RPeps':(0 < u_ro)%RPb:(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%RPb':(0 <= sqrt (1 + 2 * u_ro) - 1)%RPx:(0 < x)%Rmu:Re:ZFmu:format muHmu:x = (mu * bpow (2 * e))%RHmuGe1:(1 <= mu)%RHmuLtsqradix:(mu < bpow 2)%Rt:=sqrt x:Rrt:=round beta (FLX_exp prec) (Znearest choice) (sqrt x):RHt:t = (sqrt mu * bpow e)%R(Rabs (rt - sqrt x) <= (1 - 1 / sqrt (1 + 2 * u_ro)) * Rabs (sqrt x))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPeps:(0 <= u_ro)%RPeps':(0 < u_ro)%RPb:(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%RPb':(0 <= sqrt (1 + 2 * u_ro) - 1)%RPx:(0 < x)%Rmu:Re:ZFmu:format muHmu:x = (mu * bpow (2 * e))%RHmuGe1:(1 <= mu)%RHmuLtsqradix:(mu < bpow 2)%Rt:=sqrt x:Rrt:=round beta (FLX_exp prec) (Znearest choice) (sqrt x):RHt:t = (sqrt mu * bpow e)%RHmu':mu = 1%R(Rabs (rt - sqrt x) <= (1 - 1 / sqrt (1 + 2 * u_ro)) * Rabs (sqrt x))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPeps:(0 <= u_ro)%RPeps':(0 < u_ro)%RPb:(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%RPb':(0 <= sqrt (1 + 2 * u_ro) - 1)%RPx:(0 < x)%Rmu:Re:ZFmu:format muHmu:x = (mu * bpow (2 * e))%RHmuGe1:(1 <= mu)%RHmuLtsqradix:(mu < bpow 2)%Rt:=sqrt x:Rrt:=round beta (FLX_exp prec) (Znearest choice) (sqrt x):RHt:t = (sqrt mu * bpow e)%RHmu':mu = (1 + 2 * u_ro)%R(Rabs (rt - sqrt x) <= (1 - 1 / sqrt (1 + 2 * u_ro)) * Rabs (sqrt x))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPeps:(0 <= u_ro)%RPeps':(0 < u_ro)%RPb:(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%RPb':(0 <= sqrt (1 + 2 * u_ro) - 1)%RPx:(0 < x)%Rmu:Re:ZFmu:format muHmu:x = (mu * bpow (2 * e))%RHmuGe1:(1 <= mu)%RHmuLtsqradix:(mu < bpow 2)%Rt:=sqrt x:Rrt:=round beta (FLX_exp prec) (Znearest choice) (sqrt x):RHt:t = (sqrt mu * bpow e)%RHmu':(1 + 4 * u_ro <= mu)%R(Rabs (rt - sqrt x) <= (1 - 1 / sqrt (1 + 2 * u_ro)) * Rabs (sqrt x))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPeps:(0 <= u_ro)%RPeps':(0 < u_ro)%RPb:(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%RPb':(0 <= sqrt (1 + 2 * u_ro) - 1)%RPx:(0 < x)%Rmu:Re:ZFmu:format muHmu:x = (mu * bpow (2 * e))%RHmuGe1:(1 <= mu)%RHmuLtsqradix:(mu < bpow 2)%Rt:=sqrt x:Rrt:=round beta (FLX_exp prec) (Znearest choice) (sqrt x):RHt:t = (sqrt mu * bpow e)%RHmu':mu = 1%R(Rabs (rt - sqrt x) <= (1 - 1 / sqrt (1 + 2 * u_ro)) * Rabs (sqrt x))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPeps:(0 <= u_ro)%RPeps':(0 < u_ro)%RPb:(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%RPb':(0 <= sqrt (1 + 2 * u_ro) - 1)%RPx:(0 < x)%Rmu:Re:ZFmu:format muHmu:x = (mu * bpow (2 * e))%RHmuGe1:(1 <= mu)%RHmuLtsqradix:(mu < bpow 2)%Rt:=sqrt x:Rrt:=round beta (FLX_exp prec) (Znearest choice) (sqrt x):RHt:t = (sqrt mu * bpow e)%RHmu':mu = 1%R(Rabs (round beta (FLX_exp prec) (Znearest choice) (bpow e) - bpow e) <= (1 - 1 / sqrt (1 + 2 * u_ro)) * Rabs (bpow e))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPeps:(0 <= u_ro)%RPeps':(0 < u_ro)%RPb:(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%RPb':(0 <= sqrt (1 + 2 * u_ro) - 1)%RPx:(0 < x)%Rmu:Re:ZFmu:format muHmu:x = (mu * bpow (2 * e))%RHmuGe1:(1 <= mu)%RHmuLtsqradix:(mu < bpow 2)%Rt:=sqrt x:Rrt:=round beta (FLX_exp prec) (Znearest choice) (sqrt x):RHt:t = (sqrt mu * bpow e)%RHmu':mu = 1%R(Rabs (bpow e - bpow e) <= (1 - 1 / sqrt (1 + 2 * u_ro)) * Rabs (bpow e))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPeps:(0 <= u_ro)%RPeps':(0 < u_ro)%RPb:(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%RPb':(0 <= sqrt (1 + 2 * u_ro) - 1)%RPx:(0 < x)%Rmu:Re:ZFmu:format muHmu:x = (mu * bpow (2 * e))%RHmuGe1:(1 <= mu)%RHmuLtsqradix:(mu < bpow 2)%Rt:=sqrt x:Rrt:=round beta (FLX_exp prec) (Znearest choice) (sqrt x):RHt:t = (sqrt mu * bpow e)%RHmu':mu = 1%Rformat (bpow e)beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPeps:(0 <= u_ro)%RPeps':(0 < u_ro)%RPb:(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%RPb':(0 <= sqrt (1 + 2 * u_ro) - 1)%RPx:(0 < x)%Rmu:Re:ZFmu:format muHmu:x = (mu * bpow (2 * e))%RHmuGe1:(1 <= mu)%RHmuLtsqradix:(mu < bpow 2)%Rt:=sqrt x:Rrt:=round beta (FLX_exp prec) (Znearest choice) (sqrt x):RHt:t = (sqrt mu * bpow e)%RHmu':mu = 1%R(Rabs (bpow e - bpow e) <= (1 - 1 / sqrt (1 + 2 * u_ro)) * Rabs (bpow e))%Rnow apply Rmult_le_pos; [|apply Rabs_pos].beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPeps:(0 <= u_ro)%RPeps':(0 < u_ro)%RPb:(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%RPb':(0 <= sqrt (1 + 2 * u_ro) - 1)%RPx:(0 < x)%Rmu:Re:ZFmu:format muHmu:x = (mu * bpow (2 * e))%RHmuGe1:(1 <= mu)%RHmuLtsqradix:(mu < bpow 2)%Rt:=sqrt x:Rrt:=round beta (FLX_exp prec) (Znearest choice) (sqrt x):RHt:t = (sqrt mu * bpow e)%RHmu':mu = 1%R(0 <= (1 - 1 / sqrt (1 + 2 * u_ro)) * Rabs (bpow e))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPeps:(0 <= u_ro)%RPeps':(0 < u_ro)%RPb:(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%RPb':(0 <= sqrt (1 + 2 * u_ro) - 1)%RPx:(0 < x)%Rmu:Re:ZFmu:format muHmu:x = (mu * bpow (2 * e))%RHmuGe1:(1 <= mu)%RHmuLtsqradix:(mu < bpow 2)%Rt:=sqrt x:Rrt:=round beta (FLX_exp prec) (Znearest choice) (sqrt x):RHt:t = (sqrt mu * bpow e)%RHmu':mu = 1%Rformat (bpow e)unfold FLX_exp; omega.beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPeps:(0 <= u_ro)%RPeps':(0 < u_ro)%RPb:(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%RPb':(0 <= sqrt (1 + 2 * u_ro) - 1)%RPx:(0 < x)%Rmu:Re:ZFmu:format muHmu:x = (mu * bpow (2 * e))%RHmuGe1:(1 <= mu)%RHmuLtsqradix:(mu < bpow 2)%Rt:=sqrt x:Rrt:=round beta (FLX_exp prec) (Znearest choice) (sqrt x):RHt:t = (sqrt mu * bpow e)%RHmu':mu = 1%R(FLX_exp prec e <= e)%Zbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPeps:(0 <= u_ro)%RPeps':(0 < u_ro)%RPb:(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%RPb':(0 <= sqrt (1 + 2 * u_ro) - 1)%RPx:(0 < x)%Rmu:Re:ZFmu:format muHmu:x = (mu * bpow (2 * e))%RHmuGe1:(1 <= mu)%RHmuLtsqradix:(mu < bpow 2)%Rt:=sqrt x:Rrt:=round beta (FLX_exp prec) (Znearest choice) (sqrt x):RHt:t = (sqrt mu * bpow e)%RHmu':mu = (1 + 2 * u_ro)%R(Rabs (rt - sqrt x) <= (1 - 1 / sqrt (1 + 2 * u_ro)) * Rabs (sqrt x))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPeps:(0 <= u_ro)%RPeps':(0 < u_ro)%RPb:(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%RPb':(0 <= sqrt (1 + 2 * u_ro) - 1)%RPx:(0 < x)%Rmu:Re:ZFmu:format muHmu:x = (mu * bpow (2 * e))%RHmuGe1:(1 <= mu)%RHmuLtsqradix:(mu < bpow 2)%Rt:=sqrt x:Rrt:=round beta (FLX_exp prec) (Znearest choice) (sqrt x):RHt:t = (sqrt mu * bpow e)%RHmu':(1 + 4 * u_ro <= mu)%R(Rabs (rt - sqrt x) <= (1 - 1 / sqrt (1 + 2 * u_ro)) * Rabs (sqrt x))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPeps:(0 <= u_ro)%RPeps':(0 < u_ro)%RPb:(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%RPb':(0 <= sqrt (1 + 2 * u_ro) - 1)%RPx:(0 < x)%Rmu:Re:ZFmu:format muHmu:x = (mu * bpow (2 * e))%RHmuGe1:(1 <= mu)%RHmuLtsqradix:(mu < bpow 2)%Rt:=sqrt x:Rrt:=round beta (FLX_exp prec) (Znearest choice) (sqrt x):RHt:t = (sqrt mu * bpow e)%RHmu':mu = (1 + 2 * u_ro)%R(Rabs (rt - sqrt x) <= (1 - 1 / sqrt (1 + 2 * u_ro)) * Rabs (sqrt x))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPeps:(0 <= u_ro)%RPeps':(0 < u_ro)%RPb:(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%RPb':(0 <= sqrt (1 + 2 * u_ro) - 1)%RPx:(0 < x)%Rmu:Re:ZFmu:format muHmu:x = (mu * bpow (2 * e))%RHmuGe1:(1 <= mu)%RHmuLtsqradix:(mu < bpow 2)%Rt:=sqrt x:Rrt:=round beta (FLX_exp prec) (Znearest choice) (sqrt x):RHt:t = (sqrt mu * bpow e)%RHmu':mu = (1 + 2 * u_ro)%R(1 <= sqrt (1 + 2 * u_ro))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPeps:(0 <= u_ro)%RPeps':(0 < u_ro)%RPb:(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%RPb':(0 <= sqrt (1 + 2 * u_ro) - 1)%RPx:(0 < x)%Rmu:Re:ZFmu:format muHmu:x = (mu * bpow (2 * e))%RHmuGe1:(1 <= mu)%RHmuLtsqradix:(mu < bpow 2)%Rt:=sqrt x:Rrt:=round beta (FLX_exp prec) (Znearest choice) (sqrt x):RHt:t = (sqrt mu * bpow e)%RHmu':mu = (1 + 2 * u_ro)%R(sqrt (1 + 2 * u_ro) < 1 + u_ro)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPeps:(0 <= u_ro)%RPeps':(0 < u_ro)%RPb:(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%RPb':(0 <= sqrt (1 + 2 * u_ro) - 1)%RPx:(0 < x)%Rmu:Re:ZFmu:format muHmu:x = (mu * bpow (2 * e))%RHmuGe1:(1 <= mu)%RHmuLtsqradix:(mu < bpow 2)%Rt:=sqrt x:Rrt:=round beta (FLX_exp prec) (Znearest choice) (sqrt x):RHt:t = (sqrt mu * bpow e)%RHmu':mu = (1 + 2 * u_ro)%RHsqrtmu:(1 <= sqrt mu < 1 + u_ro)%R(Rabs (rt - sqrt x) <= (1 - 1 / sqrt (1 + 2 * u_ro)) * Rabs (sqrt x))%Rrewrite <- sqrt_1 at 1; apply sqrt_le_1_alt; lra.beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPeps:(0 <= u_ro)%RPeps':(0 < u_ro)%RPb:(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%RPb':(0 <= sqrt (1 + 2 * u_ro) - 1)%RPx:(0 < x)%Rmu:Re:ZFmu:format muHmu:x = (mu * bpow (2 * e))%RHmuGe1:(1 <= mu)%RHmuLtsqradix:(mu < bpow 2)%Rt:=sqrt x:Rrt:=round beta (FLX_exp prec) (Znearest choice) (sqrt x):RHt:t = (sqrt mu * bpow e)%RHmu':mu = (1 + 2 * u_ro)%R(1 <= sqrt (1 + 2 * u_ro))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPeps:(0 <= u_ro)%RPeps':(0 < u_ro)%RPb:(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%RPb':(0 <= sqrt (1 + 2 * u_ro) - 1)%RPx:(0 < x)%Rmu:Re:ZFmu:format muHmu:x = (mu * bpow (2 * e))%RHmuGe1:(1 <= mu)%RHmuLtsqradix:(mu < bpow 2)%Rt:=sqrt x:Rrt:=round beta (FLX_exp prec) (Znearest choice) (sqrt x):RHt:t = (sqrt mu * bpow e)%RHmu':mu = (1 + 2 * u_ro)%R(sqrt (1 + 2 * u_ro) < 1 + u_ro)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPeps:(0 <= u_ro)%RPeps':(0 < u_ro)%RPb:(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%RPb':(0 <= sqrt (1 + 2 * u_ro) - 1)%RPx:(0 < x)%Rmu:Re:ZFmu:format muHmu:x = (mu * bpow (2 * e))%RHmuGe1:(1 <= mu)%RHmuLtsqradix:(mu < bpow 2)%Rt:=sqrt x:Rrt:=round beta (FLX_exp prec) (Znearest choice) (sqrt x):RHt:t = (sqrt mu * bpow e)%RHmu':mu = (1 + 2 * u_ro)%RHsqrtmu:(1 <= sqrt mu < 1 + u_ro)%R(Rabs (rt - sqrt x) <= (1 - 1 / sqrt (1 + 2 * u_ro)) * Rabs (sqrt x))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPeps:(0 <= u_ro)%RPeps':(0 < u_ro)%RPb:(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%RPb':(0 <= sqrt (1 + 2 * u_ro) - 1)%RPx:(0 < x)%Rmu:Re:ZFmu:format muHmu:x = (mu * bpow (2 * e))%RHmuGe1:(1 <= mu)%RHmuLtsqradix:(mu < bpow 2)%Rt:=sqrt x:Rrt:=round beta (FLX_exp prec) (Znearest choice) (sqrt x):RHt:t = (sqrt mu * bpow e)%RHmu':mu = (1 + 2 * u_ro)%R(sqrt (1 + 2 * u_ro) < 1 + u_ro)%Rring_simplify; assert (0 < u_ro ^ 2)%R; [apply pow_lt|]; lra.beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPeps:(0 <= u_ro)%RPeps':(0 < u_ro)%RPb:(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%RPb':(0 <= sqrt (1 + 2 * u_ro) - 1)%RPx:(0 < x)%Rmu:Re:ZFmu:format muHmu:x = (mu * bpow (2 * e))%RHmuGe1:(1 <= mu)%RHmuLtsqradix:(mu < bpow 2)%Rt:=sqrt x:Rrt:=round beta (FLX_exp prec) (Znearest choice) (sqrt x):RHt:t = (sqrt mu * bpow e)%RHmu':mu = (1 + 2 * u_ro)%R(1 + 2 * u_ro < (1 + u_ro) * (1 + u_ro))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPeps:(0 <= u_ro)%RPeps':(0 < u_ro)%RPb:(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%RPb':(0 <= sqrt (1 + 2 * u_ro) - 1)%RPx:(0 < x)%Rmu:Re:ZFmu:format muHmu:x = (mu * bpow (2 * e))%RHmuGe1:(1 <= mu)%RHmuLtsqradix:(mu < bpow 2)%Rt:=sqrt x:Rrt:=round beta (FLX_exp prec) (Znearest choice) (sqrt x):RHt:t = (sqrt mu * bpow e)%RHmu':mu = (1 + 2 * u_ro)%RHsqrtmu:(1 <= sqrt mu < 1 + u_ro)%R(Rabs (rt - sqrt x) <= (1 - 1 / sqrt (1 + 2 * u_ro)) * Rabs (sqrt x))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPeps:(0 <= u_ro)%RPeps':(0 < u_ro)%RPb:(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%RPb':(0 <= sqrt (1 + 2 * u_ro) - 1)%RPx:(0 < x)%Rmu:Re:ZFmu:format muHmu:x = (mu * bpow (2 * e))%RHmuGe1:(1 <= mu)%RHmuLtsqradix:(mu < bpow 2)%Rt:=sqrt x:Rrt:=round beta (FLX_exp prec) (Znearest choice) (sqrt x):RHt:t = (sqrt mu * bpow e)%RHmu':mu = (1 + 2 * u_ro)%RHsqrtmu:(1 <= sqrt mu < 1 + u_ro)%Rformat (bpow e)beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPeps:(0 <= u_ro)%RPeps':(0 < u_ro)%RPb:(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%RPb':(0 <= sqrt (1 + 2 * u_ro) - 1)%RPx:(0 < x)%Rmu:Re:ZFmu:format muHmu:x = (mu * bpow (2 * e))%RHmuGe1:(1 <= mu)%RHmuLtsqradix:(mu < bpow 2)%Rt:=sqrt x:Rrt:=round beta (FLX_exp prec) (Znearest choice) (sqrt x):RHt:t = (sqrt mu * bpow e)%RHmu':mu = (1 + 2 * u_ro)%RHsqrtmu:(1 <= sqrt mu < 1 + u_ro)%RFbpowe:format (bpow e)(Rabs (rt - sqrt x) <= (1 - 1 / sqrt (1 + 2 * u_ro)) * Rabs (sqrt x))%Rapply generic_format_bpow; unfold FLX_exp; omega.beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPeps:(0 <= u_ro)%RPeps':(0 < u_ro)%RPb:(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%RPb':(0 <= sqrt (1 + 2 * u_ro) - 1)%RPx:(0 < x)%Rmu:Re:ZFmu:format muHmu:x = (mu * bpow (2 * e))%RHmuGe1:(1 <= mu)%RHmuLtsqradix:(mu < bpow 2)%Rt:=sqrt x:Rrt:=round beta (FLX_exp prec) (Znearest choice) (sqrt x):RHt:t = (sqrt mu * bpow e)%RHmu':mu = (1 + 2 * u_ro)%RHsqrtmu:(1 <= sqrt mu < 1 + u_ro)%Rformat (bpow e)beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPeps:(0 <= u_ro)%RPeps':(0 < u_ro)%RPb:(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%RPb':(0 <= sqrt (1 + 2 * u_ro) - 1)%RPx:(0 < x)%Rmu:Re:ZFmu:format muHmu:x = (mu * bpow (2 * e))%RHmuGe1:(1 <= mu)%RHmuLtsqradix:(mu < bpow 2)%Rt:=sqrt x:Rrt:=round beta (FLX_exp prec) (Znearest choice) (sqrt x):RHt:t = (sqrt mu * bpow e)%RHmu':mu = (1 + 2 * u_ro)%RHsqrtmu:(1 <= sqrt mu < 1 + u_ro)%RFbpowe:format (bpow e)(Rabs (rt - sqrt x) <= (1 - 1 / sqrt (1 + 2 * u_ro)) * Rabs (sqrt x))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPeps:(0 <= u_ro)%RPeps':(0 < u_ro)%RPb:(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%RPb':(0 <= sqrt (1 + 2 * u_ro) - 1)%RPx:(0 < x)%Rmu:Re:ZFmu:format muHmu:x = (mu * bpow (2 * e))%RHmuGe1:(1 <= mu)%RHmuLtsqradix:(mu < bpow 2)%Rt:=sqrt x:Rrt:=round beta (FLX_exp prec) (Znearest choice) (sqrt x):RHt:t = (sqrt mu * bpow e)%RHmu':mu = (1 + 2 * u_ro)%RHsqrtmu:(1 <= sqrt mu < 1 + u_ro)%RFbpowe:format (bpow e)rt = bpow ebeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPeps:(0 <= u_ro)%RPeps':(0 < u_ro)%RPb:(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%RPb':(0 <= sqrt (1 + 2 * u_ro) - 1)%RPx:(0 < x)%Rmu:Re:ZFmu:format muHmu:x = (mu * bpow (2 * e))%RHmuGe1:(1 <= mu)%RHmuLtsqradix:(mu < bpow 2)%Rt:=sqrt x:Rrt:=round beta (FLX_exp prec) (Znearest choice) (sqrt x):RHt:t = (sqrt mu * bpow e)%RHmu':mu = (1 + 2 * u_ro)%RHsqrtmu:(1 <= sqrt mu < 1 + u_ro)%RFbpowe:format (bpow e)Hrt:rt = bpow e(Rabs (rt - sqrt x) <= (1 - 1 / sqrt (1 + 2 * u_ro)) * Rabs (sqrt x))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPeps:(0 <= u_ro)%RPeps':(0 < u_ro)%RPb:(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%RPb':(0 <= sqrt (1 + 2 * u_ro) - 1)%RPx:(0 < x)%Rmu:Re:ZFmu:format muHmu:x = (mu * bpow (2 * e))%RHmuGe1:(1 <= mu)%RHmuLtsqradix:(mu < bpow 2)%Rt:=sqrt x:Rrt:=round beta (FLX_exp prec) (Znearest choice) (sqrt x):RHt:t = (sqrt mu * bpow e)%RHmu':mu = (1 + 2 * u_ro)%RHsqrtmu:(1 <= sqrt mu < 1 + u_ro)%RFbpowe:format (bpow e)rt = bpow ebeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPeps:(0 <= u_ro)%RPeps':(0 < u_ro)%RPb:(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%RPb':(0 <= sqrt (1 + 2 * u_ro) - 1)%RPx:(0 < x)%Rmu:Re:ZFmu:format muHmu:x = (mu * bpow (2 * e))%RHmuGe1:(1 <= mu)%RHmuLtsqradix:(mu < bpow 2)%Rt:=sqrt x:Rrt:=round beta (FLX_exp prec) (Znearest choice) (sqrt x):RHt:t = (sqrt mu * bpow e)%RHmu':mu = (1 + 2 * u_ro)%RHsqrtmu:(1 <= sqrt mu < 1 + u_ro)%RFbpowe:format (bpow e)(round beta (FLX_exp prec) (Znearest choice) (sqrt mu * bpow e) <= bpow e)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPeps:(0 <= u_ro)%RPeps':(0 < u_ro)%RPb:(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%RPb':(0 <= sqrt (1 + 2 * u_ro) - 1)%RPx:(0 < x)%Rmu:Re:ZFmu:format muHmu:x = (mu * bpow (2 * e))%RHmuGe1:(1 <= mu)%RHmuLtsqradix:(mu < bpow 2)%Rt:=sqrt x:Rrt:=round beta (FLX_exp prec) (Znearest choice) (sqrt x):RHt:t = (sqrt mu * bpow e)%RHmu':mu = (1 + 2 * u_ro)%RHsqrtmu:(1 <= sqrt mu < 1 + u_ro)%RFbpowe:format (bpow e)(bpow e <= round beta (FLX_exp prec) (Znearest choice) (sqrt mu * bpow e))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPeps:(0 <= u_ro)%RPeps':(0 < u_ro)%RPb:(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%RPb':(0 <= sqrt (1 + 2 * u_ro) - 1)%RPx:(0 < x)%Rmu:Re:ZFmu:format muHmu:x = (mu * bpow (2 * e))%RHmuGe1:(1 <= mu)%RHmuLtsqradix:(mu < bpow 2)%Rt:=sqrt x:Rrt:=round beta (FLX_exp prec) (Znearest choice) (sqrt x):RHt:t = (sqrt mu * bpow e)%RHmu':mu = (1 + 2 * u_ro)%RHsqrtmu:(1 <= sqrt mu < 1 + u_ro)%RFbpowe:format (bpow e)(round beta (FLX_exp prec) (Znearest choice) (sqrt mu * bpow e) <= bpow e)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPeps:(0 <= u_ro)%RPeps':(0 < u_ro)%RPb:(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%RPb':(0 <= sqrt (1 + 2 * u_ro) - 1)%RPx:(0 < x)%Rmu:Re:ZFmu:format muHmu:x = (mu * bpow (2 * e))%RHmuGe1:(1 <= mu)%RHmuLtsqradix:(mu < bpow 2)%Rt:=sqrt x:Rrt:=round beta (FLX_exp prec) (Znearest choice) (sqrt x):RHt:t = (sqrt mu * bpow e)%RHmu':mu = (1 + 2 * u_ro)%RHsqrtmu:(1 <= sqrt mu < 1 + u_ro)%RFbpowe:format (bpow e)(sqrt mu * bpow e < (bpow e + succ beta (FLX_exp prec) (bpow e)) / 2)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPeps:(0 <= u_ro)%RPeps':(0 < u_ro)%RPb:(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%RPb':(0 <= sqrt (1 + 2 * u_ro) - 1)%RPx:(0 < x)%Rmu:Re:ZFmu:format muHmu:x = (mu * bpow (2 * e))%RHmuGe1:(1 <= mu)%RHmuLtsqradix:(mu < bpow 2)%Rt:=sqrt x:Rrt:=round beta (FLX_exp prec) (Znearest choice) (sqrt x):RHt:t = (sqrt mu * bpow e)%RHmu':mu = (1 + 2 * u_ro)%RHsqrtmu:(1 <= sqrt mu < 1 + u_ro)%RFbpowe:format (bpow e)(sqrt mu * bpow e < (1 + u_ro) * bpow e)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPeps:(0 <= u_ro)%RPeps':(0 < u_ro)%RPb:(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%RPb':(0 <= sqrt (1 + 2 * u_ro) - 1)%RPx:(0 < x)%Rmu:Re:ZFmu:format muHmu:x = (mu * bpow (2 * e))%RHmuGe1:(1 <= mu)%RHmuLtsqradix:(mu < bpow 2)%Rt:=sqrt x:Rrt:=round beta (FLX_exp prec) (Znearest choice) (sqrt x):RHt:t = (sqrt mu * bpow e)%RHmu':mu = (1 + 2 * u_ro)%RHsqrtmu:(1 <= sqrt mu < 1 + u_ro)%RFbpowe:format (bpow e)((1 + u_ro) * bpow e <= (bpow e + succ beta (FLX_exp prec) (bpow e)) / 2)%Rnow apply Rmult_lt_compat_r; [apply bpow_gt_0|].beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPeps:(0 <= u_ro)%RPeps':(0 < u_ro)%RPb:(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%RPb':(0 <= sqrt (1 + 2 * u_ro) - 1)%RPx:(0 < x)%Rmu:Re:ZFmu:format muHmu:x = (mu * bpow (2 * e))%RHmuGe1:(1 <= mu)%RHmuLtsqradix:(mu < bpow 2)%Rt:=sqrt x:Rrt:=round beta (FLX_exp prec) (Znearest choice) (sqrt x):RHt:t = (sqrt mu * bpow e)%RHmu':mu = (1 + 2 * u_ro)%RHsqrtmu:(1 <= sqrt mu < 1 + u_ro)%RFbpowe:format (bpow e)(sqrt mu * bpow e < (1 + u_ro) * bpow e)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPeps:(0 <= u_ro)%RPeps':(0 < u_ro)%RPb:(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%RPb':(0 <= sqrt (1 + 2 * u_ro) - 1)%RPx:(0 < x)%Rmu:Re:ZFmu:format muHmu:x = (mu * bpow (2 * e))%RHmuGe1:(1 <= mu)%RHmuLtsqradix:(mu < bpow 2)%Rt:=sqrt x:Rrt:=round beta (FLX_exp prec) (Znearest choice) (sqrt x):RHt:t = (sqrt mu * bpow e)%RHmu':mu = (1 + 2 * u_ro)%RHsqrtmu:(1 <= sqrt mu < 1 + u_ro)%RFbpowe:format (bpow e)((1 + u_ro) * bpow e <= (bpow e + succ beta (FLX_exp prec) (bpow e)) / 2)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPeps:(0 <= u_ro)%RPeps':(0 < u_ro)%RPb:(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%RPb':(0 <= sqrt (1 + 2 * u_ro) - 1)%RPx:(0 < x)%Rmu:Re:ZFmu:format muHmu:x = (mu * bpow (2 * e))%RHmuGe1:(1 <= mu)%RHmuLtsqradix:(mu < bpow 2)%Rt:=sqrt x:Rrt:=round beta (FLX_exp prec) (Znearest choice) (sqrt x):RHt:t = (sqrt mu * bpow e)%RHmu':mu = (1 + 2 * u_ro)%RHsqrtmu:(1 <= sqrt mu < 1 + u_ro)%RFbpowe:format (bpow e)((1 + u_ro) * bpow e <= (bpow e + (bpow e + ulp beta (FLX_exp prec) (bpow e))) / 2)%Runfold Z.sub, u_ro; rewrite !bpow_plus; right; field.beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPeps:(0 <= u_ro)%RPeps':(0 < u_ro)%RPb:(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%RPb':(0 <= sqrt (1 + 2 * u_ro) - 1)%RPx:(0 < x)%Rmu:Re:ZFmu:format muHmu:x = (mu * bpow (2 * e))%RHmuGe1:(1 <= mu)%RHmuLtsqradix:(mu < bpow 2)%Rt:=sqrt x:Rrt:=round beta (FLX_exp prec) (Znearest choice) (sqrt x):RHt:t = (sqrt mu * bpow e)%RHmu':mu = (1 + 2 * u_ro)%RHsqrtmu:(1 <= sqrt mu < 1 + u_ro)%RFbpowe:format (bpow e)((1 + u_ro) * bpow e <= (bpow e + (bpow e + bpow (e + 1 - prec))) / 2)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPeps:(0 <= u_ro)%RPeps':(0 < u_ro)%RPb:(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%RPb':(0 <= sqrt (1 + 2 * u_ro) - 1)%RPx:(0 < x)%Rmu:Re:ZFmu:format muHmu:x = (mu * bpow (2 * e))%RHmuGe1:(1 <= mu)%RHmuLtsqradix:(mu < bpow 2)%Rt:=sqrt x:Rrt:=round beta (FLX_exp prec) (Znearest choice) (sqrt x):RHt:t = (sqrt mu * bpow e)%RHmu':mu = (1 + 2 * u_ro)%RHsqrtmu:(1 <= sqrt mu < 1 + u_ro)%RFbpowe:format (bpow e)(bpow e <= round beta (FLX_exp prec) (Znearest choice) (sqrt mu * bpow e))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPeps:(0 <= u_ro)%RPeps':(0 < u_ro)%RPb:(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%RPb':(0 <= sqrt (1 + 2 * u_ro) - 1)%RPx:(0 < x)%Rmu:Re:ZFmu:format muHmu:x = (mu * bpow (2 * e))%RHmuGe1:(1 <= mu)%RHmuLtsqradix:(mu < bpow 2)%Rt:=sqrt x:Rrt:=round beta (FLX_exp prec) (Znearest choice) (sqrt x):RHt:t = (sqrt mu * bpow e)%RHmu':mu = (1 + 2 * u_ro)%RHsqrtmu:(1 <= sqrt mu < 1 + u_ro)%RFbpowe:format (bpow e)(bpow e <= sqrt mu * bpow e)%Rnow apply Rmult_le_compat_r; [apply bpow_ge_0|].beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPeps:(0 <= u_ro)%RPeps':(0 < u_ro)%RPb:(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%RPb':(0 <= sqrt (1 + 2 * u_ro) - 1)%RPx:(0 < x)%Rmu:Re:ZFmu:format muHmu:x = (mu * bpow (2 * e))%RHmuGe1:(1 <= mu)%RHmuLtsqradix:(mu < bpow 2)%Rt:=sqrt x:Rrt:=round beta (FLX_exp prec) (Znearest choice) (sqrt x):RHt:t = (sqrt mu * bpow e)%RHmu':mu = (1 + 2 * u_ro)%RHsqrtmu:(1 <= sqrt mu < 1 + u_ro)%RFbpowe:format (bpow e)(1 * bpow e <= sqrt mu * bpow e)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPeps:(0 <= u_ro)%RPeps':(0 < u_ro)%RPb:(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%RPb':(0 <= sqrt (1 + 2 * u_ro) - 1)%RPx:(0 < x)%Rmu:Re:ZFmu:format muHmu:x = (mu * bpow (2 * e))%RHmuGe1:(1 <= mu)%RHmuLtsqradix:(mu < bpow 2)%Rt:=sqrt x:Rrt:=round beta (FLX_exp prec) (Znearest choice) (sqrt x):RHt:t = (sqrt mu * bpow e)%RHmu':mu = (1 + 2 * u_ro)%RHsqrtmu:(1 <= sqrt mu < 1 + u_ro)%RFbpowe:format (bpow e)Hrt:rt = bpow e(Rabs (rt - sqrt x) <= (1 - 1 / sqrt (1 + 2 * u_ro)) * Rabs (sqrt x))%Rrewrite Rabs_minus_sym; right; f_equal; field; lra.beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPeps:(0 <= u_ro)%RPeps':(0 < u_ro)%RPb:(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%RPb':(0 <= sqrt (1 + 2 * u_ro) - 1)%RPx:(0 < x)%Rmu:Re:ZFmu:format muHmu:x = (mu * bpow (2 * e))%RHmuGe1:(1 <= mu)%RHmuLtsqradix:(mu < bpow 2)%Rt:=sqrt x:Rrt:=round beta (FLX_exp prec) (Znearest choice) (sqrt x):RHt:t = (sqrt mu * bpow e)%RHmu':mu = (1 + 2 * u_ro)%RHsqrtmu:(1 <= sqrt mu < 1 + u_ro)%RFbpowe:format (bpow e)Hrt:rt = bpow e(Rabs (bpow e - sqrt (1 + 2 * u_ro) * bpow e) <= Rabs ((1 - 1 / sqrt (1 + 2 * u_ro)) * (sqrt (1 + 2 * u_ro) * bpow e)))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPeps:(0 <= u_ro)%RPeps':(0 < u_ro)%RPb:(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%RPb':(0 <= sqrt (1 + 2 * u_ro) - 1)%RPx:(0 < x)%Rmu:Re:ZFmu:format muHmu:x = (mu * bpow (2 * e))%RHmuGe1:(1 <= mu)%RHmuLtsqradix:(mu < bpow 2)%Rt:=sqrt x:Rrt:=round beta (FLX_exp prec) (Znearest choice) (sqrt x):RHt:t = (sqrt mu * bpow e)%RHmu':(1 + 4 * u_ro <= mu)%R(Rabs (rt - sqrt x) <= (1 - 1 / sqrt (1 + 2 * u_ro)) * Rabs (sqrt x))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPeps:(0 <= u_ro)%RPeps':(0 < u_ro)%RPb:(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%RPb':(0 <= sqrt (1 + 2 * u_ro) - 1)%RPx:(0 < x)%Rmu:Re:ZFmu:format muHmu:x = (mu * bpow (2 * e))%RHmuGe1:(1 <= mu)%RHmuLtsqradix:(mu < bpow 2)%Rt:=sqrt x:Rrt:=round beta (FLX_exp prec) (Znearest choice) (sqrt x):RHt:t = (sqrt mu * bpow e)%RHmu':(1 + 4 * u_ro <= mu)%R(1 + u_ro < sqrt mu)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPeps:(0 <= u_ro)%RPeps':(0 < u_ro)%RPb:(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%RPb':(0 <= sqrt (1 + 2 * u_ro) - 1)%RPx:(0 < x)%Rmu:Re:ZFmu:format muHmu:x = (mu * bpow (2 * e))%RHmuGe1:(1 <= mu)%RHmuLtsqradix:(mu < bpow 2)%Rt:=sqrt x:Rrt:=round beta (FLX_exp prec) (Znearest choice) (sqrt x):RHt:t = (sqrt mu * bpow e)%RHmu':(1 + 4 * u_ro <= mu)%RHsqrtmu:(1 + u_ro < sqrt mu)%R(Rabs (rt - sqrt x) <= (1 - 1 / sqrt (1 + 2 * u_ro)) * Rabs (sqrt x))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPeps:(0 <= u_ro)%RPeps':(0 < u_ro)%RPb:(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%RPb':(0 <= sqrt (1 + 2 * u_ro) - 1)%RPx:(0 < x)%Rmu:Re:ZFmu:format muHmu:x = (mu * bpow (2 * e))%RHmuGe1:(1 <= mu)%RHmuLtsqradix:(mu < bpow 2)%Rt:=sqrt x:Rrt:=round beta (FLX_exp prec) (Znearest choice) (sqrt x):RHt:t = (sqrt mu * bpow e)%RHmu':(1 + 4 * u_ro <= mu)%R(1 + u_ro < sqrt mu)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPeps:(0 <= u_ro)%RPeps':(0 < u_ro)%RPb:(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%RPb':(0 <= sqrt (1 + 2 * u_ro) - 1)%RPx:(0 < x)%Rmu:Re:ZFmu:format muHmu:x = (mu * bpow (2 * e))%RHmuGe1:(1 <= mu)%RHmuLtsqradix:(mu < bpow 2)%Rt:=sqrt x:Rrt:=round beta (FLX_exp prec) (Znearest choice) (sqrt x):RHt:t = (sqrt mu * bpow e)%RHmu':(1 + 4 * u_ro <= mu)%R(1 + u_ro < sqrt (1 + 4 * u_ro))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPeps:(0 <= u_ro)%RPeps':(0 < u_ro)%RPb:(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%RPb':(0 <= sqrt (1 + 2 * u_ro) - 1)%RPx:(0 < x)%Rmu:Re:ZFmu:format muHmu:x = (mu * bpow (2 * e))%RHmuGe1:(1 <= mu)%RHmuLtsqradix:(mu < bpow 2)%Rt:=sqrt x:Rrt:=round beta (FLX_exp prec) (Znearest choice) (sqrt x):RHt:t = (sqrt mu * bpow e)%RHmu':(1 + 4 * u_ro <= mu)%RP1peps:(0 <= 1 + u_ro)%R(1 + u_ro < sqrt (1 + 4 * u_ro))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPeps:(0 <= u_ro)%RPeps':(0 < u_ro)%RPb:(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%RPb':(0 <= sqrt (1 + 2 * u_ro) - 1)%RPx:(0 < x)%Rmu:Re:ZFmu:format muHmu:x = (mu * bpow (2 * e))%RHmuGe1:(1 <= mu)%RHmuLtsqradix:(mu < bpow 2)%Rt:=sqrt x:Rrt:=round beta (FLX_exp prec) (Znearest choice) (sqrt x):RHt:t = (sqrt mu * bpow e)%RHmu':(1 + 4 * u_ro <= mu)%RP1peps:(0 <= 1 + u_ro)%R(sqrt ((1 + u_ro) * (1 + u_ro)) < sqrt (1 + 4 * u_ro))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPeps:(0 <= u_ro)%RPeps':(0 < u_ro)%RPb:(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%RPb':(0 <= sqrt (1 + 2 * u_ro) - 1)%RPx:(0 < x)%Rmu:Re:ZFmu:format muHmu:x = (mu * bpow (2 * e))%RHmuGe1:(1 <= mu)%RHmuLtsqradix:(mu < bpow 2)%Rt:=sqrt x:Rrt:=round beta (FLX_exp prec) (Znearest choice) (sqrt x):RHt:t = (sqrt mu * bpow e)%RHmu':(1 + 4 * u_ro <= mu)%RP1peps:(0 <= 1 + u_ro)%R((1 + u_ro) * (1 + u_ro) < 1 + 4 * u_ro)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPeps:(0 <= u_ro)%RPeps':(0 < u_ro)%RPb:(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%RPb':(0 <= sqrt (1 + 2 * u_ro) - 1)%RPx:(0 < x)%Rmu:Re:ZFmu:format muHmu:x = (mu * bpow (2 * e))%RHmuGe1:(1 <= mu)%RHmuLtsqradix:(mu < bpow 2)%Rt:=sqrt x:Rrt:=round beta (FLX_exp prec) (Znearest choice) (sqrt x):RHt:t = (sqrt mu * bpow e)%RHmu':(1 + 4 * u_ro <= mu)%RP1peps:(0 <= 1 + u_ro)%R(u_ro * (u_ro * 1) < 2 * u_ro)%Rnow apply (Rlt_le_trans _ 1); [apply u_ro_lt_1|lra].beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPeps:(0 <= u_ro)%RPeps':(0 < u_ro)%RPb:(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%RPb':(0 <= sqrt (1 + 2 * u_ro) - 1)%RPx:(0 < x)%Rmu:Re:ZFmu:format muHmu:x = (mu * bpow (2 * e))%RHmuGe1:(1 <= mu)%RHmuLtsqradix:(mu < bpow 2)%Rt:=sqrt x:Rrt:=round beta (FLX_exp prec) (Znearest choice) (sqrt x):RHt:t = (sqrt mu * bpow e)%RHmu':(1 + 4 * u_ro <= mu)%RP1peps:(0 <= 1 + u_ro)%R(u_ro < 2)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPeps:(0 <= u_ro)%RPeps':(0 < u_ro)%RPb:(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%RPb':(0 <= sqrt (1 + 2 * u_ro) - 1)%RPx:(0 < x)%Rmu:Re:ZFmu:format muHmu:x = (mu * bpow (2 * e))%RHmuGe1:(1 <= mu)%RHmuLtsqradix:(mu < bpow 2)%Rt:=sqrt x:Rrt:=round beta (FLX_exp prec) (Znearest choice) (sqrt x):RHt:t = (sqrt mu * bpow e)%RHmu':(1 + 4 * u_ro <= mu)%RHsqrtmu:(1 + u_ro < sqrt mu)%R(Rabs (rt - sqrt x) <= (1 - 1 / sqrt (1 + 2 * u_ro)) * Rabs (sqrt x))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPeps:(0 <= u_ro)%RPeps':(0 < u_ro)%RPb:(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%RPb':(0 <= sqrt (1 + 2 * u_ro) - 1)%RPx:(0 < x)%Rmu:Re:ZFmu:format muHmu:x = (mu * bpow (2 * e))%RHmuGe1:(1 <= mu)%RHmuLtsqradix:(mu < bpow 2)%Rt:=sqrt x:Rrt:=round beta (FLX_exp prec) (Znearest choice) (sqrt x):RHt:t = (sqrt mu * bpow e)%RHmu':(1 + 4 * u_ro <= mu)%RHsqrtmu:(1 + u_ro < sqrt mu)%Rulp beta (FLX_exp prec) t = (2 * u_ro * bpow e)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPeps:(0 <= u_ro)%RPeps':(0 < u_ro)%RPb:(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%RPb':(0 <= sqrt (1 + 2 * u_ro) - 1)%RPx:(0 < x)%Rmu:Re:ZFmu:format muHmu:x = (mu * bpow (2 * e))%RHmuGe1:(1 <= mu)%RHmuLtsqradix:(mu < bpow 2)%Rt:=sqrt x:Rrt:=round beta (FLX_exp prec) (Znearest choice) (sqrt x):RHt:t = (sqrt mu * bpow e)%RHmu':(1 + 4 * u_ro <= mu)%RHsqrtmu:(1 + u_ro < sqrt mu)%RHulpt:ulp beta (FLX_exp prec) t = (2 * u_ro * bpow e)%R(Rabs (rt - sqrt x) <= (1 - 1 / sqrt (1 + 2 * u_ro)) * Rabs (sqrt x))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPeps:(0 <= u_ro)%RPeps':(0 < u_ro)%RPb:(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%RPb':(0 <= sqrt (1 + 2 * u_ro) - 1)%RPx:(0 < x)%Rmu:Re:ZFmu:format muHmu:x = (mu * bpow (2 * e))%RHmuGe1:(1 <= mu)%RHmuLtsqradix:(mu < bpow 2)%Rt:=sqrt x:Rrt:=round beta (FLX_exp prec) (Znearest choice) (sqrt x):RHt:t = (sqrt mu * bpow e)%RHmu':(1 + 4 * u_ro <= mu)%RHsqrtmu:(1 + u_ro < sqrt mu)%Rulp beta (FLX_exp prec) t = (2 * u_ro * bpow e)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPeps:(0 <= u_ro)%RPeps':(0 < u_ro)%RPb:(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%RPb':(0 <= sqrt (1 + 2 * u_ro) - 1)%RPx:(0 < x)%Rmu:Re:ZFmu:format muHmu:x = (mu * bpow (2 * e))%RHmuGe1:(1 <= mu)%RHmuLtsqradix:(mu < bpow 2)%Rt:=sqrt x:Rrt:=round beta (FLX_exp prec) (Znearest choice) (sqrt x):RHt:t = (sqrt mu * bpow e)%RHmu':(1 + 4 * u_ro <= mu)%RHsqrtmu:(1 + u_ro < sqrt mu)%Rbpow (cexp t) = (2 * u_ro * bpow e)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPeps:(0 <= u_ro)%RPeps':(0 < u_ro)%RPb:(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%RPb':(0 <= sqrt (1 + 2 * u_ro) - 1)%RPx:(0 < x)%Rmu:Re:ZFmu:format muHmu:x = (mu * bpow (2 * e))%RHmuGe1:(1 <= mu)%RHmuLtsqradix:(mu < bpow 2)%Rt:=sqrt x:Rrt:=round beta (FLX_exp prec) (Znearest choice) (sqrt x):RHt:t = (sqrt mu * bpow e)%RHmu':(1 + 4 * u_ro <= mu)%RHsqrtmu:(1 + u_ro < sqrt mu)%R(0 < t)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPeps:(0 <= u_ro)%RPeps':(0 < u_ro)%RPb:(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%RPb':(0 <= sqrt (1 + 2 * u_ro) - 1)%RPx:(0 < x)%Rmu:Re:ZFmu:format muHmu:x = (mu * bpow (2 * e))%RHmuGe1:(1 <= mu)%RHmuLtsqradix:(mu < bpow 2)%Rt:=sqrt x:Rrt:=round beta (FLX_exp prec) (Znearest choice) (sqrt x):RHt:t = (sqrt mu * bpow e)%RHmu':(1 + 4 * u_ro <= mu)%RHsqrtmu:(1 + u_ro < sqrt mu)%Rbpow (cexp t) = (2 * u_ro * bpow e)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPeps:(0 <= u_ro)%RPeps':(0 < u_ro)%RPb:(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%RPb':(0 <= sqrt (1 + 2 * u_ro) - 1)%RPx:(0 < x)%Rmu:Re:ZFmu:format muHmu:x = (mu * bpow (2 * e))%RHmuGe1:(1 <= mu)%RHmuLtsqradix:(mu < bpow 2)%Rt:=sqrt x:Rrt:=round beta (FLX_exp prec) (Znearest choice) (sqrt x):RHt:t = (sqrt mu * bpow e)%RHmu':(1 + 4 * u_ro <= mu)%RHsqrtmu:(1 + u_ro < sqrt mu)%Rbpow (cexp t) = bpow (- prec + 1 + e)beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPeps:(0 <= u_ro)%RPeps':(0 < u_ro)%RPb:(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%RPb':(0 <= sqrt (1 + 2 * u_ro) - 1)%RPx:(0 < x)%Rmu:Re:ZFmu:format muHmu:x = (mu * bpow (2 * e))%RHmuGe1:(1 <= mu)%RHmuLtsqradix:(mu < bpow 2)%Rt:=sqrt x:Rrt:=round beta (FLX_exp prec) (Znearest choice) (sqrt x):RHt:t = (sqrt mu * bpow e)%RHmu':(1 + 4 * u_ro <= mu)%RHsqrtmu:(1 + u_ro < sqrt mu)%R(mag beta t - prec)%Z = (- prec + 1 + e)%Zbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPeps:(0 <= u_ro)%RPeps':(0 < u_ro)%RPb:(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%RPb':(0 <= sqrt (1 + 2 * u_ro) - 1)%RPx:(0 < x)%Rmu:Re:ZFmu:format muHmu:x = (mu * bpow (2 * e))%RHmuGe1:(1 <= mu)%RHmuLtsqradix:(mu < bpow 2)%Rt:=sqrt x:Rrt:=round beta (FLX_exp prec) (Znearest choice) (sqrt x):RHt:t = (sqrt mu * bpow e)%RHmu':(1 + 4 * u_ro <= mu)%RHsqrtmu:(1 + u_ro < sqrt mu)%Rmag beta t = (1 + e)%Zbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPeps:(0 <= u_ro)%RPeps':(0 < u_ro)%RPb:(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%RPb':(0 <= sqrt (1 + 2 * u_ro) - 1)%RPx:(0 < x)%Rmu:Re:ZFmu:format muHmu:x = (mu * bpow (2 * e))%RHmuGe1:(1 <= mu)%RHmuLtsqradix:(mu < bpow 2)%Rt:=sqrt x:Rrt:=round beta (FLX_exp prec) (Znearest choice) (sqrt x):RHt:t = (sqrt mu * bpow e)%RHmu':(1 + 4 * u_ro <= mu)%RHsqrtmu:(1 + u_ro < sqrt mu)%RHmagt:mag beta t = (1 + e)%Z(mag beta t - prec)%Z = (- prec + 1 + e)%Zbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPeps:(0 <= u_ro)%RPeps':(0 < u_ro)%RPb:(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%RPb':(0 <= sqrt (1 + 2 * u_ro) - 1)%RPx:(0 < x)%Rmu:Re:ZFmu:format muHmu:x = (mu * bpow (2 * e))%RHmuGe1:(1 <= mu)%RHmuLtsqradix:(mu < bpow 2)%Rt:=sqrt x:Rrt:=round beta (FLX_exp prec) (Znearest choice) (sqrt x):RHt:t = (sqrt mu * bpow e)%RHmu':(1 + 4 * u_ro <= mu)%RHsqrtmu:(1 + u_ro < sqrt mu)%Rmag beta t = (1 + e)%Zbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPeps:(0 <= u_ro)%RPeps':(0 < u_ro)%RPb:(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%RPb':(0 <= sqrt (1 + 2 * u_ro) - 1)%RPx:(0 < x)%Rmu:Re:ZFmu:format muHmu:x = (mu * bpow (2 * e))%RHmuGe1:(1 <= mu)%RHmuLtsqradix:(mu < bpow 2)%Rt:=sqrt x:Rrt:=round beta (FLX_exp prec) (Znearest choice) (sqrt x):RHt:t = (sqrt mu * bpow e)%RHmu':(1 + 4 * u_ro <= mu)%RHsqrtmu:(1 + u_ro < sqrt mu)%R(bpow (1 + e - 1) <= Rabs t < bpow (1 + e))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPeps:(0 <= u_ro)%RPeps':(0 < u_ro)%RPb:(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%RPb':(0 <= sqrt (1 + 2 * u_ro) - 1)%RPx:(0 < x)%Rmu:Re:ZFmu:format muHmu:x = (mu * bpow (2 * e))%RHmuGe1:(1 <= mu)%RHmuLtsqradix:(mu < bpow 2)%Rt:=sqrt x:Rrt:=round beta (FLX_exp prec) (Znearest choice) (sqrt x):RHt:t = (sqrt mu * bpow e)%RHmu':(1 + 4 * u_ro <= mu)%RHsqrtmu:(1 + u_ro < sqrt mu)%R(bpow (1 + e - 1) <= sqrt x < bpow (1 + e))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPeps:(0 <= u_ro)%RPeps':(0 < u_ro)%RPb:(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%RPb':(0 <= sqrt (1 + 2 * u_ro) - 1)%RPx:(0 < x)%Rmu:Re:ZFmu:format muHmu:x = (mu * bpow (2 * e))%RHmuGe1:(1 <= mu)%RHmuLtsqradix:(mu < bpow 2)%Rt:=sqrt x:Rrt:=round beta (FLX_exp prec) (Znearest choice) (sqrt x):RHt:t = (sqrt mu * bpow e)%RHmu':(1 + 4 * u_ro <= mu)%RHsqrtmu:(1 + u_ro < sqrt mu)%R(bpow (1 + e - 1) <= t)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPeps:(0 <= u_ro)%RPeps':(0 < u_ro)%RPb:(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%RPb':(0 <= sqrt (1 + 2 * u_ro) - 1)%RPx:(0 < x)%Rmu:Re:ZFmu:format muHmu:x = (mu * bpow (2 * e))%RHmuGe1:(1 <= mu)%RHmuLtsqradix:(mu < bpow 2)%Rt:=sqrt x:Rrt:=round beta (FLX_exp prec) (Znearest choice) (sqrt x):RHt:t = (sqrt mu * bpow e)%RHmu':(1 + 4 * u_ro <= mu)%RHsqrtmu:(1 + u_ro < sqrt mu)%R(t < bpow (1 + e))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPeps:(0 <= u_ro)%RPeps':(0 < u_ro)%RPb:(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%RPb':(0 <= sqrt (1 + 2 * u_ro) - 1)%RPx:(0 < x)%Rmu:Re:ZFmu:format muHmu:x = (mu * bpow (2 * e))%RHmuGe1:(1 <= mu)%RHmuLtsqradix:(mu < bpow 2)%Rt:=sqrt x:Rrt:=round beta (FLX_exp prec) (Znearest choice) (sqrt x):RHt:t = (sqrt mu * bpow e)%RHmu':(1 + 4 * u_ro <= mu)%RHsqrtmu:(1 + u_ro < sqrt mu)%R(bpow (1 + e - 1) <= t)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPeps:(0 <= u_ro)%RPeps':(0 < u_ro)%RPb:(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%RPb':(0 <= sqrt (1 + 2 * u_ro) - 1)%RPx:(0 < x)%Rmu:Re:ZFmu:format muHmu:x = (mu * bpow (2 * e))%RHmuGe1:(1 <= mu)%RHmuLtsqradix:(mu < bpow 2)%Rt:=sqrt x:Rrt:=round beta (FLX_exp prec) (Znearest choice) (sqrt x):RHt:t = (sqrt mu * bpow e)%RHmu':(1 + 4 * u_ro <= mu)%RHsqrtmu:(1 + u_ro < sqrt mu)%R(bpow e <= sqrt mu * bpow e)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPeps:(0 <= u_ro)%RPeps':(0 < u_ro)%RPb:(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%RPb':(0 <= sqrt (1 + 2 * u_ro) - 1)%RPx:(0 < x)%Rmu:Re:ZFmu:format muHmu:x = (mu * bpow (2 * e))%RHmuGe1:(1 <= mu)%RHmuLtsqradix:(mu < bpow 2)%Rt:=sqrt x:Rrt:=round beta (FLX_exp prec) (Znearest choice) (sqrt x):RHt:t = (sqrt mu * bpow e)%RHmu':(1 + 4 * u_ro <= mu)%RHsqrtmu:(1 + u_ro < sqrt mu)%R(0 <= bpow e)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPeps:(0 <= u_ro)%RPeps':(0 < u_ro)%RPb:(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%RPb':(0 <= sqrt (1 + 2 * u_ro) - 1)%RPx:(0 < x)%Rmu:Re:ZFmu:format muHmu:x = (mu * bpow (2 * e))%RHmuGe1:(1 <= mu)%RHmuLtsqradix:(mu < bpow 2)%Rt:=sqrt x:Rrt:=round beta (FLX_exp prec) (Znearest choice) (sqrt x):RHt:t = (sqrt mu * bpow e)%RHmu':(1 + 4 * u_ro <= mu)%RHsqrtmu:(1 + u_ro < sqrt mu)%R(1 <= sqrt mu)%Rapply bpow_ge_0.beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPeps:(0 <= u_ro)%RPeps':(0 < u_ro)%RPb:(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%RPb':(0 <= sqrt (1 + 2 * u_ro) - 1)%RPx:(0 < x)%Rmu:Re:ZFmu:format muHmu:x = (mu * bpow (2 * e))%RHmuGe1:(1 <= mu)%RHmuLtsqradix:(mu < bpow 2)%Rt:=sqrt x:Rrt:=round beta (FLX_exp prec) (Znearest choice) (sqrt x):RHt:t = (sqrt mu * bpow e)%RHmu':(1 + 4 * u_ro <= mu)%RHsqrtmu:(1 + u_ro < sqrt mu)%R(0 <= bpow e)%Rnow rewrite <- sqrt_1; apply sqrt_le_1_alt.beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPeps:(0 <= u_ro)%RPeps':(0 < u_ro)%RPb:(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%RPb':(0 <= sqrt (1 + 2 * u_ro) - 1)%RPx:(0 < x)%Rmu:Re:ZFmu:format muHmu:x = (mu * bpow (2 * e))%RHmuGe1:(1 <= mu)%RHmuLtsqradix:(mu < bpow 2)%Rt:=sqrt x:Rrt:=round beta (FLX_exp prec) (Znearest choice) (sqrt x):RHt:t = (sqrt mu * bpow e)%RHmu':(1 + 4 * u_ro <= mu)%RHsqrtmu:(1 + u_ro < sqrt mu)%R(1 <= sqrt mu)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPeps:(0 <= u_ro)%RPeps':(0 < u_ro)%RPb:(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%RPb':(0 <= sqrt (1 + 2 * u_ro) - 1)%RPx:(0 < x)%Rmu:Re:ZFmu:format muHmu:x = (mu * bpow (2 * e))%RHmuGe1:(1 <= mu)%RHmuLtsqradix:(mu < bpow 2)%Rt:=sqrt x:Rrt:=round beta (FLX_exp prec) (Znearest choice) (sqrt x):RHt:t = (sqrt mu * bpow e)%RHmu':(1 + 4 * u_ro <= mu)%RHsqrtmu:(1 + u_ro < sqrt mu)%R(t < bpow (1 + e))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPeps:(0 <= u_ro)%RPeps':(0 < u_ro)%RPb:(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%RPb':(0 <= sqrt (1 + 2 * u_ro) - 1)%RPx:(0 < x)%Rmu:Re:ZFmu:format muHmu:x = (mu * bpow (2 * e))%RHmuGe1:(1 <= mu)%RHmuLtsqradix:(mu < bpow 2)%Rt:=sqrt x:Rrt:=round beta (FLX_exp prec) (Znearest choice) (sqrt x):RHt:t = (sqrt mu * bpow e)%RHmu':(1 + 4 * u_ro <= mu)%RHsqrtmu:(1 + u_ro < sqrt mu)%R(sqrt mu * bpow e < IZR beta * bpow e)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPeps:(0 <= u_ro)%RPeps':(0 < u_ro)%RPb:(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%RPb':(0 <= sqrt (1 + 2 * u_ro) - 1)%RPx:(0 < x)%Rmu:Re:ZFmu:format muHmu:x = (mu * bpow (2 * e))%RHmuGe1:(1 <= mu)%RHmuLtsqradix:(mu < bpow 2)%Rt:=sqrt x:Rrt:=round beta (FLX_exp prec) (Znearest choice) (sqrt x):RHt:t = (sqrt mu * bpow e)%RHmu':(1 + 4 * u_ro <= mu)%RHsqrtmu:(1 + u_ro < sqrt mu)%R(sqrt mu < IZR beta)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPeps:(0 <= u_ro)%RPeps':(0 < u_ro)%RPb:(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%RPb':(0 <= sqrt (1 + 2 * u_ro) - 1)%RPx:(0 < x)%Rmu:Re:ZFmu:format muHmu:x = (mu * bpow (2 * e))%RHmuGe1:(1 <= mu)%RHmuLtsqradix:(mu < bpow 2)%Rt:=sqrt x:Rrt:=round beta (FLX_exp prec) (Znearest choice) (sqrt x):RHt:t = (sqrt mu * bpow e)%RHmu':(1 + 4 * u_ro <= mu)%RHsqrtmu:(1 + u_ro < sqrt mu)%R(sqrt mu < sqrt (IZR beta * IZR beta))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPeps:(0 <= u_ro)%RPeps':(0 < u_ro)%RPb:(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%RPb':(0 <= sqrt (1 + 2 * u_ro) - 1)%RPx:(0 < x)%Rmu:Re:ZFmu:format muHmu:x = (mu * bpow (2 * e))%RHmuGe1:(1 <= mu)%RHmuLtsqradix:(mu < bpow 2)%Rt:=sqrt x:Rrt:=round beta (FLX_exp prec) (Znearest choice) (sqrt x):RHt:t = (sqrt mu * bpow e)%RHmu':(1 + 4 * u_ro <= mu)%RHsqrtmu:(1 + u_ro < sqrt mu)%R(0 <= IZR beta)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPeps:(0 <= u_ro)%RPeps':(0 < u_ro)%RPb:(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%RPb':(0 <= sqrt (1 + 2 * u_ro) - 1)%RPx:(0 < x)%Rmu:Re:ZFmu:format muHmu:x = (mu * bpow (2 * e))%RHmuGe1:(1 <= mu)%RHmuLtsqradix:(mu < bpow 2)%Rt:=sqrt x:Rrt:=round beta (FLX_exp prec) (Znearest choice) (sqrt x):RHt:t = (sqrt mu * bpow e)%RHmu':(1 + 4 * u_ro <= mu)%RHsqrtmu:(1 + u_ro < sqrt mu)%R(sqrt mu < sqrt (IZR beta * IZR beta))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPeps:(0 <= u_ro)%RPeps':(0 < u_ro)%RPb:(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%RPb':(0 <= sqrt (1 + 2 * u_ro) - 1)%RPx:(0 < x)%Rmu:Re:ZFmu:format muHmu:x = (mu * bpow (2 * e))%RHmuGe1:(1 <= mu)%RHmuLtsqradix:(mu < bpow 2)%Rt:=sqrt x:Rrt:=round beta (FLX_exp prec) (Znearest choice) (sqrt x):RHt:t = (sqrt mu * bpow e)%RHmu':(1 + 4 * u_ro <= mu)%RHsqrtmu:(1 + u_ro < sqrt mu)%R(mu < IZR beta * IZR beta)%Rnow unfold bpow, Z.pow_pos; simpl; rewrite Zmult_1_r, mult_IZR.beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPeps:(0 <= u_ro)%RPeps':(0 < u_ro)%RPb:(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%RPb':(0 <= sqrt (1 + 2 * u_ro) - 1)%RPx:(0 < x)%Rmu:Re:ZFmu:format muHmu:x = (mu * bpow (2 * e))%RHmuGe1:(1 <= mu)%RHmuLtsqradix:(mu < bpow 2)%Rt:=sqrt x:Rrt:=round beta (FLX_exp prec) (Znearest choice) (sqrt x):RHt:t = (sqrt mu * bpow e)%RHmu':(1 + 4 * u_ro <= mu)%RHsqrtmu:(1 + u_ro < sqrt mu)%Rbpow 2 = (IZR beta * IZR beta)%Rapply IZR_le, (Z.le_trans _ 2), Zle_bool_imp_le, radix_prop; omega.beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPeps:(0 <= u_ro)%RPeps':(0 < u_ro)%RPb:(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%RPb':(0 <= sqrt (1 + 2 * u_ro) - 1)%RPx:(0 < x)%Rmu:Re:ZFmu:format muHmu:x = (mu * bpow (2 * e))%RHmuGe1:(1 <= mu)%RHmuLtsqradix:(mu < bpow 2)%Rt:=sqrt x:Rrt:=round beta (FLX_exp prec) (Znearest choice) (sqrt x):RHt:t = (sqrt mu * bpow e)%RHmu':(1 + 4 * u_ro <= mu)%RHsqrtmu:(1 + u_ro < sqrt mu)%R(0 <= IZR beta)%Rrewrite Hmagt; ring.beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPeps:(0 <= u_ro)%RPeps':(0 < u_ro)%RPb:(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%RPb':(0 <= sqrt (1 + 2 * u_ro) - 1)%RPx:(0 < x)%Rmu:Re:ZFmu:format muHmu:x = (mu * bpow (2 * e))%RHmuGe1:(1 <= mu)%RHmuLtsqradix:(mu < bpow 2)%Rt:=sqrt x:Rrt:=round beta (FLX_exp prec) (Znearest choice) (sqrt x):RHt:t = (sqrt mu * bpow e)%RHmu':(1 + 4 * u_ro <= mu)%RHsqrtmu:(1 + u_ro < sqrt mu)%RHmagt:mag beta t = (1 + e)%Z(mag beta t - prec)%Z = (- prec + 1 + e)%Zbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPeps:(0 <= u_ro)%RPeps':(0 < u_ro)%RPb:(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%RPb':(0 <= sqrt (1 + 2 * u_ro) - 1)%RPx:(0 < x)%Rmu:Re:ZFmu:format muHmu:x = (mu * bpow (2 * e))%RHmuGe1:(1 <= mu)%RHmuLtsqradix:(mu < bpow 2)%Rt:=sqrt x:Rrt:=round beta (FLX_exp prec) (Znearest choice) (sqrt x):RHt:t = (sqrt mu * bpow e)%RHmu':(1 + 4 * u_ro <= mu)%RHsqrtmu:(1 + u_ro < sqrt mu)%R(0 < t)%Rnow apply (Rlt_le_trans _ 1); [lra|rewrite <- sqrt_1; apply sqrt_le_1_alt].beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPeps:(0 <= u_ro)%RPeps':(0 < u_ro)%RPb:(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%RPb':(0 <= sqrt (1 + 2 * u_ro) - 1)%RPx:(0 < x)%Rmu:Re:ZFmu:format muHmu:x = (mu * bpow (2 * e))%RHmuGe1:(1 <= mu)%RHmuLtsqradix:(mu < bpow 2)%Rt:=sqrt x:Rrt:=round beta (FLX_exp prec) (Znearest choice) (sqrt x):RHt:t = (sqrt mu * bpow e)%RHmu':(1 + 4 * u_ro <= mu)%RHsqrtmu:(1 + u_ro < sqrt mu)%R(0 < sqrt mu)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPeps:(0 <= u_ro)%RPeps':(0 < u_ro)%RPb:(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%RPb':(0 <= sqrt (1 + 2 * u_ro) - 1)%RPx:(0 < x)%Rmu:Re:ZFmu:format muHmu:x = (mu * bpow (2 * e))%RHmuGe1:(1 <= mu)%RHmuLtsqradix:(mu < bpow 2)%Rt:=sqrt x:Rrt:=round beta (FLX_exp prec) (Znearest choice) (sqrt x):RHt:t = (sqrt mu * bpow e)%RHmu':(1 + 4 * u_ro <= mu)%RHsqrtmu:(1 + u_ro < sqrt mu)%RHulpt:ulp beta (FLX_exp prec) t = (2 * u_ro * bpow e)%R(Rabs (rt - sqrt x) <= (1 - 1 / sqrt (1 + 2 * u_ro)) * Rabs (sqrt x))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPeps:(0 <= u_ro)%RPeps':(0 < u_ro)%RPb:(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%RPb':(0 <= sqrt (1 + 2 * u_ro) - 1)%RPx:(0 < x)%Rmu:Re:ZFmu:format muHmu:x = (mu * bpow (2 * e))%RHmuGe1:(1 <= mu)%RHmuLtsqradix:(mu < bpow 2)%Rt:=sqrt x:Rrt:=round beta (FLX_exp prec) (Znearest choice) (sqrt x):RHt:t = (sqrt mu * bpow e)%RHmu':(1 + 4 * u_ro <= mu)%RHsqrtmu:(1 + u_ro < sqrt mu)%RHulpt:ulp beta (FLX_exp prec) t = (2 * u_ro * bpow e)%R(0 < t)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPeps:(0 <= u_ro)%RPeps':(0 < u_ro)%RPb:(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%RPb':(0 <= sqrt (1 + 2 * u_ro) - 1)%RPx:(0 < x)%Rmu:Re:ZFmu:format muHmu:x = (mu * bpow (2 * e))%RHmuGe1:(1 <= mu)%RHmuLtsqradix:(mu < bpow 2)%Rt:=sqrt x:Rrt:=round beta (FLX_exp prec) (Znearest choice) (sqrt x):RHt:t = (sqrt mu * bpow e)%RHmu':(1 + 4 * u_ro <= mu)%RHsqrtmu:(1 + u_ro < sqrt mu)%RHulpt:ulp beta (FLX_exp prec) t = (2 * u_ro * bpow e)%RPt:(0 < t)%R(Rabs (rt - sqrt x) <= (1 - 1 / sqrt (1 + 2 * u_ro)) * Rabs (sqrt x))%Rrewrite Ht; apply Rmult_lt_0_compat; [lra|apply bpow_gt_0].beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPeps:(0 <= u_ro)%RPeps':(0 < u_ro)%RPb:(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%RPb':(0 <= sqrt (1 + 2 * u_ro) - 1)%RPx:(0 < x)%Rmu:Re:ZFmu:format muHmu:x = (mu * bpow (2 * e))%RHmuGe1:(1 <= mu)%RHmuLtsqradix:(mu < bpow 2)%Rt:=sqrt x:Rrt:=round beta (FLX_exp prec) (Znearest choice) (sqrt x):RHt:t = (sqrt mu * bpow e)%RHmu':(1 + 4 * u_ro <= mu)%RHsqrtmu:(1 + u_ro < sqrt mu)%RHulpt:ulp beta (FLX_exp prec) t = (2 * u_ro * bpow e)%R(0 < t)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPeps:(0 <= u_ro)%RPeps':(0 < u_ro)%RPb:(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%RPb':(0 <= sqrt (1 + 2 * u_ro) - 1)%RPx:(0 < x)%Rmu:Re:ZFmu:format muHmu:x = (mu * bpow (2 * e))%RHmuGe1:(1 <= mu)%RHmuLtsqradix:(mu < bpow 2)%Rt:=sqrt x:Rrt:=round beta (FLX_exp prec) (Znearest choice) (sqrt x):RHt:t = (sqrt mu * bpow e)%RHmu':(1 + 4 * u_ro <= mu)%RHsqrtmu:(1 + u_ro < sqrt mu)%RHulpt:ulp beta (FLX_exp prec) t = (2 * u_ro * bpow e)%RPt:(0 < t)%R(Rabs (rt - sqrt x) <= (1 - 1 / sqrt (1 + 2 * u_ro)) * Rabs (sqrt x))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPeps:(0 <= u_ro)%RPeps':(0 < u_ro)%RPb:(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%RPb':(0 <= sqrt (1 + 2 * u_ro) - 1)%RPx:(0 < x)%Rmu:Re:ZFmu:format muHmu:x = (mu * bpow (2 * e))%RHmuGe1:(1 <= mu)%RHmuLtsqradix:(mu < bpow 2)%Rt:=sqrt x:Rrt:=round beta (FLX_exp prec) (Znearest choice) (sqrt x):RHt:t = (sqrt mu * bpow e)%RHmu':(1 + 4 * u_ro <= mu)%RHsqrtmu:(1 + u_ro < sqrt mu)%RHulpt:ulp beta (FLX_exp prec) t = (2 * u_ro * bpow e)%RPt:(0 < t)%R(Rabs ((rt - sqrt x) / sqrt x) <= 1 - 1 / sqrt (1 + 2 * u_ro))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPeps:(0 <= u_ro)%RPeps':(0 < u_ro)%RPb:(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%RPb':(0 <= sqrt (1 + 2 * u_ro) - 1)%RPx:(0 < x)%Rmu:Re:ZFmu:format muHmu:x = (mu * bpow (2 * e))%RHmuGe1:(1 <= mu)%RHmuLtsqradix:(mu < bpow 2)%Rt:=sqrt x:Rrt:=round beta (FLX_exp prec) (Znearest choice) (sqrt x):RHt:t = (sqrt mu * bpow e)%RHmu':(1 + 4 * u_ro <= mu)%RHsqrtmu:(1 + u_ro < sqrt mu)%RHulpt:ulp beta (FLX_exp prec) t = (2 * u_ro * bpow e)%RPt:(0 < t)%RH:(Rabs ((rt - sqrt x) / sqrt x) <= 1 - 1 / sqrt (1 + 2 * u_ro))%R(Rabs (rt - sqrt x) <= (1 - 1 / sqrt (1 + 2 * u_ro)) * Rabs (sqrt x))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPeps:(0 <= u_ro)%RPeps':(0 < u_ro)%RPb:(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%RPb':(0 <= sqrt (1 + 2 * u_ro) - 1)%RPx:(0 < x)%Rmu:Re:ZFmu:format muHmu:x = (mu * bpow (2 * e))%RHmuGe1:(1 <= mu)%RHmuLtsqradix:(mu < bpow 2)%Rt:=sqrt x:Rrt:=round beta (FLX_exp prec) (Znearest choice) (sqrt x):RHt:t = (sqrt mu * bpow e)%RHmu':(1 + 4 * u_ro <= mu)%RHsqrtmu:(1 + u_ro < sqrt mu)%RHulpt:ulp beta (FLX_exp prec) t = (2 * u_ro * bpow e)%RPt:(0 < t)%R(Rabs ((rt - sqrt x) / sqrt x) <= 1 - 1 / sqrt (1 + 2 * u_ro))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPeps:(0 <= u_ro)%RPeps':(0 < u_ro)%RPb:(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%RPb':(0 <= sqrt (1 + 2 * u_ro) - 1)%RPx:(0 < x)%Rmu:Re:ZFmu:format muHmu:x = (mu * bpow (2 * e))%RHmuGe1:(1 <= mu)%RHmuLtsqradix:(mu < bpow 2)%Rt:=sqrt x:Rrt:=round beta (FLX_exp prec) (Znearest choice) (sqrt x):RHt:t = (sqrt mu * bpow e)%RHmu':(1 + 4 * u_ro <= mu)%RHsqrtmu:(1 + u_ro < sqrt mu)%RHulpt:ulp beta (FLX_exp prec) t = (2 * u_ro * bpow e)%RPt:(0 < t)%R(Rabs (rt - sqrt x) * / sqrt x <= 1 - 1 * / sqrt (1 + 2 * u_ro))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPeps:(0 <= u_ro)%RPeps':(0 < u_ro)%RPb:(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%RPb':(0 <= sqrt (1 + 2 * u_ro) - 1)%RPx:(0 < x)%Rmu:Re:ZFmu:format muHmu:x = (mu * bpow (2 * e))%RHmuGe1:(1 <= mu)%RHmuLtsqradix:(mu < bpow 2)%Rt:=sqrt x:Rrt:=round beta (FLX_exp prec) (Znearest choice) (sqrt x):RHt:t = (sqrt mu * bpow e)%RHmu':(1 + 4 * u_ro <= mu)%RHsqrtmu:(1 + u_ro < sqrt mu)%RHulpt:ulp beta (FLX_exp prec) t = (2 * u_ro * bpow e)%RPt:(0 < t)%R(Rabs (rt - sqrt x) * / sqrt x <= u_ro * bpow e / t)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPeps:(0 <= u_ro)%RPeps':(0 < u_ro)%RPb:(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%RPb':(0 <= sqrt (1 + 2 * u_ro) - 1)%RPx:(0 < x)%Rmu:Re:ZFmu:format muHmu:x = (mu * bpow (2 * e))%RHmuGe1:(1 <= mu)%RHmuLtsqradix:(mu < bpow 2)%Rt:=sqrt x:Rrt:=round beta (FLX_exp prec) (Znearest choice) (sqrt x):RHt:t = (sqrt mu * bpow e)%RHmu':(1 + 4 * u_ro <= mu)%RHsqrtmu:(1 + u_ro < sqrt mu)%RHulpt:ulp beta (FLX_exp prec) t = (2 * u_ro * bpow e)%RPt:(0 < t)%R(u_ro * bpow e / t <= 1 - 1 * / sqrt (1 + 2 * u_ro))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPeps:(0 <= u_ro)%RPeps':(0 < u_ro)%RPb:(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%RPb':(0 <= sqrt (1 + 2 * u_ro) - 1)%RPx:(0 < x)%Rmu:Re:ZFmu:format muHmu:x = (mu * bpow (2 * e))%RHmuGe1:(1 <= mu)%RHmuLtsqradix:(mu < bpow 2)%Rt:=sqrt x:Rrt:=round beta (FLX_exp prec) (Znearest choice) (sqrt x):RHt:t = (sqrt mu * bpow e)%RHmu':(1 + 4 * u_ro <= mu)%RHsqrtmu:(1 + u_ro < sqrt mu)%RHulpt:ulp beta (FLX_exp prec) t = (2 * u_ro * bpow e)%RPt:(0 < t)%R(Rabs (rt - sqrt x) * / sqrt x <= u_ro * bpow e / t)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPeps:(0 <= u_ro)%RPeps':(0 < u_ro)%RPb:(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%RPb':(0 <= sqrt (1 + 2 * u_ro) - 1)%RPx:(0 < x)%Rmu:Re:ZFmu:format muHmu:x = (mu * bpow (2 * e))%RHmuGe1:(1 <= mu)%RHmuLtsqradix:(mu < bpow 2)%Rt:=sqrt x:Rrt:=round beta (FLX_exp prec) (Znearest choice) (sqrt x):RHt:t = (sqrt mu * bpow e)%RHmu':(1 + 4 * u_ro <= mu)%RHsqrtmu:(1 + u_ro < sqrt mu)%RHulpt:ulp beta (FLX_exp prec) t = (2 * u_ro * bpow e)%RPt:(0 < t)%R(Rabs (rt - sqrt x) <= u_ro * bpow e)%Rfold t; rewrite Hulpt; right; field.beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPeps:(0 <= u_ro)%RPeps':(0 < u_ro)%RPb:(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%RPb':(0 <= sqrt (1 + 2 * u_ro) - 1)%RPx:(0 < x)%Rmu:Re:ZFmu:format muHmu:x = (mu * bpow (2 * e))%RHmuGe1:(1 <= mu)%RHmuLtsqradix:(mu < bpow 2)%Rt:=sqrt x:Rrt:=round beta (FLX_exp prec) (Znearest choice) (sqrt x):RHt:t = (sqrt mu * bpow e)%RHmu':(1 + 4 * u_ro <= mu)%RHsqrtmu:(1 + u_ro < sqrt mu)%RHulpt:ulp beta (FLX_exp prec) t = (2 * u_ro * bpow e)%RPt:(0 < t)%R(/ 2 * ulp beta (FLX_exp prec) (sqrt x) <= u_ro * bpow e)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPeps:(0 <= u_ro)%RPeps':(0 < u_ro)%RPb:(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%RPb':(0 <= sqrt (1 + 2 * u_ro) - 1)%RPx:(0 < x)%Rmu:Re:ZFmu:format muHmu:x = (mu * bpow (2 * e))%RHmuGe1:(1 <= mu)%RHmuLtsqradix:(mu < bpow 2)%Rt:=sqrt x:Rrt:=round beta (FLX_exp prec) (Znearest choice) (sqrt x):RHt:t = (sqrt mu * bpow e)%RHmu':(1 + 4 * u_ro <= mu)%RHsqrtmu:(1 + u_ro < sqrt mu)%RHulpt:ulp beta (FLX_exp prec) t = (2 * u_ro * bpow e)%RPt:(0 < t)%R(u_ro * bpow e / t <= 1 - 1 * / sqrt (1 + 2 * u_ro))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPeps:(0 <= u_ro)%RPeps':(0 < u_ro)%RPb:(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%RPb':(0 <= sqrt (1 + 2 * u_ro) - 1)%RPx:(0 < x)%Rmu:Re:ZFmu:format muHmu:x = (mu * bpow (2 * e))%RHmuGe1:(1 <= mu)%RHmuLtsqradix:(mu < bpow 2)%Rt:=sqrt x:Rrt:=round beta (FLX_exp prec) (Znearest choice) (sqrt x):RHt:t = (sqrt mu * bpow e)%RHmu':(1 + 4 * u_ro <= mu)%RHsqrtmu:(1 + u_ro < sqrt mu)%RHulpt:ulp beta (FLX_exp prec) t = (2 * u_ro * bpow e)%RPt:(0 < t)%R(u_ro * bpow e / t <= u_ro / sqrt (1 + 4 * u_ro))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPeps:(0 <= u_ro)%RPeps':(0 < u_ro)%RPb:(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%RPb':(0 <= sqrt (1 + 2 * u_ro) - 1)%RPx:(0 < x)%Rmu:Re:ZFmu:format muHmu:x = (mu * bpow (2 * e))%RHmuGe1:(1 <= mu)%RHmuLtsqradix:(mu < bpow 2)%Rt:=sqrt x:Rrt:=round beta (FLX_exp prec) (Znearest choice) (sqrt x):RHt:t = (sqrt mu * bpow e)%RHmu':(1 + 4 * u_ro <= mu)%RHsqrtmu:(1 + u_ro < sqrt mu)%RHulpt:ulp beta (FLX_exp prec) t = (2 * u_ro * bpow e)%RPt:(0 < t)%R(u_ro / sqrt (1 + 4 * u_ro) <= 1 - 1 * / sqrt (1 + 2 * u_ro))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPeps:(0 <= u_ro)%RPeps':(0 < u_ro)%RPb:(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%RPb':(0 <= sqrt (1 + 2 * u_ro) - 1)%RPx:(0 < x)%Rmu:Re:ZFmu:format muHmu:x = (mu * bpow (2 * e))%RHmuGe1:(1 <= mu)%RHmuLtsqradix:(mu < bpow 2)%Rt:=sqrt x:Rrt:=round beta (FLX_exp prec) (Znearest choice) (sqrt x):RHt:t = (sqrt mu * bpow e)%RHmu':(1 + 4 * u_ro <= mu)%RHsqrtmu:(1 + u_ro < sqrt mu)%RHulpt:ulp beta (FLX_exp prec) t = (2 * u_ro * bpow e)%RPt:(0 < t)%R(u_ro * bpow e / t <= u_ro / sqrt (1 + 4 * u_ro))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPeps:(0 <= u_ro)%RPeps':(0 < u_ro)%RPb:(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%RPb':(0 <= sqrt (1 + 2 * u_ro) - 1)%RPx:(0 < x)%Rmu:Re:ZFmu:format muHmu:x = (mu * bpow (2 * e))%RHmuGe1:(1 <= mu)%RHmuLtsqradix:(mu < bpow 2)%Rt:=sqrt x:Rrt:=round beta (FLX_exp prec) (Znearest choice) (sqrt x):RHt:t = (sqrt mu * bpow e)%RHmu':(1 + 4 * u_ro <= mu)%RHsqrtmu:(1 + u_ro < sqrt mu)%RHulpt:ulp beta (FLX_exp prec) t = (2 * u_ro * bpow e)%RPt:(0 < t)%R(u_ro * bpow e / t <= u_ro * bpow e / (sqrt (1 + 4 * u_ro) * bpow e))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPeps:(0 <= u_ro)%RPeps':(0 < u_ro)%RPb:(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%RPb':(0 <= sqrt (1 + 2 * u_ro) - 1)%RPx:(0 < x)%Rmu:Re:ZFmu:format muHmu:x = (mu * bpow (2 * e))%RHmuGe1:(1 <= mu)%RHmuLtsqradix:(mu < bpow 2)%Rt:=sqrt x:Rrt:=round beta (FLX_exp prec) (Znearest choice) (sqrt x):RHt:t = (sqrt mu * bpow e)%RHmu':(1 + 4 * u_ro <= mu)%RHsqrtmu:(1 + u_ro < sqrt mu)%RHulpt:ulp beta (FLX_exp prec) t = (2 * u_ro * bpow e)%RPt:(0 < t)%R(u_ro * bpow e / (sqrt (1 + 4 * u_ro) * bpow e) <= u_ro / sqrt (1 + 4 * u_ro))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPeps:(0 <= u_ro)%RPeps':(0 < u_ro)%RPb:(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%RPb':(0 <= sqrt (1 + 2 * u_ro) - 1)%RPx:(0 < x)%Rmu:Re:ZFmu:format muHmu:x = (mu * bpow (2 * e))%RHmuGe1:(1 <= mu)%RHmuLtsqradix:(mu < bpow 2)%Rt:=sqrt x:Rrt:=round beta (FLX_exp prec) (Znearest choice) (sqrt x):RHt:t = (sqrt mu * bpow e)%RHmu':(1 + 4 * u_ro <= mu)%RHsqrtmu:(1 + u_ro < sqrt mu)%RHulpt:ulp beta (FLX_exp prec) t = (2 * u_ro * bpow e)%RPt:(0 < t)%R(u_ro * bpow e / t <= u_ro * bpow e / (sqrt (1 + 4 * u_ro) * bpow e))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPeps:(0 <= u_ro)%RPeps':(0 < u_ro)%RPb:(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%RPb':(0 <= sqrt (1 + 2 * u_ro) - 1)%RPx:(0 < x)%Rmu:Re:ZFmu:format muHmu:x = (mu * bpow (2 * e))%RHmuGe1:(1 <= mu)%RHmuLtsqradix:(mu < bpow 2)%Rt:=sqrt x:Rrt:=round beta (FLX_exp prec) (Znearest choice) (sqrt x):RHt:t = (sqrt mu * bpow e)%RHmu':(1 + 4 * u_ro <= mu)%RHsqrtmu:(1 + u_ro < sqrt mu)%RHulpt:ulp beta (FLX_exp prec) t = (2 * u_ro * bpow e)%RPt:(0 < t)%R(/ t <= / (sqrt (1 + 4 * u_ro) * bpow e))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPeps:(0 <= u_ro)%RPeps':(0 < u_ro)%RPb:(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%RPb':(0 <= sqrt (1 + 2 * u_ro) - 1)%RPx:(0 < x)%Rmu:Re:ZFmu:format muHmu:x = (mu * bpow (2 * e))%RHmuGe1:(1 <= mu)%RHmuLtsqradix:(mu < bpow 2)%Rt:=sqrt x:Rrt:=round beta (FLX_exp prec) (Znearest choice) (sqrt x):RHt:t = (sqrt mu * bpow e)%RHmu':(1 + 4 * u_ro <= mu)%RHsqrtmu:(1 + u_ro < sqrt mu)%RHulpt:ulp beta (FLX_exp prec) t = (2 * u_ro * bpow e)%RPt:(0 < t)%R(0 < sqrt (1 + 4 * u_ro) * bpow e)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPeps:(0 <= u_ro)%RPeps':(0 < u_ro)%RPb:(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%RPb':(0 <= sqrt (1 + 2 * u_ro) - 1)%RPx:(0 < x)%Rmu:Re:ZFmu:format muHmu:x = (mu * bpow (2 * e))%RHmuGe1:(1 <= mu)%RHmuLtsqradix:(mu < bpow 2)%Rt:=sqrt x:Rrt:=round beta (FLX_exp prec) (Znearest choice) (sqrt x):RHt:t = (sqrt mu * bpow e)%RHmu':(1 + 4 * u_ro <= mu)%RHsqrtmu:(1 + u_ro < sqrt mu)%RHulpt:ulp beta (FLX_exp prec) t = (2 * u_ro * bpow e)%RPt:(0 < t)%R(sqrt (1 + 4 * u_ro) * bpow e <= t)%Rapply Rmult_lt_0_compat; [apply sqrt_lt_R0; lra|apply bpow_gt_0].beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPeps:(0 <= u_ro)%RPeps':(0 < u_ro)%RPb:(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%RPb':(0 <= sqrt (1 + 2 * u_ro) - 1)%RPx:(0 < x)%Rmu:Re:ZFmu:format muHmu:x = (mu * bpow (2 * e))%RHmuGe1:(1 <= mu)%RHmuLtsqradix:(mu < bpow 2)%Rt:=sqrt x:Rrt:=round beta (FLX_exp prec) (Znearest choice) (sqrt x):RHt:t = (sqrt mu * bpow e)%RHmu':(1 + 4 * u_ro <= mu)%RHsqrtmu:(1 + u_ro < sqrt mu)%RHulpt:ulp beta (FLX_exp prec) t = (2 * u_ro * bpow e)%RPt:(0 < t)%R(0 < sqrt (1 + 4 * u_ro) * bpow e)%Rnow rewrite Ht; apply Rmult_le_compat_r; [apply bpow_ge_0|apply sqrt_le_1_alt].beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPeps:(0 <= u_ro)%RPeps':(0 < u_ro)%RPb:(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%RPb':(0 <= sqrt (1 + 2 * u_ro) - 1)%RPx:(0 < x)%Rmu:Re:ZFmu:format muHmu:x = (mu * bpow (2 * e))%RHmuGe1:(1 <= mu)%RHmuLtsqradix:(mu < bpow 2)%Rt:=sqrt x:Rrt:=round beta (FLX_exp prec) (Znearest choice) (sqrt x):RHt:t = (sqrt mu * bpow e)%RHmu':(1 + 4 * u_ro <= mu)%RHsqrtmu:(1 + u_ro < sqrt mu)%RHulpt:ulp beta (FLX_exp prec) t = (2 * u_ro * bpow e)%RPt:(0 < t)%R(sqrt (1 + 4 * u_ro) * bpow e <= t)%Rright; field; split; apply Rgt_not_eq, Rlt_gt; [apply sqrt_lt_R0; lra|apply bpow_gt_0].beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPeps:(0 <= u_ro)%RPeps':(0 < u_ro)%RPb:(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%RPb':(0 <= sqrt (1 + 2 * u_ro) - 1)%RPx:(0 < x)%Rmu:Re:ZFmu:format muHmu:x = (mu * bpow (2 * e))%RHmuGe1:(1 <= mu)%RHmuLtsqradix:(mu < bpow 2)%Rt:=sqrt x:Rrt:=round beta (FLX_exp prec) (Znearest choice) (sqrt x):RHt:t = (sqrt mu * bpow e)%RHmu':(1 + 4 * u_ro <= mu)%RHsqrtmu:(1 + u_ro < sqrt mu)%RHulpt:ulp beta (FLX_exp prec) t = (2 * u_ro * bpow e)%RPt:(0 < t)%R(u_ro * bpow e / (sqrt (1 + 4 * u_ro) * bpow e) <= u_ro / sqrt (1 + 4 * u_ro))%Rapply sqrt_error_N_FLX_aux3.beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPeps:(0 <= u_ro)%RPeps':(0 < u_ro)%RPb:(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%RPb':(0 <= sqrt (1 + 2 * u_ro) - 1)%RPx:(0 < x)%Rmu:Re:ZFmu:format muHmu:x = (mu * bpow (2 * e))%RHmuGe1:(1 <= mu)%RHmuLtsqradix:(mu < bpow 2)%Rt:=sqrt x:Rrt:=round beta (FLX_exp prec) (Znearest choice) (sqrt x):RHt:t = (sqrt mu * bpow e)%RHmu':(1 + 4 * u_ro <= mu)%RHsqrtmu:(1 + u_ro < sqrt mu)%RHulpt:ulp beta (FLX_exp prec) t = (2 * u_ro * bpow e)%RPt:(0 < t)%R(u_ro / sqrt (1 + 4 * u_ro) <= 1 - 1 * / sqrt (1 + 2 * u_ro))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPeps:(0 <= u_ro)%RPeps':(0 < u_ro)%RPb:(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%RPb':(0 <= sqrt (1 + 2 * u_ro) - 1)%RPx:(0 < x)%Rmu:Re:ZFmu:format muHmu:x = (mu * bpow (2 * e))%RHmuGe1:(1 <= mu)%RHmuLtsqradix:(mu < bpow 2)%Rt:=sqrt x:Rrt:=round beta (FLX_exp prec) (Znearest choice) (sqrt x):RHt:t = (sqrt mu * bpow e)%RHmu':(1 + 4 * u_ro <= mu)%RHsqrtmu:(1 + u_ro < sqrt mu)%RHulpt:ulp beta (FLX_exp prec) t = (2 * u_ro * bpow e)%RPt:(0 < t)%RH:(Rabs ((rt - sqrt x) / sqrt x) <= 1 - 1 / sqrt (1 + 2 * u_ro))%R(Rabs (rt - sqrt x) <= (1 - 1 / sqrt (1 + 2 * u_ro)) * Rabs (sqrt x))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPeps:(0 <= u_ro)%RPeps':(0 < u_ro)%RPb:(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%RPb':(0 <= sqrt (1 + 2 * u_ro) - 1)%RPx:(0 < x)%Rmu:Re:ZFmu:format muHmu:x = (mu * bpow (2 * e))%RHmuGe1:(1 <= mu)%RHmuLtsqradix:(mu < bpow 2)%Rt:=sqrt x:Rrt:=round beta (FLX_exp prec) (Znearest choice) (sqrt x):RHt:t = (sqrt mu * bpow e)%RHmu':(1 + 4 * u_ro <= mu)%RHsqrtmu:(1 + u_ro < sqrt mu)%RHulpt:ulp beta (FLX_exp prec) t = (2 * u_ro * bpow e)%RPt:(0 < t)%RH:(Rabs (rt - sqrt x) * / Rabs (sqrt x) <= 1 - 1 * / sqrt (1 + 2 * u_ro))%R(Rabs (rt - sqrt x) <= (1 - 1 * / sqrt (1 + 2 * u_ro)) * Rabs (sqrt x))%Rapply (Rle_trans _ _ _ H); right; field; split; [apply Rabs_no_R0;fold t|]; lra. Qed.beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xPeps:(0 <= u_ro)%RPeps':(0 < u_ro)%RPb:(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%RPb':(0 <= sqrt (1 + 2 * u_ro) - 1)%RPx:(0 < x)%Rmu:Re:ZFmu:format muHmu:x = (mu * bpow (2 * e))%RHmuGe1:(1 <= mu)%RHmuLtsqradix:(mu < bpow 2)%Rt:=sqrt x:Rrt:=round beta (FLX_exp prec) (Znearest choice) (sqrt x):RHt:t = (sqrt mu * bpow e)%RHmu':(1 + 4 * u_ro <= mu)%RHsqrtmu:(1 + u_ro < sqrt mu)%RHulpt:ulp beta (FLX_exp prec) t = (2 * u_ro * bpow e)%RPt:(0 < t)%RH:(Rabs (rt - sqrt x) * / Rabs (sqrt x) <= 1 - 1 * / sqrt (1 + 2 * u_ro))%R(Rabs (rt - sqrt x) * / Rabs (sqrt x) <= (1 - 1 * / sqrt (1 + 2 * u_ro)) * Rabs (sqrt x) * / Rabs (sqrt x))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xexists eps : R, (Rabs eps <= 1 - 1 / sqrt (1 + 2 * u_ro))%R /\ round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%Rnow apply relative_error_le_conversion; [apply valid_rnd_N|apply om1ds1p2u_ro_pos|apply sqrt_error_N_FLX]. Qed.beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx:RFx:format xexists eps : R, (Rabs eps <= 1 - 1 / sqrt (1 + 2 * u_ro))%R /\ round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zforall x rx : R, (exists eps : R, (Rabs eps <= 1 - 1 / sqrt (1 + 2 * u_ro))%R /\ rx = (x * (1 + eps))%R) -> exists eps : R, (Rabs eps <= sqrt (1 + 2 * u_ro) - 1)%R /\ x = (rx * (1 + eps))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zforall x rx : R, (exists eps : R, (Rabs eps <= 1 - 1 / sqrt (1 + 2 * u_ro))%R /\ rx = (x * (1 + eps))%R) -> exists eps : R, (Rabs eps <= sqrt (1 + 2 * u_ro) - 1)%R /\ x = (rx * (1 + eps))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx, rx, d:RBd:(Rabs d <= 1 - 1 / sqrt (1 + 2 * u_ro))%RHd:rx = (x * (1 + d))%Rexists eps : R, (Rabs eps <= sqrt (1 + 2 * u_ro) - 1)%R /\ x = (rx * (1 + eps))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx, rx, d:RBd:(Rabs d <= 1 - 1 / sqrt (1 + 2 * u_ro))%RHd:rx = (x * (1 + d))%RH:(- (1 - 1 / sqrt (1 + 2 * u_ro)) <= d <= 1 - 1 / sqrt (1 + 2 * u_ro))%Rexists eps : R, (Rabs eps <= sqrt (1 + 2 * u_ro) - 1)%R /\ x = (rx * (1 + eps))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx, rx, d:RBd:(Rabs d <= 1 - 1 / sqrt (1 + 2 * u_ro))%RHd:rx = (x * (1 + d))%RH:(- (1 - 1 / sqrt (1 + 2 * u_ro)) <= d <= 1 - 1 / sqrt (1 + 2 * u_ro))%RH':(1 - 1 / sqrt (1 + 2 * u_ro) <= u_ro / (1 + u_ro))%Rexists eps : R, (Rabs eps <= sqrt (1 + 2 * u_ro) - 1)%R /\ x = (rx * (1 + eps))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx, rx, d:RBd:(Rabs d <= 1 - 1 / sqrt (1 + 2 * u_ro))%RHd:rx = (x * (1 + d))%RH:(- (1 - 1 / sqrt (1 + 2 * u_ro)) <= d <= 1 - 1 / sqrt (1 + 2 * u_ro))%RH':(1 - 1 / sqrt (1 + 2 * u_ro) <= u_ro / (1 + u_ro))%RH'':(u_ro / (1 + u_ro) <= u_ro)%Rexists eps : R, (Rabs eps <= sqrt (1 + 2 * u_ro) - 1)%R /\ x = (rx * (1 + eps))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx, rx, d:RBd:(Rabs d <= 1 - 1 / sqrt (1 + 2 * u_ro))%RHd:rx = (x * (1 + d))%RH:(- (1 - 1 / sqrt (1 + 2 * u_ro)) <= d <= 1 - 1 / sqrt (1 + 2 * u_ro))%RH':(1 - 1 / sqrt (1 + 2 * u_ro) <= u_ro / (1 + u_ro))%RH'':(u_ro / (1 + u_ro) <= u_ro)%RH''':(u_ro < 1)%Rexists eps : R, (Rabs eps <= sqrt (1 + 2 * u_ro) - 1)%R /\ x = (rx * (1 + eps))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx, rx, d:RBd:(Rabs d <= 1 - 1 / sqrt (1 + 2 * u_ro))%RHd:rx = (x * (1 + d))%RH:(- (1 - 1 / sqrt (1 + 2 * u_ro)) <= d <= 1 - 1 / sqrt (1 + 2 * u_ro))%RH':(1 - 1 / sqrt (1 + 2 * u_ro) <= u_ro / (1 + u_ro))%RH'':(u_ro / (1 + u_ro) <= u_ro)%RH''':(u_ro < 1)%RHpos:(0 <= sqrt (1 + 2 * u_ro) - 1)%Rexists eps : R, (Rabs eps <= sqrt (1 + 2 * u_ro) - 1)%R /\ x = (rx * (1 + eps))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx, rx, d:RBd:(Rabs d <= 1 - 1 / sqrt (1 + 2 * u_ro))%RHd:rx = (x * (1 + d))%RH:(- (1 - 1 / sqrt (1 + 2 * u_ro)) <= d <= 1 - 1 / sqrt (1 + 2 * u_ro))%RH':(1 - 1 / sqrt (1 + 2 * u_ro) <= u_ro / (1 + u_ro))%RH'':(u_ro / (1 + u_ro) <= u_ro)%RH''':(u_ro < 1)%RHpos:(0 <= sqrt (1 + 2 * u_ro) - 1)%RZfx:rx = 0%Rexists eps : R, (Rabs eps <= sqrt (1 + 2 * u_ro) - 1)%R /\ x = (rx * (1 + eps))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx, rx, d:RBd:(Rabs d <= 1 - 1 / sqrt (1 + 2 * u_ro))%RHd:rx = (x * (1 + d))%RH:(- (1 - 1 / sqrt (1 + 2 * u_ro)) <= d <= 1 - 1 / sqrt (1 + 2 * u_ro))%RH':(1 - 1 / sqrt (1 + 2 * u_ro) <= u_ro / (1 + u_ro))%RH'':(u_ro / (1 + u_ro) <= u_ro)%RH''':(u_ro < 1)%RHpos:(0 <= sqrt (1 + 2 * u_ro) - 1)%RNzfx:rx <> 0%Rexists eps : R, (Rabs eps <= sqrt (1 + 2 * u_ro) - 1)%R /\ x = (rx * (1 + eps))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx, rx, d:RBd:(Rabs d <= 1 - 1 / sqrt (1 + 2 * u_ro))%RHd:rx = (x * (1 + d))%RH:(- (1 - 1 / sqrt (1 + 2 * u_ro)) <= d <= 1 - 1 / sqrt (1 + 2 * u_ro))%RH':(1 - 1 / sqrt (1 + 2 * u_ro) <= u_ro / (1 + u_ro))%RH'':(u_ro / (1 + u_ro) <= u_ro)%RH''':(u_ro < 1)%RHpos:(0 <= sqrt (1 + 2 * u_ro) - 1)%RZfx:rx = 0%Rexists eps : R, (Rabs eps <= sqrt (1 + 2 * u_ro) - 1)%R /\ x = (rx * (1 + eps))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx, rx, d:RBd:(Rabs d <= 1 - 1 / sqrt (1 + 2 * u_ro))%RHd:rx = (x * (1 + d))%RH:(- (1 - 1 / sqrt (1 + 2 * u_ro)) <= d <= 1 - 1 / sqrt (1 + 2 * u_ro))%RH':(1 - 1 / sqrt (1 + 2 * u_ro) <= u_ro / (1 + u_ro))%RH'':(u_ro / (1 + u_ro) <= u_ro)%RH''':(u_ro < 1)%RHpos:(0 <= sqrt (1 + 2 * u_ro) - 1)%RZfx:rx = 0%Rx = (rx * (1 + 0))%Rdestruct (Rmult_integral _ _ (sym_eq Hd)); lra.beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx, rx, d:RBd:(Rabs d <= 1 - 1 / sqrt (1 + 2 * u_ro))%RHd:0%R = (x * (1 + d))%RH:(- (1 - 1 / sqrt (1 + 2 * u_ro)) <= d <= 1 - 1 / sqrt (1 + 2 * u_ro))%RH':(1 - 1 / sqrt (1 + 2 * u_ro) <= u_ro / (1 + u_ro))%RH'':(u_ro / (1 + u_ro) <= u_ro)%RH''':(u_ro < 1)%RHpos:(0 <= sqrt (1 + 2 * u_ro) - 1)%RZfx:rx = 0%Rx = 0%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx, rx, d:RBd:(Rabs d <= 1 - 1 / sqrt (1 + 2 * u_ro))%RHd:rx = (x * (1 + d))%RH:(- (1 - 1 / sqrt (1 + 2 * u_ro)) <= d <= 1 - 1 / sqrt (1 + 2 * u_ro))%RH':(1 - 1 / sqrt (1 + 2 * u_ro) <= u_ro / (1 + u_ro))%RH'':(u_ro / (1 + u_ro) <= u_ro)%RH''':(u_ro < 1)%RHpos:(0 <= sqrt (1 + 2 * u_ro) - 1)%RNzfx:rx <> 0%Rexists eps : R, (Rabs eps <= sqrt (1 + 2 * u_ro) - 1)%R /\ x = (rx * (1 + eps))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx, rx, d:RBd:(Rabs d <= 1 - 1 / sqrt (1 + 2 * u_ro))%RHd:rx = (x * (1 + d))%RH:(- (1 - 1 / sqrt (1 + 2 * u_ro)) <= d <= 1 - 1 / sqrt (1 + 2 * u_ro))%RH':(1 - 1 / sqrt (1 + 2 * u_ro) <= u_ro / (1 + u_ro))%RH'':(u_ro / (1 + u_ro) <= u_ro)%RH''':(u_ro < 1)%RHpos:(0 <= sqrt (1 + 2 * u_ro) - 1)%RNzfx:rx <> 0%RZx:x = 0%Rexists eps : R, (Rabs eps <= sqrt (1 + 2 * u_ro) - 1)%R /\ x = (rx * (1 + eps))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx, rx, d:RBd:(Rabs d <= 1 - 1 / sqrt (1 + 2 * u_ro))%RHd:rx = (x * (1 + d))%RH:(- (1 - 1 / sqrt (1 + 2 * u_ro)) <= d <= 1 - 1 / sqrt (1 + 2 * u_ro))%RH':(1 - 1 / sqrt (1 + 2 * u_ro) <= u_ro / (1 + u_ro))%RH'':(u_ro / (1 + u_ro) <= u_ro)%RH''':(u_ro < 1)%RHpos:(0 <= sqrt (1 + 2 * u_ro) - 1)%RNzfx:rx <> 0%RNzx:x <> 0%Rexists eps : R, (Rabs eps <= sqrt (1 + 2 * u_ro) - 1)%R /\ x = (rx * (1 + eps))%Rnow exfalso; revert Hd; rewrite Zx; rewrite Rmult_0_l.beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx, rx, d:RBd:(Rabs d <= 1 - 1 / sqrt (1 + 2 * u_ro))%RHd:rx = (x * (1 + d))%RH:(- (1 - 1 / sqrt (1 + 2 * u_ro)) <= d <= 1 - 1 / sqrt (1 + 2 * u_ro))%RH':(1 - 1 / sqrt (1 + 2 * u_ro) <= u_ro / (1 + u_ro))%RH'':(u_ro / (1 + u_ro) <= u_ro)%RH''':(u_ro < 1)%RHpos:(0 <= sqrt (1 + 2 * u_ro) - 1)%RNzfx:rx <> 0%RZx:x = 0%Rexists eps : R, (Rabs eps <= sqrt (1 + 2 * u_ro) - 1)%R /\ x = (rx * (1 + eps))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx, rx, d:RBd:(Rabs d <= 1 - 1 / sqrt (1 + 2 * u_ro))%RHd:rx = (x * (1 + d))%RH:(- (1 - 1 / sqrt (1 + 2 * u_ro)) <= d <= 1 - 1 / sqrt (1 + 2 * u_ro))%RH':(1 - 1 / sqrt (1 + 2 * u_ro) <= u_ro / (1 + u_ro))%RH'':(u_ro / (1 + u_ro) <= u_ro)%RH''':(u_ro < 1)%RHpos:(0 <= sqrt (1 + 2 * u_ro) - 1)%RNzfx:rx <> 0%RNzx:x <> 0%Rexists eps : R, (Rabs eps <= sqrt (1 + 2 * u_ro) - 1)%R /\ x = (rx * (1 + eps))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx, rx, d:RBd:(Rabs d <= 1 - 1 / sqrt (1 + 2 * u_ro))%RHd:rx = (x * (1 + d))%RH:(- (1 - 1 / sqrt (1 + 2 * u_ro)) <= d <= 1 - 1 / sqrt (1 + 2 * u_ro))%RH':(1 - 1 / sqrt (1 + 2 * u_ro) <= u_ro / (1 + u_ro))%RH'':(u_ro / (1 + u_ro) <= u_ro)%RH''':(u_ro < 1)%RHpos:(0 <= sqrt (1 + 2 * u_ro) - 1)%RNzfx:rx <> 0%RNzx:x <> 0%Rd':=((x - rx) / rx)%R:Rexists eps : R, (Rabs eps <= sqrt (1 + 2 * u_ro) - 1)%R /\ x = (rx * (1 + eps))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx, rx, d:RBd:(Rabs d <= 1 - 1 / sqrt (1 + 2 * u_ro))%RHd:rx = (x * (1 + d))%RH:(- (1 - 1 / sqrt (1 + 2 * u_ro)) <= d <= 1 - 1 / sqrt (1 + 2 * u_ro))%RH':(1 - 1 / sqrt (1 + 2 * u_ro) <= u_ro / (1 + u_ro))%RH'':(u_ro / (1 + u_ro) <= u_ro)%RH''':(u_ro < 1)%RHpos:(0 <= sqrt (1 + 2 * u_ro) - 1)%RNzfx:rx <> 0%RNzx:x <> 0%Rd':=((x - rx) / rx)%R:R(Rabs d' <= sqrt (1 + 2 * u_ro) - 1)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx, rx, d:RBd:(Rabs d <= 1 - 1 / sqrt (1 + 2 * u_ro))%RHd:rx = (x * (1 + d))%RH:(- (1 - 1 / sqrt (1 + 2 * u_ro)) <= d <= 1 - 1 / sqrt (1 + 2 * u_ro))%RH':(1 - 1 / sqrt (1 + 2 * u_ro) <= u_ro / (1 + u_ro))%RH'':(u_ro / (1 + u_ro) <= u_ro)%RH''':(u_ro < 1)%RHpos:(0 <= sqrt (1 + 2 * u_ro) - 1)%RNzfx:rx <> 0%RNzx:x <> 0%Rd':=((x - rx) / rx)%R:RHd':(Rabs d' <= sqrt (1 + 2 * u_ro) - 1)%Rexists eps : R, (Rabs eps <= sqrt (1 + 2 * u_ro) - 1)%R /\ x = (rx * (1 + eps))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx, rx, d:RBd:(Rabs d <= 1 - 1 / sqrt (1 + 2 * u_ro))%RHd:rx = (x * (1 + d))%RH:(- (1 - 1 / sqrt (1 + 2 * u_ro)) <= d <= 1 - 1 / sqrt (1 + 2 * u_ro))%RH':(1 - 1 / sqrt (1 + 2 * u_ro) <= u_ro / (1 + u_ro))%RH'':(u_ro / (1 + u_ro) <= u_ro)%RH''':(u_ro < 1)%RHpos:(0 <= sqrt (1 + 2 * u_ro) - 1)%RNzfx:rx <> 0%RNzx:x <> 0%Rd':=((x - rx) / rx)%R:R(Rabs d' <= sqrt (1 + 2 * u_ro) - 1)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx, rx, d:RBd:(Rabs d <= 1 - 1 / sqrt (1 + 2 * u_ro))%RHd:rx = (x * (1 + d))%RH:(- (1 - 1 / sqrt (1 + 2 * u_ro)) <= d <= 1 - 1 / sqrt (1 + 2 * u_ro))%RH':(1 - 1 / sqrt (1 + 2 * u_ro) <= u_ro / (1 + u_ro))%RH'':(u_ro / (1 + u_ro) <= u_ro)%RH''':(u_ro < 1)%RHpos:(0 <= sqrt (1 + 2 * u_ro) - 1)%RNzfx:rx <> 0%RNzx:x <> 0%Rd':=((x - rx) / rx)%R:R(Rabs ((x - x * (1 + d)) / (x * (1 + d))) <= sqrt (1 + 2 * u_ro) - 1)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx, rx, d:RBd:(Rabs d <= 1 - 1 / sqrt (1 + 2 * u_ro))%RHd:rx = (x * (1 + d))%RH:(- (1 - 1 / sqrt (1 + 2 * u_ro)) <= d <= 1 - 1 / sqrt (1 + 2 * u_ro))%RH':(1 - 1 / sqrt (1 + 2 * u_ro) <= u_ro / (1 + u_ro))%RH'':(u_ro / (1 + u_ro) <= u_ro)%RH''':(u_ro < 1)%RHpos:(0 <= sqrt (1 + 2 * u_ro) - 1)%RNzfx:rx <> 0%RNzx:x <> 0%Rd':=((x - rx) / rx)%R:R(Rabs (- d / (1 + d)) <= sqrt (1 + 2 * u_ro) - 1)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx, rx, d:RBd:(Rabs d <= 1 - 1 / sqrt (1 + 2 * u_ro))%RHd:rx = (x * (1 + d))%RH:(- (1 - 1 / sqrt (1 + 2 * u_ro)) <= d <= 1 - 1 / sqrt (1 + 2 * u_ro))%RH':(1 - 1 / sqrt (1 + 2 * u_ro) <= u_ro / (1 + u_ro))%RH'':(u_ro / (1 + u_ro) <= u_ro)%RH''':(u_ro < 1)%RHpos:(0 <= sqrt (1 + 2 * u_ro) - 1)%RNzfx:rx <> 0%RNzx:x <> 0%Rd':=((x - rx) / rx)%R:R(Rabs d * Rabs (/ (1 + d)) <= sqrt (1 + 2 * u_ro) - 1)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx, rx, d:RBd:(Rabs d <= 1 - 1 / sqrt (1 + 2 * u_ro))%RHd:rx = (x * (1 + d))%RH:(- (1 - 1 / sqrt (1 + 2 * u_ro)) <= d <= 1 - 1 / sqrt (1 + 2 * u_ro))%RH':(1 - 1 / sqrt (1 + 2 * u_ro) <= u_ro / (1 + u_ro))%RH'':(u_ro / (1 + u_ro) <= u_ro)%RH''':(u_ro < 1)%RHpos:(0 <= sqrt (1 + 2 * u_ro) - 1)%RNzfx:rx <> 0%RNzx:x <> 0%Rd':=((x - rx) / rx)%R:R(Rabs d * / (1 + d) <= sqrt (1 + 2 * u_ro) - 1)%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx, rx, d:RBd:(Rabs d <= 1 - 1 / sqrt (1 + 2 * u_ro))%RHd:rx = (x * (1 + d))%RH:(- (1 - 1 / sqrt (1 + 2 * u_ro)) <= d <= 1 - 1 / sqrt (1 + 2 * u_ro))%RH':(1 - 1 / sqrt (1 + 2 * u_ro) <= u_ro / (1 + u_ro))%RH'':(u_ro / (1 + u_ro) <= u_ro)%RH''':(u_ro < 1)%RHpos:(0 <= sqrt (1 + 2 * u_ro) - 1)%RNzfx:rx <> 0%RNzx:x <> 0%Rd':=((x - rx) / rx)%R:R(Rabs d * / (1 + d) * (1 + d) <= (sqrt (1 + 2 * u_ro) - 1) * (1 + d))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx, rx, d:RBd:(Rabs d <= 1 - 1 / sqrt (1 + 2 * u_ro))%RHd:rx = (x * (1 + d))%RH:(- (1 - 1 / sqrt (1 + 2 * u_ro)) <= d <= 1 - 1 / sqrt (1 + 2 * u_ro))%RH':(1 - 1 / sqrt (1 + 2 * u_ro) <= u_ro / (1 + u_ro))%RH'':(u_ro / (1 + u_ro) <= u_ro)%RH''':(u_ro < 1)%RHpos:(0 <= sqrt (1 + 2 * u_ro) - 1)%RNzfx:rx <> 0%RNzx:x <> 0%Rd':=((x - rx) / rx)%R:R(Rabs d <= (sqrt (1 + 2 * u_ro) - 1) * (1 + d))%Rapply (Rle_trans _ ((sqrt (1 + 2 * u_ro) - 1) * (1/sqrt (1 + 2 * u_ro)))); [right; field|apply Rmult_le_compat_l]; lra.beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx, rx, d:RBd:(Rabs d <= 1 - 1 / sqrt (1 + 2 * u_ro))%RHd:rx = (x * (1 + d))%RH:(- (1 - 1 / sqrt (1 + 2 * u_ro)) <= d <= 1 - 1 / sqrt (1 + 2 * u_ro))%RH':(1 - 1 / sqrt (1 + 2 * u_ro) <= u_ro / (1 + u_ro))%RH'':(u_ro / (1 + u_ro) <= u_ro)%RH''':(u_ro < 1)%RHpos:(0 <= sqrt (1 + 2 * u_ro) - 1)%RNzfx:rx <> 0%RNzx:x <> 0%Rd':=((x - rx) / rx)%R:R(1 - 1 / sqrt (1 + 2 * u_ro) <= (sqrt (1 + 2 * u_ro) - 1) * (1 + d))%Rnow exists d'; split; [exact Hd'|]; unfold d'; field. Qed.beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zx, rx, d:RBd:(Rabs d <= 1 - 1 / sqrt (1 + 2 * u_ro))%RHd:rx = (x * (1 + d))%RH:(- (1 - 1 / sqrt (1 + 2 * u_ro)) <= d <= 1 - 1 / sqrt (1 + 2 * u_ro))%RH':(1 - 1 / sqrt (1 + 2 * u_ro) <= u_ro / (1 + u_ro))%RH'':(u_ro / (1 + u_ro) <= u_ro)%RH''':(u_ro < 1)%RHpos:(0 <= sqrt (1 + 2 * u_ro) - 1)%RNzfx:rx <> 0%RNzx:x <> 0%Rd':=((x - rx) / rx)%R:RHd':(Rabs d' <= sqrt (1 + 2 * u_ro) - 1)%Rexists eps : R, (Rabs eps <= sqrt (1 + 2 * u_ro) - 1)%R /\ x = (rx * (1 + eps))%R
sqrt(1 + 2 u_ro) - 1 <= u_ro
beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zforall x : R, format x -> exists eps : R, (Rabs eps <= sqrt (1 + 2 * u_ro) - 1)%R /\ sqrt x = (round beta (FLX_exp prec) (Znearest choice) (sqrt x) * (1 + eps))%Rnow intros x Fx; apply sqrt_error_N_round_ex_derive, sqrt_error_N_FLX_ex. Qed. Variable emin : Z. Hypothesis Hemin : (emin <= 2 * (1 - prec))%Z.beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zforall x : R, format x -> exists eps : R, (Rabs eps <= sqrt (1 + 2 * u_ro) - 1)%R /\ sqrt x = (round beta (FLX_exp prec) (Znearest choice) (sqrt x) * (1 + eps))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zemin:ZHemin:(emin <= 2 * (1 - prec))%Zforall x : R, generic_format beta (FLT_exp emin prec) x -> exists eps : R, (Rabs eps <= 1 - 1 / sqrt (1 + 2 * u_ro))%R /\ round beta (FLT_exp emin prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zemin:ZHemin:(emin <= 2 * (1 - prec))%Zforall x : R, generic_format beta (FLT_exp emin prec) x -> exists eps : R, (Rabs eps <= 1 - 1 / sqrt (1 + 2 * u_ro))%R /\ round beta (FLT_exp emin prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zemin:ZHemin:(emin <= 2 * (1 - prec))%Zx:RFx:generic_format beta (FLT_exp emin prec) xexists eps : R, (Rabs eps <= 1 - 1 / sqrt (1 + 2 * u_ro))%R /\ round beta (FLT_exp emin prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zemin:ZHemin:(emin <= 2 * (1 - prec))%Zx:RFx:generic_format beta (FLT_exp emin prec) xHeps:forall (beta0 : radix) (prec0 : Z), (0 <= Relative.u_ro beta0 prec0)%Rexists eps : R, (Rabs eps <= 1 - 1 / sqrt (1 + 2 * u_ro))%R /\ round beta (FLT_exp emin prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zemin:ZHemin:(emin <= 2 * (1 - prec))%Zx:RFx:generic_format beta (FLT_exp emin prec) xHeps:forall (beta0 : radix) (prec0 : Z), (0 <= Relative.u_ro beta0 prec0)%RPb:(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%Rexists eps : R, (Rabs eps <= 1 - 1 / sqrt (1 + 2 * u_ro))%R /\ round beta (FLT_exp emin prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zemin:ZHemin:(emin <= 2 * (1 - prec))%Zx:RFx:generic_format beta (FLT_exp emin prec) xHeps:forall (beta0 : radix) (prec0 : Z), (0 <= Relative.u_ro beta0 prec0)%RPb:(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%RNx:(x <= 0)%Rexists eps : R, (Rabs eps <= 1 - 1 / sqrt (1 + 2 * u_ro))%R /\ round beta (FLT_exp emin prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zemin:ZHemin:(emin <= 2 * (1 - prec))%Zx:RFx:generic_format beta (FLT_exp emin prec) xHeps:forall (beta0 : radix) (prec0 : Z), (0 <= Relative.u_ro beta0 prec0)%RPb:(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%RPx:(0 < x)%Rexists eps : R, (Rabs eps <= 1 - 1 / sqrt (1 + 2 * u_ro))%R /\ round beta (FLT_exp emin prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zemin:ZHemin:(emin <= 2 * (1 - prec))%Zx:RFx:generic_format beta (FLT_exp emin prec) xHeps:forall (beta0 : radix) (prec0 : Z), (0 <= Relative.u_ro beta0 prec0)%RPb:(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%RNx:(x <= 0)%Rexists eps : R, (Rabs eps <= 1 - 1 / sqrt (1 + 2 * u_ro))%R /\ round beta (FLT_exp emin prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%Rnow rewrite (sqrt_neg x Nx), round_0, Rmult_0_l; [|apply valid_rnd_N].beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zemin:ZHemin:(emin <= 2 * (1 - prec))%Zx:RFx:generic_format beta (FLT_exp emin prec) xHeps:forall (beta0 : radix) (prec0 : Z), (0 <= Relative.u_ro beta0 prec0)%RPb:(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%RNx:(x <= 0)%Rround beta (FLT_exp emin prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + 0))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zemin:ZHemin:(emin <= 2 * (1 - prec))%Zx:RFx:generic_format beta (FLT_exp emin prec) xHeps:forall (beta0 : radix) (prec0 : Z), (0 <= Relative.u_ro beta0 prec0)%RPb:(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%RPx:(0 < x)%Rexists eps : R, (Rabs eps <= 1 - 1 / sqrt (1 + 2 * u_ro))%R /\ round beta (FLT_exp emin prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zemin:ZHemin:(emin <= 2 * (1 - prec))%Zx:RFx:generic_format beta (FLT_exp emin prec) xHeps:forall (beta0 : radix) (prec0 : Z), (0 <= Relative.u_ro beta0 prec0)%RPb:(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%RPx:(0 < x)%RFx':format xexists eps : R, (Rabs eps <= 1 - 1 / sqrt (1 + 2 * u_ro))%R /\ round beta (FLT_exp emin prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zemin:ZHemin:(emin <= 2 * (1 - prec))%Zx:RFx:generic_format beta (FLT_exp emin prec) xHeps:forall (beta0 : radix) (prec0 : Z), (0 <= Relative.u_ro beta0 prec0)%RPb:(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%RPx:(0 < x)%RFx':format xd:RBd:(Rabs d <= 1 - 1 / sqrt (1 + 2 * u_ro))%RHd:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + d))%Rexists eps : R, (Rabs eps <= 1 - 1 / sqrt (1 + 2 * u_ro))%R /\ round beta (FLT_exp emin prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + eps))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zemin:ZHemin:(emin <= 2 * (1 - prec))%Zx:RFx:generic_format beta (FLT_exp emin prec) xHeps:forall (beta0 : radix) (prec0 : Z), (0 <= Relative.u_ro beta0 prec0)%RPb:(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%RPx:(0 < x)%RFx':format xd:RBd:(Rabs d <= 1 - 1 / sqrt (1 + 2 * u_ro))%RHd:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + d))%R(bpow (emin + prec - 1) <= Rabs (sqrt x))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zemin:ZHemin:(emin <= 2 * (1 - prec))%Zx:RFx:generic_format beta (FLT_exp emin prec) xHeps:forall (beta0 : radix) (prec0 : Z), (0 <= Relative.u_ro beta0 prec0)%RPb:(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%RPx:(0 < x)%RFx':format xd:RBd:(Rabs d <= 1 - 1 / sqrt (1 + 2 * u_ro))%RHd:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + d))%R(bpow (emin + prec - 1) <= bpow (emin / 2))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zemin:ZHemin:(emin <= 2 * (1 - prec))%Zx:RFx:generic_format beta (FLT_exp emin prec) xHeps:forall (beta0 : radix) (prec0 : Z), (0 <= Relative.u_ro beta0 prec0)%RPb:(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%RPx:(0 < x)%RFx':format xd:RBd:(Rabs d <= 1 - 1 / sqrt (1 + 2 * u_ro))%RHd:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + d))%R(bpow (emin / 2) <= Rabs (sqrt x))%Rapply bpow_le, Z.div_le_lower_bound; lia.beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zemin:ZHemin:(emin <= 2 * (1 - prec))%Zx:RFx:generic_format beta (FLT_exp emin prec) xHeps:forall (beta0 : radix) (prec0 : Z), (0 <= Relative.u_ro beta0 prec0)%RPb:(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%RPx:(0 < x)%RFx':format xd:RBd:(Rabs d <= 1 - 1 / sqrt (1 + 2 * u_ro))%RHd:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + d))%R(bpow (emin + prec - 1) <= bpow (emin / 2))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zemin:ZHemin:(emin <= 2 * (1 - prec))%Zx:RFx:generic_format beta (FLT_exp emin prec) xHeps:forall (beta0 : radix) (prec0 : Z), (0 <= Relative.u_ro beta0 prec0)%RPb:(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%RPx:(0 < x)%RFx':format xd:RBd:(Rabs d <= 1 - 1 / sqrt (1 + 2 * u_ro))%RHd:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + d))%R(bpow (emin / 2) <= Rabs (sqrt x))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zemin:ZHemin:(emin <= 2 * (1 - prec))%Zx:RFx:generic_format beta (FLT_exp emin prec) xHeps:forall (beta0 : radix) (prec0 : Z), (0 <= Relative.u_ro beta0 prec0)%RPb:(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%RPx:(0 < x)%RFx':format xd:RBd:(Rabs d <= 1 - 1 / sqrt (1 + 2 * u_ro))%RHd:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + d))%R(sqrt (bpow emin) <= Rabs (sqrt x))%Rbeta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zemin:ZHemin:(emin <= 2 * (1 - prec))%Zx:RFx:generic_format beta (FLT_exp emin prec) xHeps:forall (beta0 : radix) (prec0 : Z), (0 <= Relative.u_ro beta0 prec0)%RPb:(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%RPx:(0 < x)%RFx':format xd:RBd:(Rabs d <= 1 - 1 / sqrt (1 + 2 * u_ro))%RHd:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + d))%R(bpow emin <= x)%Rintro e; unfold FLT_exp; apply Z.le_max_r. Qed.beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zemin:ZHemin:(emin <= 2 * (1 - prec))%Zx:RHeps:forall (beta0 : radix) (prec0 : Z), (0 <= Relative.u_ro beta0 prec0)%RPb:(0 <= 1 - 1 / sqrt (1 + 2 * u_ro))%RPx:(0 < x)%RFx':format xd:RBd:(Rabs d <= 1 - 1 / sqrt (1 + 2 * u_ro))%RHd:round beta (FLX_exp prec) (Znearest choice) (sqrt x) = (sqrt x * (1 + d))%Rforall e : Z, (emin <= FLT_exp emin prec e)%Z
sqrt(1 + 2 u_ro) - 1 <= u_ro
beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zemin:ZHemin:(emin <= 2 * (1 - prec))%Zforall x : R, generic_format beta (FLT_exp emin prec) x -> exists eps : R, (Rabs eps <= sqrt (1 + 2 * u_ro) - 1)%R /\ sqrt x = (round beta (FLT_exp emin prec) (Znearest choice) (sqrt x) * (1 + eps))%Rnow intros x Fx; apply sqrt_error_N_round_ex_derive, sqrt_error_N_FLT_ex. Qed. End Fprop_divsqrt_error. Section format_REM_aux. Variable beta : radix. Notation bpow e := (bpow beta e). Variable fexp : Z -> Z. Context { valid_exp : Valid_exp fexp }. Context { monotone_exp : Monotone_exp fexp }. Variable rnd : R -> Z. Context { valid_rnd : Valid_rnd rnd }. Notation format := (generic_format beta fexp).beta:radixprec:Zprec_gt_0_:Prec_gt_0 precchoice:Z -> boolHp1:(1 < prec)%Zemin:ZHemin:(emin <= 2 * (1 - prec))%Zforall x : R, generic_format beta (FLT_exp emin prec) x -> exists eps : R, (Rabs eps <= sqrt (1 + 2 * u_ro) - 1)%R /\ sqrt x = (round beta (FLT_exp emin prec) (Znearest choice) (sqrt x) * (1 + eps))%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndforall x y : R, format x -> format y -> (0 <= x)%R -> (0 < y)%R -> ((0 < x / y < / 2)%R -> rnd (x / y) = 0%Z) -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndforall x y : R, format x -> format y -> (0 <= x)%R -> (0 < y)%R -> ((0 < x / y < / 2)%R -> rnd (x / y) = 0%Z) -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zformat (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):Zformat (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZIZR n = round beta (FIX_exp 0) rnd (x / y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZIZR n = (IZR (rnd (x / y * 1)) * 1)%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)(0 <= n)%Zbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 <= n)%Zformat (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)(0 <= round beta (FIX_exp 0) rnd (x / y))%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 <= n)%Zformat (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)(0 <= round beta (FIX_exp 0) rnd 0)%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)(round beta (FIX_exp 0) rnd 0 <= round beta (FIX_exp 0) rnd (x / y))%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 <= n)%Zformat (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)(round beta (FIX_exp 0) rnd 0 <= round beta (FIX_exp 0) rnd (x / y))%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 <= n)%Zformat (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)(0 <= x / y)%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 <= n)%Zformat (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 <= n)%Zformat (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 <= n)%Z(0 < n)%Z -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 <= n)%Z0%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 < n)%Zformat (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 <= n)%Z0%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 < n)%Z(1 <= n)%Zbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 < n)%Z(1 < n)%Z -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 < n)%Z1%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 <= n)%Z0%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 < n)%Z(1 < n)%Z -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 < n)%Z1%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 <= n)%Z0%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(1 < n)%Zformat (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 < n)%Z1%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 <= n)%Z0%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(1 < n)%Zex:=cexp beta fexp x:Zformat (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 < n)%Z1%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 <= n)%Z0%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(1 < n)%Zex:=cexp beta fexp x:Zey:=cexp beta fexp y:Zformat (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 < n)%Z1%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 <= n)%Z0%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(1 < n)%Zex:=cexp beta fexp x:Zey:=cexp beta fexp y:Zmx:=Ztrunc (scaled_mantissa beta fexp x):Zformat (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 < n)%Z1%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 <= n)%Z0%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(1 < n)%Zex:=cexp beta fexp x:Zey:=cexp beta fexp y:Zmx:=Ztrunc (scaled_mantissa beta fexp x):Zmy:=Ztrunc (scaled_mantissa beta fexp y):Zformat (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 < n)%Z1%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 <= n)%Z0%Z = n -> format (x - IZR (rnd (x / y)) * y)(* ey <= ex *)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(1 < n)%Zex:=cexp beta fexp x:Zey:=cexp beta fexp y:Zmx:=Ztrunc (scaled_mantissa beta fexp x):Zmy:=Ztrunc (scaled_mantissa beta fexp y):ZHexy:(ey <= ex)%Zformat (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(1 < n)%Zex:=cexp beta fexp x:Zey:=cexp beta fexp y:Zmx:=Ztrunc (scaled_mantissa beta fexp x):Zmy:=Ztrunc (scaled_mantissa beta fexp y):ZHexy:(ex < ey)%Zformat (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 < n)%Z1%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 <= n)%Z0%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(1 < n)%Zex:=cexp beta fexp x:Zey:=cexp beta fexp y:Zmx:=Ztrunc (scaled_mantissa beta fexp x):Zmy:=Ztrunc (scaled_mantissa beta fexp y):ZHexy:(ey <= ex)%Z(x - IZR n * y)%R = F2R {| Fnum := mx * beta ^ (ex - ey) - n * my; Fexp := ey |}beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(1 < n)%Zex:=cexp beta fexp x:Zey:=cexp beta fexp y:Zmx:=Ztrunc (scaled_mantissa beta fexp x):Zmy:=Ztrunc (scaled_mantissa beta fexp y):ZHexy:(ey <= ex)%ZH0:(x - IZR n * y)%R = F2R {| Fnum := mx * beta ^ (ex - ey) - n * my; Fexp := ey |}format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(1 < n)%Zex:=cexp beta fexp x:Zey:=cexp beta fexp y:Zmx:=Ztrunc (scaled_mantissa beta fexp x):Zmy:=Ztrunc (scaled_mantissa beta fexp y):ZHexy:(ex < ey)%Zformat (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 < n)%Z1%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 <= n)%Z0%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(1 < n)%Zex:=cexp beta fexp x:Zey:=cexp beta fexp y:Zmx:=Ztrunc (scaled_mantissa beta fexp x):Zmy:=Ztrunc (scaled_mantissa beta fexp y):ZHexy:(ey <= ex)%Z(- (IZR n * y) + x)%R = F2R {| Fnum := mx * beta ^ (ex - ey) - n * my; Fexp := ey |}beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(1 < n)%Zex:=cexp beta fexp x:Zey:=cexp beta fexp y:Zmx:=Ztrunc (scaled_mantissa beta fexp x):Zmy:=Ztrunc (scaled_mantissa beta fexp y):ZHexy:(ey <= ex)%ZH0:(x - IZR n * y)%R = F2R {| Fnum := mx * beta ^ (ex - ey) - n * my; Fexp := ey |}format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(1 < n)%Zex:=cexp beta fexp x:Zey:=cexp beta fexp y:Zmx:=Ztrunc (scaled_mantissa beta fexp x):Zmy:=Ztrunc (scaled_mantissa beta fexp y):ZHexy:(ex < ey)%Zformat (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 < n)%Z1%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 <= n)%Z0%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(1 < n)%Zex:=cexp beta fexp x:Zey:=cexp beta fexp y:Zmx:=Ztrunc (scaled_mantissa beta fexp x):Zmy:=Ztrunc (scaled_mantissa beta fexp y):ZHexy:(ey <= ex)%Z(- (F2R {| Fnum := n; Fexp := 0 |} * y) + x)%R = F2R {| Fnum := mx * beta ^ (ex - ey) - n * my; Fexp := ey |}beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(1 < n)%Zex:=cexp beta fexp x:Zey:=cexp beta fexp y:Zmx:=Ztrunc (scaled_mantissa beta fexp x):Zmy:=Ztrunc (scaled_mantissa beta fexp y):ZHexy:(ey <= ex)%ZF2R {| Fnum := n; Fexp := 0 |} = IZR nbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(1 < n)%Zex:=cexp beta fexp x:Zey:=cexp beta fexp y:Zmx:=Ztrunc (scaled_mantissa beta fexp x):Zmy:=Ztrunc (scaled_mantissa beta fexp y):ZHexy:(ey <= ex)%ZH0:(x - IZR n * y)%R = F2R {| Fnum := mx * beta ^ (ex - ey) - n * my; Fexp := ey |}format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(1 < n)%Zex:=cexp beta fexp x:Zey:=cexp beta fexp y:Zmx:=Ztrunc (scaled_mantissa beta fexp x):Zmy:=Ztrunc (scaled_mantissa beta fexp y):ZHexy:(ex < ey)%Zformat (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 < n)%Z1%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 <= n)%Z0%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(1 < n)%Zex:=cexp beta fexp x:Zey:=cexp beta fexp y:Zmx:=Ztrunc (scaled_mantissa beta fexp x):Zmy:=Ztrunc (scaled_mantissa beta fexp y):ZHexy:(ey <= ex)%Z(- (F2R {| Fnum := n; Fexp := 0 |} * F2R {| Fnum := Ztrunc (scaled_mantissa beta fexp y); Fexp := cexp beta fexp y |}) + F2R {| Fnum := Ztrunc (scaled_mantissa beta fexp x); Fexp := cexp beta fexp x |})%R = F2R {| Fnum := mx * beta ^ (ex - ey) - n * my; Fexp := ey |}beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(1 < n)%Zex:=cexp beta fexp x:Zey:=cexp beta fexp y:Zmx:=Ztrunc (scaled_mantissa beta fexp x):Zmy:=Ztrunc (scaled_mantissa beta fexp y):ZHexy:(ey <= ex)%ZF2R {| Fnum := n; Fexp := 0 |} = IZR nbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(1 < n)%Zex:=cexp beta fexp x:Zey:=cexp beta fexp y:Zmx:=Ztrunc (scaled_mantissa beta fexp x):Zmy:=Ztrunc (scaled_mantissa beta fexp y):ZHexy:(ey <= ex)%ZH0:(x - IZR n * y)%R = F2R {| Fnum := mx * beta ^ (ex - ey) - n * my; Fexp := ey |}format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(1 < n)%Zex:=cexp beta fexp x:Zey:=cexp beta fexp y:Zmx:=Ztrunc (scaled_mantissa beta fexp x):Zmy:=Ztrunc (scaled_mantissa beta fexp y):ZHexy:(ex < ey)%Zformat (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 < n)%Z1%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 <= n)%Z0%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(1 < n)%Zex:=cexp beta fexp x:Zey:=cexp beta fexp y:Zmx:=Ztrunc (scaled_mantissa beta fexp x):Zmy:=Ztrunc (scaled_mantissa beta fexp y):ZHexy:(ey <= ex)%Z(- (F2R {| Fnum := n; Fexp := 0 |} * F2R {| Fnum := my; Fexp := ey |}) + F2R {| Fnum := mx; Fexp := ex |})%R = F2R {| Fnum := mx * beta ^ (ex - ey) - n * my; Fexp := ey |}beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(1 < n)%Zex:=cexp beta fexp x:Zey:=cexp beta fexp y:Zmx:=Ztrunc (scaled_mantissa beta fexp x):Zmy:=Ztrunc (scaled_mantissa beta fexp y):ZHexy:(ey <= ex)%ZF2R {| Fnum := n; Fexp := 0 |} = IZR nbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(1 < n)%Zex:=cexp beta fexp x:Zey:=cexp beta fexp y:Zmx:=Ztrunc (scaled_mantissa beta fexp x):Zmy:=Ztrunc (scaled_mantissa beta fexp y):ZHexy:(ey <= ex)%ZH0:(x - IZR n * y)%R = F2R {| Fnum := mx * beta ^ (ex - ey) - n * my; Fexp := ey |}format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(1 < n)%Zex:=cexp beta fexp x:Zey:=cexp beta fexp y:Zmx:=Ztrunc (scaled_mantissa beta fexp x):Zmy:=Ztrunc (scaled_mantissa beta fexp y):ZHexy:(ex < ey)%Zformat (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 < n)%Z1%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 <= n)%Z0%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(1 < n)%Zex:=cexp beta fexp x:Zey:=cexp beta fexp y:Zmx:=Ztrunc (scaled_mantissa beta fexp x):Zmy:=Ztrunc (scaled_mantissa beta fexp y):ZHexy:(ey <= ex)%Z(- F2R (Fmult {| Fnum := n; Fexp := 0 |} {| Fnum := my; Fexp := ey |}) + F2R {| Fnum := mx; Fexp := ex |})%R = F2R {| Fnum := mx * beta ^ (ex - ey) - n * my; Fexp := ey |}beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(1 < n)%Zex:=cexp beta fexp x:Zey:=cexp beta fexp y:Zmx:=Ztrunc (scaled_mantissa beta fexp x):Zmy:=Ztrunc (scaled_mantissa beta fexp y):ZHexy:(ey <= ex)%ZF2R {| Fnum := n; Fexp := 0 |} = IZR nbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(1 < n)%Zex:=cexp beta fexp x:Zey:=cexp beta fexp y:Zmx:=Ztrunc (scaled_mantissa beta fexp x):Zmy:=Ztrunc (scaled_mantissa beta fexp y):ZHexy:(ey <= ex)%ZH0:(x - IZR n * y)%R = F2R {| Fnum := mx * beta ^ (ex - ey) - n * my; Fexp := ey |}format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(1 < n)%Zex:=cexp beta fexp x:Zey:=cexp beta fexp y:Zmx:=Ztrunc (scaled_mantissa beta fexp x):Zmy:=Ztrunc (scaled_mantissa beta fexp y):ZHexy:(ex < ey)%Zformat (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 < n)%Z1%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 <= n)%Z0%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(1 < n)%Zex:=cexp beta fexp x:Zey:=cexp beta fexp y:Zmx:=Ztrunc (scaled_mantissa beta fexp x):Zmy:=Ztrunc (scaled_mantissa beta fexp y):ZHexy:(ey <= ex)%Z(F2R (Fopp (Fmult {| Fnum := n; Fexp := 0 |} {| Fnum := my; Fexp := ey |})) + F2R {| Fnum := mx; Fexp := ex |})%R = F2R {| Fnum := mx * beta ^ (ex - ey) - n * my; Fexp := ey |}beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(1 < n)%Zex:=cexp beta fexp x:Zey:=cexp beta fexp y:Zmx:=Ztrunc (scaled_mantissa beta fexp x):Zmy:=Ztrunc (scaled_mantissa beta fexp y):ZHexy:(ey <= ex)%ZF2R {| Fnum := n; Fexp := 0 |} = IZR nbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(1 < n)%Zex:=cexp beta fexp x:Zey:=cexp beta fexp y:Zmx:=Ztrunc (scaled_mantissa beta fexp x):Zmy:=Ztrunc (scaled_mantissa beta fexp y):ZHexy:(ey <= ex)%ZH0:(x - IZR n * y)%R = F2R {| Fnum := mx * beta ^ (ex - ey) - n * my; Fexp := ey |}format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(1 < n)%Zex:=cexp beta fexp x:Zey:=cexp beta fexp y:Zmx:=Ztrunc (scaled_mantissa beta fexp x):Zmy:=Ztrunc (scaled_mantissa beta fexp y):ZHexy:(ex < ey)%Zformat (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 < n)%Z1%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 <= n)%Z0%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(1 < n)%Zex:=cexp beta fexp x:Zey:=cexp beta fexp y:Zmx:=Ztrunc (scaled_mantissa beta fexp x):Zmy:=Ztrunc (scaled_mantissa beta fexp y):ZHexy:(ey <= ex)%ZF2R (Fplus (Fopp (Fmult {| Fnum := n; Fexp := 0 |} {| Fnum := my; Fexp := ey |})) {| Fnum := mx; Fexp := ex |}) = F2R {| Fnum := mx * beta ^ (ex - ey) - n * my; Fexp := ey |}beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(1 < n)%Zex:=cexp beta fexp x:Zey:=cexp beta fexp y:Zmx:=Ztrunc (scaled_mantissa beta fexp x):Zmy:=Ztrunc (scaled_mantissa beta fexp y):ZHexy:(ey <= ex)%ZF2R {| Fnum := n; Fexp := 0 |} = IZR nbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(1 < n)%Zex:=cexp beta fexp x:Zey:=cexp beta fexp y:Zmx:=Ztrunc (scaled_mantissa beta fexp x):Zmy:=Ztrunc (scaled_mantissa beta fexp y):ZHexy:(ey <= ex)%ZH0:(x - IZR n * y)%R = F2R {| Fnum := mx * beta ^ (ex - ey) - n * my; Fexp := ey |}format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(1 < n)%Zex:=cexp beta fexp x:Zey:=cexp beta fexp y:Zmx:=Ztrunc (scaled_mantissa beta fexp x):Zmy:=Ztrunc (scaled_mantissa beta fexp y):ZHexy:(ex < ey)%Zformat (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 < n)%Z1%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 <= n)%Z0%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(1 < n)%Zex:=cexp beta fexp x:Zey:=cexp beta fexp y:Zmx:=Ztrunc (scaled_mantissa beta fexp x):Zmy:=Ztrunc (scaled_mantissa beta fexp y):ZHexy:(ey <= ex)%ZF2R (let '(m1, m2, e) := Falign (Fopp (Fmult {| Fnum := n; Fexp := 0 |} {| Fnum := my; Fexp := ey |})) {| Fnum := mx; Fexp := ex |} in {| Fnum := m1 + m2; Fexp := e |}) = F2R {| Fnum := mx * beta ^ (ex - ey) - n * my; Fexp := ey |}beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(1 < n)%Zex:=cexp beta fexp x:Zey:=cexp beta fexp y:Zmx:=Ztrunc (scaled_mantissa beta fexp x):Zmy:=Ztrunc (scaled_mantissa beta fexp y):ZHexy:(ey <= ex)%ZF2R {| Fnum := n; Fexp := 0 |} = IZR nbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(1 < n)%Zex:=cexp beta fexp x:Zey:=cexp beta fexp y:Zmx:=Ztrunc (scaled_mantissa beta fexp x):Zmy:=Ztrunc (scaled_mantissa beta fexp y):ZHexy:(ey <= ex)%ZH0:(x - IZR n * y)%R = F2R {| Fnum := mx * beta ^ (ex - ey) - n * my; Fexp := ey |}format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(1 < n)%Zex:=cexp beta fexp x:Zey:=cexp beta fexp y:Zmx:=Ztrunc (scaled_mantissa beta fexp x):Zmy:=Ztrunc (scaled_mantissa beta fexp y):ZHexy:(ex < ey)%Zformat (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 < n)%Z1%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 <= n)%Z0%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(1 < n)%Zex:=cexp beta fexp x:Zey:=cexp beta fexp y:Zmx:=Ztrunc (scaled_mantissa beta fexp x):Zmy:=Ztrunc (scaled_mantissa beta fexp y):ZHexy:(ey <= ex)%ZF2R (let '(m1, m2, e) := if (ey <=? ex)%Z then ((- (n * my))%Z, (mx * beta ^ (ex - ey))%Z, ey) else ((- (n * my) * beta ^ (ey - ex))%Z, mx, ex) in {| Fnum := m1 + m2; Fexp := e |}) = F2R {| Fnum := mx * beta ^ (ex - ey) - n * my; Fexp := ey |}beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(1 < n)%Zex:=cexp beta fexp x:Zey:=cexp beta fexp y:Zmx:=Ztrunc (scaled_mantissa beta fexp x):Zmy:=Ztrunc (scaled_mantissa beta fexp y):ZHexy:(ey <= ex)%ZF2R {| Fnum := n; Fexp := 0 |} = IZR nbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(1 < n)%Zex:=cexp beta fexp x:Zey:=cexp beta fexp y:Zmx:=Ztrunc (scaled_mantissa beta fexp x):Zmy:=Ztrunc (scaled_mantissa beta fexp y):ZHexy:(ey <= ex)%ZH0:(x - IZR n * y)%R = F2R {| Fnum := mx * beta ^ (ex - ey) - n * my; Fexp := ey |}format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(1 < n)%Zex:=cexp beta fexp x:Zey:=cexp beta fexp y:Zmx:=Ztrunc (scaled_mantissa beta fexp x):Zmy:=Ztrunc (scaled_mantissa beta fexp y):ZHexy:(ex < ey)%Zformat (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 < n)%Z1%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 <= n)%Z0%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(1 < n)%Zex:=cexp beta fexp x:Zey:=cexp beta fexp y:Zmx:=Ztrunc (scaled_mantissa beta fexp x):Zmy:=Ztrunc (scaled_mantissa beta fexp y):ZHexy:(ey <= ex)%ZF2R {| Fnum := - (n * my) + mx * beta ^ (ex - ey); Fexp := ey |} = F2R {| Fnum := mx * beta ^ (ex - ey) - n * my; Fexp := ey |}beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(1 < n)%Zex:=cexp beta fexp x:Zey:=cexp beta fexp y:Zmx:=Ztrunc (scaled_mantissa beta fexp x):Zmy:=Ztrunc (scaled_mantissa beta fexp y):ZHexy:(ey <= ex)%ZF2R {| Fnum := n; Fexp := 0 |} = IZR nbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(1 < n)%Zex:=cexp beta fexp x:Zey:=cexp beta fexp y:Zmx:=Ztrunc (scaled_mantissa beta fexp x):Zmy:=Ztrunc (scaled_mantissa beta fexp y):ZHexy:(ey <= ex)%ZH0:(x - IZR n * y)%R = F2R {| Fnum := mx * beta ^ (ex - ey) - n * my; Fexp := ey |}format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(1 < n)%Zex:=cexp beta fexp x:Zey:=cexp beta fexp y:Zmx:=Ztrunc (scaled_mantissa beta fexp x):Zmy:=Ztrunc (scaled_mantissa beta fexp y):ZHexy:(ex < ey)%Zformat (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 < n)%Z1%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 <= n)%Z0%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(1 < n)%Zex:=cexp beta fexp x:Zey:=cexp beta fexp y:Zmx:=Ztrunc (scaled_mantissa beta fexp x):Zmy:=Ztrunc (scaled_mantissa beta fexp y):ZHexy:(ey <= ex)%ZF2R {| Fnum := n; Fexp := 0 |} = IZR nbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(1 < n)%Zex:=cexp beta fexp x:Zey:=cexp beta fexp y:Zmx:=Ztrunc (scaled_mantissa beta fexp x):Zmy:=Ztrunc (scaled_mantissa beta fexp y):ZHexy:(ey <= ex)%ZH0:(x - IZR n * y)%R = F2R {| Fnum := mx * beta ^ (ex - ey) - n * my; Fexp := ey |}format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(1 < n)%Zex:=cexp beta fexp x:Zey:=cexp beta fexp y:Zmx:=Ztrunc (scaled_mantissa beta fexp x):Zmy:=Ztrunc (scaled_mantissa beta fexp y):ZHexy:(ex < ey)%Zformat (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 < n)%Z1%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 <= n)%Z0%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(1 < n)%Zex:=cexp beta fexp x:Zey:=cexp beta fexp y:Zmx:=Ztrunc (scaled_mantissa beta fexp x):Zmy:=Ztrunc (scaled_mantissa beta fexp y):ZHexy:(ey <= ex)%ZH0:(x - IZR n * y)%R = F2R {| Fnum := mx * beta ^ (ex - ey) - n * my; Fexp := ey |}format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(1 < n)%Zex:=cexp beta fexp x:Zey:=cexp beta fexp y:Zmx:=Ztrunc (scaled_mantissa beta fexp x):Zmy:=Ztrunc (scaled_mantissa beta fexp y):ZHexy:(ex < ey)%Zformat (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 < n)%Z1%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 <= n)%Z0%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(1 < n)%Zex:=cexp beta fexp x:Zey:=cexp beta fexp y:Zmx:=Ztrunc (scaled_mantissa beta fexp x):Zmy:=Ztrunc (scaled_mantissa beta fexp y):ZHexy:(ey <= ex)%ZH0:(x - IZR n * y)%R = F2R {| Fnum := mx * beta ^ (ex - ey) - n * my; Fexp := ey |}format (F2R {| Fnum := mx * beta ^ (ex - ey) - n * my; Fexp := ey |})beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(1 < n)%Zex:=cexp beta fexp x:Zey:=cexp beta fexp y:Zmx:=Ztrunc (scaled_mantissa beta fexp x):Zmy:=Ztrunc (scaled_mantissa beta fexp y):ZHexy:(ex < ey)%Zformat (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 < n)%Z1%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 <= n)%Z0%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(1 < n)%Zex:=cexp beta fexp x:Zey:=cexp beta fexp y:Zmx:=Ztrunc (scaled_mantissa beta fexp x):Zmy:=Ztrunc (scaled_mantissa beta fexp y):ZHexy:(ey <= ex)%ZH0:(x - IZR n * y)%R = F2R {| Fnum := mx * beta ^ (ex - ey) - n * my; Fexp := ey |}(mx * beta ^ (ex - ey) - n * my)%Z <> 0%Z -> (cexp beta fexp (F2R {| Fnum := mx * beta ^ (ex - ey) - n * my; Fexp := ey |}) <= ey)%Zbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(1 < n)%Zex:=cexp beta fexp x:Zey:=cexp beta fexp y:Zmx:=Ztrunc (scaled_mantissa beta fexp x):Zmy:=Ztrunc (scaled_mantissa beta fexp y):ZHexy:(ex < ey)%Zformat (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 < n)%Z1%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 <= n)%Z0%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(1 < n)%Zex:=cexp beta fexp x:Zey:=cexp beta fexp y:Zmx:=Ztrunc (scaled_mantissa beta fexp x):Zmy:=Ztrunc (scaled_mantissa beta fexp y):ZHexy:(ey <= ex)%ZH0:(x - IZR n * y)%R = F2R {| Fnum := mx * beta ^ (ex - ey) - n * my; Fexp := ey |}H3:(mx * beta ^ (ex - ey) - n * my)%Z <> 0%Z(cexp beta fexp (x - IZR n * y) <= ey)%Zbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(1 < n)%Zex:=cexp beta fexp x:Zey:=cexp beta fexp y:Zmx:=Ztrunc (scaled_mantissa beta fexp x):Zmy:=Ztrunc (scaled_mantissa beta fexp y):ZHexy:(ex < ey)%Zformat (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 < n)%Z1%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 <= n)%Z0%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(1 < n)%Zex:=cexp beta fexp x:Zey:=cexp beta fexp y:Zmx:=Ztrunc (scaled_mantissa beta fexp x):Zmy:=Ztrunc (scaled_mantissa beta fexp y):ZHexy:(ey <= ex)%ZH0:(x - IZR n * y)%R = F2R {| Fnum := mx * beta ^ (ex - ey) - n * my; Fexp := ey |}H3:(mx * beta ^ (ex - ey) - n * my)%Z <> 0%Z(mag beta (x - IZR n * y) <= mag beta y)%Zbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(1 < n)%Zex:=cexp beta fexp x:Zey:=cexp beta fexp y:Zmx:=Ztrunc (scaled_mantissa beta fexp x):Zmy:=Ztrunc (scaled_mantissa beta fexp y):ZHexy:(ex < ey)%Zformat (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 < n)%Z1%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 <= n)%Z0%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(1 < n)%Zex:=cexp beta fexp x:Zey:=cexp beta fexp y:Zmx:=Ztrunc (scaled_mantissa beta fexp x):Zmy:=Ztrunc (scaled_mantissa beta fexp y):ZHexy:(ey <= ex)%ZH0:(x - IZR n * y)%R = F2R {| Fnum := mx * beta ^ (ex - ey) - n * my; Fexp := ey |}H3:(mx * beta ^ (ex - ey) - n * my)%Z <> 0%Z(x - IZR n * y)%R <> 0%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(1 < n)%Zex:=cexp beta fexp x:Zey:=cexp beta fexp y:Zmx:=Ztrunc (scaled_mantissa beta fexp x):Zmy:=Ztrunc (scaled_mantissa beta fexp y):ZHexy:(ey <= ex)%ZH0:(x - IZR n * y)%R = F2R {| Fnum := mx * beta ^ (ex - ey) - n * my; Fexp := ey |}H3:(mx * beta ^ (ex - ey) - n * my)%Z <> 0%Z(Rabs (x - IZR n * y) <= Rabs y)%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(1 < n)%Zex:=cexp beta fexp x:Zey:=cexp beta fexp y:Zmx:=Ztrunc (scaled_mantissa beta fexp x):Zmy:=Ztrunc (scaled_mantissa beta fexp y):ZHexy:(ex < ey)%Zformat (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 < n)%Z1%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 <= n)%Z0%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(1 < n)%Zex:=cexp beta fexp x:Zey:=cexp beta fexp y:Zmx:=Ztrunc (scaled_mantissa beta fexp x):Zmy:=Ztrunc (scaled_mantissa beta fexp y):ZHexy:(ey <= ex)%ZH0:(x - IZR n * y)%R = F2R {| Fnum := mx * beta ^ (ex - ey) - n * my; Fexp := ey |}H3:(mx * beta ^ (ex - ey) - n * my)%Z <> 0%Z(Rabs (x - IZR n * y) <= Rabs y)%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(1 < n)%Zex:=cexp beta fexp x:Zey:=cexp beta fexp y:Zmx:=Ztrunc (scaled_mantissa beta fexp x):Zmy:=Ztrunc (scaled_mantissa beta fexp y):ZHexy:(ex < ey)%Zformat (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 < n)%Z1%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 <= n)%Z0%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(1 < n)%Zex:=cexp beta fexp x:Zey:=cexp beta fexp y:Zmx:=Ztrunc (scaled_mantissa beta fexp x):Zmy:=Ztrunc (scaled_mantissa beta fexp y):ZHexy:(ey <= ex)%ZH0:(x - IZR n * y)%R = F2R {| Fnum := mx * beta ^ (ex - ey) - n * my; Fexp := ey |}H3:(mx * beta ^ (ex - ey) - n * my)%Z <> 0%Z(0 < / Rabs y)%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(1 < n)%Zex:=cexp beta fexp x:Zey:=cexp beta fexp y:Zmx:=Ztrunc (scaled_mantissa beta fexp x):Zmy:=Ztrunc (scaled_mantissa beta fexp y):ZHexy:(ey <= ex)%ZH0:(x - IZR n * y)%R = F2R {| Fnum := mx * beta ^ (ex - ey) - n * my; Fexp := ey |}H3:(mx * beta ^ (ex - ey) - n * my)%Z <> 0%Z(/ Rabs y * Rabs (x - IZR n * y) <= / Rabs y * Rabs y)%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(1 < n)%Zex:=cexp beta fexp x:Zey:=cexp beta fexp y:Zmx:=Ztrunc (scaled_mantissa beta fexp x):Zmy:=Ztrunc (scaled_mantissa beta fexp y):ZHexy:(ex < ey)%Zformat (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 < n)%Z1%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 <= n)%Z0%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(1 < n)%Zex:=cexp beta fexp x:Zey:=cexp beta fexp y:Zmx:=Ztrunc (scaled_mantissa beta fexp x):Zmy:=Ztrunc (scaled_mantissa beta fexp y):ZHexy:(ey <= ex)%ZH0:(x - IZR n * y)%R = F2R {| Fnum := mx * beta ^ (ex - ey) - n * my; Fexp := ey |}H3:(mx * beta ^ (ex - ey) - n * my)%Z <> 0%Z(0 < Rabs y)%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(1 < n)%Zex:=cexp beta fexp x:Zey:=cexp beta fexp y:Zmx:=Ztrunc (scaled_mantissa beta fexp x):Zmy:=Ztrunc (scaled_mantissa beta fexp y):ZHexy:(ey <= ex)%ZH0:(x - IZR n * y)%R = F2R {| Fnum := mx * beta ^ (ex - ey) - n * my; Fexp := ey |}H3:(mx * beta ^ (ex - ey) - n * my)%Z <> 0%Z(/ Rabs y * Rabs (x - IZR n * y) <= / Rabs y * Rabs y)%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(1 < n)%Zex:=cexp beta fexp x:Zey:=cexp beta fexp y:Zmx:=Ztrunc (scaled_mantissa beta fexp x):Zmy:=Ztrunc (scaled_mantissa beta fexp y):ZHexy:(ex < ey)%Zformat (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 < n)%Z1%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 <= n)%Z0%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(1 < n)%Zex:=cexp beta fexp x:Zey:=cexp beta fexp y:Zmx:=Ztrunc (scaled_mantissa beta fexp x):Zmy:=Ztrunc (scaled_mantissa beta fexp y):ZHexy:(ey <= ex)%ZH0:(x - IZR n * y)%R = F2R {| Fnum := mx * beta ^ (ex - ey) - n * my; Fexp := ey |}H3:(mx * beta ^ (ex - ey) - n * my)%Z <> 0%Zy <> 0%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(1 < n)%Zex:=cexp beta fexp x:Zey:=cexp beta fexp y:Zmx:=Ztrunc (scaled_mantissa beta fexp x):Zmy:=Ztrunc (scaled_mantissa beta fexp y):ZHexy:(ey <= ex)%ZH0:(x - IZR n * y)%R = F2R {| Fnum := mx * beta ^ (ex - ey) - n * my; Fexp := ey |}H3:(mx * beta ^ (ex - ey) - n * my)%Z <> 0%Z(/ Rabs y * Rabs (x - IZR n * y) <= / Rabs y * Rabs y)%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(1 < n)%Zex:=cexp beta fexp x:Zey:=cexp beta fexp y:Zmx:=Ztrunc (scaled_mantissa beta fexp x):Zmy:=Ztrunc (scaled_mantissa beta fexp y):ZHexy:(ex < ey)%Zformat (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 < n)%Z1%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 <= n)%Z0%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(1 < n)%Zex:=cexp beta fexp x:Zey:=cexp beta fexp y:Zmx:=Ztrunc (scaled_mantissa beta fexp x):Zmy:=Ztrunc (scaled_mantissa beta fexp y):ZHexy:(ey <= ex)%ZH0:(x - IZR n * y)%R = F2R {| Fnum := mx * beta ^ (ex - ey) - n * my; Fexp := ey |}H3:(mx * beta ^ (ex - ey) - n * my)%Z <> 0%Z(/ Rabs y * Rabs (x - IZR n * y) <= / Rabs y * Rabs y)%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(1 < n)%Zex:=cexp beta fexp x:Zey:=cexp beta fexp y:Zmx:=Ztrunc (scaled_mantissa beta fexp x):Zmy:=Ztrunc (scaled_mantissa beta fexp y):ZHexy:(ex < ey)%Zformat (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 < n)%Z1%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 <= n)%Z0%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(1 < n)%Zex:=cexp beta fexp x:Zey:=cexp beta fexp y:Zmx:=Ztrunc (scaled_mantissa beta fexp x):Zmy:=Ztrunc (scaled_mantissa beta fexp y):ZHexy:(ey <= ex)%ZH0:(x - IZR n * y)%R = F2R {| Fnum := mx * beta ^ (ex - ey) - n * my; Fexp := ey |}H3:(mx * beta ^ (ex - ey) - n * my)%Z <> 0%Z(/ Rabs y * Rabs (x - IZR n * y) <= 1)%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(1 < n)%Zex:=cexp beta fexp x:Zey:=cexp beta fexp y:Zmx:=Ztrunc (scaled_mantissa beta fexp x):Zmy:=Ztrunc (scaled_mantissa beta fexp y):ZHexy:(ey <= ex)%ZH0:(x - IZR n * y)%R = F2R {| Fnum := mx * beta ^ (ex - ey) - n * my; Fexp := ey |}H3:(mx * beta ^ (ex - ey) - n * my)%Z <> 0%ZRabs y <> 0%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(1 < n)%Zex:=cexp beta fexp x:Zey:=cexp beta fexp y:Zmx:=Ztrunc (scaled_mantissa beta fexp x):Zmy:=Ztrunc (scaled_mantissa beta fexp y):ZHexy:(ex < ey)%Zformat (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 < n)%Z1%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 <= n)%Z0%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(1 < n)%Zex:=cexp beta fexp x:Zey:=cexp beta fexp y:Zmx:=Ztrunc (scaled_mantissa beta fexp x):Zmy:=Ztrunc (scaled_mantissa beta fexp y):ZHexy:(ey <= ex)%ZH0:(x - IZR n * y)%R = F2R {| Fnum := mx * beta ^ (ex - ey) - n * my; Fexp := ey |}H3:(mx * beta ^ (ex - ey) - n * my)%Z <> 0%Z(/ Rabs y * Rabs (x - IZR n * y) <= 1)%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(1 < n)%Zex:=cexp beta fexp x:Zey:=cexp beta fexp y:Zmx:=Ztrunc (scaled_mantissa beta fexp x):Zmy:=Ztrunc (scaled_mantissa beta fexp y):ZHexy:(ey <= ex)%ZH0:(x - IZR n * y)%R = F2R {| Fnum := mx * beta ^ (ex - ey) - n * my; Fexp := ey |}H3:(mx * beta ^ (ex - ey) - n * my)%Z <> 0%Zy <> 0%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(1 < n)%Zex:=cexp beta fexp x:Zey:=cexp beta fexp y:Zmx:=Ztrunc (scaled_mantissa beta fexp x):Zmy:=Ztrunc (scaled_mantissa beta fexp y):ZHexy:(ex < ey)%Zformat (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 < n)%Z1%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 <= n)%Z0%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(1 < n)%Zex:=cexp beta fexp x:Zey:=cexp beta fexp y:Zmx:=Ztrunc (scaled_mantissa beta fexp x):Zmy:=Ztrunc (scaled_mantissa beta fexp y):ZHexy:(ey <= ex)%ZH0:(x - IZR n * y)%R = F2R {| Fnum := mx * beta ^ (ex - ey) - n * my; Fexp := ey |}H3:(mx * beta ^ (ex - ey) - n * my)%Z <> 0%Z(/ Rabs y * Rabs (x - IZR n * y) <= 1)%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(1 < n)%Zex:=cexp beta fexp x:Zey:=cexp beta fexp y:Zmx:=Ztrunc (scaled_mantissa beta fexp x):Zmy:=Ztrunc (scaled_mantissa beta fexp y):ZHexy:(ex < ey)%Zformat (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 < n)%Z1%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 <= n)%Z0%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(1 < n)%Zex:=cexp beta fexp x:Zey:=cexp beta fexp y:Zmx:=Ztrunc (scaled_mantissa beta fexp x):Zmy:=Ztrunc (scaled_mantissa beta fexp y):ZHexy:(ey <= ex)%ZH0:(x - IZR n * y)%R = F2R {| Fnum := mx * beta ^ (ex - ey) - n * my; Fexp := ey |}H3:(mx * beta ^ (ex - ey) - n * my)%Z <> 0%Z(Rabs (/ y) * Rabs (x - IZR n * y) <= 1)%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(1 < n)%Zex:=cexp beta fexp x:Zey:=cexp beta fexp y:Zmx:=Ztrunc (scaled_mantissa beta fexp x):Zmy:=Ztrunc (scaled_mantissa beta fexp y):ZHexy:(ey <= ex)%ZH0:(x - IZR n * y)%R = F2R {| Fnum := mx * beta ^ (ex - ey) - n * my; Fexp := ey |}H3:(mx * beta ^ (ex - ey) - n * my)%Z <> 0%Zy <> 0%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(1 < n)%Zex:=cexp beta fexp x:Zey:=cexp beta fexp y:Zmx:=Ztrunc (scaled_mantissa beta fexp x):Zmy:=Ztrunc (scaled_mantissa beta fexp y):ZHexy:(ex < ey)%Zformat (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 < n)%Z1%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 <= n)%Z0%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(1 < n)%Zex:=cexp beta fexp x:Zey:=cexp beta fexp y:Zmx:=Ztrunc (scaled_mantissa beta fexp x):Zmy:=Ztrunc (scaled_mantissa beta fexp y):ZHexy:(ey <= ex)%ZH0:(x - IZR n * y)%R = F2R {| Fnum := mx * beta ^ (ex - ey) - n * my; Fexp := ey |}H3:(mx * beta ^ (ex - ey) - n * my)%Z <> 0%Z(Rabs (/ y) * Rabs (x - IZR n * y) <= 1)%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(1 < n)%Zex:=cexp beta fexp x:Zey:=cexp beta fexp y:Zmx:=Ztrunc (scaled_mantissa beta fexp x):Zmy:=Ztrunc (scaled_mantissa beta fexp y):ZHexy:(ex < ey)%Zformat (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 < n)%Z1%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 <= n)%Z0%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(1 < n)%Zex:=cexp beta fexp x:Zey:=cexp beta fexp y:Zmx:=Ztrunc (scaled_mantissa beta fexp x):Zmy:=Ztrunc (scaled_mantissa beta fexp y):ZHexy:(ey <= ex)%ZH0:(x - IZR n * y)%R = F2R {| Fnum := mx * beta ^ (ex - ey) - n * my; Fexp := ey |}H3:(mx * beta ^ (ex - ey) - n * my)%Z <> 0%Z(Rabs (/ y * (x - IZR n * y)) <= 1)%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(1 < n)%Zex:=cexp beta fexp x:Zey:=cexp beta fexp y:Zmx:=Ztrunc (scaled_mantissa beta fexp x):Zmy:=Ztrunc (scaled_mantissa beta fexp y):ZHexy:(ex < ey)%Zformat (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 < n)%Z1%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 <= n)%Z0%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(1 < n)%Zex:=cexp beta fexp x:Zey:=cexp beta fexp y:Zmx:=Ztrunc (scaled_mantissa beta fexp x):Zmy:=Ztrunc (scaled_mantissa beta fexp y):ZHexy:(ey <= ex)%ZH0:(x - IZR n * y)%R = F2R {| Fnum := mx * beta ^ (ex - ey) - n * my; Fexp := ey |}H3:(mx * beta ^ (ex - ey) - n * my)%Z <> 0%Z(Rabs (- (IZR n - x / y)) <= 1)%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(1 < n)%Zex:=cexp beta fexp x:Zey:=cexp beta fexp y:Zmx:=Ztrunc (scaled_mantissa beta fexp x):Zmy:=Ztrunc (scaled_mantissa beta fexp y):ZHexy:(ey <= ex)%ZH0:(x - IZR n * y)%R = F2R {| Fnum := mx * beta ^ (ex - ey) - n * my; Fexp := ey |}H3:(mx * beta ^ (ex - ey) - n * my)%Z <> 0%Z(- (IZR n - x / y))%R = (/ y * (x - IZR n * y))%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(1 < n)%Zex:=cexp beta fexp x:Zey:=cexp beta fexp y:Zmx:=Ztrunc (scaled_mantissa beta fexp x):Zmy:=Ztrunc (scaled_mantissa beta fexp y):ZHexy:(ex < ey)%Zformat (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 < n)%Z1%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 <= n)%Z0%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(1 < n)%Zex:=cexp beta fexp x:Zey:=cexp beta fexp y:Zmx:=Ztrunc (scaled_mantissa beta fexp x):Zmy:=Ztrunc (scaled_mantissa beta fexp y):ZHexy:(ey <= ex)%ZH0:(x - IZR n * y)%R = F2R {| Fnum := mx * beta ^ (ex - ey) - n * my; Fexp := ey |}H3:(mx * beta ^ (ex - ey) - n * my)%Z <> 0%Z(Rabs (IZR n - x / y) <= 1)%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(1 < n)%Zex:=cexp beta fexp x:Zey:=cexp beta fexp y:Zmx:=Ztrunc (scaled_mantissa beta fexp x):Zmy:=Ztrunc (scaled_mantissa beta fexp y):ZHexy:(ey <= ex)%ZH0:(x - IZR n * y)%R = F2R {| Fnum := mx * beta ^ (ex - ey) - n * my; Fexp := ey |}H3:(mx * beta ^ (ex - ey) - n * my)%Z <> 0%Z(- (IZR n - x / y))%R = (/ y * (x - IZR n * y))%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(1 < n)%Zex:=cexp beta fexp x:Zey:=cexp beta fexp y:Zmx:=Ztrunc (scaled_mantissa beta fexp x):Zmy:=Ztrunc (scaled_mantissa beta fexp y):ZHexy:(ex < ey)%Zformat (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 < n)%Z1%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 <= n)%Z0%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(1 < n)%Zex:=cexp beta fexp x:Zey:=cexp beta fexp y:Zmx:=Ztrunc (scaled_mantissa beta fexp x):Zmy:=Ztrunc (scaled_mantissa beta fexp y):ZHexy:(ey <= ex)%ZH0:(x - IZR n * y)%R = F2R {| Fnum := mx * beta ^ (ex - ey) - n * my; Fexp := ey |}H3:(mx * beta ^ (ex - ey) - n * my)%Z <> 0%Z(Rabs (round beta (FIX_exp 0) rnd (x / y) - x / y) <= 1)%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(1 < n)%Zex:=cexp beta fexp x:Zey:=cexp beta fexp y:Zmx:=Ztrunc (scaled_mantissa beta fexp x):Zmy:=Ztrunc (scaled_mantissa beta fexp y):ZHexy:(ey <= ex)%ZH0:(x - IZR n * y)%R = F2R {| Fnum := mx * beta ^ (ex - ey) - n * my; Fexp := ey |}H3:(mx * beta ^ (ex - ey) - n * my)%Z <> 0%Z(- (IZR n - x / y))%R = (/ y * (x - IZR n * y))%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(1 < n)%Zex:=cexp beta fexp x:Zey:=cexp beta fexp y:Zmx:=Ztrunc (scaled_mantissa beta fexp x):Zmy:=Ztrunc (scaled_mantissa beta fexp y):ZHexy:(ex < ey)%Zformat (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 < n)%Z1%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 <= n)%Z0%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(1 < n)%Zex:=cexp beta fexp x:Zey:=cexp beta fexp y:Zmx:=Ztrunc (scaled_mantissa beta fexp x):Zmy:=Ztrunc (scaled_mantissa beta fexp y):ZHexy:(ey <= ex)%ZH0:(x - IZR n * y)%R = F2R {| Fnum := mx * beta ^ (ex - ey) - n * my; Fexp := ey |}H3:(mx * beta ^ (ex - ey) - n * my)%Z <> 0%Z(ulp beta (FIX_exp 0) (x / y) <= 1)%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(1 < n)%Zex:=cexp beta fexp x:Zey:=cexp beta fexp y:Zmx:=Ztrunc (scaled_mantissa beta fexp x):Zmy:=Ztrunc (scaled_mantissa beta fexp y):ZHexy:(ey <= ex)%ZH0:(x - IZR n * y)%R = F2R {| Fnum := mx * beta ^ (ex - ey) - n * my; Fexp := ey |}H3:(mx * beta ^ (ex - ey) - n * my)%Z <> 0%Z(- (IZR n - x / y))%R = (/ y * (x - IZR n * y))%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(1 < n)%Zex:=cexp beta fexp x:Zey:=cexp beta fexp y:Zmx:=Ztrunc (scaled_mantissa beta fexp x):Zmy:=Ztrunc (scaled_mantissa beta fexp y):ZHexy:(ex < ey)%Zformat (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 < n)%Z1%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 <= n)%Z0%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(1 < n)%Zex:=cexp beta fexp x:Zey:=cexp beta fexp y:Zmx:=Ztrunc (scaled_mantissa beta fexp x):Zmy:=Ztrunc (scaled_mantissa beta fexp y):ZHexy:(ey <= ex)%ZH0:(x - IZR n * y)%R = F2R {| Fnum := mx * beta ^ (ex - ey) - n * my; Fexp := ey |}H3:(mx * beta ^ (ex - ey) - n * my)%Z <> 0%Z(bpow 0 <= 1)%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(1 < n)%Zex:=cexp beta fexp x:Zey:=cexp beta fexp y:Zmx:=Ztrunc (scaled_mantissa beta fexp x):Zmy:=Ztrunc (scaled_mantissa beta fexp y):ZHexy:(ey <= ex)%ZH0:(x - IZR n * y)%R = F2R {| Fnum := mx * beta ^ (ex - ey) - n * my; Fexp := ey |}H3:(mx * beta ^ (ex - ey) - n * my)%Z <> 0%Z(- (IZR n - x / y))%R = (/ y * (x - IZR n * y))%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(1 < n)%Zex:=cexp beta fexp x:Zey:=cexp beta fexp y:Zmx:=Ztrunc (scaled_mantissa beta fexp x):Zmy:=Ztrunc (scaled_mantissa beta fexp y):ZHexy:(ex < ey)%Zformat (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 < n)%Z1%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 <= n)%Z0%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(1 < n)%Zex:=cexp beta fexp x:Zey:=cexp beta fexp y:Zmx:=Ztrunc (scaled_mantissa beta fexp x):Zmy:=Ztrunc (scaled_mantissa beta fexp y):ZHexy:(ey <= ex)%ZH0:(x - IZR n * y)%R = F2R {| Fnum := mx * beta ^ (ex - ey) - n * my; Fexp := ey |}H3:(mx * beta ^ (ex - ey) - n * my)%Z <> 0%Z(- (IZR n - x / y))%R = (/ y * (x - IZR n * y))%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(1 < n)%Zex:=cexp beta fexp x:Zey:=cexp beta fexp y:Zmx:=Ztrunc (scaled_mantissa beta fexp x):Zmy:=Ztrunc (scaled_mantissa beta fexp y):ZHexy:(ex < ey)%Zformat (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 < n)%Z1%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 <= n)%Z0%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(1 < n)%Zex:=cexp beta fexp x:Zey:=cexp beta fexp y:Zmx:=Ztrunc (scaled_mantissa beta fexp x):Zmy:=Ztrunc (scaled_mantissa beta fexp y):ZHexy:(ey <= ex)%ZH0:(x - IZR n * y)%R = F2R {| Fnum := mx * beta ^ (ex - ey) - n * my; Fexp := ey |}H3:(mx * beta ^ (ex - ey) - n * my)%Z <> 0%Zy <> 0%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(1 < n)%Zex:=cexp beta fexp x:Zey:=cexp beta fexp y:Zmx:=Ztrunc (scaled_mantissa beta fexp x):Zmy:=Ztrunc (scaled_mantissa beta fexp y):ZHexy:(ex < ey)%Zformat (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 < n)%Z1%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 <= n)%Z0%Z = n -> format (x - IZR (rnd (x / y)) * y)(* ex < ey: impossible as 1 < n *)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(1 < n)%Zex:=cexp beta fexp x:Zey:=cexp beta fexp y:Zmx:=Ztrunc (scaled_mantissa beta fexp x):Zmy:=Ztrunc (scaled_mantissa beta fexp y):ZHexy:(ex < ey)%Zformat (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 < n)%Z1%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 <= n)%Z0%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(1 < n)%Zex:=cexp beta fexp x:Zey:=cexp beta fexp y:Zmx:=Ztrunc (scaled_mantissa beta fexp x):Zmy:=Ztrunc (scaled_mantissa beta fexp y):ZHexy:(ex < ey)%Z~ (1 < n)%Zbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 < n)%Z1%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 <= n)%Z0%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(1 < n)%Zex:=cexp beta fexp x:Zey:=cexp beta fexp y:Zmx:=Ztrunc (scaled_mantissa beta fexp x):Zmy:=Ztrunc (scaled_mantissa beta fexp y):ZHexy:(ex < ey)%Z(n <= 1)%Zbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 < n)%Z1%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 <= n)%Z0%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(1 < n)%Zex:=cexp beta fexp x:Zey:=cexp beta fexp y:Zmx:=Ztrunc (scaled_mantissa beta fexp x):Zmy:=Ztrunc (scaled_mantissa beta fexp y):ZHexy:(ex < ey)%Z(round beta (FIX_exp 0) rnd (x / y) <= 1)%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 < n)%Z1%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 <= n)%Z0%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(1 < n)%Zex:=cexp beta fexp x:Zey:=cexp beta fexp y:Zmx:=Ztrunc (scaled_mantissa beta fexp x):Zmy:=Ztrunc (scaled_mantissa beta fexp y):ZHexy:(ex < ey)%Zgeneric_format beta (FIX_exp 0) 1beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(1 < n)%Zex:=cexp beta fexp x:Zey:=cexp beta fexp y:Zmx:=Ztrunc (scaled_mantissa beta fexp x):Zmy:=Ztrunc (scaled_mantissa beta fexp y):ZHexy:(ex < ey)%Z(x / y <= 1)%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 < n)%Z1%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 <= n)%Z0%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(1 < n)%Zex:=cexp beta fexp x:Zey:=cexp beta fexp y:Zmx:=Ztrunc (scaled_mantissa beta fexp x):Zmy:=Ztrunc (scaled_mantissa beta fexp y):ZHexy:(ex < ey)%ZFIX_format beta 0 1beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(1 < n)%Zex:=cexp beta fexp x:Zey:=cexp beta fexp y:Zmx:=Ztrunc (scaled_mantissa beta fexp x):Zmy:=Ztrunc (scaled_mantissa beta fexp y):ZHexy:(ex < ey)%Z(x / y <= 1)%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 < n)%Z1%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 <= n)%Z0%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(1 < n)%Zex:=cexp beta fexp x:Zey:=cexp beta fexp y:Zmx:=Ztrunc (scaled_mantissa beta fexp x):Zmy:=Ztrunc (scaled_mantissa beta fexp y):ZHexy:(ex < ey)%Z1%R = F2R {| Fnum := 1; Fexp := 0 |}beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(1 < n)%Zex:=cexp beta fexp x:Zey:=cexp beta fexp y:Zmx:=Ztrunc (scaled_mantissa beta fexp x):Zmy:=Ztrunc (scaled_mantissa beta fexp y):ZHexy:(ex < ey)%Z(x / y <= 1)%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 < n)%Z1%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 <= n)%Z0%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(1 < n)%Zex:=cexp beta fexp x:Zey:=cexp beta fexp y:Zmx:=Ztrunc (scaled_mantissa beta fexp x):Zmy:=Ztrunc (scaled_mantissa beta fexp y):ZHexy:(ex < ey)%Z(x / y <= 1)%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 < n)%Z1%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 <= n)%Z0%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(1 < n)%Zex:=cexp beta fexp x:Zey:=cexp beta fexp y:Zmx:=Ztrunc (scaled_mantissa beta fexp x):Zmy:=Ztrunc (scaled_mantissa beta fexp y):ZHexy:(ex < ey)%Z(x / y * y <= 1 * y)%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 < n)%Z1%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 <= n)%Z0%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(1 < n)%Zex:=cexp beta fexp x:Zey:=cexp beta fexp y:Zmx:=Ztrunc (scaled_mantissa beta fexp x):Zmy:=Ztrunc (scaled_mantissa beta fexp y):ZHexy:(ex < ey)%Z(x * (/ y * y) <= 1 * y)%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 < n)%Z1%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 <= n)%Z0%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(1 < n)%Zex:=cexp beta fexp x:Zey:=cexp beta fexp y:Zmx:=Ztrunc (scaled_mantissa beta fexp x):Zmy:=Ztrunc (scaled_mantissa beta fexp y):ZHexy:(ex < ey)%Z(x <= y)%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(1 < n)%Zex:=cexp beta fexp x:Zey:=cexp beta fexp y:Zmx:=Ztrunc (scaled_mantissa beta fexp x):Zmy:=Ztrunc (scaled_mantissa beta fexp y):ZHexy:(ex < ey)%Zy <> 0%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 < n)%Z1%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 <= n)%Z0%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(1 < n)%Zex:=cexp beta fexp x:Zey:=cexp beta fexp y:Zmx:=Ztrunc (scaled_mantissa beta fexp x):Zmy:=Ztrunc (scaled_mantissa beta fexp y):ZHexy:(ex < ey)%Z(x <= y)%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 < n)%Z1%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 <= n)%Z0%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(1 < n)%Zex:=cexp beta fexp x:Zey:=cexp beta fexp y:Zmx:=Ztrunc (scaled_mantissa beta fexp x):Zmy:=Ztrunc (scaled_mantissa beta fexp y):ZHexy:(ex < ey)%Z(mag beta x < mag beta y)%Zbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(1 < n)%Zex:=cexp beta fexp x:Zey:=cexp beta fexp y:Zmx:=Ztrunc (scaled_mantissa beta fexp x):Zmy:=Ztrunc (scaled_mantissa beta fexp y):ZHexy:(ex < ey)%ZH0:(mag beta x < mag beta y)%Z(x <= y)%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 < n)%Z1%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 <= n)%Z0%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(1 < n)%Zex:=cexp beta fexp x:Zey:=cexp beta fexp y:Zmx:=Ztrunc (scaled_mantissa beta fexp x):Zmy:=Ztrunc (scaled_mantissa beta fexp y):ZHexy:(ex < ey)%Z(mag beta y <= mag beta x)%Z -> (mag beta x < mag beta y)%Zbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(1 < n)%Zex:=cexp beta fexp x:Zey:=cexp beta fexp y:Zmx:=Ztrunc (scaled_mantissa beta fexp x):Zmy:=Ztrunc (scaled_mantissa beta fexp y):ZHexy:(ex < ey)%ZH0:(mag beta x < mag beta y)%Z(x <= y)%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 < n)%Z1%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 <= n)%Z0%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zx, y:Rex:=cexp beta fexp x:Zey:=cexp beta fexp y:ZHexy:(ex < ey)%ZJ:(fexp (mag beta y) <= fexp (mag beta x))%Z(mag beta x < mag beta y)%Zbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(1 < n)%Zex:=cexp beta fexp x:Zey:=cexp beta fexp y:Zmx:=Ztrunc (scaled_mantissa beta fexp x):Zmy:=Ztrunc (scaled_mantissa beta fexp y):ZHexy:(ex < ey)%ZH0:(mag beta x < mag beta y)%Z(x <= y)%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 < n)%Z1%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 <= n)%Z0%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(1 < n)%Zex:=cexp beta fexp x:Zey:=cexp beta fexp y:Zmx:=Ztrunc (scaled_mantissa beta fexp x):Zmy:=Ztrunc (scaled_mantissa beta fexp y):ZHexy:(ex < ey)%ZH0:(mag beta x < mag beta y)%Z(x <= y)%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 < n)%Z1%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 <= n)%Z0%Z = n -> format (x - IZR (rnd (x / y)) * y)(* n = 1 -> Sterbenz + rnd_small *)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 < n)%Z1%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 <= n)%Z0%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 < n)%ZHn':1%Z = nformat (x - 1 * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 <= n)%Z0%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 < n)%ZHn':1%Z = nformat (x - y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 <= n)%Z0%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 < n)%ZHn':1%Z = nHx':(0 < x)%Rformat (x - y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 < n)%ZHn':1%Z = nHx':0%R = xformat (x - y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 <= n)%Z0%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 < n)%ZHn':1%Z = nHx':(0 < x)%R(0 < x / y)%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 < n)%ZHn':1%Z = nHx':(0 < x)%RJ:(0 < x / y)%Rformat (x - y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 < n)%ZHn':1%Z = nHx':0%R = xformat (x - y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 <= n)%Z0%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 < n)%ZHn':1%Z = nHx':(0 < x)%RJ:(0 < x / y)%Rformat (x - y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 < n)%ZHn':1%Z = nHx':0%R = xformat (x - y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 <= n)%Z0%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 < n)%ZHn':1%Z = nHx':(0 < x)%RJ:(0 < x / y)%R(y / 2 <= x <= 2 * y)%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 < n)%ZHn':1%Z = nHx':0%R = xformat (x - y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 <= n)%Z0%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 < n)%ZHn':1%Z = nHx':(0 < x)%RJ:(0 < x / y)%R(Rabs (1 - x / y) < 1)%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 < n)%ZHn':1%Z = nHx':(0 < x)%RJ:(0 < x / y)%RH0:(Rabs (1 - x / y) < 1)%R(y / 2 <= x <= 2 * y)%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 < n)%ZHn':1%Z = nHx':0%R = xformat (x - y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 <= n)%Z0%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 < n)%ZHn':1%Z = nHx':(0 < x)%RJ:(0 < x / y)%R(Rabs (round beta (FIX_exp 0) rnd (x / y) - x / y) < round beta (FIX_exp 0) rnd (x / y))%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 < n)%ZHn':1%Z = nHx':(0 < x)%RJ:(0 < x / y)%RH0:(Rabs (1 - x / y) < 1)%R(y / 2 <= x <= 2 * y)%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 < n)%ZHn':1%Z = nHx':0%R = xformat (x - y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 <= n)%Z0%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 < n)%ZHn':1%Z = nHx':(0 < x)%RJ:(0 < x / y)%R(Rabs (round beta (FIX_exp 0) rnd (x / y) - x / y) < ulp beta (FIX_exp 0) (round beta (FIX_exp 0) rnd (x / y)))%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 < n)%ZHn':1%Z = nHx':(0 < x)%RJ:(0 < x / y)%R(ulp beta (FIX_exp 0) (round beta (FIX_exp 0) rnd (x / y)) <= round beta (FIX_exp 0) rnd (x / y))%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 < n)%ZHn':1%Z = nHx':(0 < x)%RJ:(0 < x / y)%RH0:(Rabs (1 - x / y) < 1)%R(y / 2 <= x <= 2 * y)%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 < n)%ZHn':1%Z = nHx':0%R = xformat (x - y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 <= n)%Z0%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 < n)%ZHn':1%Z = nHx':(0 < x)%RJ:(0 < x / y)%R(x / y)%R <> 0%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 < n)%ZHn':1%Z = nHx':(0 < x)%RJ:(0 < x / y)%R(ulp beta (FIX_exp 0) (round beta (FIX_exp 0) rnd (x / y)) <= round beta (FIX_exp 0) rnd (x / y))%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 < n)%ZHn':1%Z = nHx':(0 < x)%RJ:(0 < x / y)%RH0:(Rabs (1 - x / y) < 1)%R(y / 2 <= x <= 2 * y)%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 < n)%ZHn':1%Z = nHx':0%R = xformat (x - y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 <= n)%Z0%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 < n)%ZHn':1%Z = nHx':(0 < x)%RJ:(0 < x / y)%R(ulp beta (FIX_exp 0) (round beta (FIX_exp 0) rnd (x / y)) <= round beta (FIX_exp 0) rnd (x / y))%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 < n)%ZHn':1%Z = nHx':(0 < x)%RJ:(0 < x / y)%RH0:(Rabs (1 - x / y) < 1)%R(y / 2 <= x <= 2 * y)%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 < n)%ZHn':1%Z = nHx':0%R = xformat (x - y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 <= n)%Z0%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 < n)%ZHn':1%Z = nHx':(0 < x)%RJ:(0 < x / y)%R(bpow 0 <= round beta (FIX_exp 0) rnd (x / y))%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 < n)%ZHn':1%Z = nHx':(0 < x)%RJ:(0 < x / y)%RH0:(Rabs (1 - x / y) < 1)%R(y / 2 <= x <= 2 * y)%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 < n)%ZHn':1%Z = nHx':0%R = xformat (x - y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 <= n)%Z0%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 < n)%ZHn':1%Z = nHx':(0 < x)%RJ:(0 < x / y)%R(bpow 0 <= 1)%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 < n)%ZHn':1%Z = nHx':(0 < x)%RJ:(0 < x / y)%RH0:(Rabs (1 - x / y) < 1)%R(y / 2 <= x <= 2 * y)%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 < n)%ZHn':1%Z = nHx':0%R = xformat (x - y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 <= n)%Z0%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 < n)%ZHn':1%Z = nHx':(0 < x)%RJ:(0 < x / y)%RH0:(Rabs (1 - x / y) < 1)%R(y / 2 <= x <= 2 * y)%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 < n)%ZHn':1%Z = nHx':0%R = xformat (x - y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 <= n)%Z0%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 < n)%ZHn':1%Z = nHx':(0 < x)%RJ:(0 < x / y)%RH0:(- (1) < 1 - x / y < 1)%R(y / 2 <= x <= 2 * y)%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 < n)%ZHn':1%Z = nHx':0%R = xformat (x - y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 <= n)%Z0%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 < n)%ZHn':1%Z = nHx':(0 < x)%RJ:(0 < x / y)%RH0:(- (1) < 1 - x / y < 1)%R(/ y * (y / 2) <= / y * x)%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 < n)%ZHn':1%Z = nHx':(0 < x)%RJ:(0 < x / y)%RH0:(- (1) < 1 - x / y < 1)%R(/ y * x <= / y * (2 * y))%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 < n)%ZHn':1%Z = nHx':0%R = xformat (x - y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 <= n)%Z0%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 < n)%ZHn':1%Z = nHx':(0 < x)%RJ:(0 < x / y)%RH0:(- (1) < 1 - x / y < 1)%R(/ y * y * / 2 <= / y * x)%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 < n)%ZHn':1%Z = nHx':(0 < x)%RJ:(0 < x / y)%RH0:(- (1) < 1 - x / y < 1)%R(/ y * x <= / y * (2 * y))%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 < n)%ZHn':1%Z = nHx':0%R = xformat (x - y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 <= n)%Z0%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 < n)%ZHn':1%Z = nHx':(0 < x)%RJ:(0 < x / y)%RH0:(- (1) < 1 - x / y < 1)%R(1 * / 2 <= / y * x)%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 < n)%ZHn':1%Z = nHx':(0 < x)%RJ:(0 < x / y)%RH0:(- (1) < 1 - x / y < 1)%Ry <> 0%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 < n)%ZHn':1%Z = nHx':(0 < x)%RJ:(0 < x / y)%RH0:(- (1) < 1 - x / y < 1)%R(/ y * x <= / y * (2 * y))%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 < n)%ZHn':1%Z = nHx':0%R = xformat (x - y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 <= n)%Z0%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 < n)%ZHn':1%Z = nHx':(0 < x)%RJ:(0 < x / y)%RH0:(- (1) < 1 - x / y < 1)%R(1 * / 2 <= / y * x)%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 < n)%ZHn':1%Z = nHx':(0 < x)%RJ:(0 < x / y)%RH0:(- (1) < 1 - x / y < 1)%R(/ y * x <= / y * (2 * y))%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 < n)%ZHn':1%Z = nHx':0%R = xformat (x - y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 <= n)%Z0%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 < n)%ZHn':1%Z = nHx':(0 < x)%RJ:(0 < x / y)%RH0:(- (1) < 1 - x / y < 1)%R(/ 2 <= x / y)%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 < n)%ZHn':1%Z = nHx':(0 < x)%RJ:(0 < x / y)%RH0:(- (1) < 1 - x / y < 1)%R(/ y * x <= / y * (2 * y))%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 < n)%ZHn':1%Z = nHx':0%R = xformat (x - y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 <= n)%Z0%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 < n)%ZHn':1%Z = nHx':(0 < x)%RJ:(0 < x / y)%RH0:(- (1) < 1 - x / y < 1)%R(x / y < / 2)%R -> (/ 2 <= x / y)%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 < n)%ZHn':1%Z = nHx':(0 < x)%RJ:(0 < x / y)%RH0:(- (1) < 1 - x / y < 1)%R(/ y * x <= / y * (2 * y))%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 < n)%ZHn':1%Z = nHx':0%R = xformat (x - y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 <= n)%Z0%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 < n)%ZHn':1%Z = nHx':(0 < x)%RJ:(0 < x / y)%RH0:(- (1) < 1 - x / y < 1)%RK:(x / y < / 2)%R(/ 2 <= x / y)%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 < n)%ZHn':1%Z = nHx':(0 < x)%RJ:(0 < x / y)%RH0:(- (1) < 1 - x / y < 1)%R(/ y * x <= / y * (2 * y))%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 < n)%ZHn':1%Z = nHx':0%R = xformat (x - y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 <= n)%Z0%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 < n)%ZHn':1%Z = nHx':(0 < x)%RJ:(0 < x / y)%RH0:(- (1) < 1 - x / y < 1)%RK:(x / y < / 2)%R(n <= 0)%Zbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 < n)%ZHn':1%Z = nHx':(0 < x)%RJ:(0 < x / y)%RH0:(- (1) < 1 - x / y < 1)%R(/ y * x <= / y * (2 * y))%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 < n)%ZHn':1%Z = nHx':0%R = xformat (x - y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 <= n)%Z0%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 < n)%ZHn':1%Z = nHx':(0 < x)%RJ:(0 < x / y)%RH0:(- (1) < 1 - x / y < 1)%RK:(x / y < / 2)%Rn = 0%Zbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 < n)%ZHn':1%Z = nHx':(0 < x)%RJ:(0 < x / y)%RH0:(- (1) < 1 - x / y < 1)%R(/ y * x <= / y * (2 * y))%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 < n)%ZHn':1%Z = nHx':0%R = xformat (x - y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 <= n)%Z0%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 < n)%ZHn':1%Z = nHx':(0 < x)%RJ:(0 < x / y)%RH0:(- (1) < 1 - x / y < 1)%RK:(x / y < / 2)%R(0 < x / y < / 2)%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 < n)%ZHn':1%Z = nHx':(0 < x)%RJ:(0 < x / y)%RH0:(- (1) < 1 - x / y < 1)%R(/ y * x <= / y * (2 * y))%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 < n)%ZHn':1%Z = nHx':0%R = xformat (x - y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 <= n)%Z0%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 < n)%ZHn':1%Z = nHx':(0 < x)%RJ:(0 < x / y)%RH0:(- (1) < 1 - x / y < 1)%R(/ y * x <= / y * (2 * y))%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 < n)%ZHn':1%Z = nHx':0%R = xformat (x - y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 <= n)%Z0%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 < n)%ZHn':1%Z = nHx':(0 < x)%RJ:(0 < x / y)%RH0:(- (1) < 1 - x / y < 1)%R(1 + - (/ y * (2 * y)) <= 1 + - (/ y * x))%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 < n)%ZHn':1%Z = nHx':0%R = xformat (x - y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 <= n)%Z0%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 < n)%ZHn':1%Z = nHx':(0 < x)%RJ:(0 < x / y)%RH0:(- (1) < 1 - x / y < 1)%R(1 + - (/ y * (2 * y)) <= 1 - x / y)%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 < n)%ZHn':1%Z = nHx':(0 < x)%RJ:(0 < x / y)%RH0:(- (1) < 1 - x / y < 1)%R(1 - x / y <= 1 + - (/ y * x))%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 < n)%ZHn':1%Z = nHx':0%R = xformat (x - y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 <= n)%Z0%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 < n)%ZHn':1%Z = nHx':(0 < x)%RJ:(0 < x / y)%RH0:(- (1) < 1 - x / y < 1)%R(1 + - (/ y * (2 * y)) <= 1 - x / y)%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 < n)%ZHn':1%Z = nHx':0%R = xformat (x - y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 <= n)%Z0%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 < n)%ZHn':1%Z = nHx':(0 < x)%RJ:(0 < x / y)%RH0:(- (1) < 1 - x / y < 1)%R(1 + - (/ y * (2 * y)) <= - (1))%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 < n)%ZHn':1%Z = nHx':0%R = xformat (x - y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 <= n)%Z0%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 < n)%ZHn':1%Z = nHx':(0 < x)%RJ:(0 < x / y)%RH0:(- (1) < 1 - x / y < 1)%Ry <> 0%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 < n)%ZHn':1%Z = nHx':0%R = xformat (x - y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 <= n)%Z0%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 < n)%ZHn':1%Z = nHx':0%R = xformat (x - y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 <= n)%Z0%Z = n -> format (x - IZR (rnd (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 < n)%ZHn':1%Z = nHx':0%R = xformat (- y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 <= n)%Z0%Z = n -> format (x - IZR (rnd (x / y)) * y)(* n = 0 *)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:(0 <= n)%Z0%Z = n -> format (x - IZR (rnd (x / y)) * y)now rewrite Rmult_0_l, Rminus_0_r. Qed. End format_REM_aux. Section format_REM. Variable beta : radix. Notation bpow e := (bpow beta e). Variable fexp : Z -> Z. Context { valid_exp : Valid_exp fexp }. Context { monotone_exp : Monotone_exp fexp }. Notation format := (generic_format beta fexp).beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RFx:format xFy:format yHx:(0 <= x)%RHy:(0 < y)%Rrnd_small:(0 < x / y < / 2)%R -> rnd (x / y) = 0%Zn:=rnd (x / y):ZHn:IZR n = round beta (FIX_exp 0) rnd (x / y)H:0%Z = nformat (x - 0 * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexpforall rnd : R -> Z, Valid_rnd rnd -> forall x y : R, ((Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%Z) -> format x -> format y -> format (x - IZR (rnd (x / y)%R) * y)(* assume 0 < y *)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexpforall rnd : R -> Z, Valid_rnd rnd -> forall x y : R, ((Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%Z) -> format x -> format y -> format (x - IZR (rnd (x / y)%R) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexpforall rnd : R -> Z, Valid_rnd rnd -> forall x y : R, ((Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%Z) -> format x -> format y -> (0 < y)%R -> format (x - IZR (rnd (x / y)%R) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexpH:forall rnd : R -> Z, Valid_rnd rnd -> forall x y : R, ((Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%Z) -> format x -> format y -> (0 < y)%R -> format (x - IZR (rnd (x / y)%R) * y)forall rnd : R -> Z, Valid_rnd rnd -> forall x y : R, ((Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%Z) -> format x -> format y -> format (x - IZR (rnd (x / y)%R) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RHrnd:(Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%ZFx:format xFy:format yHy:(0 < y)%Rformat (x - IZR (rnd (x / y)%R) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexpH:forall rnd : R -> Z, Valid_rnd rnd -> forall x y : R, ((Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%Z) -> format x -> format y -> (0 < y)%R -> format (x - IZR (rnd (x / y)%R) * y)forall rnd : R -> Z, Valid_rnd rnd -> forall x y : R, ((Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%Z) -> format x -> format y -> format (x - IZR (rnd (x / y)%R) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RHrnd:(Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%ZFx:format xFy:format yHy:(0 < y)%RHx:(0 <= x)%Rformat (x - IZR (rnd (x / y)%R) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RHrnd:(Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%ZFx:format xFy:format yHy:(0 < y)%RHx:(x < 0)%Rformat (x - IZR (rnd (x / y)%R) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexpH:forall rnd : R -> Z, Valid_rnd rnd -> forall x y : R, ((Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%Z) -> format x -> format y -> (0 < y)%R -> format (x - IZR (rnd (x / y)%R) * y)forall rnd : R -> Z, Valid_rnd rnd -> forall x y : R, ((Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%Z) -> format x -> format y -> format (x - IZR (rnd (x / y)%R) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RHrnd:(Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%ZFx:format xFy:format yHy:(0 < y)%RHx:(0 <= x)%R(0 < x / y < / 2)%R -> rnd (x / y)%R = 0%Zbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RHrnd:(Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%ZFx:format xFy:format yHy:(0 < y)%RHx:(x < 0)%Rformat (x - IZR (rnd (x / y)%R) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexpH:forall rnd : R -> Z, Valid_rnd rnd -> forall x y : R, ((Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%Z) -> format x -> format y -> (0 < y)%R -> format (x - IZR (rnd (x / y)%R) * y)forall rnd : R -> Z, Valid_rnd rnd -> forall x y : R, ((Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%Z) -> format x -> format y -> format (x - IZR (rnd (x / y)%R) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RHrnd:(Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%ZFx:format xFy:format yHy:(0 < y)%RHx:(0 <= x)%RK:(0 < x / y < / 2)%Rrnd (x / y)%R = 0%Zbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RHrnd:(Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%ZFx:format xFy:format yHy:(0 < y)%RHx:(x < 0)%Rformat (x - IZR (rnd (x / y)%R) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexpH:forall rnd : R -> Z, Valid_rnd rnd -> forall x y : R, ((Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%Z) -> format x -> format y -> (0 < y)%R -> format (x - IZR (rnd (x / y)%R) * y)forall rnd : R -> Z, Valid_rnd rnd -> forall x y : R, ((Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%Z) -> format x -> format y -> format (x - IZR (rnd (x / y)%R) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RHrnd:(Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%ZFx:format xFy:format yHy:(0 < y)%RHx:(0 <= x)%RK:(0 < x / y < / 2)%R(Rabs (x / y) < / 2)%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RHrnd:(Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%ZFx:format xFy:format yHy:(0 < y)%RHx:(x < 0)%Rformat (x - IZR (rnd (x / y)%R) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexpH:forall rnd : R -> Z, Valid_rnd rnd -> forall x y : R, ((Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%Z) -> format x -> format y -> (0 < y)%R -> format (x - IZR (rnd (x / y)%R) * y)forall rnd : R -> Z, Valid_rnd rnd -> forall x y : R, ((Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%Z) -> format x -> format y -> format (x - IZR (rnd (x / y)%R) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RHrnd:(Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%ZFx:format xFy:format yHy:(0 < y)%RHx:(0 <= x)%RK:(0 < x / y < / 2)%R(x / y < / 2)%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RHrnd:(Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%ZFx:format xFy:format yHy:(0 < y)%RHx:(0 <= x)%RK:(0 < x / y < / 2)%R(0 <= x / y)%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RHrnd:(Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%ZFx:format xFy:format yHy:(0 < y)%RHx:(x < 0)%Rformat (x - IZR (rnd (x / y)%R) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexpH:forall rnd : R -> Z, Valid_rnd rnd -> forall x y : R, ((Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%Z) -> format x -> format y -> (0 < y)%R -> format (x - IZR (rnd (x / y)%R) * y)forall rnd : R -> Z, Valid_rnd rnd -> forall x y : R, ((Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%Z) -> format x -> format y -> format (x - IZR (rnd (x / y)%R) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RHrnd:(Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%ZFx:format xFy:format yHy:(0 < y)%RHx:(0 <= x)%RK:(0 < x / y < / 2)%R(0 <= x / y)%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RHrnd:(Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%ZFx:format xFy:format yHy:(0 < y)%RHx:(x < 0)%Rformat (x - IZR (rnd (x / y)%R) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexpH:forall rnd : R -> Z, Valid_rnd rnd -> forall x y : R, ((Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%Z) -> format x -> format y -> (0 < y)%R -> format (x - IZR (rnd (x / y)%R) * y)forall rnd : R -> Z, Valid_rnd rnd -> forall x y : R, ((Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%Z) -> format x -> format y -> format (x - IZR (rnd (x / y)%R) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RHrnd:(Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%ZFx:format xFy:format yHy:(0 < y)%RHx:(x < 0)%Rformat (x - IZR (rnd (x / y)%R) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexpH:forall rnd : R -> Z, Valid_rnd rnd -> forall x y : R, ((Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%Z) -> format x -> format y -> (0 < y)%R -> format (x - IZR (rnd (x / y)%R) * y)forall rnd : R -> Z, Valid_rnd rnd -> forall x y : R, ((Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%Z) -> format x -> format y -> format (x - IZR (rnd (x / y)%R) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RHrnd:(Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%ZFx:format xFy:format yHy:(0 < y)%RHx:(x < 0)%Rformat (- (- x - IZR (Zrnd_opp rnd (- x / y)) * y))beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RHrnd:(Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%ZFx:format xFy:format yHy:(0 < y)%RHx:(x < 0)%R(- (- x - IZR (Zrnd_opp rnd (- x / y)) * y))%R = (x - IZR (rnd (x / y)) * y)%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexpH:forall rnd : R -> Z, Valid_rnd rnd -> forall x y : R, ((Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%Z) -> format x -> format y -> (0 < y)%R -> format (x - IZR (rnd (x / y)%R) * y)forall rnd : R -> Z, Valid_rnd rnd -> forall x y : R, ((Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%Z) -> format x -> format y -> format (x - IZR (rnd (x / y)%R) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RHrnd:(Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%ZFx:format xFy:format yHy:(0 < y)%RHx:(x < 0)%Rformat (- x - IZR (Zrnd_opp rnd (- x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RHrnd:(Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%ZFx:format xFy:format yHy:(0 < y)%RHx:(x < 0)%R(- (- x - IZR (Zrnd_opp rnd (- x / y)) * y))%R = (x - IZR (rnd (x / y)) * y)%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexpH:forall rnd : R -> Z, Valid_rnd rnd -> forall x y : R, ((Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%Z) -> format x -> format y -> (0 < y)%R -> format (x - IZR (rnd (x / y)%R) * y)forall rnd : R -> Z, Valid_rnd rnd -> forall x y : R, ((Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%Z) -> format x -> format y -> format (x - IZR (rnd (x / y)%R) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RHrnd:(Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%ZFx:format xFy:format yHy:(0 < y)%RHx:(x < 0)%Rformat (- x)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RHrnd:(Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%ZFx:format xFy:format yHy:(0 < y)%RHx:(x < 0)%R(0 <= - x)%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RHrnd:(Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%ZFx:format xFy:format yHy:(0 < y)%RHx:(x < 0)%R(0 < - x / y < / 2)%R -> Zrnd_opp rnd (- x / y) = 0%Zbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RHrnd:(Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%ZFx:format xFy:format yHy:(0 < y)%RHx:(x < 0)%R(- (- x - IZR (Zrnd_opp rnd (- x / y)) * y))%R = (x - IZR (rnd (x / y)) * y)%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexpH:forall rnd : R -> Z, Valid_rnd rnd -> forall x y : R, ((Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%Z) -> format x -> format y -> (0 < y)%R -> format (x - IZR (rnd (x / y)%R) * y)forall rnd : R -> Z, Valid_rnd rnd -> forall x y : R, ((Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%Z) -> format x -> format y -> format (x - IZR (rnd (x / y)%R) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RHrnd:(Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%ZFx:format xFy:format yHy:(0 < y)%RHx:(x < 0)%R(0 <= - x)%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RHrnd:(Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%ZFx:format xFy:format yHy:(0 < y)%RHx:(x < 0)%R(0 < - x / y < / 2)%R -> Zrnd_opp rnd (- x / y) = 0%Zbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RHrnd:(Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%ZFx:format xFy:format yHy:(0 < y)%RHx:(x < 0)%R(- (- x - IZR (Zrnd_opp rnd (- x / y)) * y))%R = (x - IZR (rnd (x / y)) * y)%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexpH:forall rnd : R -> Z, Valid_rnd rnd -> forall x y : R, ((Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%Z) -> format x -> format y -> (0 < y)%R -> format (x - IZR (rnd (x / y)%R) * y)forall rnd : R -> Z, Valid_rnd rnd -> forall x y : R, ((Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%Z) -> format x -> format y -> format (x - IZR (rnd (x / y)%R) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RHrnd:(Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%ZFx:format xFy:format yHy:(0 < y)%RHx:(x < 0)%R(0 < - x / y < / 2)%R -> Zrnd_opp rnd (- x / y) = 0%Zbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RHrnd:(Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%ZFx:format xFy:format yHy:(0 < y)%RHx:(x < 0)%R(- (- x - IZR (Zrnd_opp rnd (- x / y)) * y))%R = (x - IZR (rnd (x / y)) * y)%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexpH:forall rnd : R -> Z, Valid_rnd rnd -> forall x y : R, ((Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%Z) -> format x -> format y -> (0 < y)%R -> format (x - IZR (rnd (x / y)%R) * y)forall rnd : R -> Z, Valid_rnd rnd -> forall x y : R, ((Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%Z) -> format x -> format y -> format (x - IZR (rnd (x / y)%R) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RHrnd:(Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%ZFx:format xFy:format yHy:(0 < y)%RHx:(x < 0)%R(0 < - (x / y) < / 2)%R -> Zrnd_opp rnd (- (x / y)) = 0%Zbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RHrnd:(Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%ZFx:format xFy:format yHy:(0 < y)%RHx:(x < 0)%R(- (- x - IZR (Zrnd_opp rnd (- x / y)) * y))%R = (x - IZR (rnd (x / y)) * y)%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexpH:forall rnd : R -> Z, Valid_rnd rnd -> forall x y : R, ((Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%Z) -> format x -> format y -> (0 < y)%R -> format (x - IZR (rnd (x / y)%R) * y)forall rnd : R -> Z, Valid_rnd rnd -> forall x y : R, ((Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%Z) -> format x -> format y -> format (x - IZR (rnd (x / y)%R) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RHrnd:(Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%ZFx:format xFy:format yHy:(0 < y)%RHx:(x < 0)%RK:(0 < - (x / y) < / 2)%RZrnd_opp rnd (- (x / y)) = 0%Zbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RHrnd:(Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%ZFx:format xFy:format yHy:(0 < y)%RHx:(x < 0)%R(- (- x - IZR (Zrnd_opp rnd (- x / y)) * y))%R = (x - IZR (rnd (x / y)) * y)%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexpH:forall rnd : R -> Z, Valid_rnd rnd -> forall x y : R, ((Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%Z) -> format x -> format y -> (0 < y)%R -> format (x - IZR (rnd (x / y)%R) * y)forall rnd : R -> Z, Valid_rnd rnd -> forall x y : R, ((Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%Z) -> format x -> format y -> format (x - IZR (rnd (x / y)%R) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RHrnd:(Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%ZFx:format xFy:format yHy:(0 < y)%RHx:(x < 0)%RK:(0 < - (x / y) < / 2)%R(- rnd (- - (x / y))%R)%Z = 0%Zbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RHrnd:(Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%ZFx:format xFy:format yHy:(0 < y)%RHx:(x < 0)%R(- (- x - IZR (Zrnd_opp rnd (- x / y)) * y))%R = (x - IZR (rnd (x / y)) * y)%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexpH:forall rnd : R -> Z, Valid_rnd rnd -> forall x y : R, ((Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%Z) -> format x -> format y -> (0 < y)%R -> format (x - IZR (rnd (x / y)%R) * y)forall rnd : R -> Z, Valid_rnd rnd -> forall x y : R, ((Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%Z) -> format x -> format y -> format (x - IZR (rnd (x / y)%R) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RHrnd:(Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%ZFx:format xFy:format yHy:(0 < y)%RHx:(x < 0)%RK:(0 < - (x / y) < / 2)%R(- 0)%Z = 0%Zbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RHrnd:(Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%ZFx:format xFy:format yHy:(0 < y)%RHx:(x < 0)%RK:(0 < - (x / y) < / 2)%R(Rabs (x / y) < / 2)%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RHrnd:(Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%ZFx:format xFy:format yHy:(0 < y)%RHx:(x < 0)%R(- (- x - IZR (Zrnd_opp rnd (- x / y)) * y))%R = (x - IZR (rnd (x / y)) * y)%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexpH:forall rnd : R -> Z, Valid_rnd rnd -> forall x y : R, ((Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%Z) -> format x -> format y -> (0 < y)%R -> format (x - IZR (rnd (x / y)%R) * y)forall rnd : R -> Z, Valid_rnd rnd -> forall x y : R, ((Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%Z) -> format x -> format y -> format (x - IZR (rnd (x / y)%R) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RHrnd:(Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%ZFx:format xFy:format yHy:(0 < y)%RHx:(x < 0)%RK:(0 < - (x / y) < / 2)%R(Rabs (x / y) < / 2)%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RHrnd:(Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%ZFx:format xFy:format yHy:(0 < y)%RHx:(x < 0)%R(- (- x - IZR (Zrnd_opp rnd (- x / y)) * y))%R = (x - IZR (rnd (x / y)) * y)%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexpH:forall rnd : R -> Z, Valid_rnd rnd -> forall x y : R, ((Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%Z) -> format x -> format y -> (0 < y)%R -> format (x - IZR (rnd (x / y)%R) * y)forall rnd : R -> Z, Valid_rnd rnd -> forall x y : R, ((Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%Z) -> format x -> format y -> format (x - IZR (rnd (x / y)%R) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RHrnd:(Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%ZFx:format xFy:format yHy:(0 < y)%RHx:(x < 0)%RK:(0 < - (x / y) < / 2)%R(- (x / y) < / 2)%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RHrnd:(Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%ZFx:format xFy:format yHy:(0 < y)%RHx:(x < 0)%RK:(0 < - (x / y) < / 2)%R(x / y < 0)%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RHrnd:(Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%ZFx:format xFy:format yHy:(0 < y)%RHx:(x < 0)%R(- (- x - IZR (Zrnd_opp rnd (- x / y)) * y))%R = (x - IZR (rnd (x / y)) * y)%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexpH:forall rnd : R -> Z, Valid_rnd rnd -> forall x y : R, ((Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%Z) -> format x -> format y -> (0 < y)%R -> format (x - IZR (rnd (x / y)%R) * y)forall rnd : R -> Z, Valid_rnd rnd -> forall x y : R, ((Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%Z) -> format x -> format y -> format (x - IZR (rnd (x / y)%R) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RHrnd:(Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%ZFx:format xFy:format yHy:(0 < y)%RHx:(x < 0)%RK:(0 < - (x / y) < / 2)%R(x / y < 0)%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RHrnd:(Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%ZFx:format xFy:format yHy:(0 < y)%RHx:(x < 0)%R(- (- x - IZR (Zrnd_opp rnd (- x / y)) * y))%R = (x - IZR (rnd (x / y)) * y)%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexpH:forall rnd : R -> Z, Valid_rnd rnd -> forall x y : R, ((Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%Z) -> format x -> format y -> (0 < y)%R -> format (x - IZR (rnd (x / y)%R) * y)forall rnd : R -> Z, Valid_rnd rnd -> forall x y : R, ((Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%Z) -> format x -> format y -> format (x - IZR (rnd (x / y)%R) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RHrnd:(Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%ZFx:format xFy:format yHy:(0 < y)%RHx:(x < 0)%RK:(0 < - (x / y) < / 2)%R(- 0 < - (x / y))%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RHrnd:(Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%ZFx:format xFy:format yHy:(0 < y)%RHx:(x < 0)%R(- (- x - IZR (Zrnd_opp rnd (- x / y)) * y))%R = (x - IZR (rnd (x / y)) * y)%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexpH:forall rnd : R -> Z, Valid_rnd rnd -> forall x y : R, ((Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%Z) -> format x -> format y -> (0 < y)%R -> format (x - IZR (rnd (x / y)%R) * y)forall rnd : R -> Z, Valid_rnd rnd -> forall x y : R, ((Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%Z) -> format x -> format y -> format (x - IZR (rnd (x / y)%R) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RHrnd:(Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%ZFx:format xFy:format yHy:(0 < y)%RHx:(x < 0)%R(- (- x - IZR (Zrnd_opp rnd (- x / y)) * y))%R = (x - IZR (rnd (x / y)) * y)%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexpH:forall rnd : R -> Z, Valid_rnd rnd -> forall x y : R, ((Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%Z) -> format x -> format y -> (0 < y)%R -> format (x - IZR (rnd (x / y)%R) * y)forall rnd : R -> Z, Valid_rnd rnd -> forall x y : R, ((Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%Z) -> format x -> format y -> format (x - IZR (rnd (x / y)%R) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RHrnd:(Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%ZFx:format xFy:format yHy:(0 < y)%RHx:(x < 0)%R(- (- x - IZR (- rnd (- (- x / y))) * y))%R = (x - IZR (rnd (x / y)) * y)%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexpH:forall rnd : R -> Z, Valid_rnd rnd -> forall x y : R, ((Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%Z) -> format x -> format y -> (0 < y)%R -> format (x - IZR (rnd (x / y)%R) * y)forall rnd : R -> Z, Valid_rnd rnd -> forall x y : R, ((Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%Z) -> format x -> format y -> format (x - IZR (rnd (x / y)%R) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RHrnd:(Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%ZFx:format xFy:format yHy:(0 < y)%RHx:(x < 0)%R(- (- x - IZR (- rnd (x / y)) * y))%R = (x - IZR (rnd (x / y)) * y)%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexpH:forall rnd : R -> Z, Valid_rnd rnd -> forall x y : R, ((Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%Z) -> format x -> format y -> (0 < y)%R -> format (x - IZR (rnd (x / y)%R) * y)forall rnd : R -> Z, Valid_rnd rnd -> forall x y : R, ((Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%Z) -> format x -> format y -> format (x - IZR (rnd (x / y)%R) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexprnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RHrnd:(Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%ZFx:format xFy:format yHy:(0 < y)%RHx:(x < 0)%R(- (- x - - IZR (rnd (x / y)) * y))%R = (x - IZR (rnd (x / y)) * y)%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexpH:forall rnd : R -> Z, Valid_rnd rnd -> forall x y : R, ((Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%Z) -> format x -> format y -> (0 < y)%R -> format (x - IZR (rnd (x / y)%R) * y)forall rnd : R -> Z, Valid_rnd rnd -> forall x y : R, ((Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%Z) -> format x -> format y -> format (x - IZR (rnd (x / y)%R) * y)(* *)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexpH:forall rnd : R -> Z, Valid_rnd rnd -> forall x y : R, ((Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%Z) -> format x -> format y -> (0 < y)%R -> format (x - IZR (rnd (x / y)%R) * y)forall rnd : R -> Z, Valid_rnd rnd -> forall x y : R, ((Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%Z) -> format x -> format y -> format (x - IZR (rnd (x / y)%R) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexpH:forall rnd0 : R -> Z, Valid_rnd rnd0 -> forall x0 y0 : R, ((Rabs (x0 / y0) < / 2)%R -> rnd0 (x0 / y0)%R = 0%Z) -> format x0 -> format y0 -> (0 < y0)%R -> format (x0 - IZR (rnd0 (x0 / y0)%R) * y0)rnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RHrnd:(Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%ZFx:format xFy:format yformat (x - IZR (rnd (x / y)%R) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexpH:forall rnd0 : R -> Z, Valid_rnd rnd0 -> forall x0 y0 : R, ((Rabs (x0 / y0) < / 2)%R -> rnd0 (x0 / y0)%R = 0%Z) -> format x0 -> format y0 -> (0 < y0)%R -> format (x0 - IZR (rnd0 (x0 / y0)%R) * y0)rnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RHrnd:(Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%ZFx:format xFy:format yHy:(0 <= y)%Rformat (x - IZR (rnd (x / y)%R) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexpH:forall rnd0 : R -> Z, Valid_rnd rnd0 -> forall x0 y0 : R, ((Rabs (x0 / y0) < / 2)%R -> rnd0 (x0 / y0)%R = 0%Z) -> format x0 -> format y0 -> (0 < y0)%R -> format (x0 - IZR (rnd0 (x0 / y0)%R) * y0)rnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RHrnd:(Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%ZFx:format xFy:format yHy:(y < 0)%Rformat (x - IZR (rnd (x / y)%R) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexpH:forall rnd0 : R -> Z, Valid_rnd rnd0 -> forall x0 y0 : R, ((Rabs (x0 / y0) < / 2)%R -> rnd0 (x0 / y0)%R = 0%Z) -> format x0 -> format y0 -> (0 < y0)%R -> format (x0 - IZR (rnd0 (x0 / y0)%R) * y0)rnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RHrnd:(Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%ZFx:format xFy:format yHy:(0 < y)%Rformat (x - IZR (rnd (x / y)%R) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexpH:forall rnd0 : R -> Z, Valid_rnd rnd0 -> forall x0 y0 : R, ((Rabs (x0 / y0) < / 2)%R -> rnd0 (x0 / y0)%R = 0%Z) -> format x0 -> format y0 -> (0 < y0)%R -> format (x0 - IZR (rnd0 (x0 / y0)%R) * y0)rnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RHrnd:(Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%ZFx:format xFy:format yHy:0%R = yformat (x - IZR (rnd (x / y)%R) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexpH:forall rnd0 : R -> Z, Valid_rnd rnd0 -> forall x0 y0 : R, ((Rabs (x0 / y0) < / 2)%R -> rnd0 (x0 / y0)%R = 0%Z) -> format x0 -> format y0 -> (0 < y0)%R -> format (x0 - IZR (rnd0 (x0 / y0)%R) * y0)rnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RHrnd:(Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%ZFx:format xFy:format yHy:(y < 0)%Rformat (x - IZR (rnd (x / y)%R) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexpH:forall rnd0 : R -> Z, Valid_rnd rnd0 -> forall x0 y0 : R, ((Rabs (x0 / y0) < / 2)%R -> rnd0 (x0 / y0)%R = 0%Z) -> format x0 -> format y0 -> (0 < y0)%R -> format (x0 - IZR (rnd0 (x0 / y0)%R) * y0)rnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RHrnd:(Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%ZFx:format xFy:format yHy:0%R = yformat (x - IZR (rnd (x / y)%R) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexpH:forall rnd0 : R -> Z, Valid_rnd rnd0 -> forall x0 y0 : R, ((Rabs (x0 / y0) < / 2)%R -> rnd0 (x0 / y0)%R = 0%Z) -> format x0 -> format y0 -> (0 < y0)%R -> format (x0 - IZR (rnd0 (x0 / y0)%R) * y0)rnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RHrnd:(Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%ZFx:format xFy:format yHy:(y < 0)%Rformat (x - IZR (rnd (x / y)%R) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexpH:forall rnd0 : R -> Z, Valid_rnd rnd0 -> forall x0 y0 : R, ((Rabs (x0 / y0) < / 2)%R -> rnd0 (x0 / y0)%R = 0%Z) -> format x0 -> format y0 -> (0 < y0)%R -> format (x0 - IZR (rnd0 (x0 / y0)%R) * y0)rnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RHrnd:(Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%ZFx:format xFy:format yHy:(y < 0)%Rformat (x - IZR (rnd (x / y)%R) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexpH:forall rnd0 : R -> Z, Valid_rnd rnd0 -> forall x0 y0 : R, ((Rabs (x0 / y0) < / 2)%R -> rnd0 (x0 / y0)%R = 0%Z) -> format x0 -> format y0 -> (0 < y0)%R -> format (x0 - IZR (rnd0 (x0 / y0)%R) * y0)rnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RHrnd:(Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%ZFx:format xFy:format yHy:(y < 0)%Rformat (x - IZR (Zrnd_opp rnd (x / - y)) * - y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexpH:forall rnd0 : R -> Z, Valid_rnd rnd0 -> forall x0 y0 : R, ((Rabs (x0 / y0) < / 2)%R -> rnd0 (x0 / y0)%R = 0%Z) -> format x0 -> format y0 -> (0 < y0)%R -> format (x0 - IZR (rnd0 (x0 / y0)%R) * y0)rnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RHrnd:(Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%ZFx:format xFy:format yHy:(y < 0)%R(IZR (Zrnd_opp rnd (x / - y)) * - y)%R = (IZR (rnd (x / y)) * y)%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexpH:forall rnd0 : R -> Z, Valid_rnd rnd0 -> forall x0 y0 : R, ((Rabs (x0 / y0) < / 2)%R -> rnd0 (x0 / y0)%R = 0%Z) -> format x0 -> format y0 -> (0 < y0)%R -> format (x0 - IZR (rnd0 (x0 / y0)%R) * y0)rnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RHrnd:(Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%ZFx:format xFy:format yHy:(y < 0)%R(Rabs (x / - y) < / 2)%R -> Zrnd_opp rnd (x / - y) = 0%Zbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexpH:forall rnd0 : R -> Z, Valid_rnd rnd0 -> forall x0 y0 : R, ((Rabs (x0 / y0) < / 2)%R -> rnd0 (x0 / y0)%R = 0%Z) -> format x0 -> format y0 -> (0 < y0)%R -> format (x0 - IZR (rnd0 (x0 / y0)%R) * y0)rnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RHrnd:(Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%ZFx:format xFy:format yHy:(y < 0)%Rformat (- y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexpH:forall rnd0 : R -> Z, Valid_rnd rnd0 -> forall x0 y0 : R, ((Rabs (x0 / y0) < / 2)%R -> rnd0 (x0 / y0)%R = 0%Z) -> format x0 -> format y0 -> (0 < y0)%R -> format (x0 - IZR (rnd0 (x0 / y0)%R) * y0)rnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RHrnd:(Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%ZFx:format xFy:format yHy:(y < 0)%R(0 < - y)%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexpH:forall rnd0 : R -> Z, Valid_rnd rnd0 -> forall x0 y0 : R, ((Rabs (x0 / y0) < / 2)%R -> rnd0 (x0 / y0)%R = 0%Z) -> format x0 -> format y0 -> (0 < y0)%R -> format (x0 - IZR (rnd0 (x0 / y0)%R) * y0)rnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RHrnd:(Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%ZFx:format xFy:format yHy:(y < 0)%R(IZR (Zrnd_opp rnd (x / - y)) * - y)%R = (IZR (rnd (x / y)) * y)%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexpH:forall rnd0 : R -> Z, Valid_rnd rnd0 -> forall x0 y0 : R, ((Rabs (x0 / y0) < / 2)%R -> rnd0 (x0 / y0)%R = 0%Z) -> format x0 -> format y0 -> (0 < y0)%R -> format (x0 - IZR (rnd0 (x0 / y0)%R) * y0)rnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RHrnd:(Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%ZFx:format xFy:format yHy:(y < 0)%R(Rabs (- (x / y)) < / 2)%R -> Zrnd_opp rnd (- (x / y)) = 0%Zbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexpH:forall rnd0 : R -> Z, Valid_rnd rnd0 -> forall x0 y0 : R, ((Rabs (x0 / y0) < / 2)%R -> rnd0 (x0 / y0)%R = 0%Z) -> format x0 -> format y0 -> (0 < y0)%R -> format (x0 - IZR (rnd0 (x0 / y0)%R) * y0)rnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RHrnd:(Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%ZFx:format xFy:format yHy:(y < 0)%R(- (x / y))%R = (x / - y)%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexpH:forall rnd0 : R -> Z, Valid_rnd rnd0 -> forall x0 y0 : R, ((Rabs (x0 / y0) < / 2)%R -> rnd0 (x0 / y0)%R = 0%Z) -> format x0 -> format y0 -> (0 < y0)%R -> format (x0 - IZR (rnd0 (x0 / y0)%R) * y0)rnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RHrnd:(Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%ZFx:format xFy:format yHy:(y < 0)%Rformat (- y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexpH:forall rnd0 : R -> Z, Valid_rnd rnd0 -> forall x0 y0 : R, ((Rabs (x0 / y0) < / 2)%R -> rnd0 (x0 / y0)%R = 0%Z) -> format x0 -> format y0 -> (0 < y0)%R -> format (x0 - IZR (rnd0 (x0 / y0)%R) * y0)rnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RHrnd:(Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%ZFx:format xFy:format yHy:(y < 0)%R(0 < - y)%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexpH:forall rnd0 : R -> Z, Valid_rnd rnd0 -> forall x0 y0 : R, ((Rabs (x0 / y0) < / 2)%R -> rnd0 (x0 / y0)%R = 0%Z) -> format x0 -> format y0 -> (0 < y0)%R -> format (x0 - IZR (rnd0 (x0 / y0)%R) * y0)rnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RHrnd:(Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%ZFx:format xFy:format yHy:(y < 0)%R(IZR (Zrnd_opp rnd (x / - y)) * - y)%R = (IZR (rnd (x / y)) * y)%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexpH:forall rnd0 : R -> Z, Valid_rnd rnd0 -> forall x0 y0 : R, ((Rabs (x0 / y0) < / 2)%R -> rnd0 (x0 / y0)%R = 0%Z) -> format x0 -> format y0 -> (0 < y0)%R -> format (x0 - IZR (rnd0 (x0 / y0)%R) * y0)rnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RHrnd:(Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%ZFx:format xFy:format yHy:(y < 0)%RK:(Rabs (- (x / y)) < / 2)%RZrnd_opp rnd (- (x / y)) = 0%Zbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexpH:forall rnd0 : R -> Z, Valid_rnd rnd0 -> forall x0 y0 : R, ((Rabs (x0 / y0) < / 2)%R -> rnd0 (x0 / y0)%R = 0%Z) -> format x0 -> format y0 -> (0 < y0)%R -> format (x0 - IZR (rnd0 (x0 / y0)%R) * y0)rnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RHrnd:(Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%ZFx:format xFy:format yHy:(y < 0)%R(- (x / y))%R = (x / - y)%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexpH:forall rnd0 : R -> Z, Valid_rnd rnd0 -> forall x0 y0 : R, ((Rabs (x0 / y0) < / 2)%R -> rnd0 (x0 / y0)%R = 0%Z) -> format x0 -> format y0 -> (0 < y0)%R -> format (x0 - IZR (rnd0 (x0 / y0)%R) * y0)rnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RHrnd:(Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%ZFx:format xFy:format yHy:(y < 0)%Rformat (- y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexpH:forall rnd0 : R -> Z, Valid_rnd rnd0 -> forall x0 y0 : R, ((Rabs (x0 / y0) < / 2)%R -> rnd0 (x0 / y0)%R = 0%Z) -> format x0 -> format y0 -> (0 < y0)%R -> format (x0 - IZR (rnd0 (x0 / y0)%R) * y0)rnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RHrnd:(Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%ZFx:format xFy:format yHy:(y < 0)%R(0 < - y)%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexpH:forall rnd0 : R -> Z, Valid_rnd rnd0 -> forall x0 y0 : R, ((Rabs (x0 / y0) < / 2)%R -> rnd0 (x0 / y0)%R = 0%Z) -> format x0 -> format y0 -> (0 < y0)%R -> format (x0 - IZR (rnd0 (x0 / y0)%R) * y0)rnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RHrnd:(Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%ZFx:format xFy:format yHy:(y < 0)%R(IZR (Zrnd_opp rnd (x / - y)) * - y)%R = (IZR (rnd (x / y)) * y)%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexpH:forall rnd0 : R -> Z, Valid_rnd rnd0 -> forall x0 y0 : R, ((Rabs (x0 / y0) < / 2)%R -> rnd0 (x0 / y0)%R = 0%Z) -> format x0 -> format y0 -> (0 < y0)%R -> format (x0 - IZR (rnd0 (x0 / y0)%R) * y0)rnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RHrnd:(Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%ZFx:format xFy:format yHy:(y < 0)%RK:(Rabs (- (x / y)) < / 2)%R(- rnd (- - (x / y))%R)%Z = 0%Zbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexpH:forall rnd0 : R -> Z, Valid_rnd rnd0 -> forall x0 y0 : R, ((Rabs (x0 / y0) < / 2)%R -> rnd0 (x0 / y0)%R = 0%Z) -> format x0 -> format y0 -> (0 < y0)%R -> format (x0 - IZR (rnd0 (x0 / y0)%R) * y0)rnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RHrnd:(Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%ZFx:format xFy:format yHy:(y < 0)%R(- (x / y))%R = (x / - y)%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexpH:forall rnd0 : R -> Z, Valid_rnd rnd0 -> forall x0 y0 : R, ((Rabs (x0 / y0) < / 2)%R -> rnd0 (x0 / y0)%R = 0%Z) -> format x0 -> format y0 -> (0 < y0)%R -> format (x0 - IZR (rnd0 (x0 / y0)%R) * y0)rnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RHrnd:(Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%ZFx:format xFy:format yHy:(y < 0)%Rformat (- y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexpH:forall rnd0 : R -> Z, Valid_rnd rnd0 -> forall x0 y0 : R, ((Rabs (x0 / y0) < / 2)%R -> rnd0 (x0 / y0)%R = 0%Z) -> format x0 -> format y0 -> (0 < y0)%R -> format (x0 - IZR (rnd0 (x0 / y0)%R) * y0)rnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RHrnd:(Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%ZFx:format xFy:format yHy:(y < 0)%R(0 < - y)%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexpH:forall rnd0 : R -> Z, Valid_rnd rnd0 -> forall x0 y0 : R, ((Rabs (x0 / y0) < / 2)%R -> rnd0 (x0 / y0)%R = 0%Z) -> format x0 -> format y0 -> (0 < y0)%R -> format (x0 - IZR (rnd0 (x0 / y0)%R) * y0)rnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RHrnd:(Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%ZFx:format xFy:format yHy:(y < 0)%R(IZR (Zrnd_opp rnd (x / - y)) * - y)%R = (IZR (rnd (x / y)) * y)%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexpH:forall rnd0 : R -> Z, Valid_rnd rnd0 -> forall x0 y0 : R, ((Rabs (x0 / y0) < / 2)%R -> rnd0 (x0 / y0)%R = 0%Z) -> format x0 -> format y0 -> (0 < y0)%R -> format (x0 - IZR (rnd0 (x0 / y0)%R) * y0)rnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RHrnd:(Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%ZFx:format xFy:format yHy:(y < 0)%RK:(Rabs (- (x / y)) < / 2)%R(- 0)%Z = 0%Zbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexpH:forall rnd0 : R -> Z, Valid_rnd rnd0 -> forall x0 y0 : R, ((Rabs (x0 / y0) < / 2)%R -> rnd0 (x0 / y0)%R = 0%Z) -> format x0 -> format y0 -> (0 < y0)%R -> format (x0 - IZR (rnd0 (x0 / y0)%R) * y0)rnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RHrnd:(Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%ZFx:format xFy:format yHy:(y < 0)%RK:(Rabs (- (x / y)) < / 2)%R(Rabs (x / y) < / 2)%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexpH:forall rnd0 : R -> Z, Valid_rnd rnd0 -> forall x0 y0 : R, ((Rabs (x0 / y0) < / 2)%R -> rnd0 (x0 / y0)%R = 0%Z) -> format x0 -> format y0 -> (0 < y0)%R -> format (x0 - IZR (rnd0 (x0 / y0)%R) * y0)rnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RHrnd:(Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%ZFx:format xFy:format yHy:(y < 0)%R(- (x / y))%R = (x / - y)%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexpH:forall rnd0 : R -> Z, Valid_rnd rnd0 -> forall x0 y0 : R, ((Rabs (x0 / y0) < / 2)%R -> rnd0 (x0 / y0)%R = 0%Z) -> format x0 -> format y0 -> (0 < y0)%R -> format (x0 - IZR (rnd0 (x0 / y0)%R) * y0)rnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RHrnd:(Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%ZFx:format xFy:format yHy:(y < 0)%Rformat (- y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexpH:forall rnd0 : R -> Z, Valid_rnd rnd0 -> forall x0 y0 : R, ((Rabs (x0 / y0) < / 2)%R -> rnd0 (x0 / y0)%R = 0%Z) -> format x0 -> format y0 -> (0 < y0)%R -> format (x0 - IZR (rnd0 (x0 / y0)%R) * y0)rnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RHrnd:(Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%ZFx:format xFy:format yHy:(y < 0)%R(0 < - y)%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexpH:forall rnd0 : R -> Z, Valid_rnd rnd0 -> forall x0 y0 : R, ((Rabs (x0 / y0) < / 2)%R -> rnd0 (x0 / y0)%R = 0%Z) -> format x0 -> format y0 -> (0 < y0)%R -> format (x0 - IZR (rnd0 (x0 / y0)%R) * y0)rnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RHrnd:(Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%ZFx:format xFy:format yHy:(y < 0)%R(IZR (Zrnd_opp rnd (x / - y)) * - y)%R = (IZR (rnd (x / y)) * y)%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexpH:forall rnd0 : R -> Z, Valid_rnd rnd0 -> forall x0 y0 : R, ((Rabs (x0 / y0) < / 2)%R -> rnd0 (x0 / y0)%R = 0%Z) -> format x0 -> format y0 -> (0 < y0)%R -> format (x0 - IZR (rnd0 (x0 / y0)%R) * y0)rnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RHrnd:(Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%ZFx:format xFy:format yHy:(y < 0)%RK:(Rabs (- (x / y)) < / 2)%R(Rabs (x / y) < / 2)%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexpH:forall rnd0 : R -> Z, Valid_rnd rnd0 -> forall x0 y0 : R, ((Rabs (x0 / y0) < / 2)%R -> rnd0 (x0 / y0)%R = 0%Z) -> format x0 -> format y0 -> (0 < y0)%R -> format (x0 - IZR (rnd0 (x0 / y0)%R) * y0)rnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RHrnd:(Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%ZFx:format xFy:format yHy:(y < 0)%R(- (x / y))%R = (x / - y)%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexpH:forall rnd0 : R -> Z, Valid_rnd rnd0 -> forall x0 y0 : R, ((Rabs (x0 / y0) < / 2)%R -> rnd0 (x0 / y0)%R = 0%Z) -> format x0 -> format y0 -> (0 < y0)%R -> format (x0 - IZR (rnd0 (x0 / y0)%R) * y0)rnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RHrnd:(Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%ZFx:format xFy:format yHy:(y < 0)%Rformat (- y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexpH:forall rnd0 : R -> Z, Valid_rnd rnd0 -> forall x0 y0 : R, ((Rabs (x0 / y0) < / 2)%R -> rnd0 (x0 / y0)%R = 0%Z) -> format x0 -> format y0 -> (0 < y0)%R -> format (x0 - IZR (rnd0 (x0 / y0)%R) * y0)rnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RHrnd:(Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%ZFx:format xFy:format yHy:(y < 0)%R(0 < - y)%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexpH:forall rnd0 : R -> Z, Valid_rnd rnd0 -> forall x0 y0 : R, ((Rabs (x0 / y0) < / 2)%R -> rnd0 (x0 / y0)%R = 0%Z) -> format x0 -> format y0 -> (0 < y0)%R -> format (x0 - IZR (rnd0 (x0 / y0)%R) * y0)rnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RHrnd:(Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%ZFx:format xFy:format yHy:(y < 0)%R(IZR (Zrnd_opp rnd (x / - y)) * - y)%R = (IZR (rnd (x / y)) * y)%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexpH:forall rnd0 : R -> Z, Valid_rnd rnd0 -> forall x0 y0 : R, ((Rabs (x0 / y0) < / 2)%R -> rnd0 (x0 / y0)%R = 0%Z) -> format x0 -> format y0 -> (0 < y0)%R -> format (x0 - IZR (rnd0 (x0 / y0)%R) * y0)rnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RHrnd:(Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%ZFx:format xFy:format yHy:(y < 0)%R(- (x / y))%R = (x / - y)%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexpH:forall rnd0 : R -> Z, Valid_rnd rnd0 -> forall x0 y0 : R, ((Rabs (x0 / y0) < / 2)%R -> rnd0 (x0 / y0)%R = 0%Z) -> format x0 -> format y0 -> (0 < y0)%R -> format (x0 - IZR (rnd0 (x0 / y0)%R) * y0)rnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RHrnd:(Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%ZFx:format xFy:format yHy:(y < 0)%Rformat (- y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexpH:forall rnd0 : R -> Z, Valid_rnd rnd0 -> forall x0 y0 : R, ((Rabs (x0 / y0) < / 2)%R -> rnd0 (x0 / y0)%R = 0%Z) -> format x0 -> format y0 -> (0 < y0)%R -> format (x0 - IZR (rnd0 (x0 / y0)%R) * y0)rnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RHrnd:(Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%ZFx:format xFy:format yHy:(y < 0)%R(0 < - y)%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexpH:forall rnd0 : R -> Z, Valid_rnd rnd0 -> forall x0 y0 : R, ((Rabs (x0 / y0) < / 2)%R -> rnd0 (x0 / y0)%R = 0%Z) -> format x0 -> format y0 -> (0 < y0)%R -> format (x0 - IZR (rnd0 (x0 / y0)%R) * y0)rnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RHrnd:(Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%ZFx:format xFy:format yHy:(y < 0)%R(IZR (Zrnd_opp rnd (x / - y)) * - y)%R = (IZR (rnd (x / y)) * y)%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexpH:forall rnd0 : R -> Z, Valid_rnd rnd0 -> forall x0 y0 : R, ((Rabs (x0 / y0) < / 2)%R -> rnd0 (x0 / y0)%R = 0%Z) -> format x0 -> format y0 -> (0 < y0)%R -> format (x0 - IZR (rnd0 (x0 / y0)%R) * y0)rnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RHrnd:(Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%ZFx:format xFy:format yHy:(y < 0)%Rformat (- y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexpH:forall rnd0 : R -> Z, Valid_rnd rnd0 -> forall x0 y0 : R, ((Rabs (x0 / y0) < / 2)%R -> rnd0 (x0 / y0)%R = 0%Z) -> format x0 -> format y0 -> (0 < y0)%R -> format (x0 - IZR (rnd0 (x0 / y0)%R) * y0)rnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RHrnd:(Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%ZFx:format xFy:format yHy:(y < 0)%R(0 < - y)%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexpH:forall rnd0 : R -> Z, Valid_rnd rnd0 -> forall x0 y0 : R, ((Rabs (x0 / y0) < / 2)%R -> rnd0 (x0 / y0)%R = 0%Z) -> format x0 -> format y0 -> (0 < y0)%R -> format (x0 - IZR (rnd0 (x0 / y0)%R) * y0)rnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RHrnd:(Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%ZFx:format xFy:format yHy:(y < 0)%R(IZR (Zrnd_opp rnd (x / - y)) * - y)%R = (IZR (rnd (x / y)) * y)%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexpH:forall rnd0 : R -> Z, Valid_rnd rnd0 -> forall x0 y0 : R, ((Rabs (x0 / y0) < / 2)%R -> rnd0 (x0 / y0)%R = 0%Z) -> format x0 -> format y0 -> (0 < y0)%R -> format (x0 - IZR (rnd0 (x0 / y0)%R) * y0)rnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RHrnd:(Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%ZFx:format xFy:format yHy:(y < 0)%R(0 < - y)%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexpH:forall rnd0 : R -> Z, Valid_rnd rnd0 -> forall x0 y0 : R, ((Rabs (x0 / y0) < / 2)%R -> rnd0 (x0 / y0)%R = 0%Z) -> format x0 -> format y0 -> (0 < y0)%R -> format (x0 - IZR (rnd0 (x0 / y0)%R) * y0)rnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RHrnd:(Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%ZFx:format xFy:format yHy:(y < 0)%R(IZR (Zrnd_opp rnd (x / - y)) * - y)%R = (IZR (rnd (x / y)) * y)%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexpH:forall rnd0 : R -> Z, Valid_rnd rnd0 -> forall x0 y0 : R, ((Rabs (x0 / y0) < / 2)%R -> rnd0 (x0 / y0)%R = 0%Z) -> format x0 -> format y0 -> (0 < y0)%R -> format (x0 - IZR (rnd0 (x0 / y0)%R) * y0)rnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RHrnd:(Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%ZFx:format xFy:format yHy:(y < 0)%R(IZR (Zrnd_opp rnd (x / - y)) * - y)%R = (IZR (rnd (x / y)) * y)%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexpH:forall rnd0 : R -> Z, Valid_rnd rnd0 -> forall x0 y0 : R, ((Rabs (x0 / y0) < / 2)%R -> rnd0 (x0 / y0)%R = 0%Z) -> format x0 -> format y0 -> (0 < y0)%R -> format (x0 - IZR (rnd0 (x0 / y0)%R) * y0)rnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RHrnd:(Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%ZFx:format xFy:format yHy:(y < 0)%R(IZR (- rnd (- (x / - y))) * - y)%R = (IZR (rnd (x / y)) * y)%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexpH:forall rnd0 : R -> Z, Valid_rnd rnd0 -> forall x0 y0 : R, ((Rabs (x0 / y0) < / 2)%R -> rnd0 (x0 / y0)%R = 0%Z) -> format x0 -> format y0 -> (0 < y0)%R -> format (x0 - IZR (rnd0 (x0 / y0)%R) * y0)rnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RHrnd:(Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%ZFx:format xFy:format yHy:(y < 0)%R(IZR (- rnd (x / y)) * - y)%R = (IZR (rnd (x / y)) * y)%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexpH:forall rnd0 : R -> Z, Valid_rnd rnd0 -> forall x0 y0 : R, ((Rabs (x0 / y0) < / 2)%R -> rnd0 (x0 / y0)%R = 0%Z) -> format x0 -> format y0 -> (0 < y0)%R -> format (x0 - IZR (rnd0 (x0 / y0)%R) * y0)rnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RHrnd:(Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%ZFx:format xFy:format yHy:(y < 0)%R(x / y)%R = (- (x / - y))%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexpH:forall rnd0 : R -> Z, Valid_rnd rnd0 -> forall x0 y0 : R, ((Rabs (x0 / y0) < / 2)%R -> rnd0 (x0 / y0)%R = 0%Z) -> format x0 -> format y0 -> (0 < y0)%R -> format (x0 - IZR (rnd0 (x0 / y0)%R) * y0)rnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RHrnd:(Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%ZFx:format xFy:format yHy:(y < 0)%R(- IZR (rnd (x / y)) * - y)%R = (IZR (rnd (x / y)) * y)%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexpH:forall rnd0 : R -> Z, Valid_rnd rnd0 -> forall x0 y0 : R, ((Rabs (x0 / y0) < / 2)%R -> rnd0 (x0 / y0)%R = 0%Z) -> format x0 -> format y0 -> (0 < y0)%R -> format (x0 - IZR (rnd0 (x0 / y0)%R) * y0)rnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RHrnd:(Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%ZFx:format xFy:format yHy:(y < 0)%R(x / y)%R = (- (x / - y))%Rfield; now apply Rlt_not_eq. Qed.beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexpH:forall rnd0 : R -> Z, Valid_rnd rnd0 -> forall x0 y0 : R, ((Rabs (x0 / y0) < / 2)%R -> rnd0 (x0 / y0)%R = 0%Z) -> format x0 -> format y0 -> (0 < y0)%R -> format (x0 - IZR (rnd0 (x0 / y0)%R) * y0)rnd:R -> Zvalid_rnd:Valid_rnd rndx, y:RHrnd:(Rabs (x / y) < / 2)%R -> rnd (x / y)%R = 0%ZFx:format xFy:format yHy:(y < 0)%R(x / y)%R = (- (x / - y))%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexpforall x y : R, format x -> format y -> format (x - IZR (Ztrunc (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexpforall x y : R, format x -> format y -> format (x - IZR (Ztrunc (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexpx, y:RFx:format xFy:format yformat (x - IZR (Ztrunc (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexpx, y:RFx:format xFy:format y(Rabs (x / y) < / 2)%R -> Ztrunc (x / y) = 0%Zbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexpx, y:RFx:format xFy:format yK:(Rabs (x / y) < / 2)%RZtrunc (x / y) = 0%Zbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexpx, y:RFx:format xFy:format yK:(Rabs (x / y) < / 2)%RZ.abs (Ztrunc (x / y)) = 0%Zbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexpx, y:RFx:format xFy:format yK:(Rabs (x / y) < / 2)%RZtrunc (Rabs (x / y)) = 0%Zbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexpx, y:RFx:format xFy:format yK:(Rabs (x / y) < / 2)%RZfloor (Rabs (x / y)) = 0%Zbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexpx, y:RFx:format xFy:format yK:(Rabs (x / y) < / 2)%R(Zfloor (Rabs (x / y)) <= 0)%Zbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexpx, y:RFx:format xFy:format yK:(Rabs (x / y) < / 2)%R(0 <= Zfloor (Rabs (x / y)))%Zbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexpx, y:RFx:format xFy:format yK:(Rabs (x / y) < / 2)%R(Zfloor (Rabs (x / y)) <= Zfloor (/ 2))%Zbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexpx, y:RFx:format xFy:format yK:(Rabs (x / y) < / 2)%RZfloor (/ 2) = 0%Zbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexpx, y:RFx:format xFy:format yK:(Rabs (x / y) < / 2)%R(0 <= Zfloor (Rabs (x / y)))%Zbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexpx, y:RFx:format xFy:format yK:(Rabs (x / y) < / 2)%R(Rabs (x / y) <= / 2)%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexpx, y:RFx:format xFy:format yK:(Rabs (x / y) < / 2)%RZfloor (/ 2) = 0%Zbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexpx, y:RFx:format xFy:format yK:(Rabs (x / y) < / 2)%R(0 <= Zfloor (Rabs (x / y)))%Zbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexpx, y:RFx:format xFy:format yK:(Rabs (x / y) < / 2)%RZfloor (/ 2) = 0%Zbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexpx, y:RFx:format xFy:format yK:(Rabs (x / y) < / 2)%R(0 <= Zfloor (Rabs (x / y)))%Zbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexpx, y:RFx:format xFy:format yK:(Rabs (x / y) < / 2)%R(0 <= / 2 < IZR (0 + 1))%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexpx, y:RFx:format xFy:format yK:(Rabs (x / y) < / 2)%R(0 <= Zfloor (Rabs (x / y)))%Zbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexpx, y:RFx:format xFy:format yK:(Rabs (x / y) < / 2)%R(0 <= Zfloor (Rabs (x / y)))%Zapply Rabs_pos. Qed.beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexpx, y:RFx:format xFy:format yK:(Rabs (x / y) < / 2)%R(0 <= Rabs (x / y))%Rbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexpforall (choice : Z -> bool) (x y : R), format x -> format y -> format (x - IZR (Znearest choice (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexpforall (choice : Z -> bool) (x y : R), format x -> format y -> format (x - IZR (Znearest choice (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexpchoice:Z -> boolx, y:RFx:format xFy:format yformat (x - IZR (Znearest choice (x / y)) * y)beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexpchoice:Z -> boolx, y:RFx:format xFy:format y(Rabs (x / y) < / 2)%R -> Znearest choice (x / y) = 0%Zbeta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexpchoice:Z -> boolx, y:RFx:format xFy:format yK:(Rabs (x / y) < / 2)%RZnearest choice (x / y) = 0%Znow rewrite Rminus_0_r. Qed. End format_REM.beta:radixfexp:Z -> Zvalid_exp:Valid_exp fexpmonotone_exp:Monotone_exp fexpchoice:Z -> boolx, y:RFx:format xFy:format yK:(Rabs (x / y) < / 2)%R(Rabs (x / y - 0) < / 2)%R