Матриця є ермітовою нормальною формою цілочисельної матриці якщо є унімодулярна матриця така що і задовольняє таким вимогам[4][5][6]:
є верхньо-трикутною, тобто, якщо і будь-який рядок, що цілком складається з нулів, лежить нижче від всіх інших.
Ведучий елемент будь-якого ненульового рядка завжди додатний і лежить правіше від ведучого коефіцієнта рядка над ним.
Елементи під ведучими дорівнюють нулю, а елементи над ведучими невід'ємні і строго менші від ведучого.
Деякі автори в третій умові вимагають, щоб елементи були недодатними[7][8] або взагалі не накладають на них знакових обмежень[9].
Існування та єдиність ермітової нормальної форми
Ермітова нормальна форма існує і єдина для будь-якої цілочисельної матриці [5][10][11].
Приклади
У прикладах нижче матриця є ермітовою нормальною формою матриці , а відповідною унімодулярною матрицею є матриця така що .
Алгоритми
Перші алгоритми обчислення ермітової нормальної форми датуються 1851 роком. При цьому перший алгоритм, що працює за строго поліноміальний час, розроблено лише 1979 року[12]. Один із широко використовуваних класів алгоритмів для зведення матриці до ермітової нормальної форми ґрунтується на модифікованому методі Гауса[10][13][14]. Іншим поширеним методом обчислення ермітової нормальної форми є LLL-алгоритм[ru][15][16].
Застосування
Обчислення в ґратках
Зазвичай ґратки в мають вигляд , де . Якщо розглянути матрицю , чиї рядки складені із векторів , то її ермітова нормальна форма задаватиме деякий єдиним чином визначений базис ґратки. Це спостереження дозволяє швидко перевіряти, чи збігаються ґратки, породжені рядками матриць і , для чого достатньо перевірити, що в матриць збігаються їхні ермітові нормальні форми. Аналогічно можна перевірити, чи є ґратка підґраткою ґратки , для чого достатньо розглянути матрицю , отриману з об'єднання рядків і . У такій постановці є підґраткою якщо і тільки якщо збігаються ермітові нормальні форми і [17].
Лінійні діофантові рівняння
Система лінійних рівнянь має цілочисельний розв'язок , якщо і тільки якщо система має цілочисельний розв'язок, де — ермітова нормальна форма матриці [10]:55.
Реалізація
Обчислення ермітової нормальної форми реалізовано в багатьох системах комп'ютерної алгебри: