@[instance]
Equations
- ennreal.inhabited = {default := 0}
to_nnreal x
returns x
if it is real, otherwise 0.
Equations
- ennreal.to_nnreal (some r) = r
- ennreal.to_nnreal none = 0
of_real x
returns x
if it is nonnegative, 0
otherwise.
Equations
- ennreal.of_real r = ↑(nnreal.of_real r)
@[simp]
@[simp]
Coercion ℝ≥0 → ennreal
as a ring_hom
.
Equations
- ennreal.of_nnreal_hom = {to_fun := coe coe_to_lift, map_one' := ennreal.coe_one, map_mul' := ennreal.of_nnreal_hom._proof_1, map_zero' := ennreal.coe_zero, map_add' := ennreal.of_nnreal_hom._proof_2}
theorem
ennreal.lt_iff_exists_real_btwn
{a b : ennreal} :
a < b ↔ ∃ (r : ℝ), 0 ≤ r ∧ a < ennreal.of_real r ∧ ennreal.of_real r < b
theorem
ennreal.coe_mem_upper_bounds
{r : ℝ≥0}
{s : set ℝ≥0} :
↑r ∈ upper_bounds (coe '' s) ↔ r ∈ upper_bounds s
theorem
ennreal.of_real_add
{p q : ℝ}
(hp : 0 ≤ p)
(hq : 0 ≤ q) :
ennreal.of_real (p + q) = ennreal.of_real p + ennreal.of_real q
theorem
ennreal.of_real_add_le
{p q : ℝ} :
ennreal.of_real (p + q) ≤ ennreal.of_real p + ennreal.of_real q
theorem
ennreal.of_real_le_of_le_to_real
{a : ℝ}
{b : ennreal}
(h : a ≤ b.to_real) :
ennreal.of_real a ≤ b
@[simp]
theorem
ennreal.of_real_le_of_real_iff
{p q : ℝ}
(h : 0 ≤ q) :
ennreal.of_real p ≤ ennreal.of_real q ↔ p ≤ q
@[simp]
theorem
ennreal.of_real_lt_of_real_iff
{p q : ℝ}
(h : 0 < q) :
ennreal.of_real p < ennreal.of_real q ↔ p < q
theorem
ennreal.of_real_lt_of_real_iff_of_nonneg
{p q : ℝ}
(hp : 0 ≤ p) :
ennreal.of_real p < ennreal.of_real q ↔ p < q
theorem
ennreal.to_real_le_of_le_of_real
{a : ennreal}
{b : ℝ}
(hb : 0 ≤ b)
(h : a ≤ ennreal.of_real b) :
theorem
ennreal.of_real_mul
{p q : ℝ}
(hp : 0 ≤ p) :
ennreal.of_real (p * q) = (ennreal.of_real p) * ennreal.of_real q
supr_mul
, mul_supr
and variants are in topology.instances.ennreal
.