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

supporting Intervals #90

Open
JeffreySarnoff opened this issue Jul 5, 2021 · 3 comments
Open

supporting Intervals #90

JeffreySarnoff opened this issue Jul 5, 2021 · 3 comments

Comments

@JeffreySarnoff
Copy link

JeffreySarnoff commented Jul 5, 2021

A current conversation on Slack # Intervals asks
is it reasonably easy to do?

bottine  01:39
I'm wondering how much work would be needed to be able to plug interval types into tulip

Jeffrey Sarnoff  2 hours ago
:wink: ? ask @mtanneau
Only visible to you

Slackbot  2 hours ago
OK! I’ve invited @mtanneau to this channel.

Mathieu Tanneau  2 hours ago
Hmm :male-detective:

Mathieu Tanneau  2 hours ago
On the top of my head, to support computations in arithmetic T, 
it would need the following methods to be implemented (the list is non-exhaustive):

eps(T) to compute tolerances
sqrt(::T) to be used within factorizations
abs(::T) for some tolerances & step size computation
classical operations +, *, -, /
binary comparisons like >= and <=
Some norm(::Vector{T}, Inf) computations

Mathieu Tanneau  1 hour ago
The first step would be trying to compute an LDLt factorization of 
a symmetric positive definite matrix with Interval eltype, using LDLFactorizations.jl.
If that fails badly and can't be resolved, then there's little change Tulip would work

Jeffrey Sarnoff  1 hour ago
IntervalArithmetic.jl supports all of those arithmetic T ops
 (for norm(::Vector{T}, Inf) first do using LinearAlgebra). (edited) 

Jeffrey Sarnoff  1 hour ago
@dpsanders do we have LDLt ___ with Interval eltype?

Mathieu Tanneau  30 minutes ago
Damn, I thought LDLFactorizations.jl supported any arithmetic... Turns out it requires T <: Real.
It might be fixable by "just" relaxing the type restrictions in the LDLFactorizations code.
@dpo
Copy link
Member

dpo commented Jul 5, 2021

It's possible to relax T <: Real. I've done it before for the symbolic factorization to factorize matrices of strings :-). No idea if that would be sufficient for intervals, but I have a feeling it could be made to work. The best way is to just try.

@JeffreySarnoff
Copy link
Author

JeffreySarnoff commented Jul 5, 2021

thank you

@JeffreySarnoff
Copy link
Author

(I am giving others a window to try just that before closing this issue)

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

No branches or pull requests

2 participants