Code
../../../../../Macaulay2/m2/methods.m2:653:51-662:25: --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:615:. ../../../../../Macaulay2/m2/methods.m2:653:20-653:21
| key Symbol inverse ../../../../../Macaulay2/m2/methods.m2:653:13-653:16
| -- function f:
| ../../../../../Macaulay2/m2/matrix1.m2:615:7-621:14: --source code:
| m -> (
| if hasEngineLinearAlgebra ring m and isBasicMatrix m then
| basicInverse m
| else (
| (quo,rem) := quotientRemainder(id_(target m), m);
| if rem != 0 then error "matrix not invertible";
| quo))
| )