Difference between revisions of "Division Algorithms"
Line 77: | Line 77: | ||
==Division in different contexts== | ==Division in different contexts== | ||
=== Euclidean division === | === Euclidean division === | ||
− | Euclidean division is the mathematical formulation of the outcome of the usual process of division of integers. It asserts that, given two integers, ''a'', the ''dividend'', and ''b'', the ''divisor'', such that ''b'' ≠ 0, there are | + | Euclidean division is the mathematical formulation of the outcome of the usual process of division of integers. It asserts that, given two integers, ''a'', the ''dividend'', and ''b'', the ''divisor'', such that ''b'' ≠ 0, there are unique integers ''q'', the ''quotient'', and ''r'', the remainder, such that ''a'' = ''bq'' + ''r'' and 0 ≤ ''r'' < |''b''|, where |''b''| denotes the absolute value of ''b''. |
=== Of integers === | === Of integers === | ||
− | Integers are not | + | Integers are not closed under division. Apart from division by zero being undefined, the quotient is not an integer unless the dividend is an integer multiple of the divisor. For example, 26 cannot be divided by 11 to give an integer. Such a case uses one of five approaches: |
− | # Say that 26 cannot be divided by 11; division becomes a | + | # Say that 26 cannot be divided by 11; division becomes a partial function. |
− | # Give an approximate answer as a " | + | # Give an approximate answer as a "real" number. This is the approach usually taken in numerical computation. |
− | # Give the answer as a | + | # Give the answer as a fraction representing a rational number, so the result of the division of 26 by 11 is <math>\tfrac{26}{11}</math> (or as a mixed number, so <math>\tfrac{26}{11} = 2 \tfrac 4{11}.</math>) Usually the resulting fraction should be simplified: the result of the division of 52 by 22 is also <math>\tfrac{26}{11}</math>. This simplification may be done by factoring out the greatest common divisor. |
− | # Give the answer as an integer '' | + | # Give the answer as an integer ''quotient'' and a ''remainder'', so <math>\tfrac{26}{11} = 2 \mbox{ remainder } 4.</math> To make the distinction with the previous case, this division, with two integers as result, is sometimes called ''Euclidean division'', because it is the basis of the Euclidean algorithm. |
− | # Give the integer quotient as the answer, so <math>\tfrac{26}{11} = 2.</math> This is the '' | + | # Give the integer quotient as the answer, so <math>\tfrac{26}{11} = 2.</math> This is the ''floor function'', also sometimes called ''integer division'' at an elementary level. |
− | Dividing integers in a | + | Dividing integers in a computer program requires special care. Some programming languages, treat integer division as in case 5 above, so the answer is an integer. Other languages, such as MATLAB and every computer algebra system return a rational number as the answer, as in case 3 above. These languages also provide functions to get the results of the other cases, either directly or from the result of case 3. |
− | Names and symbols used for integer division include div, /, \, and %. Definitions vary regarding integer division when the dividend or the divisor is negative: | + | Names and symbols used for integer division include div, /, \, and %. Definitions vary regarding integer division when the dividend or the divisor is negative: rounding may be toward zero (so called T-division) or toward −∞ (F-division); rarer styles can occur – see Modulo operation for the details. |
− | + | Divisibility rules can sometimes be used to quickly determine whether one integer divides exactly into another. | |
=== Of rational numbers === | === Of rational numbers === | ||
− | The result of dividing two | + | The result of dividing two rational numbers is another rational number when the divisor is not 0. The division of two rational numbers ''p''/''q'' and ''r''/''s'' can be computed as |
:<math>{p/q \over r/s} = {p \over q} \times {s \over r} = {ps \over qr}.</math> | :<math>{p/q \over r/s} = {p \over q} \times {s \over r} = {ps \over qr}.</math> | ||
− | All four quantities are integers, and only ''p'' may be 0. This definition ensures that division is the inverse operation of | + | All four quantities are integers, and only ''p'' may be 0. This definition ensures that division is the inverse operation of multiplication. |
=== Of real numbers === | === Of real numbers === | ||
Line 103: | Line 103: | ||
=== Of complex numbers === | === Of complex numbers === | ||
− | Dividing two | + | Dividing two complex numbers (when the divisor is nonzero) results in another complex number, which is found using the conjugate of the denominator: |
:<math>{p+iq \over r+is} = {(p+iq)(r-is) \over (r+is)(r-is)} = {pr+qs + i(qr-ps) \over r^2+s^2} = {pr+qs \over r^2+s^2} + i{qr-ps \over r^2+s^2}.</math> | :<math>{p+iq \over r+is} = {(p+iq)(r-is) \over (r+is)(r-is)} = {pr+qs + i(qr-ps) \over r^2+s^2} = {pr+qs \over r^2+s^2} + i{qr-ps \over r^2+s^2}.</math> | ||
− | This process of multiplying and dividing by <math>r-is</math> is called 'realisation' or (by analogy) | + | This process of multiplying and dividing by <math>r-is</math> is called 'realisation' or (by analogy) rationalisation. All four quantities ''p'', ''q'', ''r'', ''s'' are real numbers, and ''r'' and ''s'' may not both be 0. |
Division for complex numbers expressed in polar form is simpler than the definition above: | Division for complex numbers expressed in polar form is simpler than the definition above: | ||
Line 114: | Line 114: | ||
=== Of polynomials === | === Of polynomials === | ||
− | One can define the division operation for | + | One can define the division operation for polynomials in one variable over a field. Then, as in the case of integers, one has a remainder. See Euclidean division of polynomials, and, for hand-written computation, polynomial long division or synthetic division. |
=== Of matrices === | === Of matrices === | ||
− | One can define a division operation for matrices. The usual way to do this is to define | + | One can define a division operation for matrices. The usual way to do this is to define ''A'' / ''B'' = ''AB''<sup>−1</sup>, where ''B''<sup>−1</sup> denotes the inverse of ''B'', but it is far more common to write out ''AB''<sup>−1</sup> explicitly to avoid confusion. An elementwise division can also be defined in terms of the Hadamard product. |
==== Left and right division ==== | ==== Left and right division ==== | ||
− | Because | + | Because matrix multiplication is not commutative, one can also define a left division or so-called ''backslash-division'' as ''A'' \ ''B'' = ''A''<sup>−1</sup>''B''. For this to be well defined, ''B''<sup>−1</sup> need not exist, however ''A''<sup>−1</sup> does need to exist. To avoid confusion, division as defined by ''A'' / ''B'' = ''AB''<sup>−1</sup> is sometimes called ''right division'' or ''slash-division'' in this context. |
− | Note that with left and right division defined this way, | + | Note that with left and right division defined this way, ''A'' / (''BC'') is in general not the same as (''A'' / ''B'') / ''C'', nor is (''AB'') \ ''C'' the same as ''A'' \ (''B'' \ ''C''). However, it holds that {{nowrap|1=''A'' / (''BC'') = (''A'' / ''C'') / ''B''}} and {{nowrap|1=(''AB'') \ ''C'' = ''B'' \ (''A'' \ ''C'')}}. |
==== Pseudoinverse ==== | ==== Pseudoinverse ==== | ||
− | To avoid problems when | + | To avoid problems when ''A''<sup>−1</sup> and/or ''B''<sup>−1</sup> do not exist, division can also be defined as multiplication by the pseudoinverse. That is, ''A'' / ''B'' = ''AB''<sup>+</sup> and ''A'' \ ''B'' = ''A''<sup>+</sup>''B'', where ''A''<sup>+</sup> and ''B''<sup>+</sup> denote the pseudoinverses of ''A'' and ''B''. |
=== Abstract algebra === | === Abstract algebra === | ||
− | In | + | In abstract algebra, given a magma with binary operation ∗ (which could nominally be termed multiplication), left division of ''b'' by ''a'' (written ''a'' \ ''b'') is typically defined as the solution ''x'' to the equation ''a'' ∗ ''x'' = ''b'', if this exists and is unique. Similarly, right division of ''b'' by ''a'' (written ''b'' / ''a'') is the solution ''y'' to the equation ''y'' ∗ ''a'' = ''b''. Division in this sense does not require ∗ to have any particular properties (such as commutativity, associativity, or an identity element). |
− | "Division" in the sense of "cancellation" can be done in any magma by an element with the | + | "Division" in the sense of "cancellation" can be done in any magma by an element with the cancellation property. Examples include matrix algebras and quaternion algebras. A quasigroup is a structure in which division is always possible, even without an identity element and hence inverses. In an integral domain, where not every element need have an inverse, ''division'' by a cancellative element ''a'' can still be performed on elements of the form ''ab'' or ''ca'' by left or right cancellation, respectively. If a ring is finite and every nonzero element is cancellative, then by an application of the pigeonhole principle, every nonzero element of the ring is invertible, and ''division'' by any nonzero element is possible. To learn about when ''algebras'' (in the technical sense) have a division operation, refer to the page on division algebras. In particular Bott periodicity can be used to show that any real normed division algebra must be isomorphic to either the real numbers '''R''', the complex numbers '''C''', the quaternions '''H''', or the octonions '''O'''. |
− | |||
=== Calculus === | === Calculus === |
Revision as of 15:22, 8 January 2022
Division is one of the four basic operations of arithmetic, the ways that numbers are combined to make new numbers. The other operations are addition, subtraction, and multiplication.
At an elementary level the division of two natural numbers is, among other possible interpretations, the process of calculating the number of times one number is contained within another. This number of times is not always an integer (a number that can be obtained using the other arithmetic operations on the natural numbers).
The division with remainder or Euclidean division of two natural numbers provides an integer quotient, which is the number of times the second number is completely contained in the first number, and a remainder, which is the part of the first number that remains, when in the course of computing the quotient, no further full chunk of the size of the second number can be allocated.
For division to always yield one number rather than a quotient plus a remainder, the natural numbers must be extended to rational numbers (the numbers that can be obtained by using arithmetic on natural numbers) or real numbers. In these enlarged number systems, division is the inverse operation to multiplication, that is a = c / b means a × b = c, as long as b is not zero. If b = 0, then this is a division by zero, which is not defined.
Both forms of division appear in various algebraic structures, different ways of defining mathematical structure. Those in which a Euclidean division (with remainder) is defined are called Euclidean domains and include polynomial rings in one indeterminate (which define multiplication and addition over single-variabled formulas). Those in which a division (with a single result) by all nonzero elements is defined are called fields and division rings. In a ring the elements by which division is always possible are called the units (for example, 1 and −1 in the ring of integers). Another generalization of division to algebraic structures is the quotient group, in which the result of "division" is a group rather than a number.
Introduction
The simplest way of viewing division is in terms of quotition and partition: from the quotition perspective, 20 / 5 means the number of 5s that must be added to get 20. In terms of partition, 20 / 5 means the size of each of 5 parts into which a set of size 20 is divided. For example, 20 apples divide into five groups of four apples, meaning that twenty divided by five is equal to four. This is denoted as 20 / 5 = 4, or . What is being divided is called the dividend, which is divided by the divisor, and the result is called the quotient. In the example, 20 is the dividend, 5 is the divisor, and 4 is the quotient.
Unlike the other basic operations, when dividing natural numbers there is sometimes a remainder that will not go evenly into the dividend; for example, 10 / 3 leaves a remainder of 1, as 10 is not a multiple of 3. Sometimes this remainder is added to the quotient as a fractional part, so 10 / 3 is equal to or 3.33..., but in the context of integer division, where numbers have no fractional part, the remainder is kept separately (or exceptionally, discarded or rounded). When the remainder is kept as a fraction, it leads to a rational number. The set of all rational numbers is created by extending the integers with all possible results of divisions of integers.
Unlike multiplication and addition, division is not commutative, meaning that a / b is not always equal to b / a. Division is also not, in general, associative, meaning that when dividing multiple times, the order of division can change the result. For example, (20 / 5) / 2 = 2, but 20 / (5 / 2) = 8 (where the use of parentheses indicates that the operations inside parentheses are performed before the operations outside parentheses).
Division is traditionally considered as left-associative. That is, if there are multiple divisions in a row, the order of calculation goes from left to right:
Division is right-distributive over addition and subtraction, in the sense that
This is the same for multiplication, as . However, division is not left-distributive, as
This is unlike the case in multiplication, which is both left-distributive and right-distributive, and thus distributive.
Notation
Division is often shown in algebra and science by placing the dividend over the divisor with a horizontal line, also called a fraction bar, between them. For example, "a divided by b" can written as:
which can also be read out loud as "divide a by b" or "a over b". A way to express division all on one line is to write the dividend (or numerator), then a slash, then the divisor (or denominator), as follows:
This is the usual way of specifying division in most computer programming languages, since it can easily be typed as a simple sequence of ASCII characters. (It is also the only notation used for quotient objects in abstract algebra.) Some mathematical software, such as MATLAB and GNU Octave, allows the operands to be written in the reverse order by using the backslash as the division operator:
A typographical variation halfway between these two forms uses a solidus (fraction slash), but elevates the dividend and lowers the divisor:
Any of these forms can be used to display a fraction. A fraction is a division expression where both dividend and divisor are integers (typically called the numerator and denominator), and there is no implication that the division must be evaluated further. A second way to show division is to use the division sign (÷, also known as obelus though the term has additional meanings), common in arithmetic, in this manner:
This form is infrequent except in elementary arithmetic. ISO 80000-2-9.6 states it should not be used. This division sign is also used alone to represent the division operation itself, as for instance as a label on a key of a calculator. The obelus was introduced by Swiss mathematician Johann Rahn in 1659 in Teutsche Algebra. The ÷ symbol is used to indicate subtraction in some European countries, so its use may be misunderstood.
In some non-English-speaking countries, a colon is used to denote division:
This notation was introduced by Gottfried Wilhelm Leibniz in his 1684 Acta eruditorum. Leibniz disliked having separate symbols for ratio and division. However, in English usage the colon is restricted to expressing the related concept of ratios.
Since the 19th century, US textbooks have used or to denote a divided by b, especially when discussing long division. The history of this notation is not entirely clear because it evolved over time.
Computing
Manual methods
Division is often introduced through the notion of "sharing out" a set of objects, for example a pile of lollies, into a number of equal portions. Distributing the objects several at a time in each round of sharing to each portion leads to the idea of 'chunking' – a form of division where one repeatedly subtracts multiples of the divisor from the dividend itself.
By allowing one to subtract more multiples than what the partial remainder allows at a given stage, more flexible methods, such as the bidirectional variant of chunking, can be developed as well.
More systematically and more efficiently, two integers can be divided with pencil and paper with the method of short division, if the divisor is small, or long division, if the divisor is larger. If the dividend has a fractional part (expressed as a decimal fraction), one can continue the procedure past the ones place as far as desired. If the divisor has a fractional part, one can restate the problem by moving the decimal to the right in both numbers until the divisor has no fraction, which can make the problem easier to solve (e.g., 10/2.5 = 100/25 = 4).
Division can be calculated with an abacus.
Logarithm tables can be used to divide two numbers, by subtracting the two numbers' logarithms, then looking up the antilogarithm of the result.
Division can be calculated with a slide rule by aligning the divisor on the C scale with the dividend on the D scale. The quotient can be found on the D scale where it is aligned with the left index on the C scale. The user is responsible, however, for mentally keeping track of the decimal point.
By computer
Modern calculators and computers compute division either by methods similar to long division, or by faster methods; see Division algorithm.
In modular arithmetic (modulo a prime number) and for real numbers, nonzero numbers have a multiplicative inverse. In these cases, a division by x may be computed as the product by the multiplicative inverse of x. This approach is often associated with the faster methods in computer arithmetic.
Division in different contexts
Euclidean division
Euclidean division is the mathematical formulation of the outcome of the usual process of division of integers. It asserts that, given two integers, a, the dividend, and b, the divisor, such that b ≠ 0, there are unique integers q, the quotient, and r, the remainder, such that a = bq + r and 0 ≤ r < |b|, where |b| denotes the absolute value of b.
Of integers
Integers are not closed under division. Apart from division by zero being undefined, the quotient is not an integer unless the dividend is an integer multiple of the divisor. For example, 26 cannot be divided by 11 to give an integer. Such a case uses one of five approaches:
- Say that 26 cannot be divided by 11; division becomes a partial function.
- Give an approximate answer as a "real" number. This is the approach usually taken in numerical computation.
- Give the answer as a fraction representing a rational number, so the result of the division of 26 by 11 is (or as a mixed number, so ) Usually the resulting fraction should be simplified: the result of the division of 52 by 22 is also . This simplification may be done by factoring out the greatest common divisor.
- Give the answer as an integer quotient and a remainder, so To make the distinction with the previous case, this division, with two integers as result, is sometimes called Euclidean division, because it is the basis of the Euclidean algorithm.
- Give the integer quotient as the answer, so This is the floor function, also sometimes called integer division at an elementary level.
Dividing integers in a computer program requires special care. Some programming languages, treat integer division as in case 5 above, so the answer is an integer. Other languages, such as MATLAB and every computer algebra system return a rational number as the answer, as in case 3 above. These languages also provide functions to get the results of the other cases, either directly or from the result of case 3.
Names and symbols used for integer division include div, /, \, and %. Definitions vary regarding integer division when the dividend or the divisor is negative: rounding may be toward zero (so called T-division) or toward −∞ (F-division); rarer styles can occur – see Modulo operation for the details.
Divisibility rules can sometimes be used to quickly determine whether one integer divides exactly into another.
Of rational numbers
The result of dividing two rational numbers is another rational number when the divisor is not 0. The division of two rational numbers p/q and r/s can be computed as
All four quantities are integers, and only p may be 0. This definition ensures that division is the inverse operation of multiplication.
Of real numbers
Division of two real numbers results in another real number (when the divisor is nonzero). It is defined such that a/b = c if and only if a = cb and b ≠ 0.
Of complex numbers
Dividing two complex numbers (when the divisor is nonzero) results in another complex number, which is found using the conjugate of the denominator:
This process of multiplying and dividing by is called 'realisation' or (by analogy) rationalisation. All four quantities p, q, r, s are real numbers, and r and s may not both be 0.
Division for complex numbers expressed in polar form is simpler than the definition above:
Again all four quantities p, q, r, s are real numbers, and r may not be 0.
Of polynomials
One can define the division operation for polynomials in one variable over a field. Then, as in the case of integers, one has a remainder. See Euclidean division of polynomials, and, for hand-written computation, polynomial long division or synthetic division.
Of matrices
One can define a division operation for matrices. The usual way to do this is to define A / B = AB−1, where B−1 denotes the inverse of B, but it is far more common to write out AB−1 explicitly to avoid confusion. An elementwise division can also be defined in terms of the Hadamard product.
Left and right division
Because matrix multiplication is not commutative, one can also define a left division or so-called backslash-division as A \ B = A−1B. For this to be well defined, B−1 need not exist, however A−1 does need to exist. To avoid confusion, division as defined by A / B = AB−1 is sometimes called right division or slash-division in this context.
Note that with left and right division defined this way, A / (BC) is in general not the same as (A / B) / C, nor is (AB) \ C the same as A \ (B \ C). However, it holds that Template:Nowrap and Template:Nowrap.
Pseudoinverse
To avoid problems when A−1 and/or B−1 do not exist, division can also be defined as multiplication by the pseudoinverse. That is, A / B = AB+ and A \ B = A+B, where A+ and B+ denote the pseudoinverses of A and B.
Abstract algebra
In abstract algebra, given a magma with binary operation ∗ (which could nominally be termed multiplication), left division of b by a (written a \ b) is typically defined as the solution x to the equation a ∗ x = b, if this exists and is unique. Similarly, right division of b by a (written b / a) is the solution y to the equation y ∗ a = b. Division in this sense does not require ∗ to have any particular properties (such as commutativity, associativity, or an identity element).
"Division" in the sense of "cancellation" can be done in any magma by an element with the cancellation property. Examples include matrix algebras and quaternion algebras. A quasigroup is a structure in which division is always possible, even without an identity element and hence inverses. In an integral domain, where not every element need have an inverse, division by a cancellative element a can still be performed on elements of the form ab or ca by left or right cancellation, respectively. If a ring is finite and every nonzero element is cancellative, then by an application of the pigeonhole principle, every nonzero element of the ring is invertible, and division by any nonzero element is possible. To learn about when algebras (in the technical sense) have a division operation, refer to the page on division algebras. In particular Bott periodicity can be used to show that any real normed division algebra must be isomorphic to either the real numbers R, the complex numbers C, the quaternions H, or the octonions O.
Calculus
The derivative of the quotient of two functions is given by the quotient rule:
Division by zero
Division of any number by zero in most mathematical systems is undefined, because zero multiplied by any finite number always results in a product of zero. Entry of such an expression into most calculators produces an error message. However, in certain higher level mathematics division by zero is possible by the zero ring and algebras such as wheels. In these algebras, the meaning of division is different from traditional definitions.