Aarushhh/wikipedia-simple-splitted huggingface dataset:
Shoppers Drug Mart Corporation (TSX: SC ) is Canada's largest pharmacy chain. Shoppers Drug Mart is headquartered in the Toronto, Ontario. The chain was founded by Murray Koffler in 1962. The store is also called Pharmaprix in Quebec and Hawkesbury, Ontario. 

The store usually has a organic foods section, at least five food aisles, a healthy living section, a cosmetics centre, a Carlton Cards aisle, an Easypix digital center/photolab, a full selection of over-the-counter drugs and health products and in some stores they have a full service Canada Post office.

References

Other websites
Shoppers Drug Mart's Official website

Retail companies of Canada
Companies based in Toronto‎
Pharmacies
Bianca di Angelo is a character in the fictional Percy Jackson and the Olympians book series, written by Rick Riordan. Bianca is a half-blood, meaning one parent was a god, and the other was a mortal. Her father is Hades, the god of the Underworld, and her mother is an Italian mortal, named Maria Di Angelo. In "Percy Jackson and the Titan's Curse", she dies because she sacrifices herself after trying to rescue her friends. Her brother, Nico di Angelo, believes it was Percy Jackson's fault that his sister died, and plans to take revenge on Percy in the fourth book of the series, Percy Jackson and the battle of the Labyrinth.

Percy Jackson and the Olympians characters
Document Records (founded 1986 by Johnny Parth in Austria) is a now British record label. 2000 Parth sold the label to Gary Atkinson. Originally based in Vienna the label is now in Newton Stewart, Scotland.

The label publishes early American blues, bluegrass, gospel, spirituals jazz, and other rural American genres (this genres are also called "roots" music)and made between 1900 and 1945. The label is also owner of the rights for unrealesed Music made by the Edison Company between 1914 and 1929.

Artists (selection)

 Albert Ammons
 Kokomo Arnold
 Francis "Scrapper" Blackwell
 Cleo Patra Brown
 Leroy Carr
 Arthur Crudup
 Cow Cow Davenport
 Sleepy John Estes
 Son House
 Alberta Hunter
 Mississippi John Hurt
 Skip James
 Blind Lemon Jefferson
 Meade "Lux" Lewis
 Cripple Clarence Lofton
 Blind Willie McTell
 Memphis Minnie
 Ma Rainey
 Victoria Spivey
 Roosevelt Sykes
 Sippie Wallace
 Jimmy Yancey

Other websites 
Document Records Homepage
Blues labels
British record labels
1986 establishments in the United Kingdom
The word "rounding" for a numerical value means replacing it by another value that is approximately equal but has a shorter, simpler, or more explicit form. For example, US$23.74 could be rounded to US$24, the fraction 312/937 could be rounded to 1/3, and the expression  could be rounded to 1.41.

Rounding is often done on purpose to obtain a value that is easier to write and handle than the original. It may also be done to indicate the accuracy of a computed number; for example, a quantity that was computed as 123,456, but is known to be accurate only to within a few hundred units, is better stated as "about 123,500".
On the other hand, rounding can introduce some round-off error as a result. Rounding is almost unavoidable in many computations, especially when dividing two numbers in integer or doing fixed-point arithmetic; when computing mathematical functions such as square roots, logarithms, and sines; or when using a floating point representation with a fixed number of significant digits. In a sequence of calculations, these rounding errors generally accumulate, and in certain "ill-conditioned" cases, they may make the result meaningless.

Accurate rounding of transcendental mathematical functions is difficult, because the number of extra digits that need to be calculated to resolve whether to round up or down cannot be known in advance. This problem is known as "the table-maker's dilemma" (below).

Rounding has many similarities to the quantization that occurs when physical quantities must be encoded by numbers or digital signals.

Types of rounding
Types of rounding 

Typical rounding problems can include:
 Approximating an irrational number by a fraction. For example, π by 22/7.
 Approximating a fraction with periodic decimal expansion by a finite decimal fraction. For example, 5/3 by 1.6667.
 Replacing a rational number by a fraction with smaller numerator and denominator. For example, 3122/9417 by 1/3.
 Replacing a fractional decimal number by one with fewer digits. For example, 2.1784 dollars by 2.18 dollars.
 Replacing a decimal integer by an integer with more trailing zeros. For example. 23,217 people by 23,200 people.
 Replacing a value by a multiple of a specified amount. For example. 27.2 seconds by 30 seconds (a multiple of 15).

Rounding to a specified increment 
The most common type of rounding is to round to an integer; or, more generally, to an integer multiple of some increment—such as rounding to whole tenths of seconds, hundredths of a dollar, to whole multiples of 1/2 or 1/8 inch, to whole dozens or thousands, etc..
In general, rounding a number x to a multiple of some specified increment m entails the following steps:

Divide x by m, let the result be y;
Round y to an integer value, call it q;
Multiply q by m to obtain the rounded value z.
 

For example, rounding x = 2.1784 dollars to whole cents (that is, to a multiple of 0.01) entails computing y = x/m = 2.1784/0.01 = 217.84, then rounding y to the integer q = 218, and finally computing z = q×m = 218×0.01 = 2.18.

