Advertisement
Guest User

Untitled

a guest
Feb 13th, 2016
56
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.88 KB | None | 0 0
  1. twinPrimesQ[tp_]:=tp[[1]]+2==tp[[2]]&&PrimeQ[tp[[1]]]&&PrimeQ[tp[[2]]];
  2. primesList[p_]:=Module[{out={Prime[3],i}},
  3. For[i=4,Prime[i]<=p,i=i+1,
  4. Append[out,Prime[i]];
  5. ];
  6. out
  7. ];
  8. testPrime[p_,pl_]:=Module[{out,found=False,twinPrimes,primeFactors,primeFactorsPowers,i},
  9. twinPrimes={
  10. {3 5 prod p-4,3 5 prod p-2},
  11. {3 5 prod p+2,3 5 prod p+4}
  12. };
  13. primeFactors=primesList[p];
  14. primeFactorsPowers=Tuples[Range[0,pl],primeFactors//Length];
  15. For[i=1,i<=Length[primeFactorsPowers],i=i+1,
  16. out=twinPrimes/.prod->Product[primeFactors[[k]]^primeFactorsPowers[[i]][[k]],{k,1,primeFactors//Length}];
  17. found=twinPrimeQ[out[[1]]]||twinPrimeQ[out[[2]]];
  18. If[found,Break[]];
  19. ];
  20. If[found,out~Select~(twinPrimesQ[#]&),False]//First
  21. ];
  22.  
  23. out=List[]; For[j=4,j<=7,j=j+1,out=out~Append~{j,Prime[j],testPrime[Prime[j],1]}]; out//TableForm
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement