rcases zero_or_succ x with (rfl | ⟨x', rfl⟩)
M : Type u_1
inst✝⁵ : Zero M
inst✝⁴ : One M
inst✝³ : Add M
inst✝² : Mul M
inst✝¹ : LT M
inst✝ : M ⊧ₘ* 𝐈𝚫₀
x y : M
h : Exponential x y
⊢ x = 0 ∧ y = 1 ∨ ∃ x' y', x = x' + 1 ∧ y = 2 * y' ∧ Exponential x' y'
case inl
M : Type u_1
inst✝⁵ : Zero M
inst✝⁴ : One M
inst✝³ : Add M
inst✝² : Mul M
inst✝¹ : LT M
inst✝ : M ⊧ₘ* 𝐈𝚫₀
y : M
h : Exponential 0 y
⊢ 0 = 0 ∧ y = 1 ∨ ∃ x' y', 0 = x' + 1 ∧ y = 2 * y' ∧ Exponential x' y'

case inr.intro
M : Type u_1
inst✝⁵ : Zero M
inst✝⁴ : One M
inst✝³ : Add M
inst✝² : Mul M
inst✝¹ : LT M
inst✝ : M ⊧ₘ* 𝐈𝚫₀
y x' : M
h : Exponential (x' + 1) y
⊢ x' + 1 = 0 ∧ y = 1 ∨ ∃ x'_1 y', x' + 1 = x'_1 + 1 ∧ y = 2 * y' ∧ Exponential x'_1 y'