Theorem: LO.FirstOrder.Arith.Model.Exponential.append_lt (Arithmetization/ISigmaZero/Exponential/Exp.lean)

State before:
M : Type u_1
inst✝⁵ : Zero M
inst✝⁴ : One M
inst✝³ : Add M
inst✝² : Mul M
inst✝¹ : LT M
inst✝ : M ⊧ₘ* 𝐈𝚫₀
i X z : M
hz : z < i
⊢ X % i + z * i < (1 + z) * i
Tactic:
simp [add_mul]
State after:
M : Type u_1
inst✝⁵ : Zero M
inst✝⁴ : One M
inst✝³ : Add M
inst✝² : Mul M
inst✝¹ : LT M
inst✝ : M ⊧ₘ* 𝐈𝚫₀
i X z : M
hz : z < i
⊢ X % i < i

State before:
M : Type u_1
inst✝⁵ : Zero M
inst✝⁴ : One M
inst✝³ : Add M
inst✝² : Mul M
inst✝¹ : LT M
inst✝ : M ⊧ₘ* 𝐈𝚫₀
i X z : M
hz : z < i
⊢ X % i < i
Tactic:
exact mod_lt _ (pos_of_gt hz)
State after:
no goals

State before:
M : Type u_1
inst✝⁵ : Zero M
inst✝⁴ : One M
inst✝³ : Add M
inst✝² : Mul M
inst✝¹ : LT M
inst✝ : M ⊧ₘ* 𝐈𝚫₀
i X z : M
hz : z < i
⊢ (1 + z) * i ≤ i ^ 2
Tactic:
simp [sq, add_comm]
State after:
M : Type u_1
inst✝⁵ : Zero M
inst✝⁴ : One M
inst✝³ : Add M
inst✝² : Mul M
inst✝¹ : LT M
inst✝ : M ⊧ₘ* 𝐈𝚫₀
i X z : M
hz : z < i
⊢ (z + 1) * i ≤ i * i

State before:
M : Type u_1
inst✝⁵ : Zero M
inst✝⁴ : One M
inst✝³ : Add M
inst✝² : Mul M
inst✝¹ : LT M
inst✝ : M ⊧ₘ* 𝐈𝚫₀
i X z : M
hz : z < i
⊢ (z + 1) * i ≤ i * i
Tactic:
exact mul_le_mul_of_nonneg_right (lt_iff_succ_le.mp hz) (by simp)
State after:
no goals

State before:
M : Type u_1
inst✝⁵ : Zero M
inst✝⁴ : One M
inst✝³ : Add M
inst✝² : Mul M
inst✝¹ : LT M
inst✝ : M ⊧ₘ* 𝐈𝚫₀
i X z : M
hz : z < i
⊢ 0 ≤ i
Tactic:
simp
State after:
no goals