Description
This function calculates the tensor product of a list or sequence of compatible objects.
This method is declared as a MethodFunctionBinary, so for two or more argument the product is computed iteratively from the binary tensor products, working from left to right. For two arguments, this is the same as A ** B except that options are allowed.
i1 : tensor(ZZ^2, ZZ^3, ZZ^4)
24
o1 = ZZ
o1 : ZZ-module, free
|
When a more efficient algorithm is available for computing the intersection of all inputs simultaneously rather than iteratively, for instance for intersecting Modules, a specialized function that takes a list or sequence may be installed on (symbol intersect, Type).
i2 : code lookup(symbol intersect, Module)
o2 = ../../../../../../../Macaulay2/m2/option.m2:15:20-19:34: --source code:
(opts,f) -> args -> (
-- Common code for functions created with >> to process options and arguments.
uncurry(f, override (opts,args))
)
)
| symbol class value location of symbol
| ------ ----- ----- ------------------
| f : FunctionClosure -- ... ../../../../../../../Macaulay2/m2/option.m2:15:9-15:10
| opts : OptionTable -- OptionTable{MinimalGenerators => true} ../../../../../../../Macaulay2/m2/option.m2:15:4-15:8
| Strategy => null
| -- function f:
| ../../../../../../../Macaulay2/m2/intersect.m2:86:48-86:104: --source code:
| Module.intersect = moduleIntersectOpts >> opts -> L -> intersectHelper(L, (intersect, Module, Module), opts)
| -- option table opts:
| OptionTable{MinimalGenerators => true}
| Strategy => null
|