The Extended Real Interval System. G. William Walster. April 29, Abstract. by their implementation complexity and result sharpness.

Size: px
Start display at page:

Download "The Extended Real Interval System. G. William Walster. April 29, Abstract. by their implementation complexity and result sharpness."

Transcription

1 The Extended Real Interval System G. William Walster April 29, 1998 Abstract Three extended real interval systems are dened and distinguished by their implementation complexity and result sharpness. The three systems are closed with respect to interval arithmetic and the enclosure of functions and relations, notwithstanding domain restrictions or the presence of singularities. 1 Overview Section 2 introduces the problem of dening closed interval systems. In Section 3, real and extended points and intervals are dened. In Section 4, the empty and entire intervals are used to close the extended interval system. Section?? shows how incorrect conclusions have been reached about the result of certain interval arithmetic operator-operand combinations. The author is grateful to Professor Arnold Neumaier for originally raising this issue. Section 9 describes how to legitimately use IEEE oating-point arithmetic to obtain the sharp results described in Section??. Section 6 generalizes extended interval arithmetic to dene interval enclosures of functions, with the objective of removing all restrictions on their domains. Sections 7 and 8, contain brief remarks concerning, respectively: the relationship between extended intervals and the fundamental theorem of interval arithmetic and its generalization in [9]; and, extended dependent interval variables and interval enclosures. Section 10 denes three dierent mappings of extended intervals onto binary compatible IEEE representations. Two of these mappings support the sharp results introduced in Section??. Pseudo code for implementation algorithms are included. 1

2 2 Introduction The real and extended real number systems are not closed under arithmetic operations. This causes diculties for compiler developers, because exceptional provision must be made for undened outcomes. Extended real interval systems can be closed because intervals can be used to represent sets of values. This paper is conned to real numbers and intervals. Therefore real numbers, variables, and intervals are often referred to as simply numbers, variables, and intervals, respectively. 3 Denitions The following denitions are generally accepted in real point and interval analysis. 3.1 Points The following point (as opposed to interval) denitions are paraphrased from [3]: Denition 1 A variable is a symbol used to represent an unspecied number in a set of numbers. A variable is a \place holder" or a \blank" for an element of a set of numbers. Any member of the set is a value of the variable. The set, itself is the range of the variable. If the set has only one member, the variable is a constant. The distinction between variables and constants is important, particularly in the case of interval constants and variables, see Section 8 and [9]. Denition 2 The extended real number system contains the set of real numbers (denoted by <) together with the symbols +1 or (1) and?1. (The set of extended real numbers is denoted by <.) The following denitions are used in the extended number system:?1 < a < +1 if a 2 <; (1a) a + 1 = 1 + a = 1 if a 6=?1; (1b) 2

3 a + (?1) = (?1) + a =?1 if a 6= +1; (1c) a 1 = 1 a = 1 if 0 < a 1; (1d) a 1 = 1 a =?1 if? 1 a < 0; (1e) a (?1) = (?1) a =?1 if 0 < a 1; (1f) a (?1) = (?1) a = +1 if? 1 a < 0; and (1g) a=1 = a= (?1) = 0 if a 2 <. (1h) Neither the real nor the extended real number systems are closed with respect to the arithmetic operations. Division by zero is undened in the real number system. In the extended real number system, neither division by zero nor the following operations are dened: 1? (?1) + 1 (?1) 0 (?1) (?1) (?1) (?1)? (?1) 0 (?1) (?1) (?1) (2) 3.2 Machine Representable Points The set of machine representable oating-point numbers (denoted by < f p <) is the nite subset of real numbers that can be represented on a computer. Let fp and fp denote the minimum and maximum values of positive oating-point numbers that are representable using a given word length and exponent range. fp and fp are nite and non-zero. That is,?1 <?fp <?fp < 0 < fp < fp < 1. The set of oating-point numbers, < f p, is the hnite subset i of machine representable numbers contained in the interval,?fp; fp. An important property of intervals is that an interval dened by a pair of oating-point endpoints represents a closed compact set (or continuum) of real numbers. 3.3 Intervals The following interval terms and denitions are used in this paper and are paraphrased from various sources in the interval literature, including [5]. Denition 3 A real interval constant, [a; b] is a closed compact set of real 3

4 numbers dened by its endpoints, a = inf ([a; b]) 1 and b = sup ([a; b]) 2 : [a; b] fz j a z bg. The interval constant, [a; b] is the range of the dummy variable z. Denition 4 An interval variable, X, is the point variable, x, together with its range, the interval, [inf(x); sup(x)], which is the closed compact set of real numbers dened by the endpoints of X: X fx j inf(x) x sup(x)g. The interval variable, X, denes the point variable, x, and its range. Including the point variable, x, in the denition of the corresponding interval variable, X, was introduced by Walster and Hansen in [9] to make explicit the distinction between interval variables and constants. Arithmetic and order operations on real intervals are conveniently de- ned in terms of the corresponding operations on the elements of the interval operands. For example: Denition 5 X op Y = fx op y j x 2 X and y 2 Y g ; where in the case of division, 0 =2 Y. op = f+;?; ; g, X 2 <, Y 2 <, and Remark 1 An interval operation produces an interval containing the set of all results obtainable by performing the operation in question on every element of the argument intervals. Originally, Moore [5] excluded division by intervals containing zero. Independently, Hanson [2] and Kahan [4] extended interval division to include non-degenerate interval divisors containing zero, by dening interval quotients consisting of one or two semi-innite intervals. As a consequence, the domain of interval division is greater than for points. Nevertheless, Hanson excluded the operand-operator combinations in (2), whereas Kahan dened the value of these combinations to be <. 1 The inf, or inmum is the largest number that is less than or equal to each of a given set of real numbers. 2 The sup, or supremum is the smallest number that is greater than or equal to each of a given set of real numbers. 4

