#6571: Improve iterator of word morphisms
-------------------------+--------------------------------------------------
Reporter: slabbe | Owner: slabbe
Type: enhancement | Status: new
Priority: major | Milestone: sage-4.1.1
Component: algebra | Keywords: words morphisms
Reviewer: | Author: Sébastien Labbé
Merged: |
-------------------------+--------------------------------------------------
Right now, we can iterate over word morphisms with specific image lengths
:
{{{
Iterator over morphisms with specific image lengths::
sage: map(str, W.iter_morphisms([2, 1]))
['WordMorphism: a->aa, b->a',
'WordMorphism: a->aa, b->b',
'WordMorphism: a->ab, b->a',
'WordMorphism: a->ab, b->b',
'WordMorphism: a->ba, b->a',
'WordMorphism: a->ba, b->b',
'WordMorphism: a->bb, b->a',
'WordMorphism: a->bb, b->b']
sage: map(str, W.iter_morphisms([2, 2]))
['WordMorphism: a->aa, b->aa',
'WordMorphism: a->aa, b->ab',
'WordMorphism: a->aa, b->ba',
'WordMorphism: a->aa, b->bb',
'WordMorphism: a->ab, b->aa',
'WordMorphism: a->ab, b->ab',
'WordMorphism: a->ab, b->ba',
'WordMorphism: a->ab, b->bb',
'WordMorphism: a->ba, b->aa',
'WordMorphism: a->ba, b->ab',
'WordMorphism: a->ba, b->ba',
'WordMorphism: a->ba, b->bb',
'WordMorphism: a->bb, b->aa',
'WordMorphism: a->bb, b->ab',
'WordMorphism: a->bb, b->ba',
'WordMorphism: a->bb, b->bb']
sage: map(str, W.iter_morphisms([0, 0]))
['WordMorphism: a->, b->']
sage: map(str, W.iter_morphisms([0, 1]))
['WordMorphism: a->, b->a', 'WordMorphism: a->, b->b']
}}}
I want to iterate over all (non erasing) morphisms! In particuliar, I want
the following to work :
{{{
sage: W = Words('ab')
sage: it = W.iter_morphisms()
sage: for _ in range(10): print it.next()
WordMorphism: a->a, b->a
WordMorphism: a->a, b->b
WordMorphism: a->b, b->a
WordMorphism: a->b, b->b
WordMorphism: a->aa, b->a
WordMorphism: a->aa, b->b
WordMorphism: a->ab, b->a
WordMorphism: a->ab, b->b
WordMorphism: a->ba, b->a
WordMorphism: a->ba, b->b
}}}
--
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/6571>
Sage <http://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
-~----------~----~----~----~------~----~------~--~---