#17221: New method transducers.Recursion
-------------------------------------+-------------------------------------
Reporter: cheuberg | Owner:
Type: enhancement | Status: needs_review
Priority: major | Milestone: sage-6.5
Component: finite state | Resolution:
machines | Merged in:
Keywords: recursion | Reviewers: Daniel Krenn
Authors: Clemens Heuberger | Work issues:
Report Upstream: N/A | Commit:
Branch: u/cheuberg/fsm | 0ea253d1148774612a423e32f8a91842e47fd6bc
/generator-recursion | Stopgaps:
Dependencies: #17752 |
-------------------------------------+-------------------------------------
Changes (by dkrenn):
* reviewer: => Daniel Krenn
Comment:
Review of 1ab837dc5f069e044af903439caa8807b9739102. Here are a couple of
things that could be improved:
- coercions mentioned w.r.t. output rings are conversions
- maybe: range(base.abs()) --> srange(base.abs()) (in code and
docstring)
- I'm not sure if it is good to mention "Python int" at all (in
docstring), since usually they shouldn't appear (maybe adapt your code
(where necessary) to avoid Python-int output (if any appears; not checked
by me))
- T(expansion) ==f(n) is confusing, e.g. in the first example (binary sum
of digits) you would have here [1,1,1] = T([1,1,1]) = f(7) = 3.
- example binary sum of digits: Maybe (for a deeper understanding) it
helps, if one could see the output of the transducer on a concrete
example. Maybe also write one sentence why binary sum of digits gives the
Identity-transducer and how one can see the sum of digits somewhere.
- still example binary sum of digits: there is a lot about
output_rings...is this needed in the first example already? Maybe make
that a second example or at least separate it from the first example, so
that it is clear, this is not needed to understand in the introductory
example.
- example nonadjacent form: it would be good to include concrete examples
here as well, so that one sees a NAF and its weight. Also: at the moment
digits -1 are not considered, but in the wiki-article they are mentioned
at the top; this could lead to some confusion.
Apart from those things: code looks good, doc builds, tests pass. I did
not check the math of the ticket, only the examples (these seem to be
correct). I would be happy if someone else could help with this part.
I've also made a couple of small changes (PEP8; docstrings) which I'll
upload soon.
--
Ticket URL: <http://trac.sagemath.org/ticket/17221#comment:7>
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 unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/sage-trac.
For more options, visit https://groups.google.com/d/optout.