[proofplan]
We iterate the $i$-compressions $C_1, C_2, \ldots, C_n$ in round-robin fashion. Each application that changes the set strictly decreases a non-negative integer weight, so the process terminates after finitely many steps at a set that is simultaneously $i$-compressed for every $i$. The [Compression Reduces Neighbourhood](/theorems/2598) theorem guarantees that $|N(\cdot)|$ does not increase at any step, so the terminal set has the required properties.
[/proofplan]
[step:Define the weight function $w(A) = \sum_{x \in A} |x|$ and show it is a non-negative integer]
Define the weight function
\begin{align*}
w: \mathcal{P}(\mathcal{P}(X)) &\to \mathbb{Z}_{\geq 0} \\
A &\mapsto \sum_{x \in A} |x|.
\end{align*}
Since $|x| \geq 0$ for every $x \subseteq X$ and $A$ is a finite family of subsets of $X$, the weight $w(A)$ is a non-negative integer. Moreover $w(A) \leq |A| \cdot n$, so the weight is bounded above.
[/step]
[step:Show that each non-trivial compression strictly decreases $w$]
Suppose $C_i(A) \neq A$ for some $1 \leq i \leq n$. The $i$-compression replaces the $i$-sections $A_+^{(i)}$ and $A_-^{(i)}$ with simplicial initial segments $B_+^{(i)}$ and $B_-^{(i)}$ of the same respective sizes.
The simplicial order on $\mathcal{P}(X \setminus \{i\})$ lists elements in non-decreasing order of cardinality (and lexicographically within each level). Therefore the simplicial initial segment of size $k$ is the unique family of $k$ subsets of $X \setminus \{i\}$ that minimises the sum of cardinalities: it selects the $k$ smallest elements, which have the smallest possible total cardinality.
Since $C_i(A) \neq A$, at least one of $A_+^{(i)}$ or $A_-^{(i)}$ is not already the simplicial initial segment of its size. For that section, replacing it with the initial segment strictly decreases $\sum_{x \in \text{section}} |x|$. The contribution of the $+$-section to $w(A)$ is $\sum_{x \in A_+^{(i)}} (|x| + 1)$ (since the actual sets in $A$ containing $i$ have cardinality $|x| + 1$ where $x \in A_+^{(i)}$), and the contribution of the $-$-section is $\sum_{x \in A_-^{(i)}} |x|$. In both cases, replacing a non-initial section with an initial segment of the same size does not increase the contribution, and strictly decreases it when the section changes. Therefore
\begin{align*}
w(C_i(A)) < w(A).
\end{align*}
[guided]
Let us trace the weight computation explicitly. Each element of $A$ either contains $i$ or does not. If $x \in A$ with $i \notin x$, then $x \in A_-^{(i)}$ and its contribution to $w(A)$ is $|x|$. If $x \in A$ with $i \in x$, then $x \setminus \{i\} \in A_+^{(i)}$ and $x$'s contribution to $w(A)$ is $|x| = |x \setminus \{i\}| + 1$. So
\begin{align*}
w(A) = \sum_{y \in A_-^{(i)}} |y| + \sum_{y \in A_+^{(i)}} (|y| + 1) = \sum_{y \in A_-^{(i)}} |y| + \sum_{y \in A_+^{(i)}} |y| + |A_+^{(i)}|.
\end{align*}
After compression, $B_+^{(i)}$ is the simplicial initial segment of size $|A_+^{(i)}|$ and $B_-^{(i)}$ is the simplicial initial segment of size $|A_-^{(i)}|$. The term $|A_+^{(i)}| = |B_+^{(i)}|$ is unchanged. The sums $\sum_{y \in B_-^{(i)}} |y|$ and $\sum_{y \in B_+^{(i)}} |y|$ are each minimised by the initial segment (since initial segments pick the elements of smallest cardinality first). If $A_-^{(i)}$ was not already the initial segment of its size, $\sum_{y \in B_-^{(i)}} |y| < \sum_{y \in A_-^{(i)}} |y|$, and similarly for the $+$-section. Since at least one section changes, $w(C_i(A)) < w(A)$.
Why does the simplicial initial segment minimise $\sum |y|$? The simplicial order lists elements in non-decreasing order of $|y|$ (breaking ties lexicographically). Selecting the first $k$ elements in this order picks those with the smallest cardinalities, which minimises the sum of cardinalities over all $k$-element subfamilies. This is a greedy optimality argument.
[/guided]
[/step]
[step:Iterate compressions and conclude]
Apply the compressions $C_1, C_2, \ldots, C_n, C_1, C_2, \ldots$ in cyclic order. At each step, either $C_i(A) = A$ (in which case $A$ is already $i$-compressed and we move to the next index) or $C_i(A) \neq A$ and $w$ strictly decreases. Since $w$ takes values in $\{0, 1, 2, \ldots, |A| \cdot n\}$, the weight can decrease at most $|A| \cdot n$ times. After at most $n \cdot |A| \cdot n$ compression attempts (cycling through all $n$ indices, with at most $|A| \cdot n$ decreases total), we reach a set $B$ with $C_i(B) = B$ for every $1 \leq i \leq n$.
By [Compression Reduces Neighbourhood](/theorems/2598), each compression step satisfies $|N(C_i(A))| \leq |N(A)|$. Chaining the inequalities over all intermediate steps:
\begin{align*}
|N(B)| \leq |N(A)|.
\end{align*}
The set $B$ is compressed (i.e., $i$-compressed for every $i$), has $|B| = |A|$ (since each compression preserves the family size), and satisfies $|N(B)| \leq |N(A)|$.
[/step]