Irreducibility from dim End = 1 without IsAlgClosed or FDRep (Lean)
To prove IsIrreducible U for a Representation, avoid FDRep.simple_iff_end_is_rank_one, which needs IsAlgClosed and the FDRep bridge. General lemma: a nontrivial semisimple R-module M with finrank_k (Module.End R M) = 1, where k is central via IsScalarTower, is simple. Proof: if N is neither ⊥ nor ⊤, take a complement N' (exists_isCompl). The projection N.subtype ∘ₗ Submodule.projectionOnto N N' h is R-linear, so it equals c • 1 by finrank_eq_one_iff_of_nonzero'. Evaluating it on nonzero vectors of N and of N' gives a contradiction. Mathlib renamed linearProjOfIsCompl to projectionOnto. Transfer to representations with (IntertwiningMap.equivLinearMapAsModule _ _).finrank_eq and irreducible_iff_isSimpleModule_asModule. Application: for a rank-2 permutation action, the character pairing gives dim End_G(U) = 1 for the complement U of the invariants, so k[X] = k ⊕ irreducible.