The Exact Real Arithmetical Algorithm in Binary Continued Fractions
|
|
- Laurel Rich
- 8 years ago
- Views:
Transcription
1 The Exact Real Arithmetical Algorithm in Binary Continued Fractions Petr Kůrka Center for Theoretical Study Academy of Sciences and Charles University in Prague Jilská, CZ-000 Praha, Czechia Abstract The exact real binary arithmetical algorithm is an on-line algorithm which computes the sum, product or ratio of two real numbers to arbitrary precision. The algorithm works in general Möbius number systems which represent real numbers by infinite products of Möbius transformations. We consider a number system of binary continued fractions in which this algorithm is computed faster than in the binary signed system. Moreover, the number system of binary continued fractions circumvents the problem of nonredundancy and slow convergence of continued fractions. Index Terms exact real arithmetic; Möbius number systems I. INTRODUCTION Exact real arithmetical algorithms sketched in an unpublished manuscript of Gosper [] have been developed in Vuillemin [2], Kornerup and Matula [4], [3] or Potts []. These algorithms perform a sequence of input absorptions and output emissions and update their inner state which may be a (2 2)-matrix in the case of a Möbius transformation or a (2 2 2)-tensor in the case of binary operations like addition, multiplication or division. The algorithms work in Möbius number systems which generalize both positional number systems and continued fraction systems and represent real numbers by infinite products of Möbius transformations (Kůrka [5]). Konečný [2] and Kůrka and Vávra [9] show that rational functions of degree at least 2 cannot be computed by a finite state transducer. This means that the state tensor of the binary arithmetical algorithm cannot be bounded during the computation: otherwise we would have a finite state transducer for the quadratic (rational) function x 2. Computer simulations suggest that the bit length of the state tensor (the number of bits needed for its representation) grows linearly with time. This implies quadratic time complexity for the algorithm. The rate of growth depends on the number system in question and it is smaller in modular systems, whose transformations have unit determinant, than in positional systems. However, modular systems like continued fractions are neither contractive nor redundant (see Kůrka and Delacourt [8]). This means that the convergence in them is slow, they need long words to attain a given precision. Nonredundancy means that the binary algorithm does not work always properly: for some inputs it does not give any output. In the present paper we consider a number system of binary continued fractions which circumvents both these disadvantages while it keeps the advantage of faster computation. The system uses a compression code, which codes the integer entries of a continued fraction by their binary code and provides a faster convergence. The problem of redundancy is solved by a parallel binary arithmetical algorithm which pursues two parallel branches in the cases in which the the standard binary algorithm would be stalled. II. SOFIC SUBSHIFTS For a finite alphabet A denote by A = m 0 Am the set of finite words and by A + = m>0 Am the set of nonempty finite words. Here A 0 consists of the empty word λ. The length of a word u = u 0... u m A m is denoted by u = m. Denote by A N the Cantor space of infinite words with the metric d(u, v) = 2 min{k 0:u k v k }. If v = u [i,j) = u i... u j for some 0 i j u, then v is a subword of u (v u). The shift map σ : A N A N is defined by σ(u) i = u i+. A subshift is a nonempty set Σ A N which is closed and σ-invariant, i.e., σ(σ) Σ. If D A then Σ D = {x A N : u x, u D} is a subshift (provided it is nonempty) with forbidden words D. Any subshift can be obtained in this way. A subshift is uniquely determined by its language L(Σ) = {u A : x Σ, u x}. A subshift Σ is of finite type (SFT), if Σ = Σ D for some finite set D A. A subshift is sofic if it can be generated by a deterministic graph. A deterministic graph over an alphabet A is a triple G = (B, E, i), where B is a finite set of vertices, i B is an initial vertex and E B A B is a set of labelled edges such that for every p B, a A there exists at most one q B with (p, a, q) E. In this case we write p a q. The source and target maps s, t : E B are the projections s(p, a, q) = p, t(p, a, q) = q and the labelling map l : E A is the projection l(p, a, q) = a. A path is a finite or infinite word w E E N such that t(w i ) = s(w i+ ). The subshift Σ G A N consists of all labels of all paths of G. A subshift Σ is sofic, if Σ = Σ G for some deterministic graph G.
2 III. MATRICES, TRANSFORMATIONS AND INTERVALS The extended real line R = R { } is the onedimensional projective space, i.e., the space P(R 2 ) of onedimensional subspaces of R 2. A point x R is represented by homogeneous coordinates x = (x 0, x ) R 2 \{(0, 0)}, and x = y iff det(x, y) = x 0 y x y 0 = 0. We regard x R as a column vector, and write it usually as x = x 0 x, for example = 0. As a topological space, R is homeomorphic to the circle via the stereographic projection d : R T = {z C : z = } given by d(x) = (ix + )/(x + i). A regular Möbius transformation M : R R is a self-map of R of the form M(x) = M 00x + M 0 M 0 x + M = M 00x 0 + M 0 x M 0 x 0 + M x, where det(m) = M 00 M M 0 M 0 0. A transformation is determined by a (2 2)-matrix which we write as a pair of its left and right columns M = [ M00 M 0, M0 M ]. A nonzero multiple of M determines the same transformation so we denote by M(R) = {M P(R 2 2 ) : det(m) 0} the set of regular projective (2 2)-matrices. Each element of M(R) is a one-dimensional subspace of the space of matrices R 2 2, so two matrices are equivalent if one is a nonzero multiple of the other. Besides these regular transformations we consider also nonzero singular transformations M 0 (R) = {M P(R 2 2 ) : det(m) = 0}. A singular transformation M has a unique unstable point u(m) R with M(u(M)) = 0 0 and a unique stable point s(m) R such that M(x) = s(m) for each x u(m). For example, for M = [ 0 0, 0 ] we have s(m) = 0, u(m) = 0. An interval is a connected subset of R. Improper intervals are the empty set, singletons, their complements and the full interval R. A proper interval I R has two different endpoints a, b R. The interval I is closed if a, b I and open if a, b R\I. There are two disjoint open intervals I, J with the endpoints a, b and the union of their closures is R. We might distinguish these intervals by the order of a, b and write I = (a, b), J = (b, a) but this is not convenient, since for a transformation M with det(m) < 0 we would get M(I) = (M(b), M(a)). A better possibility is to define the open interval with endpoints a, b as the set {ax 0 + bx : x 0, x > 0} of convex combinations of a, b. The two intervals I, J are then defined by the matrices P = [ a0 a, b0 b ], Q = [ a0 a, b0 b ]. Define the sign sgn(x) {, 0, } of x R as the sign of x 0 x. The open and closed intervals of P P(R 2 2 ) are P o = {x R, sgn(p x) > 0}, P c = {x R, sgn(p x) 0}. For a singular P = [ a c, b d ] we have P = [ d c, b a ] and sgn(u(p )) < 0 P o =, P c = {s(p )}, sgn(u(p )) = 0 P o =, P c = R, sgn(u(p )) > 0 P o = R \ {s(p )}, P c = R. See Kůrka [7] for a proof. For P, Q M(R) we have P o Q o iff P c Q c iff sgn(q P ) 0. Here sgn(q P ) 0 iff either all entries of Q P are nonnegative or all are nonpositive. The image of a set I R by a transformation M is M(I) = {Mx : x I} R. For P, Q M(R) and M M(R) M 0 (R) we get sgn(q MP ) 0 M(P c ) Q c. The length of P = [ a 0 a, b 0 b ] is defined by P = 2 π arctan a 0b 0 + a b a 0 b a b 0. IV. MÖBIUS NUMBER SYSTEMS An iterative system over an alphabet A is a system of Möbius transformations F = {F a M(R) : a A}. For a finite word u A n we denote by F u = F u0 F un the composition. We define the convergence space X F A N and the value map Φ : X F R by X F = {u A N : lim n F u [0,n) (i) R}, Φ(u) = lim n F u [0,n) (i). Here i is the imaginary unit. Thus u A N belongs to X F iff the limit lim n F u[0,n) (i) exists and belongs to R. In this case x = lim n F u[0,n) (z) for every complex z with nonzero imaginary part and (usually) for most real numbers z as well. We say that (F, Σ) is a Möbius number system, if F is an iterative system and Σ X F is a subshift such that Φ : Σ R is continuous and surjective. For a large class of number systems (F, Σ) with sofic subshift Σ there exists a deterministic graph G = (B, E, i) and a system of closed intervals V = {V p : p B} such that Σ = Σ G, V i = R, and V p = {F a (V q ) : p a q} for each p B (see Kůrka [5]). For p i, V p is a proper interval represented by a matrix which we denote also by V p M(R). The system is redundant, if for each p B, {F a (Vq ) : p a q} is an open cover of Vp, so that the intervals F a V q overlap. For each word u L G we have Φ[u] = {Φ(x) : x [0, u ) = u} = F u V t(u), where t(u) is the target of the unique path with source i and label u. These intervals can be computed recursively by the multiplication from the right. For an edge p a q of G we have matrices { Fa V H p,a,q = q if p = i Vp F a V q if p i For a path i u 0 p u un p n we get Φ[u] = F u V pn = H i,u0,p H p,u,p 2 H pn,u n,p n. If p i, then F a V q V p, so sgn(h p,a,q ) 0. An important characteristic of a number system is the speed of its convergence measured by the lengths Φ[u] of their intervals. Set where L = lim inf n n L n, L = lim sup n n L n, L n = min{ Φ[u] : u L(Σ), u = n}, L n = max{ Φ[u] : u L(Σ), u = n}.
3 p V p a q F a V q H p,a,q λ R 0 0 [ 2, 2 ] [ 2, 2 ] 0, 0 ], 0 ] 0 0 2, 2 ] 2, 2 ] 0 [ 0, ] [ 0, ] 0 [ 4, 4 ] 0 [ 4, ] [ 4 0, 5 3 ] 0 0 [ 2, 2 ] [ 3, 3 ] 0, 4 ] [ 3 5, 0 4 ] 0 2, ] 0 0 2, 2 ] [ 3 0, 4 ] 0 [ 0, 2 ] [, 0 3 ] 0, 2 ] 0, 0 ] [ 3 0, ] 0 0 2, 2 ] [ 4, 0 3 ] 0, ] 0, 0 ] [ 2 0, ] 0 0 2, 2 ] [ 3, 3 ] 0 [ 0, ] [, 0 2 ] TABLE I THE DETERMINISTIC GRAPH FOR THE BINARY SIGNED SYSTEM V. THE BINARY SIGNED SYSTEM The classical binary signed system for the interval [, ] is based on the iterative system F a (x) = x+a 2 with a {, 0, } = {, 0, }. To get a number system for whole R, we add the transformation F 0 (x) = 2x and we forbid some words. We get a system with alphabet A = {, 0,, 0}, transformations with matrices F = [ 0, 2 ], F 0 = [ 0, 0 2 ], F = [ 0, 2 ], F 0 = [ 2 0, 0 ], and forbiden words D = {0, 00, 0, 00, 0, 0}. The letter 0 can appear only at the beginning of a word, so each element of Σ D has the form 0 m u, where m 0 and u {, 0, } N. The value map is given by Φ(0 m u) = i 0 u i 2 m i and Φ(0 ω ) =. Note that the words 0, 0 should be forbidden. Otherwise we would get Φ(0 n ω ) = 0, and Φ would not be continuous at 0 ω. We have a deterministic graph with B = {λ, 0, 0, 0, 0} whose elements represent proper prefixes of the forbidden words (see Table I). The binary system is redundant, since for each p, the open intervals F a (Vq o ) with p a q, cover Vp o. For its length quotients we get L = L = 2 VI. CONTINUED FRACTIONS A regular continued fraction is an expression a 0 + a + a 2 + = a 0 + a + a where a 0 is an integer and a n are positive integers for n > 0. The value of such a continued fraction is lim a 0 + p n = lim, n a + + a n n q n where the convergents p n, q n are defined by p =, q = 0, p 0 = a 0, q 0 =, p = + a a 0, q = a, p n = p V p a q F a V q H p,a,q λ R 3 0, ] 0, ] 2, 0 ], 0 ] 0 0 [ 0, ] [ 0, ] 0 [, 0 ] [, 0 ] 0, 0 ] 3 0, ] [ 0, ] 2, 0 ] [, 0 ] 0 [ 0, 0 ] 0 0 [ 0, ] [ 0, ] 0 [, 0 ] [, 0 ] TABLE II THE DETERMINISTIC GRAPH FOR THE CF SYSTEM p n 2 +a n p n, q n = q n 2 +a n q n. The CF system (see Niqui [0] or Kůrka [6]) has the alphabet A = {0,, 2, 3}, transformations with matrices F 0 = [, 0 ], F = [ 0, ], F 2 = [, 0 ], F 3 = [ 0, ]. and forbidden words D = {02, 03, 2, 3, 20, 2, 30, 3}, so Σ D = {0, } N {2, 3} N. A word u {0, } N can be written as u = a 0 0 a a2, where a 0 0 and a i > 0 for i > 0. The sequence of a i may be finite if its last element a n is infinite. The value mapping Φ : Σ D R of the CF system is given by Φ( a 0 0 a a2 ) = a 0 + a + a 2 + ( Φ(3 a 0 2 a 3 a2 ) = a 0 + ) a + a 2 + If a n = for some n > 0, then we use / = 0 to get a finite continued fraction. We have a deterministic graph with vertices B = {λ, 0, } and edges λ 0, 0 0, 0, λ 2,3 2,3. The intervals are V 0 = [ 0, 0 ], V = 0, 0 ] (see Table II). The CF system is not redundant, since its intervals F a V q with p a q do not overlap. Its upper length quotient is L = which implies slow convergence. VII. TENSORS Binary arithmetical operations like addition or multiplication are obtained from bilinear tensors T : R 2 R 2 R 2 given by T (x, y) k = i=0 j=0 T kijx i y j. The tensor T determines a function T : R R R { 0 0 } defined by T (x, y)= (T 000x 0 + T 00 x )y 0 + (T 00 x 0 + T 0 x )y (T 00 x 0 + T 0 x )y 0 + (T 0 x 0 + T x )y A nonzero multiple of a tensor defines the same function on R R, so tensors are points of the projective space P(R ). We write them as (2 4)-matrices T = [ T 000 T 00, T 00 T 0, T 00 T 0, T 0 T ]. For a tensor T, vectors x, y, z R and matrices P, Q, R we have matrices zt, T x, T y and tensors T P, T Q and RT defined by (T x) kj = i T kijx i, (T P ) kij = p T kpjp pi, (T y) ki = j T kijy j, (T Q) kij = q T kiqq qj, (zt ) ij = k z kt kij, (RT ) kij = r R krt rij.
4 Then (T P ) x = T (P x), (T Q) y = T (Qy). The operations with the first and second argument commute, so we adopt notations T (x, y) = (T x)y = (T y)x, T (x, Q) = (T x)q = (T Q) x, T (P, y) = (T y)p = (T P ) y, T (P, Q) = (T P ) Q = (T Q) P. The multiplication from the left commutes with the multiplication from the right: R(T P ) = (RT ) P = RT P. For a matrix M = [ M 00 M 0, M 0 M ] we denote its left and right columns by M 0, M, and the upper and lower row by M 0, M. Similarly for a tensor T we denote by T k, T i, T j the marginal matrices obtained from T by fixing a coordinate, and T ij, T k j, T ki marginal vectors obtained by fixing two coordinates. A simple algebra shows that the tensor T (P, Q) consists of T -images of the columns of P and Q: T (P, Q) i = T (P i, Q), T (P, Q) j = T (P, Q j ), T (P, Q) ij = T (P i, Q j ). The image of intervals I, J R by a tensor T is T (I, J) = {z R : x I, y J, z = T (x, y)} In arithmetical algorithms we have to verify whether T (I, J) is included in a given interval. We have an algebraic criterion which is formally similar to the inclusion criterion for intervals. The sign of a tensor is defined similarly as the sign of a matrix: it is nonnegative if there exists nonzero s such that all st kij are nonnegative. Definition : We say that T is a regular tensor, if for each x, y, z R, the matrices zt, T x, T y are nonzero. Denote by T(R) P(R ) the space of regular tensors. A tensor is regular iff its pairs of marginal matrices are linearly independent, i.e., if T 0 T, T 0 T and T 0 T are different points of the projective space P(R 2 2 ). Examples of regular tensors are [ 0, 0 0, 0 0, 0 ] (multiplication), [ 0 0, 0, 0, 0 ] (addition), or [ 0 0, 0, 0, 0 0 ] (division). If T is a regular tensor and M is a regular matrix, then MT, T M and T M are regular tensors. Theorem 2 (Kůrka [7]): Let T be a regular tensor and let P, Q, R be regular matrices. Then sgn(r T (P, Q)) 0 iff T (P c, Q c ) R c. Accordingly we say that a regular tensor X T(R) is included in a matrix R M(R) and write X R, if sgn(r X) 0. VIII. THE BINARY ARITHMETICAL ALGORITHM Consider a sofic number system (F, Σ G ) with a deterministic graph G = (B, E, i) and intervals {V p M(R) : p B \ {i}}. The binary algorithm for the arithmetical operations like addition, multiplication or division is based on computing a path in the binary graph whose vertices are def s(x,r): for r c r : if sgn(v r Fc X) 0: return c x, y=false,false for r c r : I = F cv r s 0, s = sgn(i X 0 ), sgn(i X ) s 2, s 3 = sgn(i X 0 ), sgn(i X ) if s 0 0 & s 0 & s 2 0 & s 3 0: return c if (s 0 0 s 0) & (s 2 < 0 s 3 < 0) : x = True if (s 2 0 s 3 0) & (s 0 < 0 s < 0) : y = True if (x & y) ( x & y): return xy if x: return x if y: return y TABLE III A GREEDY SELECTOR FOR THE BINARY ALGORITHM T(R) B 3 and the edges are a,λ,λ λ,b,λ λ,λ,c (X H (p,a,p ), p, q, r) if p a p (X H (q,b,q ), p, q, r) if q b (Fc X, p, q, r ) if r c sgn(v r q r, p, q i, F c X) 0 The first rule is an x-absorption of a letter of the first argument, the second rule is an y-absorption of a letter of the second argument, and the third rule is an emission of a letter of the output. The label of an edge is a triple consisting of x-input, y-input and output. The label of a path is the concatenation of the labels of its edges. If (X, i, i, i) u,v,w (Y, p, q, r) is a finite path, then i u p, i v q, i w r and Y = Fw X(F u V p, F v V q ) V r. If (T, i, i, i) u,v,w is an infinite path with infinite u, v, w A N, then u, v, w Σ G and T (Φ(u), Φ(v)) = Φ(w). The binary graph represents a nondeterministic algorithm for arithmetic operations. To get a deterministic algorithm, we use a selector s : T(R) B A { x, y, xy } which chooses an admissible emission or an absorption. If s(x, r) = c A, then the algorithm performs an emission with edge r c r (r is determined by r and c). Otherwise the algorithm performs either an x-absorption or an y-absorption or both. In Table III we give in a Python-like syntax a greedy selector, which chooses an emission whenever it is possible. If not it chooses either an x-absorption or an y-absorption or both. To choose a convenient kind of absorption we consider all edges r and evaluate the tensor Y = V r F c X. If for some c, i, j, sgn(y i ) 0, and sgn(y j ) < 0, then X i F c V r but X j F c V r and we select an x-absorption to get a smaller interval X j. If sgn(y j ) 0, and sgn(y i ) < 0, then X j F c V r but X i F c V r and we select an y-absorption to get a smaller interval X i. We select both absorptions if both or none of these two conditions is satisfied. A sample run of the algorithm can be seen in Table IV which shows the state tensor together with the matrices which act upon it, input and output letters and finally the greatest common divisor of the resulting product tensor (before the next step, the entries of the tensor are divided by their common gcd). In the first step we start with the multiplication tensor T c r = [ 0, 0 0, 0 0, 0 ], whose marginal
5 X u v w gcd [ 0, 0 0, 0 0, 0 ] 2, 2 ] 2, 2 ] 0 0 [ 4, 4, 4, 4 ] [ 3, 3 ] 0 4 [ 2, 2, 2, 2 ] [ 2 0, ] [ 3, 3 ] 0 8 [, 0,, 0 ] [ 3, 3 ] [ 3, 3 ] [ 0, 0 2 ].[ 3 2, 2, 3 2, 2 ] 0 [ 3 4, 4, 3 4, 4 ] [, 0 2 ] [ 3, 3 ] 0 8 [ 0, 0 2 ].[ 2 2, 2, 2 2, 2 ] 0 [ 2 4, 4, 2 4, 4 ] [, 0 2 ] [ 3, 3 ] 0 4 [ 0, 0 2 ].[ 3 4, 2 4, 3 4, 2 4 ] 0 [ 3 8, 2 8, 3 8, 2 8 ] [ 3, 3 ] 0 4 [ 0, 0 2 ].[ 3 4, 2 4, 3 4, 2 4 ] 0 [ 3 8, 2 8, 3 8, 2 8 ] [ 4 0, 5 3 ] 4 [ 3 8, 2 8, 6 4, 4 4 ] [ 3, 3 ] [, 0 3 ] 0 3 [ 0, 0 ].[ 2 6, 9 6, 22 6, 8 6 ] 0 [ 2 0, ].[ 32, 9 32, 22 32, 8 32 ] 2 [ 2 0, 0 5 ].[ 6, 7 6, 6 6, 2 6 ] 0 2 [ 5 8, 7 8, 6 8, 2 8 ] [ 3, 3 ] 0 [ 9 32, 9 32, 3 32, 32 ] [ 3, 3 ] [ 2 0, ] [ 32, [ 2 0, 32, ].[ 64, 33 64, 2 64, 4 64 ] 2 32, 8 32 ] [, 0 2 ] [ 3, 3 ] 0 2 T = [ 0, 0 0, 0 0, 0 ] (multiplication) u = 0000, Φ[u] = [ 20 28, 9 28 ], v = , Φ[v] = [ 84, 92 ], T (Φ[u], Φ[v]) = [ , , , ], w = , Φ[w] = 6, 8 ] TABLE IV THE BINARY ALGORITHM IN THE BINARY SIGNED SYSTEM matrices are included in no F a V q, so both x-absorption and y-absorption are used. In the second step we get X = [ 4, 4, 4, 4 ] = [ 0, 0 0, 0 0, 0 ] 2, 2 ] 2, 2 ]. Thus X 0 = [ 4, 4 ] F 0V 0 = 2, 2 ], and X = [ 4, 4 ] F 0V 0 but X 0 = [ 4, 4 ] and X = 4, 4 ] are included in no F av q, so the y- absorption is chosen. The first emission occurs at step 5 with the state tensor X = [ 3 2, 2, 3 2, 2 ] which is included in F 0 V 0 = [ 2, 2 ]. Define the bit length of an integer n Z by bit(n) = log 2 ( n + ) and the bit length of a matrix or tensor as the sum of the bit lengths of its components. For M M(R) and T T(R), the time complexity of the operations MT, T M, T M is of the order of bit(m) bit(t ). The time complexity of the binary algorithm is characterized by the growth of the bit length of its state tensor. Computer simulations suggest that the bit length grows linearly with the sum u + v + w of the lengths of the input and output words: bit(x) C( u + v + w ). In one step of the algorithm the state tensor is multiplied by several matrices which are constant for a given number system. Thus the time complexity of the binary algorithm is proportional to C( u + v + w ) 2. For the binary signed system we get estimates C 2.66, for the CF system we get C Thus the binary algorithm runs faster with the CF system. However, the CF system has two disadvantages. Since it is not redundant, n b(n) p(n) ω u c(u) v d(v) λ 0 λ TABLE V THE BINARY AND PREFIX CODES (LEFT), AND THE COMPRESSION AND DECOMPRESSION CODES (RIGHT) the computation may not give any outputs. This happens for example if we try to add u = 0 a0 a 0 a2 and v = 2 a 0 3 a 2 a2 with the same sequences of a n, which represent opposite numbers. If the inputs to the algorithm are random, this happens very rarely, nevertheless there may occur long sequences of absorptions without any emission. If the inputs u, v Σ D are distributed randomly, then their length quotients L u = n Φ[u [0,n) ] and L v approach the value 0.45 but for the output w, L w usually does not approach any limit and may fluctuate close to. Thus the length of the output interval may converge to zero quite slowly. IX. THE COMPRESSION AND DECOMPRESSION CODES We are going to modify the CF system by coding words 0 a 0 a as sequences of binary representations of the integers a n. For a {0, } we denote by a = a {0, } its complement. For integers n Z and k > 0 we denote by n k = n mod k. Denote by b : N {0, } + the binary code defined by b(0) = 0 and b(n) = u {0, } k+, where 2 k n < 2 k+ and n = 2 k u u k. Define the prefix code p : {, 2,..., } {0, } + { ω } by p( ) = ω and p(n) = k 0u, where 2 k n < 2 k+, u = k, and n = 2 k + 2 k u 0 + u k, so b(n) = u (see Table V left). Define the compression code c : Σ D {0, } N by c(0 a0 a 0 a2 ) = 00p(a 0 )p(a )p(a 2 ) c( a 0 0 a a2 ) = 0p(a 0 )p(a )p(a 2 ) c(2 a 0 3 a 2 a2 ) = 0p(a 0 )p(a )p(a 2 ) c(3 a0 2 a 3 a2 ) = p(a 0 )p(a )p(a 2 ) Here all a i are positive. The sequence (a n ) n may be finite if its last element is. The compression code is bijective. Its inverse is the decompression code d : {0, } N Σ D. Both codes are continuous in the Cantor topology, so they act also on finite words: For u Σ D, c(u) {0, } is the longest common prefix of all c(v) with v [u] and the length of c(u) goes to infinity with u. Similarly, for u {0, }, d(u) is the longest common prefix of all
6 d(v) with [u]. Thus dc(u) is a prefix of u and cd(u) is a prefix of u (see Table V right). Both codes can be computed by transducers, which are infinite graphs whose labels are pairs u/v of input and output words. The states of the compression transducer are (s, a, n) {0, } 2 N where s {0, } is the sign, a {0, } is the digit and n N counts the number of digits. The initial state is i = (0, 0, 0). Its transitions are (0, 0, 0) ( a 2, a 2, n) ( a 2, a 2, n) a k / a 2 a 2 log 2 (k) ( a 2, a 2, k), a k / log 2 (n+k) log 2 (n) ( a 2, a 2, n + k) if n > 0 a k /0σ(b(n)) log 2 (k) ( a 2, a 2, k) if n > 0 The transducer accepts on input either single letters, or more generally words of the form a k, where a A. For example we have a path (0, 0, 0) (,, ) 2 2 /0 (, 0, 2) 3 5 / (,, 6) 2/λ (, 0, 3) 3/λ (,, 7) 3/0 which yields c( ) = 00. The inverse decompression code d = c : {0, } N Σ D is computed by a transducer with states (s, a, b, n) {0.} 3 ({ } N), where s is the sign, a is the digit, n is the count of the letters, b = 0 if the count increases and b = if the count decreases. The initial state is j = (0, 0, 0, ) and the transitions are (0, 0, 0, ) (s, 0, 0, 0) (s, a, 0, n) (s, a, 0, n) (s, a, 0, ) (s, a,, n) (s, a,, n) (s, a,, ) (s, a,, ) s/λ (s, 0, 0, 0) a/2s+a (s, a, 0, ) /(2s+a) n (s, a, 0, 2n) if n > 0 0/λ (s, a,, n 2 ) if n > 0/2s+a (s, a, 0, ) /(2s+a) n (s, a,, n 2 ) if n > 0/λ (s, a,, n 2 ) if n > /2s+a,2s+a (s, a, 0, ) 0/2s+a (s, a, 0, ) If we feed the decompression transducer with the word c( ) = 00, we get a path (0, 0, 0, ) (, 0, 0, 2) (,, 0, 2) /λ (, 0, 0, 0) 0/λ (, 0,, ) /3 2 (,, 0, 4) 0/2 (, 0, 0, ) /23 (,, 0, ) /2 /3 giving d(00) = which is a prefix of The binary continued fraction system (BCF) is defined by the value mapping Ψ = Φ c : {0, } N R, where Φ : Σ D R is the value mapping of the CF system. We define the length quotients similarly as in Möbius number systems with Φ replaced by Ψ. def s(x): a = for j in [0,, 2, 3]: I = F j V j/2 if sgn(i X) 0: a = j if a > : n, m, u =,, True I = F a V a/2 while True: J = F m a I if sgn(j X) 0: I = J n = n + m else: u=false if u: m = 2m else: if m > : m = m/2 else: return a n x, y=false,false for j in [0,, 2, 3]: I = F j V j/2 s 0, s = sgn(i X 0 ), sgn(i X ) s 2, s 3 = sgn(i X 0 ), sgn(i X ) if (s 0 0 s 0) & (s 2 < 0 s 3 < 0) : x = True if (s 2 0 s 3 0) & (s 0 < 0 s < 0) : y = True if (x & y) ( x & y): return xy if x: return x if y: return y TABLE VI THE SELECTOR FOR THE BCF BINARY ALGORITHM X. THE BINARY BCF ALGORITHM We now modify the general binary algorithm for the BCF system. Recall that the graph has vertices B = {λ, 0, } and the intervals have matrices V 0 = [ 0, 0 ], V = 0, 0 ]. For the matrices H a = V a F av a 2 2 we get H 0 = H 3 = [ 0, ], H = H 2 = [, 0 ]. For u {0, } n we set H u = H u0 H un. The states of the modified binary graph are, where X T(R), p, q {0, } 3 {, 0,, 2,...} are states of the decompression transducer, and r {0, } 2 N is a state of the compression transducer. The initial state is (T, j, j, i) where j = (0, 0, 0, ) is the initial state of the decompression transducer and i = (0, 0, 0) is the initial state of the compression transducer. The transitions are a,λ,λ λ,a,λ a,λ,λ λ,a,λ λ,λ,b u,v,w (X V a, p, q, r) if p 3 < 0, p a/b p (X V a, p, q, r) if q 3 < 0, q a/b q (X H b, p, q, r) if p 3 0, p a/b p (X H b, p, q, r) if q 3 0, q a/b q (Fa k X, p, q, r ) if p 3, q 3 0, X Fa k V a 2, r ak /b r If (T, j, j, i) is an infinite path with infinite u, v, w {0, } N, then Ψ(w) = T (Ψ(u), Ψ(v)). We consider a selector s : T(R) A + { x, y, xy } which depends only on the state X T(R). It searches a letter a A such that X F a V a 2. If it finds such a letter, it finds the maximum k such that X Fa k V a 2 and outputs a k. This can be done in log 2 k steps (see Table VI). If no such letter exists then it finds one of the absorptions
7 X u d u v d v w d w [ 0, 0 0, 0 0, 0 ] 0 [ 0 0, 0, 0, 0 0 ] [ 0, 0,, 0 ] 0 2 [ 0, 0, 0, 0 ] 2 0 3, 0 2,, 0 ] 2 2, 0 2, 0, 0 ] , 0 2, 2 2, 0 3 ] 2, 0 2, 2 0, 0 3 ] , 5, 3 6, 3 ] 22, 3, 3 0, 3 5 ] 3 02, 2 4, 5 2, 0 3 ] , 4 6, 9 6, 36 4 ] 0 08, 4 6, 7 4, ] 32 0, 6 8, 7 4, 02 7 ] [ 7 9, 6 8, , 50 8 ] 2 28, 50 ] [ 7 2, 6 2, 75 2, 0 2, 9 28, 57 3 ] 04 2, 0 2, 95 36, ] 02 2, 0 2, 97 40, ] 0 [ 99 44, 57 47, 98 42, ] , 20 35, 56 42, ] 32 44, 0 47, 56 42, 2 45 ] , , 56 42, , 7 223, 4 23 ] 3 42, 23 ] T = [ 0, 0 0, 0 0, 0 ] (multiplication) u = 00000, d(u) = , Ψ[u] = [ 7 22, ] v = 00000, d(v) = 00 3, Ψ[v] = [ 33 65, ], T (Ψ[u], Ψ[v]) = [ , , , ] w = 00000, d(w) = , Ψ[w] = 68, 5 3 ] TABLE VII THE BINARY ALGORITHM IN THE BCF SYSTEM similarly as the selector of the general binary algorithm. A sample run of the algorithm is in Table VII. Fig.. F 3 V F V 0 F 2 V F 0 V 0 0 The intervals of the BCF system V 3 V 5 V 4 XI. THE PARALLEL BCF BINARY ALGORITHM The BCF system solves the problem of slow convergence, but there still remains the problem of redundancy. Since the BCF system is not redundant, the binary algorithm need not give any output. We therefore consider a modified algorithm which in such a case pursues simultaneously two alternative output branches. For this reason we consider intervals which contain the endpoints 0, 0,, of the intervals F a V a 2 (see Fig. ). These are V 2 X u d u v d v w d w [ 0, 0 0, 0 0, 0 ] 0 [ 0 0, 0, 0, 0 0 ] [ 0, 0,, 0 ] 0 2 [ 0, 0, 0, 0 ] 2 0 3, 0 2,, 0 ] 2 2, 0 2, 0, 0 ] , 0 2, 2 2, 0 3 ] 2, 0 2, 2 0, 0 3 ] , 5, 3 6, 3 ] 22, 3, 3 0, 3 5 ] 3 02, 2 4, 5 2, 0 3 ] , 4 6, 9 6, 36 4 ] 2, 4 6, 9 6, 36 4 ] , 4 2, 9 3, 36 5 ] 0 08 [ 0, 2 6, 3 6, 5 4 ] , 4 2, 7 3, 68 2 ] 32 0 [ 0, 2 6, 3 4, 2 89 ] 0 2 0, 6 2, 7 3, 02 5 ] 00 3 [ 0, 2 8, 3, 2 0 ] 2 0, 4 2, 20 3, 87 5 ] [ 0, 2 0, 3 8, 2 3 ] 32 0 [ 5 2, 4 2, 47 28, 9 3 ] 32 [ 0, 2 2, 3 8, 5 47 ] 2, 0 2, 9 28, 57 3 ] 04 2, 0 2, 95 36, ] 02 2, 0 2, 97 40, ] 0 [ 99 44, 57 47, 98 42, ] 3 44, 0 47, 56 42, 2 45 ] , 65 9, 56 42, ] , 65 9, 56 42, ] 3, 65 26, 56 4, 68 9 ] 3 44, 26 9, 4 42, 9 87 ] 00 2, 20 5, 56 4, 24 ] , 26 7, 4 28, 9 06 ] 3 [ 77, 90 5, 84 4, 4 5 ] , 5 50, 4 28, 5 34 ] 32 u = 00000, d(u) = , Ψ[u] = [ 7 22, ], v = 00000, d(v) = 00 3, Ψ[v] = [ 33 65, ], T (Ψ[u], Ψ[v]) = [ , , , ], w = , d(w) = , Ψ[w] = [ 5 3, ], w = 00000, d(w) = , Ψ[w] = [ 6 37, 5 3 ] TABLE VIII THE PARALLEL BINARY ALGORITHM IN THE BCF SYSTEM intervals V 2 = c, c ], V 3 = [ c, c ], V c 4 = [ c+, c+ c ], V 5 = [ c c, c c+ ], where c 2 is an integer parameter, which regulates the degree of parallelism. If c is large then the intervals V i are small and branchings occurr only exceptionally. If r = (0, 0, 0) is the initial output state and X is a tensor which contains 0, then X is included neither in F 0 V 0 = [ 0, ] nor in F 2V =, 0 ]. However, if X is sufficiently small, it is included in V 2 and there exists maximum k > 0 such that X F0 k V 2 and X F2 k V 2. In such a case the selector selects both output possibilities w = 0 k and w = 2 k (which are fed into the compression transducer) and the
8 a = for j in [4, 5]: G 0, G = F j 2 V j 2, F 2+ j 2 V j 2 if sgn(g 0 X) 0 and sgn(g X) 0: a = j if a 4: n, m, u =,,True G 0, G = F a 2 V a 2, F 2+ a 2 V a 2 while True: G 2, G 3 = F a m G 0, F m G 2 2+ a 2 if sgn(g X) 0 and sgn(g X) 0: 2 G 0, G = G 2, G 3 n = n + m else: u=false if u: m = 2 m else: if m > : m = m/2 else: return a n for j in [6, 7]: Y = V j 2 X if sgn(y ) 0: return j TABLE IX THE SELECTION OF PARALLEL PATHS IN THE PARALLEL BCF BINARY ALGORITHM algorithm continues with two branches with state tensors F0 k X and F2 k X. If at some later step we get X F 0 V 0 in the first branch, then we know that this branch is the correct one and we close the other branch. On the other hand, if we get X F 2 V in the first branch, then we know that the first branch is incorrect, so we close it and proceed with the computation of the second branch. Similarly if X F 0 V 0 occurs at some later step in the second branch, we close it and if X F 2 V in the second branch, then we close the first branch. We proceed similarly if X is a small tensor which contains. In this case the selector finds the largest k such that X F k V 3 and X F3 k V 3. If r is not the initial state (0, 0, 0) then either X V 0 or X V. In the former case it may happen that X contains, so neither X F 0 V 0 nor X F V 0, but X V 4. Then F0 X contains while F X contains 0, so we pursue both possibilities c = 0, c =. In succeeding steps we test whether X F k V 3 in the first branch and output k. In the second branch we test whether X F0 k V 2 and output 0 k. If at some later step we get in some branch X V 0, then we know that this branch is the correct one and we close the second branch. On the other hand, if we get in some branch X V, then we know that this branch is incorrect, so we close it and continue with the other branch. Similarly, if X V we test whether X V 5 and proceed analogously. Thus the selector for the parallel algorithm is obtained from the selector of Table VI by inserting the procedure of Table IX just before the selection of the absorption steps. A sample run of the parallel algorithm is in Table VIII whose inputs are the same as those of Table VII. The parallel branches are written between succeeding horizontal lines. The first branch occurs at step 2 with tensor X =, 4 6, 9 6, 36 4 ] which is included in V 5 = [ 3 2, 2 3 ] (with the parameter c = 2). The two branches are pursued in parallel till the step 7 when the state tensor X = [ 5 2, 4 2, 47 28, 9 3 ] is included in V = 0, 0 ]. This means that the first branch is the correct one and the other 3 branch with tensor X = [ 0, 2 2, 3 8, 5 47 ] is closed. This is indicated by the character. Next branching occurs at step 24 with the state tensor X = 44, 65 9, 56 42, ] which is included in V 5. At the final step 27 we get two outputs, whose intervals Ψ[w] = [ 5 3, ], Ψ[w] = [ 37, 5 3 ] are contiguous. XII. DISCUSSION In the computation of the parallel algorithm, the branches may be repeatedly opened and closed again, but at any time there are at most two branches. These two branches can be computed by parallel processors which interact only if one of the branches has to be closed. The two branches may proceed in parallel indefinitely giving ever smaller output intervals. If the binary algorithm forms a part of a larger computational scheme, then both branches should be fed into the next procedure. We have tested the BCF parallel binary algorithm for the operations of addition, multiplication and division on hundreds of examples. In runs of 0000 steps, all statistical characteristics stabilize during the first 300 steps and then fluctuate only minimally. The bit length of the state tensor stabilizes at bit(x)/( u + v + w ) =..34 which is twice better than the bit length growth of the binary signed system. With random, independent, uniformly distributed inputs u, v we obtain limit input length quotients. n Lu[0,n) = n. L v[0,n) = 0.49 while the output length is. n Lw[0,n) = 0.5. It seems therefore that for long input words the BCF number system is better suited to perform the arbitrary precision computation than the binary signed system. REFERENCES [] R. W. Gosper. Continued fractions arithmetic. Unpublished manuscript, [2] M. Konečný. Real functions incrementally computable by finite automata. Theoretical Computer Science, 35():09 33, [3] P. Kornerup and D. W. Matula. Finite precision number systems and arithmetic. Cambridge University Press, Cambridge, 200. [4] P. Kornerup and D. W. Matula. An algorithm for redundant binary bit-pipelined rational arithmetic. IEEE Transactions on Computers, 39(8):06 5, August 990. [5] P. Kůrka. Möbius number systems with sofic subshifts. Nonlinearity, 22: , [6] P. Kůrka. Stern-Brocot graph in Möbius number systems. Nonlinearity, 25:57 72, 202. [7] P. Kůrka. Exact real arithmetic for interval number systems. Theoretical Computer Science, 542:32 43, 204. [8] P. Kůrka and M. Delacourt. The unary arithmetical algorithm in bimodular number systems. In 203 IEEE 2st Symposium on Computer Arithmetic ARITH-2, pages IEEE Computer Society, 203. [9] P. Kůrka and T. Vávra. Analytical functions computable by finite state transducers. In M. Holzer and M. Kutrib, editors, Implementation and Application of Automata, volume 8587 of LNCS, pages Springer-Verlag, 204. [0] M. Niqui. Exact real arithmetic on the Stern-Brocot tree. J. Discrete Algorithms, 5(2): , [] P. J. Potts. Exact real arithmetic using Möbius transformations. PhD thesis, University of London, Imperial College, London, 998. [2] J. E. Vuillemin. Exact real computer arithmetic with continued fractions. IEEE Transactions on Computers, 39(8):087 05, August 990.
Mathematics Course 111: Algebra I Part IV: Vector Spaces
Mathematics Course 111: Algebra I Part IV: Vector Spaces D. R. Wilkins Academic Year 1996-7 9 Vector Spaces A vector space over some field K is an algebraic structure consisting of a set V on which are
More informationContinued Fractions and the Euclidean Algorithm
Continued Fractions and the Euclidean Algorithm Lecture notes prepared for MATH 326, Spring 997 Department of Mathematics and Statistics University at Albany William F Hammond Table of Contents Introduction
More informationMA651 Topology. Lecture 6. Separation Axioms.
MA651 Topology. Lecture 6. Separation Axioms. This text is based on the following books: Fundamental concepts of topology by Peter O Neil Elements of Mathematics: General Topology by Nicolas Bourbaki Counterexamples
More informationChapter 4, Arithmetic in F [x] Polynomial arithmetic and the division algorithm.
Chapter 4, Arithmetic in F [x] Polynomial arithmetic and the division algorithm. We begin by defining the ring of polynomials with coefficients in a ring R. After some preliminary results, we specialize
More informationSOLUTIONS TO EXERCISES FOR. MATHEMATICS 205A Part 3. Spaces with special properties
SOLUTIONS TO EXERCISES FOR MATHEMATICS 205A Part 3 Fall 2008 III. Spaces with special properties III.1 : Compact spaces I Problems from Munkres, 26, pp. 170 172 3. Show that a finite union of compact subspaces
More informationQuotient Rings and Field Extensions
Chapter 5 Quotient Rings and Field Extensions In this chapter we describe a method for producing field extension of a given field. If F is a field, then a field extension is a field K that contains F.
More information9 More on differentiation
Tel Aviv University, 2013 Measure and category 75 9 More on differentiation 9a Finite Taylor expansion............... 75 9b Continuous and nowhere differentiable..... 78 9c Differentiable and nowhere monotone......
More informationInformation Theory and Coding Prof. S. N. Merchant Department of Electrical Engineering Indian Institute of Technology, Bombay
Information Theory and Coding Prof. S. N. Merchant Department of Electrical Engineering Indian Institute of Technology, Bombay Lecture - 17 Shannon-Fano-Elias Coding and Introduction to Arithmetic Coding
More informationNumerical Analysis Lecture Notes
Numerical Analysis Lecture Notes Peter J. Olver 5. Inner Products and Norms The norm of a vector is a measure of its size. Besides the familiar Euclidean norm based on the dot product, there are a number
More information1. Prove that the empty set is a subset of every set.
1. Prove that the empty set is a subset of every set. Basic Topology Written by Men-Gen Tsai email: b89902089@ntu.edu.tw Proof: For any element x of the empty set, x is also an element of every set since
More information1 if 1 x 0 1 if 0 x 1
Chapter 3 Continuity In this chapter we begin by defining the fundamental notion of continuity for real valued functions of a single real variable. When trying to decide whether a given function is or
More informationMath Review. for the Quantitative Reasoning Measure of the GRE revised General Test
Math Review for the Quantitative Reasoning Measure of the GRE revised General Test www.ets.org Overview This Math Review will familiarize you with the mathematical skills and concepts that are important
More informationVector and Matrix Norms
Chapter 1 Vector and Matrix Norms 11 Vector Spaces Let F be a field (such as the real numbers, R, or complex numbers, C) with elements called scalars A Vector Space, V, over the field F is a non-empty
More informationI. GROUPS: BASIC DEFINITIONS AND EXAMPLES
I GROUPS: BASIC DEFINITIONS AND EXAMPLES Definition 1: An operation on a set G is a function : G G G Definition 2: A group is a set G which is equipped with an operation and a special element e G, called
More informationDATA ANALYSIS II. Matrix Algorithms
DATA ANALYSIS II Matrix Algorithms Similarity Matrix Given a dataset D = {x i }, i=1,..,n consisting of n points in R d, let A denote the n n symmetric similarity matrix between the points, given as where
More informationU.C. Berkeley CS276: Cryptography Handout 0.1 Luca Trevisan January, 2009. Notes on Algebra
U.C. Berkeley CS276: Cryptography Handout 0.1 Luca Trevisan January, 2009 Notes on Algebra These notes contain as little theory as possible, and most results are stated without proof. Any introductory
More informationWhy? A central concept in Computer Science. Algorithms are ubiquitous.
Analysis of Algorithms: A Brief Introduction Why? A central concept in Computer Science. Algorithms are ubiquitous. Using the Internet (sending email, transferring files, use of search engines, online
More informationRN-coding of Numbers: New Insights and Some Applications
RN-coding of Numbers: New Insights and Some Applications Peter Kornerup Dept. of Mathematics and Computer Science SDU, Odense, Denmark & Jean-Michel Muller LIP/Arénaire (CRNS-ENS Lyon-INRIA-UCBL) Lyon,
More informationBasic Concepts of Point Set Topology Notes for OU course Math 4853 Spring 2011
Basic Concepts of Point Set Topology Notes for OU course Math 4853 Spring 2011 A. Miller 1. Introduction. The definitions of metric space and topological space were developed in the early 1900 s, largely
More informationSystems of Linear Equations
Systems of Linear Equations Beifang Chen Systems of linear equations Linear systems A linear equation in variables x, x,, x n is an equation of the form a x + a x + + a n x n = b, where a, a,, a n and
More informationRN-Codings: New Insights and Some Applications
RN-Codings: New Insights and Some Applications Abstract During any composite computation there is a constant need for rounding intermediate results before they can participate in further processing. Recently
More informationInteger Factorization using the Quadratic Sieve
Integer Factorization using the Quadratic Sieve Chad Seibert* Division of Science and Mathematics University of Minnesota, Morris Morris, MN 56567 seib0060@morris.umn.edu March 16, 2011 Abstract We give
More informationDEGREES OF ORDERS ON TORSION-FREE ABELIAN GROUPS
DEGREES OF ORDERS ON TORSION-FREE ABELIAN GROUPS ASHER M. KACH, KAREN LANGE, AND REED SOLOMON Abstract. We construct two computable presentations of computable torsion-free abelian groups, one of isomorphism
More informationLecture 3: Finding integer solutions to systems of linear equations
Lecture 3: Finding integer solutions to systems of linear equations Algorithmic Number Theory (Fall 2014) Rutgers University Swastik Kopparty Scribe: Abhishek Bhrushundi 1 Overview The goal of this lecture
More informationAlgebra Unpacked Content For the new Common Core standards that will be effective in all North Carolina schools in the 2012-13 school year.
This document is designed to help North Carolina educators teach the Common Core (Standard Course of Study). NCDPI staff are continually updating and improving these tools to better serve teachers. Algebra
More informationMetric Spaces. Chapter 1
Chapter 1 Metric Spaces Many of the arguments you have seen in several variable calculus are almost identical to the corresponding arguments in one variable calculus, especially arguments concerning convergence
More informationMASSACHUSETTS INSTITUTE OF TECHNOLOGY 6.436J/15.085J Fall 2008 Lecture 5 9/17/2008 RANDOM VARIABLES
MASSACHUSETTS INSTITUTE OF TECHNOLOGY 6.436J/15.085J Fall 2008 Lecture 5 9/17/2008 RANDOM VARIABLES Contents 1. Random variables and measurable functions 2. Cumulative distribution functions 3. Discrete
More informationModern Optimization Methods for Big Data Problems MATH11146 The University of Edinburgh
Modern Optimization Methods for Big Data Problems MATH11146 The University of Edinburgh Peter Richtárik Week 3 Randomized Coordinate Descent With Arbitrary Sampling January 27, 2016 1 / 30 The Problem
More informationCHAPTER SIX IRREDUCIBILITY AND FACTORIZATION 1. BASIC DIVISIBILITY THEORY
January 10, 2010 CHAPTER SIX IRREDUCIBILITY AND FACTORIZATION 1. BASIC DIVISIBILITY THEORY The set of polynomials over a field F is a ring, whose structure shares with the ring of integers many characteristics.
More informationApproximation Algorithms
Approximation Algorithms or: How I Learned to Stop Worrying and Deal with NP-Completeness Ong Jit Sheng, Jonathan (A0073924B) March, 2012 Overview Key Results (I) General techniques: Greedy algorithms
More informationArithmetic Coding: Introduction
Data Compression Arithmetic coding Arithmetic Coding: Introduction Allows using fractional parts of bits!! Used in PPM, JPEG/MPEG (as option), Bzip More time costly than Huffman, but integer implementation
More informationCS 103X: Discrete Structures Homework Assignment 3 Solutions
CS 103X: Discrete Structures Homework Assignment 3 s Exercise 1 (20 points). On well-ordering and induction: (a) Prove the induction principle from the well-ordering principle. (b) Prove the well-ordering
More informationMathematics for Computer Science/Software Engineering. Notes for the course MSM1F3 Dr. R. A. Wilson
Mathematics for Computer Science/Software Engineering Notes for the course MSM1F3 Dr. R. A. Wilson October 1996 Chapter 1 Logic Lecture no. 1. We introduce the concept of a proposition, which is a statement
More informationLet H and J be as in the above lemma. The result of the lemma shows that the integral
Let and be as in the above lemma. The result of the lemma shows that the integral ( f(x, y)dy) dx is well defined; we denote it by f(x, y)dydx. By symmetry, also the integral ( f(x, y)dx) dy is well defined;
More informationa 11 x 1 + a 12 x 2 + + a 1n x n = b 1 a 21 x 1 + a 22 x 2 + + a 2n x n = b 2.
Chapter 1 LINEAR EQUATIONS 1.1 Introduction to linear equations A linear equation in n unknowns x 1, x,, x n is an equation of the form a 1 x 1 + a x + + a n x n = b, where a 1, a,..., a n, b are given
More information1 Norms and Vector Spaces
008.10.07.01 1 Norms and Vector Spaces Suppose we have a complex vector space V. A norm is a function f : V R which satisfies (i) f(x) 0 for all x V (ii) f(x + y) f(x) + f(y) for all x,y V (iii) f(λx)
More informationThe Goldberg Rao Algorithm for the Maximum Flow Problem
The Goldberg Rao Algorithm for the Maximum Flow Problem COS 528 class notes October 18, 2006 Scribe: Dávid Papp Main idea: use of the blocking flow paradigm to achieve essentially O(min{m 2/3, n 1/2 }
More information1 Local Brouwer degree
1 Local Brouwer degree Let D R n be an open set and f : S R n be continuous, D S and c R n. Suppose that the set f 1 (c) D is compact. (1) Then the local Brouwer degree of f at c in the set D is defined.
More informationThe Mixed Binary Euclid Algorithm
Electronic Notes in Discrete Mathematics 35 (009) 169 176 www.elsevier.com/locate/endm The Mixed Binary Euclid Algorithm Sidi Mohamed Sedjelmaci LIPN CNRS UMR 7030 Université Paris-Nord Av. J.-B. Clément,
More informationMetric Spaces. Chapter 7. 7.1. Metrics
Chapter 7 Metric Spaces A metric space is a set X that has a notion of the distance d(x, y) between every pair of points x, y X. The purpose of this chapter is to introduce metric spaces and give some
More informationCHAPTER 5. Number Theory. 1. Integers and Division. Discussion
CHAPTER 5 Number Theory 1. Integers and Division 1.1. Divisibility. Definition 1.1.1. Given two integers a and b we say a divides b if there is an integer c such that b = ac. If a divides b, we write a
More informationChapter 11. 11.1 Load Balancing. Approximation Algorithms. Load Balancing. Load Balancing on 2 Machines. Load Balancing: Greedy Scheduling
Approximation Algorithms Chapter Approximation Algorithms Q. Suppose I need to solve an NP-hard problem. What should I do? A. Theory says you're unlikely to find a poly-time algorithm. Must sacrifice one
More informationMathematical Methods of Engineering Analysis
Mathematical Methods of Engineering Analysis Erhan Çinlar Robert J. Vanderbei February 2, 2000 Contents Sets and Functions 1 1 Sets................................... 1 Subsets.............................
More informationA Network Flow Approach in Cloud Computing
1 A Network Flow Approach in Cloud Computing Soheil Feizi, Amy Zhang, Muriel Médard RLE at MIT Abstract In this paper, by using network flow principles, we propose algorithms to address various challenges
More informationWhat are the place values to the left of the decimal point and their associated powers of ten?
The verbal answers to all of the following questions should be memorized before completion of algebra. Answers that are not memorized will hinder your ability to succeed in geometry and algebra. (Everything
More informationWeek 1: Introduction to Online Learning
Week 1: Introduction to Online Learning 1 Introduction This is written based on Prediction, Learning, and Games (ISBN: 2184189 / -21-8418-9 Cesa-Bianchi, Nicolo; Lugosi, Gabor 1.1 A Gentle Start Consider
More informationSHARP BOUNDS FOR THE SUM OF THE SQUARES OF THE DEGREES OF A GRAPH
31 Kragujevac J. Math. 25 (2003) 31 49. SHARP BOUNDS FOR THE SUM OF THE SQUARES OF THE DEGREES OF A GRAPH Kinkar Ch. Das Department of Mathematics, Indian Institute of Technology, Kharagpur 721302, W.B.,
More informationINTRODUCTORY SET THEORY
M.Sc. program in mathematics INTRODUCTORY SET THEORY Katalin Károlyi Department of Applied Analysis, Eötvös Loránd University H-1088 Budapest, Múzeum krt. 6-8. CONTENTS 1. SETS Set, equal sets, subset,
More informationLecture 15 An Arithmetic Circuit Lowerbound and Flows in Graphs
CSE599s: Extremal Combinatorics November 21, 2011 Lecture 15 An Arithmetic Circuit Lowerbound and Flows in Graphs Lecturer: Anup Rao 1 An Arithmetic Circuit Lower Bound An arithmetic circuit is just like
More informationPUTNAM TRAINING POLYNOMIALS. Exercises 1. Find a polynomial with integral coefficients whose zeros include 2 + 5.
PUTNAM TRAINING POLYNOMIALS (Last updated: November 17, 2015) Remark. This is a list of exercises on polynomials. Miguel A. Lerma Exercises 1. Find a polynomial with integral coefficients whose zeros include
More informationMarkov random fields and Gibbs measures
Chapter Markov random fields and Gibbs measures 1. Conditional independence Suppose X i is a random element of (X i, B i ), for i = 1, 2, 3, with all X i defined on the same probability space (.F, P).
More information! Solve problem to optimality. ! Solve problem in poly-time. ! Solve arbitrary instances of the problem. !-approximation algorithm.
Approximation Algorithms Chapter Approximation Algorithms Q Suppose I need to solve an NP-hard problem What should I do? A Theory says you're unlikely to find a poly-time algorithm Must sacrifice one of
More informationAlgebra I Vocabulary Cards
Algebra I Vocabulary Cards Table of Contents Expressions and Operations Natural Numbers Whole Numbers Integers Rational Numbers Irrational Numbers Real Numbers Absolute Value Order of Operations Expression
More information3. INNER PRODUCT SPACES
. INNER PRODUCT SPACES.. Definition So far we have studied abstract vector spaces. These are a generalisation of the geometric spaces R and R. But these have more structure than just that of a vector space.
More information5 INTEGER LINEAR PROGRAMMING (ILP) E. Amaldi Fondamenti di R.O. Politecnico di Milano 1
5 INTEGER LINEAR PROGRAMMING (ILP) E. Amaldi Fondamenti di R.O. Politecnico di Milano 1 General Integer Linear Program: (ILP) min c T x Ax b x 0 integer Assumption: A, b integer The integrality condition
More informationFormal Languages and Automata Theory - Regular Expressions and Finite Automata -
Formal Languages and Automata Theory - Regular Expressions and Finite Automata - Samarjit Chakraborty Computer Engineering and Networks Laboratory Swiss Federal Institute of Technology (ETH) Zürich March
More informationTransportation Polytopes: a Twenty year Update
Transportation Polytopes: a Twenty year Update Jesús Antonio De Loera University of California, Davis Based on various papers joint with R. Hemmecke, E.Kim, F. Liu, U. Rothblum, F. Santos, S. Onn, R. Yoshida,
More informationFUNCTIONAL ANALYSIS LECTURE NOTES: QUOTIENT SPACES
FUNCTIONAL ANALYSIS LECTURE NOTES: QUOTIENT SPACES CHRISTOPHER HEIL 1. Cosets and the Quotient Space Any vector space is an abelian group under the operation of vector addition. So, if you are have studied
More informationBANACH AND HILBERT SPACE REVIEW
BANACH AND HILBET SPACE EVIEW CHISTOPHE HEIL These notes will briefly review some basic concepts related to the theory of Banach and Hilbert spaces. We are not trying to give a complete development, but
More informationDecember 4, 2013 MATH 171 BASIC LINEAR ALGEBRA B. KITCHENS
December 4, 2013 MATH 171 BASIC LINEAR ALGEBRA B KITCHENS The equation 1 Lines in two-dimensional space (1) 2x y = 3 describes a line in two-dimensional space The coefficients of x and y in the equation
More information1 Homework 1. [p 0 q i+j +... + p i 1 q j+1 ] + [p i q j ] + [p i+1 q j 1 +... + p i+j q 0 ]
1 Homework 1 (1) Prove the ideal (3,x) is a maximal ideal in Z[x]. SOLUTION: Suppose we expand this ideal by including another generator polynomial, P / (3, x). Write P = n + x Q with n an integer not
More informationIntroduction to Scheduling Theory
Introduction to Scheduling Theory Arnaud Legrand Laboratoire Informatique et Distribution IMAG CNRS, France arnaud.legrand@imag.fr November 8, 2004 1/ 26 Outline 1 Task graphs from outer space 2 Scheduling
More informationAlgebra 2 Chapter 1 Vocabulary. identity - A statement that equates two equivalent expressions.
Chapter 1 Vocabulary identity - A statement that equates two equivalent expressions. verbal model- A word equation that represents a real-life problem. algebraic expression - An expression with variables.
More information(Refer Slide Time: 01:11-01:27)
Digital Signal Processing Prof. S. C. Dutta Roy Department of Electrical Engineering Indian Institute of Technology, Delhi Lecture - 6 Digital systems (contd.); inverse systems, stability, FIR and IIR,
More informationMATRIX ALGEBRA AND SYSTEMS OF EQUATIONS
MATRIX ALGEBRA AND SYSTEMS OF EQUATIONS Systems of Equations and Matrices Representation of a linear system The general system of m equations in n unknowns can be written a x + a 2 x 2 + + a n x n b a
More informationReliability Guarantees in Automata Based Scheduling for Embedded Control Software
1 Reliability Guarantees in Automata Based Scheduling for Embedded Control Software Santhosh Prabhu, Aritra Hazra, Pallab Dasgupta Department of CSE, IIT Kharagpur West Bengal, India - 721302. Email: {santhosh.prabhu,
More informationCatalan Numbers. Thomas A. Dowling, Department of Mathematics, Ohio State Uni- versity.
7 Catalan Numbers Thomas A. Dowling, Department of Mathematics, Ohio State Uni- Author: versity. Prerequisites: The prerequisites for this chapter are recursive definitions, basic counting principles,
More informationOn the k-path cover problem for cacti
On the k-path cover problem for cacti Zemin Jin and Xueliang Li Center for Combinatorics and LPMC Nankai University Tianjin 300071, P.R. China zeminjin@eyou.com, x.li@eyou.com Abstract In this paper we
More information15.062 Data Mining: Algorithms and Applications Matrix Math Review
.6 Data Mining: Algorithms and Applications Matrix Math Review The purpose of this document is to give a brief review of selected linear algebra concepts that will be useful for the course and to develop
More informationSo let us begin our quest to find the holy grail of real analysis.
1 Section 5.2 The Complete Ordered Field: Purpose of Section We present an axiomatic description of the real numbers as a complete ordered field. The axioms which describe the arithmetic of the real numbers
More informationA Direct Numerical Method for Observability Analysis
IEEE TRANSACTIONS ON POWER SYSTEMS, VOL 15, NO 2, MAY 2000 625 A Direct Numerical Method for Observability Analysis Bei Gou and Ali Abur, Senior Member, IEEE Abstract This paper presents an algebraic method
More informationTesting LTL Formula Translation into Büchi Automata
Testing LTL Formula Translation into Büchi Automata Heikki Tauriainen and Keijo Heljanko Helsinki University of Technology, Laboratory for Theoretical Computer Science, P. O. Box 5400, FIN-02015 HUT, Finland
More informationAutomata on Infinite Words and Trees
Automata on Infinite Words and Trees Course notes for the course Automata on Infinite Words and Trees given by Dr. Meghyn Bienvenu at Universität Bremen in the 2009-2010 winter semester Last modified:
More informationDirect Methods for Solving Linear Systems. Matrix Factorization
Direct Methods for Solving Linear Systems Matrix Factorization Numerical Analysis (9th Edition) R L Burden & J D Faires Beamer Presentation Slides prepared by John Carroll Dublin City University c 2011
More informationLecture 13 - Basic Number Theory.
Lecture 13 - Basic Number Theory. Boaz Barak March 22, 2010 Divisibility and primes Unless mentioned otherwise throughout this lecture all numbers are non-negative integers. We say that A divides B, denoted
More informationABSTRACT ALGEBRA: A STUDY GUIDE FOR BEGINNERS
ABSTRACT ALGEBRA: A STUDY GUIDE FOR BEGINNERS John A. Beachy Northern Illinois University 2014 ii J.A.Beachy This is a supplement to Abstract Algebra, Third Edition by John A. Beachy and William D. Blair
More informationP NP for the Reals with various Analytic Functions
P NP for the Reals with various Analytic Functions Mihai Prunescu Abstract We show that non-deterministic machines in the sense of [BSS] defined over wide classes of real analytic structures are more powerful
More information8 Primes and Modular Arithmetic
8 Primes and Modular Arithmetic 8.1 Primes and Factors Over two millennia ago already, people all over the world were considering the properties of numbers. One of the simplest concepts is prime numbers.
More informationit is easy to see that α = a
21. Polynomial rings Let us now turn out attention to determining the prime elements of a polynomial ring, where the coefficient ring is a field. We already know that such a polynomial ring is a UF. Therefore
More informationNo: 10 04. Bilkent University. Monotonic Extension. Farhad Husseinov. Discussion Papers. Department of Economics
No: 10 04 Bilkent University Monotonic Extension Farhad Husseinov Discussion Papers Department of Economics The Discussion Papers of the Department of Economics are intended to make the initial results
More informationA simple criterion on degree sequences of graphs
Discrete Applied Mathematics 156 (2008) 3513 3517 Contents lists available at ScienceDirect Discrete Applied Mathematics journal homepage: www.elsevier.com/locate/dam Note A simple criterion on degree
More informationMessage-passing sequential detection of multiple change points in networks
Message-passing sequential detection of multiple change points in networks Long Nguyen, Arash Amini Ram Rajagopal University of Michigan Stanford University ISIT, Boston, July 2012 Nguyen/Amini/Rajagopal
More informationImprecise probabilities, bets and functional analytic methods in Łukasiewicz logic.
Imprecise probabilities, bets and functional analytic methods in Łukasiewicz logic. Martina Fedel joint work with K.Keimel,F.Montagna,W.Roth Martina Fedel (UNISI) 1 / 32 Goal The goal of this talk is to
More informationAN ALGORITHM FOR DETERMINING WHETHER A GIVEN BINARY MATROID IS GRAPHIC
AN ALGORITHM FOR DETERMINING WHETHER A GIVEN BINARY MATROID IS GRAPHIC W. T. TUTTE. Introduction. In a recent series of papers [l-4] on graphs and matroids I used definitions equivalent to the following.
More informationMatrix Representations of Linear Transformations and Changes of Coordinates
Matrix Representations of Linear Transformations and Changes of Coordinates 01 Subspaces and Bases 011 Definitions A subspace V of R n is a subset of R n that contains the zero element and is closed under
More information1 Solving LPs: The Simplex Algorithm of George Dantzig
Solving LPs: The Simplex Algorithm of George Dantzig. Simplex Pivoting: Dictionary Format We illustrate a general solution procedure, called the simplex algorithm, by implementing it on a very simple example.
More informationGod created the integers and the rest is the work of man. (Leopold Kronecker, in an after-dinner speech at a conference, Berlin, 1886)
Chapter 2 Numbers God created the integers and the rest is the work of man. (Leopold Kronecker, in an after-dinner speech at a conference, Berlin, 1886) God created the integers and the rest is the work
More informationOptimal File Sharing in Distributed Networks
Optimal File Sharing in Distributed Networks Moni Naor Ron M. Roth Abstract The following file distribution problem is considered: Given a network of processors represented by an undirected graph G = (V,
More information(67902) Topics in Theory and Complexity Nov 2, 2006. Lecture 7
(67902) Topics in Theory and Complexity Nov 2, 2006 Lecturer: Irit Dinur Lecture 7 Scribe: Rani Lekach 1 Lecture overview This Lecture consists of two parts In the first part we will refresh the definition
More informationThe Characteristic Polynomial
Physics 116A Winter 2011 The Characteristic Polynomial 1 Coefficients of the characteristic polynomial Consider the eigenvalue problem for an n n matrix A, A v = λ v, v 0 (1) The solution to this problem
More informationCollinear Points in Permutations
Collinear Points in Permutations Joshua N. Cooper Courant Institute of Mathematics New York University, New York, NY József Solymosi Department of Mathematics University of British Columbia, Vancouver,
More informationA Practical Scheme for Wireless Network Operation
A Practical Scheme for Wireless Network Operation Radhika Gowaikar, Amir F. Dana, Babak Hassibi, Michelle Effros June 21, 2004 Abstract In many problems in wireline networks, it is known that achieving
More informationDiversity Coloring for Distributed Data Storage in Networks 1
Diversity Coloring for Distributed Data Storage in Networks 1 Anxiao (Andrew) Jiang and Jehoshua Bruck California Institute of Technology Pasadena, CA 9115, U.S.A. {jax, bruck}@paradise.caltech.edu Abstract
More informationα = u v. In other words, Orthogonal Projection
Orthogonal Projection Given any nonzero vector v, it is possible to decompose an arbitrary vector u into a component that points in the direction of v and one that points in a direction orthogonal to v
More informationShort Programs for functions on Curves
Short Programs for functions on Curves Victor S. Miller Exploratory Computer Science IBM, Thomas J. Watson Research Center Yorktown Heights, NY 10598 May 6, 1986 Abstract The problem of deducing a function
More informationTHE DYING FIBONACCI TREE. 1. Introduction. Consider a tree with two types of nodes, say A and B, and the following properties:
THE DYING FIBONACCI TREE BERNHARD GITTENBERGER 1. Introduction Consider a tree with two types of nodes, say A and B, and the following properties: 1. Let the root be of type A.. Each node of type A produces
More informationRegular Languages and Finite Automata
Regular Languages and Finite Automata 1 Introduction Hing Leung Department of Computer Science New Mexico State University Sep 16, 2010 In 1943, McCulloch and Pitts [4] published a pioneering work on a
More informationDiscrete Optimization
Discrete Optimization [Chen, Batson, Dang: Applied integer Programming] Chapter 3 and 4.1-4.3 by Johan Högdahl and Victoria Svedberg Seminar 2, 2015-03-31 Todays presentation Chapter 3 Transforms using
More informationThe sample space for a pair of die rolls is the set. The sample space for a random number between 0 and 1 is the interval [0, 1].
Probability Theory Probability Spaces and Events Consider a random experiment with several possible outcomes. For example, we might roll a pair of dice, flip a coin three times, or choose a random real
More informationVERTICES OF GIVEN DEGREE IN SERIES-PARALLEL GRAPHS
VERTICES OF GIVEN DEGREE IN SERIES-PARALLEL GRAPHS MICHAEL DRMOTA, OMER GIMENEZ, AND MARC NOY Abstract. We show that the number of vertices of a given degree k in several kinds of series-parallel labelled
More information