Introduction

A Hadamard matrix is an n x n matrix, all of whose entries are ∓()1, such that every pair of rows and every pair of columns differ in exactly n/2 places. Two such matrices are considered equivalent if one can be transformed into the other by performing row swaps, column swaps, row negations or column negations. The problem of deciding whether two Hadamard matrices are equivalent is hard.

Magma contains several specialised routines for working with Hadamard matrices; of special note is the introduction of a canonical form for such matrices (based on Brendan McKay's nauty program or Adolfo Piperno's Traces package). This leads to a much faster equivalence algorithm than previously available.

V2.28, 13 July 2023