-
Notifications
You must be signed in to change notification settings - Fork 5
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
allow specifying index type for CachedExtensionHomomorphism #65
Conversation
Codecov ReportAll modified and coverable lines are covered by tests ✅
Additional details and impacted files@@ Coverage Diff @@
## master #65 +/- ##
==========================================
+ Coverage 87.50% 87.69% +0.19%
==========================================
Files 20 20
Lines 1328 1333 +5
==========================================
+ Hits 1162 1169 +7
+ Misses 166 164 -2
Flags with carried forward coverage won't be shown. Click here to find out more. ☔ View full report in Codecov by Sentry. |
This works now fine for "CachedExtensionHomomorphism". However, the all-in-one "sabasis = SymbolicWedderburn.symmetry_adapted_basis(UInt32, G, action, words)" does not work -- I suspect actually the "UInt32" is interpreted as a type for the scalars in the resulting basis, not a type for the permutations. In fact, I can't see any situation in which UInt16 is better than UInt32 for permutations. If they fit in a UInt16, then unless you're programming a Commodore 64 you'll have plenty of free memory so UInt32 would also work. On the other hand there may be cases in which the user would like UInt64, but then leave it to them. |
@laurentbartholdi The proper solution should be that the index type is inferrable from |
Well, that's exactly what we need to do then ;) @laurentbartholdi it's not only about the memory, but rather lookup (=hashing speed) in the dictionary |
52eb797
to
e944128
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The tests are broken, but the code itself seems very good to me.
…user-definable) * also bump the default to UInt32, as we are hitting the limits of UInt16 already ;)
e944128
to
01f4f03
Compare
Problem:
No way to create
CachedExtensionHomomorphism
with specified index type. For large basis this could lead to hard to fix errors (without diving deep into the package).Before:
After:
CC: @laurentbartholdi