#12230: WordMorphism - growing letters
-----------------------------+----------------------------------------------
Reporter: sstarosta | Owner: sstarosta
Type: enhancement | Status: needs_work
Priority: major | Milestone: sage-5.0
Component: combinatorics | Keywords: Cernay2012
Work_issues: | Upstream: N/A
Reviewer: vdelecroix | Author:
Merged: | Dependencies: #12466
-----------------------------+----------------------------------------------
Changes (by vdelecroix):
* status: needs_review => needs_work
* reviewer: => vdelecroix
Comment:
Hello,
Very useful patch!
Ameliorations
-------------
1) The function is letter_growing can be made in a nicer way by replacing
{{{
rcs = self.rational_contractive_space()
alphabet = self.domain().alphabet()
parikh_vector = [0 for i in xrange(len(alphabet))]
parikh_vector[alphabet.list().index(letter)] = 1
return not vector(parikh_vector) in rcs
}}}
by
{{{
rcs = self.rational_contractive_space()
V = rcs.ambient_vector_space()
i = self.domain().alphabet().unrank(letter)
return not V.basis()[i] in rcs
}}}
2) In rational_contractive_space you can access coefficient of degree 0 of
a polynom P with P[0].
Some points of terminology and usability
----------------------------------------
1) Why do you prefer 'letter_growing' instead of 'growing_letter' ? (which
is the name it has in CANT)
2) It should be useful to have as well a 'bounded_letter' method. If not
we have to use 'not s.is_growing_letter(letter)'. It's up to you, I'm not
sure about what is better.
3) What you called the "contractive subspace" is actually called "central
stable space" in dynamics. The stable space (or contractive space) is
reserved for the subspace where eigenvalues are strictly less than 1 in
absolute value. But then, the name 'rational_central_stable_space' won't
be very fancy but on the other hand it is not intended to be used by the
front-end user.
--
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/12230#comment:9>
Sage <http://www.sagemath.org>
Sage: Creating a Viable Open Source Alternative to Magma, Maple, Mathematica,
and MATLAB
--
You received this message because you are subscribed to the Google Groups
"sage-trac" group.
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-trac?hl=en.