Merge pull request #9 from sebastianpos/master

Twist moved to E-Modules.gi
added ENTERs to the method Name
Merge commit '9a10b22e66c6950f' into HEAD

* commit '9a10b22e66c6950f':
  Now based on ChernCharacter: HilbertPolynomial, ChernPolynomial
coding style
Merge commit 'review' into devel

* commit 'review':
  coding style
  added ENTERs to the method Name
renamed hidden method HilbertPolynomial -> HilbertPolynomial_ViaCombinatorialResolution
fixed ValuesOfBettiTable

From: Mohamed Barakat <barakat@mathematik.uni-kl.de>
Subject: Re: Greedy
Date: 24. Februar 2014 11:20:18 MEZ
To: Sebastian Posur <Sebastian.Posur@rwth-aachen.de>

Lieber Sebastian,

|das gesuchte Gegenbeispiel findet sich in CombinatoricsForHomalg/examples/NonNumerical.g.
|Es handelte sich um das Tangobündel.
|
|gap> K0 := ElementOfGradedRelativeRing( [ [ 3, -1 ], [ 10, 0 ], [ 5, 1 ], [ 1, 2 ] ], 5 );
|
|3*x^-1+10+5*x+x^2 -> P^4
|
|Die dünnstmögliche Tabelle hierzu muss wie folgt aussehen:
|
| total:  175  81  30   7   0   0   1   0   3   5   0  21  70
|------------------------------------------------------------
|     4:  175  81  30   7   .   .   .   .   .   .   .   .   .
|     3:    .   .   .   .   .   .   .   .   .   .   .   .   .
|     2:    .   .   .   .   .   .   1   .   .   .   .   .   .
|     1:    .   .   .   .   .   .   .   .   3   5   .   .   .
|     0:    .   .   .   .   .   .   .   .   .   .   .  21  70
|------------------------------------------------------------
|degree:   -9  -8  -7  -6  -5  -4  -3  -2  -1   0   1   2   3
|
|Die alte Methode zur Berechnung des Hilbertpolynoms basierte auf
|
|gap> ValuesOfBettiTable( K0 );
|
|[ [ -81, -8 ], [ -30, -7 ], [ -7, -6 ], [ -1, -3 ] ]
|
|was eigentlich gut aussieht (bis auf die zu wenigen Interpolationspunkte).
|Die zu wenigen Interpolationspunkte führen dann natürlich zu einem
|falschen Hilbertpolynom:
|7/4*t^3+91/4*t^2+193/2*t+131 statt 1/8*t^4+5/4*t^3+27/8*t^2+1/4*t-5.
|
|Ich vermute deshalb, dass in der Methode ValuesOfBettiTable
|ein Bug steckt, und dieser die alte Berechnung von HilbertPolynomial störte
|(vgl. https://github.com/mohamed-barakat/CombinatoricsForHomalg/commit/9a10b22e66c6950fa59f126ff3963d240a007bcb ).

vielen Dank. Ich habe jetzt ValuesOfBettiTable neugeschrieben.

|Insbesondere kann es sein, dass der alte Greedyalgorithmus
|das Hilbertpolynom doch respektiert (oder hast du
|ein anderes Gegenbeispiel gemeint?)

Nein, ich meinte dieses Beispiel :) Ich habe es jetzt in Tango.g umbenannt und angepasst.

Liebe Grüße und vielen Dank,

Mohamed
One, Multiplication with rational elements

- fixed bug in One( IsElementOfGradedRelativeRingRep )
- added mulitplication( IsRat, IsElementOfGradedRelativeRingRep )