Uniqueness up to equivalence follows from equivalence of coverings criterion.
Since (𝑋,𝑥0) is semilocally simply connected, it has a universal covering ˆ𝑝 :(ˆ𝑋,ˆ𝑥0) ↠(𝑋,𝑥0).
Let Γ =Aut𝖢𝗈𝗏𝑋(ˆ𝑝)
According to Deck transformation group of a regular covering as quotient
Φ:𝜋1(𝑋,𝑥0)→Γ[𝛼]↦(ˆ𝑥0↦ˆ𝛼(1))is an isomorphism, where ˆ𝛼 is the unique lift of 𝛼 with ˆ𝛼(0) =ˆ𝑥0, and (ˆ𝑥0 ↦ˆ𝛼(1)) denotes a unique deck transformation with this property.
Now take the orbit space ˜𝑋 =ˆ𝑋/Φ(𝐻) with the canonical projection
𝑓:(ˆ𝑋,ˆ𝑥0)↠(˜𝑋,˜𝑥0)ˆ𝑥↦Φ(𝐻)ˆ𝑥Since the deck transformation group acts properly discontinuously, so too does Φ(𝐻) ⊆Γ,
and the orbit space of a properly discontinuous effective group action forms a covering,
which in this case is universal.
Thus
Aut𝖢𝗈𝗏˜𝑋(𝑓)≅𝜋1(˜𝑋,˜𝑥0)≅Φ(𝐻)≅𝐻We now define
𝑝:(˜𝑋,˜𝑥0)→(𝑋,𝑥0)𝑓(ˆ𝑥)↦ˆ𝑝(ˆ𝑥)which is well-defined since 𝑓(ˆ𝑥) =𝑓(ˆ𝑥′) iff ˆ𝑥′ =𝛾(ˆ𝑥) for some 𝛾 ∈𝐻 ⊆Γ, and then ˆ𝑝 ∘𝛾(ˆ𝑥) =ˆ𝑝(ˆ𝑥);
and continuous by Universal property.
%0A%20%20%20%20..%20controls%20(%24(%5Ctikztostart)!%5Cpv%7Bpos%7D!(%5Ctikztotarget)!%5Cpv%7Bheight%7D!270%3A(%5Ctikztotarget)%24)%0A%20%20%20%20and%20(%24(%5Ctikztostart)!1-%5Cpv%7Bpos%7D!(%5Ctikztotarget)!%5Cpv%7Bheight%7D!270%3A(%5Ctikztotarget)%24)%0A%20%20%20%20..%20(%5Ctikztotarget)%5Ctikztonodes%7D%7D%2C%0A%20%20%20%20settings%2F.code%3D%7B%5Ctikzset%7Bquiver%2F.cd%2C%231%7D%0A%20%20%20%20%20%20%20%20%5Cdef%5Cpv%23%231%7B%5Cpgfkeysvalueof%7B%2Ftikz%2Fquiver%2F%23%231%7D%7D%7D%2C%0A%20%20%20%20quiver%2F.cd%2Cpos%2F.initial%3D0.35%2Cheight%2F.initial%3D0%7D%0A%5Ctikzset%7Btail%20reversed%2F.code%3D%7B%5Cpgfsetarrowsstart%7Btikzcd%20to%7D%7D%7D%0A%5Ctikzset%7B2tail%2F.code%3D%7B%5Cpgfsetarrowsstart%7BImplies%5Breversed%5D%7D%7D%7D%0A%5Ctikzset%7B2tail%20reversed%2F.code%3D%7B%5Cpgfsetarrowsstart%7BImplies%7D%7D%7D%0A%5Ctikzset%7Bno%20body%2F.style%3D%7B%2Ftikz%2Fdash%20pattern%3Don%200%20off%201mm%7D%7D%0A%25%20https%3A%2F%2Fq.uiver.app%2F%23q%3DWzAsMyxbMCwwLCIoXFxoYXQgWCxcXGhhdCB4XzApIl0sWzIsMCwiKFxcdGlsZGUgWCxcXHRpbGRlIHhfMCkiXSxbMiwyLCIoWCwgeF8wKSJdLFswLDIsIlxcaGF0IHAiLDIseyJzdHlsZSI6eyJoZWFkIjp7Im5hbWUiOiJlcGkifX19XSxbMSwyLCJwIiwwLHsic3R5bGUiOnsiaGVhZCI6eyJuYW1lIjoiZXBpIn19fV0sWzAsMSwiZiIsMCx7InN0eWxlIjp7ImhlYWQiOnsibmFtZSI6ImVwaSJ9fX1dXQ%3D%3D%0A%5Cbegin%7Btikzcd%7D%5Bampersand%20replacement%3D%5C%26%5D%0A%09%7B(%5Chat%20X%2C%5Chat%20x_0)%7D%20%5C%26%5C%26%20%7B(%5Ctilde%20X%2C%5Ctilde%20x_0)%7D%20%5C%5C%0A%09%5C%5C%0A%09%5C%26%5C%26%20%7B(X%2C%20x_0)%7D%0A%09%5Carrow%5B%22%7B%5Chat%20p%7D%22'%2C%20two%20heads%2C%20from%3D1-1%2C%20to%3D3-3%5D%0A%09%5Carrow%5B%22p%22%2C%20two%20heads%2C%20from%3D1-3%2C%20to%3D3-3%5D%0A%09%5Carrow%5B%22f%22%2C%20two%20heads%2C%20from%3D1-1%2C%20to%3D1-3%5D%0A%5Cend%7Btikzcd%7D%0A#invert)
Now let 𝑥 ∈𝑋 and let 𝑈 be a neighbourhood of 𝑥 evenly covered by ˆ𝑝 with sheets {ˆ𝑈𝑖}𝑖∈𝐼.
Let 𝐽 ⊆𝐼 such that for all 𝑖 ∈𝐼 there exists exactly one 𝑗 ∈𝐽 such that 𝑓(ˆ𝑈𝑖) =𝑓(ˆ𝑈𝑗),
and let ˜𝑈𝑗 =𝑓(ˆ𝑈𝑗).
Then
𝑝−1(𝑈)=∐𝑗∈𝐽˜𝑈𝑗and (𝑝 ↾˜𝑈𝑗)−1 =(𝑓 ↾ˆ𝑈𝑗) ∘(ˆ𝑝 ↾ˆ𝑈𝑗)−1,
therefore 𝑝 is a covering.
Then by construction
[𝛼]∈𝐻⟺(ˆ𝑥0↦ˆ𝛼(1))∈Φ(𝐻)⟺˜𝛼(1)=𝑓∘ˆ𝛼(1)=˜𝑥0⟺[𝛼]=𝜋1𝑝[˜𝛼]so 𝐻 =𝜋1𝑝(𝜋1(˜𝑋,˜𝑥0)) as required.