# mathlibdocumentation

linear_algebra.unitary_group

# The Unitary Group #

This file defines elements of the unitary group unitary_group n α, where α is a star_ring. This consists of all n by n matrices with entries in α such that the star-transpose is its inverse. In addition, we define the group structure on unitary_group n α, and the embedding into the general linear group general_linear_group α (n → α).

We also define the orthogonal group orthogonal_group n β, where β is a comm_ring.

## Main Definitions #

• matrix.unitary_group is the type of matrices where the star-transpose is the inverse
• matrix.unitary_group.group is the group structure (under multiplication)
• matrix.unitary_group.embedding_GL is the embedding unitary_group n α → GLₙ(α)
• matrix.orthogonal_group is the type of matrices where the transpose is the inverse

## Tags #

matrix group, group, unitary group, orthogonal group

def matrix.unitary_group (n : Type u) [decidable_eq n] [fintype n] (α : Type v) [comm_ring α] [star_ring α] :
submonoid (matrix n n α)

unitary_group n is the group of n by n matrices where the star-transpose is the inverse.

@[protected, instance]
def matrix.unitary_group.coe_matrix {n : Type u} [decidable_eq n] [fintype n] {α : Type v} [comm_ring α] [star_ring α] :
(matrix n n α)
Equations
@[protected, instance]
def matrix.unitary_group.coe_fun {n : Type u} [decidable_eq n] [fintype n] {α : Type v} [comm_ring α] [star_ring α] :
(λ (_x : α)), n → n → α)
Equations
def matrix.unitary_group.to_lin' {n : Type u} [decidable_eq n] [fintype n] {α : Type v} [comm_ring α] [star_ring α] (A : α)) :
(n → α) →ₗ[α] n → α

to_lin' A is matrix multiplication of vectors by A, as a linear map.

After the group structure on unitary_group n is defined, we show in to_linear_equiv that this gives a linear equivalence.

Equations
theorem matrix.unitary_group.ext_iff {n : Type u} [decidable_eq n] [fintype n] {α : Type v} [comm_ring α] [star_ring α] (A B : α)) :
A = B ∀ (i j : n), A i j = B i j
@[ext]
theorem matrix.unitary_group.ext {n : Type u} [decidable_eq n] [fintype n] {α : Type v} [comm_ring α] [star_ring α] (A B : α)) :
(∀ (i j : n), A i j = B i j)A = B
@[simp]
theorem matrix.unitary_group.star_mul_self {n : Type u} [decidable_eq n] [fintype n] {α : Type v} [comm_ring α] [star_ring α] (A : α)) :
.mul A = 1
@[simp]
theorem matrix.unitary_group.inv_val {n : Type u} [decidable_eq n] [fintype n] {α : Type v} [comm_ring α] [star_ring α] (A : α)) :
@[simp]
theorem matrix.unitary_group.inv_apply {n : Type u} [decidable_eq n] [fintype n] {α : Type v} [comm_ring α] [star_ring α] (A : α)) :
@[simp]
theorem matrix.unitary_group.mul_val {n : Type u} [decidable_eq n] [fintype n] {α : Type v} [comm_ring α] [star_ring α] (A B : α)) :
(A * B) = B
@[simp]
theorem matrix.unitary_group.mul_apply {n : Type u} [decidable_eq n] [fintype n] {α : Type v} [comm_ring α] [star_ring α] (A B : α)) :
(A * B) = B
@[simp]
theorem matrix.unitary_group.one_val {n : Type u} [decidable_eq n] [fintype n] {α : Type v} [comm_ring α] [star_ring α] :
1 = 1
@[simp]
theorem matrix.unitary_group.one_apply {n : Type u} [decidable_eq n] [fintype n] {α : Type v} [comm_ring α] [star_ring α] :
1 = 1
@[simp]
theorem matrix.unitary_group.to_lin'_mul {n : Type u} [decidable_eq n] [fintype n] {α : Type v} [comm_ring α] [star_ring α] (A B : α)) :
@[simp]
theorem matrix.unitary_group.to_lin'_one {n : Type u} [decidable_eq n] [fintype n] {α : Type v} [comm_ring α] [star_ring α] :
def matrix.unitary_group.to_linear_equiv {n : Type u} [decidable_eq n] [fintype n] {α : Type v} [comm_ring α] [star_ring α] (A : α)) :
(n → α) ≃ₗ[α] n → α

to_linear_equiv A is matrix multiplication of vectors by A, as a linear equivalence.

Equations
def matrix.unitary_group.to_GL {n : Type u} [decidable_eq n] [fintype n] {α : Type v} [comm_ring α] [star_ring α] (A : α)) :
(n → α)

to_GL is the map from the unitary group to the general linear group

Equations
theorem matrix.unitary_group.coe_to_GL {n : Type u} [decidable_eq n] [fintype n] {α : Type v} [comm_ring α] [star_ring α] (A : α)) :
@[simp]
theorem matrix.unitary_group.to_GL_one {n : Type u} [decidable_eq n] [fintype n] {α : Type v} [comm_ring α] [star_ring α] :
@[simp]
theorem matrix.unitary_group.to_GL_mul {n : Type u} [decidable_eq n] [fintype n] {α : Type v} [comm_ring α] [star_ring α] (A B : α)) :
def matrix.unitary_group.embedding_GL {n : Type u} [decidable_eq n] [fintype n] {α : Type v} [comm_ring α] [star_ring α] :
α) →* (n → α)

unitary_group.embedding_GL is the embedding from unitary_group n α to general_linear_group n α.

Equations
def matrix.orthogonal_group {n : Type u} [decidable_eq n] [fintype n] (β : Type v) [comm_ring β] :
submonoid (matrix n n β)

orthogonal_group n is the group of n by n matrices where the transpose is the inverse.