Documentation

MetropolizedBackwardSampling.Algorithm.Comparison

The comparison of the selection rules #

By Lemma 4 of the paper, the joint distribution of the reference x_{1:T} ∼ π and of the output x̃_{1:T} of Algorithm 1 is that of the trajectories (x_1^{b_1}, …, x_T^{b_T}) and (x_1^{l_1}, …, x_T^{l_T}), where the particle positions 𝐱 have their distribution under π̄ and, given 𝐱, the indices (b, l) have the probabilities pathProb of the backward Markov chain pairChain. Expectations under this joint distribution are therefore expectations, under the distribution of 𝐱, of the expectations E_𝐱 given 𝐱, which are finite sums. This identity is proved here for integrable functions. For the quantities of Section 4, the expectations E_𝐱 are the following.

Theorem 1, Corollary 1, and Propositions 2 and 3 then follow from the orderings of Finite/Ordering at each value of 𝐱. Proposition 4 follows from the form of pathProb when the transition densities do not depend on the previous state.

theorem CSMC.sum_expprod_image_of_injective {n : ℕ} {ι : Type u_2} [Fintype ι] [DecidableEq ι] {α : Type u_3} [DecidableEq α] (W : ι → ℝ) (B : Fin n → Matrix ι ι ℝ) (K : BackwardKernels ι n) (t : Fin (n + 1)) {v : ι → α} (hv : Function.Injective v) :
(∑ c ∈ Finset.image v Finset.univ, expprod W B K t fun (i : ι) => if v i = c then 1 else 0) = ∑ i : ι, expprod W B K t fun (k : ι) => if k = i then 1 else 0

If the positions v i of the particles are pairwise distinct, the sum of Q_t(1_S) over the classes S of indices whose particles are equal is ∑_i Q_t(1_{i}).

