Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Superfluous line(s) and column(s) in minimal Betti Table #2705

Closed
wdecker opened this issue Aug 19, 2023 · 9 comments
Closed

Superfluous line(s) and column(s) in minimal Betti Table #2705

wdecker opened this issue Aug 19, 2023 · 9 comments
Labels
enhancement New feature or request

Comments

@wdecker
Copy link
Collaborator

wdecker commented Aug 19, 2023

@HechtiDerLachs: Please adjust code.

julia> R, (w, x, y, z) = graded_polynomial_ring(QQ, ["w", "x", "y", "z"]);

julia> I = ideal(R, [-x*z+y^2, x*y-w*z, x^2-w*y]);

julia> FI = free_resolution(I)
Free resolution of I
R^3 <---- R^3 <---- R^1 <---- 0
0         1         2         3

julia> betti(FI)
       0 1 2 
------------
2    : 3 2 1 
3    : - 1 - 
------------
total: 3 3 1 


julia> minimal_betti_table(I)
       0 1 2 
------------
2    : 3 2 - 
3    : - - - 
------------
total: 3 2 0 
@wdecker wdecker added the enhancement New feature or request label Aug 19, 2023
@fingolfin fingolfin changed the title Superfluous line(s) iand column(s) in minimal Betti Table Superfluous line(s) and column(s) in minimal Betti Table Aug 19, 2023
@wdecker
Copy link
Collaborator Author

wdecker commented Aug 19, 2023

Additional remark: In connection with the way cm_regularity is implemented, this causes actually wrong results of the latter function. So may be, this is rather a bug than an issue.

@wdecker
Copy link
Collaborator Author

wdecker commented Aug 20, 2023

There are also empty spaces.

@jankoboehm
Copy link
Contributor

The empty spaces just come from the show function. The additional lines should only occur in the minimal Betti tables and should come from keys mapped to rank zero after minimizing. I would suggest to consider such entries as illegal since we also not include all the infinitely many other zeros, and remove them when generating the Betti table.

@wdecker
Copy link
Collaborator Author

wdecker commented Aug 21, 2023

@jankoboehm Do you already know what has to be changed with the show function?

@HechtiDerLachs
Copy link
Collaborator

I think nothing has to be changed about the show function in the end. I just removed the zero entries from the hash-table and it seems to be printing just fine -- at least to all criteria that I am aware of.

@wdecker
Copy link
Collaborator Author

wdecker commented Aug 21, 2023

This example still produces spaces for BOTH betti_table and minimal_betti_table on my machine:

R, (w, x, y, z) = graded_polynomial_ring(QQ, ["w", "x", "y", "z"]);
I = ideal(R, [w^2-xz, wx-yz, x^2-wy, xy-z^2, y^2-wz]);
A, _ = quo(R, I)
FA = free_resolution(A)
betti_table(FA)
minimal_betti_table(FA)

@jankoboehm
Copy link
Contributor

That is to be expected. To remove the zero rows (which can only occur for minimal Betti tables), only the function generating the Betti table, not the show function, had to be changed. To fix the empty spaces at the end of the lines (both minimal and non-minimal case), only the show function has to be fixed.

@fingolfin
Copy link
Member

@wdecker did PRs #2707 and #2709 resolve this for you?

@wdecker
Copy link
Collaborator Author

wdecker commented Aug 23, 2023

Solved by PRs #2707 and #2709

@wdecker wdecker closed this as completed Aug 23, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

4 participants