When rounding to a predetermined number of significant digits, the increment m depends on the magnitude of the number to be rounded (or of the rounded result).

The increment m is normally a finite fraction in whatever numeral system that is used to represent the numbers. For display to humans, that usually means the decimal numeral system (that is, m is an integer times a power of 10, like 1/1000 or 25/100). For intermediate values stored in digital computers, it often means the binary numeral system (m is an integer times a power of 2).
The abstract single-argument "round()" function that returns an integer from an arbitrary real value has at least a dozen distinct concrete definitions presented in the rounding to integer section. The abstract two-argument "round()" function is formally defined here, but in many cases it is used with the implicit value m = 1 for the increment and then reduces to the equivalent abstract single-argument function, with also the same dozen distinct concrete definitions.

Rounding to integer 
The most basic form of rounding is to replace an arbitrary number by an integer. All the following rounding modes are concrete implementations of the abstract single-argument "round()" function presented and used in the previous sections.

There are many ways of rounding a number y to an integer q.  The most common ones are
 Round down (or take the floor, or round towards minus infinity):  q is the largest integer that does not exceed y.
Round up (or take the ceiling,  or round towards plus infinity):  q is the smallest integer that is not less than y.

 Round towards zero (or truncate, or round away from infinity): q is the integer part of y, without its fraction digits.
 
 Round away from zero (or round towards infinity): if y is an integer, q is y; else q is the integer that is closest to 0 and is such that y is between 0 and q.
 
 Round to nearest: q is the integer that is closest to y. This is sometimes written as  (see below for tie-breaking rules).

The first four methods are called directed rounding, as the displacements from the original number y to the rounded value q are all directed towards or away from the same limiting value (0, +∞, or −∞).
If y is positive, round-down is the same as round-towards-zero, and round-up is the same as round-away-from-zero. If y is negative, round-down is the same as round-away-from-zero, and round-up is the same as round-towards-zero. In any case, if y is integer, q is just y. The following table illustrates these rounding methods:

Where many calculations are done in sequence, the choice of rounding method can have a very significant effect on the result. A famous instance involved a new index set up by the Vancouver Stock Exchange in 1982. It was initially set at 1000.000, and after 22 months had fallen to about 520 — whereas stock prices had generally increased in the period. The problem was caused by the index being recalculated thousands of times daily, and always being rounded down to 3 decimal places, in such a way that the rounding errors accumulated. Recalculating with better rounding gave an index value of 1098.892 at the end of the same period.
Tie-breaking 
Rounding a number y to the nearest integer requires some tie-breaking rule for those cases when y is exactly half-way between two integers — that is, when the fraction part of y is exactly 0.5.

Round half up 
The following  tie-breaking rule, called round half up (or round half towards plus infinity), is widely used in many disciplines. That is, half-way values y are always rounded up.

 If the fraction of y is exactly 0.5, then q = y + 0.5.
 

For example, by this rule the value 23.5 gets rounded to 24, but −23.5 gets rounded to −23.

This is one of two rules generally taught in US elementary mathematics classes.
If it were not for the 0.5 fractions, the roundoff errors introduced by the round to nearest method would be quite symmetric: for every fraction that gets rounded up (such as 0.268), there is a complementary fraction (namely, 0.732) that gets rounded down, by the same amount. When rounding a large set of numbers with random fractional parts, these rounding errors would statistically compensate each other, and the expected (average) value of the rounded numbers would be equal to the expected value of the original numbers.

However, the round half up tie-breaking rule is not symmetric, as the fractions that are exactly 0.5 always get rounded up. This asymmetry introduces a positive bias in the roundoff errors. For example, if the fraction of y consists of three random decimal digits, then the expected value of q will be 0.0005 higher than the expected value of y. For this reason, round-to-nearest with the round half up rule is also (ambiguously) known as asymmetric rounding.
One reason for rounding up at 0.5 is that only one digit need be examined. When seeing 17.50000..., for example, the first three figures, 17.5, determines that the figure would be rounded up to 18. If the opposite rule were used (round half down), then all the zero decimal places would need to be examined to determine if the value is exactly 17.5.

Round half down 
One may also use round half down (or round half towards minus infinity) as opposed to the more common round half up (the round half up method is a common convention, but is nothing more than a convention).

 If the fraction of y is exactly 0.5, then q = y − 0.5.
 

For example, 23.5 gets rounded to 23, and −23.5 gets rounded to −24.
The round half down tie-breaking rule is not symmetric, as the fractions that are exactly 0.5 always get rounded down. This asymmetry introduces a negative bias in the roundoff errors. For example, if the fraction of y consists of three random decimal digits, then the expected value of q will be 0.0005 lower than the expected value of y. For this reason, round-to-nearest with the round half down rule is also (ambiguously) known as asymmetric rounding.

Round half away from zero 
The other tie-breaking method commonly taught and used is the round half away from zero (or round half towards infinity), namely:

 If the fraction of y is exactly 0.5, then q = y + 0.5 if y is positive, and q = y − 0.5 if y is negative.
 

