Project

General

Profile

Support #1478

HilbertBasis: clarify

Added by John Abbott over 3 years ago. Updated about 2 years ago.

Status:
Closed
Priority:
Normal
Category:
Manual/documentation
Target version:
Start date:
06 Aug 2020
Due date:
% Done:

100%

Estimated time:
0.50 h
Spent time:

Description

Andraschko writes...

Solving linear Diophantine systems of equations with Normaliz. According to Prof. Kreuzer, it is possible to compute Hilbert Bases using the Nmz-functions from CoCoA, but I didn't find anything useful yet. E.g. the function NmzHilbertBasis doesn't do anything useful for me - I also have no idea what a "Hilbert-Gordan Basis" is (not even Google does).


Related issues

Related to CoCoA-5 - Design #1194: Rename HilbertBasisKer into LinKerHilbertBasis?Rejected2018-06-25

Related to CoCoA-5 - Support #225: HilbertBasis: cocoa vs normalizClosed2012-09-10

Related to CoCoA-5 - Feature #1596: Add CoCoA5 function NmzHilbertBasisKerResolved2021-05-14

History

#1 Updated by John Abbott over 3 years ago

  • Related to Design #1194: Rename HilbertBasisKer into LinKerHilbertBasis? added

#2 Updated by John Abbott over 3 years ago

  • Related to Support #225: HilbertBasis: cocoa vs normaliz added

#3 Updated by Anna Maria Bigatti almost 3 years ago

It seems that

/**/ M:= matrix(ZZ,
        [[3, -1, 1, 0],
                 [-1, 1, 0, 1]]);
/**/ NmzHilbertBasis(M);
matrix(ZZ,
 [[-1, 1, 0, 1],
  [3, -1, 1, 0]])

gives the wrong answer (gives the 2 vectors in M). The code in ExternalLibs-Normaliz.C seems right (line 248).
I tried to guess how to call NmzComputation, but our manual in not sufficient to understand how to do it
/**/ M:= matrix(ZZ,
        [[3, -1, 1, 0],
                 [-1, 1, 0, 1]]);
/**/ cone := record[Generators := M];

/**/ /**/ NmzComputation(cone, ["HilbertBasis"]);
--> ERROR: Some error in the normaliz input data detected: Unknown type "Generators"!
--> [CoCoALib] NmzComputation
--> /**/ NmzComputation(cone, ["HilbertBasis"]);
-->      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

investigate, and improve manual for NmzComputation.

#4 Updated by Anna Maria Bigatti almost 3 years ago

  • Related to Feature #1596: Add CoCoA5 function NmzHilbertBasisKer added

#5 Updated by Anna Maria Bigatti almost 3 years ago

Anna Maria Bigatti wrote:

It seems that
[...]
gives the wrong answer (gives the 2 vectors in M). The code in ExternalLibs-Normaliz.C seems right (line 248).
I tried to guess how to call NmzComputation, but our manual in not sufficient to understand how to do it
[...]
investigate, and improve manual for NmzComputation.

That is right. There is now the new function NmzHilbertBasisKer #1596

#6 Updated by John Abbott about 2 years ago

  • Status changed from New to Closed
  • Assignee set to Anna Maria Bigatti
  • Target version changed from CoCoA-5.4.2 to CoCoA-5.4.0
  • % Done changed from 0 to 100
  • Estimated time set to 0.50 h

This has been completely resolved by introducing the new function NmzHilbertBasisKer (see issue #1596).
The new fn will soon be added to doc.
Closing.

Also available in: Atom PDF