Libraries.Synthesis.Matrix

Type-level natural numbers

data Zero

data Succ a

type One

type Two

type Three

type Four

type Five

type Six

type Seven

type Eight

type Nine

type Ten

type Ten_and a

data NNat

fromNNat

class Nat n

type family Plus n m

type family Times n m

Fixed-length vectors

data Vector

vector_singleton

vector_length

list_of_vector

vector_zipwith

vector_map

vector_enum

vector_of_function

vector

vector_index

vector_repeat

vector_transpose

vector_foldl

vector_foldr

vector_tail

vector_head

vector_append

vector_sequence

Matrices

data Matrix m n a

unMatrix

matrix_size

Basic matrix operations

(.+.)

(.-.)

matrix_map

matrix_enum

matrix_of_function

scalarmult

(.*.)

null_matrix

matrix_transpose

adjoint

matrix_index

matrix_entries

matrix_sequence

tr

hs_sqnorm

Operations on block matrices

stack_vertical

stack_horizontal

tensor_vertical

concat_vertical

tensor_horizontal

concat_horizontal

tensor

oplus

matrix_controlled

Constructors and destructors

matrix

from_matrix

matrix2x2

from_matrix2x2

matrix3x3

matrix4x4

column3

from_column3

column_matrix

Particular matrices

cnot

swap

zrot