Library Coq.Arith.Lt
Theorems about
lt
in nat.
lt
is defined in library
Init
/
Peano.v
as:
Definition lt (n m:nat) := S n <= m. Infix "<" := lt : nat_scope.
Require
Import
Le
.
Local
Open
Scope
nat_scope
.
Implicit
Types
m
n
p
:
nat
.
Irreflexivity
Theorem
lt_irrefl
:
forall
n
,
~
n
<
n
.
Hint Resolve
lt_irrefl
:
arith
v62
.
Relationship between
le
and
lt
Theorem
lt_le_S
:
forall
n
m
,
n
<
m
->
S
n
<=
m
.
Hint Immediate
lt_le_S
:
arith
v62
.
Theorem
lt_n_Sm_le
:
forall
n
m
,
n
<
S
m
->
n
<=
m
.
Hint Immediate
lt_n_Sm_le
:
arith
v62
.
Theorem
le_lt_n_Sm
:
forall
n
m
,
n
<=
m
->
n
<
S
m
.
Hint Immediate
le_lt_n_Sm
:
arith
v62
.
Theorem
le_not_lt
:
forall
n
m
,
n
<=
m
->
~
m
<
n
.
Theorem
lt_not_le
:
forall
n
m
,
n
<
m
->
~
m
<=
n
.
Hint Immediate
le_not_lt
lt_not_le
:
arith
v62
.
Asymmetry
Theorem
lt_asym
:
forall
n
m
,
n
<
m
->
~
m
<
n
.
Order and successor
Theorem
lt_n_Sn
:
forall
n
,
n
<
S
n
.
Hint Resolve
lt_n_Sn
:
arith
v62
.
Theorem
lt_S
:
forall
n
m
,
n
<
m
->
n
<
S
m
.
Hint Resolve
lt_S
:
arith
v62
.
Theorem
lt_n_S
:
forall
n
m
,
n
<
m
->
S
n
<
S
m
.
Hint Resolve
lt_n_S
:
arith
v62
.
Theorem
lt_S_n
:
forall
n
m
,
S
n
<
S
m
->
n
<
m
.
Hint Immediate
lt_S_n
:
arith
v62
.
Theorem
lt_0_Sn
:
forall
n
, 0
<
S
n
.
Hint Resolve
lt_0_Sn
:
arith
v62
.
Theorem
lt_n_0
:
forall
n
,
~
n
<
0.
Hint Resolve
lt_n_0
:
arith
v62
.
Predecessor
Lemma
S_pred
:
forall
n
m
,
m
<
n
->
n
=
S
(
pred
n
).
Lemma
lt_pred
:
forall
n
m
,
S
n
<
m
->
n
<
pred
m
.
Hint Immediate
lt_pred
:
arith
v62
.
Lemma
lt_pred_n_n
:
forall
n
, 0
<
n
->
pred
n
<
n
.
Hint Resolve
lt_pred_n_n
:
arith
v62
.
Transitivity properties
Theorem
lt_trans
:
forall
n
m
p
,
n
<
m
->
m
<
p
->
n
<
p
.
Theorem
lt_le_trans
:
forall
n
m
p
,
n
<
m
->
m
<=
p
->
n
<
p
.
Theorem
le_lt_trans
:
forall
n
m
p
,
n
<=
m
->
m
<
p
->
n
<
p
.
Hint Resolve
lt_trans
lt_le_trans
le_lt_trans
:
arith
v62
.
Large = strict or equal
Theorem
le_lt_or_eq
:
forall
n
m
,
n
<=
m
->
n
<
m
\/
n
=
m
.
Theorem
le_lt_or_eq_iff
:
forall
n
m
,
n
<=
m
<->
n
<
m
\/
n
=
m
.
Theorem
lt_le_weak
:
forall
n
m
,
n
<
m
->
n
<=
m
.
Hint Immediate
lt_le_weak
:
arith
v62
.
Dichotomy
Theorem
le_or_lt
:
forall
n
m
,
n
<=
m
\/
m
<
n
.
Theorem
nat_total_order
:
forall
n
m
,
n
<>
m
->
n
<
m
\/
m
<
n
.
Comparison to 0
Theorem
neq_0_lt
:
forall
n
, 0
<>
n
-> 0
<
n
.
Hint Immediate
neq_0_lt
:
arith
v62
.
Theorem
lt_0_neq
:
forall
n
, 0
<
n
-> 0
<>
n
.
Hint Immediate
lt_0_neq
:
arith
v62
.