Skip to content

IsPrimePower ​

Tests whether nn is a positive integer power of a single prime.

✓ checked against that system · ! checked, with disagreements (hover a chip)Wolfram LanguagePrimePowerQ✓
IsPrimePower(n)n=pkn = p^k for a prime pp, k≥1k \ge 1
Typed signatures
TypePackageApplies
(integer) -> booleannumber-theoryalways

Domain: Number theory

Details
  • 1=p01=p^0 does not count: it has no prime base.
  • Wolfram's PrimePowerQ.

Examples

Basic #

8=238=2^3

live ↗
InIsPrimePower(8)\mathrm{IsPrimePower}(8)OutTrue\mathrm{True}

12=22⋅312=2^2\cdot3 has two distinct primes

live ↗
InIsPrimePower(12)\mathrm{IsPrimePower}(12)OutFalse\mathrm{False}

A prime is its own first power

live ↗
InIsPrimePower(7)\mathrm{IsPrimePower}(7)OutTrue\mathrm{True}

Two distinct prime factors, so not a prime power

live ↗
InIsPrimePower(6)\mathrm{IsPrimePower}(6)OutFalse\mathrm{False}
Scope #

Listable

live ↗
InIsPrimePower([2,4,6,9,10,16])\mathrm{IsPrimePower}(\bigl\lbrack2, 4, 6, 9, 10, 16\bigr\rbrack)Out[True,True,False,True,False,True]\bigl\lbrack\mathrm{True}, \mathrm{True}, \mathrm{False}, \mathrm{True}, \mathrm{False}, \mathrm{True}\bigr\rbrack

Large integers

live ↗
InIsPrimePower(340)\mathrm{IsPrimePower}(3^{40})OutTrue\mathrm{True}

9=329=3^2

live ↗
InIsPrimePower(9)\mathrm{IsPrimePower}(9)OutTrue\mathrm{True}

Threads over a list; 1 is not a prime power

live ↗
InIsPrimePower([1,2,3,4,5,6,7])\mathrm{IsPrimePower}(\bigl\lbrack1, 2, 3, 4, 5, 6, 7\bigr\rbrack)Out[False,True,True,True,True,False,True]\bigl\lbrack\mathrm{False}, \mathrm{True}, \mathrm{True}, \mathrm{True}, \mathrm{True}, \mathrm{False}, \mathrm{True}\bigr\rbrack
Applications #

Prime powers that are not primes

live ↗
InFilter(1..100,()↦IsPrimePower(_1⁡)∧¬IsPrime(_1⁡))\mathrm{Filter}(1..100, ()↦\mathrm{IsPrimePower}(\operatorname{\_1})∧¬\mathrm{IsPrime}(\operatorname{\_1}))Out[4,8,9,16,25,27,32,49,64,81]\bigl\lbrack4, 8, 9, 16, 25, 27, 32, 49, 64, 81\bigr\rbrack
Properties #

625=54625=5^4

live ↗
InIsPrimePower(625)\mathrm{IsPrimePower}(625)OutTrue\mathrm{True}

A prime counts as a prime power with exponent 1

live ↗
InIsPrimePower(53)\mathrm{IsPrimePower}(53)OutTrue\mathrm{True}

A prime power need not be squarefree

live ↗
In[IsPrimePower(27),IsSquareFree(27)]\bigl\lbrack\mathrm{IsPrimePower}(27), \mathrm{IsSquareFree}(27)\bigr\rbrackOut[True,False]\bigl\lbrack\mathrm{True}, \mathrm{False}\bigr\rbrack

A prime is both a prime power and squarefree

live ↗
In[IsPrimePower(3),IsSquareFree(3)]\bigl\lbrack\mathrm{IsPrimePower}(3), \mathrm{IsSquareFree}(3)\bigr\rbrackOut[True,True]\bigl\lbrack\mathrm{True}, \mathrm{True}\bigr\rbrack

25=5225=5^2

live ↗
InIsPrimePower(25)\mathrm{IsPrimePower}(25)OutTrue\mathrm{True}

16807=7516807=7^5

live ↗
InIsPrimePower(16 807)\mathrm{IsPrimePower}(16\,807)OutTrue\mathrm{True}

A prime square is composite with Möbius value 0

live ↗
In[IsPrimePower(121),IsComposite(121),MoebiusMu(121)]\bigl\lbrack\mathrm{IsPrimePower}(121), \mathrm{IsComposite}(121), \mathrm{MoebiusMu}(121)\bigr\rbrackOut[True,True,0]\bigl\lbrack\mathrm{True}, \mathrm{True}, 0\bigr\rbrack

A prime has Möbius value −1-1

live ↗
In[IsPrimePower(11),IsPrime(11),MoebiusMu(11)]\bigl\lbrack\mathrm{IsPrimePower}(11), \mathrm{IsPrime}(11), \mathrm{MoebiusMu}(11)\bigr\rbrackOut[True,True,−1]\bigl\lbrack\mathrm{True}, \mathrm{True}, -1\bigr\rbrack

2401=742401=7^4

live ↗
InIsPrimePower(2 401)\mathrm{IsPrimePower}(2\,401)OutTrue\mathrm{True}

121=112121=11^2

live ↗
InIsPrimePower(121)\mathrm{IsPrimePower}(121)OutTrue\mathrm{True}

Every prime power is deficient

live ↗
InMap(()↦DivisorSigma(1,_1⁡)<2_1⁡,Filter(1..100,IsPrimePower))\mathrm{Map}(()↦\mathrm{DivisorSigma}(1, \operatorname{\_1})\lt2\operatorname{\_1}, \mathrm{Filter}(1..100, \mathrm{IsPrimePower}))Out[True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True]\bigl\lbrack\mathrm{True}, \mathrm{True}, \mathrm{True}, \mathrm{True}, \mathrm{True}, \mathrm{True}, \mathrm{True}, \mathrm{True}, \mathrm{True}, \mathrm{True}, \mathrm{True}, \mathrm{True}, \mathrm{True}, \mathrm{True}, \mathrm{True}, \mathrm{True}, \mathrm{True}, \mathrm{True}, \mathrm{True}, \mathrm{True}, \mathrm{True}, \mathrm{True}, \mathrm{True}, \mathrm{True}, \mathrm{True}, \mathrm{True}, \mathrm{True}, \mathrm{True}, \mathrm{True}, \mathrm{True}, \mathrm{True}, \mathrm{True}, \mathrm{True}, \mathrm{True}, \mathrm{True}\bigr\rbrack
Possible issues #

1 is p0p^0, which does not count

live ↗
InIsPrimePower(1)\mathrm{IsPrimePower}(1)OutFalse\mathrm{False}
About
Examples21
Checked againstWolfram Language 21 agree
CrosswalkWolfram Language

See also: IsPrime, FactorInteger