Re: Hermite Normal Form
- To: mathgroup@smc.vnet.net
- Subject: [mg12364] Re: [mg12333] Hermite Normal Form
- From: Daniel Lichtblau <danl@wolfram.com>
- Date: Sun, 10 May 1998 02:04:47 -0400
- References: <199805072252.SAA01071@smc.vnet.net.>
Andrew J. Schaefer wrote:
>
> Does anyone know the definition of Hermite Normal Form that Mathematica
> uses? The Operations Research/Integer Programming literature seems to
> use a definition that requires the diagonal entries to be larger than
> off-diagonal entries. However, the HermiteNormalForm[] function
> returns a matrix with off-diagonal entries larger than the diagonal
> entries.
>
> Any knowledge of the definition that Mathematica uses would be greatly
> appreciated.
>
> Thanks!
>
> Andrew Schaefer
> Ph.D. Student
> School of ISyE
> Georgia Tech
I assume you have in mind a generalized notion of diagonal to account
for columns that have no pivots. So in the example below the largest
entry, 6, is not on a diagonal but it occurs in a column that has no
pivot, hence is okay.
In[25]:= HermiteNormalForm[mat]
Out[25]= {{1, 2, 3}, {0, 3, 6}}
If you are using version 2.2 of Mathematica, then, sorry to say,
HermiteNormalForm is known to be buggy. If you are using version 3 and
furthermore your large entries are not in pivot-less columns, then
please send me an example.
Daniel Lichtblau
Wolfram Research
- References:
- Hermite Normal Form
- From: "Andrew J. Schaefer" <schaefer@akula.isye.gatech.edu>
- Hermite Normal Form