-- Lean 4 proof step from Mathlib.RingTheory.Invariant.Profinite (goal)
Goal:
A : Type u_1
B : Type u_2
inst : CommRing A
inst_1 : CommRing B
inst_2 : Algebra A B
G : Type u
inst_3 : Group G
inst_4 : MulSemiringAction G B
inst_5 : SMulCommClass G A B
P_1 : Ideal A
inst_6 : TopologicalSpace G
inst_7 : CompactSpace G
inst_8 : TotallyDisconnectedSpace G
inst_9 : IsTopologicalGroup G
inst_10 : TopologicalSpace B
inst_11 : DiscreteTopology B
inst_12 : ContinuousSMul G B
P : Ideal A
Q : Ideal B
inst_13 : Q.LiesOver P
σ : AlgEquiv.{u_1, u_2, u_2} (A ⧸ P) (B ⧸ Q) (B ⧸ Q)
X Y Z : OpenNormalSubgroup G
f : X ⟶ Y
g : Y ⟶ Z
⊢ Eq.{u + 1} (α :=
    { σ' :
        ↥(MulAction.stabilizer (G ⧸ (↑X.toOpenSubgroup : Subgroup G)) (α :=
            Ideal ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G)))
            (under (↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G))) Q)) //
        Eq (α :=
          AlgHom.{u_1, u_2, u_2} (A ⧸ P)
            (HasQuotient.Quotient ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G)) (B :=
              Ideal ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G)))
              (under (↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G))) Q))
            (B ⧸ Q))
          (AlgHom.comp (B :=
            HasQuotient.Quotient ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G)) (B :=
              Ideal ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G)))
              (under (↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G))) Q))
            (let __RingHom :
              HasQuotient.Quotient ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G)) (B :=
                  Ideal ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G)))
                  (under (↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G))) Q) →+*
                B ⧸ Q :=
              quotientMap Q
                (Subsemiring.subtype
                  (Subalgebra.toSubsemiring
                    (FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G))))
                ⋯;
            { toRingHom := __RingHom, commutes' := ⋯ :
              AlgHom.{u_1, u_2, u_2} (A ⧸ P)
                (HasQuotient.Quotient ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G))
                  (B := Ideal ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G)))
                  (under (↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G))) Q))
                (B ⧸ Q) })
            (↑((stabilizerHom (under (↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G))) Q)
                      P (G ⧸ (↑X.toOpenSubgroup : Subgroup G)) :
                    (a :
                        ↥(MulAction.stabilizer (G ⧸ (↑X.toOpenSubgroup : Subgroup G))
                            (under (↥(FixedPoints.subalgebra A B ↥(↑X.toOpenSubgroup : Subgroup G))) Q))) →
                      (↥(FixedPoints.subalgebra A B ↥(↑X.toOpenSubgroup : Subgroup G)) ⧸
                          under (↥(FixedPoints.subalgebra A B ↥(↑X.toOpenSubgroup : Subgroup G))) Q) ≃ₐ[A ⧸ P]
                        ↥(FixedPoints.subalgebra A B ↥(↑X.toOpenSubgroup : Subgroup G)) ⧸
                          under (↥(FixedPoints.subalgebra A B ↥(↑X.toOpenSubgroup : Subgroup G))) Q)
                  σ') :
              ↥(FixedPoints.subalgebra A B ↥(↑X.toOpenSubgroup : Subgroup G)) ⧸
                  under (↥(FixedPoints.subalgebra A B ↥(↑X.toOpenSubgroup : Subgroup G))) Q →ₐ[A ⧸ P]
                ↥(FixedPoints.subalgebra A B ↥(↑X.toOpenSubgroup : Subgroup G)) ⧸
                  under (↥(FixedPoints.subalgebra A B ↥(↑X.toOpenSubgroup : Subgroup G))) Q))
          ((↑σ : B ⧸ Q →ₐ[A ⧸ P] B ⧸ Q).comp
            (let __RingHom :
              HasQuotient.Quotient ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G)) (B :=
                  Ideal ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G)))
                  (under (↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G))) Q) →+*
                B ⧸ Q :=
              quotientMap Q
                (Subsemiring.subtype
                  (Subalgebra.toSubsemiring
                    (FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G))))
                ⋯;
            { toRingHom := __RingHom, commutes' := ⋯ :
              AlgHom.{u_1, u_2, u_2} (A ⧸ P)
                (HasQuotient.Quotient ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G))
                  (B := Ideal ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G)))
                  (under (↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G))) Q))
                (B ⧸ Q) })) } ⟶
      { σ' :
        ↥(MulAction.stabilizer (G ⧸ (↑Z.toOpenSubgroup : Subgroup G)) (α :=
            Ideal ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Z.toOpenSubgroup : Subgroup G)))
            (under (↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Z.toOpenSubgroup : Subgroup G))) Q)) //
        Eq (α :=
          AlgHom.{u_1, u_2, u_2} (A ⧸ P)
            (HasQuotient.Quotient ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Z.toOpenSubgroup : Subgroup G)) (B :=
              Ideal ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Z.toOpenSubgroup : Subgroup G)))
              (under (↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Z.toOpenSubgroup : Subgroup G))) Q))
            (B ⧸ Q))
          (AlgHom.comp (B :=
            HasQuotient.Quotient ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Z.toOpenSubgroup : Subgroup G)) (B :=
              Ideal ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Z.toOpenSubgroup : Subgroup G)))
              (under (↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Z.toOpenSubgroup : Subgroup G))) Q))
            (let __RingHom :
              HasQuotient.Quotient ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Z.toOpenSubgroup : Subgroup G)) (B :=
                  Ideal ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Z.toOpenSubgroup : Subgroup G)))
                  (under (↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Z.toOpenSubgroup : Subgroup G))) Q) →+*
                B ⧸ Q :=
              quotientMap Q
                (Subsemiring.subtype
                  (Subalgebra.toSubsemiring
                    (FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Z.toOpenSubgroup : Subgroup G))))
                ⋯;
            { toRingHom := __RingHom, commutes' := ⋯ })
            (↑((stabilizerHom (under (↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Z.toOpenSubgroup : Subgroup G))) Q)
                      P (G ⧸ (↑Z.toOpenSubgroup : Subgroup G)) :
                    (a :
                        ↥(MulAction.stabilizer (G ⧸ (↑Z.toOpenSubgroup : Subgroup G))
                            (under (↥(FixedPoints.subalgebra A B ↥(↑Z.toOpenSubgroup : Subgroup G))) Q))) →
                      (↥(FixedPoints.subalgebra A B ↥(↑Z.toOpenSubgroup : Subgroup G)) ⧸
                          under (↥(FixedPoints.subalgebra A B ↥(↑Z.toOpenSubgroup : Subgroup G))) Q) ≃ₐ[A ⧸ P]
                        ↥(FixedPoints.subalgebra A B ↥(↑Z.toOpenSubgroup : Subgroup G)) ⧸
                          under (↥(FixedPoints.subalgebra A B ↥(↑Z.toOpenSubgroup : Subgroup G))) Q)
                  σ') :
              ↥(FixedPoints.subalgebra A B ↥(↑Z.toOpenSubgroup : Subgroup G)) ⧸
                  under (↥(FixedPoints.subalgebra A B ↥(↑Z.toOpenSubgroup : Subgroup G))) Q →ₐ[A ⧸ P]
                ↥(FixedPoints.subalgebra A B ↥(↑Z.toOpenSubgroup : Subgroup G)) ⧸
                  under (↥(FixedPoints.subalgebra A B ↥(↑Z.toOpenSubgroup : Subgroup G))) Q))
          ((↑σ : B ⧸ Q →ₐ[A ⧸ P] B ⧸ Q).comp
            (let __RingHom :
              HasQuotient.Quotient ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Z.toOpenSubgroup : Subgroup G)) (B :=
                  Ideal ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Z.toOpenSubgroup : Subgroup G)))
                  (under (↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Z.toOpenSubgroup : Subgroup G))) Q) →+*
                B ⧸ Q :=
              quotientMap Q
                (Subsemiring.subtype
                  (Subalgebra.toSubsemiring
                    (FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Z.toOpenSubgroup : Subgroup G))))
                ⋯;
            { toRingHom := __RingHom, commutes' := ⋯ })) })
    (↾fun
        (x :
          { σ' :
            ↥(MulAction.stabilizer (G ⧸ (↑X.toOpenSubgroup : Subgroup G)) (α :=
                Ideal ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G)))
                (under (↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G))) Q)) //
            Eq (α :=
              AlgHom.{u_1, u_2, u_2} (A ⧸ P)
                (HasQuotient.Quotient ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G))
                  (B := Ideal ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G)))
                  (under (↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G))) Q))
                (B ⧸ Q))
              (AlgHom.comp (B :=
                HasQuotient.Quotient ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G)) (B :=
                  Ideal ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G)))
                  (under (↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G))) Q))
                (let __RingHom :
                  HasQuotient.Quotient ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G))
                      (B := Ideal ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G)))
                      (under (↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G))) Q) →+*
                    B ⧸ Q :=
                  quotientMap Q
                    (Subsemiring.subtype
                      (Subalgebra.toSubsemiring
                        (FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G))))
                    ⋯;
                { toRingHom := __RingHom, commutes' := ⋯ })
                (↑((stabilizerHom
                          (under (↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G))) Q) P
                          (G ⧸ (↑X.toOpenSubgroup : Subgroup G)) :
                        (a :
                            ↥(MulAction.stabilizer (G ⧸ (↑X.toOpenSubgroup : Subgroup G))
                                (under (↥(FixedPoints.subalgebra A B ↥(↑X.toOpenSubgroup : Subgroup G))) Q))) →
                          (↥(FixedPoints.subalgebra A B ↥(↑X.toOpenSubgroup : Subgroup G)) ⧸
                              under (↥(FixedPoints.subalgebra A B ↥(↑X.toOpenSubgroup : Subgroup G))) Q) ≃ₐ[A ⧸ P]
                            ↥(FixedPoints.subalgebra A B ↥(↑X.toOpenSubgroup : Subgroup G)) ⧸
                              under (↥(FixedPoints.subalgebra A B ↥(↑X.toOpenSubgroup : Subgroup G))) Q)
                      σ') :
                  ↥(FixedPoints.subalgebra A B ↥(↑X.toOpenSubgroup : Subgroup G)) ⧸
                      under (↥(FixedPoints.subalgebra A B ↥(↑X.toOpenSubgroup : Subgroup G))) Q →ₐ[A ⧸ P]
                    ↥(FixedPoints.subalgebra A B ↥(↑X.toOpenSubgroup : Subgroup G)) ⧸
                      under (↥(FixedPoints.subalgebra A B ↥(↑X.toOpenSubgroup : Subgroup G))) Q))
              ((↑σ : B ⧸ Q →ₐ[A ⧸ P] B ⧸ Q).comp
                (let __RingHom :
                  HasQuotient.Quotient ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G))
                      (B := Ideal ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G)))
                      (under (↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G))) Q) →+*
                    B ⧸ Q :=
                  quotientMap Q
                    (Subsemiring.subtype
                      (Subalgebra.toSubsemiring
                        (FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G))))
                    ⋯;
                { toRingHom := __RingHom, commutes' := ⋯ })) }) ↦
      Subtype.mk (p :=
        fun
          (σ' :
            ↥(MulAction.stabilizer (G ⧸ (↑Z.toOpenSubgroup : Subgroup G)) (α :=
                Ideal ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Z.toOpenSubgroup : Subgroup G)))
                (under (↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Z.toOpenSubgroup : Subgroup G))) Q))) ↦
        Eq (α :=
          AlgHom.{u_1, u_2, u_2} (A ⧸ P)
            (HasQuotient.Quotient ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Z.toOpenSubgroup : Subgroup G)) (B :=
              Ideal ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Z.toOpenSubgroup : Subgroup G)))
              (under (↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Z.toOpenSubgroup : Subgroup G))) Q))
            (B ⧸ Q))
          (AlgHom.comp (B :=
            HasQuotient.Quotient ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Z.toOpenSubgroup : Subgroup G)) (B :=
              Ideal ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Z.toOpenSubgroup : Subgroup G)))
              (under (↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Z.toOpenSubgroup : Subgroup G))) Q))
            (let __RingHom :
              HasQuotient.Quotient ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Z.toOpenSubgroup : Subgroup G)) (B :=
                  Ideal ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Z.toOpenSubgroup : Subgroup G)))
                  (under (↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Z.toOpenSubgroup : Subgroup G))) Q) →+*
                B ⧸ Q :=
              quotientMap Q
                (Subsemiring.subtype
                  (Subalgebra.toSubsemiring
                    (FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Z.toOpenSubgroup : Subgroup G))))
                ⋯;
            { toRingHom := __RingHom, commutes' := ⋯ })
            (↑((stabilizerHom (under (↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Z.toOpenSubgroup : Subgroup G))) Q)
                      P (G ⧸ (↑Z.toOpenSubgroup : Subgroup G)) :
                    (a :
                        ↥(MulAction.stabilizer (G ⧸ (↑Z.toOpenSubgroup : Subgroup G))
                            (under (↥(FixedPoints.subalgebra A B ↥(↑Z.toOpenSubgroup : Subgroup G))) Q))) →
                      (↥(FixedPoints.subalgebra A B ↥(↑Z.toOpenSubgroup : Subgroup G)) ⧸
                          under (↥(FixedPoints.subalgebra A B ↥(↑Z.toOpenSubgroup : Subgroup G))) Q) ≃ₐ[A ⧸ P]
                        ↥(FixedPoints.subalgebra A B ↥(↑Z.toOpenSubgroup : Subgroup G)) ⧸
                          under (↥(FixedPoints.subalgebra A B ↥(↑Z.toOpenSubgroup : Subgroup G))) Q)
                  σ') :
              ↥(FixedPoints.subalgebra A B ↥(↑Z.toOpenSubgroup : Subgroup G)) ⧸
                  under (↥(FixedPoints.subalgebra A B ↥(↑Z.toOpenSubgroup : Subgroup G))) Q →ₐ[A ⧸ P]
                ↥(FixedPoints.subalgebra A B ↥(↑Z.toOpenSubgroup : Subgroup G)) ⧸
                  under (↥(FixedPoints.subalgebra A B ↥(↑Z.toOpenSubgroup : Subgroup G))) Q))
          ((↑σ : B ⧸ Q →ₐ[A ⧸ P] B ⧸ Q).comp
            (let __RingHom :
              HasQuotient.Quotient ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Z.toOpenSubgroup : Subgroup G)) (B :=
                  Ideal ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Z.toOpenSubgroup : Subgroup G)))
                  (under (↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Z.toOpenSubgroup : Subgroup G))) Q) →+*
                B ⧸ Q :=
              quotientMap Q
                (Subsemiring.subtype
                  (Subalgebra.toSubsemiring
                    (FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Z.toOpenSubgroup : Subgroup G))))
                ⋯;
            { toRingHom := __RingHom, commutes' := ⋯ })))
        (Subtype.mk (p := fun (x : G ⧸ (↑Z.toOpenSubgroup : Subgroup G)) ↦
          Membership.mem (γ := Subgroup (G ⧸ (↑Z.toOpenSubgroup : Subgroup G)))
            (MulAction.stabilizer (G ⧸ (↑Z.toOpenSubgroup : Subgroup G)) (α :=
              Ideal ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Z.toOpenSubgroup : Subgroup G)))
              (under (↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Z.toOpenSubgroup : Subgroup G))) Q))
            x)
          ((QuotientGroup.map (↑X.toOpenSubgroup : Subgroup G) Z.toOpenSubgroup.1 (MonoidHom.id G) ⋯ :
              (a : G ⧸ (↑X.toOpenSubgroup : Subgroup G)) → G ⧸ Z.toOpenSubgroup.1)
            (↑(↑x :
                  ↥(MulAction.stabilizer (G ⧸ (↑X.toOpenSubgroup : Subgroup G))
                      (under (↥(FixedPoints.subalgebra A B ↥(↑X.toOpenSubgroup : Subgroup G))) Q))) :
              G ⧸ (↑X.toOpenSubgroup : Subgroup G)))
          ⋯)
        ⋯)
    (CategoryStruct.comp (Y :=
      { σ' :
        ↥(MulAction.stabilizer (G ⧸ (↑Y.toOpenSubgroup : Subgroup G)) (α :=
            Ideal ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Y.toOpenSubgroup : Subgroup G)))
            (under (↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Y.toOpenSubgroup : Subgroup G))) Q)) //
        Eq (α :=
          AlgHom.{u_1, u_2, u_2} (A ⧸ P)
            (HasQuotient.Quotient ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Y.toOpenSubgroup : Subgroup G)) (B :=
              Ideal ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Y.toOpenSubgroup : Subgroup G)))
              (under (↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Y.toOpenSubgroup : Subgroup G))) Q))
            (B ⧸ Q))
          (AlgHom.comp (B :=
            HasQuotient.Quotient ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Y.toOpenSubgroup : Subgroup G)) (B :=
              Ideal ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Y.toOpenSubgroup : Subgroup G)))
              (under (↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Y.toOpenSubgroup : Subgroup G))) Q))
            (let __RingHom :
              HasQuotient.Quotient ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Y.toOpenSubgroup : Subgroup G)) (B :=
                  Ideal ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Y.toOpenSubgroup : Subgroup G)))
                  (under (↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Y.toOpenSubgroup : Subgroup G))) Q) →+*
                B ⧸ Q :=
              quotientMap Q
                (Subsemiring.subtype
                  (Subalgebra.toSubsemiring
                    (FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Y.toOpenSubgroup : Subgroup G))))
                ⋯;
            { toRingHom := __RingHom, commutes' := ⋯ })
            (↑((stabilizerHom (under (↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Y.toOpenSubgroup : Subgroup G))) Q)
                      P (G ⧸ (↑Y.toOpenSubgroup : Subgroup G)) :
                    (a :
                        ↥(MulAction.stabilizer (G ⧸ (↑Y.toOpenSubgroup : Subgroup G))
                            (under (↥(FixedPoints.subalgebra A B ↥(↑Y.toOpenSubgroup : Subgroup G))) Q))) →
                      (↥(FixedPoints.subalgebra A B ↥(↑Y.toOpenSubgroup : Subgroup G)) ⧸
                          under (↥(FixedPoints.subalgebra A B ↥(↑Y.toOpenSubgroup : Subgroup G))) Q) ≃ₐ[A ⧸ P]
                        ↥(FixedPoints.subalgebra A B ↥(↑Y.toOpenSubgroup : Subgroup G)) ⧸
                          under (↥(FixedPoints.subalgebra A B ↥(↑Y.toOpenSubgroup : Subgroup G))) Q)
                  σ') :
              ↥(FixedPoints.subalgebra A B ↥(↑Y.toOpenSubgroup : Subgroup G)) ⧸
                  under (↥(FixedPoints.subalgebra A B ↥(↑Y.toOpenSubgroup : Subgroup G))) Q →ₐ[A ⧸ P]
                ↥(FixedPoints.subalgebra A B ↥(↑Y.toOpenSubgroup : Subgroup G)) ⧸
                  under (↥(FixedPoints.subalgebra A B ↥(↑Y.toOpenSubgroup : Subgroup G))) Q))
          ((↑σ : B ⧸ Q →ₐ[A ⧸ P] B ⧸ Q).comp
            (let __RingHom :
              HasQuotient.Quotient ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Y.toOpenSubgroup : Subgroup G)) (B :=
                  Ideal ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Y.toOpenSubgroup : Subgroup G)))
                  (under (↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Y.toOpenSubgroup : Subgroup G))) Q) →+*
                B ⧸ Q :=
              quotientMap Q
                (Subsemiring.subtype
                  (Subalgebra.toSubsemiring
                    (FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Y.toOpenSubgroup : Subgroup G))))
                ⋯;
            { toRingHom := __RingHom, commutes' := ⋯ })) })
      (↾fun
          (x :
            { σ' :
              ↥(MulAction.stabilizer (G ⧸ (↑X.toOpenSubgroup : Subgroup G)) (α :=
                  Ideal ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G)))
                  (under (↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G))) Q)) //
              Eq (α :=
                AlgHom.{u_1, u_2, u_2} (A ⧸ P)
                  (HasQuotient.Quotient ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G))
                    (B := Ideal ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G)))
                    (under (↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G))) Q))
                  (B ⧸ Q))
                (AlgHom.comp (B :=
                  HasQuotient.Quotient ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G))
                    (B := Ideal ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G)))
                    (under (↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G))) Q))
                  (let __RingHom :
                    HasQuotient.Quotient ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G))
                        (B := Ideal ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G)))
                        (under (↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G))) Q) →+*
                      B ⧸ Q :=
                    quotientMap Q
                      (Subsemiring.subtype
                        (Subalgebra.toSubsemiring
                          (FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G))))
                      ⋯;
                  { toRingHom := __RingHom, commutes' := ⋯ })
                  (↑((stabilizerHom
                            (under (↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G))) Q) P
                            (G ⧸ (↑X.toOpenSubgroup : Subgroup G)) :
                          (a :
                              ↥(MulAction.stabilizer (G ⧸ (↑X.toOpenSubgroup : Subgroup G))
                                  (under (↥(FixedPoints.subalgebra A B ↥(↑X.toOpenSubgroup : Subgroup G))) Q))) →
                            (↥(FixedPoints.subalgebra A B ↥(↑X.toOpenSubgroup : Subgroup G)) ⧸
                                under (↥(FixedPoints.subalgebra A B ↥(↑X.toOpenSubgroup : Subgroup G))) Q) ≃ₐ[A ⧸ P]
                              ↥(FixedPoints.subalgebra A B ↥(↑X.toOpenSubgroup : Subgroup G)) ⧸
                                under (↥(FixedPoints.subalgebra A B ↥(↑X.toOpenSubgroup : Subgroup G))) Q)
                        σ') :
                    ↥(FixedPoints.subalgebra A B ↥(↑X.toOpenSubgroup : Subgroup G)) ⧸
                        under (↥(FixedPoints.subalgebra A B ↥(↑X.toOpenSubgroup : Subgroup G))) Q →ₐ[A ⧸ P]
                      ↥(FixedPoints.subalgebra A B ↥(↑X.toOpenSubgroup : Subgroup G)) ⧸
                        under (↥(FixedPoints.subalgebra A B ↥(↑X.toOpenSubgroup : Subgroup G))) Q))
                ((↑σ : B ⧸ Q →ₐ[A ⧸ P] B ⧸ Q).comp
                  (let __RingHom :
                    HasQuotient.Quotient ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G))
                        (B := Ideal ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G)))
                        (under (↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G))) Q) →+*
                      B ⧸ Q :=
                    quotientMap Q
                      (Subsemiring.subtype
                        (Subalgebra.toSubsemiring
                          (FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G))))
                      ⋯;
                  { toRingHom := __RingHom, commutes' := ⋯ })) }) ↦
        Subtype.mk (p :=
          fun
            (σ' :
              ↥(MulAction.stabilizer (G ⧸ (↑Y.toOpenSubgroup : Subgroup G)) (α :=
                  Ideal ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Y.toOpenSubgroup : Subgroup G)))
                  (under (↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Y.toOpenSubgroup : Subgroup G))) Q))) ↦
          Eq (α :=
            AlgHom.{u_1, u_2, u_2} (A ⧸ P)
              (HasQuotient.Quotient ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Y.toOpenSubgroup : Subgroup G)) (B :=
                Ideal ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Y.toOpenSubgroup : Subgroup G)))
                (under (↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Y.toOpenSubgroup : Subgroup G))) Q))
              (B ⧸ Q))
            (AlgHom.comp (B :=
              HasQuotient.Quotient ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Y.toOpenSubgroup : Subgroup G)) (B :=
                Ideal ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Y.toOpenSubgroup : Subgroup G)))
                (under (↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Y.toOpenSubgroup : Subgroup G))) Q))
              (let __RingHom :
                HasQuotient.Quotient ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Y.toOpenSubgroup : Subgroup G)) (B :=
                    Ideal ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Y.toOpenSubgroup : Subgroup G)))
                    (under (↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Y.toOpenSubgroup : Subgroup G))) Q) →+*
                  B ⧸ Q :=
                quotientMap Q
                  (Subsemiring.subtype
                    (Subalgebra.toSubsemiring
                      (FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Y.toOpenSubgroup : Subgroup G))))
                  ⋯;
              { toRingHom := __RingHom, commutes' := ⋯ })
              (↑((stabilizerHom
                        (under (↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Y.toOpenSubgroup : Subgroup G))) Q) P
                        (G ⧸ (↑Y.toOpenSubgroup : Subgroup G)) :
                      (a :
                          ↥(MulAction.stabilizer (G ⧸ (↑Y.toOpenSubgroup : Subgroup G))
                              (under (↥(FixedPoints.subalgebra A B ↥(↑Y.toOpenSubgroup : Subgroup G))) Q))) →
                        (↥(FixedPoints.subalgebra A B ↥(↑Y.toOpenSubgroup : Subgroup G)) ⧸
                            under (↥(FixedPoints.subalgebra A B ↥(↑Y.toOpenSubgroup : Subgroup G))) Q) ≃ₐ[A ⧸ P]
                          ↥(FixedPoints.subalgebra A B ↥(↑Y.toOpenSubgroup : Subgroup G)) ⧸
                            under (↥(FixedPoints.subalgebra A B ↥(↑Y.toOpenSubgroup : Subgroup G))) Q)
                    σ') :
                ↥(FixedPoints.subalgebra A B ↥(↑Y.toOpenSubgroup : Subgroup G)) ⧸
                    under (↥(FixedPoints.subalgebra A B ↥(↑Y.toOpenSubgroup : Subgroup G))) Q →ₐ[A ⧸ P]
                  ↥(FixedPoints.subalgebra A B ↥(↑Y.toOpenSubgroup : Subgroup G)) ⧸
                    under (↥(FixedPoints.subalgebra A B ↥(↑Y.toOpenSubgroup : Subgroup G))) Q))
            ((↑σ : B ⧸ Q →ₐ[A ⧸ P] B ⧸ Q).comp
              (let __RingHom :
                HasQuotient.Quotient ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Y.toOpenSubgroup : Subgroup G)) (B :=
                    Ideal ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Y.toOpenSubgroup : Subgroup G)))
                    (under (↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Y.toOpenSubgroup : Subgroup G))) Q) →+*
                  B ⧸ Q :=
                quotientMap Q
                  (Subsemiring.subtype
                    (Subalgebra.toSubsemiring
                      (FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Y.toOpenSubgroup : Subgroup G))))
                  ⋯;
              { toRingHom := __RingHom, commutes' := ⋯ })))
          (Subtype.mk (p := fun (x : G ⧸ (↑Y.toOpenSubgroup : Subgroup G)) ↦
            Membership.mem (γ := Subgroup (G ⧸ (↑Y.toOpenSubgroup : Subgroup G)))
              (MulAction.stabilizer (G ⧸ (↑Y.toOpenSubgroup : Subgroup G)) (α :=
                Ideal ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Y.toOpenSubgroup : Subgroup G)))
                (under (↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Y.toOpenSubgroup : Subgroup G))) Q))
              x)
            ((QuotientGroup.map (↑X.toOpenSubgroup : Subgroup G) Y.toOpenSubgroup.1 (MonoidHom.id G) ⋯ :
                (a : G ⧸ (↑X.toOpenSubgroup : Subgroup G)) → G ⧸ Y.toOpenSubgroup.1)
              (↑(↑x :
                    ↥(MulAction.stabilizer (G ⧸ (↑X.toOpenSubgroup : Subgroup G))
                        (under (↥(FixedPoints.subalgebra A B ↥(↑X.toOpenSubgroup : Subgroup G))) Q))) :
                G ⧸ (↑X.toOpenSubgroup : Subgroup G)))
            ⋯)
          ⋯)
      (↾fun
          (x :
            { σ' :
              ↥(MulAction.stabilizer (G ⧸ (↑Y.toOpenSubgroup : Subgroup G)) (α :=
                  Ideal ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Y.toOpenSubgroup : Subgroup G)))
                  (under (↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Y.toOpenSubgroup : Subgroup G))) Q)) //
              Eq (α :=
                AlgHom.{u_1, u_2, u_2} (A ⧸ P)
                  (HasQuotient.Quotient ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Y.toOpenSubgroup : Subgroup G))
                    (B := Ideal ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Y.toOpenSubgroup : Subgroup G)))
                    (under (↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Y.toOpenSubgroup : Subgroup G))) Q))
                  (B ⧸ Q))
                (AlgHom.comp (B :=
                  HasQuotient.Quotient ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Y.toOpenSubgroup : Subgroup G))
                    (B := Ideal ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Y.toOpenSubgroup : Subgroup G)))
                    (under (↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Y.toOpenSubgroup : Subgroup G))) Q))
                  (let __RingHom :
                    HasQuotient.Quotient ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Y.toOpenSubgroup : Subgroup G))
                        (B := Ideal ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Y.toOpenSubgroup : Subgroup G)))
                        (under (↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Y.toOpenSubgroup : Subgroup G))) Q) →+*
                      B ⧸ Q :=
                    quotientMap Q
                      (Subsemiring.subtype
                        (Subalgebra.toSubsemiring
                          (FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Y.toOpenSubgroup : Subgroup G))))
                      ⋯;
                  { toRingHom := __RingHom, commutes' := ⋯ })
                  (↑((stabilizerHom
                            (under (↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Y.toOpenSubgroup : Subgroup G))) Q) P
                            (G ⧸ (↑Y.toOpenSubgroup : Subgroup G)) :
                          (a :
                              ↥(MulAction.stabilizer (G ⧸ (↑Y.toOpenSubgroup : Subgroup G))
                                  (under (↥(FixedPoints.subalgebra A B ↥(↑Y.toOpenSubgroup : Subgroup G))) Q))) →
                            (↥(FixedPoints.subalgebra A B ↥(↑Y.toOpenSubgroup : Subgroup G)) ⧸
                                under (↥(FixedPoints.subalgebra A B ↥(↑Y.toOpenSubgroup : Subgroup G))) Q) ≃ₐ[A ⧸ P]
                              ↥(FixedPoints.subalgebra A B ↥(↑Y.toOpenSubgroup : Subgroup G)) ⧸
                                under (↥(FixedPoints.subalgebra A B ↥(↑Y.toOpenSubgroup : Subgroup G))) Q)
                        σ') :
                    ↥(FixedPoints.subalgebra A B ↥(↑Y.toOpenSubgroup : Subgroup G)) ⧸
                        under (↥(FixedPoints.subalgebra A B ↥(↑Y.toOpenSubgroup : Subgroup G))) Q →ₐ[A ⧸ P]
                      ↥(FixedPoints.subalgebra A B ↥(↑Y.toOpenSubgroup : Subgroup G)) ⧸
                        under (↥(FixedPoints.subalgebra A B ↥(↑Y.toOpenSubgroup : Subgroup G))) Q))
                ((↑σ : B ⧸ Q →ₐ[A ⧸ P] B ⧸ Q).comp
                  (let __RingHom :
                    HasQuotient.Quotient ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Y.toOpenSubgroup : Subgroup G))
                        (B := Ideal ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Y.toOpenSubgroup : Subgroup G)))
                        (under (↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Y.toOpenSubgroup : Subgroup G))) Q) →+*
                      B ⧸ Q :=
                    quotientMap Q
                      (Subsemiring.subtype
                        (Subalgebra.toSubsemiring
                          (FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Y.toOpenSubgroup : Subgroup G))))
                      ⋯;
                  { toRingHom := __RingHom, commutes' := ⋯ })) }) ↦
        Subtype.mk (p :=
          fun
            (σ' :
              ↥(MulAction.stabilizer (G ⧸ (↑Z.toOpenSubgroup : Subgroup G)) (α :=
                  Ideal ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Z.toOpenSubgroup : Subgroup G)))
                  (under (↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Z.toOpenSubgroup : Subgroup G))) Q))) ↦
          Eq (α :=
            AlgHom.{u_1, u_2, u_2} (A ⧸ P)
              (HasQuotient.Quotient ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Z.toOpenSubgroup : Subgroup G)) (B :=
                Ideal ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Z.toOpenSubgroup : Subgroup G)))
                (under (↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Z.toOpenSubgroup : Subgroup G))) Q))
              (B ⧸ Q))
            (AlgHom.comp (B :=
              HasQuotient.Quotient ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Z.toOpenSubgroup : Subgroup G)) (B :=
                Ideal ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Z.toOpenSubgroup : Subgroup G)))
                (under (↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Z.toOpenSubgroup : Subgroup G))) Q))
              (let __RingHom :
                HasQuotient.Quotient ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Z.toOpenSubgroup : Subgroup G)) (B :=
                    Ideal ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Z.toOpenSubgroup : Subgroup G)))
                    (under (↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Z.toOpenSubgroup : Subgroup G))) Q) →+*
                  B ⧸ Q :=
                quotientMap Q
                  (Subsemiring.subtype
                    (Subalgebra.toSubsemiring
                      (FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Z.toOpenSubgroup : Subgroup G))))
                  ⋯;
              { toRingHom := __RingHom, commutes' := ⋯ })
              (↑((stabilizerHom
                        (under (↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Z.toOpenSubgroup : Subgroup G))) Q) P
                        (G ⧸ (↑Z.toOpenSubgroup : Subgroup G)) :
                      (a :
                          ↥(MulAction.stabilizer (G ⧸ (↑Z.toOpenSubgroup : Subgroup G))
                              (under (↥(FixedPoints.subalgebra A B ↥(↑Z.toOpenSubgroup : Subgroup G))) Q))) →
                        (↥(FixedPoints.subalgebra A B ↥(↑Z.toOpenSubgroup : Subgroup G)) ⧸
                            under (↥(FixedPoints.subalgebra A B ↥(↑Z.toOpenSubgroup : Subgroup G))) Q) ≃ₐ[A ⧸ P]
                          ↥(FixedPoints.subalgebra A B ↥(↑Z.toOpenSubgroup : Subgroup G)) ⧸
                            under (↥(FixedPoints.subalgebra A B ↥(↑Z.toOpenSubgroup : Subgroup G))) Q)
                    σ') :
                ↥(FixedPoints.subalgebra A B ↥(↑Z.toOpenSubgroup : Subgroup G)) ⧸
                    under (↥(FixedPoints.subalgebra A B ↥(↑Z.toOpenSubgroup : Subgroup G))) Q →ₐ[A ⧸ P]
                  ↥(FixedPoints.subalgebra A B ↥(↑Z.toOpenSubgroup : Subgroup G)) ⧸
                    under (↥(FixedPoints.subalgebra A B ↥(↑Z.toOpenSubgroup : Subgroup G))) Q))
            ((↑σ : B ⧸ Q →ₐ[A ⧸ P] B ⧸ Q).comp
              (let __RingHom :
                HasQuotient.Quotient ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Z.toOpenSubgroup : Subgroup G)) (B :=
                    Ideal ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Z.toOpenSubgroup : Subgroup G)))
                    (under (↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Z.toOpenSubgroup : Subgroup G))) Q) →+*
                  B ⧸ Q :=
                quotientMap Q
                  (Subsemiring.subtype
                    (Subalgebra.toSubsemiring
                      (FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Z.toOpenSubgroup : Subgroup G))))
                  ⋯;
              { toRingHom := __RingHom, commutes' := ⋯ })))
          (Subtype.mk (p := fun (x : G ⧸ (↑Z.toOpenSubgroup : Subgroup G)) ↦
            Membership.mem (γ := Subgroup (G ⧸ (↑Z.toOpenSubgroup : Subgroup G)))
              (MulAction.stabilizer (G ⧸ (↑Z.toOpenSubgroup : Subgroup G)) (α :=
                Ideal ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Z.toOpenSubgroup : Subgroup G)))
                (under (↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Z.toOpenSubgroup : Subgroup G))) Q))
              x)
            ((QuotientGroup.map (↑Y.toOpenSubgroup : Subgroup G) Z.toOpenSubgroup.1 (MonoidHom.id G) ⋯ :
                (a : G ⧸ (↑Y.toOpenSubgroup : Subgroup G)) → G ⧸ Z.toOpenSubgroup.1)
              (↑(↑x :
                    ↥(MulAction.stabilizer (G ⧸ (↑Y.toOpenSubgroup : Subgroup G))
                        (under (↥(FixedPoints.subalgebra A B ↥(↑Y.toOpenSubgroup : Subgroup G))) Q))) :
                G ⧸ (↑Y.toOpenSubgroup : Subgroup G)))
            ⋯)
          ⋯))
