Erdős–Feller–Pollard renewal theorem, null case:
ProvedRenewal.renewal_null_limitLet be the waiting-time distribution of a recurrent event (a renewal process): is the probability that the first occurrence happens at time , and the event occurs with probability one, i.e. . Write
for the tail of that law, so that , , and is exactly the statement that the law is proper. Let be the associated renewal sequence, defined by
so is the probability that the event occurs at time .
The mean waiting time is . This theorem is the null case of the Erdős–Feller–Pollard renewal theorem: if — equivalently, if the tail sequence is not summable — then
Note that no aperiodicity hypothesis is needed: in the positive-recurrent case () the limit of is only along the period, but when the limit is along the full sequence for any period.
Formalization notes. The waiting-time law is presented through its tail rather than through directly, which is both the form in which the hypotheses are usually available and the form that makes "infinite mean" expressible without an infinite sum: hstep says , hr0 says (properness at time ), hrlim says (the law is proper, i.e. the event is recurrent), and hrsum says (infinite mean). Only the values are used; is irrelevant. In hurec the index is shifted so that the sum runs over k ∈ Finset.range (n+1) with summand , which is .
Typical use. For an irreducible recurrent Markov chain on a countable state space and a state , taking and satisfies exactly these hypotheses; null recurrence is the failure of summability of , and the conclusion is .
import Mathlib.Analysis.SpecificLimits.Normed import Mathlib.Analysis.PSeries import Mathlib.Order.Filter.AtTopBot.Basic import Mathlib.Topology.Algebra.Order.LiminfLimsup
namespace Renewal
/-- **Erdős–Feller–Pollard renewal theorem, null (infinite-mean) case.** -/
theorem renewal_null_limit (f r u : ℕ → ℝ)
(hf : ∀ k, 0 ≤ f k)
(hstep : ∀ n : ℕ, r n = r (n + 1) + f (n + 1))
(hr0 : r 0 = 1)
(hrlim : Filter.Tendsto r Filter.atTop (nhds 0))
(hrsum : ¬ Summable r)
(hu0 : u 0 = 1)
(hurec : ∀ n : ℕ, u (n + 1) = ∑ k ∈ Finset.range (n + 1), f (k + 1) * u (n - k)) :
Filter.Tendsto u Filter.atTop (nhds 0) := by sorry
end Renewal