Learn R Programming

numbers (version 0.5-6)

sigma: Divisor Functions

Description

Sum of powers of all divisors of a natural number.

Usage

sigma(n, k = 1, proper = FALSE)

tau(n)

Arguments

n
Positive integer.
k
Numeric scalar, the exponent to be used.
proper
Logical; if TRUE, n will not be considered as a divisor of itself; default: FALSE.

Value

  • Natural number, the number or sum of all divisors.

Details

Total sum of all integer divisors of n to the power of k, including 1 and n.

For k=0 this is the number of divisors, for k=1 it is the sum of all divisors of n.

tau is Ramanujan`s tau function, here computed using sigma(., 5) and sigma(., 11).

A number is called refactorable, if tau(n) divides n, for example n=12 or n=18.

References

http://en.wikipedia.org/wiki/Divisor_function

http://en.wikipedia.org/wiki/Tau-function

See Also

primeFactors

Examples

Run this code
sapply(1:16, sigma, k = 0)
sapply(1:16, sigma, k = 1)
sapply(1:16, sigma, proper = TRUE)

stopifnot(identical(sapply(1:16, sigma, k = 0),
                    c(1, 2, 2, 3, 2, 4, 2, 4, 3, 4, 2, 6, 2, 4, 4, 5)))
stopifnot(identical(sapply(1:16, sigma, k = 1),
            c(1, 3, 4, 7, 6, 12, 8, 15, 13, 18, 12, 28, 14, 24, 24, 31)))
stopifnot(identical(sapply(1:16, sigma, proper = TRUE),
            c(0, 1, 1, 3, 1, 6, 1, 7, 4, 8, 1, 16, 1, 10, 9, 15)))

stopifnot(all.equal(sapply(1:10, tau),
        c(1, -24, 252, -1472, 4830, -6048, -16744, 84480, -113643, -115920)))

Run the code above in your browser using DataLab