English
Iterating a function op on α: define iterate(op) as op applied k times starting from a, with 0 iterations returning a.
Русский
Итерирование функции op на множестве α: iterate(op) применяет op k раз к аргументу; при k=0 возвращается сам аргумент.
LaTeX
$$$\\operatorname{iterate}: (α \\to α) \\to \\mathbb{N} \\to α \\to α$ with $\\ iterate(op,0,a)=a$ and $\\iterate(op,k+1,a)=\\iterate(op,k,op(a))$$$
Lean4
/-- Iterate a function. -/
def iterate {α : Sort u} (op : α → α) : ℕ → α → α
| 0, a => a
| succ k, a => iterate op k (op a)