2026-08-14 –, Room 2
Formal linear combinations are ubiquitous in Mathematics. The package LinearCombinations.jl provides an easy and efficient way to deal with them, as well as with linear and multilinear maps.
Formal linear combinations (aka "vector spaces with a given basis" or "free modules") appear in many places in (Pure) Mathematics. For example, a polynomial is a formal linear combination of monomials. The package LinearCombinations.jl defines a type Linear{T,R} for formal linear combinations of terms of type T (arbitrary) with coefficients of type R (any commutative ring with unit). The type DenseLinear{T,R} automatically translates between linear combinations and coordinate vectors with respect to some chosen basis. Linear and multilinear functions can easily be defined with the macros @linear and @multilinear. Tensors are also supported, as is the Koszul sign rule in the graded setting. The overall aim of the package is to provide functions that are efficient and easy to use.
Professor of Mathematics at the University of Western Ontario, with interest in Topology and Computer Algebra.