Documentation
Foundation
.
Vorspiel
.
Nat
.
Basic
Search
return to top
source
Imports
Init
Mathlib.Tactic.Cases
Mathlib.Data.Nat.Bits
Mathlib.Data.Nat.Lattice
Mathlib.Data.Nat.Pairing
Imported by
Nat
.
cases
Nat
.
«term_:>ₙ_»
Nat
.
cases_zero
Nat
.
cases_succ
Nat
.
ne_step_max
Nat
.
ne_step_max'
Nat
.
rec_eq
Nat
.
least_number
Nat
.
toFin
Nat
.
zero_lt_of_not_zero
Nat
.
one_le_of_bodd
Nat
.
pair_le_pair_of_le
source
def
Nat
.
cases
{
α
:
ℕ
→
Sort
u
}
(
hzero
:
α
0
)
(
hsucc
:
(
n
:
ℕ
) →
α
(
n
+
1
)
)
(
n
:
ℕ
)
:
α
n
Equations
(
hzero
:>ₙ
hsucc
)
0
=
hzero
(
hzero
:>ₙ
hsucc
)
n
.
succ
=
hsucc
n
Instances For
source
def
Nat
.
«term_:>ₙ_»
:
Lean.TrailingParserDescr
Equations
Nat.«term_:>ₙ_»
=
Lean.ParserDescr.trailingNode
`Nat.«term_:>ₙ_»
70
71
(
Lean.ParserDescr.binary
`andthen
(
Lean.ParserDescr.symbol
" :>ₙ "
)
(
Lean.ParserDescr.cat
`term
70
)
)
Instances For
source
@[simp]
theorem
Nat
.
cases_zero
{
α
:
ℕ
→
Sort
u
}
(
hzero
:
α
0
)
(
hsucc
:
(
n
:
ℕ
) →
α
(
n
+
1
)
)
:
(
hzero
:>ₙ
hsucc
)
0
=
hzero
source
@[simp]
theorem
Nat
.
cases_succ
{
α
:
ℕ
→
Sort
u
}
(
hzero
:
α
0
)
(
hsucc
:
(
n
:
ℕ
) →
α
(
n
+
1
)
)
(
n
:
ℕ
)
:
(
hzero
:>ₙ
hsucc
) (
n
+
1
)
=
hsucc
n
source
@[simp]
theorem
Nat
.
ne_step_max
(
n
m
:
ℕ
)
:
n
≠
max
n
m
+
1
source
@[simp]
theorem
Nat
.
ne_step_max'
(
n
m
:
ℕ
)
:
n
≠
max
m
n
+
1
source
theorem
Nat
.
rec_eq
{
α
:
Sort
u_1}
(
a
:
α
)
(
f₁
f₂
:
ℕ
→
α
→
α
)
(
n
:
ℕ
)
(
H
:
∀
m
<
n
,
∀ (
a
:
α
),
f₁
m
a
=
f₂
m
a
)
:
rec
a
f₁
n
=
rec
a
f₂
n
source
theorem
Nat
.
least_number
(
P
:
ℕ
→
Prop
)
(
hP
:
∃ (
x
:
ℕ
),
P
x
)
:
∃ (
x
:
ℕ
),
P
x
∧
∀
z
<
x
,
¬
P
z
source
def
Nat
.
toFin
(
n
a✝
:
ℕ
)
:
Option
(
Fin
n
)
Equations
n
.
toFin
x
=
if hx :
x
<
n
then
some
⟨
x
,
hx
⟩
else
none
Instances For
source
theorem
Nat
.
zero_lt_of_not_zero
{
n
:
ℕ
}
(
hn
:
n
≠
0
)
:
0
<
n
source
theorem
Nat
.
one_le_of_bodd
{
n
:
ℕ
}
(
h
:
n
.
bodd
=
true
)
:
1
≤
n
source
theorem
Nat
.
pair_le_pair_of_le
{
a₁
a₂
b₁
b₂
:
ℕ
}
(
ha
:
a₁
≤
a₂
)
(
hb
:
b₁
≤
b₂
)
:
pair
a₁
b₁
≤
pair
a₂
b₂