  Several distinct techniques have been proposed to design quasi-polynomial
algorithms for solving parity games since the breakthrough result of Calude,
Jain, Khoussainov, Li, and Stephan (2017): play summaries, progress measures
and register games. We argue that all those techniques can be viewed as
instances of the separation approach to solving parity games, a key technical
component of which is constructing (explicitly or implicitly) an automaton that
separates languages of words encoding plays that are (decisively) won by either
of the two players. Our main technical result is a quasi-polynomial lower bound
on the size of such separating automata that nearly matches the current best
upper bounds. This forms a barrier that all existing approaches must overcome
in the ongoing quest for a polynomial-time algorithm for solving parity games.
The key and fundamental concept that we introduce and study is a universal
ordered tree. The technical highlights are a quasi-polynomial lower bound on
the size of universal ordered trees and a proof that every separating safety
automaton has a universal tree hidden in its state space.
