File: Mathlib/Data/FP/Basic.lean

full_name: Int.shift2
code: @[nolint docBlame]
def Int.shift2 (a b : ℕ) : ℤ → ℕ × ℕ
  
goal: ℤ → ℕ × ℕ

full_name: FP.RMode
code: @[nolint docBlame]
inductive RMode
  | NE -- round to nearest even
  deriving Inhabited
goal: Type

full_name: FP.instInhabitedRMode
code: @[nolint docBlame]
inductive RMode
  | NE -- round to nearest even
  deriving Inhabited
goal: Inhabited FP.RMode

full_name: FP.RMode.NE
code: @[nolint docBlame]
inductive RMode
  | NE -- round to nearest even
  deriving Inhabited
goal: FP.RMode

full_name: FP.FloatCfg.precPos
code: @[nolint docBlame]
class FloatCfg where
  (prec emax : ℕ)
  precPos : 0 < prec
  precMax : prec ≤ emax
goal: 0 < FP.FloatCfg.prec

full_name: FP.FloatCfg
code: @[nolint docBlame]
class FloatCfg where
  (prec emax : ℕ)
  precPos : 0 < prec
  precMax : prec ≤ emax
goal: Type

full_name: FP.FloatCfg.prec
code: @[nolint docBlame]
class FloatCfg where
  (prec emax : ℕ)
  precPos : 0 < prec
  precMax : prec ≤ emax
goal: ℕ

full_name: FP.FloatCfg.emax
code: @[nolint docBlame]
class FloatCfg where
  (prec emax : ℕ)
  precPos : 0 < prec
  precMax : prec ≤ emax
goal: ℕ

full_name: FP.FloatCfg.precMax
code: @[nolint docBlame]
class FloatCfg where
  (prec emax : ℕ)
  precPos : 0 < prec
  precMax : prec ≤ emax
goal: FP.FloatCfg.prec ≤ FP.FloatCfg.emax

full_name: FP.prec
code: @[nolint docBlame]
def prec 
goal: ℕ

full_name: FP.emax
code: @[nolint docBlame]
def emax 
goal: ℕ

full_name: FP.emin
code: @[nolint docBlame]
def emin : ℤ 
goal: ℤ

full_name: FP.ValidFinite
code: @[nolint docBlame]
def ValidFinite (e : ℤ) (m : ℕ) : Prop 
goal: Prop

full_name: FP.decValidFinite
code: instance decValidFinite (e m) : Decidable (ValidFinite e m) 
goal: Decidable (FP.ValidFinite e m)

full_name: FP.Float
code: @[nolint docBlame]
inductive Float
  | inf : Bool → Float
  | nan : Float
  | finite : Bool → ∀ e m, ValidFinite e m → Float
goal: Type

full_name: FP.Float.finite
code: @[nolint docBlame]
inductive Float
  | inf : Bool → Float
  | nan : Float
  | finite : Bool → ∀ e m, ValidFinite e m → Float
goal: Bool → (e : ℤ) → (m : ℕ) → FP.ValidFinite e m → FP.Float

full_name: FP.Float.nan
code: @[nolint docBlame]
inductive Float
  | inf : Bool → Float
  | nan : Float
  | finite : Bool → ∀ e m, ValidFinite e m → Float
goal: FP.Float

full_name: FP.Float.inf
code: @[nolint docBlame]
inductive Float
  | inf : Bool → Float
  | nan : Float
  | finite : Bool → ∀ e m, ValidFinite e m → Float
goal: Bool → FP.Float

full_name: FP.Float.isFinite
code: @[nolint docBlame]
def Float.isFinite : Float → Bool
  
goal: FP.Float → Bool

full_name: FP.toRat
code: @[nolint docBlame]
def toRat : ∀ f : Float, f.isFinite → ℚ
  
goal: f.isFinite = true → ℚ

full_name: FP.Float.Zero.valid
code: theorem Float.Zero.valid : ValidFinite emin 0 
goal: FP.ValidFinite FP.emin 0

full_name: FP.Float.zero
code: @[nolint docBlame]
def Float.zero (s : Bool) : Float 
goal: FP.Float

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

full_name: FP.Float.sign'
code: @[nolint docBlame]
protected def Float.sign' : Float → Semiquot Bool
  
goal: FP.Float → Semiquot Bool

full_name: FP.Float.sign
code: @[nolint docBlame]
protected def Float.sign : Float → Bool
  
goal: FP.Float → Bool

full_name: FP.Float.isZero
code: @[nolint docBlame]
protected def Float.isZero : Float → Bool
  
goal: FP.Float → Bool

full_name: FP.Float.neg
code: @[nolint docBlame]
protected def Float.neg : Float → Float
  
goal: FP.Float → FP.Float

full_name: FP.divNatLtTwoPow
code: @[nolint docBlame]
def divNatLtTwoPow (n d : ℕ) : ℤ → Bool
  
goal: ℤ → Bool

full_name: FP.ofPosRatDn
code: @[nolint docBlame]
unsafe def ofPosRatDn (n : ℕ+) (d : ℕ+) : Float × Bool 
goal: FP.Float × Bool

full_name: FP.nextUpPos
code: @[nolint docBlame]
unsafe def nextUpPos (e m) (v : ValidFinite e m) : Float 
goal: FP.Float

full_name: FP.nextDnPos
code: @[nolint docBlame]
unsafe def nextDnPos (e m) (v : ValidFinite e m) : Float 
goal: FP.Float

full_name: FP.nextUp
code: @[nolint docBlame]
unsafe def nextUp : Float → Float
  
goal: FP.Float → FP.Float

full_name: FP.nextDn
code: @[nolint docBlame]
unsafe def nextDn : Float → Float
  
goal: FP.Float → FP.Float

full_name: FP.ofRatUp
code: @[nolint docBlame]
unsafe def ofRatUp : ℚ → Float
  
goal: ℚ → FP.Float

full_name: FP.ofRatDn
code: @[nolint docBlame]
unsafe def ofRatDn (r : ℚ) : Float 
goal: FP.Float

full_name: FP.ofRat
code: @[nolint docBlame]
unsafe def ofRat : RMode → ℚ → Float
  
goal: FP.RMode → ℚ → FP.Float

full_name: FP.Float.instNeg
code: instance : Neg Float 
goal: Neg FP.Float

full_name: FP.Float.add
code: @[nolint docBlame]
unsafe def add (mode : RMode) : Float → Float → Float
  
goal: FP.Float → FP.Float → FP.Float

full_name: FP.Float.instAdd
code: unsafe instance : Add Float 
goal: Add FP.Float

full_name: FP.Float.sub
code: @[nolint docBlame]
unsafe def sub (mode : RMode) (f1 f2 : Float) : Float 
goal: FP.Float

full_name: FP.Float.instSub
code: unsafe instance : Sub Float 
goal: Sub FP.Float

full_name: FP.Float.mul
code: @[nolint docBlame]
unsafe def mul (mode : RMode) : Float → Float → Float
  
goal: FP.Float → FP.Float → FP.Float

full_name: FP.Float.div
code: @[nolint docBlame]
unsafe def div (mode : RMode) : Float → Float → Float
  
goal: FP.Float → FP.Float → FP.Float