17 Sparse Indexed Structures

 17.1 IndexedFreeAdditiveCombinationType
 17.2 SparseAdditiveArray
 17.3 IndexedFreeArithmeticType
 17.4 SparseFiniteMonoidRing

This file implements power products with infinitely many variables and a data structure for monoid rings. It is tested in test/poly/istruc.as.nw.

Informally speaking, this file implements 2 domains that behave like polynomials. Whereas SparseAdditiveArray can be thought of as a polynomial domain that lacks multiplication, the domain SparseFiniteMonoidRing also implements multiplication as well. We decided for two domains since there are cases where the multiplicative structure is not needed. For example, one can use SparseAdditiveArray for the implementation of an additive monoid of exponent vectors of infinitely many variables where addition is done componentwise.

ToDo 75
rhx 55 20-Jan-2007: Implement Karatsuba multiplication in SparseFiniteMonoidRing.
462* 13+   449  505
-------------------------------------------------------------------
----
---- Combinat
---- Copyright (C) Ralf Hemmecke <ralf@hemmecke.de>
---- svn co svn://svn.risc.uni-linz.ac.at/hemmecke/combinat/
----
-------------------------------------------------------------------

#include "combinat"
cat: IndexedFreeAdditiveCombinationType 465
dom: SparseAdditiveArray 489
cat: IndexedFreeArithmeticType 495
dom: SparseFiniteMonoidRing 501