5 Denition 6 An extended real interval is an interval with extended real endpoints. Intervals representing sets of points are used to dene arithmetic on extended intervals. The resulting system is closed under all arithmetic operations on any member of the set of extended intervals. This result eliminates undened or exceptional outcomes resulting from interval arithmetic operations on any extended interval. 4 The Empty and Entire Intervals The empty interval, ;, naturally occurs as the intersection of two disjoint intervals: if the intervals X and Y share no points in common, ; X \ Y. The empty interval is a subset of every interval. The interval hull of all extended real intervals is [?1; 1] = <, and is referred to as the entire interval. The set of all possible extended real intervals, denoted =, is: = ; [ f[a; b] j a 2 < ; b 2 < ; and a bg. To close the system of extended intervals with respect to the arithmetic operators, it is necessary to dene the result of interval operations on operands involving ;, as well as, combinations of 1 and 0 that are undened for points. Denition 5 can be used to dene operations on extended intervals if division by zero and the point-operation combinations in (2) are dened. The required denitions are: ; op X ; for op 2 f+;?; ; g and 8X 2 = ;(3a) X op ; ; for op 2 f+;?; ; g and 8X 2 = ;(3b) [1; 1]? [1; 1] < ; (3c) [?1;?1] + [1; 1] < ; (3d) [1; 1] + [?1;?1] < ; (3e) [?1;?1]? [?1;?1] < ; (3f) [0; 0]= [0; 0] < ; (3g) [1; 1] [0; 0] < ; (3h) [?1;?1] [0; 0] < ; (3i) 5

6 [0; 0] [1; 1] < ; (3j) [0; 0] [?1;?1] < ; (3k) [a; a] = [0; 0] f?1g [ f+1g = f1g < 8 0 < a; (3l) [?a;?a] = [0; 0] f?1g [ f+1g = f1g < 8 0 < a;(3m) [1; 1] = [1; 1] < ; (3n) [?1;?1] = [1; 1] < ;. (3o) [1; 1] = [?1;?1] < ; and, (3p) [?1;?1]= [?1;?1] <. (3q) The denitions in (3) are shown as operations on degenerate interval operands to make explicit that these denitions are only required in an extended interval system. No requirement exists to redene anything in the extended real point system. The denitions in (3) that have < as the result are justied by considering arithmetic operations to be functions of two variables, see Section 6. The result of equations (3l) and (3m) is unsigned or projective innity, which is consistent with the denitions in [4]. Containment is not violated if < is returned as the result of division by zero, because projective innity is contained in <, See Section 9.2 and 9.4. The operation-operand combinations in (2) are undened in the point system because no single point result makes sense in all situations. Because intervals are sets of values, the denitions in (3) can be used to return containing intervals in these cases. The results from the denitions in (3) can be used to permit Denition 5 to be extended: Denition 7 X op Y = f[x; x] op [y; y] j x 2 X and y 2 Y g ; where op = f+;?; ; g, X 2 <, Y 2 <, [x; x] op [y; y] = x op y when x op y is dened for the points x and y, but whenever x op y is not dened, the denitions in (3) are used instead. The resulting \Simple" system of extended real interval arithmetic is implemented using the \Simple" mapping of extended intervals onto IEEE oating-points, introduced in Section 9.6. This system is closed under the set of arithmetic operations, including division by zero and the operandoperator combinations in (2). 6

7 In Section 9.3, points representing the results of oating-point underow and overow are introduced with the goal of gaining sharpness by distinguishing the result of underow from zero and the result of overow from innity. The \Sharp" mapping, also introduced in Section 9.6, can be used to implement this system. 5 The Lure of Sharp Results In certain cases, it appears possible to produce sharper results than those resulting from the application of denition 7. Hanson [2] and Kahan [4] independently discovered that the union of two disjoint semi-innite intervals is produced when a dividend bounded away from zero is divided by a nondegenerate interval devisor containing an interior zero point. In this case, the sharpest single containing interval is their interval hull, which is <. For example: [1; 1] [?1; 1] = [?1; 1] [ [1; 1] <. Beginning with [2], some authors, including Hansen in [1] and the present author in an earlier draft of this paper 3, have mistakenly concluded that an interval quotient is a single semi-innite interval if the non-degenerate divisor has a single zero endpoint and the dividend is bounded away from zero. While this mistake was not made by Kahan in [4], it is easy to incorrectly conclude that: The faulty reasoning is: [0; a] [0; b] = [0; 1] if 0 < a 1 and 0 < b 1. (4) Neither interval operand contains negative elements. Additionally, because a > 0 and b > 0, neither interval operand may be [0; 0]. Therefore, the result cannot contain negative numbers and the case of [0; 0] [0; 0] is explicitly excluded. The aw in this analysis is that a and b may be greater than zero only because of lack of sharpness. The fact that a > 0 and b > 0 does not permit the result of [0; 0] [0; 0] < in (3g) to be neglected. 3 Thanks to Professor Arnold Neumaier for pointing out this problem and helping the author to understand it. 7

8 To illustrate the fact that the result in (4) must be <, consider an interval Newton iteration in which it is desired to nd the roots of the constant function f(x) = 0 in the interval X = [?5; 5]. Assume that interval enclosure of f and f 0, F and F 0, respectively exist, with F (X) = [0; 1] and F 0 [X] = [0; 1] for all X. The Newton iteration is then: F (m (X)) N (X) = m (X)? \ X (5) = 0? [0; 1] [0; 1] F 0 (X) \ [?5; 5]. Since every argument of f(x) = 0 is a root, the conclusion is inescapable that the correct result for (4) is <. The following graph 4 of y = [0; 1] + [0; 1]x for?5 x 5, which contains f(x) over the interval [?5; 5], illustrates the fact that [0; 1] = [0; 1] must equal <. Figure 1: Y = [0; 1] + [0; 1]x for?5 x 5 The quest for sharpness has led to the analogous problem in two additional situations: products containing zero and innite endpoints, and 4 This graph was made using the interval graphics package GrafEq from Pedagoguery Software, located at: 8

9 quotients containing innite endpoints. For products of intervals containing zero and innite endpoints, it was mistakenly concluded that: [0; a] [b; 1] = [0; 1] if 0 < a 1 and 0 b < 1. (6) Parallel to the case of division, the faulty reasoning is: Neither interval operand contains negative elements. Additionally, because a > 0 and b < 1, the rst interval operand may not be [0; 0] and the second may not be [1; 1]. Therefore, the result cannot contain negative numbers and the case of [0; 0] [1; 1] is explicitly excluded. The aw in this analysis is that a may be greater than zero and b may be less than innity only because of lack of sharpness. The fact that a > 0 and b < 1 does not permit the result of [0; 0] [1; 1] < in (3j) to be neglected. This result is parallel to the case of division. The second division case is illustrated in the following example: [a; 1] [c; 1] = [0; 1] if 0 < a < 1 and 0 < c < 1. (7) This case is particularly believable because the algorithm for interval division of strictly positive nite intervals is: [a; b] [c; d] = [a d; b c]. The combination of endpoints bd does not appear to be required. However, this is only true for nite operands. The fundamental denition remains: X Y = fx y j x 2 X and y 2 Y g, from which the conclusion must be drawn that b d must be considered, if b and d are both 1. Therefore, in this case < is the sharpest possible result. Additional support for this conclusion is provided in Section 9.3 after the results of underow and overow interval endpoints and their properties are dened. The sharp results sought in equations (4), (6) and (7) can be obtained by tracking the results of oating-point underow and overow. 6 Interval functions Arithmetic operations are functions of two variables. Extended interval arithmetic, including interval operations on zero and innity, is a template 9

10 for dening interval functions at singularities. Dening interval enclosures at singularities, and other points outside the domain of point functions, removes any restrictions on the domain of interval functions 5. Denition 8 A real function is an association of exactly one element of one set of real numbers (the range) with each element of another set of real numbers (the domain). The domain of a real function is the set of values that the independent variable may take on, or the range of the independent variable. Denition 9 A multi-valued real function, or relation, is an association of one or more elements from one set of real numbers (the range) with each element of another set of real numbers (the domain). Denition 10 A real interval function is an association of exactly one element of one set of real intervals (the range) with each element of another set of real intervals (the domain). Remark 2 This denition eliminates any restrictions on the domain of interval functions. The domain of any interval function is =. Denition 11 An interval function, F, is an interval extension of a real function, f, if F ([x; x]) = f(x) 8x in the domain of f, see [6], page 21. Denition 12 An interval function, F, is a point enclosure of a real function, f, if F ([x; x]) f(x) 8x in the domain of f. Denition 13 An interval function, F, is an interval enclosure of a real function, f, if F (X) f(x) 8x 2 X \ D f. A single evaluation of an interval enclosure returns bounds on the range of the underlying point function over the subset of the function's domain contained in the interval argument. Denition 14 An interval function is inclusion isotonic if F (X) F (Y ) 8X Y. 5 In some situations, the argument of an enclosure outside the domain of the underlying function may be unexpected. In such situations, it may be desirable to detect this event. For this reason, user callable and invocable exceptions are provided in the Fortran implementation that will be raised when arguments are either partially or totally outside the domain of the function being enclosed. 10

11 The fundamental theorem of interval arithmetic was so named by Rall in [8], see [1]. It was originally proved by Moore for interval extensions of rational functions in [5]. The fundamental theorem provides a simple method of constructing interval enclosures. Theorem 1 (The fundamental theorem of interval arithmetic) Let F ([x; x]) be an inclusion isotonic interval extension of the real function f (x). Then F (X) contains the range of f (x) for all x 2 X. For the fundamental theorem to hold, an interval function must only be a point enclosure, not the more stringent interval extension. Suppose that for an interval approximation of some function to be an enclosure, an interval bound on the error in the approximation must be added. For example it may be the case that F ([x; x]) = G ([x; x]) + " [?1; 1] is a point enclosure of f. F ([x; x]) is not an enclosure of f. In this case, the fundamental theorem, as stated above, does not apply. Using the denition of a point enclosure, the fundamental theorem can be restated more generally: Theorem 2 Let F ([x; x]) be an inclusion isotonic point enclosure of the real function f (x). Then F (X) contains the range of f (x) for all x 2 X. The proof parallels the original: Proof. Assume x 2 X. By inclusion isotonicity, F (X) contains F ([x; x]), which in turn contains f (x), because F is a point enclosure of f. Since this is true for all x 2 X, F (X) contains the range of f over X. The fundamental theorem is silent about point enclosures of relations and interval functions whose arguments contain points outside the domain of the underlying point function, including points at singularities. In [9], Walster and Hansen generalized the fundamental theorem to include any real function or relation. Popova in [7] eectively extended the domain of interval functions to include points outside the domain of the underlying point function, see Denition 16. If interval enclosures at singularities are not explicitly dened, Popova's formulation leads to containment failures because the empty interval is returned at singularities. 6.1 Singularities in Functions of One Variable The following denitions eliminate any restriction on the domain of any point enclosure, F, of the real function, f. Points at which singularities occur in the real function, y = f(x), need not be excluded from the domain 11

12 of the function's h iinterval enclosures. Extended intervals can be used to return [y; y], y; y, < h i, [?1; y], or y; 1, depending on the nature of the singularity and the argument of F The limiting set of a point enclosure at a singularity Let ff(x)g denote the set of values that a point enclosure of f must contain when evaluated at the point, x. If f is dened at x, then ff(x)g = f (x), even if the point, x, is a singularity of f. Example 1 For the function ff(0)g = 0. f(x) = ( 0, if x = 0, f(x) = 1 x, otherwise, If f is not dened at a singularity, s, then the set of limiting values at s can be dened: Denition 15 Let s be a point outside the domain, D f, of the function, f. If the point, s, is a singularity of f, the limiting set containing all values of f at s is: the notation lim inf x!s ff(s)g lim inf x!s f(x); and lim sup x!s lim sup x!s f(x) ; where (8) symbolizes both the limits from above and below s, if they exist. That is lim inf f(x) = lim inf f(x), lim inf f(x) x!s x!s? x!s+ Limit values can be 1. In denition 15, the lim inf and lim sup are required to account for essential singular points, such as sin 1 x or tan 1 x at the origin. Existence of limits from both directions is not required. Thus, for example, ln (x) at the origin can be accommodated. If f is continuous at x, then lim inf z!x? f(z) = lim sup f(z) = lim inf z!x? z!x+ f(z) = lim sup f(z) = f(x). z!x+ In interval analysis, an implicit assumption is that the admissable set of point functions for which point enclosures can be dened is the set of analytic 12.

13 functions. This restriction can be removed. If an isolated singularity, s, is a pole of even order, F ([s; s]) [?1;?1] or [1; 1]. If an isolated singularity, s, is a pole of odd order, F ([s; s]) f?1g[f+1g = f1g <. An example of a function having an isolated odd order singularity is: Example 2 For the function f(x) = 1, ff(0)g = [?1;?1] [ [1; 1] = x f1g <. The only single interval that contains f1g = f?1g [ f+1g is <, that is, unless explicit provision is made to represent f1g, as may be done in the \Full" mapping in Section 9.6 Example 3 For the function f(x) = sin 1 x, ff(0)g = [?1; 1]. Denition 15 includes the denition in [7] of an interval function for points outside the domain, D f, of the underlying point function: Denition 16 The set ff(x) j x 2 X \ D f g = ; if X \ D f = ;. The unrestricted denition of a point enclosure (see Denition 12) is now stated : Denition 17 An interval function, F, is a point enclosure of a real function, f, if F ([x; x]) ff(x)g 8x; where ff(x)g is the limiting set of values of f at x. The above denitions support the domain of every point enclosure being =, the set of all extended intervals. The alternative of dening F ([s; s]) to be ; whenever s is not an element of D f leads directly to containment failures and therefore must be rejected. For example, if [1; 1] = [0; 0] ; and if X = [0; 0], then the interval function, F (X) = (X=(1? X)) \ (1=(1=X? 1)) (9) evaluates to ;. However, if < f1g = [1; 1] = [0; 0] is used instead, the correct answer, [0; 0], is obtained from ([0; 0]) \ (< ) in (9). This example is important because it illustrates how the intersection of dierent interval expressions can produce a sharper result than either expression alone can provide. Except for cases in which 0 2 X, the second operand of the intersection in (9) is sharper than the rst. 13

14 Let f be a function with any number of singularities. From denition 17 of a point enclosure and the fundamental theorem of interval arithmetic, if F is an inclusion isotonic point enclosure of the function, f, then F must satisfy: ff(x)g is the limit set from denition 15. F (X) fff(x)g j x 2 Xg ; where (10) Remark 3 The unrestricted denition 17 of a point enclosure, has the effect of lling in all removable singularities in interval enclosures of f without touching dened function values at discontinuities. Example 1 is an illustration of a function with a dened point at point that is not analytic. 6.2 Limit Sets of Functions of n Variables Denition 15 of a limit set generalizes to functions of two or more variables. To illustrate, given the function f(x; y) with singularity at the point (s x ; s y ), only requires that lim inf f(x; y) and lim sup f(x; y) are understood x!s x x!s y!s x y y!s y to require that all combinations of limits must be taken independently. For example, lim inf f(x; y) =?1 if f(x; y) = x? y. x!+1 y! The Functional Denition of Extended Real Interval Arithmetic As noted in Section 4, if arithmetic operations are viewed as functions of two variables, interval arithmetic operations are interval enclosures of these functions. The operator-operand combinations in 3 that are undened in the extended real system are points of singularity of these functions. Denition 17 of a point enclosure can be used to justify < being the limit set of possible results for these operator-operand combinations. The above denitions of point enclosures are consistent with denition 7 and the three IEEE based systems dened in Section 9.6. These denitions are needed to extend the functional denition of interval arithmetic to include extended intervals. With the exception of division by an interval containing zero, the denitions of the extended real interval arithmetic operators in the three IEEE-based systems dened in Section 9.6 yield the same results as the limiting values 14

15 obtained by applying the denitions in Section 6.1 to the functions: f(x; y) = x + y, f(x; y) = x? y, f(x; y) = x y, and f(x; y) = x y. In the case of division by an interval containing zero, the interval hull, <, of disjoint intervals is returned. 6.4 Enclosures of Constant Functions and Relations A constant function or relation is invariant over its entire domain. For example, f c (x) = 1 is a constant function and f c (x) = [0; 1] is a constant relation 6. When computing an interval enclosure of a function or relation, it is always possible, although not usually sharp, to simply return an interval containing the range of the function or relation. For constant functions and relations, a compiler can substitute an interval containing the range, even if the function or relation's argument turns out to be empty at runtime, see Section 8. Whether or not to perform such substitutions involves only a quality of implementation trade-o. The following table shows the result of executing an interval enclosure of a constant function or relation, as contrasted with substituting an interval containing its range. Given the enclosure of constant function, F c (X) = V, the enclosure can be computed in the normal way, or the compiler can substitute the value, V, for F c (X) at compile-time. The rst row identies whether the function argument is empty at run time. The rst column identies whether the enclosure is executed, or whether the value, V, is substituted at compile time. If the enclosure is computed, a result containing V will be obtained, or the empty interval will be obtained, depending on the enclosure's argument at run-time. In most cases, the computed enclosure of V will not be sharp. If V is substituted for the expression used to compute F c (X) at compiletime, the result will be V, if X is not empty at run-time. This is a sharp result. However, if X is empty, the result will again be V, which is not sharp, but contains the empty interval. The choice is whether to perform the substitutions at compile-time. Overall, both sharpness and speed are gained and there is no loss of containment if constant function substitution 6 The subscript \c" is used to identify functions and relations as constant or invariant over their respective domains. 15

16 is employed. The only case in which sharpness is lost is when an argument is empty. F c (X) X 6= ; X = ; F c (X) F c (X) V ; F c (X) =) V V V ; Example 4 The following functions are invariant over their respective domains: f c (x) = x? x = 0, f c (x) = sin 2 x + cos 2 x = 1, f(x) = c, f c (x) = x=x = 1, and f(x) = x 0 = 1. The last two cases in example 4 have isolated removable singularities at x = 0. It is also worth noting that \x" in the above examples can be arbitrarily complex expressions. 7 The Fundamental Theorem and Containment From the fundamental theorem, extended real interval arithmetic operations contain the range of values produced by the corresponding real operation on all elements of the extended interval operands. This is true even for combinations of operations and operands that result in singularities, such as division by an interval containing zero. Because rational functions are sequences of arithmetic operations, the range of any rational function de- ned by a nite sequence of arithmetic operations, must be contained in the interval enclosure dened by the same set of extended interval operations. From the generalization of the fundamental theorem in [9], the interval enclosure of any function dened by a nite sequence of composite function evaluations is contained in the same sequence of composite enclosure evaluations. The same results apply to enclosures and composites of relations. Dening enclosures without domain restrictions carries over to the fundamental theorem and its generalization. 16

17 8 Dependent Intervals Any algebraic expression can be viewed as a composite function of the variables in the expression. Therefore, the extended interval version of an algebraic expression is automatically an interval enclosure of the underlying point expression, or function. If any variables, or dependent subexpressions, appear more than once in an interval expression, algebraic simplications can be performed, see Section 6.4 and [9]. For example, while [1; 1]? [1; 1] < and [0; 0] = [0; 0] <, from the fundamental theorem of limits, lim x!1 (x? x) = 0; and either from the fundamental theorem of limits or as a consequence of L'Hbopital's rule, lim x!0 (x=x) = lim x!1 (x=x) = 1. Therefore, when an interval expression, such as X? X or X=X is encountered, 0 or 1, respectively, can be substituted, provided it is known that the dierent occurrences of X are the same interval variable and not simply dierent constants or dierent variables having the same value. The distinction between variables and constants is more obvious and has more immediate consequences for intervals than it does for points, because the ability to take dependence into account can enable sharp interval results to be obtained. For additional discussion of interval dependence, see [9]. 9 Implementing Extended Interval Arithmetic The quality of an interval arithmetic implementation is characterized by one constraint and three variables. The constraint is containment and the variables are compile time, run time, and interval width or sharpness. Compile time and run time are used to measure the quality of point arithmetic implementations. Accuracy of point arithmetic implementations is dicult to measure without knowing the correct answers. The combination of interval containment and sharpness are much easier measures of quality with which to work. Containment is guaranteed by construction, and sharpness is always available by inspecting the width of interval results. 9.1 The Containment Constraint Containment is the fundamental requirement of interval arithmetic. Any interval arithmetic implementation must produce containing intervals. For any interval operation, sequence of operations, or function evaluation, the set of all results must be contained in the returned interval. A containment failure is unambiguous. The containment constraint can always be satised 17

18 by returning the interval [?1; 1] = < for the result of any operation or function evaluation. While not informative, and not a quality interval arithmetic implementation, returning < does not violate the containment constraint. 9.2 Quality of implementation In addition to compile-time and run-time, interval sharpness provides a third continuous measure of quality. Lack of sharpness is not a bug, but a quality of implementation issue, like compile and run-times. At various points in the development of the proposed interval implementation, trade-os are made between sharpness and speed to optimize overall implementation quality. 9.3 Floating-point Underow and Overow Result Tracking When implementing interval arithmetic using oating-point numbers, directed rounding is required to guarantee containment. Rounding down toward?1, and up toward +1, are symbolized by \#" and \"", respectively. It is convenient to use \#" and \"" to represent setting of the rounding mode, which then stays in eect until it is reset to the opposite value. It is also convenient to use these same arrows to denote whether a left or right interval endpoint is being computed. By so doing the time at which nal rounding operations are performed can be delayed, thereby gaining sharpness. Underow and overow occur when the exact result of an arithmetic operation on oating-point numbers is outside the range of representable oating-point numbers. For example, underow and overow occur as a result of the operations: fp fp and fp fp, respectively. To symbolically represent the result of underow and overow, it is convenient to dene real variables, " and, that, while not precisely known, nevertheless have denable properties: Denition 18 " is a real variable whose range is the closed interval [ " ; " ], where 0 < " < " < fp. As a consequence of this denition, rounding " down and up to machine representable oating-point numbers: # " = 0 and " " = fp. Denition 19 is a real variable whose range is the closed interval [ ; ], where fp < < < 1. As a consequence of this denition, rounding down and up to machine representable oating-point numbers: # = fp and " = 1. 18

19 While not known, the ranges of " and are closed intervals, bounded away from 0 and 1, respectively, because they always result from nite sequences of arithmetic operations on oating-point numbers. This avoids theoretical diculties associated with open intervals and is in fact a correct representation of reality. The result of any nite sequence of arithmetic operations on oating-point numbers that results in an underow or overow can be represented using ",, or their negative. If the results of underow and overow are immediately rounded to 0 and 1, useful information is lost. By postponing the rounding of " and until required for output or relational operations, information about the sign of results is preserved for subsequent numerical computations. Immediately rounding to 0 and 1 is consistent with the extended interval system dened in Section 4, which is the \Simple" system of Section 9.6. Some interval endpoint combinations involving " and do not need to be considered. For example, the interval ["; "] is never needed, because the upper bound will eventually be rounded up to fp. No information is lost by h i simply using the interval "; fp. The following table contains the entire set of intervals with endpoints that result from underow or overow: Interval Condition Interpretation [?; b] 8? fp b 1 [? ; b], where?1 <? <?fp [a;?"] 8? 1 a?fp [a;? " ], where?fp <? " < 0 ["; b] 8 fp b 1 [ " ; b], where 0 < " < fp [a; ] 8? 1 a fp [a; ], where fp < < 1 For any interval, X = [x; x], the following endpoint value combinations need not be considered: x =, x =?", x = ", and x =?. The following tables dene the results of all arithmetic operations on interval endpoints that are the result of previous positive underow and overow. The tables contain only non-negative operands. All the presented results carry over to negative values with appropriate sign changes. Con- ning the exposition to non-negative values saves space and permits the important points to be more easily highlighted. The result of operations on negative operands are obtained by reversing signs where appropriate. For addition and subtraction of intervals, ;, <, ["; ], and [0; 0], the 19

20 following results hold: In particular: Operation Operation Condition ; + X = ; ;? X = ; 8X < + X = < <? X = < 8X 6= ; ["; ] + X = [x; ] ["; ]? X = [?x; ] 8" x x [0; 0] + X = X [0; 0]? X =?X 8X 6= ; Operation Operation < + [0; 0] = < <? [0; 0] = < ["; ] + [0; 0] = ["; ] ["; ]? [0; 0] = ["; ] For multiplication and division of the intervals, ;, <, ["; ], and [0; 0], the following table contains the results. Except where explicitly shown, the following operator-operand combinations commute. In particular: Operation Operation Condition ; X = ; ; X = ; 8X < X = < < X = < 8X 6= ; ["; ] X = ["; ] ["; ] X = ["; ] 8X j " x x [0; 0] X = [0; 0] 8X 6= ;; X 6= < [0; 0] X = [0; 0] 8X j 0 =2 X; X 6= < X [0; 0] = < 8X 6= ; Operation Operation < [0; 0] = < < [0; 0] = < ["; ] [0; 0] = [0; 0] ["; ] [0; 0] = < [0; 0] ["; ] = [0; 0] The above interval results translate into individual endpoint operatoroperation combinations in which the endpoint of the result must be taken into account an is indicated by the arrows used to the direction of rounding. When the rounding mode is down, a left endpoint is being computed, when it is up, a right endpoint is computed. For individual operations involving 20

21 zero and ", the result of a previous underow: Operation # 0 + " = " # 0 " = 0 " 0 " = 0 For operations involving zero and, the result of a previous overow: Operation " 0 + = # 0 = 0 " 0 = 0 There are no missing cases in the above two tables. For example, because x = " cannot occur, neither can the operand-operator combination: " 0 + ". For individual operations involving non-zero operands and the result of a previous underow: Operation Operation Condition # x + " = x " x? " = x " x # x " = " " x < " x " = " < x # " x = " " < x Note that the expressions in these tables represent the computation of an interval endpoint, not a general statement about relationships between " and. For example, " x " = is the right endpoint of an interval and is not equivalent to the mathematical statement x =, which is not true. " For operations involving non-zero operands and the result of a previous underow: Operation Operation Condition 9.4 Innities # x? =? " x + = " x " x = " < x # x = " " x < " x = " x < The following notation makes explicit the identities between the set and interval representations, both for the point at zero and for points at innity. The relationship between projective innity, f1g, and ane innities, 21

22 f?1g and f+1g, are: [?1;?1] f?1g = f1g, (11) [+1; +1] f+1g = f1g, [0; 0] f0g The following reciprocity relations exist between zero and projective in- nity, which can then be related to ane innities using (11): [0; 0] =? [0; 0] ; f1g =? f1g ; 1= f1g [0; 0] ; and, 1= [0; 0] f1g. From these relations, the example in equation (7) must be: [a; 1] [c; 1] = [a; 1] 0; 1 = 0; 1 0; 1 = < c c a for 0 < a < 1 and 0 < c < 1. Because the results of underow and overow are bounded away from zero and innity, arithmetic operations between " and and [1; 1] follow the same rules as those between any real number a 2 < and [1; 1] in the equations in (1). The total set of operand-operation combinations for which denitions are required is: X op Y fx op y j x 2 X and y 2 Y g ; where x and y 2 f?1,?, < f p ; "; + 1g, x and y 2 f?1,? ", < f p, ; +1g, and op = f+;?; ; g. The following tables contain the results of arithmetic operations on all combinations of non-negative interval endpoints. Certain operator-operand combinations cannot occur. For multiplication and division, some operatoroperand combinations produce [?1; 1], or <. Because addition and multiplication commute, only the upper triangle of their tables are shown. # + 0 " y " y 1 " " y 1 x # x + y " + 0 y y 1 x " x + y

23 #? 0 y 1 0 0?y??1 " "?y??1 x x # x? y?? ?1 # 0 " y ?1 " " " 1 x # xy "? 0 " y 1 0 0?"?y?1 x x x " x? y?1? " 0 y x " xy # 0 y 1 0? " 1 " " 0 x 1 # x y " ?1 " 0 " y x 1 " x 0 y With the above results of operations on endpoints resulting from under- ow and overow, conditions are dened under which the results in equations (4), (5), (6), and (7) can be produced. For example: Sharp Interval Multiplication Examples ["; 1] ["; 1] = ["; 1] [0; ] [0; ] = [0; ] [0; 1] ["; ] = [0; 1] (12) Sharp Interval Division Examples ["; 1] ["; ] = ["; 1] [0; ] ["; 1] = [0; ] [0; 1] ["; ] = [0; 1] ["; ] ["; 1] = [0; ] (13) Without using " and to track the results of underow and overow, these results are not possible to obtain. 9.5 Endpoint Representations Mapping the interval endpoints onto the set of IEEE oating-point representations is both desirable and a challenging. A number of requirements are noteworthy: 23

24 Provide representations for the empty, ;, and entire, <, intervals. Use the properties of IEEE oating-point arithmetic to achieve sharpness and speed. In particular, provide a way to represent " and, the results of underow and overow. Maintain binary compatibility when moving from a software to progressively more sophisticated hardware supported implementations of interval arithmetic. 9.6 Representing the empty, ;, and entire, <, intervals The empty and entire intervals share the property that they propagate when interacting with any real interval. That is for op 2 f+;?; ; g and 8X 2 = : ; op X = X op ; = ;, from (3a) and (3b); and < op X = X op < = < except if X = ;. Thus ; dominates all intervals in =, and except ;, < dominates all intervals in =. In IEEE oating-point arithmetic any \NaN" dominates all other quantities. Therefore, it is convenient to represent ; using \[NaN ; ; NaN ; ]", where \NaN ; " is a non-default \NaN" pattern. 7 All oating-point quantities except \NaN" are dominated by \-inf" and \+inf". Therefore, it is convenient to represent < using \[?inf; +inf]". In two cases, it is necessary to track both the value of the internal representation and the endpoint in which it appears. The two cases are: zero inmum, [0, versus zero supremum, 0], and the result of underow,, versus the result of overow,. Not all endpoint combinations can be represented using IEEE oating-point values. <, and [1; 1] are not included in the selected set of representable intervals shown in the tables in (14) and (15). Therefore, the entries in the \<" column of the table in (14) and the \[1" 7 Using a non-default NaN pattern to represent the empty interval is motivated by the desire to minimize the hardware changes required to imlement the Min-max algorithms described in Section

25 column of the table in (15) are left blank. < < ; IEEE Simple [?inf; +inf] [NaN ; ; NaN ; ] Simple I/O [?inf; +inf] [NaN ; ; NaN ; ] Sharp [?inf; +inf] [NaN ; ; NaN ; ] Full [?inf; +inf] [NaN ; ; NaN ; ] (14) Only positive values of ",, and 1 are included in the following table. Negative values are obtained by reversing the sign bit of the internal representation. [0 0] [1 1] f1g IEEE 0 0 +inf Simple 0 0 +inf Simple I/O?0 +0 -inf Sharp? inf Full? inf -inf [+inf;?inf] (15) The rst column in these tables contains labels of dierent mappings of the mathematical quantities in the rst row onto IEEE oating-point values in the body of the tables. The table in (14) contains the mappings of the special values, <, <, and ;. The table in (15) contains the mappings of zero,, innities and the results of underow and overow. Representation of other numeric elements within < f p are not included for simplicity, because they are unambiguous. The second row of the tables in (14) and (15) shows the provided IEEE values as a point of reference. Only four of the numerous alternative mappings of interval endpoints onto IEEE oating-point values are considered in the \Simple", \Simple I/O", \Sharp", and \Full" rows of these tables. The only required missing element in the \IEEE" reference mapping is a representation for the empty interval, which is accomplished by using \[NaN ;, NaN ; ]" to represent the empty interval. < is represented using \[-inf,+inf]". Therefore, a valid and consistent interval system can be implemented using this \Simple" mapping. The \Simple" mapping is sucient to implement the extended interval system dened in Section 4. However, the \Simple" mapping is not binary compatible with the \Sharp", and \Full" mappings. This is the reason for the \Simple I/O" mapping in row 4, see Section

26 The \Sharp" mapping in row 5 supports computing the sharp results described in Section 9.3. Distinguishing between the results of underow, ", and zero, can be accomplished by using directed rounding and IEEE signed zeros, \-0" and \+0". If the internal representations \+inf" and \-inf" are used to represent signed results of overow,, \[-inf,+inf]" can still be used to represent <. Because the proposed interval language extension to Fortran does not specify how intervals must be represented (intervals are opaque), no requirement exists to maintain internal consistency in the way internal representations are used. As a consequence of using \[-inf,+inf]" to represent <, no representation exists in the \Sharp" mapping for [?; ]. Therefore, in the \Sharp" system, whenever overow results in [?; ], < is returned. Because no representation exists for 1], whenever 1] (or its negative, [?1) is the result of an operation, < must be returned. The \Full" mapping removes this lack of sharpness. The fact that \-0" and \+0" are used in two ways is not problematic, because whether a left or right endpoint is being computed is always known through the rounding direction. The \Full" mapping in row 6 supports the use of innite endpoints. Fortunately, the same overloading of signs used to distinguish between the result of underow and zero can be used to distinguish between the result of overow and innity. Whether individual operands are left or right endpoints must be known at the time individual endpoint operations are performed. While the \Full" mapping enables single endpoints at innity to be represented, the ideal points, [?1;?1] and [+1; +1] can only be represented through the use of \[+inf,-inf]" to represent f1g. The h i h i intervals?1;?fp and +fp; +1 also contain [?1;?1] and [1; 1], respectively. The \Simple" mapping supports a consistent implementation, but does not use of IEEE signed zero functionality to track the results of underow and overow. The \Sharp" and \Full" mappings are binary compatible. The \Sharp" mapping can be implemented in software or with limited hardware support using inlined IEEE oating-point instructions. The \Full" mapping is dicult to eciently implement in software without some additional hardware support because operand endpoint information cannot be provided to, or used by, inlined IEEE oating-point operations Singularities at Zero and Innite Interval Endpoints If singularities occur at zero or innity, underow or overow tracking can be used to provide sharper results than otherwise are possible. 26

27 Example 5 An interval enclosure, F, of the function f(x) = 1 x satis- es: F ([?1;?"]) [?;?1] [?1;?1], F (["; 1]) [1; ] [1; 1], and F ([0; 0]) f1g = f?1g [ f1g <. Example 6 An interval enclosure, F, of the function f(x) = ln (x) satises: F (["; 1]) [?; 0], F ([0; 1]) [?1; 0] <, and F ([0; 0]) [?1;?1] <. These examples illustrates the point that additional hardware support for the \Full" system will enable the quality of implementation to be improved in certain cases by providing additional sharpness. Without this support the entire interval, <, is returned for intervals with a single innite endpoint. 9.7 Implementing the \Simple" Mapping Denition 7 is the basis for the \Simple" interval system which can be implemented using existing IEEE oating-point arithmetic. While the \Simple" system is less sharp in the presence of underow and overow than the \Sharp" and \Full" systems, it is somewhat easier to implement in software than the \Sharp" system. For this reason, and because the \Simple" system is a subset of the \Sharp" and \Full" systems, focus in the remainder of this paper will be concentrated on the \Sharp" and \Full" systems. To avoid implementing new concepts in the rst release of compiler support for intervals, the decision has been made to implement only the \Simple" system, but to do so in a binary compatible fashion, thereby permitting future migration to the \Sharp" or \Full" systems. To implement the \Simple" system and preserve binary compatibility with the \Sharp" and \Full" systems requires restrictions on the internal representations of 0 and 1 used in binary les. For an ecient \Simple" system implementation, the sign of zero needs to be ignored and \+inf" needs to represent +1, rather than. These apparently conicting requirements can be satised by allowing the ecient representations within programs, while constraining the representations used in binary les. Therefore, as a result of binary output, \[0, 1]" must be written as \[-0, 1]", and \[1, +inf]", output as \[1, -inf]". On input, the sign of zero can be passed, as it will be ignored, internally. This has the eect of rounding any result of underow in the \Sharp" and \Full" systems, such as ["; 1], to zero. On the other hand, when \[1, inf]" is read in, it must be stored as \[1, +inf]", for binary compatibility with the \Sharp" and \Full" systems. 27

28 9.8 Implementing the \Sharp" and \Full" Mappings The following tables show how rounded down and rounded up arithmetic operations must function on positive operands to implement arithmetic operations on interval endpoints whether they are nite, innite, or the result of underow, overow. In these tables, the results for the \Sharp" mapping are obtained by eliminating the rows and columns associated with endpoints at innity, which are only required in the \Full" mapping. The \Simple" system is obtained by additionally eliminating the rows and columns associated with the results of underow and overow. The \Full" mapping requires entire interval instructions to be implemented in hardware or microcode, because all four interval endpoints must be available to separate the dierent cases. The \Full" mapping will not be considered further, although the innite entries in the following tables are included for completeness. In each table, the rst row and column contain the mathematical symbol for an endpoint. The second row and column contain the corresponding internal representations. The table entries contain the desired internal representation of the result. Cases when IEEE arithmetic does not produce the desired internal representation are identied. For addition, the desired results are: # + 0 " y 1?0 +0 Y 0?0?0 +0 Y " Y x X #X+Y 1 + " 0 y 1 +0 Y +inf?inf Y +inf?inf x X "X+Y +inf?inf +inf +inf?inf 1?inf?inf To compute the left endpoint, # 0 + ", IEEE addition does not provide the desired result. To produce " in this case, #\?0"+\+0" must produce \+0". The IEEE result in this case is \?0". This precludes propagating the result of underow through interval addition using inlined IEEE addition operations. The impact on quality of implementation from resulting loss of sharpness is small relative to the loss in performance if a check for this event is implemented in software. With a modied hardware instruction for addition, or microcoded interval instructions, this problem can be eliminated without any loss in performance. 28

Calculus I (part 1): Limits and Continuity (by Evan Dummit, 2016, v. 2.01)

Calculus I (part 1): Limits and Continuity (by Evan Dummit, 2016, v. 2.01) Calculus I (part ): Limits and Continuity (by Evan Dummit, 206, v. 2.0) Contents Limits and Continuity. Limits (Informally)...............................................2 Limits and the Limit Laws..........................................

More information

Lecture 1 Contracts : Principles of Imperative Computation (Fall 2018) Frank Pfenning

Lecture 1 Contracts : Principles of Imperative Computation (Fall 2018) Frank Pfenning Lecture 1 Contracts 15-122: Principles of Imperative Computation (Fall 2018) Frank Pfenning In these notes we review contracts, which we use to collectively denote function contracts, loop invariants,

More information

Lecture 1 Contracts. 1 A Mysterious Program : Principles of Imperative Computation (Spring 2018) Frank Pfenning

Lecture 1 Contracts. 1 A Mysterious Program : Principles of Imperative Computation (Spring 2018) Frank Pfenning Lecture 1 Contracts 15-122: Principles of Imperative Computation (Spring 2018) Frank Pfenning In these notes we review contracts, which we use to collectively denote function contracts, loop invariants,

More information

.Math 0450 Honors intro to analysis Spring, 2009 Notes #4 corrected (as of Monday evening, 1/12) some changes on page 6, as in .

.Math 0450 Honors intro to analysis Spring, 2009 Notes #4 corrected (as of Monday evening, 1/12) some changes on page 6, as in  . 0.1 More on innity.math 0450 Honors intro to analysis Spring, 2009 Notes #4 corrected (as of Monday evening, 1/12) some changes on page 6, as in email. 0.1.1 If you haven't read 1.3, do so now! In notes#1

More information

Hs01006: Language Features, Arithmetic Operators *

Hs01006: Language Features, Arithmetic Operators * OpenStax-CNX module: m37146 1 Hs01006: Language Features, Arithmetic Operators * R.G. (Dick) Baldwin This work is produced by OpenStax-CNX and licensed under the Creative Commons Attribution License 4.0

More information

Table : IEEE Single Format ± a a 2 a 3 :::a 8 b b 2 b 3 :::b 23 If exponent bitstring a :::a 8 is Then numerical value represented is ( ) 2 = (

Table : IEEE Single Format ± a a 2 a 3 :::a 8 b b 2 b 3 :::b 23 If exponent bitstring a :::a 8 is Then numerical value represented is ( ) 2 = ( Floating Point Numbers in Java by Michael L. Overton Virtually all modern computers follow the IEEE 2 floating point standard in their representation of floating point numbers. The Java programming language

More information

SCHOOL OF ENGINEERING & BUILT ENVIRONMENT. Mathematics. Numbers & Number Systems

SCHOOL OF ENGINEERING & BUILT ENVIRONMENT. Mathematics. Numbers & Number Systems SCHOOL OF ENGINEERING & BUILT ENVIRONMENT Mathematics Numbers & Number Systems Introduction Numbers and Their Properties Multiples and Factors The Division Algorithm Prime and Composite Numbers Prime Factors

More information

On the Complexity of Interval-Based Constraint. Networks. September 19, Abstract

On the Complexity of Interval-Based Constraint. Networks. September 19, Abstract On the Complexity of Interval-Based Constraint Networks Rony Shapiro 1, Yishai A. Feldman 2, and Rina Dechter 3 September 19, 1998 Abstract Acyclic constraint satisfaction problems with arithmetic constraints

More information

Intersection of sets *

Intersection of sets * OpenStax-CNX module: m15196 1 Intersection of sets * Sunil Kumar Singh This work is produced by OpenStax-CNX and licensed under the Creative Commons Attribution License 2.0 We have pointed out that a set

More information

Lecture 2 - Graph Theory Fundamentals - Reachability and Exploration 1

Lecture 2 - Graph Theory Fundamentals - Reachability and Exploration 1 CME 305: Discrete Mathematics and Algorithms Instructor: Professor Aaron Sidford (sidford@stanford.edu) January 11, 2018 Lecture 2 - Graph Theory Fundamentals - Reachability and Exploration 1 In this lecture

More information

Computational Mathematics: Models, Methods and Analysis. Zhilin Li

Computational Mathematics: Models, Methods and Analysis. Zhilin Li Computational Mathematics: Models, Methods and Analysis Zhilin Li Chapter 1 Introduction Why is this course important (motivations)? What is the role of this class in the problem solving process using

More information

A.1 Numbers, Sets and Arithmetic

A.1 Numbers, Sets and Arithmetic 522 APPENDIX A. MATHEMATICS FOUNDATIONS A.1 Numbers, Sets and Arithmetic Numbers started as a conceptual way to quantify count objects. Later, numbers were used to measure quantities that were extensive,

More information

Computational Methods. Sources of Errors

Computational Methods. Sources of Errors Computational Methods Sources of Errors Manfred Huber 2011 1 Numerical Analysis / Scientific Computing Many problems in Science and Engineering can not be solved analytically on a computer Numeric solutions

More information

Unconstrained Optimization

Unconstrained Optimization Unconstrained Optimization Joshua Wilde, revised by Isabel Tecu, Takeshi Suzuki and María José Boccardi August 13, 2013 1 Denitions Economics is a science of optima We maximize utility functions, minimize

More information

2 Computation with Floating-Point Numbers

2 Computation with Floating-Point Numbers 2 Computation with Floating-Point Numbers 2.1 Floating-Point Representation The notion of real numbers in mathematics is convenient for hand computations and formula manipulations. However, real numbers

More information

2 Computation with Floating-Point Numbers

2 Computation with Floating-Point Numbers 2 Computation with Floating-Point Numbers 2.1 Floating-Point Representation The notion of real numbers in mathematics is convenient for hand computations and formula manipulations. However, real numbers

More information

The Global Standard for Mobility (GSM) (see, e.g., [6], [4], [5]) yields a

The Global Standard for Mobility (GSM) (see, e.g., [6], [4], [5]) yields a Preprint 0 (2000)?{? 1 Approximation of a direction of N d in bounded coordinates Jean-Christophe Novelli a Gilles Schaeer b Florent Hivert a a Universite Paris 7 { LIAFA 2, place Jussieu - 75251 Paris

More information

Floating-point representation

Floating-point representation Lecture 3-4: Floating-point representation and arithmetic Floating-point representation The notion of real numbers in mathematics is convenient for hand computations and formula manipulations. However,

More information

Number System. Introduction. Natural Numbers (N) Whole Numbers (W) Integers (Z) Prime Numbers (P) Face Value. Place Value

Number System. Introduction. Natural Numbers (N) Whole Numbers (W) Integers (Z) Prime Numbers (P) Face Value. Place Value 1 Number System Introduction In this chapter, we will study about the number system and number line. We will also learn about the four fundamental operations on whole numbers and their properties. Natural

More information

Chapter 2: Number Systems

Chapter 2: Number Systems Chapter 2: Number Systems Logic circuits are used to generate and transmit 1s and 0s to compute and convey information. This two-valued number system is called binary. As presented earlier, there are many

More information

(a) (b) Figure 1: Bipartite digraph (a) and solution to its edge-connectivity incrementation problem (b). A directed line represents an edge that has

(a) (b) Figure 1: Bipartite digraph (a) and solution to its edge-connectivity incrementation problem (b). A directed line represents an edge that has Incrementing Bipartite Digraph Edge-connectivity Harold N. Gabow Tibor Jordan y Abstract This paper solves the problem of increasing the edge-connectivity of a bipartite digraph by adding the smallest

More information

Enumeration of Full Graphs: Onset of the Asymptotic Region. Department of Mathematics. Massachusetts Institute of Technology. Cambridge, MA 02139

Enumeration of Full Graphs: Onset of the Asymptotic Region. Department of Mathematics. Massachusetts Institute of Technology. Cambridge, MA 02139 Enumeration of Full Graphs: Onset of the Asymptotic Region L. J. Cowen D. J. Kleitman y F. Lasaga D. E. Sussman Department of Mathematics Massachusetts Institute of Technology Cambridge, MA 02139 Abstract

More information

Math 340 Fall 2014, Victor Matveev. Binary system, round-off errors, loss of significance, and double precision accuracy.

Math 340 Fall 2014, Victor Matveev. Binary system, round-off errors, loss of significance, and double precision accuracy. Math 340 Fall 2014, Victor Matveev Binary system, round-off errors, loss of significance, and double precision accuracy. 1. Bits and the binary number system A bit is one digit in a binary representation

More information

ELEMENTARY NUMBER THEORY AND METHODS OF PROOF

ELEMENTARY NUMBER THEORY AND METHODS OF PROOF CHAPTER 4 ELEMENTARY NUMBER THEORY AND METHODS OF PROOF Copyright Cengage Learning. All rights reserved. SECTION 4.3 Direct Proof and Counterexample III: Divisibility Copyright Cengage Learning. All rights

More information

Divisibility Rules and Their Explanations

Divisibility Rules and Their Explanations Divisibility Rules and Their Explanations Increase Your Number Sense These divisibility rules apply to determining the divisibility of a positive integer (1, 2, 3, ) by another positive integer or 0 (although

More information

MA651 Topology. Lecture 4. Topological spaces 2

MA651 Topology. Lecture 4. Topological spaces 2 MA651 Topology. Lecture 4. Topological spaces 2 This text is based on the following books: Linear Algebra and Analysis by Marc Zamansky Topology by James Dugundgji Fundamental concepts of topology by Peter

More information

ELEMENTARY NUMBER THEORY AND METHODS OF PROOF

ELEMENTARY NUMBER THEORY AND METHODS OF PROOF CHAPTER 4 ELEMENTARY NUMBER THEORY AND METHODS OF PROOF Copyright Cengage Learning. All rights reserved. SECTION 4.3 Direct Proof and Counterexample III: Divisibility Copyright Cengage Learning. All rights

More information

Point-Set Topology 1. TOPOLOGICAL SPACES AND CONTINUOUS FUNCTIONS

Point-Set Topology 1. TOPOLOGICAL SPACES AND CONTINUOUS FUNCTIONS Point-Set Topology 1. TOPOLOGICAL SPACES AND CONTINUOUS FUNCTIONS Definition 1.1. Let X be a set and T a subset of the power set P(X) of X. Then T is a topology on X if and only if all of the following

More information

Complete Interval Arithmetic and its Implementation on the Computer

Complete Interval Arithmetic and its Implementation on the Computer Complete Interval Arithmetic and its Implementation on the Computer Ulrich W. Kulisch Institut für Angewandte und Numerische Mathematik Universität Karlsruhe Abstract: Let IIR be the set of closed and

More information

Lecture 5 Sorting Arrays

Lecture 5 Sorting Arrays Lecture 5 Sorting Arrays 15-122: Principles of Imperative Computation (Spring 2018) Frank Pfenning, Rob Simmons We begin this lecture by discussing how to compare running times of functions in an abstract,

More information

Section 1.2 Fractions

Section 1.2 Fractions Objectives Section 1.2 Fractions Factor and prime factor natural numbers Recognize special fraction forms Multiply and divide fractions Build equivalent fractions Simplify fractions Add and subtract fractions

More information

Bisecting Floating Point Numbers

Bisecting Floating Point Numbers Squishy Thinking by Jason Merrill jason@squishythinking.com Bisecting Floating Point Numbers 22 Feb 2014 Bisection is about the simplest algorithm there is for isolating a root of a continuous function:

More information

Scientific Computing: An Introductory Survey

Scientific Computing: An Introductory Survey Scientific Computing: An Introductory Survey Chapter 1 Scientific Computing Prof. Michael T. Heath Department of Computer Science University of Illinois at Urbana-Champaign Copyright c 2002. Reproduction

More information

Reals 1. Floating-point numbers and their properties. Pitfalls of numeric computation. Horner's method. Bisection. Newton's method.

Reals 1. Floating-point numbers and their properties. Pitfalls of numeric computation. Horner's method. Bisection. Newton's method. Reals 1 13 Reals Floating-point numbers and their properties. Pitfalls of numeric computation. Horner's method. Bisection. Newton's method. 13.1 Floating-point numbers Real numbers, those declared to be

More information

Algebraic Properties of CSP Model Operators? Y.C. Law and J.H.M. Lee. The Chinese University of Hong Kong.

Algebraic Properties of CSP Model Operators? Y.C. Law and J.H.M. Lee. The Chinese University of Hong Kong. Algebraic Properties of CSP Model Operators? Y.C. Law and J.H.M. Lee Department of Computer Science and Engineering The Chinese University of Hong Kong Shatin, N.T., Hong Kong SAR, China fyclaw,jleeg@cse.cuhk.edu.hk

More information

Bindel, Fall 2016 Matrix Computations (CS 6210) Notes for

Bindel, Fall 2016 Matrix Computations (CS 6210) Notes for 1 Logistics Notes for 2016-09-07 1. We are still at 50. If you are still waiting and are not interested in knowing if a slot frees up, let me know. 2. There is a correction to HW 1, problem 4; the condition

More information

Introduction to Functional Programming: Lecture 7 2 Functions as innite data structures Ordinary ML data structures are always nite. We can, however,

Introduction to Functional Programming: Lecture 7 2 Functions as innite data structures Ordinary ML data structures are always nite. We can, however, Introduction to Functional Programming: Lecture 7 1 Introduction to Functional Programming John Harrison University of Cambridge Lecture 7 Innite data structures Topics covered: Functions as innite data

More information

Bits, Words, and Integers

Bits, Words, and Integers Computer Science 52 Bits, Words, and Integers Spring Semester, 2017 In this document, we look at how bits are organized into meaningful data. In particular, we will see the details of how integers are

More information

perform. If more storage is required, more can be added without having to modify the processor (provided that the extra memory is still addressable).

perform. If more storage is required, more can be added without having to modify the processor (provided that the extra memory is still addressable). How to Make Zuse's Z3 a Universal Computer Raul Rojas January 14, 1998 Abstract The computing machine Z3, built by Konrad Zuse between 1938 and 1941, could only execute xed sequences of oating-point arithmetical

More information

Lecture 9 - Matrix Multiplication Equivalences and Spectral Graph Theory 1

Lecture 9 - Matrix Multiplication Equivalences and Spectral Graph Theory 1 CME 305: Discrete Mathematics and Algorithms Instructor: Professor Aaron Sidford (sidford@stanfordedu) February 6, 2018 Lecture 9 - Matrix Multiplication Equivalences and Spectral Graph Theory 1 In the

More information

The Encoding Complexity of Network Coding

The Encoding Complexity of Network Coding The Encoding Complexity of Network Coding Michael Langberg Alexander Sprintson Jehoshua Bruck California Institute of Technology Email: mikel,spalex,bruck @caltech.edu Abstract In the multicast network

More information

Lecture notes on the simplex method September We will present an algorithm to solve linear programs of the form. maximize.

Lecture notes on the simplex method September We will present an algorithm to solve linear programs of the form. maximize. Cornell University, Fall 2017 CS 6820: Algorithms Lecture notes on the simplex method September 2017 1 The Simplex Method We will present an algorithm to solve linear programs of the form maximize subject

More information

Chapter 8. Voronoi Diagrams. 8.1 Post Oce Problem

Chapter 8. Voronoi Diagrams. 8.1 Post Oce Problem Chapter 8 Voronoi Diagrams 8.1 Post Oce Problem Suppose there are n post oces p 1,... p n in a city. Someone who is located at a position q within the city would like to know which post oce is closest

More information

Precision Control and Exception Handling in Scientic Computing. K. R. Jackson and N. S. Nedialkov. Computer Science Dept., University of Toronto,

Precision Control and Exception Handling in Scientic Computing. K. R. Jackson and N. S. Nedialkov. Computer Science Dept., University of Toronto, Precision Control and Exception Handling in Scientic Computing K. R. Jackson and N. S. Nedialkov Computer Science Dept., University of Toronto, Toronto, Ontario, Canada M5S 1A4. fkrj, nedg@cs.toronto.edu

More information

Finding a winning strategy in variations of Kayles

Finding a winning strategy in variations of Kayles Finding a winning strategy in variations of Kayles Simon Prins ICA-3582809 Utrecht University, The Netherlands July 15, 2015 Abstract Kayles is a two player game played on a graph. The game can be dened

More information

Monotone Paths in Geometric Triangulations

Monotone Paths in Geometric Triangulations Monotone Paths in Geometric Triangulations Adrian Dumitrescu Ritankar Mandal Csaba D. Tóth November 19, 2017 Abstract (I) We prove that the (maximum) number of monotone paths in a geometric triangulation

More information

Document Image Restoration Using Binary Morphological Filters. Jisheng Liang, Robert M. Haralick. Seattle, Washington Ihsin T.

Document Image Restoration Using Binary Morphological Filters. Jisheng Liang, Robert M. Haralick. Seattle, Washington Ihsin T. Document Image Restoration Using Binary Morphological Filters Jisheng Liang, Robert M. Haralick University of Washington, Department of Electrical Engineering Seattle, Washington 98195 Ihsin T. Phillips

More information

THE FREUDENTHAL-HOPF THEOREM

THE FREUDENTHAL-HOPF THEOREM THE FREUDENTHAL-HOPF THEOREM SOFI GJING JOVANOVSKA Abstract. In this paper, we will examine a geometric property of groups: the number of ends of a group. Intuitively, the number of ends of a group is

More information

γ 2 γ 3 γ 1 R 2 (b) a bounded Yin set (a) an unbounded Yin set

γ 2 γ 3 γ 1 R 2 (b) a bounded Yin set (a) an unbounded Yin set γ 1 γ 3 γ γ 3 γ γ 1 R (a) an unbounded Yin set (b) a bounded Yin set Fig..1: Jordan curve representation of a connected Yin set M R. A shaded region represents M and the dashed curves its boundary M that

More information

21. Distributed Algorithms

21. Distributed Algorithms 21. Distributed Algorithms We dene a distributed system as a collection of individual computing devices that can communicate with each other [2]. This denition is very broad, it includes anything, from

More information

2 ATTILA FAZEKAS The tracking model of the robot car The schematic picture of the robot car can be seen on Fig.1. Figure 1. The main controlling task

2 ATTILA FAZEKAS The tracking model of the robot car The schematic picture of the robot car can be seen on Fig.1. Figure 1. The main controlling task NEW OPTICAL TRACKING METHODS FOR ROBOT CARS Attila Fazekas Debrecen Abstract. In this paper new methods are proposed for intelligent optical tracking of robot cars the important tools of CIM (Computer

More information

Worst-case running time for RANDOMIZED-SELECT

Worst-case running time for RANDOMIZED-SELECT Worst-case running time for RANDOMIZED-SELECT is ), even to nd the minimum The algorithm has a linear expected running time, though, and because it is randomized, no particular input elicits the worst-case

More information

Advanced Algorithms and Computational Models (module A)

Advanced Algorithms and Computational Models (module A) Advanced Algorithms and Computational Models (module A) Giacomo Fiumara giacomo.fiumara@unime.it 2014-2015 1 / 34 Python's built-in classes A class is immutable if each object of that class has a xed value

More information

Mathematically Rigorous Software Design Review of mathematical prerequisites

Mathematically Rigorous Software Design Review of mathematical prerequisites Mathematically Rigorous Software Design 2002 September 27 Part 1: Boolean algebra 1. Define the Boolean functions and, or, not, implication ( ), equivalence ( ) and equals (=) by truth tables. 2. In an

More information

6 Language Extensions Character Set : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : Interval related command line

6 Language Extensions Character Set : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : Interval related command line Interval Arithmetic Specication Dmitri Chiriaev and G. William Walster Revised March 13, 2000 Abstract Compiler support for interval arithmetic requires a specication of both the syntax and semantics of

More information

Introduction to numerical algorithms

Introduction to numerical algorithms Introduction to numerical algorithms Given an algebraic equation or formula, we may want to approximate the value, and while in calculus, we deal with equations or formulas that are well defined at each

More information

Excerpt from: Stephen H. Unger, The Essence of Logic Circuits, Second Ed., Wiley, 1997

Excerpt from: Stephen H. Unger, The Essence of Logic Circuits, Second Ed., Wiley, 1997 Excerpt from: Stephen H. Unger, The Essence of Logic Circuits, Second Ed., Wiley, 1997 APPENDIX A.1 Number systems and codes Since ten-fingered humans are addicted to the decimal system, and since computers

More information

Basic Arithmetic Operations

Basic Arithmetic Operations Basic Arithmetic Operations Learning Outcome When you complete this module you will be able to: Perform basic arithmetic operations without the use of a calculator. Learning Objectives Here is what you

More information

Real Numbers finite subset real numbers floating point numbers Scientific Notation fixed point numbers

Real Numbers finite subset real numbers floating point numbers Scientific Notation fixed point numbers Real Numbers We have been studying integer arithmetic up to this point. We have discovered that a standard computer can represent a finite subset of the infinite set of integers. The range is determined

More information

Core Membership Computation for Succinct Representations of Coalitional Games

Core Membership Computation for Succinct Representations of Coalitional Games Core Membership Computation for Succinct Representations of Coalitional Games Xi Alice Gao May 11, 2009 Abstract In this paper, I compare and contrast two formal results on the computational complexity

More information

Lecture Notes on Contracts

Lecture Notes on Contracts Lecture Notes on Contracts 15-122: Principles of Imperative Computation Frank Pfenning Lecture 2 August 30, 2012 1 Introduction For an overview the course goals and the mechanics and schedule of the course,

More information

22 Elementary Graph Algorithms. There are two standard ways to represent a

22 Elementary Graph Algorithms. There are two standard ways to represent a VI Graph Algorithms Elementary Graph Algorithms Minimum Spanning Trees Single-Source Shortest Paths All-Pairs Shortest Paths 22 Elementary Graph Algorithms There are two standard ways to represent a graph

More information

Symmetric Product Graphs

Symmetric Product Graphs Rochester Institute of Technology RIT Scholar Works Theses Thesis/Dissertation Collections 5-20-2015 Symmetric Product Graphs Evan Witz Follow this and additional works at: http://scholarworks.rit.edu/theses

More information

Summary of Course Coverage

Summary of Course Coverage CS-227, Discrete Structures I Spring 2006 Semester Summary of Course Coverage 1) Propositional Calculus a) Negation (logical NOT) b) Conjunction (logical AND) c) Disjunction (logical inclusive-or) d) Inequalities

More information

Pebble Sets in Convex Polygons

Pebble Sets in Convex Polygons 2 1 Pebble Sets in Convex Polygons Kevin Iga, Randall Maddox June 15, 2005 Abstract Lukács and András posed the problem of showing the existence of a set of n 2 points in the interior of a convex n-gon

More information

GraphBLAS Mathematics - Provisional Release 1.0 -

GraphBLAS Mathematics - Provisional Release 1.0 - GraphBLAS Mathematics - Provisional Release 1.0 - Jeremy Kepner Generated on April 26, 2017 Contents 1 Introduction: Graphs as Matrices........................... 1 1.1 Adjacency Matrix: Undirected Graphs,

More information

A greedy, partially optimal proof of the Heine-Borel Theorem

A greedy, partially optimal proof of the Heine-Borel Theorem A greedy, partially optimal proof of the Heine-Borel Theorem James Fennell September 28, 2017 Abstract The Heine-Borel theorem states that any open cover of the closed interval Œa; b contains a finite

More information

Floating-Point Numbers in Digital Computers

Floating-Point Numbers in Digital Computers POLYTECHNIC UNIVERSITY Department of Computer and Information Science Floating-Point Numbers in Digital Computers K. Ming Leung Abstract: We explain how floating-point numbers are represented and stored

More information

9/24/ Hash functions

9/24/ Hash functions 11.3 Hash functions A good hash function satis es (approximately) the assumption of SUH: each key is equally likely to hash to any of the slots, independently of the other keys We typically have no way

More information

Review of Operations on the Set of Real Numbers

Review of Operations on the Set of Real Numbers 1 Review of Operations on the Set of Real Numbers Before we start our jurney through algebra, let us review the structure of the real number system, properties of four operations, order of operations,

More information

[Ch 6] Set Theory. 1. Basic Concepts and Definitions. 400 lecture note #4. 1) Basics

[Ch 6] Set Theory. 1. Basic Concepts and Definitions. 400 lecture note #4. 1) Basics 400 lecture note #4 [Ch 6] Set Theory 1. Basic Concepts and Definitions 1) Basics Element: ; A is a set consisting of elements x which is in a/another set S such that P(x) is true. Empty set: notated {

More information

REVIEW OF FUZZY SETS

REVIEW OF FUZZY SETS REVIEW OF FUZZY SETS CONNER HANSEN 1. Introduction L. A. Zadeh s paper Fuzzy Sets* [1] introduces the concept of a fuzzy set, provides definitions for various fuzzy set operations, and proves several properties

More information

Chapter 3 Arithmetic for Computers (Part 2)

Chapter 3 Arithmetic for Computers (Part 2) Department of Electr rical Eng ineering, Chapter 3 Arithmetic for Computers (Part 2) 王振傑 (Chen-Chieh Wang) ccwang@mail.ee.ncku.edu.tw ncku edu Depar rtment of Electr rical Eng ineering, Feng-Chia Unive

More information

DLD VIDYA SAGAR P. potharajuvidyasagar.wordpress.com. Vignana Bharathi Institute of Technology UNIT 1 DLD P VIDYA SAGAR

DLD VIDYA SAGAR P. potharajuvidyasagar.wordpress.com. Vignana Bharathi Institute of Technology UNIT 1 DLD P VIDYA SAGAR UNIT I Digital Systems: Binary Numbers, Octal, Hexa Decimal and other base numbers, Number base conversions, complements, signed binary numbers, Floating point number representation, binary codes, error

More information

15.4 Longest common subsequence

15.4 Longest common subsequence 15.4 Longest common subsequence Biological applications often need to compare the DNA of two (or more) different organisms A strand of DNA consists of a string of molecules called bases, where the possible

More information

i=1 i=2 i=3 i=4 i=5 x(4) x(6) x(8)

i=1 i=2 i=3 i=4 i=5 x(4) x(6) x(8) Vectorization Using Reversible Data Dependences Peiyi Tang and Nianshu Gao Technical Report ANU-TR-CS-94-08 October 21, 1994 Vectorization Using Reversible Data Dependences Peiyi Tang Department of Computer

More information

Module 12 Floating-Point Considerations

Module 12 Floating-Point Considerations GPU Teaching Kit Accelerated Computing Module 12 Floating-Point Considerations Lecture 12.1 - Floating-Point Precision and Accuracy Objective To understand the fundamentals of floating-point representation

More information

Floating-Point Arithmetic

Floating-Point Arithmetic Floating-Point Arithmetic Raymond J. Spiteri Lecture Notes for CMPT 898: Numerical Software University of Saskatchewan January 9, 2013 Objectives Floating-point numbers Floating-point arithmetic Analysis

More information

Chapter 3 Data Representation

Chapter 3 Data Representation Chapter 3 Data Representation The focus of this chapter is the representation of data in a digital computer. We begin with a review of several number systems (decimal, binary, octal, and hexadecimal) and

More information

Computability and Complexity

Computability and Complexity Computability and Complexity Turing Machines CAS 705 Ryszard Janicki Department of Computing and Software McMaster University Hamilton, Ontario, Canada janicki@mcmaster.ca Ryszard Janicki Computability

More information

More Natural Arithmetic in C++

More Natural Arithmetic in C++ More Natural Arithmetic in C++ Document number: P0999R0 Date: 2018 04 01 Reply to: James Dennett < jdennett@google.com > Audience: SG6, SG12, EWG, CWG. Synopsis A minor change to the rules of arithmetic

More information

Math 302 Introduction to Proofs via Number Theory. Robert Jewett (with small modifications by B. Ćurgus)

Math 302 Introduction to Proofs via Number Theory. Robert Jewett (with small modifications by B. Ćurgus) Math 30 Introduction to Proofs via Number Theory Robert Jewett (with small modifications by B. Ćurgus) March 30, 009 Contents 1 The Integers 3 1.1 Axioms of Z...................................... 3 1.

More information

Notes on metric spaces and topology. Math 309: Topics in geometry. Dale Rolfsen. University of British Columbia

Notes on metric spaces and topology. Math 309: Topics in geometry. Dale Rolfsen. University of British Columbia Notes on metric spaces and topology Math 309: Topics in geometry Dale Rolfsen University of British Columbia Let X be a set; we ll generally refer to its elements as points. A distance function, or metric

More information

to be known. Let i be the leg lengths (the distance between A i and B i ), X a 6-dimensional vector dening the pose of the end-eector: the three rst c

to be known. Let i be the leg lengths (the distance between A i and B i ), X a 6-dimensional vector dening the pose of the end-eector: the three rst c A formal-numerical approach to determine the presence of singularity within the workspace of a parallel robot J-P. Merlet INRIA Sophia-Antipolis France Abstract: Determining if there is a singularity within

More information

CSE 215: Foundations of Computer Science Recitation Exercises Set #4 Stony Brook University. Name: ID#: Section #: Score: / 4

CSE 215: Foundations of Computer Science Recitation Exercises Set #4 Stony Brook University. Name: ID#: Section #: Score: / 4 CSE 215: Foundations of Computer Science Recitation Exercises Set #4 Stony Brook University Name: ID#: Section #: Score: / 4 Unit 7: Direct Proof Introduction 1. The statement below is true. Rewrite the

More information

Unit-II Programming and Problem Solving (BE1/4 CSE-2)

Unit-II Programming and Problem Solving (BE1/4 CSE-2) Unit-II Programming and Problem Solving (BE1/4 CSE-2) Problem Solving: Algorithm: It is a part of the plan for the computer program. An algorithm is an effective procedure for solving a problem in a finite

More information

2.2 Syntax Definition

2.2 Syntax Definition 42 CHAPTER 2. A SIMPLE SYNTAX-DIRECTED TRANSLATOR sequence of "three-address" instructions; a more complete example appears in Fig. 2.2. This form of intermediate code takes its name from instructions

More information

Chapter 3. Quadric hypersurfaces. 3.1 Quadric hypersurfaces Denition.

Chapter 3. Quadric hypersurfaces. 3.1 Quadric hypersurfaces Denition. Chapter 3 Quadric hypersurfaces 3.1 Quadric hypersurfaces. 3.1.1 Denition. Denition 1. In an n-dimensional ane space A; given an ane frame fo;! e i g: A quadric hypersurface in A is a set S consisting

More information

Functions 2/1/2017. Exercises. Exercises. Exercises. and the following mathematical appetizer is about. Functions. Functions

Functions 2/1/2017. Exercises. Exercises. Exercises. and the following mathematical appetizer is about. Functions. Functions Exercises Question 1: Given a set A = {x, y, z} and a set B = {1, 2, 3, 4}, what is the value of 2 A 2 B? Answer: 2 A 2 B = 2 A 2 B = 2 A 2 B = 8 16 = 128 Exercises Question 2: Is it true for all sets

More information

UNIVERSITY OF MASSACHUSETTS Dept. of Electrical & Computer Engineering. Digital Computer Arithmetic ECE 666

UNIVERSITY OF MASSACHUSETTS Dept. of Electrical & Computer Engineering. Digital Computer Arithmetic ECE 666 UNIVERSITY OF MASSACHUSETTS Dept. of Electrical & Computer Engineering Digital Computer Arithmetic ECE 666 Part 8 Division through Multiplication Israel Koren ECE666/Koren Part.8.1 Division by Convergence

More information

Floating-Point Numbers in Digital Computers

Floating-Point Numbers in Digital Computers POLYTECHNIC UNIVERSITY Department of Computer and Information Science Floating-Point Numbers in Digital Computers K. Ming Leung Abstract: We explain how floating-point numbers are represented and stored

More information

,, 1{48 () c Kluwer Academic Publishers, Boston. Manufactured in The Netherlands. Optimal Representations of Polymorphic Types with Subtyping * ALEXAN

,, 1{48 () c Kluwer Academic Publishers, Boston. Manufactured in The Netherlands. Optimal Representations of Polymorphic Types with Subtyping * ALEXAN ,, 1{48 () c Kluwer Academic Publishers, Boston. Manufactured in The Netherlands. Optimal Representations of Polymorphic Types with Subtyping * ALEXANDER AIKEN aiken@cs.berkeley.edu EECS Department, University

More information

Functional Programming Languages (FPL)

Functional Programming Languages (FPL) Functional Programming Languages (FPL) 1. Definitions... 2 2. Applications... 2 3. Examples... 3 4. FPL Characteristics:... 3 5. Lambda calculus (LC)... 4 6. Functions in FPLs... 7 7. Modern functional

More information

Paths, Flowers and Vertex Cover

Paths, Flowers and Vertex Cover Paths, Flowers and Vertex Cover Venkatesh Raman M. S. Ramanujan Saket Saurabh Abstract It is well known that in a bipartite (and more generally in a König) graph, the size of the minimum vertex cover is

More information

Chapter 1: Number and Operations

Chapter 1: Number and Operations Chapter 1: Number and Operations 1.1 Order of operations When simplifying algebraic expressions we use the following order: 1. Perform operations within a parenthesis. 2. Evaluate exponents. 3. Multiply

More information

However, this is not always true! For example, this fails if both A and B are closed and unbounded (find an example).

However, this is not always true! For example, this fails if both A and B are closed and unbounded (find an example). 98 CHAPTER 3. PROPERTIES OF CONVEX SETS: A GLIMPSE 3.2 Separation Theorems It seems intuitively rather obvious that if A and B are two nonempty disjoint convex sets in A 2, then there is a line, H, separating

More information

EDAA40 At home exercises 1

EDAA40 At home exercises 1 EDAA40 At home exercises 1 1. Given, with as always the natural numbers starting at 1, let us define the following sets (with iff ): Give the number of elements in these sets as follows: 1. 23 2. 6 3.

More information

Calculus I Review Handout 1.3 Introduction to Calculus - Limits. by Kevin M. Chevalier

Calculus I Review Handout 1.3 Introduction to Calculus - Limits. by Kevin M. Chevalier Calculus I Review Handout 1.3 Introduction to Calculus - Limits by Kevin M. Chevalier We are now going to dive into Calculus I as we take a look at the it process. While precalculus covered more static

More information

Local consistency for ternary numeric constraints. Boi Faltings and Esther Gelle. Articial Intelligence Laboratory (LIA)

Local consistency for ternary numeric constraints. Boi Faltings and Esther Gelle. Articial Intelligence Laboratory (LIA) Local consistency for ternary numeric constraints Boi Faltings and Esther Gelle Articial Intelligence Laboratory (LIA) Swiss Federal Institute of Technology (EPFL) IN-Ecublens, 1015 Lausanne, Switzerland

More information

Simplicial Cells in Arrangements of Hyperplanes

Simplicial Cells in Arrangements of Hyperplanes Simplicial Cells in Arrangements of Hyperplanes Christoph Dätwyler 05.01.2013 This paper is a report written due to the authors presentation of a paper written by Shannon [1] in 1977. The presentation

More information