## `linalg::isHermitean` -- checks whether a matrix is Hermitean

#### Introduction

`linalg::isHermitean``(A)` determines whether the matrix A is Hermitean, i.e., whether A=transpose(conjugate(A)).

#### Call(s)

`linalg::isHermitean(A)`

#### Parameters

`A` | - | a square matrix of a domain of category `Cat::Matrix`

#### Returns

either `TRUE` or `FALSE`.

#### Related Functions

`linalg::isPosDef`

#### Details

- If the component ring of the matrix `A` does not provide the method `"conjugate"`, then `A` is tested for symmetry, i.e., `linalg::isHermitean` returns `TRUE` if and only if `A` satisfies the equation transpose(A) = A.

#### Example 1

Here is an example of a Hermitean matrix:

    >> A := Dom::Matrix(Dom::Complex)([[1, I], [-I, 1]])

                                   +-        -+
                                   |   1,  I  |
                                   |          |
                                   |  - I, 1  |
                                   +-        -+

    >> linalg::isHermitean(A)

                                       TRUE

The following matrix is not Hermitean:

    >> B := Dom::Matrix(Dom::Complex)([[1, -I], [-I, 1]])

                                  +-          -+
                                  |   1,  - I  |
                                  |            |
                                  |  - I,  1   |
                                  +-          -+

    >> linalg::isHermitean(B)

                                       FALSE

The reason is the following:

    >> linalg::transpose(conjugate(B)) <> B

                           +-      -+    +-          -+
                           |  1, I  |    |   1,  - I  |
                           |        | <> |            |
                           |  I, 1  |    |  - I,  1   |
                           +-      -+    +-          -+

#### Example 2

Here is an example of a symmetric matrix over the integers:

    >> C := Dom::Matrix(Dom::Integer)([[1, 2], [2, -1]])

                                    +-       -+
                                    |  1,  2  |
                                    |         |
                                    |  2, -1  |
                                    +-       -+

    >> linalg::isHermitean(C)

                                       TRUE

#### Changes

- used to be called `linalg::isHermitian`

Do you have questions or comments?
Copyright © SciFace Software GmbH & Co. KG 2000