File: .lake/packages/lean4/src/lean/Init/Data/Float.lean

full_name: FloatSpec.le
code: structure FloatSpec where
  float : Type
  val   : float
  lt    : float → float → Prop
  le    : float → float → Prop
  decLt : DecidableRel lt
  decLe : DecidableRel le
goal: self.float → self.float → Prop

full_name: FloatSpec.decLe
code: structure FloatSpec where
  float : Type
  val   : float
  lt    : float → float → Prop
  le    : float → float → Prop
  decLt : DecidableRel lt
  decLe : DecidableRel le
goal: DecidableRel self.le

full_name: FloatSpec.lt
code: structure FloatSpec where
  float : Type
  val   : float
  lt    : float → float → Prop
  le    : float → float → Prop
  decLt : DecidableRel lt
  decLe : DecidableRel le
goal: self.float → self.float → Prop

full_name: FloatSpec.float
code: structure FloatSpec where
  float : Type
  val   : float
  lt    : float → float → Prop
  le    : float → float → Prop
  decLt : DecidableRel lt
  decLe : DecidableRel le
goal: Type

full_name: FloatSpec.val
code: structure FloatSpec where
  float : Type
  val   : float
  lt    : float → float → Prop
  le    : float → float → Prop
  decLt : DecidableRel lt
  decLe : DecidableRel le
goal: self.float

full_name: FloatSpec
code: structure FloatSpec where
  float : Type
  val   : float
  lt    : float → float → Prop
  le    : float → float → Prop
  decLt : DecidableRel lt
  decLe : DecidableRel le
goal: Type 1

full_name: FloatSpec.decLt
code: structure FloatSpec where
  float : Type
  val   : float
  lt    : float → float → Prop
  le    : float → float → Prop
  decLt : DecidableRel lt
  decLe : DecidableRel le
goal: DecidableRel self.lt

full_name: floatSpec
code: opaque floatSpec : FloatSpec 
goal: FloatSpec

full_name: Float
code: /-- Native floating point type, corresponding to the IEEE 754 *binary64* format
(`double` in C or `f64` in Rust). -/
structure Float where
  val : floatSpec.float
goal: Type

full_name: Float.val
code: /-- Native floating point type, corresponding to the IEEE 754 *binary64* format
(`double` in C or `f64` in Rust). -/
structure Float where
  val : floatSpec.float
goal: floatSpec.float

full_name: instInhabitedFloat
code: instance : Inhabited Float 
goal: Inhabited Float

full_name: Float.add
code: @[extern "lean_float_add"] opaque Float.add : Float → Float → Float
goal: Float → Float → Float

full_name: Float.sub
code: @[extern "lean_float_sub"] opaque Float.sub : Float → Float → Float
goal: Float → Float → Float

full_name: Float.mul
code: @[extern "lean_float_mul"] opaque Float.mul : Float → Float → Float
goal: Float → Float → Float

full_name: Float.div
code: @[extern "lean_float_div"] opaque Float.div : Float → Float → Float
goal: Float → Float → Float

full_name: Float.neg
code: @[extern "lean_float_negate"] opaque Float.neg : Float → Float
goal: Float → Float

full_name: Float.lt
code: def Float.lt : Float → Float → Prop 
goal: Float → Float → Prop

full_name: Float.le
code: def Float.le : Float → Float → Prop 
goal: Float → Float → Prop

full_name: instAddFloat
code: instance : Add Float 
goal: Add Float

full_name: instSubFloat
code: instance : Sub Float 
goal: Sub Float

full_name: instMulFloat
code: instance : Mul Float 
goal: Mul Float

full_name: instDivFloat
code: instance : Div Float 
goal: Div Float

full_name: instNegFloat
code: instance : Neg Float 
goal: Neg Float

full_name: instLTFloat
code: instance : LT Float  
goal: LT Float

full_name: instLEFloat
code: instance : LE Float  
goal: LE Float

full_name: Float.beq
code: /-- Note: this is not reflexive since `NaN != NaN`.-/
@[extern "lean_float_beq"] opaque Float.beq (a b : Float) : Bool
goal: Bool

full_name: instBEqFloat
code: instance : BEq Float 
goal: BEq Float

full_name: Float.decLt
code: @[extern "lean_float_decLt"] opaque Float.decLt (a b : Float) : Decidable (a < b) 
goal: Decidable (a < b)

full_name: Float.decLe
code: @[extern "lean_float_decLe"] opaque Float.decLe (a b : Float) : Decidable (a ≤ b) 
goal: Decidable (a ≤ b)

full_name: floatDecLt
code: instance floatDecLt (a b : Float) : Decidable (a < b) 
goal: Decidable (a < b)

full_name: floatDecLe
code: instance floatDecLe (a b : Float) : Decidable (a ≤ b) 
goal: Decidable (a ≤ b)

full_name: Float.toString
code: @[extern "lean_float_to_string"] opaque Float.toString : Float → String
goal: Float → String

full_name: Float.toUInt8
code: /-- If the given float is positive, truncates the value to the nearest positive integer.
If negative or larger than the maximum value for UInt8, returns 0. -/
@[extern "lean_float_to_uint8"] opaque Float.toUInt8 : Float → UInt8
goal: Float → UInt8

full_name: Float.toUInt16
code: /-- If the given float is positive, truncates the value to the nearest positive integer.
If negative or larger than the maximum value for UInt16, returns 0. -/
@[extern "lean_float_to_uint16"] opaque Float.toUInt16 : Float → UInt16
goal: Float → UInt16

