obtain (rfl : 1 = n) | (h4 : 1 < n) := (succ_le_iff.mpr h2.n_pos).eq_or_lt
N n✝ n : ℕ
h1 : ∀ m < n, ∀ (m_1 : ℕ), NatPredicate N m_1 m → ∃ k, m_1 = k.fib ∧ m = (k + 1).fib
m : ℕ
h2 : NatPredicate N m n
h3 : m ≤ n
⊢ ∃ k, m = k.fib ∧ n = (k + 1).fib
case inl
N n m : ℕ
h1 : ∀ m < 1, ∀ (m_1 : ℕ), NatPredicate N m_1 m → ∃ k, m_1 = k.fib ∧ m = (k + 1).fib
h2 : NatPredicate N m 1
h3 : m ≤ 1
⊢ ∃ k, m = k.fib ∧ 1 = (k + 1).fib

case inr
N n✝ n : ℕ
h1 : ∀ m < n, ∀ (m_1 : ℕ), NatPredicate N m_1 m → ∃ k, m_1 = k.fib ∧ m = (k + 1).fib
m : ℕ
h2 : NatPredicate N m n
h3 : m ≤ n
h4 : 1 < n
⊢ ∃ k, m = k.fib ∧ n = (k + 1).fib