Reference · Finite types, distributions and Markov chains
rainbow.math.finite.markov-overlap
Shared-mass certificates for finite Dobrushin bounds. Equal input total mass gives normalized TV + common mass = input mass. For probability rows, a lower bound on common mass certifies an upper bound on the all-pairs coefficient, without rational subtraction.
markov/nnrat-normalized-tv-is-left-residual-total
markov/nnrat-normalized-tv-is-left-residual-total.{u} :
(S : Type u) (states : Finset S) (left right : S → ℚ≥0)
(same-total : probability/nnrat-total-mass S states left = probability/nnrat-total-mass S states right)
→ markov/nnrat-normalized-total-variation S states left right = probability/nnrat-total-mass S states (fun i => nnrat/left-residual-mass (left i) (right i))= = nnrat/equivalent: equality of rational valuesFinset = finset-data/Finsetℚ≥0 = nnrat/NonnegativeRational
markov/nnrat-normalized-tv-plus-common-total
markov/nnrat-normalized-tv-plus-common-total.{u} :
(S : Type u) (states : Finset S) (left right : S → ℚ≥0)
(same-total : mass = probability/nnrat-total-mass S states right)
→ markov/nnrat-normalized-total-variation S states left right + probability/nnrat-total-mass S states (fun overlap-state => minmax/min (left overlap-state) (right overlap-state)) = mass
where mass := probability/nnrat-total-mass S states left+ = nnrat/add= = nnrat/equivalent: equality of rational valuesFinset = finset-data/Finsetℚ≥0 = nnrat/NonnegativeRational
markov/nnrat-normalized-tv-at-most-of-common-mass
markov/nnrat-normalized-tv-at-most-of-common-mass.{u} :
(S : Type u) (states : Finset S) (left right : S → ℚ≥0)
(left-normalized : probability/nnrat-total-mass S states left = 1)
(right-normalized : probability/nnrat-total-mass S states right = 1)
(rho : ℚ≥0)
(overlap-budget : 1 ≤ rho + probability/nnrat-total-mass S states (fun overlap-state => minmax/min (left overlap-state) (right overlap-state)))
→ markov/nnrat-normalized-total-variation S states left right ≤ rho+ = nnrat/add1 = nnrat/one= = nnrat/equivalent: equality of rational valuesFinset = finset-data/Finsetℚ≥0 = nnrat/NonnegativeRational≤ = nnrat/at-most
markov/nnrat-common-total-at-least-listed-term
markov/nnrat-common-total-at-least-listed-term.{u} :
(S : Type u) (states : Finset S) (left right : S → ℚ≥0) (target : S)
(target-member : list/membership S (finset-data/enumeration S states) target)
(epsilon : ℚ≥0)
(left-bound : epsilon ≤ left target)
(right-bound : epsilon ≤ right target)
→ epsilon ≤ probability/nnrat-total-mass S states (fun overlap-state => minmax/min (left overlap-state) (right overlap-state))Finset = finset-data/Finsetℚ≥0 = nnrat/NonnegativeRational≤ = nnrat/at-most
markov/signed-kernel-dobrushin-at-most-of-common-mass
markov/signed-kernel-dobrushin-at-most-of-common-mass.{u} :
(S : Type u) (states : Finset S) (kernel : S → S → ℚ≥0)
(normalized : markov/nnrat-kernel-rows-normalized S states kernel) (rho : ℚ≥0)
(overlap-budget : ∀ (i : S), ∀ (i-member : membership i), ∀ (j : S), ∀ (j-member : membership j), 1 ≤ rho + probability/nnrat-total-mass S states (fun overlap-state => minmax/min (kernel i overlap-state) (kernel j overlap-state)))
→ markov/signed-kernel-dobrushin-coefficient S states kernel ≤ signed/from-nnrat rho
where membership := list/membership S (finset-data/enumeration S states)+ = nnrat/add1 = nnrat/oneFinset = finset-data/Finsetℚ≥0 = nnrat/NonnegativeRational≤ = signed/at-most