data (<) : Integer -> Integer -> Type Witness that `m < n === True`.
Totality: total
Visibility: export
Constructor: LT : (0 _ : m < n = True) -> m < n
Hints:
(0 _ : m < n = True) -> m < n Total Integer (<)
Fixity Declaration: infix operator, level 60 mkLT : (0 _ : m < n = True) -> m < n Contructor for `(<)`.
This can only be used in an erased context.
Totality: total
Visibility: export0 runLT : m < n -> m < n = True Extractor for `(<)`.
This can only be used in an erased context.
Totality: total
Visibility: exportstrictLT : (0 _ : m < n) -> Lazy c -> c We don't trust values of type `(<)` too much,
so we use this when creating magical results.
Totality: total
Visibility: export0 (>) : Integer -> Integer -> Type Flipped version of `(<)`.
Totality: total
Visibility: public export
Fixity Declaration: infix operator, level 60 (<=) : Integer -> Integer -> Type `m <= n` mean that either `m < n` or `m === n` holds.
Totality: total
Visibility: public export
Fixity Declaration: infix operator, level 60 (>=) : Integer -> Integer -> Type Flipped version of `(<=)`.
Totality: total
Visibility: public export
Fixity Declaration: infix operator, level 60 (/=) : Integer -> Integer -> Type `m /= n` mean that either `m < n` or `m > n` holds.
Totality: total
Visibility: public export
Fixity Declaration: infix operator, level 6comp : (m : Integer) -> (n : Integer) -> Trichotomy (<) m n- Totality: total
Visibility: export 0 plusGT : (k : Integer) -> (m : Integer) -> (n : Integer) -> k < m -> (n + k) < (n + m) This axiom, which only holds for unbounded integers, relates
addition and the ordering of integers:
From `k < m` follows `n + k < n + m` for all integers `k`, `m`, and `n`.
Totality: total
Visibility: export0 multPosPosGT0 : (m : Integer) -> (n : Integer) -> 0 < m -> 0 < n -> 0 < (m * n) This axiom, which only holds for unbounded integers, relates
multiplication and the ordering of integers:
From `0 < m` and `0 < n` follows `0 < m * n` for all integers `m` and `n`.
Totality: total
Visibility: export0 oneAfterZero : (n : Integer) -> 0 < n -> 1 <= n There is no integer between 0 and 1.
Totality: total
Visibility: export0 modLT : (n : Integer) -> (d : Integer) -> 0 < d -> (0 <= (n `mod` d), (n `mod` d) < d) For positive `d`, `mod n d` is a non-negative number
strictly smaller than `d`.
Totality: total
Visibility: export0 modNegEQ : (n : Integer) -> (d : Integer) -> d < 0 -> n `mod` d = n `mod` neg d- Totality: total
Visibility: export 0 lawDivMod : (n : Integer) -> (d : Integer) -> d /= 0 -> (d * (n `div` d)) + (n `mod` d) = n- Totality: total
Visibility: export sdiv : Integer -> (d : Integer) -> {auto 0 _ : d /= 0} -> Integer Safe division.
Totality: total
Visibility: exportsmod : Integer -> (d : Integer) -> {auto 0 _ : d /= 0} -> Integer Safe modulo.
Totality: total
Visibility: export0 BoundedLT : Integer -> Integer -> Integer -> Type- Totality: total
Visibility: public export 0 BoundedGT : Integer -> Integer -> Integer -> Type- Totality: total
Visibility: public export accessLT : (m : Integer) -> Accessible (BoundedLT lb) m Every value of type `Integer` with a fixed lower bound
is accessible with relation to `(<)`.
Totality: total
Visibility: exportaccessGT : (m : Integer) -> Accessible (BoundedGT ub) m Every value of type `Integer` with a fixed upper bound
is accessible with relation to `(>)`.
Totality: total
Visibility: export