-
Notifications
You must be signed in to change notification settings - Fork 160
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
Merge some MatrixObj work into master #2640
Commits on Aug 14, 2018
-
MatrixObj: install fallback methods for m[i,j]
These delegate to MatElm resp. SetMatElm, so that old MatrixObj implementations which only provide these old accessors can be used with the new m[i,j] syntax. Ideally, these will be removed again one day in the future, together with MatElm and SetMatElm.
Configuration menu - View commit details
-
Copy full SHA for 080cecf - Browse repository at this point
Copy the full SHA 080cecfView commit details -
Configuration menu - View commit details
-
Copy full SHA for 71f0f2e - Browse repository at this point
Copy the full SHA 71f0f2eView commit details -
MatrixObj: don't define various Position* methods
Note that the cvec package also installs methods for some of these, and should possibly be adjusted to avoid them We should also think about replacements. Perhaps there should be PositionLastNonZeroRow and PositionLastNonZeroColumn methods? Finally, why is PositionLastNonZero for (row) vectors in vecmat.gi, which contains code for GF2 vectors and matrices?
Configuration menu - View commit details
-
Copy full SHA for 64b1979 - Browse repository at this point
Copy the full SHA 64b1979View commit details -
Configuration menu - View commit details
-
Copy full SHA for b5aefb0 - Browse repository at this point
Copy the full SHA b5aefb0View commit details -
MatrixObj: replace MakeMatrix by additional Matrix variants
Also add ZeroMatrix and IdentityMatrix variants, and add lots of comments.
Configuration menu - View commit details
-
Copy full SHA for d1f4992 - Browse repository at this point
Copy the full SHA d1f4992View commit details -
Configuration menu - View commit details
-
Copy full SHA for 4dcc361 - Browse repository at this point
Copy the full SHA 4dcc361View commit details -
MatrixObj: more declarations of Vector and generic methods
This makes `Vector` the main interface function to create vector objects.
Configuration menu - View commit details
-
Copy full SHA for 3b066d5 - Browse repository at this point
Copy the full SHA 3b066d5View commit details -
MatrixObj: further work on constructors
- get rid of IsCheckingVector and IsCheckingMatrix - update internal doc: - NewMatrix now additionally accepts a flat list - remove redundant comments
Configuration menu - View commit details
-
Copy full SHA for d07e221 - Browse repository at this point
Copy the full SHA d07e221View commit details -
Configuration menu - View commit details
-
Copy full SHA for bb83528 - Browse repository at this point
Copy the full SHA bb83528View commit details -
Configuration menu - View commit details
-
Copy full SHA for eba251d - Browse repository at this point
Copy the full SHA eba251dView commit details -
MatrixObj: if possible use PositionNonZero not PositionNot
changed most library calls to PositionNot added attributes OneOfBaseDomain, ZeroOfBaseDomain, and generic methods for plist vectors and plist matrices
Configuration menu - View commit details
-
Copy full SHA for cc2dd08 - Browse repository at this point
Copy the full SHA cc2dd08View commit details -
MatrixObj: Get rid of IsChecking* for IsPlist*Rep
IsCheckingVector and -Matrix do checks like: - when doing v * s, check whether s in BaseDomain(v) holds. this can potentially be very expensive - check whether accessing or binding to illegal entries - check whether dimensions of matrices and vectors fit when doing AddRowVector etc. \* for IsPlist*Rep already checks whether dimensions match and whether the base domains are identical. Instead some checks could be done (like index out of bounds checks) on the kernel level.
Configuration menu - View commit details
-
Copy full SHA for 8e4ce3f - Browse repository at this point
Copy the full SHA 8e4ce3fView commit details -
Configuration menu - View commit details
-
Copy full SHA for d95df3e - Browse repository at this point
Copy the full SHA d95df3eView commit details -
Configuration menu - View commit details
-
Copy full SHA for 7460426 - Browse repository at this point
Copy the full SHA 7460426View commit details -
Configuration menu - View commit details
-
Copy full SHA for b3cd252 - Browse repository at this point
Copy the full SHA b3cd252View commit details -
MatrixObj: added the implication IsMatrix => IsMatrixObj
and dealt with some side-effects: - changed calls of `MatElm(m,i,j)` to `m[i,j]` where `MatElm` methods for plain lists of plain lists are missing - changed those method installations from `InstallMethod` to `InstallOtherMethod` that currently cause a warning about matching multiple declarations; in a later step, some of these declarations will get merged - changed calls of `BaseDomain` to calls of `OneOfBaseDomain` or `ZeroOfBaseDomain` where only the one or zero element are needed - added comments to `lib/matobj1.gd`
Configuration menu - View commit details
-
Copy full SHA for c193f63 - Browse repository at this point
Copy the full SHA c193f63View commit details