#8670: Provide projections methods for word paths
-----------------------------+----------------------------------------------
Reporter: slabbe | Owner: slabbe
Type: enhancement | Status: needs_work
Priority: major | Milestone: sage-4.5
Component: combinatorics | Keywords:
Author: | Upstream: N/A
Reviewer: | Merged:
Work_issues: |
-----------------------------+----------------------------------------------
Changes (by saliola):
* status: needs_review => needs_work
Comment:
1. Your definition of Pisot eigenvector is ambiguous.
{{{
Returns the left eigenvector of the incidence matrix associated
to the largest eigenvalue (in absolute value).
}}}
It is possible that there are multiple eigenvalues with the same absolute
value:
{{{
sage: mu = WordMorphism('a->c,b->c,c->ab')
sage: m = matrix(mu); m
[0 0 1]
[0 0 1]
[1 1 0]
sage: m.eigenvalues()
[0, -1.414213562373095?, 1.414213562373095?]
}}}
It is not clear which eigenvector gets returned here.
Also, there may be more than one eigenvector associated to your "maximal"
eigenvalue, and your method only returns one eigenvector:
{{{
sage: mu = WordMorphism('a->a,b->b,c->abc')
sage: mu.pisot_eigenvector_left()
(1, -1, 0)
sage: m = matrix(mu); m
[1 0 1]
[0 1 1]
[0 0 1]
sage: m.eigenspaces_left()
[
(1, Vector space of degree 3 and dimension 2 over Rational Field
User basis matrix:
[ 1 -1 0]
[ 0 0 1])
]
}}}
2. The method {{{directive_vector}}} should include a definition of what
the directive vector is.
3. In your functions {{{rotate_ith_to_zero}}} and
{{{rotate_vector_on_axis}}}, you first construct the matrix and then
coerce it into the ring specified by the user. Why is this preferable to
doing the computations directly in the ring? What about making this an
option {{{compute_in_ring=False}}}? I think all you need to do is add the
following line at the beginning:
{{{
if compute_in_ring is True:
v = vector(ring, v)
}}}
--
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/8670#comment:4>
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.