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

Wrong gyration orbit length #32132

Closed
kliem opened this issue Jul 5, 2021 · 11 comments
Closed

Wrong gyration orbit length #32132

kliem opened this issue Jul 5, 2021 · 11 comments

Comments

@kliem
Copy link
Contributor

kliem commented Jul 5, 2021

sage -t --long --random-seed=103314966111765381642554237852288942819 src/sage/combinat/alternating_sign_matrix.py
**********************************************************************
File "src/sage/combinat/alternating_sign_matrix.py", line 609, in sage.combinat.alternating_sign_matrix.?.gyration
Failed example:
    a == a0
Expected:
    True
Got:
    False
**********************************************************************
1 item had failures:
   1 of  17 in sage.combinat.alternating_sign_matrix.?.gyration
    [313 tests, 1 failure, 0.83 s]

The claim of the doctest is that the orbit length of gyration on AlternatingSignMatrices(5) is a divisor of 10, which appears to be incorrect:

sage: def test_orbit_length(n): 
....:     a0 = a = AlternatingSignMatrices(n).random_element()    
....:     for i in range(10000): 
....:         a = a.gyration() 
....:         if a == a0: 
....:             return i + 1 
....:                                                                                                                                 
sage: lcm(foo(5) for _ in range(1000))                                                                                                
20

CC: @videlec

Component: combinatorics

Keywords: alternative sign matrices, gyration

Author: Jonathan Kliem

Branch/Commit: 1d021c1

Reviewer: Frédéric Chapoton

Issue created by migration from https://trac.sagemath.org/ticket/32132

@kliem kliem added this to the sage-9.4 milestone Jul 5, 2021
@kliem
Copy link
Contributor Author

kliem commented Jul 5, 2021

New commits:

1d021c1fix orbit lenght of gyration

@kliem
Copy link
Contributor Author

kliem commented Jul 5, 2021

Author: Jonathan Kliem

@kliem
Copy link
Contributor Author

kliem commented Jul 5, 2021

Commit: 1d021c1

@kliem
Copy link
Contributor Author

kliem commented Jul 5, 2021

Branch: public/32132

@fchapoton
Copy link
Contributor

comment:2

but see table 3.1 on page 6 of

http://www-users.math.umn.edu/~reiner/REU/CloningerDavidowitz2007.pdf

@kliem
Copy link
Contributor Author

kliem commented Jul 5, 2021

comment:3

But this is exactly what the table states. The orbit can be of length 2,4,5,10. The lowest common multiple being 20.

Thanks for the pointer. I didn't know where to look for this. So this isn't a bug apparently.

@fchapoton
Copy link
Contributor

comment:4

the data of this table can be confirmed using

sage: def ma(M): 
....:     return matrix(ZZ,5,5, 
....:     M._matrix, immutable=True) 
....:                                                                           
sage: dg=DiGraph([(ma(x),ma(x.gyration())) for x in A])                         
sage: set(dg.connected_components_sizes())                                      
{2, 4, 5, 10}

@fchapoton
Copy link
Contributor

comment:5

ok, good to go

@fchapoton
Copy link
Contributor

Reviewer: Frédéric Chapoton

@kliem
Copy link
Contributor Author

kliem commented Jul 5, 2021

comment:6

Thank you.

@vbraun
Copy link
Member

vbraun commented Jul 24, 2021

Changed branch from public/32132 to 1d021c1

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants