AppsP–1DemP–1DemPollard p − 1 DemonstrationCompute gcd(ak!−1,n)\gcd(a^{k!}-1,n)gcd(ak!−1,n) one value of kkk at a timeComposite number nnn:Base aaa:Maximum value of kkk:Start AlgorithmNext Step ➡️ResetPollard p − 1 methodAt step kkk, the current residue is bk≡ak!(modn)b_k\equiv a^{k!}\pmod nbk≡ak!(modn). If a prime p∣np\mid np∣n has p−1∣k!p-1\mid k!p−1∣k!, Fermat’s theorem gives p∣bk−1p\mid b_k-1p∣bk−1.1Begin with b0=ab_0=ab0=a.2Compute bk≡bk−1k(modn)b_k\equiv b_{k-1}^{k}\pmod nbk≡bk−1k(modn), so bk≡ak!(modn)b_k\equiv a^{k!}\pmod nbk≡ak!(modn).3Evaluate gk=gcd(bk−1,n)g_k=\gcd(b_k-1,n)gk=gcd(bk−1,n).4Stop when gk>1g_k>1gk>1; it is useful when 1<gk<n1<g_k<n1<gk<n.