Skip to content

IsPerfect ​

Tests whether nn equals the sum of its proper divisors.

✓ checked against that system · ! checked, with disagreements (hover a chip)WikipediaPerfect numberMathWorldPerfectNumberWikidataQ170043Britannicatopic/perfect-numberOEISA000396Wolfram LanguagePerfectNumberQ!
IsPerfect(n)n=σ1(n)−nn = \sigma_1(n) - n
Typed signatures
TypePackageApplies
(integer) -> booleancompute-enginealways
(integer) -> booleannumber-theoryreplaces compute-enginealways

Domain: Number theory

Details
  • compute-engine has this natively; the gap closed here is negative nn (never perfect) and threading over a list.
  • The even perfect numbers are exactly 2p−1(2p−1)2^{p-1}(2^p-1) for a Mersenne prime exponent pp — see PerfectNumber and MersennePrimeExponent. Whether an odd perfect number exists is open.
  • Wolfram's PerfectNumberQ.

Examples

Basic #

The smallest perfect number: 1+2+3=61+2+3=6

live ↗
InIsPerfect(6)\mathrm{IsPerfect}(6)OutTrue\mathrm{True}

Abundant, not perfect: its proper divisors sum to 16

live ↗
InIsPerfect(12)\mathrm{IsPerfect}(12)OutFalse\mathrm{False}
Scope #

Listable

live ↗
InIsPerfect([6,28,12])\mathrm{IsPerfect}(\bigl\lbrack6, 28, 12\bigr\rbrack)Out[True,True,False]\bigl\lbrack\mathrm{True}, \mathrm{True}, \mathrm{False}\bigr\rbrack
Applications #

The third perfect number, 24(25−1)2^4(2^5-1)

live ↗
InIsPerfect(496)\mathrm{IsPerfect}(496)OutTrue\mathrm{True}

The second perfect number, 1+2+4+7+141+2+4+7+14

live ↗
InIsPerfect(28)\mathrm{IsPerfect}(28)OutTrue\mathrm{True}
Possible issues #

Negative numbers are not perfect

live ↗
InIsPerfect(−6)\mathrm{IsPerfect}(-6)OutFalse\mathrm{False}

An ordinary large number is not perfect

live ↗
InIsPerfect(1 234 121)\mathrm{IsPerfect}(1\,234\,121)OutFalse\mathrm{False}

Stays symbolic for a non-numeric argument

live ↗
InIsPerfect(Simplify(x))\mathrm{IsPerfect}(\mathrm{Simplify}(x))OutIsPerfect(x)\mathrm{IsPerfect}(x)
About
Examples8
Checked againstWolfram Language 6 agree2 differ
CrosswalkWikipediaMathWorldWikidataBritannicaOEISWolfram Language

See also: PerfectNumber, MersennePrimeExponent, DivisorSigma