Sylvester matrix: Difference between revisions

From formulasearchengine
Jump to navigation Jump to search
Definition: math notation cleanup: a hyphen is not a minus sign, and proper spacing is needed.
 
No edit summary
Line 1: Line 1:
When you're on the lookout for a spot to stay in Singapore with an expat community, these are the areas that will interest you for those who're working in the primary Central Enterprise District. All of the places are within 17 min (or less!) drive to the Central Enterprise District of Singapore<br><br>It's situated 250m to Hillview MRT , which can complete in 2016. Hillview MRT is a part of the Downtown MRT Line, which runs by means of Bukit Timah Road, and is handy for those working or finding out in Bukit Timah. There is an interchange to attach at Newton Station, which connects to Orchard and Metropolis Hall. The road then hyperlinks directly to Bugis and Marina Bay Sands. The beauty of RiverTrees Residences' location is compelling because it presents consumers an opportunity to own a home with an unblocked view of Punggol Reservoir. It's located very near nature but provides glorious connectivity to the number of facilities in the vicinity," he added. More than 200 models sold at Riverbank @ Fernvale Star Buy (Residential) Star Purchase (Commercial) Full condo services<br><br>Because of the various measures enforced via the federal government, the principle Central Region (CCR) has acquired growing recognition, with increasingly more purchasers interested by it for his or her dwelling. The good thing about CCR housing will be the relatively low PSF (per sq. ft.), though PSF can't moderately replicate value, as costs for CCR housing can all the time be previous the achieve of quite a few, as a result of they may range from SGD 3m and SGD 10m. Being a very good listener, a lot of my purchasers are now my buddies they usually never hesitate to make referrals to me. The 22-storey growth is within proximity to Orchard Road and a brief drive from prime areas such as the CBD and Marina Bay Sands. The Shore @ Malacca River - Unique waterfront residing, Play where you live<br><br>Thus, a possible proprietor or investor additionally wants to concentrate as to whether the rental into account seems low-value or expensive with respect to the standard relative prices. Relative prices appear to remain safe over a longer time frame, although they is prone to be totally different in Hong Kong or London from Singapore Relative prices is likely to be decided with hedonic fashions, which had been developed by American economists 30 years ago. Though hedonic fashions are often used to explore particularities of the true property markets in America, England, Hong Kong and different markets, we can current various new insights by adopting the mannequin to Singapore<br><br>It's common information that in Singapore , properties which might be close to train stations have the most important upswing during financial increase instances, and have the least impression during economic lean instances. Up to now few years, properties near train stations have doubled in value! Properties which can be further away also expertise growth, but at a much slower price. Tv Presenter Timothy from Whitchurch-Stouffville, likes to spend a while frisbee golf, home sale in singapore and reflexology. Has signed up for a world contiki journey. Is extremely excited specifically about visiting Historic Sanctuary of Machu Picchu. La Fiesta Rental is a brand new luxurious, full-amenities condominium, positioned simply 1 minute stroll away from Sengkang MRT and Compass Point. April 30, 2014<br><br>Sturdy investment activity is likely to proceed on its trajectory in Q4 2013 and beyond as some massive deals are in the pipeline. That stated, the weight of capital and the race for core property has been pushing down yields. In consequence we may see among the interest shifting to the suburban markets and Grade B assets but Sydney and Melbourne nonetheless remain the important thing goal," mentioned Reid Mackay, CBRE govt director. If you are not capable of safe conventional financing with the intention to buy a house, chances are you'll contemplate on the lookout for actual estate that has  [http://networkinginfo.com/node/47609 The Skywoods launch] proprietor financing. Proprietor financing allows the seller to sell you the property on their very own terms and collect a fee from you every month. They get not only the purchase value, however the curiosity as nicely.
[[File:Set of curves Outer approximation.png|345px|thumb|right|Tolerance function (turquoise) and interval-valued approximation (red)'']]
'''Interval arithmetic''', '''interval mathematics''', '''interval analysis''', or '''interval computation''', is a method developed by mathematicians since the 1950s and 1960s as an approach to putting bounds on [[rounding error]]s and [[measurement error]]s in [[numerical analysis|mathematical computation]] and thus developing [[numerical methods]] that yield reliable results. Very simply put, it represents each value as a range of possibilities. For example, instead of estimating the height of someone using standard arithmetic as 2.0 meters, using interval arithmetic we might be certain that that person is somewhere between 1.97 and 2.03 meters.
 
Whereas classical arithmetic defines operations on individual numbers, interval arithmetic defines a set of operations on [[interval (mathematics)|interval]]s:
 
:T · S = { ''x'' | there is some ''y'' in ''T'', and some ''z'' in ''S'', such that ''x'' = ''y'' · ''z'' }.
 
The basic operations of interval arithmetic are, for two intervals [''a'', ''b''] and [''c'', ''d''] that are subsets of the real line (-∞, ∞)<!-- <math>(-\infty,\infty)</math> -->,
 
* [''a'', ''b''] + [''c'', ''d''] = <!-- [min (''a'' + ''c'', ''a'' + ''d'', ''b'' + ''c'', ''b'' + ''d''), max (''a'' + ''c'', ''a'' + ''d'', ''b'' + ''c'', ''b'' + ''d'')] =--> [''a'' + ''c'', ''b'' + ''d''],
* [''a'', ''b''] &minus; [''c'', ''d''] = <!-- [min (''a'' &minus; ''c'', ''a'' &minus; ''d'', ''b'' &minus; ''c'', ''b'' &minus; ''d''), max (''a'' &minus; ''c'', ''a'' &minus; ''d'', ''b'' &minus; ''c'', ''b'' &minus; ''d'')] =--> [''a'' &minus; ''d'', ''b'' &minus; ''c''],
* [''a'', ''b''] &times; [''c'', ''d''] = [min (''a'' &times; ''c'', ''a'' &times; ''d'', ''b'' &times; ''c'', ''b'' &times; ''d''), max (''a'' &times; ''c'', ''a'' &times; ''d'', ''b'' &times; ''c'', ''b'' &times; ''d'')],
* [''a'', ''b''] ÷ [''c'', ''d''] = [min (''a'' ÷ ''c'', ''a'' ÷ ''d'', ''b'' ÷ ''c'', ''b'' ÷ ''d''), max (''a'' ÷ ''c'', ''a'' ÷ ''d'', ''b'' ÷ ''c'', ''b'' ÷ ''d'')] when 0 is not in [''c'', ''d''].
 
Division by an interval containing zero is not defined under the basic interval arithmetic. The addition and multiplication operations are [[commutative]], [[associative]] and sub-[[distributive]]: the set ''X'' ( ''Y'' + ''Z'' ) is a subset of ''XY'' + ''XZ''.
 
Instead of working with an uncertain [[real (number)|real]] <math>x</math> we work with the two ends of the interval <math>[a,b]</math> which contains <math>x</math>:  <math>x</math> lies between <math>a</math> and <math>b</math>, or could be one of them.  Similarly a function <math>f</math> when applied to <math>x</math> is also uncertain. Instead, in interval arithmetic <math>f</math> produces an interval <math>[c,d]</math> which is all the possible values for <math>f(x)</math> for all <math>x \in [a,b]</math>.
 
This concept is suitable for a variety of purposes.  The most common use is to keep track of and handle rounding errors directly during the calculation and of uncertainties in the knowledge of the exact values of physical and technical parameters.  The latter often arise from measurement errors and tolerances for components or due to limits on computational accuracy. Interval arithmetic also helps find reliable and guaranteed solutions to equations and optimization problems.
 
==Introduction==
 
The main focus in the interval arithmetic is on the simplest way to calculate upper and lower endpoints for the range of values of a function in one or more variables. These barriers are not necessarily the [[supremum]] or [[infimum]], since the precise calculation of those values can be difficult or impossible; it can be shown that that task is in general [[NP-hard]].
 
Treatment is typically limited to  real intervals, so quantities of form
:<math>[a,b] = \{x \in \mathbb{R} \,|\, a \le x \le b\},</math>
where <math> a = {-\infty}</math> and <math> b = {\infty}</math> are allowed; with one of them infinite we would have an unbounded interval, while with both infinite we would have the extended real number line.
 
As with traditional calculations with real numbers, simple arithmetic operations and functions on elementary intervals must first be defined.<ref name="Kulisch">{{cite book|last=Kulisch|first=Ulrich|title=Wissenschaftliches Rechnen mit Ergebnisverifikation. Eine Einführung|year=1989|publisher=Vieweg-Verlag|location=Wiesbaden|language=German|isbn=3-528-08943-1}}</ref> More complicated functions can be calculated from these basic elements.<ref name="Kulisch"/>
 
===Example===
[[File:Interval BMI Simple Example.png|350px|thumb|left|[[Body Mass Index]] for a person 1.80m tall in relation to body weight ''m'' (in kilograms).]]
Take as an example the calculation of [[body mass index]] (BMI). The BMI is the body weight in kilograms divided by the square of height in metres. Measuring the mass with bathroom scales may have an accuracy of one kilogram. We will not know intermediate values - about 79.6&nbsp;kg or 80.3&nbsp;kg - but information rounded to the nearest whole number. It is unlikely that when the scale reads 80&nbsp;kg, someone really weighs exactly 80.0&nbsp;kg. In normal rounding to the nearest value, the scales showing 80&nbsp;kg indicates a weight between 79.5&nbsp;kg and 80.5&nbsp;kg.  The relevant range is that of all real numbers that are greater than or equal to 79.5, while less than or equal to 80.5, or in other words the interval [79.5,80.5].
 
For a man who weighs 80&nbsp;kg and is 1.80 m tall, the BMI is about 24.7. With a weight of 79.5&nbsp;kg and the same height the value is 24.5, while 80.5 kilograms gives almost 24.9. So the actual BMI is in the range [24.5,24.9]. The error in this case does not affect the conclusion (normal weight), but this is not always  the position. For example, weight fluctuates in the course of a day so that the BMI can vary between 24 (normal weight) and 25 (overweight).  Without detailed analysis it is not possible to always exclude questions as to whether an error ultimately is large enough to have significant influence.
 
Interval arithmetic states the range of possible outcomes explicitly.  Simply put, results are no longer stated as numbers, but as intervals which represent imprecise values. The size of the intervals are similar to error bars to a metric in expressing the extent of uncertainty. Simple arithmetic operations, such as basic arithmetic and trigonometric functions, enable the calculation of outer limits of intervals.
 
===Simple arithmetic===
[[File:Interval BMI Example.png|260px|thumb|right|Body mass index for different weights in relation to height L (in metres).]]
Returning to the earlier BMI example, in determining the body mass index, height and body weight both affect the result. For height, measurements are usually in round centimetres: a recorded measurement of 1.80 metres actually means a height  somewhere between 1.795 m and 1.805 m.  This uncertainty must be combined with the fluctuation range in weight between 79.5&nbsp;kg and 80.5&nbsp;kg.  The BMI is defined as the weight in kilograms divided by the square of height in metre.  Using either 79.5&nbsp;kg and 1.795 m or 80.5&nbsp;kg and 1.805 m gives approximately 24.7. But the person in question may only be 1.795 m tall, with a weight of 80.5 kilograms - or 1.805 m and 79.5 kilograms: all combinations of all possible intermediate values must be considered.  Using the interval arithmetic methods described below, the BMI lies in the interval
:<math>[79{.}5; 80{.}5]/([1{.}795; 1{.}805])^2 = [24{.}4; 25{.}0].</math>
 
An operation <math>{\langle\!\mathrm{op}\!\rangle}</math>, such as addition or multiplication, on two intervals is defined by
 
:<math>[x_1, x_2] {\,\langle\!\mathrm{op}\!\rangle\,} [y_1, y_2] = \{ x {\,\langle\!\mathrm{op}\!\rangle\,} y \, | \, x \in [x_1, x_2] \,\mbox{and}\, y \in [y_1, y_2] \} </math>.
For the four basic arithmetic operations this can become
 
:<math>\begin{align}[][x_1, x_2] \,\langle\!\mathrm{op}\!\rangle\, [y_1, y_2] & = \left[ \min(x_1 {\langle\!\mathrm{op}\!\rangle} y_1, x_1 \langle\!\mathrm{op}\!\rangle y_2, x_2 \langle\!\mathrm{op}\!\rangle y_1, x_2 \langle\!\mathrm{op}\!\rangle y_2),
\right.\\
&{}\qquad \left.
\;\max(x_1 {\langle\!\mathrm{op}\!\rangle}y_1, x_1 {\langle\!\mathrm{op}\!\rangle} y_2, x_2
{\langle\!\mathrm{op}\!\rangle} y_1, x_2 {\langle\!\mathrm{op}\!\rangle} y_2) \right]
\,\mathrm{,}
\end{align}
</math>
 
provided that <math>x {\,\langle\!\mathrm{op}\!\rangle\,} y</math> is allowed for all
<math>x\in [x_1, x_2]</math> and <math>y \in [y_1, y_2]</math>.
 
For practical applications this can be simplified further:
 
* [[Addition]]: <math>[x_1, x_2] + [y_1, y_2] = [x_1+y_1, x_2+y_2]</math>
* [[Subtraction]]: <math>[x_1, x_2] - [y_1, y_2] = [x_1-y_2, x_2-y_1]</math>
* [[Multiplication]]: <math>[x_1, x_2] \cdot [y_1, y_2] = [\min(x_1 y_1,x_1 y_2,x_2 y_1,x_2 y_2), \max(x_1 y_1,x_1 y_2,x_2 y_1,x_2 y_2)]</math>
* [[Division (mathematics)|Division]]: <math>[x_1, x_2] / [y_1, y_2] =
[x_1, x_2] \cdot (1/[y_1, y_2])</math>, where  <math>1/[y_1, y_2] = [1/y_2, 1/y_1]</math> if <math>0 \notin [y_1, y_2]</math>.
 
For division by an interval including zero, first define
: <math>1/[y_1, 0] = [-\infty, 1/y_1]</math> and <math>1/[0, y_2] = [1/y_2, \infty]</math>.
For <math>y_1 < 0 < y2</math>, we get <math>1/[y_1, y_2] = [-\infty, 1/y_1] \cup [1/y_2, \infty]</math> which as a single interval gives <math>1/[y_1, y_2] = [-\infty, \infty]</math>; this loses useful information about <math>(1/y_1, 1/y_2)</math>. So typically it is common to work with <math>[-\infty, 1/y_1]</math> and <math>[1/y_2, \infty]</math> as separate intervals.
 
Because several such divisions may occur in an interval arithmetic calculation, it is sometimes useful to do the calculation with so-called ''multi-intervals'' of the form <math>\textstyle \bigcup_{i=1}^l [x_{i1},x_{i2}]</math>. The corresponding ''multi-interval arithmetic'' maintains a disjoint set of intervals and also provides for overlapping intervals to unite.<ref name="Dreyer">{{cite book|last=Dreyer|first=Alexander|title=Interval Analysis of Analog Circuits with Component Tolerances|year=2003|publisher=[[Shaker Verlag]]|location=Aachen, Germany|isbn=3-8322-4555-3}}</ref>{{Page needed|date=February 2011}}
 
Since a real number <math>r\in \mathbb{R}</math> can be interpreted as the interval <math>[r,r]</math>, intervals and real number can be freely and easily combined.
 
With the help of these definitions, it is already possible to calculate the range of simple functions, such as <math>f(a,b,x) = a \cdot x + b</math>.
If, for example<math>a = [1,2]</math>, <math>b = [5,7]</math> and <math>x = [2,3]</math>, it is clear
 
:<math>f(a,b,x) = ([1,2] \cdot [2,3]) + [5,7] = [1\cdot 2, 2\cdot 3] + [5,7] = [7,13]</math>.
 
Interpreting this as a function <math>f(a,b,x)</math> of the variable
<math>x</math> with interval parameters <math>a</math> and <math>b</math>, then it is possible to find the roots of this function.  It is then
 
:<math>f([1,2],[5,7],x) = ([1,2] \cdot x) + [5,7] = 0\Leftrightarrow [1,2] \cdot x = [-7, -5]\Leftrightarrow x = [-7, -5]/[1,2],</math>
the possible zeros are in the interval <math>[-7, {-2.5}]</math>.
 
[[File:Interval multiplication.png|120px|right|thumb|Multiplication of positive intervals]]
As in the above example, the multiplication of intervals often only requires two multiplications.  It is in fact
 
:<math>[x_1, x_2] \cdot [y_1, y_2] = [x_1 \cdot y_1, x_2 \cdot y_2],\text{ if }x_1, y_1 \geq 0.</math>
 
The multiplication can be seen as a destination area of a rectangle with varying edges. The result interval covers all levels from the smallest to the largest.
 
The same applies when one of the two intervals is non-positive and the other non-negative.  Generally, multiplication can produce results as wide as <math>[-\infty, \infty]</math>, for example if <math>0 \cdot \infty</math> is squared.  This also occurs, for example, in a division, if the numerator and denominator both contain zero.
 
=== Notation ===
To make the notation of intervals smaller in formulae, brackets can be used.
 
So we can use <math>[x] \equiv [x_1, x_2]</math> to represent an interval.  For the set of all finite intervals, we can use
 
:<math>[\mathbb{R}] := \big\{\, [x_1, x_2] \,|\, x_1 \leq x_2 \text{ and } x_1, x_2 \in \mathbb{R} \cup \{-\infty, \infty\} \big\}</math>
 
as an abbreviation.  For a vector of intervals <math>\big([x]_1, \ldots , [x]_n \big) \in  [\mathbb{R}]^n </math> we can also use a bold font: <math>[\mathbf{x}]</math>.
 
Note that in such a compact notation, <math>[x]</math> should not be confused between a so-called improper or single point interval <math>[x_1, x_1]</math> and the lower and upper limit.
 
=== Elementary functions ===
[[File:Value domain of monotonic function.png|160px|right|thumb|Values of a monotonic function]]
Interval methods can also apply to functions which do not just use simple arithmetic, and we must also use other basic functions for redefining intervals, using already known monotonicity properties.
 
For [[monotonic function]]s in one variable, the range of values is also easy. If <math>f: \mathbb{R} \rightarrow \mathbb{R}</math> is monotonically rising or falling in the interval <math>[x_1, x_2]</math>, then for all values in the interval <math>y_1, y_2 \in [x_1, x_2]</math> such that <math>y_1 \leq y_2</math>, one of the following inequalities applies:
:<math>f(y_1) \leq f(y_2) </math>, or <math>f(y_1) \geq f(y_2) </math>.
 
The range corresponding to the interval <math>[y_1, y_2] \subseteq [x_1, x_2]</math> can be calculated by applying the function to the endpoints <math>y_1</math> and <math>y_2</math>:
:<math>f([y_1, y_2]) = \left[\min \big \{f(y_1), f(y_2) \big\}, \max \big\{ f(y_1), f(y_2) \big\}\right]</math>.
 
From this the following basic features for interval functions can easily be defined:
* [[Exponential function]]: <math>a^{[x_1, x_2]} = [a^{x_1},a^{x_2}]</math>, for <math>a > 1</math>,
* [[Logarithm]]: <math>\log_a\big( {[x_1, x_2]} \big) = [\log_a {x_1}, \log_a {x_2}]</math>, for positive intervals <math>[x_1, x_2]</math> and <math>a>1</math>
* Odd powers: <math>{[x_1, x_2]}^n = [{x_1}^n,{x_2}^n]</math>, for odd <math>n\in \mathbb{N}</math>.
 
For even powers, the range of values being considered is important, and needs to be dealt with before doing any multiplication.
For example <math>x^n</math> for <math>x \in [-1,1]</math> should produce the interval <math>[0,1]</math> when <math>n = 2, 4, 6, \ldots</math>. But if <math>[-1,1]^n</math> is taken by applying interval multiplication of form  <math>[-1,1]\cdot \ldots \cdot [-1,1]</math> then the result will appear to be <math>[-1,1]</math>, wider than necessary.
 
Instead consider the function <math>x^n</math> as a monotonically decreasing function for <math>x < 0</math> and a monotonically increasing function for <math>x > 0</math>. So for even <math>n\in \mathbb{N}</math>:
 
* <math>{[x_1, x_2]}^n = [x_1^n, x_2^n]</math>, if <math>x_1 \geq 0</math>,
* <math>{[x_1, x_2]}^n = [x_2^n, x_1^n]</math>, if <math>x_2 < 0</math>,
* <math>{[x_1, x_2]}^n = [0, \max \{x_1^n, x_2^n \} ]</math>, otherwise.
 
More generally, one can say that for piecewise monotonic functions it is sufficient to consider the endpoints <math>x_1, x_2</math>  of the interval <math>[x_1, x_2]</math>, together with the so-called ''critical points'' within the interval being those points where the monotonicity of the function changes direction.
 
For the [[sine]] and [[cosine]] functions, the critical points are at  <math>\left( {}^1\!\!/\!{}_2 + {n}\right) \cdot \pi</math> or <math>{n} \cdot \pi</math> for all <math>n \in \mathbb{Z}</math> respectively. Only up to five points matter as the resulting interval will be <math>[-1,1]</math> if the interval includes at least two extrema. For sine and cosine, only the endpoints need full evaluation as the critical points lead to easily pre-calculated values  – namely -1, 0, +1.
 
===Interval extensions of general functions===
In general, it may not be easy to find such a simple description of the output interval for many functions.  But it may still be possible to extend functions to interval arithmetic.
If <math>f:\mathbb{R}^n \rightarrow \mathbb{R}</math> is a function from a real vector to a real number, then &nbsp;<math>[f]:[\mathbb{R}]^n \rightarrow [\mathbb{R}]</math> is called an ''interval extension'' of <math>f</math> if
:<math>[f]([\mathbf{x}]) \supseteq \{f(\mathbf{y}) | \mathbf{y} \in [\mathbf{x}]\}</math>.
 
This definition of the interval extension does not give a precise result.  For example, both  <math>[f]([x_1,x_2]) =[e^{x_1}, e^{x_2}]</math> and <math>[g]([x_1,x_2]) =[{-\infty}, {\infty}]</math> are allowable extensions of the exponential function. Extensions as tight as possible are desirable, taking into the relative costs of calculation and imprecision; in this case <math>[f]</math> should be chosen as it give the tightest possible result.
 
The ''natural interval extension'' is achieved by combining the function rule <math>f(x_1, \cdots, x_n)</math> with the equivalents of the basic arithmetic and elementary functions.
 
The ''Taylor interval extension'' (of degree <math>k</math> ) is a <math>k+1</math> times differentiable function <math>f</math> defined by
 
:<math>[f]([\mathbf{x}]) :=  f(\mathbf{y}) + \sum_{i=1}^k\frac{1}{i!}\mathrm{D}^i f(\mathbf{y}) \cdot ([\mathbf{x}] - \mathbf{y})^i + [r]([\mathbf{x}], [\mathbf{x}], \mathbf{y})
</math>,
for some <math>\mathbf{y} \in [\mathbf{x}]</math>,
where <math>\mathrm{D}^i f(\mathbf{y})</math> is the <math>i</math>th order differential of <math>f</math> at the point <math>\mathbf{y}</math> and <math>[r]</math> is an interval extension of the ''Taylor remainder''
 
:<math>r(\mathbf{x}, \xi, \mathbf{y}) = \frac{1}{(k+1)!}\mathrm{D}^{k+1} f(\xi) \cdot (\mathbf{x}-\mathbf{y})^{k+1}. </math>
 
[[File:Meanvalue extension.png|220px|right|thumb|Mean value form]]
The vector <math>\xi</math> lies between <math>\mathbf{x}</math>
and <math>\mathbf{y}</math> with <math>\mathbf{x}, \mathbf{y} \in [\mathbf{x}]</math>, <math>\xi</math> is protected by <math>[\mathbf{x}]</math>.
Usually one chooses <math>\mathbf{y}</math> to be the midpoint of the interval and uses the natural interval extension to assess the remainder.
 
The special case of the Taylor interval extension of degree <math>k = 0</math> is also referred to as the ''mean value form''.
For an interval extension of the [[Jacobian]] <math>[J_f](\mathbf{[x]})</math>
we get
 
:<math>[f]([\mathbf{x}]) :=
  f(\mathbf{y}) + [J_f](\mathbf{[x]}) \cdot ([\mathbf{x}] - \mathbf{y})
</math>.
 
A nonlinear function can be defined by linear features.
 
==Complex interval arithmetic==
 
An interval can also be defined as a locus of points at a given distance from the centre, and this definition can be extended from real numbers to [[complex number]]s.<ref>[http://books.google.com/books?id=Vtqk6WgttzcC Complex interval arithmetic and its applications], Miodrag Petkovi?, Ljiljana Petkovi?, Wiley-VCH, 1998, ISBN 978-3-527-40134-5</ref> As it is the case with computing with real numbers, computing with complex numbers involves uncertain data. So, given the fact that an interval number is a real closed interval and a complex number is an ordered pair of [[real number]]s, there is no reason to limit the application of interval arithmetic to the measure of uncertainties in computations with real numbers.<ref name="Dawood">[[Hend Dawood]] (2011). ''Theories of Interval Arithmetic: Mathematical Foundations and Applications''. Saarbrücken: LAP LAMBERT Academic Publishing. ISBN 978-3-8465-0154-2.</ref> Interval arithmetic can thus be extended, via [[complex interval numbers]], to determine regions of uncertainty in computing with complex numbers.<ref name="Dawood"/>
 
The basic algebraic operations for real interval numbers (real closed intervals) can be extended to complex numbers. It is therefore not surprising that complex interval arithmetic is similar to, but not the same as, ordinary complex arithmetic.<ref name="Dawood"/> It can be shown that, as it is the case with real interval arithmetic, there is no distributivity between addition and multiplication of complex interval numbers except for certain special cases, and inverse elements do not always exist for complex interval numbers.<ref name="Dawood"/> Two other useful properties of ordinary complex arithmetic fail to hold in complex interval arithmetic: the additive and multiplicative properties, of ordinary complex conjugates, do not hold for complex interval conjugates.<ref name="Dawood"/>
 
Interval arithmetic can be extended, in an analogous manner, to other multidimensional [[number systems]] such as [[quaternion]]s and [[octonion]]s, but with the expense that we have to sacrifice other useful properties of ordinary arithmetic.<ref name="Dawood"/>
 
== Interval methods ==
The methods of classical numerical analysis can not be transferred one-to-one into interval-valued algorithms, as dependencies between numerical values are usually not taken into account.
 
=== Rounded interval arithmetic ===
[[File:Illustration of outward rounding.png|200px|left|thumb|Outer bounds at different level of rounding]]
In order to work effectively in a real-life implementation, intervals must be compatible with floating point computing.  The earlier operations were based on exact arithmetic, but in general fast numerical solution methods may not be available.  The range of values of the function <math>f(x, y) = x + y</math>
for <math>x \in [0.1, 0.8]</math> and <math>y \in [0.06, 0.08]</math> are for example <math>[0.16, 0.88]</math>.  Where the same calculation is done with single digit precision, the result would normally be <math>[0.2, 0.9]</math>. But <math>[0.2, 0.9] \not\supseteq [0.16, 0.88]</math>,
so this approach would contradict the basic principles of interval arithmetic, as a part of the domain of <math>f([0.1, 0.8], [0.06, 0.08])</math> would be lost.
Instead, it is the outward rounded solution <math>[0.1, 0.9]</math> which is used.
 
The standard [[IEEE 754]] for binary floating-point arithmetic also sets out procedures for the implementation of rounding.  An IEEE 754 compliant system allows programmers to round to the nearest floating point number; alternatives are rounding towards 0 (truncating), rounding toward positive infinity (i.e. up), or rounding towards negative infinity (i.e. down).
 
The required ''external rounding'' for interval arithmetic can thus be achieved by changing the rounding settings of the processor in the calculation of the upper limit (up) and lower limit (down). Alternatively, an appropriate small interval <math>[\varepsilon_1, \varepsilon_2]</math> can be added.
 
=== Dependency problem ===
[[File:Interval-dependence problem-front view.png|right|thumb|Approximate estimate of the value range]]
The so-called ''dependency problem'' is a major obstacle to the application of interval arithmetic.
Although interval methods can determine the range of elementary arithmetic operations and functions very accurately, this is not always true with more complicated functions.  If an interval occurs several times in a calculation using parameters, and each occurrence is taken independently then this can lead to an unwanted expansion of the resulting intervals.
 
[[File:Interval-dependence problem.png|180px|left|thumb|Treating each occurrence of a variable independently]]
As an illustration, take the function  <math>f</math> defined by
<math>f(x) = x^2 + x</math>. The values of this function over the interval <math>[-1, 1]</math> are really  <math>[-1/4 , 2]</math>. As the natural interval extension, it is calculated as <math>[-1, 1]^2 + [-1, 1] = [0,1] + [-1,1] = [-1,2]</math>, which is slightly larger; we have instead calculated the infimum and supremum of the function <math>h(x, y)= x^2+y</math> over <math>x,y \in [-1,1]</math>.
There is a better expression of <math>f</math> in which the variable <math>x</math> only appears once, namely by rewriting  <math>f(x) = x^2 + x</math> as addition and squaring in the quadratic
<math>f(x) = \left(x + \frac{1}{2}\right)^2 -\frac{1}{4}</math>.
 
So the suitable interval calculation is
:<math> \left([-1,1] + \frac{1}{2}\right)^2 -\frac{1}{4} =
\left[-\frac{1}{2}, \frac{3}{2}\right]^2 -\frac{1}{4} = \left[0, \frac{9}{4}\right] -\frac{1}{4} = \left[-\frac{1}{4},2\right]</math>
and gives the correct values.
 
In general, it can be shown that the exact range of values can be achieved, if each variable appears only once and if <math>f</math> is continuous inside the box. However, not every function can be rewritten this way.
 
[[File:Interval-wrapping effect.png|160px|right|thumb|Wrapping effect]]
The dependency of the problem causing over-estimation of the value range can go as far as covering a large range, preventing more meaningful conclusions.
 
An additional increase in the range stems from the solution of areas that do not take the form of an interval vector. The solution set of the linear system
:<math>
\begin{matrix}
x &=& p\\
y &=& p
\end{matrix}
</math>
for <math> p\in [-1,1]</math>
is precisely the line between the points <math>(-1,-1)</math> and <math>(1,1)</math>.
Interval methods deliver the best case, but in the square <math>[-1,1] \times [-1,1]</math>,  The real solution is contained in this square (this is known as the ''wrapping effect'').
 
=== Linear interval systems ===
A linear interval system consists of a matrix interval extension <math>[\mathbf{A}] \in [\mathbb{R}]^{n\times m}</math> and an interval vector <math>[\mathbf{b}] \in [\mathbb{R}]^{n}</math>. We want the smallest cuboid <math>[\mathbf{x}] \in [\mathbb{R}]^{m}</math>, for all vectors
<math>\mathbf{x} \in \mathbb{R}^{m}</math> which there is a pair <math>(\mathbf{A}, \mathbf{b})</math> with <math>\mathbf{A} \in [\mathbf{A}]</math> and <math>\mathbf{b} \in [\mathbf{b}]</math> satisfying
:<math>\mathbf{A} \cdot \mathbf{x} = \mathbf{b}</math>.
 
For quadratic systems &ndash; in other words, for <math>n = m</math> &ndash; there can be such an interval vector <math>[\mathbf{x}]</math>, which covers all possible solutions, found simply with the interval Gauss method.  This replaces the numerical operations, in that the linear algebra method known as Gaussian elimination becomes its interval version.  However, since this method uses the interval entities<math>[\mathbf{A}]</math> and <math>[\mathbf{b}]</math> repeatedly in the calculation, it can produce poor results for some problems. Hence using the result of the interval-valued Gauss only provides first rough estimates, since although it contains the entire solution set, it also has a large area outside it.
 
A rough solution <math>[\mathbf{x}]</math> can often be improved by an interval version of the [[Gauss–Seidel method]].
The motivation for this is that the <math>i</math>-th row of the interval extension of the linear equation
:<math>
\begin{pmatrix}
{[a_{11}]} & \cdots & {[a_{1n}]} \\
\vdots & \ddots & \vdots  \\
{[a_{n1}]} & \cdots & {[a_{nn}]}
\end{pmatrix}
\cdot
\begin{pmatrix}
{x_1} \\
\vdots \\
{x_n}
\end{pmatrix}
=
\begin{pmatrix}
{[b_1]} \\
\vdots \\
{[b_n]}
\end{pmatrix}
</math>
can be determined by the variable <math>x_i</math> if the division <math>1/[a_{ii}]</math> is allowed.  It is therefore simultaneously
:<math>x_j \in [x_j]</math> and <math>x_j \in \frac{[b_i]- \sum\limits_{k \not= j} [a_{ik}] \cdot [x_k]}{[a_{ii}]}</math>.
So we can now replace <math>[x_j]</math> by
:<math>[x_j] \cap \frac{[b_i]- \sum\limits_{k \not= j} [a_{ik}] \cdot [x_k]}{[a_{ii}]}</math>,
and so the vector <math>[\mathbf{x}]</math> by each element.
Since the procedure is more efficient for a [[diagonally dominant matrix]], instead of the system <math> [\mathbf{A}]\cdot \mathbf{x} = [\mathbf{b}]\mbox{,}</math> one can often try multiplying it by an appropriate rational matrix <math>\mathbf{M}</math>  with the resulting matrix equation
:<math>(\mathbf{M}\cdot[\mathbf{A}])\cdot \mathbf{x} = \mathbf{M}\cdot[\mathbf{b}]</math>
left to solve. If one chooses, for example, <math>\mathbf{M} = \mathbf{A}^{-1}</math> for the central matrix <math>\mathbf{A} \in [\mathbf{A}]</math>, then <math>\mathbf{M} \cdot[\mathbf{A}]</math> is outer extension of the identity matrix.
 
These methods only work well if the widths of the intervals occurring are sufficiently small.  For wider intervals it can be useful to use an interval-linear system on finite (albeit large) real number equivalent linear systems. If all the matrices <math>\mathbf{A} \in [\mathbf{A}]</math> are invertible, it is sufficient to consider all possible combinations (upper and lower) of the endpoints occurring in the intervals.  The resulting problems can be resolved using conventional numerical methods. Interval arithmetic is still used to determine rounding errors.
 
This is only suitable for systems of smaller dimension, since with a fully occupied <math>n \times n</math> matrix, <math>2^{n^2}</math> real matrices need to be inverted, with <math>2^n</math> vectors for the right hand side.  This approach was developed by Jiri Rohn and is still being developed.<ref>[http://www.cs.cas.cz/rohn/publist/000home.htm Jiri Rohn, List of publications]</ref>
 
===Interval Newton method===
[[File:Interval Newton step.png|250px|right|thumb|Reduction of the search area in the interval Newton step in "thick" functions]]
An interval variant of [[Newton's method]] for finding the zeros in an interval vector <math>[\mathbf{x}]</math> can be derived from the average value extension.<ref name="Hansen">{{cite book|last1=Walster|first1=G. William|last2=Hansen|first2=Eldon Robert|title=Global Optimization using Interval Analysis|edition=2nd|year=2004|publisher=Marcel Dekker|location=New York|isbn=0-8247-4059-9}}</ref> For an unknown vector <math>\mathbf{z}\in [\mathbf{x}]</math> applied to <math>\mathbf{y}\in [\mathbf{x}]</math>, gives
:<math>f(\mathbf{z}) \in  f(\mathbf{y}) + [J_f](\mathbf{[x]}) \cdot (\mathbf{z} - \mathbf{y})</math>.
For a zero <math>\mathbf{z}</math>, that is <math>f(z)=0</math>, and thus must satisfy
:<math> f(\mathbf{y}) + [J_f](\mathbf{[x]}) \cdot (\mathbf{z} - \mathbf{y})=0 </math>.
This is equivalent to
<math> \mathbf{z} \in \mathbf{y} - [J_f](\mathbf{[x]})^{-1}\cdot f(\mathbf{y})</math>.
An outer estimate of <math>[J_f](\mathbf{[x]})^{-1}\cdot f(\mathbf{y}))</math> can be determined using linear methods.
 
In each step of the interval Newton method, an approximate starting value <math>[\mathbf{x}]\in [\mathbb{R}]^n</math> is replaced by <math>[\mathbf{x}]\cap \left(\mathbf{y} - [J_f](\mathbf{[x]})^{-1}\cdot f(\mathbf{y})\right)</math> and so the result can be improved iteratively. In contrast to traditional methods, the interval method approaches the result by containing the zeros. This guarantees that the result will produce all the zeros in the initial range. Conversely, it will prove that no zeros of <math>f</math> were in the initial range <math>[\mathbf{x}]</math> if a Newton step produces the empty set.
 
The method converges on all zeros in the starting region. Division by zero can lead to separation of distinct zeros, though the separation may not be complete; it can be complemented by the [[#Bisection and covers|bisection method]].
 
As an example, consider the function <math>f(x)= x^2-2</math>, the starting range <math>[x] = [-2,2]</math>, and the point <math>y= 0</math>. We then have <math> J_f(x) = 2\, x</math> and the first Newton step gives
:<math>[-2,2]\cap \left(0 - \frac{1}{2\cdot[-2,2]} (0-2)\right) = [-2,2]\cap \Big([{-\infty}, {-0.5}]\cup  [{0.5}, {\infty}] \Big) = [{-2}, {-0.5}] \cup [{0.5}, {2}]</math>.
More Newton steps are used separately on <math>x\in [{-2}, {-0.5}]</math> and <math>[{0.5}, {2}]</math>. These converge to arbitrarily small intervals around <math>-\sqrt{2}</math> and <math>+\sqrt{2}</math>.
 
The Interval Newton method can also be used with ''thick functions'' such as  <math>g(x)= x^2-[2,3]</math>, which would in any case have interval results. The result then produces intervals containing <math> \left[-\sqrt{3},-\sqrt{2} \right] \cup \left[\sqrt{2},\sqrt{3} \right]</math>.
 
=== Bisection and covers ===
[[File:Illustration of interval mincing.png|220px|right|thumb|Rough estimate (turquoise) and improved estimates through "mincing" (red)]]
The various interval methods deliver conservative results as dependencies between the sizes of different intervals extensions are not taken into account. However the dependency problem becomes less significant for narrower intervals.
 
Covering an interval vector <math>[\mathbf{x}]</math> by smaller boxes <math>[\mathbf{x}_1], \dots , [\mathbf{x}_k]\mbox{,}</math> so that <math>\textstyle [\mathbf{x}] = \bigcup_{i=1}^k [\mathbf{x}_i]\mbox{,}</math> is then valid for the range of values
<math>\textstyle f([\mathbf{x}]) =  \bigcup_{i=1}^k f([\mathbf{x}_i])\mbox{.}</math>
So for the interval extensions described above,
<math>\textstyle [f]([\mathbf{x}]) \supseteq  \bigcup_{i=1}^k [f]([\mathbf{x}_i])</math> is valid.
Since <math>[f]([\mathbf{x}])</math> is often a genuine [[superset]] of the right-hand side, this usually leads to an improved estimate.
 
Such a cover can be generated by the [[bisection method]] such as thick elements <math>[x_{i1}, x_{i2}]</math>  of the interval vector <math>[\mathbf{x}] = ([x_{11}, x_{12}], \dots, [x_{n1}, x_{n2}])</math> by splitting in the centre into the two intervals <math>[x_{i1}, (x_{i1}+x_{i2})/2]</math> and <math>[(x_{i1}+x_{i2})/2, x_{i2}]</math>. If the result is still not suitable then further gradual subdivision is possible.  Note that a cover of <math>2^r</math> intervals results from <math>r</math> divisions of vector elements, substantially increasing the computation costs.
 
With very wide intervals, it can be helpful to split all intervals into several subintervals with a constant (and smaller) width, a method known as ''mincing''. This then avoids the calculations for intermediate bisection steps. Both methods are only suitable for problems of low dimension.
 
==Application==
Interval arithmetic can be use in various areas (such as [[set inversion]], [[motion planning]], [[set estimation]] or [[Vaimos|stability analysis]]), in order to be treated estimates for which no exact numerical values can stated.<ref>{{cite book|last1=Jaulin|first1=Luc|last2=Kieffer|first2=Michel|last3=Didrit|first3=Olivier|last4=Walter|first4=Eric|title=Applied Interval Analysis|year=2001|publisher=Springer|location=Berlin|isbn=1-85233-219-0}}</ref>
 
===  Rounding error analysis  ===
Interval arithmetic is used with error analysis, to control rounding errors arising from each calculation.
The advantage of interval arithmetic is that after each operation there is an interval which reliably includes the true result. The distance between the interval boundaries gives the current calculation of rounding errors directly:
: Error = <math>\mathrm{abs}(a-b)</math> for a given interval <math>[a,b]</math>.
Interval analysis adds to rather than substituting for traditional methods for error reduction, such as [[pivot element|pivoting]].
 
===Tolerance analysis===
 
Parameters for which no exact figures can be allocated often arise during the simulation of technical and physical processes.
The production process of technical components allows certain tolerances, so some parameters fluctuate within intervals.
In addition, many fundamental constants are not known precisely.<ref name="Dreyer"/>
 
If the behavior of such a system affected by tolerances satisfies, for example,  <math>f(\mathbf{x}, \mathbf{p}) = 0</math>, for <math> \mathbf{p} \in [\mathbf{p}]</math> and unknown <math>\mathbf{x}</math> then the set of possible solutions
:<math>\{\mathbf{x}\,|\, \exists \mathbf{p} \in [\mathbf{p}], f(\mathbf{x}, \mathbf{p})= 0\}</math>,
can be found by interval methods. This provides an alternative to traditional [[propagation of error]] analysis.
Unlike point methods, such as [[Monte Carlo simulation]], interval arithmetic methodology ensures that no part of the solution area can be overlooked.
However, the result is always a worst case analysis for the distribution of  error, as other probability-based distributions are not considered.
 
===Fuzzy interval arithmetic===
[[File:Fuzzy arithmetic.png|275px|right|thumb|Approximation of the [[normal distribution]] by a sequence of intervals]]
Interval arithmetic can also be used with affiliation functions for fuzzy quantities as they are used in [[fuzzy logic]]. Apart from the strict statements <math>x\in [x]</math> and <math>x \not\in [x]</math>, intermediate values are also possible, to which real numbers <math>\mu \in [0,1]</math> are assigned. <math>\mu = 1</math> corresponds to definite membership while <math>\mu = 0</math> is non-membership. A distribution function assigns uncertainty which can be understood as a further interval.
 
For ''fuzzy arithmetic''<ref>[http://www.iam.uni-stuttgart.de/Mitarbeiter/Hanss/hanss_en.htm Application of Fuzzy Arithmetic to Quantifying the Effects of Uncertain Model Parameters, Michael Hanss], [[University of Stuttgart]]</ref> only a finite number of discrete affiliation stages <math>\mu_i \in [0,1]</math> are considered. The form of such a distribution for an indistinct value can then represented by a sequence of intervals
:<math>\left[x^{(1)}\right] \supset \left[x^{(2)}\right] \supset \cdots \supset \left[x^{(k)} \right]</math>. The interval <math>[x^{(i)}]</math> corresponds exactly to the fluctuation range for the stage <math>\mu_i</math>.
 
The appropriate distribution for a function <math>f(x_1, \cdots, x_n)</math> concerning indistinct values
<math>x_1, \cdots, x_n</math> and the corresponding sequences
<math>\left[x_1^{(1)} \right] \supset \cdots \supset \left[x_1^{(k)} \right], \cdots ,
\left[x_n^{(1)} \right] \supset \cdots \supset \left[x_n^{(k)} \right]
</math> can be approximated by the sequence
<math>\left[y^{(1)}\right] \supset \cdots \supset \left[y^{(k)}\right]</math>.
The values <math>\left[y^{(i)}\right]</math> are given by <math>\left[y^{(i)}\right] = f \left( \left[x_{1}^{(i)}\right], \cdots \left[x_{n}^{(i)}\right]\right)</math> and can be calculated by interval methods. The value <math>\left[y^{(1)}\right]</math> corresponds to the result of an interval calculation.
 
== History ==
Interval arithmetic is not a completely new phenomenon in mathematics; it has appeared several times under different names in the course of history. For example [[Archimedes]] calculated lower and upper bounds 223/71 < [[Pi#History|π]] < 22/7 in the [[3rd century BC]].
Actual calculation with intervals has neither been as popular as other numerical techniques, nor been completely forgotten.
 
Rules for calculating with intervals and other subsets of the real numbers were published in a 1931 work by Rosalind Cicely Young, a doctoral candidate at the [[University of Cambridge]]. Arithmetic work on range numbers to improve reliability of digital systems were then published in a 1951 textbook on linear algebra by Paul Dwyer ([[University of Michigan]]); intervals were used to measure rounding errors associated with floating-point numbers. A comprehensive paper on interval algebra in numerical analysis was published by Sunaga (1958).<ref>{{cite book|author=T.Sunaga|title="Theory of interval algebra and its application to numerical analysis", RAAG Memoirs, 2 (1958), pp. 29-46."}}</ref>
 
The birth of modern interval arithmetic was marked by the appearance of the book ''Interval Analysis'' by Ramon E. Moore in 1966.<ref>{{cite book|last=Moore|first=R. E.|title=Interval Analysis|year=1966|publisher=Prentice-Hall|location=Englewood Cliff, New Jersey|isbn=0-13-476853-1}}</ref><ref name="siam">{{cite book|last1=Cloud|first1=Michael J.|last2=Moore|first2=Ramon E.|last3=Kearfott|first3=R. Baker|title=Introduction to Interval Analysis|year=2009|publisher=Society for Industrial and Applied Mathematics|location=Philadelphia|isbn=0-89871-669-1}}</ref> He had the idea in Spring 1958, and a year later he published an article about computer interval arithmetic.<ref>[http://interval.louisiana.edu/Moores_early_papers/bibliography.html Publications Related to Early Interval Work of R. E. Moore]</ref> Its merit was that starting with a simple principle, it provided a general method for automated error analysis, not just errors resulting from rounding.
 
Independently in 1956, Mieczyslaw Warmus suggested formulae for calculations with intervals,<ref>[http://www.ippt.gov.pl/~zkulpa/quaphys/warmus.html Precursory papers on interval analysis by M. Warmus]</ref> though Moore found the first non-trivial applications.
 
In the following twenty years, German groups of researchers carried out pioneering work around Götz Alefeld<ref>{{cite book|last1=Alefeld|first1=Götz|last2=Herzberger|first2=Jürgen|title=Einführung in die Intervallrechnung|series=Reihe Informatik|volume=12|publisher=B.I.-Wissenschaftsverlag|location=Mannheim - Wien - Zürich|isbn=3-411-01466-0|language=German}}</ref> and Ulrich Kulisch<ref name="Kulisch"/> at the [[University of Karlsruhe]] and later also at the [[University of Wuppertal|Bergische University of Wuppertal]].
For example, Karl Nickel explored more effective implementations, while improved containment procedures for the solution set of systems of equations were due to Arnold Neumaier among others.<ref>[http://www.mat.univie.ac.at/~neum/publist.html Publications by Arnold Neumaier]</ref> In the 1960s Eldon R. Hansen dealt with interval extensions for linear equations and then provided crucial contributions to global optimisation, including what is now known as Hansen's method, perhaps the most widely used interval algorithm.<ref name="Hansen"/> Classical methods in this often are have the problem of determining the largest (or smallest) global value, but could only find a local optimum and could not find better values;
Helmut Ratschek and Jon George Rokne developed [[branch and bound]] methods, which till then had only applied to integer values, by using intervals to provide applications for continuous values.<ref>[http://pages.cpsc.ucalgary.ca/~rokne/#SEC3  Some publications of Jon Rokne]</ref>
 
In 1988, Rudolf Lohner developed [[Fortran]]-based software for reliable solutions for initial value problems using [[ordinary differential equations]].<ref>[http://fam-pape.de/raw/ralph/studium/dgl/dglsem.html Bounds for ordinary differential equations of Rudolf Lohner] (in German)</ref>
 
The journal ''Reliable Computing'' (originally ''Interval Computations'') has been published since the 1990s, dedicated to the reliability of computer-aided computations. As lead editor, R. Baker Kearfott, in addition to his work on global optimisation, has contributed significantly to the unification of notation and terminology used in interval arithmetic ([[#External links|Web]]: Kearfott).
 
In recent years work has concentrated in particular on the estimation of [[preimage]]s of parameterised functions and to robust control theory by the COPRIN working group of [[INRIA]] in [[Sophia Antipolis]] in France ([[#External links|Web]]: INRIA).
 
==Patents==
One of the main sponsors of the interval arithmetic, G. William Walster of [[Sun Microsystems]], has lodged several patents in the field of interval arithmetic at the [[U.S. Patent and Trademark Office]] in the years 2002&ndash;04.<ref>[http://www.mat.univie.ac.at/coconut-environment/#patents Patent Issues in Interval Arithmetic]</ref> The validity of these patent applications have been disputed in the interval arithmetic research community, since they may possibly only show the past state of the art.
 
==Implementations==
There are many software packages that permit the development of numerical applications using interval arithmetic.<ref>[http://www.cs.utep.edu/interval-comp/main.html  Software for Interval Computations collected by [[Vladik Kreinovich]] ], [[University of Texas at El Paso]]</ref>
These are usually provided in the form of program libraries.
There are also [[C++]] and Fortran [[compiler]]s that handle interval data types and suitable operations as a language extension, so interval arithmetic is supported directly.
 
Since 1967 ''Extensions for Scientific Computation'' (XSC) have been developed in the University of Karlsruhe for various [[programming language]]s, such as C++, Fortran and [[Pascal (programming language)|Pascal]].<ref>[http://www.math.uni-wuppertal.de/org/WRST/xsc/history.html History of XSC-Languages]</ref> The first platform was a [[Zuse]] [[Z23 (computer)|Z 23]], for which a new interval data type with appropriate elementary operators was made available. There followed in 1976 Pascal-SC, a Pascal variant on a [[Zilog Z80]] which it made possible to create fast complicated routines for automated result verification. Then came the Fortran 77-based ACRITH XSC for the [[System/370]] architecture, which was later delivered by IBM. Starting from 1991 one could produce code for [[C (programming language)|C]] compilers with [[Pascal-XSC]]; a year later the C++ class library supported C-XSC on  many different computer systems. In 1997 all XSC variants were made available under the [[GNU General Public License]]. At the beginning of 2000 C-XSC 2.0 was released under the leadership of the working group for scientific computation at the Bergische University of Wuppertal, in order to correspond to the improved C++ standard.
 
Another C++-class library was created in 1993 at the [[Hamburg University of Technology]] called ''Profil/BIAS'' (Programmer's Runtime Optimized Fast Interval Library, Basic Interval Arithmetic), which made the usual interval operations more user friendly. It emphasized the efficient use of hardware, portability and independence of a particular presentation of intervals.
 
The [[Boost (C++ libraries)|Boost collection]] of C++ libraries contains a template class for intervals. Its authors are aiming to have interval arithmetic in the standard C++ language.<ref>[http://www-sop.inria.fr/members/Sylvain.Pion/cxx/ A Proposal to add Interval Arithmetic to the C++ Standard Library]</ref>
 
Gaol<ref>[http://sourceforge.net/projects/gaol Gaol is Not Just Another Interval Arithmetic Library]</ref> is another C++ interval arithmetic library that is unique in that it offers the relational interval operators used in interval [[constraint programming]].
 
The [[Frink]] programming language has an implementation of interval arithmetic which can handle [[arbitrary-precision arithmetic|arbitrary-precision number]]s.  Programs written in Frink can use intervals without rewriting or recompilation.
 
In addition computer algebra systems, such as [[Mathematica]], [[Maple (software)|Maple]] and [[MuPAD]], can handle intervals. There is a [[Matlab]] extension ''Intlab'' which builds on [[BLAS]] routines, as well as the Toolbox b4m which makes a Profil/BIAS interface.<ref>[http://www.ti3.tu-harburg.de/~rump/intlab/ INTerval LABoratory] and [http://www.ti3.tu-harburg.de/zemke/b4m/ b4m]</ref> Moreover, the Software [[Euler (software)|Euler Math Toolbox]] includes an interval arithmetic.
 
== IEEE Interval Standard – P1788 ==
An IEEE Interval Standard<ref>[http://grouper.ieee.org/groups/1788/ IEEE Interval Standard Working Group - P1788]</ref> is currently under development.
 
== Conferences and Workshop ==
Several international conferences or workshop take place every year in the world.
The main conference is probably SCAN (International Symposium on Scientific Computing, Computer Arithmetic, and Verified Numerical Computation), but there is also SWIM (Small Workshop on Interval Methods), PPAM (International Conference on Parallel Processing and Applied Mathematics), REC (International Workshop on Reliable Engineering Computing).
 
== See also ==
* [[Affine arithmetic]]
* [[Automatic differentiation]]
* [[Multigrid method]]
* [[Monte-Carlo simulation]]
* [[Interval finite element]]
* [[Fuzzy number]]
* [[Significant figures]]
 
==References==
{{Reflist|2}}
 
==Further reading==
* {{cite journal|last=Hayes|first=Brian|date=November–December 2003|title=A Lucid Interval|journal=American Scientist|publisher=Sigma Xi|volume=91|issue=6|pages=484–488|url=http://www.cs.utep.edu/interval-comp/hayes.pdf}}
 
== External links ==
* [http://www-sop.inria.fr/coprin/logiciels/ALIAS/Movie/movie_undergraduate.mpg Introductory Film (mpeg)] of the [http://www-sop.inria.fr/coprin/index_english.html COPRIN] teams of [[INRIA]], [[Sophia Antipolis]]
* [http://interval.louisiana.edu/kearfott.html Bibliography of R. Baker Kearfott], [[University of Louisiana at Lafayette]]
* [http://www.mat.univie.ac.at/~neum/interval.html Interval Methods from Arnold Neumaier], [[University of Vienna]]
* [http://www.ti3.tu-harburg.de/rump/intlab/ INTLAB, Institute for Reliable Computing], [[Hamburg University of Technology]]
 
{{Data types}}
 
{{DEFAULTSORT:Interval Arithmetic}}
[[Category:Arithmetic]]
[[Category:Computer arithmetic]]
[[Category:Numerical analysis]]
[[Category:Uncertainty of numbers]]
[[Category:Data types]]
[[Category:Articles with images not understandable by color blind users]]

Revision as of 22:08, 6 May 2013

Tolerance function (turquoise) and interval-valued approximation (red)

Interval arithmetic, interval mathematics, interval analysis, or interval computation, is a method developed by mathematicians since the 1950s and 1960s as an approach to putting bounds on rounding errors and measurement errors in mathematical computation and thus developing numerical methods that yield reliable results. Very simply put, it represents each value as a range of possibilities. For example, instead of estimating the height of someone using standard arithmetic as 2.0 meters, using interval arithmetic we might be certain that that person is somewhere between 1.97 and 2.03 meters.

Whereas classical arithmetic defines operations on individual numbers, interval arithmetic defines a set of operations on intervals:

T · S = { x | there is some y in T, and some z in S, such that x = y · z }.

The basic operations of interval arithmetic are, for two intervals [a, b] and [c, d] that are subsets of the real line (-∞, ∞),

  • [a, b] + [c, d] = [a + c, b + d],
  • [a, b] − [c, d] = [ad, bc],
  • [a, b] × [c, d] = [min (a × c, a × d, b × c, b × d), max (a × c, a × d, b × c, b × d)],
  • [a, b] ÷ [c, d] = [min (a ÷ c, a ÷ d, b ÷ c, b ÷ d), max (a ÷ c, a ÷ d, b ÷ c, b ÷ d)] when 0 is not in [c, d].

Division by an interval containing zero is not defined under the basic interval arithmetic. The addition and multiplication operations are commutative, associative and sub-distributive: the set X ( Y + Z ) is a subset of XY + XZ.

Instead of working with an uncertain real x we work with the two ends of the interval [a,b] which contains x: x lies between a and b, or could be one of them. Similarly a function f when applied to x is also uncertain. Instead, in interval arithmetic f produces an interval [c,d] which is all the possible values for f(x) for all x[a,b].

This concept is suitable for a variety of purposes. The most common use is to keep track of and handle rounding errors directly during the calculation and of uncertainties in the knowledge of the exact values of physical and technical parameters. The latter often arise from measurement errors and tolerances for components or due to limits on computational accuracy. Interval arithmetic also helps find reliable and guaranteed solutions to equations and optimization problems.

Introduction

The main focus in the interval arithmetic is on the simplest way to calculate upper and lower endpoints for the range of values of a function in one or more variables. These barriers are not necessarily the supremum or infimum, since the precise calculation of those values can be difficult or impossible; it can be shown that that task is in general NP-hard.

Treatment is typically limited to real intervals, so quantities of form

[a,b]={x|axb},

where a= and b= are allowed; with one of them infinite we would have an unbounded interval, while with both infinite we would have the extended real number line.

As with traditional calculations with real numbers, simple arithmetic operations and functions on elementary intervals must first be defined.[1] More complicated functions can be calculated from these basic elements.[1]

Example

Body Mass Index for a person 1.80m tall in relation to body weight m (in kilograms).

Take as an example the calculation of body mass index (BMI). The BMI is the body weight in kilograms divided by the square of height in metres. Measuring the mass with bathroom scales may have an accuracy of one kilogram. We will not know intermediate values - about 79.6 kg or 80.3 kg - but information rounded to the nearest whole number. It is unlikely that when the scale reads 80 kg, someone really weighs exactly 80.0 kg. In normal rounding to the nearest value, the scales showing 80 kg indicates a weight between 79.5 kg and 80.5 kg. The relevant range is that of all real numbers that are greater than or equal to 79.5, while less than or equal to 80.5, or in other words the interval [79.5,80.5].

For a man who weighs 80 kg and is 1.80 m tall, the BMI is about 24.7. With a weight of 79.5 kg and the same height the value is 24.5, while 80.5 kilograms gives almost 24.9. So the actual BMI is in the range [24.5,24.9]. The error in this case does not affect the conclusion (normal weight), but this is not always the position. For example, weight fluctuates in the course of a day so that the BMI can vary between 24 (normal weight) and 25 (overweight). Without detailed analysis it is not possible to always exclude questions as to whether an error ultimately is large enough to have significant influence.

Interval arithmetic states the range of possible outcomes explicitly. Simply put, results are no longer stated as numbers, but as intervals which represent imprecise values. The size of the intervals are similar to error bars to a metric in expressing the extent of uncertainty. Simple arithmetic operations, such as basic arithmetic and trigonometric functions, enable the calculation of outer limits of intervals.

Simple arithmetic

Body mass index for different weights in relation to height L (in metres).

Returning to the earlier BMI example, in determining the body mass index, height and body weight both affect the result. For height, measurements are usually in round centimetres: a recorded measurement of 1.80 metres actually means a height somewhere between 1.795 m and 1.805 m. This uncertainty must be combined with the fluctuation range in weight between 79.5 kg and 80.5 kg. The BMI is defined as the weight in kilograms divided by the square of height in metre. Using either 79.5 kg and 1.795 m or 80.5 kg and 1.805 m gives approximately 24.7. But the person in question may only be 1.795 m tall, with a weight of 80.5 kilograms - or 1.805 m and 79.5 kilograms: all combinations of all possible intermediate values must be considered. Using the interval arithmetic methods described below, the BMI lies in the interval

[79.5;80.5]/([1.795;1.805])2=[24.4;25.0].

An operation op, such as addition or multiplication, on two intervals is defined by

[x1,x2]op[y1,y2]={xopy|x[x1,x2]andy[y1,y2]}.

For the four basic arithmetic operations this can become

[][x1,x2]op[y1,y2]=[min(x1opy1,x1opy2,x2opy1,x2opy2),max(x1opy1,x1opy2,x2opy1,x2opy2)],

provided that xopy is allowed for all x[x1,x2] and y[y1,y2].

For practical applications this can be simplified further:

For division by an interval including zero, first define

1/[y1,0]=[,1/y1] and 1/[0,y2]=[1/y2,].

For y1<0<y2, we get 1/[y1,y2]=[,1/y1][1/y2,] which as a single interval gives 1/[y1,y2]=[,]; this loses useful information about (1/y1,1/y2). So typically it is common to work with [,1/y1] and [1/y2,] as separate intervals.

Because several such divisions may occur in an interval arithmetic calculation, it is sometimes useful to do the calculation with so-called multi-intervals of the form i=1l[xi1,xi2]. The corresponding multi-interval arithmetic maintains a disjoint set of intervals and also provides for overlapping intervals to unite.[2]Template:Page needed

Since a real number r can be interpreted as the interval [r,r], intervals and real number can be freely and easily combined.

With the help of these definitions, it is already possible to calculate the range of simple functions, such as f(a,b,x)=ax+b. If, for examplea=[1,2], b=[5,7] and x=[2,3], it is clear

f(a,b,x)=([1,2][2,3])+[5,7]=[12,23]+[5,7]=[7,13].

Interpreting this as a function f(a,b,x) of the variable x with interval parameters a and b, then it is possible to find the roots of this function. It is then

f([1,2],[5,7],x)=([1,2]x)+[5,7]=0[1,2]x=[7,5]x=[7,5]/[1,2],

the possible zeros are in the interval [7,2.5].

Multiplication of positive intervals

As in the above example, the multiplication of intervals often only requires two multiplications. It is in fact

[x1,x2][y1,y2]=[x1y1,x2y2], if x1,y10.

The multiplication can be seen as a destination area of a rectangle with varying edges. The result interval covers all levels from the smallest to the largest.

The same applies when one of the two intervals is non-positive and the other non-negative. Generally, multiplication can produce results as wide as [,], for example if 0 is squared. This also occurs, for example, in a division, if the numerator and denominator both contain zero.

Notation

To make the notation of intervals smaller in formulae, brackets can be used.

So we can use [x][x1,x2] to represent an interval. For the set of all finite intervals, we can use

[]:={[x1,x2]|x1x2 and x1,x2{,}}

as an abbreviation. For a vector of intervals ([x]1,,[x]n)[]n we can also use a bold font: [𝐱].

Note that in such a compact notation, [x] should not be confused between a so-called improper or single point interval [x1,x1] and the lower and upper limit.

Elementary functions

Values of a monotonic function

Interval methods can also apply to functions which do not just use simple arithmetic, and we must also use other basic functions for redefining intervals, using already known monotonicity properties.

For monotonic functions in one variable, the range of values is also easy. If f: is monotonically rising or falling in the interval [x1,x2], then for all values in the interval y1,y2[x1,x2] such that y1y2, one of the following inequalities applies:

f(y1)f(y2), or f(y1)f(y2).

The range corresponding to the interval [y1,y2][x1,x2] can be calculated by applying the function to the endpoints y1 and y2:

f([y1,y2])=[min{f(y1),f(y2)},max{f(y1),f(y2)}].

From this the following basic features for interval functions can easily be defined:

For even powers, the range of values being considered is important, and needs to be dealt with before doing any multiplication. For example xn for x[1,1] should produce the interval [0,1] when n=2,4,6,. But if [1,1]n is taken by applying interval multiplication of form [1,1][1,1] then the result will appear to be [1,1], wider than necessary.

Instead consider the function xn as a monotonically decreasing function for x<0 and a monotonically increasing function for x>0. So for even n:

More generally, one can say that for piecewise monotonic functions it is sufficient to consider the endpoints x1,x2 of the interval [x1,x2], together with the so-called critical points within the interval being those points where the monotonicity of the function changes direction.

For the sine and cosine functions, the critical points are at (1/2+n)π or nπ for all n respectively. Only up to five points matter as the resulting interval will be [1,1] if the interval includes at least two extrema. For sine and cosine, only the endpoints need full evaluation as the critical points lead to easily pre-calculated values – namely -1, 0, +1.

Interval extensions of general functions

In general, it may not be easy to find such a simple description of the output interval for many functions. But it may still be possible to extend functions to interval arithmetic. If f:n is a function from a real vector to a real number, then  [f]:[]n[] is called an interval extension of f if

[f]([𝐱]){f(𝐲)|𝐲[𝐱]}.

This definition of the interval extension does not give a precise result. For example, both [f]([x1,x2])=[ex1,ex2] and [g]([x1,x2])=[,] are allowable extensions of the exponential function. Extensions as tight as possible are desirable, taking into the relative costs of calculation and imprecision; in this case [f] should be chosen as it give the tightest possible result.

The natural interval extension is achieved by combining the function rule f(x1,,xn) with the equivalents of the basic arithmetic and elementary functions.

The Taylor interval extension (of degree k ) is a k+1 times differentiable function f defined by

[f]([𝐱]):=f(𝐲)+i=1k1i!Dif(𝐲)([𝐱]𝐲)i+[r]([𝐱],[𝐱],𝐲),

for some 𝐲[𝐱], where Dif(𝐲) is the ith order differential of f at the point 𝐲 and [r] is an interval extension of the Taylor remainder

r(𝐱,ξ,𝐲)=1(k+1)!Dk+1f(ξ)(𝐱𝐲)k+1.
Mean value form

The vector ξ lies between 𝐱 and 𝐲 with 𝐱,𝐲[𝐱], ξ is protected by [𝐱]. Usually one chooses 𝐲 to be the midpoint of the interval and uses the natural interval extension to assess the remainder.

The special case of the Taylor interval extension of degree k=0 is also referred to as the mean value form. For an interval extension of the Jacobian [Jf]([𝐱]) we get

[f]([𝐱]):=f(𝐲)+[Jf]([𝐱])([𝐱]𝐲).

A nonlinear function can be defined by linear features.

Complex interval arithmetic

An interval can also be defined as a locus of points at a given distance from the centre, and this definition can be extended from real numbers to complex numbers.[3] As it is the case with computing with real numbers, computing with complex numbers involves uncertain data. So, given the fact that an interval number is a real closed interval and a complex number is an ordered pair of real numbers, there is no reason to limit the application of interval arithmetic to the measure of uncertainties in computations with real numbers.[4] Interval arithmetic can thus be extended, via complex interval numbers, to determine regions of uncertainty in computing with complex numbers.[4]

The basic algebraic operations for real interval numbers (real closed intervals) can be extended to complex numbers. It is therefore not surprising that complex interval arithmetic is similar to, but not the same as, ordinary complex arithmetic.[4] It can be shown that, as it is the case with real interval arithmetic, there is no distributivity between addition and multiplication of complex interval numbers except for certain special cases, and inverse elements do not always exist for complex interval numbers.[4] Two other useful properties of ordinary complex arithmetic fail to hold in complex interval arithmetic: the additive and multiplicative properties, of ordinary complex conjugates, do not hold for complex interval conjugates.[4]

Interval arithmetic can be extended, in an analogous manner, to other multidimensional number systems such as quaternions and octonions, but with the expense that we have to sacrifice other useful properties of ordinary arithmetic.[4]

Interval methods

The methods of classical numerical analysis can not be transferred one-to-one into interval-valued algorithms, as dependencies between numerical values are usually not taken into account.

Rounded interval arithmetic

Outer bounds at different level of rounding

In order to work effectively in a real-life implementation, intervals must be compatible with floating point computing. The earlier operations were based on exact arithmetic, but in general fast numerical solution methods may not be available. The range of values of the function f(x,y)=x+y for x[0.1,0.8] and y[0.06,0.08] are for example [0.16,0.88]. Where the same calculation is done with single digit precision, the result would normally be [0.2,0.9]. But [0.2,0.9]⊉[0.16,0.88], so this approach would contradict the basic principles of interval arithmetic, as a part of the domain of f([0.1,0.8],[0.06,0.08]) would be lost. Instead, it is the outward rounded solution [0.1,0.9] which is used.

The standard IEEE 754 for binary floating-point arithmetic also sets out procedures for the implementation of rounding. An IEEE 754 compliant system allows programmers to round to the nearest floating point number; alternatives are rounding towards 0 (truncating), rounding toward positive infinity (i.e. up), or rounding towards negative infinity (i.e. down).

The required external rounding for interval arithmetic can thus be achieved by changing the rounding settings of the processor in the calculation of the upper limit (up) and lower limit (down). Alternatively, an appropriate small interval [ε1,ε2] can be added.

Dependency problem

Approximate estimate of the value range

The so-called dependency problem is a major obstacle to the application of interval arithmetic. Although interval methods can determine the range of elementary arithmetic operations and functions very accurately, this is not always true with more complicated functions. If an interval occurs several times in a calculation using parameters, and each occurrence is taken independently then this can lead to an unwanted expansion of the resulting intervals.

Treating each occurrence of a variable independently

As an illustration, take the function f defined by f(x)=x2+x. The values of this function over the interval [1,1] are really [1/4,2]. As the natural interval extension, it is calculated as [1,1]2+[1,1]=[0,1]+[1,1]=[1,2], which is slightly larger; we have instead calculated the infimum and supremum of the function h(x,y)=x2+y over x,y[1,1]. There is a better expression of f in which the variable x only appears once, namely by rewriting f(x)=x2+x as addition and squaring in the quadratic f(x)=(x+12)214.

So the suitable interval calculation is

([1,1]+12)214=[12,32]214=[0,94]14=[14,2]

and gives the correct values.

In general, it can be shown that the exact range of values can be achieved, if each variable appears only once and if f is continuous inside the box. However, not every function can be rewritten this way.

Wrapping effect

The dependency of the problem causing over-estimation of the value range can go as far as covering a large range, preventing more meaningful conclusions.

An additional increase in the range stems from the solution of areas that do not take the form of an interval vector. The solution set of the linear system

x=py=p

for p[1,1] is precisely the line between the points (1,1) and (1,1). Interval methods deliver the best case, but in the square [1,1]×[1,1], The real solution is contained in this square (this is known as the wrapping effect).

Linear interval systems

A linear interval system consists of a matrix interval extension [𝐀][]n×m and an interval vector [𝐛][]n. We want the smallest cuboid [𝐱][]m, for all vectors 𝐱m which there is a pair (𝐀,𝐛) with 𝐀[𝐀] and 𝐛[𝐛] satisfying

𝐀𝐱=𝐛.

For quadratic systems – in other words, for n=m – there can be such an interval vector [𝐱], which covers all possible solutions, found simply with the interval Gauss method. This replaces the numerical operations, in that the linear algebra method known as Gaussian elimination becomes its interval version. However, since this method uses the interval entities[𝐀] and [𝐛] repeatedly in the calculation, it can produce poor results for some problems. Hence using the result of the interval-valued Gauss only provides first rough estimates, since although it contains the entire solution set, it also has a large area outside it.

A rough solution [𝐱] can often be improved by an interval version of the Gauss–Seidel method. The motivation for this is that the i-th row of the interval extension of the linear equation

([a11][a1n][an1][ann])(x1xn)=([b1][bn])

can be determined by the variable xi if the division 1/[aii] is allowed. It is therefore simultaneously

xj[xj] and xj[bi]kj[aik][xk][aii].

So we can now replace [xj] by

[xj][bi]kj[aik][xk][aii],

and so the vector [𝐱] by each element. Since the procedure is more efficient for a diagonally dominant matrix, instead of the system [𝐀]𝐱=[𝐛], one can often try multiplying it by an appropriate rational matrix 𝐌 with the resulting matrix equation

(𝐌[𝐀])𝐱=𝐌[𝐛]

left to solve. If one chooses, for example, 𝐌=𝐀1 for the central matrix 𝐀[𝐀], then 𝐌[𝐀] is outer extension of the identity matrix.

These methods only work well if the widths of the intervals occurring are sufficiently small. For wider intervals it can be useful to use an interval-linear system on finite (albeit large) real number equivalent linear systems. If all the matrices 𝐀[𝐀] are invertible, it is sufficient to consider all possible combinations (upper and lower) of the endpoints occurring in the intervals. The resulting problems can be resolved using conventional numerical methods. Interval arithmetic is still used to determine rounding errors.

This is only suitable for systems of smaller dimension, since with a fully occupied n×n matrix, 2n2 real matrices need to be inverted, with 2n vectors for the right hand side. This approach was developed by Jiri Rohn and is still being developed.[5]

Interval Newton method

Reduction of the search area in the interval Newton step in "thick" functions

An interval variant of Newton's method for finding the zeros in an interval vector [𝐱] can be derived from the average value extension.[6] For an unknown vector 𝐳[𝐱] applied to 𝐲[𝐱], gives

f(𝐳)f(𝐲)+[Jf]([𝐱])(𝐳𝐲).

For a zero 𝐳, that is f(z)=0, and thus must satisfy

f(𝐲)+[Jf]([𝐱])(𝐳𝐲)=0.

This is equivalent to 𝐳𝐲[Jf]([𝐱])1f(𝐲). An outer estimate of [Jf]([𝐱])1f(𝐲)) can be determined using linear methods.

In each step of the interval Newton method, an approximate starting value [𝐱][]n is replaced by [𝐱](𝐲[Jf]([𝐱])1f(𝐲)) and so the result can be improved iteratively. In contrast to traditional methods, the interval method approaches the result by containing the zeros. This guarantees that the result will produce all the zeros in the initial range. Conversely, it will prove that no zeros of f were in the initial range [𝐱] if a Newton step produces the empty set.

The method converges on all zeros in the starting region. Division by zero can lead to separation of distinct zeros, though the separation may not be complete; it can be complemented by the bisection method.

As an example, consider the function f(x)=x22, the starting range [x]=[2,2], and the point y=0. We then have Jf(x)=2x and the first Newton step gives

[2,2](012[2,2](02))=[2,2]([,0.5][0.5,])=[2,0.5][0.5,2].

More Newton steps are used separately on x[2,0.5] and [0.5,2]. These converge to arbitrarily small intervals around 2 and +2.

The Interval Newton method can also be used with thick functions such as g(x)=x2[2,3], which would in any case have interval results. The result then produces intervals containing [3,2][2,3].

Bisection and covers

Rough estimate (turquoise) and improved estimates through "mincing" (red)

The various interval methods deliver conservative results as dependencies between the sizes of different intervals extensions are not taken into account. However the dependency problem becomes less significant for narrower intervals.

Covering an interval vector [𝐱] by smaller boxes [𝐱1],,[𝐱k], so that [𝐱]=i=1k[𝐱i], is then valid for the range of values f([𝐱])=i=1kf([𝐱i]). So for the interval extensions described above, [f]([𝐱])i=1k[f]([𝐱i]) is valid. Since [f]([𝐱]) is often a genuine superset of the right-hand side, this usually leads to an improved estimate.

Such a cover can be generated by the bisection method such as thick elements [xi1,xi2] of the interval vector [𝐱]=([x11,x12],,[xn1,xn2]) by splitting in the centre into the two intervals [xi1,(xi1+xi2)/2] and [(xi1+xi2)/2,xi2]. If the result is still not suitable then further gradual subdivision is possible. Note that a cover of 2r intervals results from r divisions of vector elements, substantially increasing the computation costs.

With very wide intervals, it can be helpful to split all intervals into several subintervals with a constant (and smaller) width, a method known as mincing. This then avoids the calculations for intermediate bisection steps. Both methods are only suitable for problems of low dimension.

Application

Interval arithmetic can be use in various areas (such as set inversion, motion planning, set estimation or stability analysis), in order to be treated estimates for which no exact numerical values can stated.[7]

Rounding error analysis

Interval arithmetic is used with error analysis, to control rounding errors arising from each calculation. The advantage of interval arithmetic is that after each operation there is an interval which reliably includes the true result. The distance between the interval boundaries gives the current calculation of rounding errors directly:

Error = abs(ab) for a given interval [a,b].

Interval analysis adds to rather than substituting for traditional methods for error reduction, such as pivoting.

Tolerance analysis

Parameters for which no exact figures can be allocated often arise during the simulation of technical and physical processes. The production process of technical components allows certain tolerances, so some parameters fluctuate within intervals. In addition, many fundamental constants are not known precisely.[2]

If the behavior of such a system affected by tolerances satisfies, for example, f(𝐱,𝐩)=0, for 𝐩[𝐩] and unknown 𝐱 then the set of possible solutions

{𝐱|𝐩[𝐩],f(𝐱,𝐩)=0},

can be found by interval methods. This provides an alternative to traditional propagation of error analysis. Unlike point methods, such as Monte Carlo simulation, interval arithmetic methodology ensures that no part of the solution area can be overlooked. However, the result is always a worst case analysis for the distribution of error, as other probability-based distributions are not considered.

Fuzzy interval arithmetic

Approximation of the normal distribution by a sequence of intervals

Interval arithmetic can also be used with affiliation functions for fuzzy quantities as they are used in fuzzy logic. Apart from the strict statements x[x] and x∉[x], intermediate values are also possible, to which real numbers μ[0,1] are assigned. μ=1 corresponds to definite membership while μ=0 is non-membership. A distribution function assigns uncertainty which can be understood as a further interval.

For fuzzy arithmetic[8] only a finite number of discrete affiliation stages μi[0,1] are considered. The form of such a distribution for an indistinct value can then represented by a sequence of intervals

[x(1)][x(2)][x(k)]. The interval [x(i)] corresponds exactly to the fluctuation range for the stage μi.

The appropriate distribution for a function f(x1,,xn) concerning indistinct values x1,,xn and the corresponding sequences [x1(1)][x1(k)],,[xn(1)][xn(k)] can be approximated by the sequence [y(1)][y(k)]. The values [y(i)] are given by [y(i)]=f([x1(i)],[xn(i)]) and can be calculated by interval methods. The value [y(1)] corresponds to the result of an interval calculation.

History

Interval arithmetic is not a completely new phenomenon in mathematics; it has appeared several times under different names in the course of history. For example Archimedes calculated lower and upper bounds 223/71 < π < 22/7 in the 3rd century BC. Actual calculation with intervals has neither been as popular as other numerical techniques, nor been completely forgotten.

Rules for calculating with intervals and other subsets of the real numbers were published in a 1931 work by Rosalind Cicely Young, a doctoral candidate at the University of Cambridge. Arithmetic work on range numbers to improve reliability of digital systems were then published in a 1951 textbook on linear algebra by Paul Dwyer (University of Michigan); intervals were used to measure rounding errors associated with floating-point numbers. A comprehensive paper on interval algebra in numerical analysis was published by Sunaga (1958).[9]

The birth of modern interval arithmetic was marked by the appearance of the book Interval Analysis by Ramon E. Moore in 1966.[10][11] He had the idea in Spring 1958, and a year later he published an article about computer interval arithmetic.[12] Its merit was that starting with a simple principle, it provided a general method for automated error analysis, not just errors resulting from rounding.

Independently in 1956, Mieczyslaw Warmus suggested formulae for calculations with intervals,[13] though Moore found the first non-trivial applications.

In the following twenty years, German groups of researchers carried out pioneering work around Götz Alefeld[14] and Ulrich Kulisch[1] at the University of Karlsruhe and later also at the Bergische University of Wuppertal. For example, Karl Nickel explored more effective implementations, while improved containment procedures for the solution set of systems of equations were due to Arnold Neumaier among others.[15] In the 1960s Eldon R. Hansen dealt with interval extensions for linear equations and then provided crucial contributions to global optimisation, including what is now known as Hansen's method, perhaps the most widely used interval algorithm.[6] Classical methods in this often are have the problem of determining the largest (or smallest) global value, but could only find a local optimum and could not find better values; Helmut Ratschek and Jon George Rokne developed branch and bound methods, which till then had only applied to integer values, by using intervals to provide applications for continuous values.[16]

In 1988, Rudolf Lohner developed Fortran-based software for reliable solutions for initial value problems using ordinary differential equations.[17]

The journal Reliable Computing (originally Interval Computations) has been published since the 1990s, dedicated to the reliability of computer-aided computations. As lead editor, R. Baker Kearfott, in addition to his work on global optimisation, has contributed significantly to the unification of notation and terminology used in interval arithmetic (Web: Kearfott).

In recent years work has concentrated in particular on the estimation of preimages of parameterised functions and to robust control theory by the COPRIN working group of INRIA in Sophia Antipolis in France (Web: INRIA).

Patents

One of the main sponsors of the interval arithmetic, G. William Walster of Sun Microsystems, has lodged several patents in the field of interval arithmetic at the U.S. Patent and Trademark Office in the years 2002–04.[18] The validity of these patent applications have been disputed in the interval arithmetic research community, since they may possibly only show the past state of the art.

Implementations

There are many software packages that permit the development of numerical applications using interval arithmetic.[19] These are usually provided in the form of program libraries. There are also C++ and Fortran compilers that handle interval data types and suitable operations as a language extension, so interval arithmetic is supported directly.

Since 1967 Extensions for Scientific Computation (XSC) have been developed in the University of Karlsruhe for various programming languages, such as C++, Fortran and Pascal.[20] The first platform was a Zuse Z 23, for which a new interval data type with appropriate elementary operators was made available. There followed in 1976 Pascal-SC, a Pascal variant on a Zilog Z80 which it made possible to create fast complicated routines for automated result verification. Then came the Fortran 77-based ACRITH XSC for the System/370 architecture, which was later delivered by IBM. Starting from 1991 one could produce code for C compilers with Pascal-XSC; a year later the C++ class library supported C-XSC on many different computer systems. In 1997 all XSC variants were made available under the GNU General Public License. At the beginning of 2000 C-XSC 2.0 was released under the leadership of the working group for scientific computation at the Bergische University of Wuppertal, in order to correspond to the improved C++ standard.

Another C++-class library was created in 1993 at the Hamburg University of Technology called Profil/BIAS (Programmer's Runtime Optimized Fast Interval Library, Basic Interval Arithmetic), which made the usual interval operations more user friendly. It emphasized the efficient use of hardware, portability and independence of a particular presentation of intervals.

The Boost collection of C++ libraries contains a template class for intervals. Its authors are aiming to have interval arithmetic in the standard C++ language.[21]

Gaol[22] is another C++ interval arithmetic library that is unique in that it offers the relational interval operators used in interval constraint programming.

The Frink programming language has an implementation of interval arithmetic which can handle arbitrary-precision numbers. Programs written in Frink can use intervals without rewriting or recompilation.

In addition computer algebra systems, such as Mathematica, Maple and MuPAD, can handle intervals. There is a Matlab extension Intlab which builds on BLAS routines, as well as the Toolbox b4m which makes a Profil/BIAS interface.[23] Moreover, the Software Euler Math Toolbox includes an interval arithmetic.

IEEE Interval Standard – P1788

An IEEE Interval Standard[24] is currently under development.

Conferences and Workshop

Several international conferences or workshop take place every year in the world. The main conference is probably SCAN (International Symposium on Scientific Computing, Computer Arithmetic, and Verified Numerical Computation), but there is also SWIM (Small Workshop on Interval Methods), PPAM (International Conference on Parallel Processing and Applied Mathematics), REC (International Workshop on Reliable Engineering Computing).

See also

References

43 year old Petroleum Engineer Harry from Deep River, usually spends time with hobbies and interests like renting movies, property developers in singapore new condominium and vehicle racing. Constantly enjoys going to destinations like Camino Real de Tierra Adentro.

Further reading

  • One of the biggest reasons investing in a Singapore new launch is an effective things is as a result of it is doable to be lent massive quantities of money at very low interest rates that you should utilize to purchase it. Then, if property values continue to go up, then you'll get a really high return on funding (ROI). Simply make sure you purchase one of the higher properties, reminiscent of the ones at Fernvale the Riverbank or any Singapore landed property Get Earnings by means of Renting

    In its statement, the singapore property listing - website link, government claimed that the majority citizens buying their first residence won't be hurt by the new measures. Some concessions can even be prolonged to chose teams of consumers, similar to married couples with a minimum of one Singaporean partner who are purchasing their second property so long as they intend to promote their first residential property. Lower the LTV limit on housing loans granted by monetary establishments regulated by MAS from 70% to 60% for property purchasers who are individuals with a number of outstanding housing loans on the time of the brand new housing purchase. Singapore Property Measures - 30 August 2010 The most popular seek for the number of bedrooms in Singapore is 4, followed by 2 and three. Lush Acres EC @ Sengkang

    Discover out more about real estate funding in the area, together with info on international funding incentives and property possession. Many Singaporeans have been investing in property across the causeway in recent years, attracted by comparatively low prices. However, those who need to exit their investments quickly are likely to face significant challenges when trying to sell their property – and could finally be stuck with a property they can't sell. Career improvement programmes, in-house valuation, auctions and administrative help, venture advertising and marketing, skilled talks and traisning are continuously planned for the sales associates to help them obtain better outcomes for his or her shoppers while at Knight Frank Singapore. No change Present Rules

    Extending the tax exemption would help. The exemption, which may be as a lot as $2 million per family, covers individuals who negotiate a principal reduction on their existing mortgage, sell their house short (i.e., for lower than the excellent loans), or take part in a foreclosure course of. An extension of theexemption would seem like a common-sense means to assist stabilize the housing market, but the political turmoil around the fiscal-cliff negotiations means widespread sense could not win out. Home Minority Chief Nancy Pelosi (D-Calif.) believes that the mortgage relief provision will be on the table during the grand-cut price talks, in response to communications director Nadeam Elshami. Buying or promoting of blue mild bulbs is unlawful.

    A vendor's stamp duty has been launched on industrial property for the primary time, at rates ranging from 5 per cent to 15 per cent. The Authorities might be trying to reassure the market that they aren't in opposition to foreigners and PRs investing in Singapore's property market. They imposed these measures because of extenuating components available in the market." The sale of new dual-key EC models will even be restricted to multi-generational households only. The models have two separate entrances, permitting grandparents, for example, to dwell separately. The vendor's stamp obligation takes effect right this moment and applies to industrial property and plots which might be offered inside three years of the date of buy. JLL named Best Performing Property Brand for second year running

    The data offered is for normal info purposes only and isn't supposed to be personalised investment or monetary advice. Motley Fool Singapore contributor Stanley Lim would not personal shares in any corporations talked about. Singapore private home costs increased by 1.eight% within the fourth quarter of 2012, up from 0.6% within the earlier quarter. Resale prices of government-built HDB residences which are usually bought by Singaporeans, elevated by 2.5%, quarter on quarter, the quickest acquire in five quarters. And industrial property, prices are actually double the levels of three years ago. No withholding tax in the event you sell your property. All your local information regarding vital HDB policies, condominium launches, land growth, commercial property and more

    There are various methods to go about discovering the precise property. Some local newspapers (together with the Straits Instances ) have categorised property sections and many local property brokers have websites. Now there are some specifics to consider when buying a 'new launch' rental. Intended use of the unit Every sale begins with 10 p.c low cost for finish of season sale; changes to 20 % discount storewide; follows by additional reduction of fiftyand ends with last discount of 70 % or extra. Typically there is even a warehouse sale or transferring out sale with huge mark-down of costs for stock clearance. Deborah Regulation from Expat Realtor shares her property market update, plus prime rental residences and houses at the moment available to lease Esparina EC @ Sengkang

Template:Data types

  1. 1.0 1.1 1.2 20 year-old Real Estate Agent Rusty from Saint-Paul, has hobbies and interests which includes monopoly, property developers in singapore and poker. Will soon undertake a contiki trip that may include going to the Lower Valley of the Omo.

    My blog: http://www.primaboinca.com/view_profile.php?userid=5889534
  2. 2.0 2.1 20 year-old Real Estate Agent Rusty from Saint-Paul, has hobbies and interests which includes monopoly, property developers in singapore and poker. Will soon undertake a contiki trip that may include going to the Lower Valley of the Omo.

    My blog: http://www.primaboinca.com/view_profile.php?userid=5889534
  3. Complex interval arithmetic and its applications, Miodrag Petkovi?, Ljiljana Petkovi?, Wiley-VCH, 1998, ISBN 978-3-527-40134-5
  4. 4.0 4.1 4.2 4.3 4.4 4.5 Hend Dawood (2011). Theories of Interval Arithmetic: Mathematical Foundations and Applications. Saarbrücken: LAP LAMBERT Academic Publishing. ISBN 978-3-8465-0154-2.
  5. Jiri Rohn, List of publications
  6. 6.0 6.1 20 year-old Real Estate Agent Rusty from Saint-Paul, has hobbies and interests which includes monopoly, property developers in singapore and poker. Will soon undertake a contiki trip that may include going to the Lower Valley of the Omo.

    My blog: http://www.primaboinca.com/view_profile.php?userid=5889534
  7. 20 year-old Real Estate Agent Rusty from Saint-Paul, has hobbies and interests which includes monopoly, property developers in singapore and poker. Will soon undertake a contiki trip that may include going to the Lower Valley of the Omo.

    My blog: http://www.primaboinca.com/view_profile.php?userid=5889534
  8. Application of Fuzzy Arithmetic to Quantifying the Effects of Uncertain Model Parameters, Michael Hanss, University of Stuttgart
  9. 20 year-old Real Estate Agent Rusty from Saint-Paul, has hobbies and interests which includes monopoly, property developers in singapore and poker. Will soon undertake a contiki trip that may include going to the Lower Valley of the Omo.

    My blog: http://www.primaboinca.com/view_profile.php?userid=5889534
  10. 20 year-old Real Estate Agent Rusty from Saint-Paul, has hobbies and interests which includes monopoly, property developers in singapore and poker. Will soon undertake a contiki trip that may include going to the Lower Valley of the Omo.

    My blog: http://www.primaboinca.com/view_profile.php?userid=5889534
  11. 20 year-old Real Estate Agent Rusty from Saint-Paul, has hobbies and interests which includes monopoly, property developers in singapore and poker. Will soon undertake a contiki trip that may include going to the Lower Valley of the Omo.

    My blog: http://www.primaboinca.com/view_profile.php?userid=5889534
  12. Publications Related to Early Interval Work of R. E. Moore
  13. Precursory papers on interval analysis by M. Warmus
  14. 20 year-old Real Estate Agent Rusty from Saint-Paul, has hobbies and interests which includes monopoly, property developers in singapore and poker. Will soon undertake a contiki trip that may include going to the Lower Valley of the Omo.

    My blog: http://www.primaboinca.com/view_profile.php?userid=5889534
  15. Publications by Arnold Neumaier
  16. Some publications of Jon Rokne
  17. Bounds for ordinary differential equations of Rudolf Lohner (in German)
  18. Patent Issues in Interval Arithmetic
  19. Software for Interval Computations collected by Vladik Kreinovich , University of Texas at El Paso
  20. History of XSC-Languages
  21. A Proposal to add Interval Arithmetic to the C++ Standard Library
  22. Gaol is Not Just Another Interval Arithmetic Library
  23. INTerval LABoratory and b4m
  24. IEEE Interval Standard Working Group - P1788