# “Information Transfer and Area-Time Tradeoffs for VLSI Multiplication,”

Number Systems Integers are widely used to describe problems. The infinite set consisting of 0 and the positive integers {1, 2, 3, …} is called the set of natural numbers. The set of positive and negative integers and zero, , consists of the integers {0, 1, −1, 2, −2, …}. In the standard decimal representation of the natural numbers, each integer n is represented as a sum of powers of 10. For example, 867 = 8 × 102 + 6 × 101 + 7 × 100. Since computers today are binary machines, it is convenient to represent integers over base 2 instead of 10. The standard binary representation for the natural numbers represents each integer as a sum of powers of 2. That is, for some k ≥ 0 each integer n can be represented as a k-tuple x = (xk−1, xk−2, … , x1, x0), where each of xk−1, xk−2, … , x1, x0 has value 0 or 1 and n satisfies the following identity: n = xk−12k−1 + xk−22k−2 + ··· + x121 + x020 The largest integer that can be represented with k bits is 2k−1 + 2k−2 + ··· + 21 + 20 = 2k − 1. (See Problem 1.1.) Also, the k-tuple representation for n is unique; that is, two different integers cannot have the same representation. When leading 0’s are suppressed, the standard binary representation for 1, 15, 32, and 97 are (1), (1, 1, 1, 1), (1, 0, 0, 0, 0, 0), and (1, 1, 0, 0, 0, 0, 1), respectively. We denote with x + y, x − y, x ∗ y, and x/y the results of addition, subtraction, multiplication, and division of integers c John E Savage 1.2 Mathematical Preliminaries 9 1.2.3 Languages and Strings An alphabet A is a finite set with at least two elements. A string x is an element(a1, a2, … , ak) of the Cartesian product Ak in which we drop the commas and parentheses. Thus, we write x = a1a2 ··· ak, and say that x is a string over the alphabet A. A string x in Ak is said to have length k, denoted |x| = k. Thus, 011 is a string of length three over A = {0, 1}. Consider now the Cartesian product Ak ×Al = Ak+l , which is the (k+l)-fold Cartesian product of A with itself. Let x = a1a2 ··· ak ∈ Ak and y = b1b2 ··· bl ∈ Al . Then a string z = c1c2 ··· ck+l ∈ Ak+l can be written as the concatenation of strings x and y of length k and l, denoted, z = x · y, where x · y = a1a2 ··· akb1b2 ··· bl That is, ci = ai for 1 ≤ i ≤ k and ci = bi−k for k + 1 ≤ i ≤ k + l. The empty string, denoted , is a special string with the property that when concatenated with any other string x it returns x; that is, x· = ·x = x. The empty string is said to have zero length. As a special case of Ak, we let A0 denote the set containing the empty string; that is, A0 = {}.