Hi Travis, On 17 Apr., 10:32, Travis Willse <travis.wil...@gmail.com> wrote: > Is there a reasonable way to implement the exterior (alternating) > algebra of a finite-dimensional vector space? One could do this with > FreeAlgebraQuotient, but I want to compute the exterior algebra over > QQ^7, which is large enough (dimension 128) that using that class > would be tedious.
I had a similar setting: Graded commutative rings, i.e., homogeneous elements in odd degree anticommute among each other, and homogeneous elements in even degree are in the center. An exterior algebra is just a special case (all generators in degree one). My solution was to use Singular's "SuperCommutative" (http:// www.singular.uni-kl.de/Manual/3-0-4/sing_520.htm) in the background. Here, one defines a polynomial ring, and SuperCommutative(m,n) then yields a non-commutative ring in which variables m to n anticommute and have square zero. Unfortunately, SuperCommutative isn't available in libsingular (yet, hint hint...). So, you would need to use Singular directly via the interface, using SuperCommutative(1,n) for implementing exteriour algebra with n generators. SuperCommutative is quite efficiently implemented: Basic arithmetic seems to be nearly as fast as in usual commutative polynomial rings, and you have fast Gröbner basis computations. And the number of generators shouldn't be a problem. Cheers, Simon --~--~---------~--~----~------------~-------~--~----~ To post to this group, send email to sage-support@googlegroups.com To unsubscribe from this group, send email to sage-support-unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/sage-support URLs: http://www.sagemath.org -~----------~----~----~----~------~----~------~--~---