Quote notation

Quote notation

Quote notation is a representation of rational numbers for which the addition, subtraction, and multiplication algorithms are the same as for natural numbers, and division is easier than the usual division algorithm, and works in the same right-to-left direction as the other arithmetic algorithms. Arithmetic in quote notation produces exact answers, with no roundoff error. It was invented by Eric Hehner of the University of Toronto, and published in the SIAM "Journal on Computation", v.8, n.2, May 1979, pp. 124–134. It is related to Kurt Hensel's p-adic numbers.

Representation

A rational number is represented as a sequence of digits with a quote mark and radix point. For example, 12'3.4 is in quote notation. The radix point may come before the quote mark, as in 12.3'4 , or at the same place, as in 12!3 .

The radix point (in base ten it is called a decimal point) has its usual function; moving it left divides by the base; moving it right multiplies by the base. When the radix point is at the right end, the multiplicative factor is 1, and the point can be omitted. Scientific notation may be used as an alternative to the radix point.

We can think of the quote mark as saying that the digits to its left are repeated indefinitely to the left. For example, we can think of 12'34 as the infinite sequence ...1212121234 . If the repeated sequence is 0s, it and the quote mark can be omitted.

The natural numbers look as usual: 0, 1, 2, ... , or, including quote and point, 0!, 0'1., 0'2., ... . The negative integers begin with the digit one less than the base. For example, in decimal, minus three is 9'7 . Numbers beginning with any other repeating sequence are not integers. For example, in decimal, 6'7 is the fraction one-third, and 7'6 is minus one and seven-ninths.

Let x and y be sequences of digits. Let z be a sequence of zeros of the same length as y. Let a be the largest digit (one less than the base). Let w be a sequence of as of the same length as x. Then the number represented by x'y is y-xz/w. For example, 12'345 = 345-12000/99 = 7385/33.

Arithmetic

Addition

In our usual sign-and-magnitude notation, to add the two integers 25 and -37, one first compares signs, and determines that the addition will be performed by subtracting the magnitudes. Then one compares the magnitudes to determine which will be subtracted from which, and to determine the sign of the result. In our usual fraction notation, to add 2/3 + 4/5 requires finding a common denominator, multiplying each numerator by the new factors in this common denominator, then adding the numerators, then dividing the numerator and denominator by any factors they have in common.

In quote notation, to add, just add. There are no sign or magnitude comparisons, and no common denominators. Addition is the same as for natural numbers. Here are some examples.

9'7 minus three 9'4 minus six + 0'6 add plus six + 9'2 add minus eight ————— ————— 0'3 makes plus three 9'8 6 makes minus fourteen

6'7 one-third + 7'6 add minus one and seven-ninths ————— 4'3 makes minus one and four-ninths

ubtraction

In our usual sign-and-magnitude notation, subtraction involves sign comparison and magnitude comparison, and may require adding or subtracting the magnitudes, just like addition. In our usual fraction notation, subtraction requires finding a common denominator, multiplying, subtracting, and reducing to lowest terms, just like addition.

In quote notation, to subtract, just subtract. There are no sign or magnitude comparisons, and no common denominators. When a minuend digit is less than the corresponding subtrahend digit, do not borrow from the minuend digit to its left; instead, carry (add one) to the subtrahend digit to its left. Here are some examples.

9'7 minus three 9'4 minus six - 0'6 subtract plus six - 9'2 subtract minus eight ————— ————— 9'1 makes minus nine 0'2 makes plus two

6'7 one-third - 7'6 subtract minus one and seven-ninths ————— 8'9 1 makes plus two and one-ninth

Multiplication

Multiplication is the same as for natural numbers. To recognize the repetition in the answer, it helps to add the partial results pairwise. Here are some examples.

6'7 x 0'3 = 0'1 one-third times three makes one

6'7 x 7'6 one-third times minus one and seven-ninths: multiply 6'7 by 6: 0'2 answer digit 2 multiply 6'7 by 7: 6'9 add: ———— 6'9 answer digit 9 multiply 6'7 by 7: 6'9 add: ———— 3'5 answer digit 5 multiply 6'7 by 7: 6'9 add: ———— 0'2 repetition of original makes 592' minus sixteen twenty-sevenths

To someone who is unfamiliar with quote notation, 592' is unfamiliar, and translation to -16/27 is helpful. To someone who normally uses quote notation, -16/27 is a formula with a negation and a division operation; performing those operations yields the answer 592' .

Division

The commonly used division algorithm produces digits from left-to-right, which is opposite to addition, subtraction, and multiplication. This makes further arithmetic difficult. For example, how do we add 1.234234234234... + 5.67676767... ? Usually we use a finite number of digits and accept an approximate answer with roundoff error. The commonly used division algorithm also produces duplicate representations; for example, 0.499999... and 0.5 represent the same number. In decimal, there is a kind of guess for each digit, which is seen to be right or wrong as the calculation progresses.

In quote notation, division produces digits from right-to-left, the same as all other arithmetic algorithms; therefore further arithmetic is easy. Quote arithmetic is exact, with no error. Each rational number has a unique representation (if the repetition is expressed as simply as possible, and we have no meaningless 0s at the right end after a radix point). Each digit is determined by a "division table", which is the inverse of part of the multiplication table; there is no "guessing". Here is an example.

9'84 / 0'27 minus sixteen divided by twenty-seven since 0'27 ends in 7 and 9'84 ends in 4, ask: 9'8 4 What times 7 ends in 4? It's 2 multiply 0'27 by 2: 0'5 4 subtract: ————— 9'3 What times 7 ends in 3? It's 9. multiply 0'27 by 9: 0'2 4 3 subtract: ——————— 9'7 5 What times 7 ends in 5? It's 5. multiply 0'27 by 5: 0'1 3 5 subtract: ——————— 9'8 4 repetition of original makes 592' minus sixteen twenty-sevenths

