mersenneforum.org > Math It seems to work, but why ?
 User Name Remember Me? Password
 Register FAQ Search Today's Posts Mark Forums Read

 2005-10-09, 19:50 #1 T.Rex     Feb 2004 France 929 Posts It seems to work, but why ? With the following, I'm able to find divisors of Mersenne numbers. It is surely not useful, because it is MUCH slower than dividing Mersenne numbers by candidate divisors. But I do not understand why it works. Do you have an idea ? Tony Look at the following PARI/gp code. LLT(p,m) is a routine that computes several values (up to a maximum m) like the LLT does: x=-5 is the starting value, then it applies : $x = (-2x-3) \ \bmod{p}$. When $x \equiv 0 \ \pmod{p}$, it stops and returns the number of iterations done. LLT2(q) enumerates all prime candidate divisors of Mq and calls LLT(p,q) for finding how many iterations (i) are required before x=0. It is a success if x=0 is found after q-2 iterations. (There are some rare cases where x=0 after a number of iterations different than q-2) I've experimented with the following values of q: 11, 13, 17, 23, 29, 31, 41, 43, 47, 53, 59, 89 (not finished for 89), and the result is always: - if Mq is prime, then LLT2 never succeeds (no divisor p is found). - if Mq is composite, then LLT2 finds divisors of Mq, and only them. It seems to be a miracle (or an evidence, or my mistake ?). As an example, for q=53, it finds the 3 divisors of M_53: 6361, 69431 and 20394401. LLT(p,m)= { x=-5; for(i=1,m, x=(-2*x-3)%p; if(x == 0, return(i)); ); return(0); } LLT2(q)= { print(q); for(i=1, sqrt(2^q-1)/2/q, p=1+2*q*i; if(isprime(p), j=LLT(p,q); if(j==q-2, print(i," ", 1+2*q*i, " ",j), if(j!=0, print("# ", j)) ); ); ); print } LLT2(11) LLT2(13) LLT2(17) LLT2(19) LLT2(23) LLT2(29) LLT2(31) LLT2(41) LLT2(43) LLT2(47) LLT2(53) LLT2(59) LLT2(89) LLT2(101)
 2005-10-09, 21:57 #2 R. Gerbicz     "Robert Gerbicz" Oct 2005 Hungary 7×229 Posts This isn't a miracle! Let x(0)=-5 and x(n)=-2*x(n-1)-3 mod p. New variable: let y(n)=x(n)+1. So y(0)=-4 and y(n)-1=-2*(y(n-1)-1)-3 mod p from this: y(n)=-2*y(n-1) mod p so x(n)=y(n)-1=(-2)^n*y(0)-1=-(-2)^(n+2)-1 mod p. It is easy to see that LT(p,m)=i if and only if i<=m and i is the smallest solution of x(n)=0 mod p or i=0 if it hasn't got a solution up to m. Suppose that q is prime then every prime divisor of Mq is of the form p=1+2*q*i; where i>=1 is an integer and we can suppose that p2) . If LLT2 find a value : p=1+2*q*i and LLT(p,q)=q-2 so -(-2)^(q-2+2)-1=0 mod p, but q=1 mod 2 so 2^q=1 mod p from this p is a prime divisor of 2^q-1 and 1
 2005-10-09, 23:07 #3 wblipp     "William" May 2003 New Haven 45058 Posts Study the iteration without the mod. The negative signs are distracting, so take it 2 steps at a time, F2k(x) = 4 * F2k-2(x)+3 It's not hard to show that F2k(x) = 22k(x+1)-1 Hence F2k+1(x) = -22k+1(x+1)-1 When x=-5, this is F2k+1(-5) = 22k+3-1 So the value, without any mod operations, is exactly the Mersenne Number at iteration "q-2." When the prime divides the Mersenne number, the mod is of course zero.
 2005-10-10, 17:12 #4 T.Rex     Feb 2004 France 3A116 Posts Too stupid I am, sometimes ... Yes, it is not a miracle. I've been a kind of stupid: I was studying LLT-like formula modulo Mq : x=(a*x^2+b*x+c)(mod Mq). And, with a=0, I did not think about looking at the numbers x without the modulo ... which are the Mersenne numbers. Thanks for opening my eyes ! Tony
 2005-10-10, 21:06 #5 T.Rex     Feb 2004 France 929 Posts Some LLT-like tests for Mersenne The following formula seem to provide the same kind of primality test for Mersenne than the LLT does. Why ? $S_0=1 \ ,\ S_{i+1}=6S_i^2-6S_i+2$ . $M_q \text{ prime iff } S_{q-1} \equiv 0 \ \pmod{M_q}$ $S_0=5 \ ,\ S_{i+1}=2S_i^2-1$ . $M_q \text{ prime iff } S_{q-2} \equiv 0 \ \pmod{M_q}$ $S_0=6 \ ,\ S_{i+1}=(S_i-2)^2$ . $M_q \text{ prime iff } S_{q-1} \equiv 0 \ \pmod{M_q}$
 2005-10-10, 21:58 #6 Numbers     Jun 2005 Near Beetlegeuse 38810 Posts Tony, I may have mis-read your post but according to your bottom line, if you start with $\large S_{0}\,=\,6,\;S_{1}\,=\,S_{0}-2^{2}$ then you get: $\large (6-2)^2\,=\,16,\;(16-2)^2\,=\,196,\;(196-2)^2\,=37636$ etc. this last has the factors 2, 2, 97, 97 which does not seem to fit very well with a test for division by a Mersenne number. The LL number 37634 on the other hand has the factors 2, 31, 607 which does fit with Mersennes, so I‘m wondering if maybe there’s a typo in your post.
 2005-10-11, 08:44 #7 T.Rex     Feb 2004 France 3A116 Posts A family of different LLT-like primality tests for Mersennes ? Hi Numbers, About the third formula, if you say: $\large x_0=4 \ ,\ llt(x_{i+1})=x_i^2-2$ and $\large x_0=6 \ ,\ f_3(x_{i+1})=(x_i-2)^2$, then you see that: $\large f_3(x_{i+1})=\big(llt(x_i)\big)^2$ . So there is no miracle. Better, if you define: $\large x_0=2 \ ,\ F(x_{i+1})=2x_i^2-1$, then you produce the numbers: 7, 97, 31*607, ... that appear with the LLT and f_3. But, if you look at second formula: $\large x_0=5 \ ,\ F_5(x_{i+1})=2x_i^2-1$, which is the same than F(x), but with a different x_0, you get: 7^2, 4801, 31*1487071, 52609*80789839489, 127*769*36810112513*10050007226929279, ... . So this F_5 function generates different numbers but it still acts as a LLT-like test (PARI code): F5(q)=x=2; for(i=1,q,x=(2*x^2-1)%(2^q-1);if(x==0,print(i))) Notice that the function $\large F(x_{i+1})=2x_i^2-1$ mimics the look of Mersenne numbers: $\large 2*(2^x)^2-1$. About the first formula: $\large x_0=1 \ ,\ f_1(x_{i+1})=6x_i(x_i-1)+2$, it produces different numbers: 2, 2*7, 2*547, 2*7*31*61*271, 2*6883*22434744889, 2*7*19*37*43*127*547*883*2269*2521*550554229, ... and it also looks like it is still a LLT-like primality test for Mersenne numbers. f1(q)=x=1;for(i=1,q,x=(6*x*(x-1)+2)%(2^q-1);if(x==0,print(i))). It should be possible to prove that F_5 and f_1 are really LLT-like primality tests for Mersenne numbers, by using method described by P. Ribenboim in his book. I'll have a look. More comments ? Tony
