Math
Functions
def PI : {v : Float | 3.1415926 < v && v < 3.1415927}
def E : {v : Float | 2.7182818 < v && v < 2.7182819}
def TAU : {v : Float | 6.2831853 < v && v < 6.2831854}
def toFloat (i : Int) : Float
def toInt (i : Float) : Int
def min (i : Int) (j : Int) : Int
def max (i : Int) (j : Int) : Int
def abs (i : Int) : {v : Int | v ≥ 0}
def pow (i : Int) (j : Int | j ≥ 0) : Int
def floor_division (i : Int) (j : Int | j ≠ 0) : Int
def gcd (i : Int) (j : Int) : {v : Int | v ≥ 0}
def lcm (i : Int) (j : Int) : {v : Int | v ≥ 0}
def factorial (i : Int | i ≥ 0) : {v : Int | v ≥ 1}
def comb (n : Int | n ≥ 0) (k : Int | k ≥ 0) : {v : Int | v ≥ 0}
def perm (n : Int | n ≥ 0) (k : Int | k ≥ 0) : {v : Int | v ≥ 0}
def minf (i : Float) (j : Float) : Float
def maxf (i : Float) (j : Float) : Float
def absf (i : Float) : {v : Float | v ≥ 0.0}
def powf (i : Float) (j : Float) : Float
def remainder (i : Float) (j : Float | j ≠ 0.0) : Float
def fmod (i : Float) (j : Float | j ≠ 0.0) : Float
def round (i : Float) : Int
def ceil (i : Float) : Int
def floor (i : Float) : Int
def trunc (i : Float) : Int
def sqrt (i : Int | i ≥ 0) : {v : Float | v ≥ 0.0}
def sqrtf (i : Float | i ≥ 0.0) : {v : Float | v ≥ 0.0}
def isqrt (i : Int | i ≥ 0) : {v : Int | v ≥ 0}
def cbrt (i : Float) : Float
def exp (i : Float) : {v : Float | v > 0.0}
def expm1 (i : Float) : Float
def exp2 (i : Float) : {v : Float | v > 0.0}
def log (i : Float | i > 0.0) : Float
def log10 (i : Float | i > 0.0) : Float
def log2 (i : Float | i > 0.0) : Float
def log1p (i : Float | i > -1.0) : Float
def sin (i : Float) : Float
def cos (i : Float) : Float
def tan (i : Float) : Float
def asin (i : Float | -1.0 ≤ i && i ≤ 1.0) : Float
def acos (i : Float | -1.0 ≤ i && i ≤ 1.0) : Float
def atan (i : Float) : Float
def atan2 (sinVal : Float) (cosVal : Float) : Float
def radians (deg : Float) : Float
def degrees (rad : Float) : Float
def hypot (x : Float) (y : Float) : {v : Float | v ≥ 0.0}
def sinh (i : Float) : Float
def cosh (i : Float) : {v : Float | v ≥ 1.0}
def tanh (i : Float) : Float
def asinh (i : Float) : Float
def acosh (i : Float | i ≥ 1.0) : {v : Float | v ≥ 0.0}
def atanh (i : Float | -1.0 < i && i < 1.0) : Float
def erf (i : Float) : Float
def erfc (i : Float) : Float
def lgamma (i : Float) : Float
def gamma (i : Float | i > 0.0) : {v : Float | v > 0.0}
def isfinite (i : Float) : Bool
def isinf (i : Float) : Bool
def isnan (i : Float) : Bool
def sign (i : Int) : {v : Int | v ≥ 0 - 1 && v ≤ 1}
def signf (i : Float) : {v : Int | v ≥ 0 - 1 && v ≤ 1}
def clamp (x : Int) (lo : Int) (hi : Int | hi ≥ lo) : {v : Int | v ≥ lo && v ≤ hi}
def clampf (x : Float) (lo : Float) (hi : Float | hi ≥ lo) : {v : Float | v ≥ lo && v ≤ hi}