Interval Definition I ≔ { x ∈ R n ∣ x ‾ i ≤ x i ≤ x ‾ i , ∀ i = 1 , ⋯ , n } {\cal I} \coloneqq \{ x \in \mathbb{R}^n | {\underline{x}}_{i} \leq x_{i} \leq \overline{x}_{i}, \forall i =1, \cdots , n \} I : = { x ∈ R n ∣ x i ≤ x i ≤ x i , ∀ i = 1 , ⋯ , n } In order to do computation simultaneously for intervals, we use tensor as bounds but a real number in our
implementation, this is the difference between the theoretical definition and our real implementation, for more detail,
please check our source code.
Example from pyrat . geoemtry import Interval from pyrat . util . visualization import plot from pyrat . geometry import Geometry from pyrat . geometry . operation import partition a = Interval ( [ - 1 , - 2 ] , [ 3 , 5 ] ) parts = partition ( a , 0.1 , Geometry . TYPE . INTERVAL ) plot ( [ * parts , a ] , [ 0 , 1 ] )
Operations enclose boundary Arithmetic addition or '+' [ x ] + [ y ] = [ x ‾ + y ‾ , x ‾ + y ‾ ] [x] + [y] = [\underline{x} + \underline{y}, \overline{x} + \overline{y}] [ x ] + [ y ] = [ x + y , x + y ] subtraction or '-' [ x ] − [ y ] = [ x ‾ − y ‾ , x ‾ − y ‾ ] [x] - [y] = [\underline{x} - \overline{y}, \overline{x} - \underline{y}] [ x ] − [ y ] = [ x − y , x − y ] multiplication or '*' [ x ] ⋅ [ y ] = [ min ( x ‾ y ‾ , x ‾ y ‾ , x ‾ y ‾ , x ‾ y ‾ ) , max ( x ‾ y ‾ , x ‾ y ‾ , x ‾ y ‾ , x ‾ y ‾ ) ] [x] \cdot [y] = [ \min{(\underline{x} \underline{y}, \underline{x} \overline{y}, \overline{x} \underline{y}, \overline{x} \overline{y})}, \max{(\underline{x} \underline{y}, \underline{x} \overline{y}, \overline{x} \underline{y}, \overline{x} \overline{y})} ] [ x ] ⋅ [ y ] = [ min ( x y , x y , x y , x y ) , max ( x y , x y , x y , x y ) ] division or '/' [ x ] / [ y ] = [ x ] ⋅ ( 1 / [ y ] ) , 1 / [ y ] = { ∅ if y = [ 0 , 0 ] [ 1 / y ‾ , 1 / y ‾ ] if 0 ∉ [ y ] [ 1 / y ‾ , ∞ [ if ( y ‾ = 0 ) ∧ ( y ‾ > 0 ) ] − ∞ , 1 / y ‾ if ( y ‾ < 0 ) ∧ ( y ‾ = 0 ) ] − ∞ , ∞ [ if ( y ‾ < 0 ) ∧ ( y ‾ > 0 ) [x]/[y] = [x] \cdot (1/[y]), 1/[y]= \begin{cases} \emptyset & \text{if} \ y = [0,0] \\ [1/\overline{y}, 1/\underline{y}] & \text{if} \ 0 \notin [y] \\ [1/\overline{y}, \infty[ & \text{if} \ (\underline{y}=0) \land (\overline{y}>0) \\ ] - \infty, 1/\underline{y} & \text{if} \ (\underline{y}<0) \land (\overline{y}=0) \\ ] - \infty, \infty[ & \text{if} \ (\underline{y}<0) \land (\overline{y}>0) \end{cases} [ x ] / [ y ] = [ x ] ⋅ ( 1/ [ y ]) , 1/ [ y ] = ⎩ ⎨ ⎧ ∅ [ 1/ y , 1/ y ] [ 1/ y , ∞ [ ] − ∞ , 1/ y ] − ∞ , ∞ [ if y = [ 0 , 0 ] if 0 ∈ / [ y ] if ( y = 0 ) ∧ ( y > 0 ) if ( y < 0 ) ∧ ( y = 0 ) if ( y < 0 ) ∧ ( y > 0 ) power or '**' [ x ] n = { [ x ‾ n , x ‾ n ] if ( x ‾ < 0 ) ∨ ( n uneven ) [ x ‾ n , x ‾ n ] if ( x ‾ < 0 ) ∧ ( n even ) [ 0 , max ( ∣ x ‾ ∣ , ∣ x ‾ ∣ ) n ] if ( 0 ∈ [ x ] ) ∧ ( n even ) [x]^n = \begin{cases} [\underline{x}^n,\overline{x}^n] & \text{if} \ (\underline{x} < 0) \lor (n \ \text{uneven})\\ [\overline{x}^n, \underline{x}^n] & \text{if} \ (\overline{x} < 0) \land (n \ \text{even}) \\ [0,\max(|\underline{x}|,|\overline{x}|)^n] & \text{if} \ (0 \in [x]) \land (n \ \text{even}) \end{cases} [ x ] n = ⎩ ⎨ ⎧ [ x n , x n ] [ x n , x n ] [ 0 , max ( ∣ x ∣ , ∣ x ∣ ) n ] if ( x < 0 ) ∨ ( n uneven ) if ( x < 0 ) ∧ ( n even ) if ( 0 ∈ [ x ]) ∧ ( n even ) where n ∈ N n \in \N n ∈ N
absolute or '||' ∣ [ x ] ∣ = { [ ∣ x ‾ ∣ , ∣ x ‾ ∣ ] if x ‾ < 0 [ x ‾ , x ‾ ] if x ‾ > 0 [ 0 , max ( ∣ x ‾ ∣ , ∣ x ‾ ∣ ) ] if 0 ∈ [ x ] |[x]| =\begin{cases} [|\overline{x}|,|\underline{x}|] & \text{if} \ \overline{x}<0 \\ [\underline{x}, \overline{x}] & \text{if} \ \underline{x}>0 \\ [0,\max(|\underline{x}|,|\overline{x}|)] & \text{if} \ 0 \in [x] \end{cases} ∣ [ x ] ∣ = ⎩ ⎨ ⎧ [ ∣ x ∣ , ∣ x ∣ ] [ x , x ] [ 0 , max ( ∣ x ∣ , ∣ x ∣ )] if x < 0 if x > 0 if 0 ∈ [ x ] matrix multiplication or '@' real matrix with interval ( X [ Y ] ) i j = ∑ k = 1 n X i k [ Y ] k j (X[Y])_{ij} = \sum_{k=1}^{n} X_{ik} [Y]_{kj} ( X [ Y ] ) ij = k = 1 ∑ n X ik [ Y ] kj interval with real matrix ( [ X ] Y ) i j = ∑ k = 1 n [ X ] i k Y k j ([X]Y)_{ij} = \sum_{k=1}^{n} [X]_{ik} Y_{kj} ([ X ] Y ) ij = k = 1 ∑ n [ X ] ik Y kj with another interval matrix ( [ X ] [ Y ] ) i j = ∑ k = 1 n [ X ] i k [ Y ] k j ([X][Y])_{ij} = \sum_{k=1}^{n} [X]_{ik} [Y]_{kj} ([ X ] [ Y ] ) ij = k = 1 ∑ n [ X ] ik [ Y ] kj where [ X ] ⊆ R o × n [X] \sube \R^{o \times n} [ X ] ⊆ R o × n and [ Y ] ⊆ R n × p [Y] \sube \R^{n \times p} [ Y ] ⊆ R n × p
exponential e [ x ] = [ e x ‾ , e x ‾ ] e^{[x]} = [e^{\underline{x}}, e^{\overline{x}}] e [ x ] = [ e x , e x ] log log ( [ x ] ) = { [ log x ‾ , log x ‾ ] if x ‾ > 0 [ N a N , log x ‾ ] if ( x ‾ < 0 ) ∧ ( x ‾ ≥ 0 ) [ N a N , N a N ] if x ‾ < 0 \log{([x])} = \begin{cases} [\log{\underline{x}}, \log{\overline{x}} ] & \text{if} \ \underline{x}>0 \\ [\mathrm{NaN}, \log{\overline{x}}] & \text{if} \ (\underline{x} < 0) \land (\overline{x} \geq 0) \\ [\mathrm{NaN},\mathrm{NaN}] & \text{if} \ \overline{x} < 0 \end{cases} log ([ x ]) = ⎩ ⎨ ⎧ [ log x , log x ] [ NaN , log x ] [ NaN , NaN ] if x > 0 if ( x < 0 ) ∧ ( x ≥ 0 ) if x < 0 sqrt [ x ] = { [ x ‾ , x ‾ ] if x ‾ ≥ 0 [ N a N , x ‾ ] if ( x ‾ < 0 ) ∧ ( x ‾ ≥ 0 ) [ N a N , N a N ] if x ‾ < 0 \sqrt{[x]} =\begin{cases} [\sqrt{\underline{x}},\sqrt{\overline{x}}] & \text{if} \ \underline{x} \geq 0 \\ [\mathrm{NaN}, \sqrt{\overline{x}}] & \text{if} \ (\underline{x} <0 ) \land (\overline{x} \geq 0) \\ [\mathrm{NaN}, \mathrm{NaN}] & \text{if} \ \overline{x}<0 \end{cases} [ x ] = ⎩ ⎨ ⎧ [ x , x ] [ NaN , x ] [ NaN , NaN ] if x ≥ 0 if ( x < 0 ) ∧ ( x ≥ 0 ) if x < 0 arcsin arcsin ( [ x ] ) = { [ arcsin ( x ‾ ) , arcsin ( x ‾ ) ] if ( x ‾ ≥ − 1 ) ∧ ( x ‾ ≤ 1 ) , [ arcsin ( x ‾ ) , N a N ] if ( x ‾ ∈ [ − 1 , 1 ] ) ∧ ( x ‾ > 1 ) , [ N a N , arcsin ( x ‾ ) ] if ( x ‾ < − 1 ) ∧ ( x ‾ ∈ [ − 1 , 1 ] ) , [ N a N , N a N ] if ( x ‾ < − 1 ) ∧ ( x ‾ > 1 ) \arcsin([x])=\begin{cases} [\arcsin(\underline{x}), \arcsin(\overline{x})] & \text{if} \ (\underline{x} \geq -1) \land (\overline{x} \leq 1), \\ [\arcsin(\underline{x}), \mathrm{NaN}] & \text{if} \ (\underline{x} \in [-1,1]) \land (\overline{x} > 1), \\ [\mathrm{NaN}, \arcsin(\overline{x})] & \text{if} \ (\underline{x} < -1) \land (\overline{x} \in [-1,1]), \\ [\mathrm{NaN}, \mathrm{NaN}] & \text{if} \ (\underline{x} < -1) \land (\overline{x} >1) \end{cases} arcsin ([ x ]) = ⎩ ⎨ ⎧ [ arcsin ( x ) , arcsin ( x )] [ arcsin ( x ) , NaN ] [ NaN , arcsin ( x )] [ NaN , NaN ] if ( x ≥ − 1 ) ∧ ( x ≤ 1 ) , if ( x ∈ [ − 1 , 1 ]) ∧ ( x > 1 ) , if ( x < − 1 ) ∧ ( x ∈ [ − 1 , 1 ]) , if ( x < − 1 ) ∧ ( x > 1 ) arccos arccos ( [ x ] ) = { [ arccos ( x ‾ ) , arccos ( x ‾ ) ] if ( x ‾ ≥ − 1 ) ∧ ( x ‾ ≤ 1 ) , [ arccos ( x ‾ ) , N a N ] if ( x ‾ < − 1 ) ∧ ( x ‾ ∈ [ − 1 , 1 ] ) , [ N a N , arccos ( x ‾ ) ] if ( x ‾ ∈ [ − 1 , 1 ] ) ∧ ( x ‾ > 1 ) , [ N a N , N a N ] if ( x ‾ < − 1 ) ∧ ( x ‾ > 1 ) \arccos([x])=\begin{cases} [\arccos(\overline{x}), \arccos(\underline{x})] & \text{if} \ (\underline{x} \geq -1) \land (\overline{x} \leq 1), \\ [\arccos(\overline{x}), \mathrm{NaN}] & \text{if} \ (\underline{x} < -1) \land (\overline{x} \in [-1,1]), \\ [\mathrm{NaN}, \arccos(\underline{x})] & \text{if} \ (\underline{x} \in [-1,1]) \land (\overline{x} > 1), \\ [\mathrm{NaN}, \mathrm{NaN}] & \text{if} (\underline{x} < -1) \land (\overline{x} >1) \end{cases} arccos ([ x ]) = ⎩ ⎨ ⎧ [ arccos ( x ) , arccos ( x )] [ arccos ( x ) , NaN ] [ NaN , arccos ( x )] [ NaN , NaN ] if ( x ≥ − 1 ) ∧ ( x ≤ 1 ) , if ( x < − 1 ) ∧ ( x ∈ [ − 1 , 1 ]) , if ( x ∈ [ − 1 , 1 ]) ∧ ( x > 1 ) , if ( x < − 1 ) ∧ ( x > 1 ) arctan arctan ( [ x ] ) = [ arctan ( x ‾ ) , arctan ( x ‾ ) ] \arctan([x])=[\arctan(\underline{x}), \arctan(\overline{x})] arctan ([ x ]) = [ arctan ( x ) , arctan ( x )] sinh sinh ( [ x ] ) = [ sinh ( x ‾ ) , sinh ( x ‾ ) ] \sinh([x]) = [\sinh(\underline{x}), \sinh(\overline{x})] sinh ([ x ]) = [ sinh ( x ) , sinh ( x )] cosh cosh ( [ x ] ) = { [ cosh ( x ‾ ) , cosh ( x ‾ ) ] if x ‾ < 0 , [ 1 , cosh ( max ( ∣ x ‾ ∣ , ∣ x ‾ ∣ ) ) ] if ( x ‾ ≤ 0 ) ∧ ( x ‾ ≥ 0 ) , [ cosh ( x ‾ ) , cosh ( x ‾ ) ] if x ‾ > 0 \cosh([x])=\begin{cases} [\cosh(\overline{x}), \cosh(\underline{x})] & \text{if} \ \overline{x} <0 ,\\ [1, \cosh(\max(|\underline{x}|,|\overline{x}|))] & \text{if} \ (\underline{x} \leq 0) \land (\overline{x} \geq 0), \\ [\cosh(\underline{x}), \cosh(\overline{x})] & \text{if} \ \underline{x} >0 \end{cases} cosh ([ x ]) = ⎩ ⎨ ⎧ [ cosh ( x ) , cosh ( x )] [ 1 , cosh ( max ( ∣ x ∣ , ∣ x ∣ ))] [ cosh ( x ) , cosh ( x )] if x < 0 , if ( x ≤ 0 ) ∧ ( x ≥ 0 ) , if x > 0 tanh tanh ( [ x ] ) = [ tanh ( x ‾ ) , tanh ( x ‾ ) ] \tanh([x])=[\tanh(\underline{x}), \tanh(\overline{x})] tanh ([ x ]) = [ tanh ( x ) , tanh ( x )] arcsinh a r c s i n h ( [ x ] ) = [ a r c s i n h ( x ‾ ) , a r c s i n h ( x ‾ ) ] \mathrm{arcsinh}([x])=[\mathrm{arcsinh}(\underline{x}), \mathrm{arcsinh}(\overline{x})] arcsinh ([ x ]) = [ arcsinh ( x ) , arcsinh ( x )] arccosh a r c c o s h ( [ x ] ) = { [ a r c c o s h ( x ‾ ) , a r c c o s h ( x ‾ ) ] if x ‾ ≥ − 1 , [ N a N , a r c c o s h ( x ‾ ) ] if ( x ‾ < 1 ) ∧ ( x ‾ ≥ 1 ) , [ N a N , N a N ] if x ‾ < 1 \mathrm{arccosh}([x])= \begin{cases} [\mathrm{arccosh}(\underline{x}), \mathrm{arccosh}(\overline{x})] & \text{if} \ \underline{x} \geq -1,\\ [\mathrm{NaN}, \mathrm{arccosh}(\overline{x})] & \text{if} \ (\underline{x}<1)\land(\overline{x} \geq 1 ), \\ [\mathrm{NaN}, \mathrm{NaN}] & \text{if} \ \overline{x} <1 \end{cases} arccosh ([ x ]) = ⎩ ⎨ ⎧ [ arccosh ( x ) , arccosh ( x )] [ NaN , arccosh ( x )] [ NaN , NaN ] if x ≥ − 1 , if ( x < 1 ) ∧ ( x ≥ 1 ) , if x < 1 arctanh a r c t a n h ( x ) = { [ a r c t a n h ( x ‾ ) , a r c t a n h ( x ‾ ) ] if ( x ‾ > − 1 ) ∧ ( x ‾ < 1 ) , [ a r c t a n h ( x ‾ ) , N a N ] if ( x ‾ ∈ ] − 1 , 1 [ ) ∧ ( x ‾ ≥ 1 ) , [ N a N , a r c t a n h ( x ‾ ) ] if ( x ‾ ≤ − 1 ) ∧ ( x ‾ ∈ ] − 1 , 1 [ ) , [ N a N , N a N ] if ( x ‾ ≤ − 1 ) ∧ ( x ‾ ≥ 1 ) \mathrm{arctanh}(x)=\begin{cases} [\mathrm{arctanh}(\underline{x}), \mathrm{arctanh}(\overline{x})] & \text{if} \ (\underline{x}>-1) \land (\overline{x}< 1), \\ [\mathrm{arctanh}(\underline{x}), \mathrm{NaN}] & \text{if} \ (\underline{x} \in ]-1,1[) \land (\overline{x} \geq 1), \\ [\mathrm{NaN}, \mathrm{arctanh}(\overline{x})] & \text{if} \ (\underline{x} \leq -1) \land (\overline{x} \in ]-1,1[), \\ [\mathrm{NaN}, \mathrm{NaN}] & \text{if} \ (\underline{x} \leq -1) \land (\overline{x} \geq 1) \end{cases} arctanh ( x ) = ⎩ ⎨ ⎧ [ arctanh ( x ) , arctanh ( x )] [ arctanh ( x ) , NaN ] [ NaN , arctanh ( x )] [ NaN , NaN ] if ( x > − 1 ) ∧ ( x < 1 ) , if ( x ∈ ] − 1 , 1 [ ) ∧ ( x ≥ 1 ) , if ( x ≤ − 1 ) ∧ ( x ∈ ] − 1 , 1 [ ) , if ( x ≤ − 1 ) ∧ ( x ≥ 1 ) sin sin ( [ x ] ) = { [ − 1 , 1 ] if ( x ‾ − x ‾ ≥ 2 π ) ∨ ( y ‾ ∈ R 1 ∧ y ‾ ∈ R 1 ∧ y ‾ > y ‾ ) ∨ ( y ‾ ∈ R 1 ∧ y ‾ ∈ R 3 ) ∨ ( y ‾ ∈ R 2 ∧ y ‾ ∈ R 2 ∧ y ‾ > y ‾ ) ∨ ( y ‾ ∈ R 3 ∧ y ‾ ∈ R 3 ∧ y ‾ > y ‾ ) [ sin ( y ‾ ) , sin ( y ‾ ) ] if ( y ‾ ∈ R 1 ∧ y ‾ ∈ R 1 ∧ y ‾ ≤ y ‾ ) ∨ ( y ‾ ∈ R 3 ∧ y ‾ ∈ R 3 ) ∨ ( y ‾ ∈ R 3 ∧ y ‾ ∈ R 3 ∧ y ‾ ≤ y ‾ ) [ min ( sin ( y ‾ ) , sin ( y ‾ ) ) , 1 ] if ( y ‾ ∈ R 1 ∧ y ‾ ∈ R 2 ) , ( y ‾ ∈ R 3 ∧ y ‾ ∈ R 2 ) ∨ [ − 1 , max ( sin ( y ‾ ) , sin ( y ‾ ) ) ] if ( y ‾ ∈ R 2 ∧ y ‾ ∈ R 1 ) ∨ ( y ‾ ∈ R 2 ∧ y ‾ ∈ R 3 ) , [ sin ( y ‾ ) , sin ( y ‾ ) ] if ( y ‾ ∈ R 2 ∧ y ‾ ∈ R 2 ∧ y ‾ ≤ y ‾ ) \sin([x])=\begin{cases} [-1,1] & \text{if} \ (\overline{x}-\underline{x} \geq 2\pi) \lor \\ & (\underline{y} \in R_1 \land \overline{y} \in R_1 \land \underline{y} > \overline{y}) \lor \\ & (\underline{y} \in R_1 \land \overline{y} \in R_3) \lor \\ & (\underline{y} \in R_2 \land \overline{y} \in R_2 \land \underline{y} > \overline{y}) \lor \\ & (\underline{y} \in R_3 \land \overline{y} \in R_3 \land \underline{y} > \overline{y}) \\ [\sin(\underline{y}), \sin(\overline{y})] & \text{if} \ (\underline{y} \in R_1 \land \overline{y} \in R_1 \land \underline{y} \leq \overline{y}) \lor \\ & (\underline{y} \in R_3 \land \overline{y} \in R_3) \lor \\ & (\underline{y} \in R_3 \land \overline{y} \in R_3 \land \underline{y} \leq \overline{y}) \\ [\min(\sin(\underline{y}),\sin(\overline{y})),1] & \text{if} \ (\underline{y} \in R_1 \land \overline{y} \in R_2), \\ & (\underline{y} \in R_3 \land \overline{y} \in R_2) \lor \\ [-1,\max(\sin(\underline{y}),\sin(\overline{y}))] & \text{if} \ (\underline{y} \in R_2 \land \overline{y} \in R_1) \lor \\ & (\underline{y} \in R_2 \land \overline{y} \in R_3), \\ [\sin(\overline{y}),\sin(\underline{y})] & \text{if} \ (\underline{y} \in R_2 \land \overline{y} \in R_2 \land \underline{y} \leq \overline{y}) \end{cases} sin ([ x ]) = ⎩ ⎨ ⎧ [ − 1 , 1 ] [ sin ( y ) , sin ( y )] [ min ( sin ( y ) , sin ( y )) , 1 ] [ − 1 , max ( sin ( y ) , sin ( y ))] [ sin ( y ) , sin ( y )] if ( x − x ≥ 2 π ) ∨ ( y ∈ R 1 ∧ y ∈ R 1 ∧ y > y ) ∨ ( y ∈ R 1 ∧ y ∈ R 3 ) ∨ ( y ∈ R 2 ∧ y ∈ R 2 ∧ y > y ) ∨ ( y ∈ R 3 ∧ y ∈ R 3 ∧ y > y ) if ( y ∈ R 1 ∧ y ∈ R 1 ∧ y ≤ y ) ∨ ( y ∈ R 3 ∧ y ∈ R 3 ) ∨ ( y ∈ R 3 ∧ y ∈ R 3 ∧ y ≤ y ) if ( y ∈ R 1 ∧ y ∈ R 2 ) , ( y ∈ R 3 ∧ y ∈ R 2 ) ∨ if ( y ∈ R 2 ∧ y ∈ R 1 ) ∨ ( y ∈ R 2 ∧ y ∈ R 3 ) , if ( y ∈ R 2 ∧ y ∈ R 2 ∧ y ≤ y ) where R 1 = [ 0 , π 2 [ , R 2 = [ π 2 , 3 π 2 [ , R 3 = [ 3 π 2 , 2 π [ , y ‾ = m o d ( x ‾ , 2 π ) , y ‾ = m o d ( x ‾ , 2 π ) R_1=[0,\frac{\pi}{2}[, R_2=[\frac{\pi}{2},\frac{3\pi}{2}[, R_3=[\frac{3\pi}{2}, 2\pi[, \underline{y}=\mathrm{mod}(\underline{x},2\pi), \overline{y}=\mathrm{mod}(\overline{x},2\pi) R 1 = [ 0 , 2 π [ , R 2 = [ 2 π , 2 3 π [ , R 3 = [ 2 3 π , 2 π [ , y = mod ( x , 2 π ) , y = mod ( x , 2 π )
cos cos ( [ x ] ) = { [ − 1 , 1 ] if ( x ‾ − x ‾ ≥ 2 π ) ∨ ( y ‾ ∈ R 1 ∧ y ‾ ∈ R 1 ∧ y ‾ > y ‾ ) ∨ ( y ‾ ∈ R 2 ∧ y ‾ ∈ R 2 ∧ y ‾ > y ‾ ) , [ cos ( y ‾ ) , cos ( y ‾ ) ] if ( y ‾ ∈ R 2 ∧ y ‾ ∈ R 2 ∧ y ‾ ≤ y ‾ ) , [ min ( cos ( y ‾ ) , cos ( y ‾ ) ) , 1 ] if ( y ‾ ∈ R 2 ∧ y ‾ ∈ R 1 ) , [ − 1 , max ( cos ( y ‾ ) , cos ( y ‾ ) ) ] if ( y ‾ ∈ R 1 ∧ y ‾ ∈ R 2 ) , [ cos ( y ‾ ) , cos ( y ‾ ) ] if ( y ‾ ∈ R 1 ∧ y ‾ ∈ R 1 ∧ y ‾ ≤ y ‾ ) \cos([x])=\begin{cases} [-1,1] & \text{if} \ (\overline{x} - \underline{x} \geq 2 \pi) \lor \\ & (\underline{y} \in R_1 \land \overline{y} \in R_1 \land \underline{y} > \overline{y}) \lor \\ & (\underline{y} \in R_2 \land \overline{y} \in R_2 \land \underline{y} > \overline{y}),\\ [\cos(\underline{y}), \cos(\overline{y})] & \text{if} \ (\underline{y} \in R_2 \land \overline{y} \in R_2 \land \underline{y} \leq \overline{y}), \\ [\min(\cos(\underline{y}),\cos(\overline{y})),1] & \text{if} \ (\underline{y} \in R_2 \land \overline{y} \in R_1), \\ [-1,\max(\cos(\underline{y}),\cos(\overline{y}))] & \text{if} \ (\underline{y} \in R_1 \land \overline{y} \in R_2), \\ [\cos(\overline{y}), \cos(\underline{y})] & \text{if} \ (\underline{y} \in R_1 \land \overline{y} \in R_1 \land \overline{y} \leq \overline{y}) \end{cases} cos ([ x ]) = ⎩ ⎨ ⎧ [ − 1 , 1 ] [ cos ( y ) , cos ( y )] [ min ( cos ( y ) , cos ( y )) , 1 ] [ − 1 , max ( cos ( y ) , cos ( y ))] [ cos ( y ) , cos ( y )] if ( x − x ≥ 2 π ) ∨ ( y ∈ R 1 ∧ y ∈ R 1 ∧ y > y ) ∨ ( y ∈ R 2 ∧ y ∈ R 2 ∧ y > y ) , if ( y ∈ R 2 ∧ y ∈ R 2 ∧ y ≤ y ) , if ( y ∈ R 2 ∧ y ∈ R 1 ) , if ( y ∈ R 1 ∧ y ∈ R 2 ) , if ( y ∈ R 1 ∧ y ∈ R 1 ∧ y ≤ y ) where R 1 = [ 0 , π [ , R 2 = [ π , 2 π [ , y ‾ = m o d ( x ‾ , 2 π ) , y ‾ = m o d ( x ‾ , 2 π ) R_1=[0,\pi[, R_2=[\pi,2\pi[, \underline{y}=\mathrm{mod}(\underline{x},2\pi), \overline{y}=\mathrm{mod}( \overline{x},2\pi) R 1 = [ 0 , π [ , R 2 = [ π , 2 π [ , y = mod ( x , 2 π ) , y = mod ( x , 2 π )
###tan
tan ( [ x ] ) = { ] − ∞ , ∞ [ if ( x ‾ − x ‾ ≥ π ) ∧ ( z ‾ ∈ R 1 ∧ z ‾ ∈ R 1 ∧ z ‾ > z ‾ ) ∨ ( z ‾ ∈ R 2 ∧ z ‾ ∈ R 2 ∧ z ‾ > z ‾ ) ∨ ( z ‾ ∈ R 1 ∧ z ‾ ∈ R 2 ) , [ tan ( z ‾ ) , tan ( z ‾ ) ] if ( z ‾ ∈ R 1 ∧ z ‾ ∈ R 1 ∧ z ‾ ∈ z ‾ ) ∨ ( z ‾ ∈ R 2 ∧ z ‾ ∈ R 2 ∧ z ‾ ∈ z ‾ ) \tan([x])=\begin{cases} ]-\infty,\infty[ & \text{if} \ (\overline{x}-\underline{x} \geq \pi) \land \\ & (\underline{z} \in R_1 \land \overline{z} \in R_1 \land \underline{z} > \overline{z}) \lor \\ & (\underline{z} \in R_2 \land \overline{z} \in R_2 \land \underline{z} > \overline{z}) \lor \\ & (\underline{z} \in R_1 \land \overline{z} \in R_2), \\ [\tan(\underline{z}),\tan(\overline{z})] & \text{if} \ (\underline{z} \in R_1 \land \overline{z} \in R_1 \land \underline{z} \in \overline{z}) \lor \\ & (\underline{z} \in R_2 \land \overline{z} \in R_2 \land \underline{z} \in \overline{z}) \end{cases} tan ([ x ]) = ⎩ ⎨ ⎧ ] − ∞ , ∞ [ [ tan ( z ) , tan ( z )] if ( x − x ≥ π ) ∧ ( z ∈ R 1 ∧ z ∈ R 1 ∧ z > z ) ∨ ( z ∈ R 2 ∧ z ∈ R 2 ∧ z > z ) ∨ ( z ∈ R 1 ∧ z ∈ R 2 ) , if ( z ∈ R 1 ∧ z ∈ R 1 ∧ z ∈ z ) ∨ ( z ∈ R 2 ∧ z ∈ R 2 ∧ z ∈ z ) where R 1 = [ 0 , π 2 [ , R 2 = [ π 2 , π [ , z ‾ = m o d ( x ‾ , π ) , z ‾ = m o d ( x ‾ , π ) R_1=[0,\frac{\pi}{2}[, R_2=[\frac{\pi}{2}, \pi[, \underline{z}=\mathrm{mod}(\underline{x},\pi), \overline{z}=\mathrm{mod}(\overline{x},\pi) R 1 = [ 0 , 2 π [ , R 2 = [ 2 π , π [ , z = mod ( x , π ) , z = mod ( x , π )
cot cot ( [ x ] ) = { ] − ∞ , ∞ [ if ( x ‾ − x ‾ ≥ π ) ∨ ( z ‾ > z ‾ ) , [ cot ( z ‾ ) , cot ( z ‾ ) ] if ( z ‾ ≤ z ‾ ) \cot([x]) = \begin{cases} ]-\infty,\infty[ & \text{if} \ (\overline{x}-\underline{x} \geq \pi) \lor (\underline{z} > \overline{z}), \\ [\cot(\overline{z}), \cot(\underline{z})] & \text{if} \ (\underline{z} \leq \overline{z}) \end{cases} cot ([ x ]) = { ] − ∞ , ∞ [ [ cot ( z ) , cot ( z )] if ( x − x ≥ π ) ∨ ( z > z ) , if ( z ≤ z ) where z ‾ = m o d ( x ‾ , π ) , z ‾ = m o d ( x ‾ , π ) \underline{z}=\mathrm{mod}(\underline{x},\pi),\overline{z}=\mathrm{mod}(\overline{x},\pi) z = mod ( x , π ) , z = mod ( x , π )
References [1] Althoff, M., & Grebenyuk, D. (2016). Implementation of interval arithmetic in {CORA} 2016. In Proc. of the 3rd
International Workshop on Applied Verification for Continuous and Hybrid Systems (pp. 91-105).
[2]: Wikipedia contributors. (2022, May 5). Interval arithmetic. In Wikipedia, The Free Encyclopedia. Retrieved 08:05,
June 9, 2022, from https://en.wikipedia.org/w/index.php?title=Interval_arithmetic&oldid=1086274354
[3]: Rump, S. M. (1999). Fast and parallel interval arithmetic. BIT Numerical Mathematics, 39(3), 534-554.
[4]: Moore, R. E., Kearfott, R. B., & Cloud, M. J. (2009). Introduction to interval analysis. Society for Industrial and
Applied Mathematics.
[5]: Shary, S. P. (2019). Numerical computation of formal solutions to interval linear systems of equations. arXiv
preprint arXiv:1903.10272.