#14261: Iwahori-Hecke algebra with several bases
-------------------------------------+-------------------------------------
Reporter: brant | Owner: sage-combinat
Type: enhancement | Status: positive_review
Priority: major | Milestone: sage-5.13
Component: combinatorics | Resolution:
Keywords: Iwahori Hecke | Merged in:
algebra | Reviewers: Andrew Mathas, Brant
Authors: Brant Jones, | Jones, Travis Scrimshaw
Travis Scrimshaw, Andrew Mathas | Work issues:
Report Upstream: N/A | Commit:
Branch: | Stopgaps:
Dependencies: #13735 #14014 |
#14678 #14516 #15257 |
-------------------------------------+-------------------------------------
Comment (by andrew.mathas):
Hi Travis,
Thanks for fixing this so quickly! I have checked and the new patch fixes
the problems that Jeroen found, however, I found another issue:
{{{
sage -t --long iwahori_hecke_algebra.py
}}}
takes forever.
I seem to remember that even `#long tests` should be limited to about 3-5s
- which always struck me as not being very long, but rules are rules. As
far as I can tell thef existence o such a limit, and what the upper bound
is, does not seem to be documented in in the developers guide, or
anywhere else, but I am sure that it exists. (As the time that a tests
takes to execute is machine dependent it probably does not make any sense
to have an official time limit, but the developers guide really ought to
mention this somewhere and give some guidance:)
Anyway, using `--warn-long 5` identifies the problem tests (there are many
more in the 3-5s range):
{{{
sage -t --long --warn-long 5.0 iwahori_hecke_algebra.py # 8 doctests
failed
----------------------------------------------------------------------
Total time for all tests: 980.3 seconds
cpu time: 700.9 seconds
cumulative wall time: 980.0 seconds
<ge-5.12)-algebras: sage -t --long --warn-long 5.0
iwahori_hecke_algebra.py
Running doctests with ID 2013-10-17-09-48-39-6e567874.
Doctesting 1 file.
sage -t --long --warn-long 5.0 iwahori_hecke_algebra.py
**********************************************************************
File "iwahori_hecke_algebra.py", line 91, in
sage.algebras.iwahori_hecke_algebra.index_cmp
Failed example:
W = WeylGroup(['A',2,1])
Test ran for 9.25 s
**********************************************************************
File "iwahori_hecke_algebra.py", line 369, in
sage.algebras.iwahori_hecke_algebra.IwahoriHeckeAlgebra
Failed example:
all(T(C[x]).bar() == T(C[x]) for x in W) # long time
Test ran for 30.79 s
**********************************************************************
File "iwahori_hecke_algebra.py", line 375, in
sage.algebras.iwahori_hecke_algebra.IwahoriHeckeAlgebra
Failed example:
all(T(C[x]) == (-v)^x.length()*sum(term(x,y) for y in W) for x in W) #
long time
Test ran for 7.49 s
**********************************************************************
File "iwahori_hecke_algebra.py", line 388, in
sage.algebras.iwahori_hecke_algebra.IwahoriHeckeAlgebra
Failed example:
all(T[x] == T(C(T[x])) for x in W) # long time
Test ran for 401.56 s
**********************************************************************
File "iwahori_hecke_algebra.py", line 394, in
sage.algebras.iwahori_hecke_algebra.IwahoriHeckeAlgebra
Failed example:
all(C[x] == C(Cp(C[x])) for x in W) # long time
Test ran for 7.78 s
**********************************************************************
File "iwahori_hecke_algebra.py", line 398, in
sage.algebras.iwahori_hecke_algebra.IwahoriHeckeAlgebra
Failed example:
all(Cp[x] == Cp(C(Cp[x])) for x in W) # long time
Test ran for 7.87 s
**********************************************************************
File "iwahori_hecke_algebra.py", line 400, in
sage.algebras.iwahori_hecke_algebra.IwahoriHeckeAlgebra
Failed example:
all(T(C[x]).bar() == T(C[x]) for x in W) # long time
Test ran for 35.21 s
**********************************************************************
File "iwahori_hecke_algebra.py", line 402, in
sage.algebras.iwahori_hecke_algebra.IwahoriHeckeAlgebra
Failed example:
all(T(Cp[x]).bar() == T(Cp[x]) for x in W) # long time
Test ran for 36.77 s
**********************************************************************
File "iwahori_hecke_algebra.py", line 406, in
sage.algebras.iwahori_hecke_algebra.IwahoriHeckeAlgebra
Failed example:
all(T(C[x]) == (-v)^x.length()*sum(term(x,y) for y in W) for x in W) #
long time
Test ran for 28.09 s
**********************************************************************
2 items had failures:
8 of 100 in sage.algebras.iwahori_hecke_algebra.IwahoriHeckeAlgebra
1 of 7 in sage.algebras.iwahori_hecke_algebra.index_cmp
[567 tests, 9 failures, 601.88 s]
----------------------------------------------------------------------
sage -t --long --warn-long 5.0 iwahori_hecke_algebra.py # 9 doctests
failed
----------------------------------------------------------------------
Total time for all tests: 602.2 seconds
cpu time: 595.9 seconds
cumulative wall time: 601.9 seconds
}}}
The longest test is on line 388 -- but this whole block is problematic
because if we took out the first test then one or more of the subsequent
tests would take longer as they all (should) benefit from caching.
As I don't know what the official upper limit is for a long test I am not
sure which ones we need to disable. Still, taking out the block on lines
383-409 would be a good start. If 30s is too long then we have a few more
to worry about.
To remove a test I guess that we just replace `#long time` with `#not
tested`? Hopefully, there is a more efficient way to take out an entire
block?
Andrew
--
Ticket URL: <http://trac.sagemath.org/ticket/14261#comment:75>
Sage <http://www.sagemath.org>
Sage: Creating a Viable Open Source Alternative to Magma, Maple, Mathematica,
and MATLAB
--
You received this message because you are subscribed to the Google Groups
"sage-trac" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/sage-trac.
For more options, visit https://groups.google.com/groups/opt_out.