Consider the set $L$ of $m \times m$ matrices. If I have an $m \times m$ matrix $A$, how could I check if $A$ can be expressed as a linear combination of the elements of $L$ if GAP returned isbasis($L$) as false?
GAP doesn't allow iscontainedinspan and other commands to be used if $L$ is not a mutable basis. Is there any other way?
In particular, I have considered GL(2,3). If $A_{i}$ is the adjacency matrix corresponding to the relation $R_{i}$ defined by $(x,y) \in R_{i} \iff yx^{-1} \in C_{i}$ and the diagonal matrix $E_{i}^{*}$ has $(x,x)$ entry of 1 of $x \in C_{i}$ and 0 otherwise, we want to compute for all possible values of $E_{i}^{*} A_{j} E_{k}^{*}$. Let the set of all such (nonzero) values be $L$. This should form the basis for $T_{0}$, whose order (130) sets the lower bound for the order of the Terwilliger algebra of GL(2,3).
The next task would be to multiply every pair of elements of $L$ to one another and determine which of these are not contained in the span of $L$. However, since GAP doesn't return isbasis($L$) as true for some reason, I cannot use iscontainedinspan or islinearcombination among others.
I’m not entirely sure what functions you refer to —- as far as I know there is no function
iscontainedinspanetc.The easiest way to test membership is probably to unpack the matrices into row vectors. Thus, if
La list of matrices andMa matrix whose membership is to be tested, useIf
failis returned,Mis not in the span, if a coefficient list is returned, it is.(If multiple tests are to be done, there are obvious ways to cache a triangulilized version of
LLTo improve performance.)