The integers form a linear ordered ring #
This file contains:
- instances on
ℤ
. The stronger one isInt.instLinearOrderedCommRing
. - basic lemmas about integers that involve order properties.
Recursors #
Int.rec
: Sign disjunction. Something is true/defined onℤ
if it's true/defined for nonnegative and for negative values. (Defined in core Lean 3)Int.inductionOn
: Simple growing induction on positive numbers, plus simple decreasing induction on negative numbers. Note that this recursor is currently onlyProp
-valued.Int.inductionOn'
: Simple growing induction for numbers greater thanb
, plus simple decreasing induction on numbers less thanb
.
Equations
- Int.instLinearOrderedCommRing = let __spread.0 := Int.instCommRing; let __spread.1 := Int.instLinearOrder; LinearOrderedCommRing.mk ⋯
Extra instances to short-circuit type class resolution #
These also prevent non-computable instances being used to construct these instances non-computably.
Equations
- Int.instOrderedCommRing = StrictOrderedCommRing.toOrderedCommRing'
Equations
- Int.instOrderedRing = StrictOrderedRing.toOrderedRing'
Miscellaneous lemmas #
Note this holds in marginally more generality than Int.cast_mul