Skip to content
Rainbow docs menu

Reference · Finite types, distributions and Markov chains

rainbow.math.finite.markov-hastings-positive

Finite types, distributions and Markov chainssrc/rainbow/math/finite/markov_hastings_positive.clj0 definitions, 5 theorems

Strict-positivity certificates for division-free Hastings transitions. If both directed target-proposal products are positive, then their minimum (the accepted flow) is positive. The same hypotheses make the ratio acceptance positive; multiplying by the positive forward proposal therefore makes the accepted transition positive. These are the mathematical bridge from full-support target/proposal data to one-step reachability. Native, kernel-checked, and axiom-free on D63.

Depends onmath.finite.markov-hastings-flowmath.rational.nnrat.positive

mcmc/nnrat-hastings-ratio-acceptance-positive

TheoremFor all inputsNo axiomsSource, line 56

mcmc/nnrat-hastings-ratio-acceptance-positive :
  (forward reverse : ℚ≥0) (forward-positive : nnrat/positive forward)
  (reverse-positive : nnrat/positive reverse)
  → nnrat/positive (mcmc/nnrat-hastings-ratio-acceptance forward reverse)

ℚ≥0 = nnrat/NonnegativeRational

mcmc/nnrat-hastings-accepted-flow-positive

TheoremFor all inputsNo axiomsSource, line 77

mcmc/nnrat-hastings-accepted-flow-positive.{u} :
  (S : Type u) (target : S → ℚ≥0) (proposal : S → S → ℚ≥0) (left right : S)
  (target-left-positive : nnrat/positive (target left))
  (proposal-forward-positive : nnrat/positive (proposal left right))
  (target-right-positive : nnrat/positive (target right))
  (proposal-reverse-positive : nnrat/positive (proposal right left))
  → nnrat/positive (mcmc/nnrat-hastings-accepted-flow S target proposal left right)

ℚ≥0 = nnrat/NonnegativeRational

mcmc/nnrat-hastings-accepted-transition-positive

TheoremFor all inputsNo axiomsSource, line 119

mcmc/nnrat-hastings-accepted-transition-positive.{u} :
  (S : Type u) (target : S → ℚ≥0) (proposal : S → S → ℚ≥0) (left right : S)
  (target-left-positive : nnrat/positive (target left))
  (proposal-forward-positive : nnrat/positive (proposal left right))
  (target-right-positive : nnrat/positive (target right))
  (proposal-reverse-positive : nnrat/positive (proposal right left))
  → nnrat/positive (mcmc/nnrat-hastings-accepted-transition S target proposal left right)

ℚ≥0 = nnrat/NonnegativeRational

mcmc/nnrat-hastings-completed-kernel-positive

TheoremFor all inputsNo axiomsSource, line 168

mcmc/nnrat-hastings-completed-kernel-positive.{u} :
  (S : Type u) (states : Finset S) (target : S → ℚ≥0) (proposal placement : S → S → ℚ≥0)
  (left right : S) (target-left-positive : nnrat/positive (target left))
  (proposal-forward-positive : nnrat/positive (proposal left right))
  (target-right-positive : nnrat/positive (target right))
  (proposal-reverse-positive : nnrat/positive (proposal right left))
  → nnrat/positive (mcmc/nnrat-hastings-completed-kernel S states target proposal placement left right)

Finset = finset-data/Finsetℚ≥0 = nnrat/NonnegativeRational

mcmc/nnrat-hastings-canonical-kernel-positive

TheoremFor all inputsNo axiomsSource, line 210

mcmc/nnrat-hastings-canonical-kernel-positive.{u} :
  (S : Type u) (states : Finset S) (target : S → ℚ≥0) (proposal : S → S → ℚ≥0)
  (decision : S → S → data/Bool) (left right : S)
  (target-left-positive : nnrat/positive (target left))
  (proposal-forward-positive : nnrat/positive (proposal left right))
  (target-right-positive : nnrat/positive (target right))
  (proposal-reverse-positive : nnrat/positive (proposal right left))
  → nnrat/positive (mcmc/nnrat-hastings-canonical-kernel S states target proposal decision left right)

Finset = finset-data/Finsetℚ≥0 = nnrat/NonnegativeRational