Handles very large numbers in R. Real numbers are held using their natural logarithms, plus a logical flag indicating sign. The package includes a vignette that gives a step-by-step introduction to using S4 methods.
The DESCRIPTION file:
This package was not yet installed at build time.
Index: This package was not yet installed at build time.
Real numbers are represented by two objects: a real, holding the logarithm of their absolute values; and a logical, indicating the sign. Multiplication and exponentiation are easy: the challenge is addition. This is achieved using the (trivial) identity log(e^x+e^y)=x+log(1+e^(y-x)) where, WLOG, y<x.
Complex numbers are stored as a pair of
brobs: objects of class
The package is a simple example of S4 methods.
However, it could be viewed as a cautionary tale: the underlying R concepts are easy yet the S4 implementation is long and difficult. I would not recommend using S4 methods for a package as simple as this; S3 methods would have been perfectly adequate. I would suggest that S4 methods should only be used when S3 methods are demonstrably inadequate.
Robin K. S. Hankin
Maintainer: Robin K. S. Hankin <[email protected]>
R. K. S. Hankin 2007. “Very Large Numbers in R: Introducing Package Brobdingnag”. R News, volume 7, number 3, pages 15-16
1 2 3 4 5 6 7 8 9 10 11 12 13 14
googol <- as.brob(10)^100 googol googol + googol/2 1/(googol + 1e99) (1:10)^googol googolplex <- 10^googol googolplex googolplex * googol # practically the same as googolplex (!)
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.