Base expansions do approximate the number (#114)

This commit is contained in:
Patrick Stevens
2020-04-13 11:43:35 +01:00
committed by GitHub
parent 269f2aa14f
commit 46fcb023d4
3 changed files with 136 additions and 7 deletions

View File

@@ -8,7 +8,6 @@ open import Rings.Definition
open import Sets.EquivalenceRelations
open import Rings.IntegralDomains.Definition
module Rings.IntegralDomains.Lemmas {m n : _} {A : Set n} {S : Setoid {n} {m} A} {_+_ _*_ : A A A} {R : Ring S _+_ _*_} (I : IntegralDomain R) where
open Setoid S
@@ -24,3 +23,6 @@ cancelIntDom {a} {b} {c} ab=ac a!=0 = transferToRight (Ring.additiveGroup R) t3
t2 = transitive (transitive (Ring.*DistributesOver+ R) (Group.+WellDefined (Ring.additiveGroup R) reflexive (transferToRight' (Ring.additiveGroup R) (transitive (symmetric (Ring.*DistributesOver+ R)) (transitive (Ring.*WellDefined R reflexive (Group.invLeft (Ring.additiveGroup R))) (Ring.timesZero R)))))) t1
t3 : (b + Group.inverse (Ring.additiveGroup R) c) Ring.0R R
t3 = IntegralDomain.intDom I t2 a!=0
cancelIntDom' : {a b c : A} (a * c) (b * c) (c Ring.0R R False) a b
cancelIntDom' pr n = cancelIntDom (transitive *Commutative (transitive pr *Commutative)) n