Theorem: LO.FirstOrder.Arith.Model.div_add_mul_self (Arithmetization/Basic/IOpen.lean)

State before:
M : Type u_1
inst✝⁶ : Zero M
inst✝⁵ : One M
inst✝⁴ : Add M
inst✝³ : Mul M
inst✝² : LT M
inst✝¹ : M ⊧ₘ* 𝐏𝐀⁻
inst✝ : M ⊧ₘ* 𝐈open
a c b : M
pos : 0 < b
⊢ (a + c * b) / b = a / b + c
Tactic:
rcases div_spec_of_pos' a pos with ⟨r, hr, ex⟩
State after:
case intro.intro
M : Type u_1
inst✝⁶ : Zero M
inst✝⁵ : One M
inst✝⁴ : Add M
inst✝³ : Mul M
inst✝² : LT M
inst✝¹ : M ⊧ₘ* 𝐏𝐀⁻
inst✝ : M ⊧ₘ* 𝐈open
a c b : M
pos : 0 < b
r : M
hr : r < b
ex : a = a / b * b + r
⊢ (a + c * b) / b = a / b + c

State before:
case intro.intro
M : Type u_1
inst✝⁶ : Zero M
inst✝⁵ : One M
inst✝⁴ : Add M
inst✝³ : Mul M
inst✝² : LT M
inst✝¹ : M ⊧ₘ* 𝐏𝐀⁻
inst✝ : M ⊧ₘ* 𝐈open
a c b : M
pos : 0 < b
r : M
hr : r < b
ex : a = a / b * b + r
⊢ (a + c * b) / b = a / b + c
Tactic:
simpa [add_mul, add_right_comm, ← ex] using div_mul_add (a / b + c) _ hr
State after:
no goals