mathlib3 documentation

monlib / quantum_graph.nontracial

Quantum graphs: quantum adjacency matrices #

This file defines the quantum adjacency matrix of a quantum graph.

theorem qam.rank_one.refl_idempotent_eq {n : Type u_1} [fintype n] [decidable_eq n] {φ : module.dual (matrix n n )} [hφ : fact φ.is_faithful_pos_map] (a b c d : matrix n n ) :
theorem finset.sum_fin_one {α : Type u_1} [add_comm_monoid α] (f : fin 1 α) :
finset.univ.sum (λ (i : fin 1), f i) = f 0
theorem module.dual.is_faithful_pos_map.sig_trans_sig {n : Type u_1} [fintype n] [decidable_eq n] {φ : module.dual (matrix n n )} [hφ : fact φ.is_faithful_pos_map] (x y : ) :
(_.sig y).trans (_.sig x) = _.sig (x + y)
theorem sig_apply_pos_def_matrix_mul {n : Type u_1} [fintype n] [decidable_eq n] {φ : module.dual (matrix n n )} [hφ : fact φ.is_faithful_pos_map] (t : ) (x : matrix n n ) :
(_.sig t) ((_.rpow t).mul x) = x.mul (_.rpow t)
theorem sig_apply_pos_def_matrix_mul' {n : Type u_1} [fintype n] [decidable_eq n] {φ : module.dual (matrix n n )} [hφ : fact φ.is_faithful_pos_map] (x : matrix n n ) :
(_.sig 1) (φ.matrix.mul x) = x.mul φ.matrix
theorem sig_apply_matrix_mul_pos_def {n : Type u_1} [fintype n] [decidable_eq n] {φ : module.dual (matrix n n )} [hφ : fact φ.is_faithful_pos_map] (t : ) (x : matrix n n ) :
(_.sig t) (x.mul (_.rpow (-t))) = (_.rpow (-t)).mul x
theorem sig_apply_matrix_mul_pos_def' {n : Type u_1} [fintype n] [decidable_eq n] {φ : module.dual (matrix n n )} [hφ : fact φ.is_faithful_pos_map] (x : matrix n n ) :
(_.sig (-1)) (x.mul φ.matrix) = φ.matrix.mul x
theorem sig_apply_matrix_mul_pos_def'' {n : Type u_1} [fintype n] [decidable_eq n] {φ : module.dual (matrix n n )} [hφ : fact φ.is_faithful_pos_map] (x : matrix n n ) :
(_.sig 1) (x.mul (φ.matrix)⁻¹) = (φ.matrix)⁻¹.mul x
theorem sig_apply_basis {n : Type u_1} [fintype n] [decidable_eq n] {φ : module.dual (matrix n n )} [hφ : fact φ.is_faithful_pos_map] (i : n × n) :
(_.sig 1) ((_.basis) i) = ((φ.matrix)⁻¹.mul (matrix.std_basis_matrix i.fst i.snd 1)).mul (_.rpow (1 / 2))
theorem sig_comp_eq_iff {n : Type u_1} [fintype n] [decidable_eq n] {φ : module.dual (matrix n n )} [hφ : fact φ.is_faithful_pos_map] (t : ) (A B : matrix n n →ₗ[] matrix n n ) :
def qam {n : Type u_1} [fintype n] [decidable_eq n] (φ : module.dual (matrix n n )) [hφ : fact φ.is_faithful_pos_map] (x : matrix n n →ₗ[] matrix n n ) :
Prop
Equations
def qam.is_symm {n : Type u_1} [fintype n] [decidable_eq n] {φ : module.dual (matrix n n )} [hφ : fact φ.is_faithful_pos_map] (x : matrix n n →ₗ[] matrix n n ) :
Prop
Equations
Equations
Equations
theorem std_basis_matrix_squash {n : Type u_1} [fintype n] [decidable_eq n] (i j k l : n) (x : matrix n n ) :
theorem rank_one_lm_smul {𝕜 : Type u_1} {E : Type u_2} [is_R_or_C 𝕜] [normed_add_comm_group E] [inner_product_space 𝕜 E] (x y : E) (r : 𝕜) :
theorem smul_rank_one_lm {𝕜 : Type u_1} {E : Type u_2} [is_R_or_C 𝕜] [normed_add_comm_group E] [inner_product_space 𝕜 E] (x y : E) (r : 𝕜) :
noncomputable def sigop {n : Type u_1} [fintype n] [decidable_eq n] {φ : module.dual (matrix n n )} (hφ : φ.is_faithful_pos_map) (t : ) :
Equations
theorem Psi.symmetric {n : Type u_1} [fintype n] [decidable_eq n] {φ : module.dual (matrix n n )} [hφ : fact φ.is_faithful_pos_map] (a : matrix n n →ₗ[] matrix n n ) (t s : ) :
(_.Psi t s) ((linear_equiv.symm_map (matrix n n )) a) = (tensor_product.map (_.sig (t + s - 1)).to_linear_map (sigop _ (-t - s))) (ten_swap ((_.Psi t s) a))
theorem Psi.symmetric' {n : Type u_1} [fintype n] [decidable_eq n] {φ : module.dual (matrix n n )} [hφ : fact φ.is_faithful_pos_map] (a : matrix n n →ₗ[] matrix n n ) (t s : ) :
(_.Psi t s) (((linear_equiv.symm_map (matrix n n )).symm) a) = (tensor_product.map (_.sig (t + s)).to_linear_map (sigop _ (1 - t - s))) (ten_swap ((_.Psi t s) a))
theorem Psi.refl_idempotent {n : Type u_1} [fintype n] [decidable_eq n] {φ : module.dual (matrix n n )} [hφ : fact φ.is_faithful_pos_map] (A B : matrix n n →ₗ[] matrix n n ) (t s : ) :
(_.Psi t s) (((qam.refl_idempotent _) A) B) = (_.Psi t s) A * (_.Psi t s) B
theorem Psi.adjoint {n : Type u_1} [fintype n] [decidable_eq n] {φ : module.dual (matrix n n )} [hφ : fact φ.is_faithful_pos_map] (a : matrix n n →ₗ[] matrix n n ) (t s : ) :
theorem op_sig_unop_comp {n : Type u_1} [fintype n] [decidable_eq n] {φ : module.dual (matrix n n )} [hφ : fact φ.is_faithful_pos_map] (t s : ) :
(sigop _ t).comp (sigop _ s) = sigop _ (t + s)
theorem qam.ir_refl_iff_ir_refl'_of_real {n : Type u_1} [fintype n] [decidable_eq n] {φ : module.dual (matrix n n )} [hφ : fact φ.is_faithful_pos_map] {A : matrix n n →ₗ[] matrix n n } (hA : A.is_real) (p : Prop) [decidable p] :
theorem Psi.real {n : Type u_1} [fintype n] [decidable_eq n] {φ : module.dual (matrix n n )} [hφ : fact φ.is_faithful_pos_map] (A : matrix n n →ₗ[] matrix n n ) (t s : ) :
(_.Psi t s) A.real = (tensor_product.map (_.sig (2 * t)).to_linear_map (sigop _ (1 - 2 * s))) (has_star.star ((_.Psi t s) A))
theorem sigop_zero {n : Type u_1} [fintype n] [decidable_eq n] {φ : module.dual (matrix n n )} [hφ : fact φ.is_faithful_pos_map] :
sigop _ 0 = 1
theorem sig_map_sigop_comp_Psi {n : Type u_1} [fintype n] [decidable_eq n] {φ : module.dual (matrix n n )} [hφ : fact φ.is_faithful_pos_map] (t s r q : ) :
(tensor_product.map (_.sig t).to_linear_map (sigop _ s)) (_.Psi r q) = (_.Psi (r + t) (q - s))
theorem sig_map_sigop_apply_Psi {n : Type u_1} [fintype n] [decidable_eq n] {φ : module.dual (matrix n n )} [hφ : fact φ.is_faithful_pos_map] (t s r q : ) (A : matrix n n →ₗ[] matrix n n ) :
(tensor_product.map (_.sig t).to_linear_map (sigop _ s)) ((_.Psi r q) A) = (_.Psi (r + t) (q - s)) A