Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Implement reverse mode elementary functions #323

Open
Kolaru opened this issue Aug 20, 2019 · 8 comments · Fixed by #593
Open

Implement reverse mode elementary functions #323

Kolaru opened this issue Aug 20, 2019 · 8 comments · Fixed by #593

Comments

@Kolaru
Copy link
Collaborator

Kolaru commented Aug 20, 2019

Unless I've missed a file somewhere, the reverse mode elementary functions required for the set based flavor by the IEEE Std 1788-2015 (section 10.5.4) are not implemented.

@dpsanders
Copy link
Member

They are in the IntervalContractors.jl package.

@lbenet
Copy link
Member

lbenet commented Aug 20, 2019

I think we should perhaps bring them here, since they are required by the standard.

@dpsanders
Copy link
Member

I think we should just resurrect ValidatedNumerics.jl (or some similar name) and have it export both packages.

@lbenet
Copy link
Member

lbenet commented Aug 20, 2019

I like the idea of resurrecting ValidatedNumerics.jl, but still think that IntervalArithmetic.jl is the right place for the reverse-mode elementary functions. IntervalContractors.jl will be essentially unchanged (except for releasing a new minor(?) version) since it imports IntervalArithmetic.jl.

@dpsanders
Copy link
Member

I personally feel that the reverse-mode functions are really so far away in concept and style from the rest of interval arithmetic that they belong in a separate julia package.

Are they included in the simplified standard? I don't remember but think not?

@Kolaru
Copy link
Collaborator Author

Kolaru commented Aug 20, 2019

They are not included in the simplified standard (see Annex A of the simplified standard, listing all things only requested in the full standard).

In regard of compliance with the full standard, where the functions are defined is probably irrelevant. Saying somethign like "IntervalArithmetic.jl, together with IntervalContractors.jl, sastifies the standard" sounds fine for me, as long at it is documented.

@lbenet
Copy link
Member

lbenet commented Aug 20, 2019

I personally feel that the reverse-mode functions are really so far away in concept and style from the rest of interval arithmetic that they belong in a separate julia package.

I still agree with the concept part, since these functions are proposed in the full standard. If it is a question of style, maybe we should simply include a naive form here (independently coded), perhaps even use a different naming convention, and even not exporting them, to avoid collisions.

In my opinion, it sounds nicer "IntervalArithmetic.jl sastifies the standard", which serves as a basic library to build other things on top of it (as it is now).

@Kolaru Kolaru added 1.0 Planned for the major 1.0 release need discussion labels Oct 25, 2022
@Kolaru Kolaru removed the 1.0 Planned for the major 1.0 release label Nov 27, 2023
@OlivierHnt OlivierHnt mentioned this issue Dec 1, 2023
1 task
@Kolaru Kolaru reopened this Apr 14, 2024
@Kolaru
Copy link
Collaborator Author

Kolaru commented Apr 14, 2024

I'm reopening this issue because while we decided to not have it in IntervalArithmetic.jl itself (IIRC), it still needs to be documented properly.

I believe we need a "Compliance with standard" section in the doc.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

4 participants