Dear all, similar to graphs.some_graph or to codes.some_code (and similar), I propose to introduce sequences.some_sequence which should provide a unified access point to all possible sequences in SageMath. For example, there is fibonacci_sequence in sage.combinat.combinat, binary_recurring_sequence (somewhere in combinat) and various other code.
One motivation for creating this, is to include here many sequences, which can be calculated term-by-term (from the previously calculated ones, i.e., recursively) or where the first N terms can be calculated at once efficiently. Nevertheless, it can also provide an interface to sequences, where each term can be calculated explicitly (without dealing with the previous ones). This posting is to discuss this new feature at this early stage (see trac ticket #18565 [1] for a draft). - In this draft, all sequences are iterator/generator expressions (finite or maybe infinite). This is to keep it simple. [*] What do you think about this? - At the moment this module is in sage.combinat. Another option would be to create sage.sequences and put it there. Any opinions on this? - In the trac ticket, the function fibonacci_sequence will be deprecated, since this is then sequence.fibonacci(...). I am also happy not to deprecate it and keep it as it is (only changing the code to avoid code duplication) - I found a function fibonacci_xrange. It is completly unclear (to me) from the name, what this function does (in particular, why "xrange" (and not a simple "range"). For this reason, I propose to deprecate this function (an alternative with the new sequences-interface is provided). - Should the oeis-functionality be included in some way (at some point)? At the moment iter(oeis(...).first_terms()) comes closest. Best wishes Daniel [1] http://trac.sagemath.org/ticket/18565 [*] An alternative would be to create a class and do it in a similar way as sage.combinat.words.Word (of course in this case much more has to be done than now; (common base-class for words/sequences?!? ...not sure what to think about this...)). -- You received this message because you are subscribed to the Google Groups "sage-combinat-devel" group. To unsubscribe from this group and stop receiving emails from it, send an email to sage-combinat-devel+unsubscr...@googlegroups.com. To post to this group, send email to sage-combinat-devel@googlegroups.com. Visit this group at http://groups.google.com/group/sage-combinat-devel. For more options, visit https://groups.google.com/d/optout.