2005-10-11, 21:06   #8
T.Rex

Feb 2004
France

929 Posts

Quote:
 Originally Posted by T.Rex It should be possible to prove that F_5 and f_1 are really LLT-like primality tests for Mersenne numbers, by using method described by P. Ribenboim in his book. I'll have a look.
The methods used by Lucas and Lehmer do not apply for F_5 and f_1. Tony

 2005-10-12, 13:22 #9 Numbers     Jun 2005 Near Beetlegeuse 22·97 Posts Tony, I know this is going to sound trivially obvious, but all you have is (x+2-2)^2 = x^2 You have one sequence starts with a 4, and goes (x^2)-2 Then you have another sequence starting with a 6, going: (y-2)^2 So the second sequence is just (x+2-2)^2 which is pretty obviously x^2 I can’t believe you haven’t already seen this, but there doesn’t appear to be a better answer to why it happens.
 2005-10-12, 15:00 #10 wblipp     "William" May 2003 New Haven 3×7×113 Posts FWIW, the closed form solution of the first itereation is Sn = (32[sup]n[/sup])/6 + 1/2 Using the MersenneWiki explication of Lucas-Lehmer as a guide, it looks interesting to investigate the order of 3 mod Q - but I don't how.
2005-10-12, 16:44   #11
T.Rex