For example, 23.5 gets rounded to 24, and −23.5 gets rounded to −24.
This method treats positive and negative values symmetrically, and therefore is free of overall bias if the original numbers are positive or negative with equal probability. However, this rule will still introduce a positive bias for positive numbers, and a negative bias for the negative ones.

It is often used for currency conversions and price roundings (when the amount is first converted into the smallest significant subdivision of the currency, such as cents of a euro) as it is easy to explain by just considering the first fractional digit, independently of supplementary precision digits or sign of the amount (for strict equivalence between the paying and recipient of the amount).

Round half towards zero 
One may also round half towards zero (or round half away from infinity) as opposed to the more common round half away from zero (the round half away from zero method is a common convention, but is nothing more than a convention).
If the fraction of y is exactly 0.5, then q = y − 0.5 if y is positive, and q = y + 0.5 if y is negative.
 

For example, 23.5 gets rounded to 23, and −23.5  gets rounded to −23.

This method also treats positive and negative values symmetrically, and therefore is free of overall bias if the original numbers are positive or negative with equal probability. However, this rule will still introduce a negative bias for positive numbers, and a positive bias for the negative ones.

Round half to even 
A tie-breaking rule that is even less biased is round half to even, namely

 If the fraction of y is 0.5, then q is the even integer nearest to y.

Thus, for example, +23.5 becomes +24, +22.5 becomes +22, −22.5 becomes −22, and −23.5 becomes −24.
This method also treats positive and negative values symmetrically, and therefore is free of overall bias if the original numbers are positive or negative with equal probability. In addition, for most reasonable distributions of y values, the expected (average) value of the rounded numbers is essentially the same as that of the original numbers, even if the latter are all positive (or all negative). However, this rule will still introduce a positive bias for even numbers (including zero), and a negative bias for the odd ones.

This variant of the round-to-nearest method is also called unbiased rounding (ambiguously, and a bit abusively), convergent rounding, statistician's rounding, Dutch rounding, Gaussian rounding, or bankers' rounding. This is widely used in bookkeeping.

This is the default rounding mode used in IEEE 754 computing functions and operators.

Round half to odd 
Another tie-breaking rule that is very similar to round half to even, namely
If the fraction of y is 0.5, then q is the odd integer nearest to y.

Thus, for example, +22.5 becomes +23, +21.5 becomes +21, −21.5 becomes −21, and −22.5 becomes −23.

This method also treats positive and negative values symmetrically, and therefore is free of overall bias if the original numbers are positive or negative with equal probability. In addition, for most reasonable distributions of y values, the expected (average) value of the rounded numbers is essentially the same as that of the original numbers, even if the latter are all positive (or all negative). However, this rule will still introduce a negative bias for even numbers (including zero), and a positive bias for the odd ones.
This variant is almost never used in most computations, except in situations where one wants to avoid rounding 0.5 or −0.5 to zero, or to avoid increasing the scale of numbers represented as floating point (with limited ranges for the scaling exponent), so that a non infinite number would round to infinite, or that a small denormal value would round to a normal non-zero value (these could occur with the round half to even mode). Effectively, this mode prefers preserving the existing scale of tie numbers, avoiding out of range results when possible.

Stochastic rounding 
Another unbiased tie-breaking method is stochastic rounding:

 If the fractional part of y is .5, choose q randomly among y + 0.5 and y − 0.5, with equal probability.
Like round-half-to-even, this rule is essentially free of overall bias; but it is also fair among even and odd q values. On the other hand, it introduces a random component into the result; performing the same computation twice on the same data may yield two different results. Also, it is open to unconscious bias if humans (rather than computers or devices of chance) are "randomly" deciding in which direction to round.

Alternating tie-breaking 
One method, more obscure than most, is round half alternatingly.

 If the fractional part is 0.5, alternate round up and round down: for the first occurrence of a 0.5 fractional part, round up; for the second occurrence, round down; so on so forth.

