Documentation

Init.Data.OfScientific

class OfScientific (α : Type u) :

For decimal and scientific numbers (e.g., 1.23, 3.12e10). Examples:

Note the use of nat_lit; there is no wrapping OfNat.ofNat in the resulting term.

  • ofScientific (mantissa : Nat) (exponentSign : Bool) (decimalExponent : Nat) : α
Instances

    Computes m * 2^e.

    Equations
    Instances For
      opaque Float.ofScientific (m : Nat) (s : Bool) (e : Nat) :
      @[defaultInstance 501]

      The OfScientific Float must have priority higher than mid since the default instance Neg Int has mid priority.

      #check -42.0 -- must be Float
      
      Equations
      @[export lean_float_of_nat]
      def Float.ofNat (n : Nat) :
      Equations
      Instances For
        Equations
        Instances For
          instance instOfNatFloat {n : Nat} :
          Equations
          @[reducible, inline]
          abbrev Nat.toFloat (n : Nat) :
          Equations
          Instances For

            Computes m * 2^e.

            Equations
            Instances For
              opaque Float32.ofScientific (m : Nat) (s : Bool) (e : Nat) :
              @[export lean_float32_of_nat]
              Equations
              Instances For
                instance instOfNatFloat32 {n : Nat} :
                Equations
                @[reducible, inline]
                abbrev Nat.toFloat32 (n : Nat) :
                Equations
                Instances For