Lemma NRNRtoR_inv_pos : ∏ (x : NonnegativeReals) Hrn Hr, NRNRtoR (invNonnegativeReals x Hrn) 0%NR = Rinv (NRNRtoR x 0%NR) Hr. Proof. intros x Hrn Hr. rewrite <- (isrunit_CFone_CFmult (NRNRtoR (invNonnegativeReals x Hrn) 0%NR)), <- (isrunit_CFone_CFmult (Rinv (NRNRtoR x 0%NR) Hr)). rewrite <- (isrinv_CFinv (X := Reals) (NRNRtoR x 0%NR) Hr). rewrite <- !(isassoc_CFmult (X := Reals)). apply (maponpaths (λ x, (x * _)%CF)). rewrite <- NRNRtoR_mult. unfold Rinv. rewrite (islinv_CFinv (X := Reals) (NRNRtoR x 0%NR) Hr). rewrite !israbsorb_zero_multNonnegativeReals, islabsorb_zero_multNonnegativeReals. rewrite !isrunit_zero_plusNonnegativeReals. rewrite islinv_invNonnegativeReals. apply NRNRtoR_one. Qed.
Require Import UniMath.Foundations.Preamble. Require Import UniMath.MoreFoundations.Orders. Require Import UniMath.MoreFoundations.Tactics. Require Import UniMath.OrderTheory.Lattice.Lattice. Require Import UniMath.RealNumbers.Prelim. Require Import UniMath.RealNumbers.Sets. Require Import UniMath.RealNumbers.NonnegativeRationals.