full_name: Float.toUInt32
code: /-- If the given float is positive, truncates the value to the nearest positive integer.
If negative or larger than the maximum value for UInt32, returns 0. -/
@[extern "lean_float_to_uint32"] opaque Float.toUInt32 : Float → UInt32
goal: Float → UInt32

full_name: Float.toUInt64
code: /-- If the given float is positive, truncates the value to the nearest positive integer.
If negative or larger than the maximum value for UInt64, returns 0. -/
@[extern "lean_float_to_uint64"] opaque Float.toUInt64 : Float → UInt64
goal: Float → UInt64

full_name: Float.toUSize
code: /-- If the given float is positive, truncates the value to the nearest positive integer.
If negative or larger than the maximum value for USize, returns 0. -/
@[extern "lean_float_to_usize"] opaque Float.toUSize : Float → USize
goal: Float → USize

full_name: Float.isNaN
code: @[extern "lean_float_isnan"] opaque Float.isNaN : Float → Bool
goal: Float → Bool

full_name: Float.isFinite
code: @[extern "lean_float_isfinite"] opaque Float.isFinite : Float → Bool
goal: Float → Bool

full_name: Float.isInf
code: @[extern "lean_float_isinf"] opaque Float.isInf : Float → Bool
goal: Float → Bool

full_name: Float.frExp
code: /-- Splits the given float `x` into a significand/exponent pair `(s, i)`
such that `x = s * 2^i` where `s ∈ (-1;-0.5] ∪ [0.5; 1)`.
Returns an undefined value if `x` is not finite.
-/
@[extern "lean_float_frexp"] opaque Float.frExp : Float → Float × Int
goal: Float → Float × Int

full_name: instToStringFloat
code: instance : ToString Float 
goal: ToString Float

full_name: instReprFloat
code: instance : Repr Float 
goal: Repr Float

full_name: instReprAtomFloat
code: instance : ReprAtom Float  
goal: ReprAtom Float

full_name: UInt64.toFloat
code: @[extern "lean_uint64_to_float"] opaque UInt64.toFloat (n : UInt64) : Float
goal: Float

full_name: Float.sin
code: @[extern "sin"] opaque Float.sin : Float → Float
goal: Float → Float

full_name: Float.cos
code: @[extern "cos"] opaque Float.cos : Float → Float
goal: Float → Float

full_name: Float.tan
code: @[extern "tan"] opaque Float.tan : Float → Float
goal: Float → Float

full_name: Float.asin
code: @[extern "asin"] opaque Float.asin : Float → Float
goal: Float → Float

full_name: Float.acos
code: @[extern "acos"] opaque Float.acos : Float → Float
goal: Float → Float

full_name: Float.atan
code: @[extern "atan"] opaque Float.atan : Float → Float
goal: Float → Float

full_name: Float.atan2
code: @[extern "atan2"] opaque Float.atan2 : Float → Float → Float
goal: Float → Float → Float

full_name: Float.sinh
code: @[extern "sinh"] opaque Float.sinh : Float → Float
goal: Float → Float

full_name: Float.cosh
code: @[extern "cosh"] opaque Float.cosh : Float → Float
goal: Float → Float

full_name: Float.tanh
code: @[extern "tanh"] opaque Float.tanh : Float → Float
goal: Float → Float

full_name: Float.asinh
code: @[extern "asinh"] opaque Float.asinh : Float → Float
goal: Float → Float

full_name: Float.acosh
code: @[extern "acosh"] opaque Float.acosh : Float → Float
goal: Float → Float

full_name: Float.atanh
code: @[extern "atanh"] opaque Float.atanh : Float → Float
goal: Float → Float

full_name: Float.exp
code: @[extern "exp"] opaque Float.exp : Float → Float
goal: Float → Float

full_name: Float.exp2
code: @[extern "exp2"] opaque Float.exp2 : Float → Float
goal: Float → Float

full_name: Float.log
code: @[extern "log"] opaque Float.log : Float → Float
goal: Float → Float

full_name: Float.log2
code: @[extern "log2"] opaque Float.log2 : Float → Float
goal: Float → Float

full_name: Float.log10
code: @[extern "log10"] opaque Float.log10 : Float → Float
goal: Float → Float

full_name: Float.pow
code: @[extern "pow"] opaque Float.pow : Float → Float → Float
goal: Float → Float → Float

full_name: Float.sqrt
code: @[extern "sqrt"] opaque Float.sqrt : Float → Float
goal: Float → Float

full_name: Float.cbrt
code: @[extern "cbrt"] opaque Float.cbrt : Float → Float
goal: Float → Float

full_name: Float.ceil
code: @[extern "ceil"] opaque Float.ceil : Float → Float
goal: Float → Float

full_name: Float.floor
code: @[extern "floor"] opaque Float.floor : Float → Float
goal: Float → Float

full_name: Float.round
code: @[extern "round"] opaque Float.round : Float → Float
goal: Float → Float

full_name: Float.abs
code: @[extern "fabs"] opaque Float.abs : Float → Float
goal: Float → Float

full_name: instHomogeneousPowFloat
code: instance : HomogeneousPow Float 
goal: HomogeneousPow Float

full_name: instMinFloat
code: instance : Min Float 
goal: Min Float

full_name: instMaxFloat
code: instance : Max Float 
goal: Max Float

full_name: Float.scaleB
code: /--
Efficiently computes `x * 2^i`.
-/
@[extern "lean_float_scaleb"]
opaque Float.scaleB (x : Float) (i : @& Int) : Float
goal: Float