def __init__(self, cartan_type): """ TESTS:: sage: from sage.libs.coxeter3.coxeter_group import CoxeterGroup # optional - coxeter3 sage: CoxeterGroup(['A',2]) # optional - coxeter3 Coxeter group of type ['A', 2] implemented by Coxeter3 sage: TestSuite(CoxeterGroup(['A',2])).run() # optional - coxeter3 """ category = CoxeterGroups() if cartan_type.is_finite(): category = category.Finite() Parent.__init__(self, category=category) self._coxgroup = get_CoxGroup(cartan_type) self._cartan_type = cartan_type
def __classcall_private__(cls, W, q1, q2=-1, base_ring=None, prefix="T"): """ TESTS:: sage: H = IwahoriHeckeAlgebraT("A2", 1) sage: H.coxeter_group() == WeylGroup("A2") True sage: H.cartan_type() == CartanType("A2") True sage: H.base_ring() == ZZ True sage: H._q2 == -1 True """ if W not in CoxeterGroups(): W = WeylGroup(W) if base_ring is None: base_ring = q1.parent() q2 = base_ring(q2) return super(IwahoriHeckeAlgebraT, cls).__classcall__(cls, W, q1=q1, q2=q2, base_ring=base_ring, prefix=prefix)
def __init__(self, cartan_type): """ TESTS:: sage: from sage.libs.coxeter3.coxeter_group import CoxeterGroup # optional - coxeter3 sage: CoxeterGroup(['A',2]) # optional - coxeter3 Coxeter group of type ['A', 2] implemented by Coxeter3 As degrees and codegrees are not implemented, they are skipped in the testsuite:: sage: to_skip = ['_test_degrees', '_test_codegrees'] sage: TestSuite(CoxeterGroup(['A',2])).run(skip=to_skip) # optional - coxeter3 """ category = CoxeterGroups() if cartan_type.is_finite(): category = category.Finite() Parent.__init__(self, category=category) self._coxgroup = get_CoxGroup(cartan_type) self._cartan_type = cartan_type