Opened 4 years ago
Closed 3 years ago
#19094 closed enhancement (invalid)
exp & log for the AsymptoticRing
Reported by:  behackl  Owned by:  

Priority:  major  Milestone:  sageduplicate/invalid/wontfix 
Component:  asymptotic expansions  Keywords:  asymptotics 
Cc:  dkrenn, cheuberg  Merged in:  
Authors:  Benjamin Hackl, Daniel Krenn  Reviewers:  Daniel Krenn, Clemens Heuberger 
Report Upstream:  N/A  Work issues:  
Branch:  Commit:  
Dependencies:  #19048, #19073, #19079, #19110  Stopgaps: 
Description
On this ticket, taking the logarithm and the exponential function (both with arbitrary appropriate bases) of asymptotic expressions (as implemented in #17716) shall be implemented.
Change History (47)
comment:1 Changed 4 years ago by
 Commit changed from 8337efa9712a97ae59fb9c79fb67a7ca18763491 to 187442bad2d50b6ce10911a2638b9cb5d7412918
comment:2 Changed 4 years ago by
 Commit changed from 187442bad2d50b6ce10911a2638b9cb5d7412918 to 737dc935e3fde541c840f9f03debbaa274d9c0ed
Branch pushed to git repo; I updated commit sha1. New commits:
737dc93  rpow and exp implemented.

comment:3 Changed 4 years ago by
 Commit changed from 737dc935e3fde541c840f9f03debbaa274d9c0ed to 2d4c680a76b6d36f543509121faa41e9acb27010
Branch pushed to git repo; I updated commit sha1. Last 10 new commits:
1e625e3  add a doctest for scalar multiplication

be23e63  fix bug with "is" and change_parameter

0c2b6e4  improves working with categories and use CommutativeAlgebras()

ee071a7  fix scalar multiplication by zero

f54e588  some checks on the given names of the generators (when using R.<....>)

92861ed  more on names/gens

18bc9e8  correct handling of parent in __invert__

d833544  minor rewrite of __pow__

cf79733  Merge branch 'u/dkrenn/asy/prototype' of git://trac.sagemath.org/sage into asy/ringexplog

2d4c680  doctest fixed

comment:4 Changed 4 years ago by
 Commit changed from 2d4c680a76b6d36f543509121faa41e9acb27010 to 85dcb7ad382210a6a02b18770972ab7939d32e44
Branch pushed to git repo; I updated commit sha1. Last 10 new commits:
123d0c8  Merge branch 'u/dkrenn/asy/mutableposet' into asy/prototype

6c04529  fix lazy import problem when using short representations

1d023c6  import AsymptoticRing lazy

e02895f  remove some empty lines

738f4ed  explicitly use coefficient_ring(1) in subtraction

ecf5ba8  use simplify/convert everywhere explicit

55d6ad3  restructure and rewrite classcall and init of growth group

3e449df  solve nonuniquenessbug by rewriting classcall and init of term

5068df9  rewrite classcall and init of asymptotic ring

85dcb7a  Merge branch 'u/dkrenn/asy/prototype' of git://trac.sagemath.org/sage into asy/ringexplog

comment:5 Changed 4 years ago by
 Branch changed from u/behackl/asy/ringexplog to u/dkrenn/asy/ringexplog
comment:6 Changed 4 years ago by
 Commit changed from 85dcb7ad382210a6a02b18770972ab7939d32e44 to 32b422db6fc47d7bd05073c39ce694341de97980
Branch pushed to git repo; I updated commit sha1. Last 10 new commits:
ba62bfb  rewrite log_factor

b8208a4  doc of _log_factor_ helper method

03d4b95  move log_factor to growth_group

d825419  make log_factor working again

3ac612b  fix doc and doctests

4629e82  improve doc of log

15cc256  move log to growth_group

1dca8c0  get rid of old log method

d67d4aa  minor doc change in exp + one additional doctest

32b422d  major rpow rewriting in growth group

comment:7 Changed 4 years ago by
comment:8 Changed 4 years ago by
 Commit changed from 32b422db6fc47d7bd05073c39ce694341de97980 to 797eb74cdd8c80c3f34658ef4b761421e35d72d1
comment:9 Changed 4 years ago by
 Dependencies changed from #17716, #19073 to #17716, #19083, #19073
 Reviewers set to Daniel Krenn
 Status changed from new to needs_review
A lot of reviewer commits added. Need a cross review; but positive review from my side (so far).
comment:10 Changed 4 years ago by
 Status changed from needs_review to needs_work
comment:11 Changed 4 years ago by
 Commit changed from 797eb74cdd8c80c3f34658ef4b761421e35d72d1 to 780d26b914ec0bf8efa32dc7cf36b9bb4b371aa1
Branch pushed to git repo; I updated commit sha1. New commits:
780d26b  fix ALGORITHM block

comment:12 Changed 4 years ago by
 Branch changed from u/dkrenn/asy/ringexplog to u/behackl/asy/ringexplog
 Commit changed from 780d26b914ec0bf8efa32dc7cf36b9bb4b371aa1 to ff3e5361a80e41ac469288300738ca4a902d7a13
Last 10 new commits:
4d6bc7e  Merge branch 'u/dkrenn/asy/prototype' of git://trac.sagemath.org/sage into asy/ringexplog

9d0b39c  is_constant for terms implemented

bdf8ae7  helper functions _construct_exp_ for terms implemented

8ff9e7b  implemented helper function _rpow_

2e3dec4  doctests for exp are now actually tested

7adba3c  adaption of __pow__: call to _rpow_

0ea030c  _log_factor_ (exponential growth group): improved handling of base=None

bb3f707  exponentiation of constant terms with base=None

d4ae5d3  doctests added

ff3e536  some small doctests for __pow__ added

comment:13 Changed 4 years ago by
I've crossreviewed your cleanup (thanks!) and implemented the higherlevel functions in the ring. Basically, everything exp/logrelated should work now.
comment:14 Changed 4 years ago by
 Branch changed from u/behackl/asy/ringexplog to u/dkrenn/asy/ringexplog
comment:15 Changed 4 years ago by
 Commit changed from ff3e5361a80e41ac469288300738ca4a902d7a13 to 6377bb77b8708a93d82991cc58765c6ee43c0ec1
 Status changed from needs_work to needs_review
Last 10 new commits:
afb2e55  rename _construct_exp_ to rpow; rewrite docstrings; remove default argument for base

0637ba0  fix doctests

1d8fe49  rewrite rpow of exact term to take care of parent changes

f774223  generalize log_factor

3e07d1e  minor change on docstring of is_little_o_of_one

f7140be  cartesian_product of growth groups: create_element_via_parent

16bd200  create_element_via_parent: use categories as well

e29d13e  rpow, precision, docs

58026e4  create invert = __invert__

6377bb7  minor rewrite of AR.rpow

comment:16 Changed 4 years ago by
 Commit changed from 6377bb77b8708a93d82991cc58765c6ee43c0ec1 to 60d2edfca3c2ecfd663f30c12a510633a946ebcf
Branch pushed to git repo; I updated commit sha1. Last 10 new commits:
39621ad  Merge branch 't/17600/asy/growthGroup' into t/19073/asy/groupscoercion

9d6f2da  Merge branch 't/17600/asy/growthGroup' into t/18930/asy/growthGroupfactory

6da5ade  Merge branch 't/18930/asy/growthGroupfactory' into t/17715/asy/asymptoticTerm

2c1c39d  Merge branch 't/17715/asy/asymptoticTerm' into t/17716/asy/asymptoticExpression

41a80a2  Merge branch 't/17716/asy/asymptoticExpression' into t/19073/asy/groupscoercion

ca5da4a  Merge branch 't/18930/asy/growthGroupfactory' into t/18587/asy/growthgroupcartesian

ac80aeb  add growth_group_cartesian to index

96f7101  Merge branch 't/18587/asy/growthgroupcartesian' into t/19028/asy/growthGroupexponential

963f9da  Merge branch 't/19028/asy/growthGroupexponential' into t/19073/asy/groupscoercion

60d2edf  Merge branch 't/19073/asy/groupscoercion' into t/19094/asy/ringexplog

comment:17 Changed 4 years ago by
 Dependencies changed from #17716, #19083, #19073 to #17716, #19073
merge 6.9.beta5
Last 10 new commits:
39621ad  Merge branch 't/17600/asy/growthGroup' into t/19073/asy/groupscoercion

9d6f2da  Merge branch 't/17600/asy/growthGroup' into t/18930/asy/growthGroupfactory

6da5ade  Merge branch 't/18930/asy/growthGroupfactory' into t/17715/asy/asymptoticTerm

2c1c39d  Merge branch 't/17715/asy/asymptoticTerm' into t/17716/asy/asymptoticExpression

41a80a2  Merge branch 't/17716/asy/asymptoticExpression' into t/19073/asy/groupscoercion

ca5da4a  Merge branch 't/18930/asy/growthGroupfactory' into t/18587/asy/growthgroupcartesian

ac80aeb  add growth_group_cartesian to index

96f7101  Merge branch 't/18587/asy/growthgroupcartesian' into t/19028/asy/growthGroupexponential

963f9da  Merge branch 't/19028/asy/growthGroupexponential' into t/19073/asy/groupscoercion

60d2edf  Merge branch 't/19073/asy/groupscoercion' into t/19094/asy/ringexplog

comment:18 Changed 4 years ago by
 Commit changed from 60d2edfca3c2ecfd663f30c12a510633a946ebcf to 1812a5e458ec074907d0b43405415697c3ea1faa
Branch pushed to git repo; I updated commit sha1. New commits:
1812a5e  rename docindexfile

comment:19 Changed 4 years ago by
 Commit changed from 1812a5e458ec074907d0b43405415697c3ea1faa to 0720b14855eebe533acae7e82df47c1e0023ff52
Branch pushed to git repo; I updated commit sha1. New commits:
0720b14  fix doctests: update since TestSuite now checks for cardinality

comment:20 Changed 4 years ago by
 Component changed from symbolics to asymptotic expansions
comment:21 Changed 4 years ago by
 Dependencies changed from #17716, #19073 to #17600, #17693, #17715, #17716, #18182, #18223, #18586, #18587, #18930, #19017, #19028, #19047, #19048, #19068, #19073, #19079, #19110
comment:22 Changed 4 years ago by
 Commit changed from 0720b14855eebe533acae7e82df47c1e0023ff52 to 44fbcccc61d840a90b5084c56916f018c4b5d33d
Branch pushed to git repo; I updated commit sha1. New commits:
cd17673  Merge tag '6.9.beta6' into t/18182/18182on6.8

3eefe25  correct typo in AUTHORS

5fe52e4  fix doctests since name of cartesian product functor has changed

60b9375  revert changes in base_ring of category_object and adapt doctests

8d6de43  Merge remotetracking branch 'trac/u/dkrenn/18182/pushout' into t/19073/asy/groupscoercion

d50cc55  Merge branch 't/19073/asy/groupscoercion' into t/19094/asy/ringexplog

44fbccc  Merge remotetracking branch 'origin/u/dkrenn/asy/ringexplog' into t/19094/asy/ringexplog

comment:23 Changed 4 years ago by
merged 6.9.beta6 (with #18182)
comment:24 Changed 4 years ago by
 Commit changed from 44fbcccc61d840a90b5084c56916f018c4b5d33d to 11c90410413604599495d77b4245775eb152b729
comment:25 followup: ↓ 27 Changed 3 years ago by
 Status changed from needs_review to needs_work
Does not merge with 6.9.rc0.
I guess that exp
and log
will both need modifications once L
terms are implemented (appropriate truncated Taylor series will be needed in the asymptotic ring); this should be mentioned in a TODO.
comment:26 Changed 3 years ago by
 Commit changed from 11c90410413604599495d77b4245775eb152b729 to 4fe08b71014cfa6ada12ed1c0c5735ba09f8e0df
Branch pushed to git repo; I updated commit sha1. Last 10 new commits:
d35c406  fix doctest

9528dfe  language (comment 4)

f88d3ea  MonomialGrowthGroup._convert_: let SR parse string + take care of '1' (comment 6)

dea3c96  Trac #18587: additional doctest

6d3e4f4  Trac #18587: nicer output of one link target

66759bb  Revert "remove unreachable ValueError (comment 2)"

0642564  doctest added

7f209ea  improved error message (equal or disjoint var.)

c49740a  Merge branch 'u/behackl/asy/growthgroupcartesian' of trac.sagemath.org:sage into t/19094/asy/ringexplog

4fe08b7  rewrite a doctest to make it work (and mark original test as 'not tested')

comment:27 in reply to: ↑ 25 Changed 3 years ago by
Replying to cheuberg:
Does not merge with 6.9.rc0.
Merged with 6.9.rc0 and merged in changed dependencies.
comment:28 Changed 3 years ago by
There is one followup ticket: #19316 compute asymptotic expansion to some rational directly
comment:29 Changed 3 years ago by
 Commit changed from 4fe08b71014cfa6ada12ed1c0c5735ba09f8e0df to ae300ad8db22665ff26487841c0510d29ba8a7b1
Branch pushed to git repo; I updated commit sha1. Last 10 new commits:
c097434  Merge branch 'asy/growthgroupcartesian' into asy/growthGroupexponential

65ce848  Merge branch 'asy/growthgroupcartesian' into asy/growthGroupexponential and resolve merge conflicts

bd93e37  fix doctests

7ec7e7d  fix indentation of one block

e56459a  : > ::

0d469cd  Merge branch 'u/behackl/asy/growthGroupexponential' of trac.sagemath.org:sage into t/19073/asy/groupscoercion

e86db32  Merge branch 'u/dkrenn/asy/asymptoticExpression' of trac.sagemath.org:sage into t/19073/asy/groupscoercion

36e16a3  fix doctests after merge

dd82094  fix duplicated docstringparts

ae300ad  Merge branch 't/19073/asy/groupscoercion' into t/19094/asy/ringexplog

comment:30 Changed 3 years ago by
 Commit changed from ae300ad8db22665ff26487841c0510d29ba8a7b1 to 8204cfa2718fe9568f24b3e44ed0b091b8d70069
Branch pushed to git repo; I updated commit sha1. Last 10 new commits:
a4697d3  fix import in doctest

e8460b9  improve docstring

9e41be5  doctest with infinite iterator inputs

97cb59c  add seealso blocks

17229c6  extend AUTHROS

e33703b  Merge branch 'u/dkrenn/product_cantor_pairing' of trac.sagemath.org:sage into t/19048/asy/an_element

a529d4c  Merge branch 'u/dkrenn/asy/an_element' of trac.sagemath.org:sage into t/19094/asy/ringexplog

ba99790  use new product_cantor_pairing and delete old product_diagonal

4a9d3d2  Merge branch 'u/dkrenn/asy/an_element' of trac.sagemath.org:sage into t/19094/asy/ringexplog

8204cfa  remove old product_diagonal (superseded by #19319)

comment:31 Changed 3 years ago by
 Commit changed from 8204cfa2718fe9568f24b3e44ed0b091b8d70069 to 74cd89940a2aabe3e8162776d3313adbe0171d48
Branch pushed to git repo; I updated commit sha1. Last 10 new commits:
753f252  Trac #19073, comment 20, 5: remove unnecessary list

2473d02  Trac #19073, comment 20, 6: simplify try/except

2aebbc8  Trac #19073, comment 20, 7: remove Poset category from AsymptoticRing

5c94f32  Trac #19073, comment 20, 3: rewrite first few lines of _pushout_

b306679  Trac #19073, comment 20, 3: document a test in pushout

3558620  Merge branch 'u/dkrenn/asy/groupscoercion' of trac.sagemath.org:sage into t/19094/asy/ringexplog

8585ea1  adapt Trac #19073, comment 20, 1: add missing INPUT/OUTPUT block of combine_exceptions

8b71dae  adapt Trac #19073, comment 20, 4: missing INPUT/OUTPUT block of merge_overlapping and extend description

74f0412  adapt Trac #19073, comment 20, 4: cache keys

74cd899  adapt Trac #19073, comment 20, 7: remove Poset category from AsymptoticRing

comment:32 Changed 3 years ago by
Merged #19073.
comment:33 Changed 3 years ago by
 Commit changed from 74cd89940a2aabe3e8162776d3313adbe0171d48 to eb4e3c9c7886f7df943bc0be574396b3ad441570
Branch pushed to git repo; I updated commit sha1. Last 10 new commits:
592a551  Merge branch 'u/dkrenn/coercion/pushout' of trac.sagemath.org:sage into t/19073/asy/groupscoercion

70aa9c4  rename CartesianProductPosets to CartesianProductPoset

f21990d  codesimplify CartesianProduct assignment

8f9a619  add a doctest dealing with coercion while comparing

3b923b7  Merge branch 'u/dkrenn/cat/cartesianproductposets' of trac.sagemath.org:sage into t/18587/asy/growthgroupcartesian

74547e6  fix code after changes by previous merge

23c9a49  Merge branch 't/18587/asy/growthgroupcartesian' into t/19028/asy/growthGroupexponential

09221f0  fixup due to changes in #18587 (coming from #18223)

311fc97  Merge branch 'u/dkrenn/asy/growthGroupexponential' of trac.sagemath.org:sage into t/19073/asy/groupscoercion

eb4e3c9  Merge branch 'u/dkrenn/asy/groupscoercion' of trac.sagemath.org:sage into t/19094/asy/ringexplog

comment:34 Changed 3 years ago by
 Dependencies changed from #17600, #17693, #17715, #17716, #18182, #18223, #18586, #18587, #18930, #19017, #19028, #19047, #19048, #19068, #19073, #19079, #19110 to #17716, #19028, #19048, #19073, #19079, #19110
comment:35 Changed 3 years ago by
 Dependencies changed from #17716, #19028, #19048, #19073, #19079, #19110 to #19048, #19073, #19079, #19110
comment:36 Changed 3 years ago by
 Commit changed from eb4e3c9c7886f7df943bc0be574396b3ad441570 to 9213baa580e5102c2393a37cd950909ccef74013
Branch pushed to git repo; I updated commit sha1. Last 10 new commits:
c655f9f  Trac 19319: Cantor iteration of cartesian products

4a52a84  Trac 19319: fix doctests

3c5af3b  Trac #19319: fix typo

c20bfe5  Trac #19319: a.next() > next(a) (Python3 compliance)

1fee722  Trac #19319: added a few blanks

96c0366  Trac 19319: return tuples + repeat argument

ceb1db5  Trac #19048: Merge #19319

3fd53d6  Trac #19048: rename product_cantor_pairing to cantor_product (see #19319)

617c593  Trac #19048: Fix doctests (order in cantor_product changed)

9213baa  Merge branch 'u/cheuberg/asy/an_element' of trac.sagemath.org:sage into t/19094/asy/ringexplog

comment:37 Changed 3 years ago by
Now really merged in all dependencies.
comment:38 Changed 3 years ago by
 Commit changed from 9213baa580e5102c2393a37cd950909ccef74013 to 05862f4450f38ac16ed027cfe1f73db5923aaaf2
Branch pushed to git repo; I updated commit sha1. New commits:
2a80346  Trac #19073: simplify signatures of helper functions in merge_overlapping

1583ffc  Trac #19073: Reword and add doctest for _pushout_

8a32f1f  correct PEP8spacings in doctest

05862f4  Merge branch 't/19073/asy/groupscoercion' into t/19094/asy/ringexplog

comment:39 Changed 3 years ago by
 Commit changed from 05862f4450f38ac16ed027cfe1f73db5923aaaf2 to b16026193629c4674ee60e000403f8b550f1a264
Branch pushed to git repo; I updated commit sha1. New commits:
b160261  forgotten changes of last merge

comment:40 Changed 3 years ago by
 Branch changed from u/dkrenn/asy/ringexplog to u/behackl/asy/ringexplog
 Commit changed from b16026193629c4674ee60e000403f8b550f1a264 to 5562a662aec8385bd5e7209a7c0aeea480849a8d
 Status changed from needs_work to needs_review
comment:41 Changed 3 years ago by
 Reviewers changed from Daniel Krenn to Daniel Krenn, Clemens Heuberger
I review this ticket and the followupticket #19083 in one go, as there are many interdependencies.
comment:42 Changed 3 years ago by
 Milestone changed from sage6.9 to sage6.10
comment:43 followup: ↓ 44 Changed 3 years ago by
 Branch u/behackl/asy/ringexplog deleted
 Commit 5562a662aec8385bd5e7209a7c0aeea480849a8d deleted
 Milestone changed from sage6.10 to sageduplicate/invalid/wontfix
As this is reviewed in #19083, it seems best to close this as a duplicate.
comment:44 in reply to: ↑ 43 ; followup: ↓ 45 Changed 3 years ago by
comment:45 in reply to: ↑ 44 Changed 3 years ago by
comment:46 Changed 3 years ago by
 Status changed from needs_review to positive_review
comment:47 Changed 3 years ago by
 Resolution set to invalid
 Status changed from positive_review to closed
Branch pushed to git repo; I updated commit sha1. This was a forced push. Last 10 new commits:
rewrite element_constructor of AsymptoticRing to accept SR and polynomials
correct a bug in growth_group_cartesian._element_constructor_
add a doctest to convert from SR
__ne__ implemented for growth group elements
dummy implementations of log for monomial and exponential growth groups
exponential element constructor: exp(...) covered
exponential growth elements: representation string simplified
implemented factor for cartesian product elements
implemented log_factor
implemented log for growth groups