Interval Arithmetic when calculating eigenvectors

Consider the following matrix with entries being intervals

A={{Interval[{-1.00034, -1.00031}],
Interval[{0.00980599,
0.00982034}]}, {Interval[{-0.0262465, -0.0262241}],
Interval[{-0.207671, -0.207659}]}}


Normalize[Eigenvectors[A][[1]]]
{Interval[{0.741586, 1.34695}], Interval[{0.0281967, 0.0379947}]}


The error worried me, it seems way too big. So I tried just using the formula for an eigenvector as this is just the $$2\times 2$$ case.

Normalize[{(A)[[1]][[2]],
Eigenvalues[
A][[1]] - (A)[[1]][[1]]}]
{Interval[{0.997819, 1.00106}], Interval[{0.0281876, 0.038007}]}


This gives much better estimates, what is going on? Mathematica calculates eigenvectors in a weird way (for a general size) and hence loses a lot of precision?

• What are A and B? Oct 29, 2022 at 19:34
• @MichaelE2 Fixed, sorry. Oct 29, 2022 at 19:36

The problem might be that multiple Intervals in the same expression are treated as independent, even if they should represent the same quantity.

As a simple example, consider

#^2 - #*# &[Interval[{0, 1}]]
(* Interval[{-1, 1}] *)


Of course, the correct value of applying this function is zero

#^2 - #*# &[x]
(* 0 *)

• I am surprised this causes so much error but makes sense. I assumed Interval Arithmetic was much smarter than that ;/ Oct 31, 2022 at 0:48