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

Incorrect conversion for very small numbers #94

Closed
dpsanders opened this issue Feb 26, 2018 · 10 comments · Fixed by #567
Closed

Incorrect conversion for very small numbers #94

dpsanders opened this issue Feb 26, 2018 · 10 comments · Fixed by #567
Labels
1.0 Planned for the major 1.0 release

Comments

@dpsanders
Copy link
Member

dpsanders commented Feb 26, 2018

julia> @interval "1e-400"
[0, 0]

julia> I"1e-400"
[0, 0]
@lbenet
Copy link
Member

lbenet commented Feb 26, 2018

Note that:

julia> nextfloat(0.0)
5.0e-324

@dpsanders
Copy link
Member Author

To fix this we would have to do all parsing via BigFloat, which may be very slow.

@dpsanders
Copy link
Member Author

julia> x = parse(Interval{BigFloat}, "1e-400")
[0, 0]₂₅₆

There is also an error here!

@dpsanders
Copy link
Member Author

This now gives

parse(Float64, "1e-400", RoundDown)
ERROR: ArgumentError: cannot parse "1e-400" as Float64

@dpsanders
Copy link
Member Author

We now have

julia> parse(Interval{BigFloat}, "1e-400")
Interval(9.9999999999999993e-401, 1.0000000000000001e-400)

We should probably use the new parse with rounding that was implemented for Windows also on the other systems to avoid these problems.

@dpsanders
Copy link
Member Author

We have

julia> convert(Interval{Float64}, parse(Interval{BigFloat}, "1e-400"))
Interval(0.0, 5.0e-324)

This is correct.

@lucaferranti
Copy link
Member

this is fixed in #522

julia> @interval "1e-400"
[0, 4.94066e-324]

julia> I"1e-400"
[0, 4.94066e-324]

@lucaferranti
Copy link
Member

@lbenet how should we deal with issues like these? Should we close them when the PR is merged to 1.0-dev or when 1.0-dev is merged to master?

@lbenet
Copy link
Member

lbenet commented May 26, 2022

We should probably keep this open to remember to port back that back from 1.0-dev... or if we don't, close them once 1.0-dev becomes 1.0 and is merged to master 😄

@Kolaru
Copy link
Collaborator

Kolaru commented Jul 24, 2023

Fixed in #567

@Kolaru Kolaru closed this as completed Jul 24, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
1.0 Planned for the major 1.0 release
Projects
None yet
Development

Successfully merging a pull request may close this issue.

4 participants