sage: from sage.sets.set_from_iterator import EnumeratedSetFromIterator
sage: C=CombinatorialFreeModule(ZZ,EnumeratedSetFromIterator(Integers)) ; C
Free module generated by {0, 1, -1, 2, -2, ...} over Integer Ring
sage: U = tensor((C,)) ; U
Free module generated by {0, 1, -1, 2, -2, ...} over Integer Ring
sage: C.basis().category()
Category of enumerated sets
sage: U.basis().category()
Category of finite enumerated sets