Hi Christian,
Just to pile on, I think that this change also breaks Weyl Groups
(perhaps for the same reason).
'----------------------------------------------------------------------
| Sage Version 4.8, Release Date: 2012-01-20 |
| Type notebook() for the GUI, and license() for information. |
----------------------------------------------------------------------
Loading Sage library. Current Mercurial branch is: combinat
sage: W = WeylGroup(['A',4,1])
---------------------------------------------------------------------------
TypeError Traceback (most recent call last)
/Applications/sage-4.8/<ipython console> in <module>()
/Applications/sage-4.8/local/lib/python2.6/site-packages/sage/combinat/root_system/weyl_group.pyc
in WeylGroup(x, prefix)
146 ct = CartanType(x)
147 if ct.is_affine():
--> 148 return WeylGroup_gens(ct.root_system().root_space(),
prefix=prefix)
149 else:
150 return WeylGroup_gens(ct.root_system().ambient_space(),
prefix=prefix)
/Applications/sage-4.8/local/lib/python2.6/site-packages/sage/misc/classcall_metaclass.so
in sage.misc.classcall_metaclass.ClasscallMetaclass.__call__
(sage/misc/classcall_metaclass.c:820)()
/Applications/sage-4.8/local/lib/python2.6/site-packages/sage/combinat/root_system/weyl_group.pyc
in __classcall__(cls, domain, prefix)
153 @staticmethod
154 def __classcall__(cls, domain, prefix=None):
--> 155 return super(WeylGroup_gens, cls).__classcall__(cls,
domain, prefix)
156
157 def __init__(self, domain, prefix):
/Applications/sage-4.8/local/lib/python2.6/site-packages/sage/misc/cachefunc.pyc
in __call__(self, *args, **kwds)
176 return self.cache[k]
177 except KeyError:
--> 178 w = self.f(*args, **kwds)
179 self.cache[k] = w
180 return w
/Applications/sage-4.8/local/lib/python2.6/site-packages/sage/structure/unique_representation.pyc
in __classcall__(cls, *args, **options)
461 True
462 """
--> 463 instance = typecall(cls, *args, **options)
464 assert isinstance( instance, cls )
465 if instance.__class__.__reduce__ ==
UniqueRepresentation.__reduce__:
/Applications/sage-4.8/local/lib/python2.6/site-packages/sage/misc/classcall_metaclass.so
in sage.misc.classcall_metaclass.typecall
(sage/misc/classcall_metaclass.c:1140)()
/Applications/sage-4.8/local/lib/python2.6/site-packages/sage/combinat/root_system/weyl_group.pyc
in __init__(self, domain, prefix)
173 #MatrixGroup_gens.__init__(self,
list(self.simple_reflections()))
174 self._prefix = prefix
--> 175 MatrixGroup_gens.__init__(self,
[self.morphism_matrix(self.domain().simple_reflection(i)) for i in
self.index_set()], category = category)
176
177 @cached_method
/Applications/sage-4.8/local/lib/python2.6/site-packages/sage/combinat/root_system/weyl_group.pyc
in morphism_matrix(self, f)
207 def morphism_matrix(self, f):
208 return matrix(self.domain().base_ring(), [f(b).to_vector()
--> 209 for b in
self.domain().basis()]).transpose()
210
211 def from_morphism(self, f):
/Applications/sage-4.8/local/lib/python2.6/site-packages/sage/combinat/free_module.pyc
in to_vector(self)
673 True
674 """
--> 675 return self._vector_()
676
677 def _acted_upon_(self, scalar, self_on_left = False):
/Applications/sage-4.8/local/lib/python2.6/site-packages/sage/combinat/free_module.pyc
in _vector_(self, new_base_ring)
650 return vector(new_base_ring,
651
[new_base_ring(self._monomial_coefficients.get(m, 0))
--> 652 for m in list(cc)])
653
654 def to_vector(self):
/Applications/sage-4.8/local/lib/python2.6/site-packages/sage/modules/free_module_element.so
in sage.modules.free_module_element.vector
(sage/modules/free_module_element.c:4328)()
/Applications/sage-4.8/local/lib/python2.6/site-packages/sage/categories/fields.pyc
in __pow__(self, n)
184 """
185 from sage.modules.all import FreeModule
--> 186 return FreeModule(self, n)
187
188 class ElementMethods:
/Applications/sage-4.8/local/lib/python2.6/site-packages/sage/structure/factory.so
in sage.structure.factory.UniqueFactory.__call__
(sage/structure/factory.c:987)()
/Applications/sage-4.8/local/lib/python2.6/site-packages/sage/structure/factory.so
in sage.structure.factory.UniqueFactory.get_object
(sage/structure/factory.c:1196)()
/Applications/sage-4.8/local/lib/python2.6/site-packages/sage/modules/free_module.pyc
in create_object(self, version, key)
362
363 elif base_ring.is_field():
--> 364 return FreeModule_ambient_field(base_ring, rank,
sparse=sparse)
365
366 elif isinstance(base_ring,
principal_ideal_domain.PrincipalIdealDomain):
/Applications/sage-4.8/local/lib/python2.6/site-packages/sage/modules/free_module.pyc
in __init__(self, base_field, dimension, sparse)
4747 Vector space of dimension 3 over Rational Field
4748 """
-> 4749 FreeModule_ambient_pid.__init__(self, base_field,
dimension, sparse=sparse)
4750
4751 def _repr_(self):
/Applications/sage-4.8/local/lib/python2.6/site-packages/sage/modules/free_module.pyc
in __init__(self, base_ring, rank, sparse)
4668 Ambient free module of rank 3 over the principal ideal
domain Integer Ring
4669 """
-> 4670 FreeModule_ambient_domain.__init__(self,
base_ring=base_ring, rank=rank, sparse=sparse)
4671
4672 def _repr_(self):
/Applications/sage-4.8/local/lib/python2.6/site-packages/sage/modules/free_module.pyc
in __init__(self, base_ring, rank, sparse)
4484 Univariate Polynomial Ring in x over Finite Field of
size 5
4485 """
-> 4486 FreeModule_ambient.__init__(self, base_ring, rank, sparse)
4487
4488 def _repr_(self):
/Applications/sage-4.8/local/lib/python2.6/site-packages/sage/modules/free_module.pyc
in __init__(self, base_ring, rank, sparse)
3959 Ambient free module of rank 4 over the principal ideal
domain Integer Ring
3960 """
-> 3961 FreeModule_generic.__init__(self, base_ring, rank=rank,
degree=rank, sparse=sparse)
3962
3963 def __hash__(self):
/Applications/sage-4.8/local/lib/python2.6/site-packages/sage/modules/free_module.pyc
in __init__(self, base_ring, rank, degree, sparse)
566 """
567 if not isinstance(base_ring,
commutative_ring.CommutativeRing):
--> 568 raise TypeError, "base_ring (=%s) must be a commutative
ring"%base_ring
569 rank = sage.rings.integer.Integer(rank)
570 if rank < 0:
TypeError: base_ring (=Universal Cyclotomic Field endowed with the
Zumbroich basis) must be a commutative ring
-Mike
On Tuesday, 8 May 2012 16:40:05 UTC-4, Christian Stump wrote:
>
> > For the record, there is already a hook to implement this: see
> >
> >
> sage.combinat.root_system.ambient_space.AmbientSpace.smallest_base_ring
> > sage.combinat.root_system.type_A.AmbientSpace.smallest_base_ring
> > ...
> >
> > Christian: do you envision any non crystallographic root system for
> > which we would have a manually defined ambient space?
>
> haven't gotten back to it yet -- no, no new ambient spaces from my side.
>
--
You received this message because you are subscribed to the Google Groups
"sage-combinat-devel" group.
To view this discussion on the web visit
https://groups.google.com/d/msg/sage-combinat-devel/-/aAsKCb3dYjAJ.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to
[email protected].
For more options, visit this group at
http://groups.google.com/group/sage-combinat-devel?hl=en.