Feb 2004
France

929 Posts

Quote:
 Originally Posted by Numbers I can’t believe you haven’t already seen this, but there doesn’t appear to be a better answer to why it happens.
In fact (and this happens too often), I realized my mistake once I have posted and switched off my PC and was ready to sleep. It it what I explain in first part of my post #7 about llt and f3. They are 2 different formula for the same kind of numbers.
About F5 and f1 in #7, I've read again papers. Based on Ribenboim work, they cannot be proved by usual technics because we must have: $\large S_{i+1} < S_i^2$. This comes from a property of Lucas Sequences: $\large V_{2n} = V_n^2 -2Q^n$. When n=2k.
Tony

 Thread Tools

 Similar Threads Thread Thread Starter Forum Replies Last Post MacMagnus Information & Answers 57 2013-11-22 16:27 James Heinrich PrimeNet 0 2011-06-28 19:29 Pilgrim Information & Answers 1 2008-01-31 18:53 birdman2584 Sierpinski/Riesel Base 5 12 2006-11-22 00:06 guido72 Software 2 2002-09-26 15:47

All times are UTC. The time now is 17:07.

Tue Dec 6 17:07:05 UTC 2022 up 110 days, 14:35, 0 users, load averages: 3.10, 2.21, 1.57

Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2022, Jelsoft Enterprises Ltd.

This forum has received and complied with 0 (zero) government requests for information.

Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation.
A copy of the license is included in the FAQ.

≠ ± ∓ ÷ × · − √ ‰ ⊗ ⊕ ⊖ ⊘ ⊙ ≤ ≥ ≦ ≧ ≨ ≩ ≺ ≻ ≼ ≽ ⊏ ⊐ ⊑ ⊒ ² ³ °
∠ ∟ ° ≅ ~ ‖ ⟂ ⫛
≡ ≜ ≈ ∝ ∞ ≪ ≫ ⌊⌋ ⌈⌉ ∘ ∏ ∐ ∑ ∧ ∨ ∩ ∪ ⨀ ⊕ ⊗ 𝖕 𝖖 𝖗 ⊲ ⊳
∅ ∖ ∁ ↦ ↣ ∩ ∪ ⊆ ⊂ ⊄ ⊊ ⊇ ⊃ ⊅ ⊋ ⊖ ∈ ∉ ∋ ∌ ℕ ℤ ℚ ℝ ℂ ℵ ℶ ℷ ℸ 𝓟
¬ ∨ ∧ ⊕ → ← ⇒ ⇐ ⇔ ∀ ∃ ∄ ∴ ∵ ⊤ ⊥ ⊢ ⊨ ⫤ ⊣ … ⋯ ⋮ ⋰ ⋱
∫ ∬ ∭ ∮ ∯ ∰ ∇ ∆ δ ∂ ℱ ℒ ℓ
𝛢𝛼 𝛣𝛽 𝛤𝛾 𝛥𝛿 𝛦𝜀𝜖 𝛧𝜁 𝛨𝜂 𝛩𝜃𝜗 𝛪𝜄 𝛫𝜅 𝛬𝜆 𝛭𝜇 𝛮𝜈 𝛯𝜉 𝛰𝜊 𝛱𝜋 𝛲𝜌 𝛴𝜎𝜍 𝛵𝜏 𝛶𝜐 𝛷𝜙𝜑 𝛸𝜒 𝛹𝜓 𝛺𝜔