Mathlib Map

Structures · Algebra

Semifield

A Semifield is a CommSemiring with multiplicative inverses for nonzero elements. An instance of Semifield K includes maps nnratCast : ℚ≥0 → K and nnqsmul : ℚ≥0 → K → K. Those two fields are needed to implement the DivisionSemiring K → Algebra ℚ≥0 K instance since we need to control the specific definitions for some special cases of K (in particular K = ℚ≥0 itself). See also note [forgetful inheritance]. If the semifield has positive characteristic p, our division by zero convention forces nnratCast (1 / p) = 1 / 0 = 0.

Defined in
Mathlib.Algebra.Field.Defs
Shape
One type argument · adds div_eq_mul_inv, zpow_zero', zpow_succ', zpow_neg', inv_zero, mul_inv_cancel, nnratCast_def, nnqsmul, nnqsmul_def

Extends3

Extended by1

Forgetful instances

Provided automatically by

Concrete types that are instances11

  • NNReal
  • Filter.Germ
  • NNRat
  • DirectLimit
  • FractionalIdeal
  • Subtype
  • OrderDual
  • ULift
  • MulOpposite
  • Lex
  • AddOpposite

How is a type an instance?

Loading the hierarchy index…

Assumed by493

Ancestors71