|
6 | 6 |
|
7 | 7 | - Travis Scrimshaw (08-04-2013): Initial version
|
8 | 8 | """
|
9 |
| -#***************************************************************************** |
| 9 | +# **************************************************************************** |
10 | 10 | # Copyright (C) 2013 Travis Scrimshaw <tscrim at ucdavis.edu>
|
11 | 11 | #
|
12 | 12 | # Distributed under the terms of the GNU General Public License (GPL)
|
13 |
| -# http://www.gnu.org/licenses/ |
14 |
| -#***************************************************************************** |
| 13 | +# https://www.gnu.org/licenses/ |
| 14 | +# **************************************************************************** |
15 | 15 |
|
16 | 16 | from sage.misc.lazy_attribute import lazy_attribute
|
17 | 17 | from sage.misc.misc_c import prod
|
@@ -49,9 +49,9 @@ def __init__(self, R):
|
49 | 49 | sage: TestSuite(SymmetricFunctionsNonCommutingVariables(QQ).dual()).run()
|
50 | 50 | """
|
51 | 51 | # change the line below to assert R in Rings() once MRO issues from #15536, #15475 are resolved
|
52 |
| - assert R in Fields() or R in Rings() # side effect of this statement assures MRO exists for R |
| 52 | + assert R in Fields() or R in Rings() # side effect of this statement assures MRO exists for R |
53 | 53 | self._base = R # Won't be needed once CategoryObject won't override base_ring
|
54 |
| - category = GradedHopfAlgebras(R) # TODO: .Commutative() |
| 54 | + category = GradedHopfAlgebras(R).Commutative() |
55 | 55 | Parent.__init__(self, category=category.WithRealizations())
|
56 | 56 |
|
57 | 57 | # Bases
|
@@ -104,7 +104,7 @@ def dual(self):
|
104 | 104 |
|
105 | 105 | class w(NCSymBasis_abstract):
|
106 | 106 | r"""
|
107 |
| - The Hopf algebra of symmetric functions in non-commuting variables |
| 107 | + The dual Hopf algebra of symmetric functions in non-commuting variables |
108 | 108 | in the `\mathbf{w}` basis.
|
109 | 109 |
|
110 | 110 | EXAMPLES::
|
@@ -135,10 +135,14 @@ def __init__(self, NCSymD):
|
135 | 135 | """
|
136 | 136 | def key_func_set_part(A):
|
137 | 137 | return sorted(map(sorted, A))
|
138 |
| - CombinatorialFreeModule.__init__(self, NCSymD.base_ring(), SetPartitions(), |
| 138 | + |
| 139 | + R = NCSymD.base_ring() |
| 140 | + category = GradedHopfAlgebras(R).Commutative() |
| 141 | + category &= NCSymDualBases(NCSymD) |
| 142 | + CombinatorialFreeModule.__init__(self, R, SetPartitions(), |
139 | 143 | prefix='w', bracket=False,
|
140 | 144 | sorting_key=key_func_set_part,
|
141 |
| - category=NCSymDualBases(NCSymD)) |
| 145 | + category=category) |
142 | 146 |
|
143 | 147 | @lazy_attribute
|
144 | 148 | def to_symmetric_function(self):
|
|
0 commit comments