This suppresses the random component of the result, if occurrences of 0.5 fractional parts can be effectively numbered. But it can still introduce a positive or negative bias according to the direction of rounding assigned to the first occurrence, if the total number of occurrences is odd.
Simple dithering
In some contexts, all the rounding methods above may be unsatisfactory. For example, suppose that y is an accurate measurement of an audio signal, which is being rounded to an integer q in order to reduce the storage or transmission costs. If y changes slowly with time, any of the rounding method above will result in q being completely constant for long intervals, separated by sudden jumps of ±1. When the q signal is played back, these steps will be heard as a very disagreeable noise, and any variations of the original signal between two integer values will be completely lost.
One way to avoid this problem is to round each value y upwards with probability equal to its fraction, and round it downwards with the complement of that probability. For example, the number 23.17 would be rounded up to 24 with probability 0.17, and down to 23 with probability 1 - 0.17 = 0.83. (This is equivalent to rounding down y + s, where s is a random number uniformly distributed between 0 and 1.) With this special rounding, known as dithering, the sudden steps get replaced by a less objectionable noise, and even small variations in the original signal will be preserved to some extent.  Like the stochastic approach to tie-breaking, dithering has no bias: if all fraction values are equally likely, rounding up by a certain amount is as likely as rounding down by that same amount; and the same is true for the sum of several rounded numbers. On the other hand, dithering introduces a random component in the result, much greater than that of stochastic tie-breaking.
More precisely, the roundoff error for each dithered number will be a uniformly distributed random variable with mean value of zero, but with a standard deviation , which is better than the 1/2 standard deviation with the simple predictive methods, but slightly higher than with the simpler stochastic method. However, the sum of n rounded numbers will be a random variable with expected error zero, but with standard deviation  (the total remaining noise) which diverges semi-quadratically and may become easily perceptible, even if the standard deviation of the roundoff error per sample will be  which slowly converges semi-quadratically to zero. So, this random distribution may still be too high for some applications that are rounding a lot of data.
Multidimensional dithering
This variant of the simple dithering method still rounds values with probability equal to its fraction. However, instead of using a random distribution for rounding isolated samples, the roundoff error occurring at each rounded sample is totalled for the next surrounding elements to sample or compute; this accumulated value is then added to the value of these next sampled or computed values to round, so that the modified values will take into account this difference using a predictive model (such as Floyd–Steinberg dithering).
The effective propagation of accumulated roundoff errors may depend on the discrete dimension of the sampled data to round: when sampling bidimensional images, including colored images (that add the discrete dimension of color planes), or tridimensional videos (that add a discrete time dimension), or on polyphonic audio data (using time and channel discrete dimensions), it may still be preferable to propagate this error into a preferred direction, or equally into several orthogonal dimensions, such as vertically vs. horizontally for bidimensional images, or into parallel color channels at the same position and/or timestamp, and depending on other properties of these orthogonal discrete dimensions (according to a perception model). In those cases, several roundoff error accumulators may be used (at least one for each discrete dimension), or a (n-1)-dimension vector (or matrix) of accumulators.
Rounding to simple fractions
In some contexts it is desirable to round a given number x to a "neat" fraction — that is, the nearest fraction z = m/n
whose numerator m and denominator n do not exceed a given maximum. This problem is fairly distinct from that of rounding a value to a fixed number of decimal or binary digits, or to a multiple of a given unit m. This problem is related to Farey sequences, the Stern-Brocot tree, and continued fractions.
Scaled rounding 
This type of rounding, which is also named rounding to a logarithmic scale, is a variant of Rounding to a specified increment but with an increment that is modified depending on the scale and magnitude of the result. Concretely, the intent is to limit the number of significant digits, rounding the value so that non-significant digits will be dropped. This type of rounding occurs implicitly with numbers computed with floating-point values with limited precision (such as IEEE-754 float and double types), but it may be used more generally to round any real values with any positive number of significant digits and any strictly positive real base.
For example it can be used in engineering graphics for representing data with a logarithmic scale with variable steps (for example wave lengths, whose base is not necessarily an integer measure), or in statistical data to define classes of real values within intervals of exponentially growing widths (but the most common use is with integer bases such as 10 or 2).

This type of rounding is based on a logarithmic scale defined by a fixed non-zero real scaling factor s (in most frequent cases this factor is s=1) and a fixed positive base b>1 (not necessarily an integer and most often different from the scaling factor), and a fixed integer number n>0 of significant digits in that base (which will determine the value of the increment to use for rounding, along with the computed effective scale of the rounded number).
The primary argument number (as well as the resulting rounded number) is first represented in exponential notation x = s·a·m·bc, such that the sign s is either +1 or −1, the absolute mantissa a is restricted to the half-open positive interval [1/b,1), and the exponent c is any (positive or negative) integer. In that representation, all significant digits are in the fractional part of the absolute mantissa whose integer part is always zero.
If the source number (or rounded number) is 0, the absolute mantisssa a is defined as 0, the exponent c is fixed to an arbitrary value (0 in most conventions, but some floating-point representations cannot use a null absolute mantissa but reserve a specific maximum negative value for the exponent c to represent the number 0 itself), and the sign s may be arbitrarily chosen between −1 or +1 (it is generally set to +1 for simple zero, or it is set to the same sign as the argument in the rounded value if the number representation allows to differentiate positive and negative zeroes, even if they finally represent the same numeric value 0).

A scaled exponential representation as x = a·s·bc may also be used equivalently, with a signed mantissa a either equal to zero or within one of the two half-open intervals (−1,−1/b] and [+1/b,+1), and this will be the case in the algorithm below.
The steps to compute this scaled rounding are generally similar to the following:
 if x equals zero, simply return x; otherwise:
 convert x into the scaled exponential representation, with a signed mantissa: 
 let x’ be the unscaled value of x, by dividing it by the scaling factor s: ;
 let the scaling exponent c be one plus the base-b logarithm of the absolute value of x’, rounded down to an integer (towards minus infinity): ;
 let the signed mantissa a be product of x’ divided by b to the power c: 
 compute the rounded value in this representation:
 let c’ be the initial scaling exponent c of x’: 
 let m be the increment for rounding the mantissa a according to the number of significant digits to keep: 
 let a’ be the signed mantissa a rounded according to this increment m and the selected rounding mode:
if the absolute value of a’ is not lower than b, then decrement n (multiply the increment m by b), increment the scaling exponent c’, divide the signed mantissa a by b, and restart the rounding of the new signed mantissa a into a’ with the same formula; this step may be avoided only if the abtract "round()" function is always rounding a towards 0 (i.e. when it is a simple truncation), but is necessary if it may be rounding a towards infinity, because the rounded mantissa may have a higher scaling exponent in this case, leaving an extra digit of precision.
 return the rounded value: .
For example:
 the scaled rounding of 1.234 with scaling factor 1 in base 10 and 3 significant digits (maximum relative precision=1/1000), when using any round to nearest mode, will return 1.23;
 similar scaled rounding of 1.236 will return 1.24;
 similar scaled rounding of 21.236 will return 21.2;
 similar scaled rounding of 321.236 will return 321;
 the scaled rounding of 1.234 scaling factor 1 in base 10 and 3 significant digits (maximum relative precision=1/1000), when using the round down mode, will return 1.23;
 similar scaled rounding of 1.236 will also return 1.23;
 the scaled rounding of  with scaling factor  in base 2 and 3 significant digits (maximum relative precision=1/8), when using the round down mode, will return ;
 similar scaled rounding of  will return ;
 similar scaled rounding of  will return .
 similar scaled rounding of  will also return .
 similar scaled rounding of  will return .

Round to available value
Finished lumber, writing paper, capacitors, and many other products are usually sold in only a few standard sizes.

Many design procedures describe how to calculate an approximate value, and then "round" to some standard size using phrases such as "round down to nearest standard value", "round up to nearest standard value", or "round to nearest standard value".

When a set of preferred values is equally spaced on a logarithmic scale,
Choosing the closest preferred value to any given value can be seen as a kind of scaled rounding.
Such "rounded" values can be directly calculated.

Floating-point rounding
In floating-point arithmetic, rounding aims to turn a given value x into a value z with a specified number of significant digits. In other words, z should be a multiple of a number m that depends on the magnitude of z. The number m is a power of the base (usually 2 or 10) of the floating-point form.
Apart from this detail, all the variants of rounding discussed above apply to the rounding of floating-point numbers as well. The algorithm for such rounding is presented in the Scaled rounding section above, but with a constant scaling factor s=1, and an integer base b>1.

For results where the rounded result would overflow the result for a directed rounding is either the appropriate signed infinity, or the highest representable positive finite number (or the lowest representable negative finite number if x is negative), depending on the direction of rounding. The result of an overflow for the usual case of round to even is always the appropriate infinity.
In addition, if the rounded result would underflow, i.e. if the exponent would exceed the lowest representable integer value, the effective result may be either zero (possibly signed if the representation can maintain a distinction of signs for zeroes), or the smallest representable positive finite number (or the highest representable negative finite number if x is negative), possibly a denormal positive or negative number (if the mantissa is storing all its significant digits, in which case the most significant digit may still be stored in a lower position by setting the highest stored digits to zero, and this stored mantissa does not drop the most significant digit, something that is possible when base b=2 because the most significant digit is always 1 in that base), depending on the direction of rounding. The result of an underflow for the usual case of round to even is always the appropriate zero.

Double rounding
Double rounding 

Rounding a number twice in succession to different precisions, with the latter precision being coarser, is not guaranteed to give the same result as rounding once to the final precision except in the case of directed rounding. For instance rounding 9.46 to one decimal gives 9.5, and then 10 when rounding to integer using rounding half to even, but would give 9 when rounded to integer directly.

Some computer languages and the IEEE 754-2008 standard dictate that in straightforward calculations, the result should not be rounded twice. This has been a particular problem with Java as it is designed to be run identically on different machines, special programming tricks have had to be used to achieve this with x87 floating point.
The Java language was changed to allow different results where the difference does not matter and require a "strictfp" qualifier to be used when the results have to conform accurately.
Exact computation with rounded arithmetic 
It is possible to use rounded arithmetic to evaluate the exact value of a function with a discrete domain and range. For example, if we know that an integer n is a perfect square, we can compute its square root by converting n to a floating-point value x, computing the approximate square root y of x with floating point, and then rounding y to the nearest integer q. If n is not too big, the floating-point roundoff error in y will be less than 0.5, so the rounded value q will be the exact square root of n. In most modern computers, this method may be much faster than computing the square root of n by an all-integer algorithm.

The table-maker's dilemma
William Kahan coined the term "The Table-Maker's Dilemma" for the unknown cost of rounding transcendental functions:
 "Nobody knows how much it would cost to compute  y^w  correctly rounded for every two floating-point arguments at which it does not over/underflow. Instead, reputable math libraries compute elementary transcendental functions mostly within slightly more than half an ulp and almost always well within one ulp. Why can't Y^W be rounded within half an ulp like SQRT? Because nobody knows how much computation it would cost... No general way exists to predict how many extra digits will have to be carried to compute a transcendental expression and round it correctly to some preassigned number of digits. Even the fact (if true) that a finite number of extra digits will ultimately suffice may be a deep theorem."
