The Strategy Outline recommends:
Define τ'(n) = if n ≤ k then n+1 else τ(n) that grows faster than identity everywhere
Presumably the intended Lean implementation is
let τ' : ℕ → ℕ := fun n ↦ if h : n ≤ k then n+1 else τ n (lt_of_not_ge h)
It's not so clear though (at least to me) how one then uses the "then" and "else" branches later in the proof
(maybe there are even some additional tactic(s) needed to do this?). For example:
apply Subseq_of_Iterate
intro n -- goal becomes: n < τ' n
by_cases h : n ≤ k
have f0 : τ' n = n + 1 := by sorry
I think it would be really helpful to have a hint/tactic that allows plugging in the "then" branch of τ'.
Thanks
The Strategy Outline recommends:
Define τ'(n) = if n ≤ k then n+1 else τ(n) that grows faster than identity everywhere
Presumably the intended Lean implementation is
let τ' : ℕ → ℕ := fun n ↦ if h : n ≤ k then n+1 else τ n (lt_of_not_ge h)
It's not so clear though (at least to me) how one then uses the "then" and "else" branches later in the proof
(maybe there are even some additional tactic(s) needed to do this?). For example:
apply Subseq_of_Iterate
intro n -- goal becomes: n < τ' n
by_cases h : n ≤ k
have f0 : τ' n = n + 1 := by sorry
I think it would be really helpful to have a hint/tactic that allows plugging in the "then" branch of τ'.
Thanks