Mathlib v3 is deprecated. Go to Mathlib v4

Commit 2021-10-13 15:48 577cac15

View on Github →

feat(algebra/order/nonneg): properties about the nonnegative cone (#9598)

  • Provide various classes on the type {x : α // 0 ≤ x} where α has some order (and algebraic) structure.
  • Use this to automatically derive the classes on nnreal.
  • We currently do not yet define conditionally_complete_linear_order_bot nnreal using nonneg, since that causes some errors (I think Lean then thinks that there are two orders that are not definitionally equal (unfolding only instances)).
  • We leave a bunch of example lines in nnreal to show that nnreal has all the old classes. These could also be removed, if desired.
  • We currently only give some instances and simp/norm_cast lemmas. This could be expanded in the future.

Estimated changes

added theorem nonneg.coe_to_nonneg
added theorem nonneg.inv_mk
added theorem nonneg.mk_add_mk
added theorem nonneg.mk_div_mk
added theorem nonneg.mk_eq_one
added theorem nonneg.mk_eq_zero
added theorem nonneg.mk_mul_mk
added theorem nonneg.mk_sub_mk
added theorem nonneg.nsmul_coe
added def nonneg.to_nonneg
added theorem nonneg.to_nonneg_coe
added theorem nonneg.to_nonneg_le
added theorem nonneg.to_nonneg_lt