Code
../../../../../Macaulay2/m2/methods.m2:521:52-530:26: --source code:
cacheValue = key -> f -> new CacheFunction from (x -> (
c := try x.cache else x.cache = new CacheTable;
if c#?key then (
val := c#key;
if class val === CacheFunction then (
remove(c,key);
c#key = val x)
else val
)
else c#key = f x))
| symbol class value location of symbol
| ------ ----- ----- ------------------
| f : FunctionClosure -- {*Function[../../../../../Macaulay2/m2/matrix1.m2:673:. ../../../../../Macaulay2/m2/methods.m2:521:21-521:22
| key : Symbol -- inverse ../../../../../Macaulay2/m2/methods.m2:521:14-521:17
| -- function f:
| ../../../../../Macaulay2/m2/matrix1.m2:673:8-681:15: --source code:
| m -> (
| if hasEngineLinearAlgebra ring m then (
| << "calling ffpack version of InverseMethod" << endl;
| (ring m).inverse m)
| else (
| (quo,rem) := quotientRemainder(id_(target m), m);
| if rem != 0 then error "matrix not invertible";
| quo))
| )