Theorem: LO.FirstOrder.Arith.Model.le_iff_le_log_of_exp (Arithmetization/ISigmaZero/Exponential/Log.lean)

State before:
M : Type u_1
inst✝⁵ : Zero M
inst✝⁴ : One M
inst✝³ : Add M
inst✝² : Mul M
inst✝¹ : LT M
inst✝ : M ⊧ₘ* 𝐈𝚫₀
x y a : M
H : Exponential x y
pos : 0 < a
⊢ y ≤ a → x ≤ log a
Tactic:
rcases H.log_eq_of_exp
State after:
case refl
M : Type u_1
inst✝⁵ : Zero M
inst✝⁴ : One M
inst✝³ : Add M
inst✝² : Mul M
inst✝¹ : LT M
inst✝ : M ⊧ₘ* 𝐈𝚫₀
y a : M
pos : 0 < a
H : Exponential (log y) y
⊢ y ≤ a → log y ≤ log a

State before:
case refl
M : Type u_1
inst✝⁵ : Zero M
inst✝⁴ : One M
inst✝³ : Add M
inst✝² : Mul M
inst✝¹ : LT M
inst✝ : M ⊧ₘ* 𝐈𝚫₀
y a : M
pos : 0 < a
H : Exponential (log y) y
⊢ y ≤ a → log y ≤ log a
Tactic:
exact log_monotone
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 ⊧ₘ* 𝐈𝚫₀
x y a : M
H : Exponential x y
pos : 0 < a
h : x ≤ log a
⊢ y ≤ a
Tactic:
rcases log_pos pos with ⟨a', ha', Haa', _⟩
State after:
case intro.intro.intro
M : Type u_1
inst✝⁵ : Zero M
inst✝⁴ : One M
inst✝³ : Add M
inst✝² : Mul M
inst✝¹ : LT M
inst✝ : M ⊧ₘ* 𝐈𝚫₀
x y a : M
H : Exponential x y
pos : 0 < a
h : x ≤ log a
a' : M
ha' : a' ≤ a
Haa' : Exponential (log a) a'
right✝ : a < 2 * a'
⊢ y ≤ a

State before:
case intro.intro.intro
M : Type u_1
inst✝⁵ : Zero M
inst✝⁴ : One M
inst✝³ : Add M
inst✝² : Mul M
inst✝¹ : LT M
inst✝ : M ⊧ₘ* 𝐈𝚫₀
x y a : M
H : Exponential x y
pos : 0 < a
h : x ≤ log a
a' : M
ha' : a' ≤ a
Haa' : Exponential (log a) a'
right✝ : a < 2 * a'
⊢ y ≤ a
Tactic:
exact le_trans (Exponential.monotone_le H Haa' h) ha'
State after:
no goals