mathlib3 documentation

monlib / quantum_graph.schur_idempotent

Schur idempotent operator #

In this file we define the Schur idempotent operator and prove some basic properties.

theorem rmul_adjoint {n : Type u_1} [fintype n] [decidable_eq n] {s : n Type u_2} [Π (i : n), fintype (s i)] [Π (i : n), decidable_eq (s i)] {ψ : Π (i : n), module.dual (matrix (s i) (s i) )} [hψ : (i : n), fact (ψ i).is_faithful_pos_map] (a : Π (i : n), matrix (s i) (s i) ) :
theorem schur_idempotent_real {n : Type u_1} [fintype n] [decidable_eq n] {s : n Type u_2} [Π (i : n), fintype (s i)] [Π (i : n), decidable_eq (s i)] {ψ : Π (i : n), module.dual (matrix (s i) (s i) )} [hψ : (i : n), fact (ψ i).is_faithful_pos_map] (x y : (Π (i : n), matrix (s i) (s i) ) →ₗ[] Π (i : n), matrix (s i) (s i) ) :
theorem matrix.cast_apply {n : Type u_1} [fintype n] [decidable_eq n] {s : n Type u_2} [Π (i : n), fintype (s i)] [Π (i : n), decidable_eq (s i)] {i j : n} (x : matrix (s i) (s i) ) (h : i = j) (p q : s j) :
_.mp x p q = x (_.mpr p) (_.mpr q)
theorem matrix.cast_mul {n : Type u_1} [fintype n] [decidable_eq n] {s : n Type u_2} [Π (i : n), fintype (s i)] [Π (i : n), decidable_eq (s i)] {i j : n} (x y : matrix (s i) (s i) ) (h : i = j) :
_.mp (x * y) = _.mp x * _.mp y
theorem module.dual.pi.is_faithful_pos_map.basis.apply_cast_eq_mp {n : Type u_1} [fintype n] [decidable_eq n] {s : n Type u_2} [Π (i : n), fintype (s i)] [Π (i : n), decidable_eq (s i)] {ψ : Π (i : n), module.dual (matrix (s i) (s i) )} [hψ : (i : n), fact (ψ i).is_faithful_pos_map] {i j : n} (h : i = j) (p : s i × s i) :
_.mp ((_.basis) p) = (_.basis) (_.mpr p)
theorem pi_lmul_to_matrix {n : Type u_1} [fintype n] [decidable_eq n] {s : n Type u_2} [Π (i : n), fintype (s i)] [Π (i : n), decidable_eq (s i)] {ψ : Π (i : n), module.dual (matrix (s i) (s i) )} [hψ : (i : n), fact (ψ i).is_faithful_pos_map] (x : Π (i : n), matrix (s i) (s i) ) :
theorem pi_rmul_to_matrix {n : Type u_1} [fintype n] [decidable_eq n] {s : n Type u_2} [Π (i : n), fintype (s i)] [Π (i : n), decidable_eq (s i)] {ψ : Π (i : n), module.dual (matrix (s i) (s i) )} [hψ : (i : n), fact (ψ i).is_faithful_pos_map] (x : Π (i : n), matrix (s i) (s i) ) :
theorem unitary.coe_pi {n : Type u_1} [fintype n] [decidable_eq n] {s : n Type u_2} [Π (i : n), fintype (s i)] [Π (i : n), decidable_eq (s i)] (U : Π (i : n), (matrix.unitary_group (s i) )) :
theorem unitary.coe_pi_apply {n : Type u_1} [fintype n] [decidable_eq n] {s : n Type u_2} [Π (i : n), fintype (s i)] [Π (i : n), decidable_eq (s i)] (U : Π (i : n), (matrix.unitary_group (s i) )) (i : n) :
U i = (U i)
theorem pi_inner_aut_to_matrix {n : Type u_1} [fintype n] [decidable_eq n] {s : n Type u_2} [Π (i : n), fintype (s i)] [Π (i : n), decidable_eq (s i)] {ψ : Π (i : n), module.dual (matrix (s i) (s i) )} [hψ : (i : n), fact (ψ i).is_faithful_pos_map] (U : Π (i : n), (matrix.unitary_group (s i) )) :
theorem schur_idempotent_one_left_rank_one {n : Type u_1} [fintype n] [decidable_eq n] {s : n Type u_2} [Π (i : n), fintype (s i)] [Π (i : n), decidable_eq (s i)] {ψ : Π (i : n), module.dual (matrix (s i) (s i) )} [hψ : (i : n), fact (ψ i).is_faithful_pos_map] (a b : Π (i : n), matrix (s i) (s i) ) :
theorem Psi.symm_map {n : Type u_1} [fintype n] [decidable_eq n] {s : n Type u_2} [Π (i : n), fintype (s i)] [Π (i : n), decidable_eq (s i)] {ψ : Π (i : n), module.dual (matrix (s i) (s i) )} [hψ : (i : n), fact (ψ i).is_faithful_pos_map] (r₁ r₂ : ) (f g : (Π (i : n), matrix (s i) (s i) ) →ₗ[] Π (i : n), matrix (s i) (s i) ) :