{-# OPTIONS --safe --warning=error --without-K #-} open import LogicalFormulae open import Groups.Groups open import Groups.Lemmas open import Groups.Definition open import Rings.Definition open import Rings.Orders.Partial.Definition open import Rings.Orders.Total.Definition open import Rings.Lemmas open import Setoids.Setoids open import Setoids.Orders open import Orders open import Rings.IntegralDomains open import Functions open import Sets.EquivalenceRelations open import Fields.Fields open import Fields.Orders.Total.Definition open import Agda.Primitive using (Level; lzero; lsuc; _⊔_) module Fields.Orders.Lemmas {m n o : _} {A : Set m} {S : Setoid {m} {n} A} {_+_ : A → A → A} {_*_ : A → A → A} {_<_ : Rel {_} {o} A} {R : Ring S _+_ _*_} {pOrder : SetoidPartialOrder S _<_} {F : Field R} {pRing : PartiallyOrderedRing R pOrder} (oF : TotallyOrderedField F pRing) where abstract open Ring R open PartiallyOrderedRing pRing open Group additiveGroup open TotallyOrderedRing (TotallyOrderedField.oRing oF) open SetoidTotalOrder total open import Rings.Orders.Partial.Lemmas pRing open import Rings.Orders.Total.Lemmas (TotallyOrderedField.oRing oF) open import Fields.Lemmas F open Setoid S open SetoidPartialOrder pOrder clearDenominatorHalf : (x y 1/2 : A) → (1/2 + 1/2 ∼ 1R) → x < (y * 1/2) → (x + x) < y clearDenominatorHalf x y 1/2 pr1/2 x<1/2y =