theorem CSMC.sum_pathProb_mul_ne_step {n : ℕ} {ι : Type u_2} [Fintype ι] [DecidableEq ι] {W : ι → ℝ} {B : Fin n → Matrix ι ι ℝ} {K : BackwardKernels ι n} (hW : ∑ i : ι, W i = 1) (hKf : K.final ∈ Matrix.rowStochastic ℝ ι) (hB : ∀ (s : Fin n) (j : ι), ∑ i : ι, B s i j = 1) (hKs : ∀ (s : Fin n) (j j' : ι), K.step s j j' ∈ Matrix.rowStochastic ℝ ι) (s : Fin n) :
(∑ b : Fin (n + 1) → ι, ∑ l : Fin (n + 1) → ι, pathProb W B K b l * if l s.castSucc = b s.castSucc ∧ l s.succ = b s.succ then 0 else 1) = 1 - ∑ j : ι, marg W B K s.succ j j * ∑ i : ι, B s i j * K.step s j j i i

For kernels which satisfy the hypotheses of Algorithm 1, the probability that the indices of the output and of the reference differ at the time s.castSucc or at the time s.succ is 1 - ∑_j P_𝐱(b_{t+1} = l_{t+1} = j) ∑_i B_t(i|j) K_{t,j,j}(i, i).

theorem CSMC.pathProb_CMBS_fin_two {n : ℕ} {w : Fin (n + 1) → Fin 2 → ℝ} (hw : ∀ (t : Fin (n + 1)), IsProbVector (w t)) {B : Fin n → Matrix (Fin 2) (Fin 2) ℝ} (hB : ∀ (s : Fin n) (i j : Fin 2), B s i j = w s.castSucc i) (b l : Fin (n + 1) → Fin 2) :
pathProb (w (Fin.last n)) B (SelectionRule.CMBS.kernels (w (Fin.last n)) B) b l = (w (Fin.last n) (b (Fin.last n)) * ∏ s : Fin n, w s.castSucc (b s.castSucc)) * ∏ t : Fin (n + 1), forced (w t) (b t) (l t)

Under CM-BS with two particles, if B_s(i|j) = w_s(i) for all s, i, and j, where the w_t are probability vectors and w_T is the vector of final weights, the probability of the indices b of the reference and l of the output is w_T(b_T) ∏_s w_s(b_s) times ∏_t F_{w_t}(b_t, l_t).

theorem CSMC.FeynmanKac.pathProb_nonneg' {X : Type u_1} [MeasurableSpace X] {n N : ℕ} {μ : MeasureTheory.Measure X} (M : FeynmanKac μ n) {K : Pos X n N → BackwardKernels (Fin N) n} (hK : ∀ (y : Pos X n N), Admissible (M.weight y (Fin.last n)) (M.bsprob y) (K y)) (y : Pos X n N) (b l : Idx n N) :
0 ≤ pathProb (M.weight y (Fin.last n)) (M.bsprob y) (K y) b l

For kernels which satisfy the hypotheses of Algorithm 1, the probabilities pathProb of the backward Markov chain on pairs of indices are nonnegative.

theorem CSMC.FeynmanKac.sum_pathProb' {X : Type u_1} [MeasurableSpace X] {n N : ℕ} {μ : MeasureTheory.Measure X} (M : FeynmanKac μ n) (hN : 0 < N) {K : Pos X n N → BackwardKernels (Fin N) n} (hK : ∀ (y : Pos X n N), Admissible (M.weight y (Fin.last n)) (M.bsprob y) (K y)) (y : Pos X n N) :
∑ b : Idx n N, ∑ l : Idx n N, pathProb (M.weight y (Fin.last n)) (M.bsprob y) (K y) b l = 1

With at least one particle, for kernels which satisfy the hypotheses of Algorithm 1, the probabilities pathProb of the backward Markov chain on pairs of indices sum to one.

theorem CSMC.FeynmanKac.isMarkovKernel_pairChain {X : Type u_1} [MeasurableSpace X] {n N : ℕ} {μ : MeasureTheory.Measure X} (M : FeynmanKac μ n) (hN : 0 < N) {K : Pos X n N → BackwardKernels (Fin N) n} (hK : ∀ (y : Pos X n N), Admissible (M.weight y (Fin.last n)) (M.bsprob y) (K y)) (hKm : MeasurableKernels K) :

With at least one particle, for measurable kernels which satisfy the hypotheses of Algorithm 1, the backward Markov chain pairChain K on pairs of indices is a Markov kernel.

theorem CSMC.FeynmanKac.integral_pairChain {X : Type u_1} [MeasurableSpace X] {n N : ℕ} {μ : MeasureTheory.Measure X} (M : FeynmanKac μ n) {K : Pos X n N → BackwardKernels (Fin N) n} (hK : ∀ (y : Pos X n N), Admissible (M.weight y (Fin.last n)) (M.bsprob y) (K y)) (hKm : MeasurableKernels K) (y : Pos X n N) (g : Idx n N × Idx n N → ℝ) :
∫ (bl : Idx n N × Idx n N), g bl ∂(M.pairChain K) y = ∑ b : Fin (n + 1) → Fin N, ∑ l : Fin (n + 1) → Fin N, pathProb (M.weight y (Fin.last n)) (M.bsprob y) (K y) b l * g (b, l)

For kernels which satisfy the hypotheses of Algorithm 1, integrals with respect to the backward Markov chain pairChain K are the sums over the pairs (b, l) weighted by pathProb.

theorem CSMC.FeynmanKac.measurable_trajOf_pair {X : Type u_1} [MeasurableSpace X] {n N : ℕ} :
Measurable fun (w : Pos X n N × Idx n N × Idx n N) => (trajOf w.1 w.2.1, trajOf w.1 w.2.2)

The map which sends the particle positions and the pair (b, l) to the trajectories (x_1^{b_1}, …, x_T^{b_T}) and (x_1^{l_1}, …, x_T^{l_T}) is measurable.

theorem CSMC.FeynmanKac.integral_target_compProd_csmc {X : Type u_1} [MeasurableSpace X] {n N : ℕ} {μ : MeasureTheory.Measure X} (M : FeynmanKac μ n) [MeasureTheory.SigmaFinite μ] (hN : 0 < N) {K : Pos X n N → BackwardKernels (Fin N) n} (hK : ∀ (y : Pos X n N), Admissible (M.weight y (Fin.last n)) (M.bsprob y) (K y)) (hKm : MeasurableKernels K) {g : Traj X n × Traj X n → ℝ} (hg : MeasureTheory.Integrable g (M.target.compProd (M.csmc K))) :
MeasureTheory.Integrable (fun (y : Pos X n N) => ∑ b : Fin (n + 1) → Fin N, ∑ l : Fin (n + 1) → Fin N, pathProb (M.weight y (Fin.last n)) (M.bsprob y) (K y) b l * g (trajOf y b, trajOf y l)) (MeasureTheory.Measure.map Prod.fst (M.exttarget N)) ∧ ∫ (z : Traj X n × Traj X n), g z ∂M.target.compProd (M.csmc K) = ∫ (y : Pos X n N), ∑ b : Fin (n + 1) → Fin N, ∑ l : Fin (n + 1) → Fin N, pathProb (M.weight y (Fin.last n)) (M.bsprob y) (K y) b l * g (trajOf y b, trajOf y l) ∂MeasureTheory.Measure.map Prod.fst (M.exttarget N)

For measurable kernels which satisfy the hypotheses of Algorithm 1, the expectation of an integrable function g of the reference x_{1:T} ∼ π and of the output x̃_{1:T} of Algorithm 1 is the expectation, under the distribution of the particle positions 𝐱 under π̄, of E_𝐱{g(x, x̃)} = ∑_{b, l} pathProb(b, l) g((x_t^{b_t})_t, (x_t^{l_t})_t), which is integrable.

theorem CSMC.FeynmanKac.integrable_mul_target_compProd_csmc {X : Type u_1} [MeasurableSpace X] {n N : ℕ} {μ : MeasureTheory.Measure X} (M : FeynmanKac μ n) [MeasureTheory.SigmaFinite μ] (hN : 0 < N) {K : Pos X n N → BackwardKernels (Fin N) n} (hK : ∀ (y : Pos X n N), Admissible (M.weight y (Fin.last n)) (M.bsprob y) (K y)) (hKm : MeasurableKernels K) {φ : Traj X n → ℝ} (hφ : MeasureTheory.MemLp φ 2 M.target) :
MeasureTheory.Integrable (fun (z : Traj X n × Traj X n) => φ z.1 * φ z.2) (M.target.compProd (M.csmc K))

For measurable kernels which satisfy the hypotheses of Algorithm 1, if φ(x)² is integrable under π, then φ(x) φ(x̃) is integrable under the joint distribution of the reference and the output: both have the distribution π.

theorem CSMC.FeynmanKac.admissible_ruleKernels {X : Type u_1} [MeasurableSpace X] {n N : ℕ} {μ : MeasureTheory.Measure X} (M : FeynmanKac μ n) (hN : 0 < N) (r : SelectionRule) (y : Pos X n N) :
Admissible (M.weight y (Fin.last n)) (M.bsprob y) (M.ruleKernels N r y)

With at least one particle, the kernels of each selection rule satisfy the hypotheses of Algorithm 1 at all particle positions.

theorem CSMC.FeynmanKac.integral_mul_csmc {X : Type u_1} [MeasurableSpace X] {n N : ℕ} {μ : MeasureTheory.Measure X} (M : FeynmanKac μ n) [MeasureTheory.SigmaFinite μ] (hN : 0 < N) {K : Pos X n N → BackwardKernels (Fin N) n} (hK : ∀ (y : Pos X n N), Admissible (M.weight y (Fin.last n)) (M.bsprob y) (K y)) (hKm : MeasurableKernels K) (t : Fin (n + 1)) {f : X → ℝ} (hf2 : MeasureTheory.MemLp (fun (x : Traj X n) => f (x t)) 2 M.target) :
MeasureTheory.Integrable (fun (y : Pos X n N) => expprod (M.weight y (Fin.last n)) (M.bsprob y) (K y) t fun (i : Fin N) => f (y (t, i))) (MeasureTheory.Measure.map Prod.fst (M.exttarget N)) ∧ ∫ (z : Traj X n × Traj X n), f (z.1 t) * f (z.2 t) ∂M.target.compProd (M.csmc K) = ∫ (y : Pos X n N), expprod (M.weight y (Fin.last n)) (M.bsprob y) (K y) t fun (i : Fin N) => f (y (t, i)) ∂MeasureTheory.Measure.map Prod.fst (M.exttarget N)

For measurable kernels which satisfy the hypotheses of Algorithm 1, if f(x_t)² is integrable under π, then E{f(x_t) f(x̃_t)} is the expectation, under the distribution of the particle positions under π̄, of the expected product Q_t(φ) with φ(i) = f(x_t^i), which is integrable.

theorem CSMC.FeynmanKac.integral_mul_pair_csmc {X : Type u_1} [MeasurableSpace X] {n N : ℕ} {μ : MeasureTheory.Measure X} (M : FeynmanKac μ n) [MeasureTheory.SigmaFinite μ] (hN : 0 < N) {K : Pos X n N → BackwardKernels (Fin N) n} (hK : ∀ (y : Pos X n N), Admissible (M.weight y (Fin.last n)) (M.bsprob y) (K y)) (hKm : MeasurableKernels K) (s : Fin n) {f : X × X → ℝ} (hf2 : MeasureTheory.MemLp (fun (x : Traj X n) => f (x s.castSucc, x s.succ)) 2 M.target) :
MeasureTheory.Integrable (fun (y : Pos X n N) => expprodPair (M.weight y (Fin.last n)) (M.bsprob y) (K y) s fun (i j : Fin N) => f (y (s.castSucc, i), y (s.succ, j))) (MeasureTheory.Measure.map Prod.fst (M.exttarget N)) ∧ ∫ (z : Traj X n × Traj X n), f (z.1 s.castSucc, z.1 s.succ) * f (z.2 s.castSucc, z.2 s.succ) ∂M.target.compProd (M.csmc K) = ∫ (y : Pos X n N), expprodPair (M.weight y (Fin.last n)) (M.bsprob y) (K y) s fun (i j : Fin N) => f (y (s.castSucc, i), y (s.succ, j)) ∂MeasureTheory.Measure.map Prod.fst (M.exttarget N)

For measurable kernels which satisfy the hypotheses of Algorithm 1, if f(x_t, x_{t+1})² is integrable under π, then E{f(x_t, x_{t+1}) f(x̃_t, x̃_{t+1})} is the expectation, under the distribution of the particle positions under π̄, of expprodPair of φ(i, j) = f(x_t^i, x_{t+1}^j), which is integrable.

theorem CSMC.FeynmanKac.measureReal_target_compProd_csmc {X : Type u_1} [MeasurableSpace X] {n N : ℕ} {μ : MeasureTheory.Measure X} (M : FeynmanKac μ n) [MeasureTheory.SigmaFinite μ] (hN : 0 < N) {K : Pos X n N → BackwardKernels (Fin N) n} (hK : ∀ (y : Pos X n N), Admissible (M.weight y (Fin.last n)) (M.bsprob y) (K y)) (hKm : MeasurableKernels K) {S : Set (Traj X n × Traj X n)} (hS : MeasurableSet S) :
MeasureTheory.Integrable (fun (y : Pos X n N) => ∑ b : Fin (n + 1) → Fin N, ∑ l : Fin (n + 1) → Fin N, pathProb (M.weight y (Fin.last n)) (M.bsprob y) (K y) b l * S.indicator 1 (trajOf y b, trajOf y l)) (MeasureTheory.Measure.map Prod.fst (M.exttarget N)) ∧ (M.target.compProd (M.csmc K)).real S = ∫ (y : Pos X n N), ∑ b : Fin (n + 1) → Fin N, ∑ l : Fin (n + 1) → Fin N, pathProb (M.weight y (Fin.last n)) (M.bsprob y) (K y) b l * S.indicator 1 (trajOf y b, trajOf y l) ∂MeasureTheory.Measure.map Prod.fst (M.exttarget N)

For measurable kernels which satisfy the hypotheses of Algorithm 1, the probability of a measurable set S of pairs (x, x̃) is the expectation, under the distribution of the particle positions under π̄, of P_𝐱((x, x̃) ∈ S), which is integrable.

theorem CSMC.FeynmanKac.measureReal_ne_csmc {X : Type u_1} [MeasurableSpace X] {n N : ℕ} {μ : MeasureTheory.Measure X} (M : FeynmanKac μ n) [MeasureTheory.SigmaFinite μ] [MeasurableEq X] [DecidableEq X] (hN : 0 < N) {K : Pos X n N → BackwardKernels (Fin N) n} (hK : ∀ (y : Pos X n N), Admissible (M.weight y (Fin.last n)) (M.bsprob y) (K y)) (hKm : MeasurableKernels K) (t : Fin (n + 1)) :
MeasureTheory.Integrable (fun (y : Pos X n N) => 1 - ∑ c ∈ Finset.image (fun (i : Fin N) => y (t, i)) Finset.univ, expprod (M.weight y (Fin.last n)) (M.bsprob y) (K y) t fun (i : Fin N) => if y (t, i) = c then 1 else 0) (MeasureTheory.Measure.map Prod.fst (M.exttarget N)) ∧ (M.target.compProd (M.csmc K)).real {z : Traj X n × Traj X n | z.2 t ≠ z.1 t} = ∫ (y : Pos X n N), 1 - ∑ c ∈ Finset.image (fun (i : Fin N) => y (t, i)) Finset.univ, expprod (M.weight y (Fin.last n)) (M.bsprob y) (K y) t fun (i : Fin N) => if y (t, i) = c then 1 else 0 ∂MeasureTheory.Measure.map Prod.fst (M.exttarget N)

For measurable kernels which satisfy the hypotheses of Algorithm 1, the update rate P(x̃_t ≠ x_t) is the expectation, under the distribution of the particle positions under π̄, of 1 - ∑_S Q_t(1_S), where S ranges over the classes of indices whose particles at time t are equal. This function of the particle positions is integrable.

theorem CSMC.FeynmanKac.integral_mul_ordering {X : Type u_1} [MeasurableSpace X] {n N : ℕ} {μ : MeasureTheory.Measure X} (M : FeynmanKac μ n) [MeasureTheory.SigmaFinite μ] (hN : 0 < N) (t : Fin (n + 1)) {f : X → ℝ} (hf2 : MeasureTheory.MemLp (fun (x : Traj X n) => f (x t)) 2 M.target) :

Theorem 1, first part: for x_{1:T} ∼ π and a function f with f(x_t)² integrable, E{f(x_t) f(x̃_t)} is nonincreasing from AT to BS, FM-BS, and M-BS, and is at most as large under CM-BS as under FM-BS.

Theorem 1, second part: the update rates P(x̃_t ≠ x_t) are nonincreasing from M-BS to FM-BS, BS, and AT, and are at least as large under CM-BS as under FM-BS.

theorem CSMC.FeynmanKac.integral_mul_pair_ordering {X : Type u_1} [MeasurableSpace X] {n N : ℕ} {μ : MeasureTheory.Measure X} (M : FeynmanKac μ n) [MeasureTheory.SigmaFinite μ] (hN : 0 < N) (s : Fin n) {f : X × X → ℝ} (hf2 : MeasureTheory.MemLp (fun (x : Traj X n) => f (x s.castSucc, x s.succ)) 2 M.target) :

Corollary 1, first part: for x_{1:T} ∼ π and a function f with f(x_t, x_{t+1})² integrable, E{f(x_t, x_{t+1}) f(x̃_t, x̃_{t+1})} is nonincreasing from AT to BS, FM-BS, and M-BS.

theorem CSMC.FeynmanKac.measurableSet_pairwise_ne_step {X : Type u_1} [MeasurableSpace X] {n N : ℕ} [MeasurableEq X] (s : Fin n) :
MeasurableSet {y : Pos X n N | ∀ (i j : Fin N), i ≠ j → y (s.castSucc, i) ≠ y (s.castSucc, j) ∧ y (s.succ, i) ≠ y (s.succ, j)}

The set of particle positions at which the particles at the time s.castSucc are pairwise distinct and the particles at the time s.succ are pairwise distinct is measurable.

theorem CSMC.FeynmanKac.measureReal_ne_pair_csmc {X : Type u_1} [MeasurableSpace X] {n N : ℕ} {μ : MeasureTheory.Measure X} (M : FeynmanKac μ n) [MeasureTheory.SigmaFinite μ] [MeasurableEq X] (hN : 0 < N) {K : Pos X n N → BackwardKernels (Fin N) n} (hK : ∀ (y : Pos X n N), Admissible (M.weight y (Fin.last n)) (M.bsprob y) (K y)) (hKm : MeasurableKernels K) (s : Fin n) (hdist : ∀ᵐ (w : Pos X n N × Anc n N × Fin N) ∂M.exttarget N, ∀ (i j : Fin N), i ≠ j → w.1 (s.castSucc, i) ≠ w.1 (s.castSucc, j) ∧ w.1 (s.succ, i) ≠ w.1 (s.succ, j)) :
MeasureTheory.Integrable (fun (y : Pos X n N) => 1 - ∑ j : Fin N, marg (M.weight y (Fin.last n)) (M.bsprob y) (K y) s.succ j j * ∑ i : Fin N, M.bsprob y s i j * (K y).step s j j i i) (MeasureTheory.Measure.map Prod.fst (M.exttarget N)) ∧ (M.target.compProd (M.csmc K)).real {z : Traj X n × Traj X n | (z.2 s.castSucc, z.2 s.succ) ≠ (z.1 s.castSucc, z.1 s.succ)} = ∫ (y : Pos X n N), 1 - ∑ j : Fin N, marg (M.weight y (Fin.last n)) (M.bsprob y) (K y) s.succ j j * ∑ i : Fin N, M.bsprob y s i j * (K y).step s j j i i ∂MeasureTheory.Measure.map Prod.fst (M.exttarget N)

For measurable kernels which satisfy the hypotheses of Algorithm 1, if the particles at the time s.castSucc and those at the time s.succ are almost surely pairwise distinct under π̄, the probability P{(x̃_t, x̃_{t+1}) ≠ (x_t, x_{t+1})} is the expectation, under the distribution of the particle positions under π̄, of 1 - ∑_j P_𝐱(b_{t+1} = l_{t+1} = j) ∑_i B_t(i|j) K_{t,j,j}(i, i), which is integrable.

theorem CSMC.FeynmanKac.updateRate_pair_ordering {X : Type u_1} [MeasurableSpace X] {n N : ℕ} {μ : MeasureTheory.Measure X} (M : FeynmanKac μ n) [MeasureTheory.SigmaFinite μ] [MeasurableEq X] (hN : 0 < N) (s : Fin n) (hdist : ∀ᵐ (w : Pos X n N × Anc n N × Fin N) ∂M.exttarget N, ∀ (i j : Fin N), i ≠ j → w.1 (s.castSucc, i) ≠ w.1 (s.castSucc, j) ∧ w.1 (s.succ, i) ≠ w.1 (s.succ, j)) :

Corollary 1, second part: if the particles at the time t and those at the time t + 1 are almost surely pairwise distinct under π̄, the probabilities of {(x̃_t, x̃_{t+1}) ≠ (x_t, x_{t+1})} are nonincreasing from M-BS to FM-BS, BS, and AT, and are at least as large under CM-BS as under FM-BS.

theorem CSMC.FeynmanKac.measurable_dobrushin_bsprob {X : Type u_1} [MeasurableSpace X] {n N : ℕ} {μ : MeasureTheory.Measure X} (M : FeynmanKac μ n) (s : Fin n) :
Measurable fun (y : Pos X n N) => dobrushin (M.bsprob y s)

The Dobrushin coefficient of B_t is a measurable function of the particle positions.

theorem CSMC.FeynmanKac.mul_weight_le_bsprob {X : Type u_1} [MeasurableSpace X] {n N : ℕ} {μ : MeasureTheory.Measure X} (M : FeynmanKac μ n) (hN : 0 < N) {ε : ℝ} (hε : ε ≤ 1) (hm : ∀ (s : Fin n) (x x' x'' : X), ε * ↑(M.transdens s x' x'') ≤ ↑(M.transdens s x x'')) (y : Pos X n N) (s : Fin n) (i j : Fin N) :
ε * M.weight y s.castSucc i ≤ M.bsprob y s i j

If m_{s+1}(x, ·) ≥ ε m_{s+1}(x', ·) for all x, x' ∈ X and s, with ε ≤ 1, then B_s(i|j) ≥ ε W_s^i.

theorem CSMC.FeynmanKac.card_filter_le_castSucc {n : ℕ} (t : Fin (n + 1)) :
{s : Fin n | t ≤ s.castSucc}.card = n - ↑t

The number of backward steps s with t ≤ s, that is, of the times s ∈ [t, T - 1], is n - t.

theorem CSMC.FeynmanKac.washout {X : Type u_1} [MeasurableSpace X] {n N : ℕ} {μ : MeasureTheory.Measure X} (M : FeynmanKac μ n) [MeasureTheory.SigmaFinite μ] [MeasurableEq X] (hN : 0 < N) (t : Fin (n + 1)) :
have P := fun (r : SelectionRule) => (M.target.compProd (M.csmc (M.ruleKernels N r))).real {z : Traj X n × Traj X n | z.2 t ≠ z.1 t}; have β := ∫ (w : Pos X n N × Anc n N × Fin N), ∏ s : Fin n with t ≤ s.castSucc, dobrushin (M.bsprob w.1 s) ∂M.exttarget N; 0 ≤ P SelectionRule.FMBS - P SelectionRule.BS ∧ P SelectionRule.FMBS - P SelectionRule.BS ≤ β ∧ ∀ (ε : ℝ), 0 < ε → ε ≤ 1 → (∀ (s : Fin n) (x x' x'' : X), ε * ↑(M.transdens s x' x'') ≤ ↑(M.transdens s x x'')) → β ≤ (1 - ε) ^ (n - ↑t)

Proposition 2: the update rate P(x̃_t ≠ x_t) is at least as large under FM-BS as under BS, by at most E(∏_{s=t}^{T-1} β_s) under π̄. This expectation is at most (1 - ε)^{T-t} if m_{s+1}(x, ·) ≥ ε m_{s+1}(x', ·) for all x, x' ∈ X and s ∈ [T - 1].

theorem CSMC.FeynmanKac.integral_target_compProd_algLaw {X : Type u_1} [MeasurableSpace X] {n N : ℕ} {μ : MeasureTheory.Measure X} (M : FeynmanKac μ n) [MeasureTheory.SigmaFinite μ] (hN : 0 < N) {K : Pos X n N → BackwardKernels (Fin N) n} (hK : ∀ (y : Pos X n N), Admissible (M.weight y (Fin.last n)) (M.bsprob y) (K y)) (hKm : MeasurableKernels K) {G : Pos X n N × Idx n N × Idx n N → ℝ} (hGm : Measurable G) {C : ℝ} (hGC : ∀ (w : Pos X n N × Idx n N × Idx n N), |G w| ≤ C) :
MeasureTheory.Integrable (fun (y : Pos X n N) => ∑ b : Fin (n + 1) → Fin N, ∑ l : Fin (n + 1) → Fin N, pathProb (M.weight y (Fin.last n)) (M.bsprob y) (K y) b l * G (y, b, l)) (MeasureTheory.Measure.map Prod.fst (M.exttarget N)) ∧ ∫ (z : Traj X n × (Idx n N × Pos X n N × Anc n N) × Idx n N), G (z.2.1.2.1, z.2.1.1, z.2.2) ∂M.target.compProd (M.algLaw K) = ∫ (y : Pos X n N), ∑ b : Fin (n + 1) → Fin N, ∑ l : Fin (n + 1) → Fin N, pathProb (M.weight y (Fin.last n)) (M.bsprob y) (K y) b l * G (y, b, l) ∂MeasureTheory.Measure.map Prod.fst (M.exttarget N)

For measurable kernels which satisfy the hypotheses of Algorithm 1, the expectation of a bounded measurable function G of the particle positions, the indices of the reference, and the indices of the output, under x_{1:T} ∼ π and Algorithm 1, is the expectation, under the distribution of the particle positions under π̄, of E_𝐱{G(𝐱, b, l)} = ∑_{b, l} pathProb(b, l) G(𝐱, b, l), which is integrable.

theorem CSMC.FeynmanKac.gain_le_updateRate_sub {X : Type u_1} [MeasurableSpace X] {n N : ℕ} {μ : MeasureTheory.Measure X} (M : FeynmanKac μ n) [MeasureTheory.SigmaFinite μ] [MeasurableEq X] (hN : 0 < N) (s : Fin n) (hdist : ∀ᵐ (w : Pos X n N × Anc n N × Fin N) ∂M.exttarget N, ∀ (i j : Fin N), i ≠ j → w.1 (s.castSucc, i) ≠ w.1 (s.castSucc, j)) (r : SelectionRule) (hr : r = SelectionRule.MBS ∨ r = SelectionRule.CMBS) :
have P := fun (r' : SelectionRule) => (M.target.compProd (M.csmc (M.ruleKernels N r'))).real {z : Traj X n × Traj X n | z.2 s.castSucc ≠ z.1 s.castSucc}; (∀ (y : Pos X n N) (j j' : Fin N), 0 ≤ gain (M.bsprob y) (M.ruleKernels N r y) s j j') ∧ ∫ (z : Traj X n × (Idx n N × Pos X n N × Anc n N) × Idx n N), gain (M.bsprob z.2.1.2.1) (M.ruleKernels N r z.2.1.2.1) s (z.2.1.1 s.succ) (z.2.2 s.succ) ∂M.target.compProd (M.algLaw (M.ruleKernels N r)) ≤ P r - P SelectionRule.FMBS

Proposition 3: if the particles at the time t are almost surely pairwise distinct under π̄, then, for M-BS and CM-BS, the gains γ_t(j, j') are nonnegative and the update rate at the time t exceeds that of FM-BS by at least E{γ_t(b_{t+1}, l_{t+1})}.

theorem CSMC.FeynmanKac.bsprob_eq_weight {X : Type u_1} [MeasurableSpace X] {n N : ℕ} {μ : MeasureTheory.Measure X} (M : FeynmanKac μ n) (hN : 0 < N) (hm : ∀ (s : Fin n) (x₁ x₂ x' : X), M.transdens s x₁ x' = M.transdens s x₂ x') (y : Pos X n N) (s : Fin n) (i j : Fin N) :
M.bsprob y s i j = M.weight y s.castSucc i

If the transition densities m_{s+1}(x, x') do not depend on x, then B_s(i|j) = W_s^i.

theorem CSMC.FeynmanKac.imh {X : Type u_1} [MeasurableSpace X] {n : ℕ} {μ : MeasureTheory.Measure X} (M : FeynmanKac μ n) [MeasureTheory.SigmaFinite μ] (hm : ∀ (s : Fin n) (x₁ x₂ x' : X), M.transdens s x₁ x' = M.transdens s x₂ x') :
have J := M.target.compProd (M.algLaw (M.ruleKernels 2 SelectionRule.CMBS)); MeasureTheory.Measure.map (fun (z : Traj X n × (Idx n 2 × Pos X n 2 × Anc n 2) × Idx n 2) => ((z.2.1.2.1, z.2.1.1), z.2.2)) J = (MeasureTheory.Measure.map (fun (z : Traj X n × (Idx n 2 × Pos X n 2 × Anc n 2) × Idx n 2) => (z.2.1.2.1, z.2.1.1)) J).compProd (kernelOfMassFn fun (yb : Pos X n 2 × Idx n 2) (l : Idx n 2) => (∏ t : Fin (n + 1), forced (M.weight yb.1 t) (yb.2 t) (l t)).toNNReal)

Proposition 4: with two particles, if the transition densities m_{s+1}(x, x') do not depend on x, then, under CM-BS and conditionally on the particle positions and the indices of the reference, the indices of the output are independent, with l_t ∼ F_{W_t}(b_t, ·).