#16137: lazy_list from various input data
-------------------------------------+-------------------------------------
       Reporter:  MatthieuDien       |        Owner:
           Type:  enhancement        |       Status:  needs_review
       Priority:  major              |    Milestone:  sage-7.0
      Component:  misc               |   Resolution:
       Keywords:  LazyPowerSeries,   |    Merged in:
  lazy_list, days57                  |    Reviewers:
        Authors:  Matthieu Dien,     |  Work issues:
  Vincent Delecroix                  |       Commit:
Report Upstream:  N/A                |  80aad4d9dbc02333435477173ad98871d40625b8
         Branch:  u/dkrenn/16137     |     Stopgaps:
   Dependencies:                     |
-------------------------------------+-------------------------------------
Description changed by vdelecroix:

Old description:

> The `lazy_list` in `sage.misc.lazy_list` only deals with infinite list
> built from iterator.
> In many situations we want to create infinite list from more various
> data:
> - '''an iterator''' (current implementation),
> - '''an update function''': a function that given a buffer of already
> computed values compute some extra terms. This includes closed forms
> (i.e. a function n -> n-th term) and algorithms that compute many terms
> at a time (e.g. in the context of words: fixed point of substitutions and
> in the context of power series: Newton iteration and relaxed
> multiplication),
> - '''a pair of finite lists (pre-period, period)''' that defines an
> ultimately periodic infinite sequence.
> Those new lazy lists aim to be very basic Python objects. Their purpose
> is to be used as fast and reliable data structures in:
>  - words (`sage.combinat.words`, see also #19620)
>  - continued fraction expansions/binary expansions of real numbers
>  - lazy power series (see #15673)
>  - ...
>
> See also: rational o.g.f. #15714, hypergeometric e.g.f. part of #2516

New description:

 The `lazy_list` in `sage.misc.lazy_list` only deals with infinite list
 built from iterator.
 In many situations we want to create infinite list from more various data:
 - '''an iterator''' (current implementation),
 - '''an explicit form''' a function n -> n-th term
 - '''an update function''': a function that given a buffer of already
 computed values compute some extra terms (e.g. in the context of words:
 fixed point of substitutions and in the context of power series: Newton
 iteration and relaxed multiplication).

 Those new lazy lists aim to be very basic Python objects. Their purpose is
 to be used as fast and reliable data structures in:
  - words (`sage.combinat.words`, see also #19620)
  - continued fraction expansions/binary expansions of real numbers
  - lazy power series (see #15673)
  - ...

 See also: rational o.g.f. #15714, hypergeometric e.g.f. part of #2516

 In the original proposal there was also ultimately periodic lazy lists
 (that would simply store two attributes for the pre-period and period). In
 this ticket we focus on the ones that need a cache mechanism.

--

--
Ticket URL: <http://trac.sagemath.org/ticket/16137#comment:89>
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 https://groups.google.com/group/sage-trac.
For more options, visit https://groups.google.com/d/optout.

Reply via email to