Division works when the divisor and the base have no factors in common except 1. In the previous example, 27 has factors 1, 3, and 27. The base is 10, which has factors 1, 2, 5, and 10. So division worked. When there are factors in common, they must be removed. For example, to divide 4 by 15, first multiply both 4 and 15 by 2: 4/15 = 8/30Any 0s at the end of the divisor just tell where the radix point goes in the result. So now divide 8 by 3.

0'8 What times 3 ends in 8? It's 6. multiply 0'3 by 6: 0'1 8 subtract: ———— 9' What times 3 ends in 9? It's 3. multiply 0'3 by 3: 0'9 subtract: ———— 9' repetition of earlier difference makes 3'6 two and two-thirds Now move the decimal point one place left, to get 3!6 four-fifteenths

Removing common factors is annoying, and it is unnecessary if the base is a prime number. Computers use base 2, which is a prime number, so division always works. And the division tables are trivial. The only questions are: what times 1 ends in 0? and: what times 1 ends in 1. Thus the rightmost bits in the differences are the bits in the answer. For example, one divided by three, which is 1/11 , proceeds as follows.

0'1 rightmost bit is 1 subtract 0'1 1 ————— 1' rightmost bit is 1 subtract 0'1 1 ————— 1'0 rightmost bit is 0 subtract 0' ———— 1' repetition of earlier difference makes 01'1 one-third

ign determination

If the leading digit is less than the first digit after the quote, the number is positive. For example, 123'45 is positive because 1 is less than 4. If the leading digit is more than the first digit after the quote, the number is negative. For example, 54'3 is negative because 5 is more than 3 .

If the quote comes at the end, just append a zero after the radix point. For example, 592' = 592!0 , which is negative because 5 is more than 0. And 59.2' = 59.2'0 which is negative.

If the leading digit equals the first digit after the quote, then either the number is 0!0 = 0, or the representation can be shortened by rolling the repetition to the right. For example, 23'25 = 32'5 which is positive because 3 is less than 5.

In binary, if it starts with 1 it's negative, and if it starts with 0 it's nonnegative, assuming the repetition has been rolled to the right as far as possible.

Negation

To negate, complement each digit, and then add 1. For example, in decimal, to negate 12'345, complement and get 87'654, and then add 1 to get 87'655. In binary, flip the bits, then add 1 (same as 2's complement). For example, to negate 01'1, which is one-third, flip the bits to get 10'0, then add 1 to get 10'1, and roll right to shorten it to 01' which is minus one-third.

Educational Purposes

Quote Notation is noted for being an educational tool at Department of Computer Science at University of Toronto. It is currently used in its undergraduate CSC258 Computer Organizations course.

External links

* [http://www.cs.toronto.edu/~hehner/ratno.pdf "A new representation of the rational numbers for fast easy arithmetic"] , E.C.R. Hehner and R.N.S. Horspool


Wikimedia Foundation. 2010.

Игры ⚽ Нужно сделать НИР?

Look at other dictionaries:

  • Quote — For the Wikipedia quotation templates, see Category:Quotation templates. Quotation is the repetition of someone else s statement. Quotation marks are punctuation marks used in text to indicate the words of another speaker or writer. Both of these …   Wikipedia

  • Wirth syntax notation — (WSN) is a metasyntax, that is, a formal way to describe formal languages. Originally proposed by Niklaus Wirth in 1977 as an alternative to Backus Naur form (BNF), it has several advantages over BNF in that it can be defined using itself, it… …   Wikipedia

  • Hermann-Mauguin notation — is used to represent the symmetry elements in point groups, plane groups and space groups. It is named after the German crystallographer Carl Hermann and the French minerologist Charles Victor Mauguin. This notation is sometimes called… …   Wikipedia

  • JAM notation — JAM is both the software and file format for representing music as human readable and human writable text.Unlike the ABC notation, another text based music format, that is best suitable for one voice tunes,JAM is mainly focused on chords.Here is… …   Wikipedia

  • List of mathematics articles (Q) — NOTOC Q Q analog Q analysis Q derivative Q difference polynomial Q exponential Q factor Q Pochhammer symbol Q Q plot Q statistic Q systems Q test Q theta function Q Vandermonde identity Q.E.D. QED project QR algorithm QR decomposition Quadratic… …   Wikipedia

  • Quasi-quotation — is a linguistic device that facilitates rigorous and terse formulation of general rules about linguistic expressions while properly observing the use mention distinction. It was introduced in by the philosopher and logician Willard van Orman… …   Wikipedia

  • APL (programming language) — APL Paradigm(s) array, functional, structured, modular Appeared in 1964 Designed by Kenneth E. Iverson Developer Kenneth E. Iverson …   Wikipedia

  • Comparison of layout engines (Cascading Style Sheets) — Cascading Style Sheets CSS Animations Dynamic CSS Comparison of layout engines Comparison of stylesheet languages Internet Explorer box model bug CSS Zen Garden The Zen of CSS Design CSSTidy Style sheet Tableless web design Holy Grail (web… …   Wikipedia

  • Wikipedia:Manual of Style — This guideline is a part of the English Wikipedia s Manual of Style. Use common sense in applying it; it will have occasional exceptions. Please ensure that any edits to this page reflect consensus. Shortcuts …   Wikipedia

  • History of mathematics — A proof from Euclid s Elements, widely considered the most influential textbook of all time.[1] …   Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”