Cyclic indicators (Definition def:indicators) #
Source lines 679–696 (DFS sequence, ζ, eq:fringe) and 735–764 (Section 2.3).
For a mark G (a {0,1}-valued function on finite plane trees, here a predicate
G : PlaneTree → Prop), a cutoff M ∈ ℕ ∪ {∞} (here M : ℕ∞) and a finite sequence
𝐱 = (x_1, …, x_n) of integers (a List ℤ):
Cyclic.firstIndicator G M 𝐱 = I_1^{(M)}(𝐱): it is1iffζ(𝐱) ≤ M(in particularζ(𝐱) < ∞) andG(T(x_1, …, x_{ζ(𝐱)})) = 1, and0otherwise (Cyclic.FirstMarked);Cyclic.shiftIndicator G M 𝐱 i = I_{i+1}^{(M)}(𝐱) = I_1^{(M)}(x_{i+1}, …, x_n, x_1, …, x_i)(0-based shifts: the paper'sI_iis ourshiftIndicator … (i - 1));Cyclic.cyclicSum G M 𝐱 = ∑_{i=1}^{n} I_i^{(M)}(𝐱).
We prove the two cases of the definition (firstIndicator_of_zeta_eq_none,
firstIndicator_of_lt_zeta, firstIndicator_of_zeta_le), the Boolean range, locality in the
first M entries (firstIndicator_take, firstIndicator_congr_take), monotonicity in the
cutoff, the infinite cutoff (firstIndicator_top), invariance of the cyclic sum under cyclic
shifts (cyclicSum_rotate, part of B04), and the counting identity of source lines 758–760:
∑_i I_i^{(M)}(𝐱(T)) is the number of vertices v with |T_v| ≤ M and G(T_v) = 1
(cyclicSum_dfsSeq); for M ≥ |T| it is markCount G T (cyclicSum_dfsSeq_of_le).
We also prove U05 (source lines 914–920, 960–969): a proper fringe subtree has strictly fewer
vertices (PlaneTree.vertexCount_fringeTrees_lt), so two marks forcing the same size cannot hold
at a vertex and at a proper descendant (PlaneTree.not_forced_size_nested).
The fringe subtree at the i-th vertex (DFS order, 0-indexed) has at most |T| - i
vertices.
U05: a proper fringe subtree (at a vertex u_{i+1} with i ≥ 1, i.e. not the root) has
strictly fewer vertices than the tree.
The fringe subtree at the root is the tree itself.
U05: two nested marks forcing the same size cannot both hold at the root and at a
proper fringe subtree.
Definition def:indicators: the cyclically shifted indicator. With 0-based shifts,
shiftIndicator G M 𝐱 i = I_{i+1}^{(M)}(𝐱) = I_1^{(M)}(x_{i+1}, …, x_n, x_1, …, x_i).
Equations
Instances For
∑_{i=1}^{n} I_i^{(M)}(𝐱) for a sequence 𝐱 of length n.
Equations
- PoissonDeclumping.Cyclic.cyclicSum G M x = ∑ i ∈ Finset.range x.length, PoissonDeclumping.Cyclic.shiftIndicator G M x i
Instances For
First case of Definition def:indicators: ζ(𝐱) = ∞.
Second case of Definition def:indicators: if ζ(𝐱) = m ≤ M and T is the tree whose DFS
sequence is (x_1, …, x_m), then I_1^{(M)}(𝐱) = G(T).
Monotonicity of I_1^{(M)} in the cutoff.
With the infinite cutoff, I_1^{(∞)}(𝐱) = G(T(𝐱)) (and 0 if ζ(𝐱) = ∞).
Cyclic shifts of a DFS sequence #
The i-th cyclic indicator of 𝐱(T) tests the fringe subtree at the i-th vertex
(eq:fringe).
With a cutoff M ≥ |T|, the cyclic sum counts all marked vertices (markCount G T).