have h : ∀ (val : sorry) (x : sorry) (hx : sorry) (hx' : sorry),
  Eq (α := G ⧸ (↑Z.toOpenSubgroup : Subgroup G))
    (↑(↑(TypeCat.Fun.toFun (X :=
              { σ' :
                ↥(MulAction.stabilizer (G ⧸ (↑X.toOpenSubgroup : Subgroup G)) (α :=
                    Ideal ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G)))
                    (under (↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G))) Q)) //
                Eq (α :=
                  AlgHom.{u_1, u_2, u_2} (A ⧸ P)
                    (HasQuotient.Quotient ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G))
                      (B := Ideal ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G)))
                      (under (↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G))) Q))
                    (B ⧸ Q))
                  (AlgHom.comp (B :=
                    HasQuotient.Quotient ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G))
                      (B := Ideal ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G)))
                      (under (↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G))) Q))
                    (let __RingHom :
                      HasQuotient.Quotient ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G))
                          (B := Ideal ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G)))
                          (under (↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G))) Q) →+*
                        B ⧸ Q :=
                      quotientMap Q
                        (Subsemiring.subtype
                          (Subalgebra.toSubsemiring
                            (FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G))))
                        sorry;
                    { toRingHom := __RingHom, commutes' := sorry })
                    (↑((stabilizerHom
                              (under (↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G))) Q)
                              P (G ⧸ (↑X.toOpenSubgroup : Subgroup G)) :
                            (a :
                                ↥(MulAction.stabilizer (G ⧸ (↑X.toOpenSubgroup : Subgroup G))
                                    (under (↥(FixedPoints.subalgebra A B ↥(↑X.toOpenSubgroup : Subgroup G))) Q))) →
                              (↥(FixedPoints.subalgebra A B ↥(↑X.toOpenSubgroup : Subgroup G)) ⧸
                                  under (↥(FixedPoints.subalgebra A B ↥(↑X.toOpenSubgroup : Subgroup G))) Q) ≃ₐ[A ⧸ P]
                                ↥(FixedPoints.subalgebra A B ↥(↑X.toOpenSubgroup : Subgroup G)) ⧸
                                  under (↥(FixedPoints.subalgebra A B ↥(↑X.toOpenSubgroup : Subgroup G))) Q)
                          σ') :
                      ↥(FixedPoints.subalgebra A B ↥(↑X.toOpenSubgroup : Subgroup G)) ⧸
                          under (↥(FixedPoints.subalgebra A B ↥(↑X.toOpenSubgroup : Subgroup G))) Q →ₐ[A ⧸ P]
                        ↥(FixedPoints.subalgebra A B ↥(↑X.toOpenSubgroup : Subgroup G)) ⧸
                          under (↥(FixedPoints.subalgebra A B ↥(↑X.toOpenSubgroup : Subgroup G))) Q))
                  ((↑σ : B ⧸ Q →ₐ[A ⧸ P] B ⧸ Q).comp
                    (let __RingHom :
                      HasQuotient.Quotient ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G))
                          (B := Ideal ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G)))
                          (under (↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G))) Q) →+*
                        B ⧸ Q :=
                      quotientMap Q
                        (Subsemiring.subtype
                          (Subalgebra.toSubsemiring
                            (FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G))))
                        sorry;
                    { toRingHom := __RingHom, commutes' := sorry })) })
              (ConcreteCategory.hom (FC := TypeCat.Fun)
                (↾fun
                    (x :
                      { σ' :
                        ↥(MulAction.stabilizer (G ⧸ (↑X.toOpenSubgroup : Subgroup G)) (α :=
                            Ideal ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G)))
                            (under (↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G)))
                              Q)) //
                        Eq (α :=
                          AlgHom.{u_1, u_2, u_2} (A ⧸ P)
                            (HasQuotient.Quotient
                              ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G)) (B :=
                              Ideal ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G)))
                              (under (↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G))) Q))
                            (B ⧸ Q))
                          (AlgHom.comp (B :=
                            HasQuotient.Quotient
                              ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G)) (B :=
                              Ideal ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G)))
                              (under (↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G))) Q))
                            (let __RingHom :
                              HasQuotient.Quotient
                                  ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G)) (B :=
                                  Ideal ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G)))
                                  (under (↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G)))
                                    Q) →+*
                                B ⧸ Q :=
                              quotientMap Q
                                (Subsemiring.subtype
                                  (Subalgebra.toSubsemiring
                                    (FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G))))
                                sorry;
                            { toRingHom := __RingHom, commutes' := sorry :
                              AlgHom.{u_1, u_2, u_2} (A ⧸ P)
                                (HasQuotient.Quotient
                                  ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G)) (B :=
                                  Ideal ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G)))
                                  (under (↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G)))
                                    Q))
                                (B ⧸ Q) })
                            (↑((stabilizerHom
                                      (under
                                        (↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G)))
                                        Q)
                                      P (G ⧸ (↑X.toOpenSubgroup : Subgroup G)) :
                                    (a :
                                        ↥(MulAction.stabilizer (G ⧸ (↑X.toOpenSubgroup : Subgroup G))
                                            (under (↥(FixedPoints.subalgebra A B ↥(↑X.toOpenSubgroup : Subgroup G)))
                                              Q))) →
                                      (↥(FixedPoints.subalgebra A B ↥(↑X.toOpenSubgroup : Subgroup G)) ⧸
                                          under (↥(FixedPoints.subalgebra A B ↥(↑X.toOpenSubgroup : Subgroup G)))
                                            Q) ≃ₐ[A ⧸ P]
                                        ↥(FixedPoints.subalgebra A B ↥(↑X.toOpenSubgroup : Subgroup G)) ⧸
                                          under (↥(FixedPoints.subalgebra A B ↥(↑X.toOpenSubgroup : Subgroup G))) Q)
                                  σ') :
                              ↥(FixedPoints.subalgebra A B ↥(↑X.toOpenSubgroup : Subgroup G)) ⧸
                                  under (↥(FixedPoints.subalgebra A B ↥(↑X.toOpenSubgroup : Subgroup G))) Q →ₐ[A ⧸ P]
                                ↥(FixedPoints.subalgebra A B ↥(↑X.toOpenSubgroup : Subgroup G)) ⧸
                                  under (↥(FixedPoints.subalgebra A B ↥(↑X.toOpenSubgroup : Subgroup G))) Q))
                          ((↑σ : B ⧸ Q →ₐ[A ⧸ P] B ⧸ Q).comp
                            (let __RingHom :
                              HasQuotient.Quotient
                                  ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G)) (B :=
                                  Ideal ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G)))
                                  (under (↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G)))
                                    Q) →+*
                                B ⧸ Q :=
                              quotientMap Q
                                (Subsemiring.subtype
                                  (Subalgebra.toSubsemiring
                                    (FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G))))
                                sorry;
                            { toRingHom := __RingHom, commutes' := sorry :
                              AlgHom.{u_1, u_2, u_2} (A ⧸ P)
                                (HasQuotient.Quotient
                                  ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G)) (B :=
                                  Ideal ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G)))
                                  (under (↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G)))
                                    Q))
                                (B ⧸ Q) })) }) ↦
                  Subtype.mk (p :=
                    fun
                      (σ' :
                        ↥(MulAction.stabilizer (G ⧸ (↑Z.toOpenSubgroup : Subgroup G)) (α :=
                            Ideal ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Z.toOpenSubgroup : Subgroup G)))
                            (under (↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Z.toOpenSubgroup : Subgroup G)))
                              Q))) ↦
                    Eq (α :=
                      AlgHom.{u_1, u_2, u_2} (A ⧸ P)
                        (HasQuotient.Quotient
                          ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Z.toOpenSubgroup : Subgroup G)) (B :=
                          Ideal ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Z.toOpenSubgroup : Subgroup G)))
                          (under (↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Z.toOpenSubgroup : Subgroup G))) Q))
                        (B ⧸ Q))
                      (AlgHom.comp (B :=
                        HasQuotient.Quotient
                          ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Z.toOpenSubgroup : Subgroup G)) (B :=
                          Ideal ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Z.toOpenSubgroup : Subgroup G)))
                          (under (↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Z.toOpenSubgroup : Subgroup G))) Q))
                        (let __RingHom :
                          HasQuotient.Quotient
                              ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Z.toOpenSubgroup : Subgroup G)) (B :=
                              Ideal ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Z.toOpenSubgroup : Subgroup G)))
                              (under (↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Z.toOpenSubgroup : Subgroup G)))
                                Q) →+*
                            B ⧸ Q :=
                          quotientMap Q
                            (Subsemiring.subtype
                              (Subalgebra.toSubsemiring
                                (FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Z.toOpenSubgroup : Subgroup G))))
                            sorry;
                        { toRingHom := __RingHom, commutes' := sorry :
                          AlgHom.{u_1, u_2, u_2} (A ⧸ P)
                            (HasQuotient.Quotient
                              ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Z.toOpenSubgroup : Subgroup G)) (B :=
                              Ideal ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Z.toOpenSubgroup : Subgroup G)))
                              (under (↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Z.toOpenSubgroup : Subgroup G))) Q))
                            (B ⧸ Q) })
                        (↑((stabilizerHom
                                  (under (↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Z.toOpenSubgroup : Subgroup G)))
                                    Q)
                                  P (G ⧸ (↑Z.toOpenSubgroup : Subgroup G)) :
                                (a :
                                    ↥(MulAction.stabilizer (G ⧸ (↑Z.toOpenSubgroup : Subgroup G))
                                        (under (↥(FixedPoints.subalgebra A B ↥(↑Z.toOpenSubgroup : Subgroup G))) Q))) →
                                  (↥(FixedPoints.subalgebra A B ↥(↑Z.toOpenSubgroup : Subgroup G)) ⧸
                                      under (↥(FixedPoints.subalgebra A B ↥(↑Z.toOpenSubgroup : Subgroup G)))
                                        Q) ≃ₐ[A ⧸ P]
                                    ↥(FixedPoints.subalgebra A B ↥(↑Z.toOpenSubgroup : Subgroup G)) ⧸
                                      under (↥(FixedPoints.subalgebra A B ↥(↑Z.toOpenSubgroup : Subgroup G))) Q)
                              σ') :
                          ↥(FixedPoints.subalgebra A B ↥(↑Z.toOpenSubgroup : Subgroup G)) ⧸
                              under (↥(FixedPoints.subalgebra A B ↥(↑Z.toOpenSubgroup : Subgroup G))) Q →ₐ[A ⧸ P]
                            ↥(FixedPoints.subalgebra A B ↥(↑Z.toOpenSubgroup : Subgroup G)) ⧸
                              under (↥(FixedPoints.subalgebra A B ↥(↑Z.toOpenSubgroup : Subgroup G))) Q))
                      ((↑σ : B ⧸ Q →ₐ[A ⧸ P] B ⧸ Q).comp
                        (let __RingHom :
                          HasQuotient.Quotient
                              ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Z.toOpenSubgroup : Subgroup G)) (B :=
                              Ideal ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Z.toOpenSubgroup : Subgroup G)))
                              (under (↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Z.toOpenSubgroup : Subgroup G)))
                                Q) →+*
                            B ⧸ Q :=
                          quotientMap Q
                            (Subsemiring.subtype
                              (Subalgebra.toSubsemiring
                                (FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Z.toOpenSubgroup : Subgroup G))))
                            sorry;
                        { toRingHom := __RingHom, commutes' := sorry :
                          AlgHom.{u_1, u_2, u_2} (A ⧸ P)
                            (HasQuotient.Quotient
                              ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Z.toOpenSubgroup : Subgroup G)) (B :=
                              Ideal ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Z.toOpenSubgroup : Subgroup G)))
                              (under (↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Z.toOpenSubgroup : Subgroup G))) Q))
                            (B ⧸ Q) })))
                    (Subtype.mk (p := fun (x : G ⧸ (↑Z.toOpenSubgroup : Subgroup G)) ↦
                      Membership.mem (γ := Subgroup (G ⧸ (↑Z.toOpenSubgroup : Subgroup G)))
                        (MulAction.stabilizer (G ⧸ (↑Z.toOpenSubgroup : Subgroup G)) (α :=
                          Ideal ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Z.toOpenSubgroup : Subgroup G)))
                          (under (↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Z.toOpenSubgroup : Subgroup G))) Q))
                        x)
                      ((QuotientGroup.map (↑X.toOpenSubgroup : Subgroup G) Z.toOpenSubgroup.1 (MonoidHom.id G) sorry :
                          (a : G ⧸ (↑X.toOpenSubgroup : Subgroup G)) → G ⧸ Z.toOpenSubgroup.1)
                        (↑(↑x :
                              ↥(MulAction.stabilizer (G ⧸ (↑X.toOpenSubgroup : Subgroup G))
                                  (under (↥(FixedPoints.subalgebra A B ↥(↑X.toOpenSubgroup : Subgroup G))) Q))) :
                          G ⧸ (↑X.toOpenSubgroup : Subgroup G)))
                      sorry)
                    sorry))
              (Subtype.mk (p :=
                fun
                  (σ' :
                    ↥(MulAction.stabilizer (G ⧸ (↑X.toOpenSubgroup : Subgroup G)) (α :=
                        Ideal ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G)))
                        (under (↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G))) Q))) ↦
                Eq (α :=
                  AlgHom.{u_1, u_2, u_2} (A ⧸ P)
                    (HasQuotient.Quotient ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G))
                      (B := Ideal ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G)))
                      (under (↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G))) Q))
                    (B ⧸ Q))
                  (AlgHom.comp (B :=
                    HasQuotient.Quotient ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G))
                      (B := Ideal ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G)))
                      (under (↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G))) Q))
                    (let __RingHom :
                      HasQuotient.Quotient ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G))
                          (B := Ideal ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G)))
                          (under (↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G))) Q) →+*
                        B ⧸ Q :=
                      quotientMap Q
                        (Subsemiring.subtype
                          (Subalgebra.toSubsemiring
                            (FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G))))
                        sorry;
                    { toRingHom := __RingHom, commutes' := sorry })
                    (↑((stabilizerHom
                              (under (↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G))) Q)
                              P (G ⧸ (↑X.toOpenSubgroup : Subgroup G)) :
                            (a :
                                ↥(MulAction.stabilizer (G ⧸ (↑X.toOpenSubgroup : Subgroup G))
                                    (under (↥(FixedPoints.subalgebra A B ↥(↑X.toOpenSubgroup : Subgroup G))) Q))) →
                              (↥(FixedPoints.subalgebra A B ↥(↑X.toOpenSubgroup : Subgroup G)) ⧸
                                  under (↥(FixedPoints.subalgebra A B ↥(↑X.toOpenSubgroup : Subgroup G))) Q) ≃ₐ[A ⧸ P]
                                ↥(FixedPoints.subalgebra A B ↥(↑X.toOpenSubgroup : Subgroup G)) ⧸
                                  under (↥(FixedPoints.subalgebra A B ↥(↑X.toOpenSubgroup : Subgroup G))) Q)
                          σ') :
                      ↥(FixedPoints.subalgebra A B ↥(↑X.toOpenSubgroup : Subgroup G)) ⧸
                          under (↥(FixedPoints.subalgebra A B ↥(↑X.toOpenSubgroup : Subgroup G))) Q →ₐ[A ⧸ P]
                        ↥(FixedPoints.subalgebra A B ↥(↑X.toOpenSubgroup : Subgroup G)) ⧸
                          under (↥(FixedPoints.subalgebra A B ↥(↑X.toOpenSubgroup : Subgroup G))) Q))
                  ((↑σ : B ⧸ Q →ₐ[A ⧸ P] B ⧸ Q).comp
                    (let __RingHom :
                      HasQuotient.Quotient ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G))
                          (B := Ideal ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G)))
                          (under (↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G))) Q) →+*
                        B ⧸ Q :=
                      quotientMap Q
                        (Subsemiring.subtype
                          (Subalgebra.toSubsemiring
                            (FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G))))
                        sorry;
                    { toRingHom := __RingHom, commutes' := sorry })))
                (Subtype.mk (p := fun (x : G ⧸ (↑X.toOpenSubgroup : Subgroup G)) ↦
                  Membership.mem (γ := Subgroup (G ⧸ (↑X.toOpenSubgroup : Subgroup G)))
                    (MulAction.stabilizer (G ⧸ (↑X.toOpenSubgroup : Subgroup G)) (α :=
                      Ideal ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G)))
                      (under (↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G))) Q))
                    x)
                  (Quot.mk (⇑(QuotientGroup.leftRel (↑X.toOpenSubgroup : Subgroup G)) : G → G → Prop) x) hx)
                hx')) :
          ↥(MulAction.stabilizer (G ⧸ (↑Z.toOpenSubgroup : Subgroup G))
              (under (↥(FixedPoints.subalgebra A B ↥(↑Z.toOpenSubgroup : Subgroup G))) Q))) :
      G ⧸ (↑Z.toOpenSubgroup : Subgroup G))
    (↑(↑(TypeCat.Fun.toFun (X :=
              { σ' :
                ↥(MulAction.stabilizer (G ⧸ (↑X.toOpenSubgroup : Subgroup G)) (α :=
                    Ideal ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G)))
                    (under (↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G))) Q)) //
                Eq (α :=
                  AlgHom.{u_1, u_2, u_2} (A ⧸ P)
                    (HasQuotient.Quotient ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G))
                      (B := Ideal ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G)))
                      (under (↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G))) Q))
                    (B ⧸ Q))
                  (AlgHom.comp (B :=
                    HasQuotient.Quotient ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G))
                      (B := Ideal ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G)))
                      (under (↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G))) Q))
                    (let __RingHom :
                      HasQuotient.Quotient ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G))
                          (B := Ideal ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G)))
                          (under (↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G))) Q) →+*
                        B ⧸ Q :=
                      quotientMap Q
                        (Subsemiring.subtype
                          (Subalgebra.toSubsemiring
                            (FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G))))
                        sorry;
                    { toRingHom := __RingHom, commutes' := sorry })
                    (↑((stabilizerHom
                              (under (↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G))) Q)
                              P (G ⧸ (↑X.toOpenSubgroup : Subgroup G)) :
                            (a :
                                ↥(MulAction.stabilizer (G ⧸ (↑X.toOpenSubgroup : Subgroup G))
                                    (under (↥(FixedPoints.subalgebra A B ↥(↑X.toOpenSubgroup : Subgroup G))) Q))) →
                              (↥(FixedPoints.subalgebra A B ↥(↑X.toOpenSubgroup : Subgroup G)) ⧸
                                  under (↥(FixedPoints.subalgebra A B ↥(↑X.toOpenSubgroup : Subgroup G))) Q) ≃ₐ[A ⧸ P]
                                ↥(FixedPoints.subalgebra A B ↥(↑X.toOpenSubgroup : Subgroup G)) ⧸
                                  under (↥(FixedPoints.subalgebra A B ↥(↑X.toOpenSubgroup : Subgroup G))) Q)
                          σ') :
                      ↥(FixedPoints.subalgebra A B ↥(↑X.toOpenSubgroup : Subgroup G)) ⧸
                          under (↥(FixedPoints.subalgebra A B ↥(↑X.toOpenSubgroup : Subgroup G))) Q →ₐ[A ⧸ P]
                        ↥(FixedPoints.subalgebra A B ↥(↑X.toOpenSubgroup : Subgroup G)) ⧸
                          under (↥(FixedPoints.subalgebra A B ↥(↑X.toOpenSubgroup : Subgroup G))) Q))
                  ((↑σ : B ⧸ Q →ₐ[A ⧸ P] B ⧸ Q).comp
                    (let __RingHom :
                      HasQuotient.Quotient ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G))
                          (B := Ideal ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G)))
                          (under (↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G))) Q) →+*
                        B ⧸ Q :=
                      quotientMap Q
                        (Subsemiring.subtype
                          (Subalgebra.toSubsemiring
                            (FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G))))
                        sorry;
                    { toRingHom := __RingHom, commutes' := sorry })) })
              (ConcreteCategory.hom (FC := TypeCat.Fun)
                (CategoryStruct.comp (Y :=
                  { σ' :
                    ↥(MulAction.stabilizer (G ⧸ (↑Y.toOpenSubgroup : Subgroup G)) (α :=
                        Ideal ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Y.toOpenSubgroup : Subgroup G)))
                        (under (↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Y.toOpenSubgroup : Subgroup G))) Q)) //
                    Eq (α :=
                      AlgHom.{u_1, u_2, u_2} (A ⧸ P)
                        (HasQuotient.Quotient
                          ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Y.toOpenSubgroup : Subgroup G)) (B :=
                          Ideal ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Y.toOpenSubgroup : Subgroup G)))
                          (under (↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Y.toOpenSubgroup : Subgroup G))) Q))
                        (B ⧸ Q))
                      (AlgHom.comp (B :=
                        HasQuotient.Quotient
                          ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Y.toOpenSubgroup : Subgroup G)) (B :=
                          Ideal ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Y.toOpenSubgroup : Subgroup G)))
                          (under (↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Y.toOpenSubgroup : Subgroup G))) Q))
                        (let __RingHom :
                          HasQuotient.Quotient
                              ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Y.toOpenSubgroup : Subgroup G)) (B :=
                              Ideal ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Y.toOpenSubgroup : Subgroup G)))
                              (under (↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Y.toOpenSubgroup : Subgroup G)))
                                Q) →+*
                            B ⧸ Q :=
                          quotientMap Q
                            (Subsemiring.subtype
                              (Subalgebra.toSubsemiring
                                (FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Y.toOpenSubgroup : Subgroup G))))
                            sorry;
                        { toRingHom := __RingHom, commutes' := sorry :
                          AlgHom.{u_1, u_2, u_2} (A ⧸ P)
                            (HasQuotient.Quotient
                              ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Y.toOpenSubgroup : Subgroup G)) (B :=
                              Ideal ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Y.toOpenSubgroup : Subgroup G)))
                              (under (↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Y.toOpenSubgroup : Subgroup G))) Q))
                            (B ⧸ Q) })
                        (↑((stabilizerHom
                                  (under (↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Y.toOpenSubgroup : Subgroup G)))
                                    Q)
                                  P (G ⧸ (↑Y.toOpenSubgroup : Subgroup G)) :
                                (a :
                                    ↥(MulAction.stabilizer (G ⧸ (↑Y.toOpenSubgroup : Subgroup G))
                                        (under (↥(FixedPoints.subalgebra A B ↥(↑Y.toOpenSubgroup : Subgroup G))) Q))) →
                                  (↥(FixedPoints.subalgebra A B ↥(↑Y.toOpenSubgroup : Subgroup G)) ⧸
                                      under (↥(FixedPoints.subalgebra A B ↥(↑Y.toOpenSubgroup : Subgroup G)))
                                        Q) ≃ₐ[A ⧸ P]
                                    ↥(FixedPoints.subalgebra A B ↥(↑Y.toOpenSubgroup : Subgroup G)) ⧸
                                      under (↥(FixedPoints.subalgebra A B ↥(↑Y.toOpenSubgroup : Subgroup G))) Q)
                              σ') :
                          ↥(FixedPoints.subalgebra A B ↥(↑Y.toOpenSubgroup : Subgroup G)) ⧸
                              under (↥(FixedPoints.subalgebra A B ↥(↑Y.toOpenSubgroup : Subgroup G))) Q →ₐ[A ⧸ P]
                            ↥(FixedPoints.subalgebra A B ↥(↑Y.toOpenSubgroup : Subgroup G)) ⧸
                              under (↥(FixedPoints.subalgebra A B ↥(↑Y.toOpenSubgroup : Subgroup G))) Q))
                      ((↑σ : B ⧸ Q →ₐ[A ⧸ P] B ⧸ Q).comp
                        (let __RingHom :
                          HasQuotient.Quotient
                              ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Y.toOpenSubgroup : Subgroup G)) (B :=
                              Ideal ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Y.toOpenSubgroup : Subgroup G)))
                              (under (↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Y.toOpenSubgroup : Subgroup G)))
                                Q) →+*
                            B ⧸ Q :=
                          quotientMap Q
                            (Subsemiring.subtype
                              (Subalgebra.toSubsemiring
                                (FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Y.toOpenSubgroup : Subgroup G))))
                            sorry;
                        { toRingHom := __RingHom, commutes' := sorry :
                          AlgHom.{u_1, u_2, u_2} (A ⧸ P)
                            (HasQuotient.Quotient
                              ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Y.toOpenSubgroup : Subgroup G)) (B :=
                              Ideal ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Y.toOpenSubgroup : Subgroup G)))
                              (under (↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Y.toOpenSubgroup : Subgroup G))) Q))
                            (B ⧸ Q) })) })
                  (↾fun
                      (x :
                        { σ' :
                          ↥(MulAction.stabilizer (G ⧸ (↑X.toOpenSubgroup : Subgroup G)) (α :=
                              Ideal ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G)))
                              (under (↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G)))
                                Q)) //
                          Eq (α :=
                            AlgHom.{u_1, u_2, u_2} (A ⧸ P)
                              (HasQuotient.Quotient
                                ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G)) (B :=
                                Ideal ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G)))
                                (under (↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G)))
                                  Q))
                              (B ⧸ Q))
                            (AlgHom.comp (B :=
                              HasQuotient.Quotient
                                ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G)) (B :=
                                Ideal ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G)))
                                (under (↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G)))
                                  Q))
                              (let __RingHom :
                                HasQuotient.Quotient
                                    ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G)) (B :=
                                    Ideal ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G)))
                                    (under
                                      (↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G)))
                                      Q) →+*
                                  B ⧸ Q :=
                                quotientMap Q
                                  (Subsemiring.subtype
                                    (Subalgebra.toSubsemiring
                                      (FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G))))
                                  sorry;
                              { toRingHom := __RingHom, commutes' := sorry :
                                AlgHom.{u_1, u_2, u_2} (A ⧸ P)
                                  (HasQuotient.Quotient
                                    ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G)) (B :=
                                    Ideal ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G)))
                                    (under
                                      (↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G)))
                                      Q))
                                  (B ⧸ Q) })
                              (↑((stabilizerHom
                                        (under
                                          (↥(FixedPoints.subalgebra.{u_1, u_2, u} A B
                                              ↥(↑X.toOpenSubgroup : Subgroup G)))
                                          Q)
                                        P (G ⧸ (↑X.toOpenSubgroup : Subgroup G)) :
                                      (a :
                                          ↥(MulAction.stabilizer (G ⧸ (↑X.toOpenSubgroup : Subgroup G))
                                              (under (↥(FixedPoints.subalgebra A B ↥(↑X.toOpenSubgroup : Subgroup G)))
                                                Q))) →
                                        (↥(FixedPoints.subalgebra A B ↥(↑X.toOpenSubgroup : Subgroup G)) ⧸
                                            under (↥(FixedPoints.subalgebra A B ↥(↑X.toOpenSubgroup : Subgroup G)))
                                              Q) ≃ₐ[A ⧸ P]
                                          ↥(FixedPoints.subalgebra A B ↥(↑X.toOpenSubgroup : Subgroup G)) ⧸
                                            under (↥(FixedPoints.subalgebra A B ↥(↑X.toOpenSubgroup : Subgroup G))) Q)
                                    σ') :
                                ↥(FixedPoints.subalgebra A B ↥(↑X.toOpenSubgroup : Subgroup G)) ⧸
                                    under (↥(FixedPoints.subalgebra A B ↥(↑X.toOpenSubgroup : Subgroup G))) Q →ₐ[A ⧸ P]
                                  ↥(FixedPoints.subalgebra A B ↥(↑X.toOpenSubgroup : Subgroup G)) ⧸
                                    under (↥(FixedPoints.subalgebra A B ↥(↑X.toOpenSubgroup : Subgroup G))) Q))
                            ((↑σ : B ⧸ Q →ₐ[A ⧸ P] B ⧸ Q).comp
                              (let __RingHom :
                                HasQuotient.Quotient
                                    ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G)) (B :=
                                    Ideal ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G)))
                                    (under
                                      (↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G)))
                                      Q) →+*
                                  B ⧸ Q :=
                                quotientMap Q
                                  (Subsemiring.subtype
                                    (Subalgebra.toSubsemiring
                                      (FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G))))
                                  sorry;
                              { toRingHom := __RingHom, commutes' := sorry :
                                AlgHom.{u_1, u_2, u_2} (A ⧸ P)
                                  (HasQuotient.Quotient
                                    ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G)) (B :=
                                    Ideal ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G)))
                                    (under
                                      (↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G)))
                                      Q))
                                  (B ⧸ Q) })) }) ↦
                    Subtype.mk (p :=
                      fun
                        (σ' :
                          ↥(MulAction.stabilizer (G ⧸ (↑Y.toOpenSubgroup : Subgroup G)) (α :=
                              Ideal ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Y.toOpenSubgroup : Subgroup G)))
                              (under (↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Y.toOpenSubgroup : Subgroup G)))
                                Q))) ↦
                      Eq (α :=
                        AlgHom.{u_1, u_2, u_2} (A ⧸ P)
                          (HasQuotient.Quotient
                            ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Y.toOpenSubgroup : Subgroup G)) (B :=
                            Ideal ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Y.toOpenSubgroup : Subgroup G)))
                            (under (↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Y.toOpenSubgroup : Subgroup G))) Q))
                          (B ⧸ Q))
                        (AlgHom.comp (B :=
                          HasQuotient.Quotient
                            ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Y.toOpenSubgroup : Subgroup G)) (B :=
                            Ideal ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Y.toOpenSubgroup : Subgroup G)))
                            (under (↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Y.toOpenSubgroup : Subgroup G))) Q))
                          (let __RingHom :
                            HasQuotient.Quotient
                                ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Y.toOpenSubgroup : Subgroup G)) (B :=
                                Ideal ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Y.toOpenSubgroup : Subgroup G)))
                                (under (↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Y.toOpenSubgroup : Subgroup G)))
                                  Q) →+*
                              B ⧸ Q :=
                            quotientMap Q
                              (Subsemiring.subtype
                                (Subalgebra.toSubsemiring
                                  (FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Y.toOpenSubgroup : Subgroup G))))
                              sorry;
                          { toRingHom := __RingHom, commutes' := sorry :
                            AlgHom.{u_1, u_2, u_2} (A ⧸ P)
                              (HasQuotient.Quotient
                                ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Y.toOpenSubgroup : Subgroup G)) (B :=
                                Ideal ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Y.toOpenSubgroup : Subgroup G)))
                                (under (↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Y.toOpenSubgroup : Subgroup G)))
                                  Q))
                              (B ⧸ Q) })
                          (↑((stabilizerHom
                                    (under
                                      (↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Y.toOpenSubgroup : Subgroup G))) Q)
                                    P (G ⧸ (↑Y.toOpenSubgroup : Subgroup G)) :
                                  (a :
                                      ↥(MulAction.stabilizer (G ⧸ (↑Y.toOpenSubgroup : Subgroup G))
                                          (under (↥(FixedPoints.subalgebra A B ↥(↑Y.toOpenSubgroup : Subgroup G)))
                                            Q))) →
                                    (↥(FixedPoints.subalgebra A B ↥(↑Y.toOpenSubgroup : Subgroup G)) ⧸
                                        under (↥(FixedPoints.subalgebra A B ↥(↑Y.toOpenSubgroup : Subgroup G)))
                                          Q) ≃ₐ[A ⧸ P]
                                      ↥(FixedPoints.subalgebra A B ↥(↑Y.toOpenSubgroup : Subgroup G)) ⧸
                                        under (↥(FixedPoints.subalgebra A B ↥(↑Y.toOpenSubgroup : Subgroup G))) Q)
                                σ') :
                            ↥(FixedPoints.subalgebra A B ↥(↑Y.toOpenSubgroup : Subgroup G)) ⧸
                                under (↥(FixedPoints.subalgebra A B ↥(↑Y.toOpenSubgroup : Subgroup G))) Q →ₐ[A ⧸ P]
                              ↥(FixedPoints.subalgebra A B ↥(↑Y.toOpenSubgroup : Subgroup G)) ⧸
                                under (↥(FixedPoints.subalgebra A B ↥(↑Y.toOpenSubgroup : Subgroup G))) Q))
                        ((↑σ : B ⧸ Q →ₐ[A ⧸ P] B ⧸ Q).comp
                          (let __RingHom :
                            HasQuotient.Quotient
                                ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Y.toOpenSubgroup : Subgroup G)) (B :=
                                Ideal ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Y.toOpenSubgroup : Subgroup G)))
                                (under (↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Y.toOpenSubgroup : Subgroup G)))
                                  Q) →+*
                              B ⧸ Q :=
                            quotientMap Q
                              (Subsemiring.subtype
                                (Subalgebra.toSubsemiring
                                  (FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Y.toOpenSubgroup : Subgroup G))))
                              sorry;
                          { toRingHom := __RingHom, commutes' := sorry :
                            AlgHom.{u_1, u_2, u_2} (A ⧸ P)
                              (HasQuotient.Quotient
                                ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Y.toOpenSubgroup : Subgroup G)) (B :=
                                Ideal ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Y.toOpenSubgroup : Subgroup G)))
                                (under (↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Y.toOpenSubgroup : Subgroup G)))
                                  Q))
                              (B ⧸ Q) })))
                      (Subtype.mk (p := fun (x : G ⧸ (↑Y.toOpenSubgroup : Subgroup G)) ↦
                        Membership.mem (γ := Subgroup (G ⧸ (↑Y.toOpenSubgroup : Subgroup G)))
                          (MulAction.stabilizer (G ⧸ (↑Y.toOpenSubgroup : Subgroup G)) (α :=
                            Ideal ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Y.toOpenSubgroup : Subgroup G)))
                            (under (↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Y.toOpenSubgroup : Subgroup G))) Q))
                          x)
                        ((QuotientGroup.map (↑X.toOpenSubgroup : Subgroup G) Y.toOpenSubgroup.1 (MonoidHom.id G) sorry :
                            (a : G ⧸ (↑X.toOpenSubgroup : Subgroup G)) → G ⧸ Y.toOpenSubgroup.1)
                          (↑(↑x :
                                ↥(MulAction.stabilizer (G ⧸ (↑X.toOpenSubgroup : Subgroup G))
                                    (under (↥(FixedPoints.subalgebra A B ↥(↑X.toOpenSubgroup : Subgroup G))) Q))) :
                            G ⧸ (↑X.toOpenSubgroup : Subgroup G)))
                        sorry)
                      sorry)
                  (↾fun
                      (x :
                        { σ' :
                          ↥(MulAction.stabilizer (G ⧸ (↑Y.toOpenSubgroup : Subgroup G)) (α :=
                              Ideal ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Y.toOpenSubgroup : Subgroup G)))
                              (under (↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Y.toOpenSubgroup : Subgroup G)))
                                Q)) //
                          Eq (α :=
                            AlgHom.{u_1, u_2, u_2} (A ⧸ P)
                              (HasQuotient.Quotient
                                ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Y.toOpenSubgroup : Subgroup G)) (B :=
                                Ideal ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Y.toOpenSubgroup : Subgroup G)))
                                (under (↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Y.toOpenSubgroup : Subgroup G)))
                                  Q))
                              (B ⧸ Q))
                            (AlgHom.comp (B :=
                              HasQuotient.Quotient
                                ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Y.toOpenSubgroup : Subgroup G)) (B :=
                                Ideal ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Y.toOpenSubgroup : Subgroup G)))
                                (under (↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Y.toOpenSubgroup : Subgroup G)))
                                  Q))
                              (let __RingHom :
                                HasQuotient.Quotient
                                    ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Y.toOpenSubgroup : Subgroup G)) (B :=
                                    Ideal ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Y.toOpenSubgroup : Subgroup G)))
                                    (under
                                      (↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Y.toOpenSubgroup : Subgroup G)))
                                      Q) →+*
                                  B ⧸ Q :=
                                quotientMap Q
                                  (Subsemiring.subtype
                                    (Subalgebra.toSubsemiring
                                      (FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Y.toOpenSubgroup : Subgroup G))))
                                  sorry;
                              { toRingHom := __RingHom, commutes' := sorry :
                                AlgHom.{u_1, u_2, u_2} (A ⧸ P)
                                  (HasQuotient.Quotient
                                    ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Y.toOpenSubgroup : Subgroup G)) (B :=
                                    Ideal ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Y.toOpenSubgroup : Subgroup G)))
                                    (under
                                      (↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Y.toOpenSubgroup : Subgroup G)))
                                      Q))
                                  (B ⧸ Q) })
                              (↑((stabilizerHom
                                        (under
                                          (↥(FixedPoints.subalgebra.{u_1, u_2, u} A B
                                              ↥(↑Y.toOpenSubgroup : Subgroup G)))
                                          Q)
                                        P (G ⧸ (↑Y.toOpenSubgroup : Subgroup G)) :
                                      (a :
                                          ↥(MulAction.stabilizer (G ⧸ (↑Y.toOpenSubgroup : Subgroup G))
                                              (under (↥(FixedPoints.subalgebra A B ↥(↑Y.toOpenSubgroup : Subgroup G)))
                                                Q))) →
                                        (↥(FixedPoints.subalgebra A B ↥(↑Y.toOpenSubgroup : Subgroup G)) ⧸
                                            under (↥(FixedPoints.subalgebra A B ↥(↑Y.toOpenSubgroup : Subgroup G)))
                                              Q) ≃ₐ[A ⧸ P]
                                          ↥(FixedPoints.subalgebra A B ↥(↑Y.toOpenSubgroup : Subgroup G)) ⧸
                                            under (↥(FixedPoints.subalgebra A B ↥(↑Y.toOpenSubgroup : Subgroup G))) Q)
                                    σ') :
                                ↥(FixedPoints.subalgebra A B ↥(↑Y.toOpenSubgroup : Subgroup G)) ⧸
                                    under (↥(FixedPoints.subalgebra A B ↥(↑Y.toOpenSubgroup : Subgroup G))) Q →ₐ[A ⧸ P]
                                  ↥(FixedPoints.subalgebra A B ↥(↑Y.toOpenSubgroup : Subgroup G)) ⧸
                                    under (↥(FixedPoints.subalgebra A B ↥(↑Y.toOpenSubgroup : Subgroup G))) Q))
                            ((↑σ : B ⧸ Q →ₐ[A ⧸ P] B ⧸ Q).comp
                              (let __RingHom :
                                HasQuotient.Quotient
                                    ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Y.toOpenSubgroup : Subgroup G)) (B :=
                                    Ideal ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Y.toOpenSubgroup : Subgroup G)))
                                    (under
                                      (↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Y.toOpenSubgroup : Subgroup G)))
                                      Q) →+*
                                  B ⧸ Q :=
                                quotientMap Q
                                  (Subsemiring.subtype
                                    (Subalgebra.toSubsemiring
                                      (FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Y.toOpenSubgroup : Subgroup G))))
                                  sorry;
                              { toRingHom := __RingHom, commutes' := sorry :
                                AlgHom.{u_1, u_2, u_2} (A ⧸ P)
                                  (HasQuotient.Quotient
                                    ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Y.toOpenSubgroup : Subgroup G)) (B :=
                                    Ideal ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Y.toOpenSubgroup : Subgroup G)))
                                    (under
                                      (↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Y.toOpenSubgroup : Subgroup G)))
                                      Q))
                                  (B ⧸ Q) })) }) ↦
                    Subtype.mk (p :=
                      fun
                        (σ' :
                          ↥(MulAction.stabilizer (G ⧸ (↑Z.toOpenSubgroup : Subgroup G)) (α :=
                              Ideal ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Z.toOpenSubgroup : Subgroup G)))
                              (under (↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Z.toOpenSubgroup : Subgroup G)))
                                Q))) ↦
                      Eq (α :=
                        AlgHom.{u_1, u_2, u_2} (A ⧸ P)
                          (HasQuotient.Quotient
                            ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Z.toOpenSubgroup : Subgroup G)) (B :=
                            Ideal ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Z.toOpenSubgroup : Subgroup G)))
                            (under (↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Z.toOpenSubgroup : Subgroup G))) Q))
                          (B ⧸ Q))
                        (AlgHom.comp (B :=
                          HasQuotient.Quotient
                            ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Z.toOpenSubgroup : Subgroup G)) (B :=
                            Ideal ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Z.toOpenSubgroup : Subgroup G)))
                            (under (↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Z.toOpenSubgroup : Subgroup G))) Q))
                          (let __RingHom :
                            HasQuotient.Quotient
                                ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Z.toOpenSubgroup : Subgroup G)) (B :=
                                Ideal ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Z.toOpenSubgroup : Subgroup G)))
                                (under (↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Z.toOpenSubgroup : Subgroup G)))
                                  Q) →+*
                              B ⧸ Q :=
                            quotientMap Q
                              (Subsemiring.subtype
                                (Subalgebra.toSubsemiring
                                  (FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Z.toOpenSubgroup : Subgroup G))))
                              sorry;
                          { toRingHom := __RingHom, commutes' := sorry :
                            AlgHom.{u_1, u_2, u_2} (A ⧸ P)
                              (HasQuotient.Quotient
                                ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Z.toOpenSubgroup : Subgroup G)) (B :=
                                Ideal ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Z.toOpenSubgroup : Subgroup G)))
                                (under (↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Z.toOpenSubgroup : Subgroup G)))
                                  Q))
                              (B ⧸ Q) })
                          (↑((stabilizerHom
                                    (under
                                      (↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Z.toOpenSubgroup : Subgroup G))) Q)
                                    P (G ⧸ (↑Z.toOpenSubgroup : Subgroup G)) :
                                  (a :
                                      ↥(MulAction.stabilizer (G ⧸ (↑Z.toOpenSubgroup : Subgroup G))
                                          (under (↥(FixedPoints.subalgebra A B ↥(↑Z.toOpenSubgroup : Subgroup G)))
                                            Q))) →
                                    (↥(FixedPoints.subalgebra A B ↥(↑Z.toOpenSubgroup : Subgroup G)) ⧸
                                        under (↥(FixedPoints.subalgebra A B ↥(↑Z.toOpenSubgroup : Subgroup G)))
                                          Q) ≃ₐ[A ⧸ P]
                                      ↥(FixedPoints.subalgebra A B ↥(↑Z.toOpenSubgroup : Subgroup G)) ⧸
                                        under (↥(FixedPoints.subalgebra A B ↥(↑Z.toOpenSubgroup : Subgroup G))) Q)
                                σ') :
                            ↥(FixedPoints.subalgebra A B ↥(↑Z.toOpenSubgroup : Subgroup G)) ⧸
                                under (↥(FixedPoints.subalgebra A B ↥(↑Z.toOpenSubgroup : Subgroup G))) Q →ₐ[A ⧸ P]
                              ↥(FixedPoints.subalgebra A B ↥(↑Z.toOpenSubgroup : Subgroup G)) ⧸
                                under (↥(FixedPoints.subalgebra A B ↥(↑Z.toOpenSubgroup : Subgroup G))) Q))
                        ((↑σ : B ⧸ Q →ₐ[A ⧸ P] B ⧸ Q).comp
                          (let __RingHom :
                            HasQuotient.Quotient
                                ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Z.toOpenSubgroup : Subgroup G)) (B :=
                                Ideal ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Z.toOpenSubgroup : Subgroup G)))
                                (under (↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Z.toOpenSubgroup : Subgroup G)))
                                  Q) →+*
                              B ⧸ Q :=
                            quotientMap Q
                              (Subsemiring.subtype
                                (Subalgebra.toSubsemiring
                                  (FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Z.toOpenSubgroup : Subgroup G))))
                              sorry;
                          { toRingHom := __RingHom, commutes' := sorry :
                            AlgHom.{u_1, u_2, u_2} (A ⧸ P)
                              (HasQuotient.Quotient
                                ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Z.toOpenSubgroup : Subgroup G)) (B :=
                                Ideal ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Z.toOpenSubgroup : Subgroup G)))
                                (under (↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Z.toOpenSubgroup : Subgroup G)))
                                  Q))
                              (B ⧸ Q) })))
                      (Subtype.mk (p := fun (x : G ⧸ (↑Z.toOpenSubgroup : Subgroup G)) ↦
                        Membership.mem (γ := Subgroup (G ⧸ (↑Z.toOpenSubgroup : Subgroup G)))
                          (MulAction.stabilizer (G ⧸ (↑Z.toOpenSubgroup : Subgroup G)) (α :=
                            Ideal ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Z.toOpenSubgroup : Subgroup G)))
                            (under (↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑Z.toOpenSubgroup : Subgroup G))) Q))
                          x)
                        ((QuotientGroup.map (↑Y.toOpenSubgroup : Subgroup G) Z.toOpenSubgroup.1 (MonoidHom.id G) sorry :
                            (a : G ⧸ (↑Y.toOpenSubgroup : Subgroup G)) → G ⧸ Z.toOpenSubgroup.1)
                          (↑(↑x :
                                ↥(MulAction.stabilizer (G ⧸ (↑Y.toOpenSubgroup : Subgroup G))
                                    (under (↥(FixedPoints.subalgebra A B ↥(↑Y.toOpenSubgroup : Subgroup G))) Q))) :
                            G ⧸ (↑Y.toOpenSubgroup : Subgroup G)))
                        sorry)
                      sorry)))
              (Subtype.mk (p := fun (σ' : sorry) ↦
                Eq (α :=
                  AlgHom.{u_1, u_2, u_2} (A ⧸ P)
                    (HasQuotient.Quotient ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G))
                      (B := Ideal ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G)))
                      (under (↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G))) Q))
                    (B ⧸ Q))
                  (AlgHom.comp (B :=
                    HasQuotient.Quotient ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G))
                      (B := Ideal ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G)))
                      (under (↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G))) Q))
                    (let __RingHom :
                      HasQuotient.Quotient ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G))
                          (B := Ideal ↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G)))
                          (under (↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G))) Q) →+*
                        B ⧸ Q :=
                      quotientMap Q
                        (Subsemiring.subtype
                          (Subalgebra.toSubsemiring
                            (FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G))))
                        sorry;
                    { toRingHom := __RingHom, commutes' := sorry })
                    (↑((stabilizerHom
                              (under (↥(FixedPoints.subalgebra.{u_1, u_2, u} A B ↥(↑X.toOpenSubgroup : Subgroup G))) Q)
                              P (G ⧸ (↑X.toOpenSubgroup : Subgroup G)) :
                            sorry)
                          sorry) :
                      sorry))
                  sorry)
                sorry sorry)) :
          sorry) :
      sorry)
Tactic: ext ⟨⟨⟨x⟩, hx⟩, hx'⟩