The IEEE floating point standard guarantees that add, subtract, multiply, divide, square root, and floating point remainder will give the correctly rounded result of the infinite precision operation. However, no such guarantee is given for more complex functions and they are typically only accurate to within the last bit at best.

Using the Gelfond–Schneider theorem and Lindemann–Weierstrass theorem, many of the standard elementary functions can be proved to return transcendental results when given rational non-zero arguments; therefore it is always possible to correctly round such functions. However determining a limit for a given precision on how accurate results needs to be computed before a correctly rounded result can be guaranteed may demand a lot of computation time.
There are some packages around now that offer full accuracy. The MPFR package gives correctly rounded arbitrary precision results. IBM has written a package for fast and accurate IEEE elementary functions and in the future the standard libraries may offer such precision.

It is possible to devise well-defined computable numbers which it may never be possible to correctly round no matter how many digits are calculated. For instance, if Goldbach's conjecture is true but unprovable, then it is impossible to correctly round down 0.5 + 10-n where n is the first even number greater than 4 which is not the sum of two primes, or 0.5 if there is no such number. This can however be approximated to any given precision even if the conjecture is unprovable.
History
The concept of rounding is very old, perhaps older even than the concept of division. Some ancient clay tablets found in Mesopotamia contain tables with rounded values of reciprocals and square roots in base 60.
Rounded approximations to π, the length of the year, and the length of the month are also ancient.

The Round-to-even method has served as the ASTM (E-29) standard since 1940. The origin of the terms unbiased rounding and statistician's rounding are fairly self-explanatory. In the 1906 4th edition of Probability and Theory of Errors  Robert Simpson Woodward called this "the computer's rule" indicating that it was then in common use by human computers who calculated mathematical tables. Churchill Eisenhart's 1947 paper "Effects of Rounding or Grouping Data" (in Selected Techniques of Statistical Analysis, McGrawHill, 1947, Eisenhart, Hastay, and Wallis, editors) indicated that the practice was already "well established" in data analysis.
The origin of the term "bankers' rounding" remains more obscure. If this rounding method was ever a standard in banking, the evidence has proved extremely difficult to find. To the contrary, section 2 of the European Commission report The Introduction of the Euro and the Rounding of Currency Amounts  suggests that there had previously been no standard approach to rounding in banking; and it specifies that "half-way" amounts should be rounded up.
Rounding functions in programming languages 
Most programming languages provide functions or special syntax to round fractional numbers in various ways. The earliest numeric languages, such as FORTRAN and C, would provide only one method, usually truncation (towards zero). This default method could be implied in certain contexts, such as when assigning a fractional number to an integer variable, or using a fractional number as an index of an array. Other kinds of rounding had to be programmed explicitly; for example, rounding a positive number to the nearest integer could be implemented by adding 0.5 and truncating.
In the last decades, however, the syntax and/or the standard libraries of most languages have commonly provided at least the four basic rounding functions (up/ceiling, down/floor, to nearest, and towards zero). The tie-breaking method may vary depending the language and version, and/or may be selectable by the programmer. Several languages follow the lead of the IEEE-754 floating-point standard, and define these functions as taking a double precision float argument and returning the result of the same type, which then may be converted to an integer if necessary.  Since the IEEE double precision format has 52 fraction bits, this approach may avoid spurious overflows in languages have 32-bit integers. Some languages, such as PHP, provide functions that round a value to a specified number of decimal digits, e.g. from 4321.5678 to 4321.57 or 4300
.57 or 4300. In addition, many languages provide a "printf" or similar string formatting function, which allows one to convert a fractional number to a string, rounded to a user-specified number of decimal places (the precision). On the other hand, truncation (round to zero) is still the default rounding method used by many languages, especially for the division of two integer values.
On the opposite, CSS and SVG do not define any specific maximum precision for numbers and measurements, that are treated and exposed in their Document Object Model and in their Interface-description-language interface as strings as if they had infinite precision, and do not discriminate between integers and floating point values; however, the implementations of these languages will typically convert these numbers into IEEE-754 double floating points before exposing the computed digits with a limited precision (notably within standard Javascript or ECMAScript interface bindings).

Other rounding standards 

Some disciplines or institutions have issued standards or directives for rounding.

U.S. Weather Observations
In a guideline issued in mid-1966, the U.S. Office of the Federal Coordinator for Meteorology determined that weather data should be rounded to the nearest  round number, with the "round half up" tie-breaking rule. For example, 1.5 rounded to integer should become 2, and −1.5 should become −1. Prior to that date, the tie-breaking rule was "round half away from zero".

Negative zero in meteorology 
Some meteorologists may write "-0" to indicate a temperature between 0.0 and -0.5 degrees (exclusive) that was rounded to integer. This notation is used when the negative sign is considered important, no matter how small is the magnitude; for example, when rounding temperatures in the Celsius scale, where below zero indicates freezing.

