#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.

Reply via email to