{-# OPTIONS --safe --warning=error --without-K #-} open import LogicalFormulae 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.Partial.Definition open import Setoids.Orders.Total.Definition open import Rings.IntegralDomains.Definition open import Functions.Definition open import Sets.EquivalenceRelations open import Fields.Fields open import Fields.Orders.Total.Definition open import Numbers.Naturals.Semiring open import Numbers.Naturals.Order 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 import Rings.InitialRing R 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 open Equivalence eq open Field F 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 =