Ticket #7743 (closed defect: fixed)

Opened 3 years ago

Last modified 3 years ago

Piecewise integration fixes

Reported by: pbutler Owned by: burcin
Priority: minor Milestone: sage-4.3.1
Component: calculus Keywords: integration
Cc: Work issues:
Report Upstream: N/A Reviewers: David Joyner
Authors: Paul Butler Merged in: sage-4.3.1.alpha2
Dependencies: Stopgaps:

Description

This patch fixes two issues with the piecewise class, brought up in this sage-support thread:

 http://groups.google.com/group/sage-support/browse_thread/thread/18d830ece7826898/86c401e4d6b8f3dd

The first issue is that when a piece of the function belongs to the Integer ring, integration doesn't work. This is fixed by coercing each piece to the symbolic expression ring.

The second issue is that there are cases where maxima needs to be given assumptions about the domain of x for the piece being integrated. This is fixed with the assume and forget functions.

Additional unit tests have been added (or existing tests modified) for each issue.

Attachments

12159.patch Download (2.7 KB) - added by pbutler 3 years ago.
13311.patch Download (2.8 KB) - added by pbutler 3 years ago.
13535.patch Download (2.7 KB) - added by pbutler 3 years ago.

Change History

Changed 3 years ago by pbutler

comment:1 Changed 3 years ago by AlexGhitza

  • Owner changed from AlexGhitza to burcin
  • Component changed from algebra to calculus

comment:2 Changed 3 years ago by wdj

  • Status changed from new to needs_work

This patch failed to apply to sage-4.3.a1 and 4.3.rc0. Maybe it needs rebasing?

Changed 3 years ago by pbutler

comment:3 follow-up: ↓ 4 Changed 3 years ago by pbutler

My mistake; I was using a much older version of sage. I've attached another patch that should apply to sage-4.2, but I'm not sure to actually obtain the latest development version of sage-4.3 for testing. Is there documentation on this somewhere?

comment:4 in reply to: ↑ 3 Changed 3 years ago by wdj

Replying to pbutler:

My mistake; I was using a much older version of sage. I've attached another patch that should apply to sage-4.2, but I'm not sure to actually obtain

This doesn't work either.

the latest development version of sage-4.3 for testing. Is there documentation on this somewhere?

I sent you the link by separate email to your gmail address.

comment:5 Changed 3 years ago by was

  • Milestone changed from sage-4.3 to sage-4.3.1

I'm declaring a total feature freeze on sage-4.3.

Changed 3 years ago by pbutler

comment:6 Changed 3 years ago by pbutler

I've attached 13535.patch and tested that it can be applied on sage 4.3, but it doesn't look much different from the previous one (aside from a try/except that I had to add because of a change to the behaviour of assume). If it still doesn't apply, could you paste the shell transcript?

comment:7 Changed 3 years ago by wdj

  • Status changed from needs_work to needs_review

Thanks, I'll review it.

comment:8 Changed 3 years ago by wdj

  • Status changed from needs_review to positive_review

Applies to 4.3.1.a0 (the hacked version) and 4.3. Passes all tests but sagedoc on 64bit ubuntu 9.10 with 4.3.1.a0 and only with seemingly unrelated failures on imac 10.6.2 with 4.3.

Thanks for fixing this bug!

Positive review.

comment:9 Changed 3 years ago by rlm

  • Status changed from positive_review to closed
  • Reviewers set to David Joyner
  • Resolution set to fixed
  • Merged in set to 4.3.1.alpha2
  • Authors set to Paul Butler

merged just 13535.patch

comment:10 Changed 3 years ago by mvngu

  • Summary changed from Piecewise integration fixes [with patch; needs review] to Piecewise integration fixes

comment:11 Changed 3 years ago by mvngu

  • Merged in changed from 4.3.1.alpha2 to sage-4.3.1.alpha2
Note: See TracTickets for help on using tickets.