Related pages
 Arithmetic precision

Other websites 

An introduction to different rounding algorithms  that is accessible to a general audience but especially useful to those studying computer science and electronics.
 How To Implement Custom Rounding Procedures by Microsoft
References 

Mathematics
Wheatland is an American city in the state of Wyoming. It is in Platte County where it is the county seat. The city has about 3,548 people. Steamboat, the bucking horse on the license plate for the state of Wyoming and the logo for the athletics team of the University of Wyoming, was stabled in a barn in Wheatland.

Other websites
Official City of Wheatland website

Cities in Wyoming
County seats in Wyoming
Winchelsea is a town on the A259 road in East Sussex, England.

Other websites 
 http://www.winchelsea.net/visiting/winchelsea_history.htm
 http://www.winchelsea.net/

Towns in East Sussex
Charing is a village and civil parish in Kent, England. In 2001 there were 2,694 people living in Charing.

References 

Civil parishes in Kent
Villages in Kent
Lenham is a village and civil parish in Kent, England. In 2001 there were 3,301 people living in Lenham.

References 

Civil parishes in Kent
Villages in Kent
Hitoshi Matsumoto (born September 8, 1963 in Amagasaki Hyōgo) is an Japanese comedian, actor, producer and director. Matsumoto is probably best known for being one-half of the comedy duo, Downtown where he is the boke also with member Masatoshi Hamada who is the tsukkomi. While apart of Downtown, Matsumoto and Hamada made two television shows, Downtown no Gaki no Tsukai ya Arahende!! and Hey! Hey! Hey! Music Champ. He directed, produced and starred in a movie called Big Man Japan. The movie was shown at the 2007 Cannes Film Festival in the Directors' Fortnight section. The movie was nominated in 2007 for "Best Film" at the Sitges - Catalonian International Film Festival and in 2008 for "Best Visual Effects" at the Asian Film Awards. He is married to his wife Ihara Rin and they have a daughter that was born on October 6, 2009.

References

Official website
Hitoshi Matsumoto at the Internet Movie Database
1963 births
Living people
Japanese comedians
Japanese movie actors
Japanese movie directors
Japanese movie producers
Japanese television personalities
Actors from Hyōgo Prefecture
Sturry is a village and civil parish in Kent, England. In 2001 there were 6,257 people living in Sturry.

References 

Civil parishes in Kent
Villages in Kent
Dalston is a village and civil parish in City of Carlisle, Cumbria, England. In 2001 there were 2,643 people living in Dalston.

References 

Civil parishes in Cumbria
Villages in Cumbria
Carlisle
Salcombe is a village and civil parish in South Hams, Devon, England. In 2001, there were 1,893 people living in Salcombe.

References 

Civil parishes in Devon
Towns in Devon
South Hams
Haslemere is a town and civil parish in Waverley, Surrey, England. In 2001 there were 15,612 people living in Haslemere.

References 

Civil parishes in Surrey
Towns in Surrey
Waverley
Kočevski Rog massacre was a series of massacres in Slovenia in late May 1945. This was shortly after World War II. It happened near Kočevski Rog. Thousands of members of the Slovene Home Guard and their families were executed by special units of the Yugoslav Partisans.

History

They were thrown into various pits and caves, which were then sealed with explosives. Several thousand (between 10,000 and 12,000, according to certain sources) war prisoners died in these executions. They had been repatriated by the British military authorities from Austria, where they had fled.

The Russian British author Nikolai Tolstoy wrote an account of the events in his book The Minister and the Massacres. British author John Corsellis, who served in Austria with the British Army, has written a historic book of these events, called Slovenia 1945: Memories of Death and Survival after World War II.
Boris Karapandzic writes that there were 12,000 Slovenian "home guards", 3,000 Serbian volunteer troops, 1,000 Montenegrin "chetniks", and 2,500 Croatian "home guards". Karapandzic's report is confirmed in a subsequent book by a group of scholars.

References 

History of Yugoslavia
20th century in Slovenia
Massacres in Europe during World War II
May 1945 events
1945 in Europe
St Dennis is a parish and village in Cornwall, United Kingdom. The village is on the B3279 road between Newquay and St Austell.

St Dennis had a population of 2,696 in the 2001 census. The village is famous for its church built on the site of an Iron Age hillfort. The area is full of tips and clay pits of china clay mining but St Dennis village itself is designated an 'island settlement' which prevents encroachment by the china clay industry. Much of the parish is up to 500 feet above sea level, and the countryside is moorland with small fields enclosed by 'Cornish hedges'.

The church is on top of a hill overlooking the village and has views to the sea at Newquay. It stands on the site of an Iron Age fort. The tower is the oldest part of the church, and the newer church has been repaired after being destroyed by fire in 1985. The village also has a strong history of Methodism and once had three Methodist chapels, two of these are still in use.

References

