MathGroup Archive 2010

[Date Index] [Thread Index] [Author Index]

Search the Archive

Re: Prime Segment Diagram; why the codes run very slowly?

  • To: mathgroup at smc.vnet.net
  • Subject: [mg106981] Re: [mg106965] Prime Segment Diagram; why the codes run very slowly?
  • From: a boy <a.dozy.boy at gmail.com>
  • Date: Sat, 30 Jan 2010 07:13:01 -0500 (EST)
  • References: <201001291249.HAA29223@smc.vnet.net> <4B62F712.4050108@wolfram.com>

Pscheibe given a very good implementation. However I appreciate Daniel's
implementation more, for the clearness.
Yes,the line y=x must intersect each segment , as long as the number
sequence(here is {prime[i]}) is incremental.
Now think about drawing such segment diagram with prime delta sequence
{prime[i+1]-prime[i]}.

Block[{$RecursionLimit = 1000},
 pt[0] = {0, 0};
pt[j_Integer] :=
  pt[j - 1] +
   If[OddQ[j], {Prime[j + 1] - Prime[j], 0}, {0,
     Prime[j + 1] - Prime[j]}];
n = 400;
pt[n]
Graphics[{Green, Line[Table[pt[i], {i, 1, n}]], Blue,
  Line[{{0, 0}, {pt[n][[1]], pt[n][[1]]}}]}, Axes -> True]
 ]

I think the line y=x has infinite points of intersection with prime delta
segment diagram. This implies the balance of prime distribution.
How to prove this?

On Fri, Jan 29, 2010 at 10:56 PM, Daniel Lichtblau <danl at wolfram.com> wrote:

> a boy wrote:
>
>> 2010-01-29
>>
>> Suppose p[i] is the i-th prime. Start from coordinate origin (0,0) ,
>> first line to (2,0), then line to (2,3), then to (2+5,3), then to
>> (7,3+7), then to (7+11,10), and so go on...... here 2,3,5,7,11 is the
>> prime list. I call this Prime Segment Diagram. It is very interest!
>>
>> Conjecture: The line y=x intersect with every segment of  Prime
>> Segment Diagram.
>>
>> It implies the balance of prime distribution.
>>
>>
>> In[139]:=
>>
>> point[0] = {0, 0};
>> point[n_] :=
>>  If[OddQ[n], {point[n - 1][[1]] + Prime[n],
>>   point[n - 1][[2]]}, {point[n - 1][[1]], point[n - 1][[2]] + Prime
>> [n]}]
>> n = 22;
>> point[n]
>> Graphics[{Green, Line[Table[point[i], {i, 1, n}]], Blue,
>>  Line[{{0, 0}, {point[n][[1]], point[n][[1]]}}]}, Axes -> True]
>>
>> why these simple codes run very slowly when n>20? how to optimize?
>>
>>
> This should be reasonably fast:
>
> pt[0] = {0, 0};
> pt[j_Integer] :=
>  pt[j] = pt[j - 1] + If[OddQ[j], {Prime[j], 0}, {0, Prime[j]}]
>
> The line y=x must intersect each vertical segment. This can be shown by an
> inductive argument, observing that each time you jump upward, you add more
> th the y coordinate than you previously added to the x coordinate in moving
> sideways.
>
> Daniel
>


  • Prev by Date: Band too slow when constructing a SparseArray
  • Next by Date: Re: Numerical Problem
  • Previous by thread: Prime Segment Diagram; why the codes run very slowly?
  • Next by thread: A repair to Real Number comparison so Fateman's examples do not exhibit