Villages in Cornwall
Civil parishes in Cornwall
Illogan (pronounced i'lluggan) is a village and parish in Cornwall, United Kingdom. It is two miles (3 km) northwest of Redruth and had a population of 5585 in the 2001 census.

Originally a rural area supporting itself by farming and agriculture, Illogan shared in the general prosperity brought about by the 19th century mining boom, which was experienced by the whole Camborne-Redruth area.

The church is dedicated to Saint Illogan, of whom little is known. Illogan was the birthplace of engineer and inventor Richard Trevithick.
Geography
There are two Illogan parishes:
 St Illogan Church Parish stretching from Piece and Carnkie, to Portreath on the North Coast; Brea and Tuckingmill along the River Connor to the West; and Porthtowan, Sparnon Gate and Redruth Coombe to the East. The population is approximately 14,000; making it more populous than Redruth. It was the third largest in Cornwall. Before 1935, the church and civil parish boundaries were the same. 
 Illogan Civil Parish stretching from Bridge and Harris Mill in the East; Tolvaddon and Bell Lake in the West; and from the A30 to Reskajeage on the North Cliffs. In 1985, civil parish status was given back to Illogan, but as the population was too large, Illogan was divided into the civil parishes of Carn Brea, Illogan and Portreath.

References

Villages in Cornwall
Civil parishes in Cornwall
St Keverne is a parish and village on the Lizard Peninsula in Cornwall, United Kingdom. The population of the parish was 2107 in the 2001 census.

The Cornish Rebellion of 1497 started in St Keverne. The leader of the rebellion Michael An Gof was a blacksmith from St Keverne and is commemorated by a statue in the village.

The parish is a large one and includes some 10 miles of coast from Nare Point at the mouth of the Helford River to Kennack Sands, and the Manacles offshore. Settlements on the coast include Porthallow, Porthoustock and Coverack. Inland the parish includes the hamlets of Zoar, Laddenvean, Traboe, Trelan and Gwenter. The eastern part of Goonhilly Downs is also in the parish.

St Keverne was in the Middle Ages the site of an important monastery. The church is dedicated to St Akeveranus. The church is very large for a village church and in its present form is 15th century.

References

Villages in Cornwall
Civil parishes in Cornwall
The Cornish Rebellion of 1497 was a popular uprising by the people of Cornwall in the far southwest of Britain. Its primary cause was the people's response to the raising of war taxes by King Henry VII to pay for a campaign against Scotland. Tin miners were angered as the scale of the taxes overturned previous rights granted by Edward I of England to the Cornish Stannary Parliament which exempted Cornwall from all taxes of 10ths or 15ths of income.

Rebellion
In reaction to King Henry's tax levy, Michael Joseph (An Gof), a blacksmith from St Keverne and Thomas Flamank a lawyer from Bodmin, persuaded many of the people of Cornwall to revolt against the King. An army of 15,000 marched into Devon, attracting support in terms of provisions and recruits as they went. Apart from one isolated incident at Taunton their march was not accompanied by any violence or looting. From Taunton, they moved on to Wells, where they were joined by the seventh Baron Audley, an able soldier.
From Wells to Winchester and Kent
After issuing a declaration of grievances, the army left Wells and marched to Winchester via Bristol and Salisbury, remarkably unopposed as they progressed across the south of England. At this point, having come so far, there seems to have been some questioning of what exactly should be done. Flamank proposed that they should head for Kent, 'the classic soil of protests', the home of the Peasants' Revolt of 1381 and Jack Cade's rebellion, to rally the volatile men of Kent to their banner. Having failed to attract support in Kent part of the army abandoned the march and returned home while the rest turned towards Surrey.
In Surrey
Moving back west, by Tuesday 13 June 1497 the Cornish army arrived at Guildford. Although shocked by the scale of the revolt, Henry VII had not been idle. The army of 8000 men assembled for Scotland was recalled. The same day that the Cornish arrived at Guildford, Lord Daubeney and his army took up position upon Hounslow Heath and were cheered by the arrival of food and wine dispatched by the Lord Mayor of London.

The Crown decided to take the offensive and test the strength and resolve of the Cornish forces. Lord Daubeney sent out a force of 500 mounted spearmen and they clashed with the Cornish at 'Gill Down' outside Guildford on Wednesday 14 June 1497.
The Cornish army left Guildford and moved via Banstead and Chussex Plain to Blackheath where they pitched their final camp, looking down from the hill onto the Thames and City of London. Somehow An Gof held his army together, but faced with overwhelming odds, some Cornish deserted and by morning there remained only some 9-10,000 Cornish stalwarts left in arms.

Battle of Deptford Bridge
Cornish force at the bridge
At the bridge at Deptford Strand, the Cornish had placed a body of archers to block the passage of the river. Here Daubeney had a hot time of it before his spearmen eventually captured the crossing with some losses (a mere 8 men or as many as 300 depending on one's source). Through ill-advice or inexperience, the Cornish had neglected to provide support for the men at Deptford Strand bridge and the main array stood well back into the heath, near to the top of the hill. Lord Daubeney and his troops poured across in strength and engaged the enemy with great vigour. Daubeney himself was so carried away that he became isolated from his men and was captured. Astoundingly enough, the Cornish simply released him and he soon returned to the fray.