Don Blazys Posted September 30, 2010 Report Share Posted September 30, 2010 Recently, [math]\pi(x)[/math] , which represents how many prime numbers there are less than or equal to a given number [math]x[/math], was determined for [math]x=10^{24}[/math]. In other words, thanks to a few ingenious "coders", we now know that if we consider all of the natural numbers from [math]1[/math] to [math]10^{24}[/math] , then exactly [math]18,435,599,767,349,200,876,866[/math] of them will be prime. But how about [math]\varpi(x)[/math] , which represents how many regular figurative numbers there are less than or equal to a given number [math]x[/math]? Well, believe it or not, [math]\varpi(x)[/math] has only been determined to a little over [math]x=10^{12}[/math], which is a "crying shame" because the distinction between regular figurative numbers and numbers that are not regular figurative numbers is probably even more basic and fundamental than the distinction between composite numbers and prime numbers. After all, [math]\pi(x)[/math] can be closely approximated by the purely mathematical, non-empirical function [math]Li(x)[/math] , whereas [math]\varpi(x)[/math] can be much more closely approximated by the function [math]B(x)*(1-\frac{\alpha}{\mu-2*e})[/math] , which is empirical in that it involves the "physical constants" [math]\alpha[/math] and [math]\mu[/math], (otherwise known as the "fine structure constant", and the "proton to electron mass ratio" respectively.) This approximation function or "counting function", which you can find here: http://donblazys.com/on_polygonal_numbers_3.pdf is also referenced in the On-line Encyclopedia of Integer Sequences, which you can find here: http://www.research.att.com/~njas/sequences/?q=6%2C9%2C10%2C12%2C15%2C16%2C18%2C21%2C22%2C24%2C25%2C27&sort=0&fmt=0&language=english&go=Search So, why is determining [math]\varpi(x)[/math] to say... [math]x=10^{20}[/math] a worthwhile challenge? Well, if we knew the exact value of [math]\varpi(10^{20})[/math] , then we could easily solve for [math]\alpha[/math], and (in theory), determine the fine structure constant to a much greater degree of accuracy! We would also have a much more accurate regular figurative number counting function, and it should go without saying that whoever does manage to break the present record of [math]\varpi(1,100,000,000,000)[/math] will be credited in the O.E.I.S. and probably Wikipedia as well (when that article on the sequence of regular figurative numbers is updated to include information on its counting function.) Don. Quote Link to comment Share on other sites More sharing options...

Qfwfq Posted September 30, 2010 Report Share Posted September 30, 2010 while [math]\varpi(x)[/math] can be much more closely approximated by the function [math]B(x)*(1-\frac{\alpha}{\mu-2*e})[/math]I don't get it Don, how is the function [math]B(x)[/math] defined? Quote Link to comment Share on other sites More sharing options...

Don Blazys Posted September 30, 2010 Author Report Share Posted September 30, 2010 I don't get it Don, how is the function [math]B(x)[/math] defined? It's defined here: http://donblazys.com/on_polygonal_numbers_3.pdf Don. Quote Link to comment Share on other sites More sharing options...

phillip1882 Posted October 1, 2010 Report Share Posted October 1, 2010 hey don, i guess i don't understand the difficulty in generating a larger set.seems to me you could create a file that starts at 6 and increments by 3, then a file that starts at 10 and increments by 6, then a file that starts at 15 and increments by 10 and so on, then simply merge and sort them. even an inefficient coder such as myself could probably get to 100,000,000,000 in under two weeks.also , felt i should point out that w(x) will be pretty close the the set of composite numbers, especially for large values. Quote Link to comment Share on other sites More sharing options...

Kharakov Posted October 3, 2010 Report Share Posted October 3, 2010 also , felt i should point out that w(x) will be pretty close the the set of composite numbers, especially for large values. I believe Don is referring to this set of numbers, rather than the set of all figurate numbers (which includes 2-gonol #s). Note that there are a ton of composite non-figurative numbers, so you can't really assume w(x) will be too close to the composite number count. Quote Link to comment Share on other sites More sharing options...

Don Blazys Posted October 3, 2010 Author Report Share Posted October 3, 2010 To: Phillip 1882, Quoting Phillip 1882: felt i should point out that w(x) will be pretty close the the set of composite numbers, especially for large values. Appearances (or looks, as they are otherwise known) :rolleyes: can be decieving, and while a quick glance at the tables in the article: http://donblazys.com...l_numbers_3.pdf might "give the impression" that the number of regular figurative numbers under [math]x[/math] approaches the number of composite numbers under [math]x[/math], the approximation function or "counting function" for regular figurative numbers shows us otherwise and tells us differently. Here's how and why... The counting function for regular figurative numbers can alternately be expressed as: [math]\varpi(x)[/math] ~ [math]\left(x-\frac{x}{\alpha*\pi*e+e}-\frac{1}{2}*\sqrt{x-\frac{x}{\alpha*\pi*e+e}}\right)*\left(1-\frac{\alpha}{\mu-2*e}\right)=[/math] [math].64036274309583*x-.40011254372008*\sqrt{x}[/math] , which tells us at a glance that the number of regular figurative numbers under [math]x[/math] will always be less than [math].64036274309583*x[/math] , and thus will never even come close to the degree of domination exhibited by the number of composite numbers under [math]x[/math], which exeeds [math].98*x[/math] at [math]x=10^{24}[/math] and approaches [math]1*x[/math] as [math]x[/math] tends towards infinity! Quoting Phillip 1882: i guess i don't understand the difficulty in generating a larger set. The present "world record" , which is [math]\varpi(1,100,000,000,000)[/math] was achieved using code written by that great Hypographer... "Donk", who I respect and admire. His code seems pretty simple and straightforward, and would probably suffice if programmed into a sufficiently fast and powerful machine. One thing for sure, his code works (where everyone else's caused their computers to fail or "crash"), so I'm quite certain that if he were to gain access to a "supercomputer", then [math]\varpi(10^{20})[/math] would be a "piece of cake" ! This forum has some pretty "heavy hitters", and perhaps if a "team" were to form, then that simple, yet important question: "How many regular figurative numbers are there under a given number [math]x[/math]?" would finally get answered up to some satisfying and respectable values of [math]x[/math]... just like [math]\pi(x)[/math] was! Don. Quote Link to comment Share on other sites More sharing options...

Don Blazys Posted October 3, 2010 Author Report Share Posted October 3, 2010 To: Kharakov, Quoting Kharakov's answer to Phillip 1882: You can't really assume w(x) will be too close to the composite number count. Thanks again Kharakov ! You are absolutely right and may have put your finger on another possible reason for the confusion. In fact, you seem to understand this function and it's implications quite well, so I'm really glad that you are on board! It"s really good to know that there are some people out there who are as curious as I am. Maybe you can convince the computer department at your university to take up this challenge! After all, it's such a simple question... that may be so very important to both physics and mathematics... How many regular figurative numbers are there under a given number [math]x[/math]? Questions don't get any more simple than that! Don. Quote Link to comment Share on other sites More sharing options...

Kharakov Posted October 3, 2010 Report Share Posted October 3, 2010 Hey Don, great work on the constant equation, if I hadn't mentioned it before. I got a copy of Arthur Beiler's book, read through the section on figurative numbers and posted a few main ideas (that are perhaps rehashing of old ideas) over in Turtle's thread. It's really late now, so I am going to turn off the computer so I don't stay up all night doing math.... again. Let the brain do more tomorrow night... Quote Link to comment Share on other sites More sharing options...

phillip1882 Posted October 6, 2010 Report Share Posted October 6, 2010 i wrote an algorithm and it checks out up to 10 billion, though its not very efficient. its a bit like using trail division to determine if a number is prime. fine for sufficiently small numbers, but wouldn't want to go too big. I'm curious as to donk's algorithm. could you link to it? Quote Link to comment Share on other sites More sharing options...

Don Blazys Posted October 6, 2010 Author Report Share Posted October 6, 2010 i wrote an algorithm and it checks out up to 10 billion, though its not very efficient. its a bit like using trail division to determine if a number is prime. fine for sufficiently small numbers, but wouldn't want to go too big. I'm curious as to donk's algorithm. could you link to it? I invited him to post it here. He's a busy fellow, but hopefully he will find the time. By the way, 10 billion is actually quite good! Don. Quote Link to comment Share on other sites More sharing options...

phillip1882 Posted October 6, 2010 Report Share Posted October 6, 2010 i came up with an interesting hypothesis,let rowinc =3 and increase by 1 and row =6 and increase by rowinc. if rowinc is figurate, then we don't need to worry about that row adding any new numbers. in short the figurate numbers in a prime sort of way eliminate themselves. Quote Link to comment Share on other sites More sharing options...

phillip1882 Posted October 6, 2010 Report Share Posted October 6, 2010 i came up with an interesting hypothesis,let rowinc =3 and increase by 1 and row =6 and increase by rowinc. if rowinc is figurate, then we don't need to worry about that row adding any new numbers. in short the figurate numbers in a prime sort of way eliminate themselves.alright tried to verify this and it seems it's wrong. sorry. Quote Link to comment Share on other sites More sharing options...

Don Blazys Posted October 7, 2010 Author Report Share Posted October 7, 2010 alright tried to verify this and it seems it's wrong. sorry. Any try is a good try. At least you eliminated that possibility! :) Don. Quote Link to comment Share on other sites More sharing options...

phillip1882 Posted October 8, 2010 Report Share Posted October 8, 2010 so here's my observations 001 3n +3 001001101 the new bit that 6n +10 adds 001001101001101001101101101 the new bits that 10n+15 adds001111 001001101001101001101101101001111001101101101101111 the new bits that 28n+21 adds001101101101001111001101101101001111101101101101001111001101101101001111001101101101001111 001001101001101001101101101001111001101101101101111 001101101101001111001101101101001111111101101101001111 the new bits 28n+36001101101101001111001101101101001111 001101101101001111001101101101111111 001101101101001111001101101101001111101101101101001111001101101101001111001101101101001111so, each new sequence doesn't add very much to the mix, but unfortunately there doesn't seem to be much order as to where the new bits are added. Quote Link to comment Share on other sites More sharing options...

Don Blazys Posted October 9, 2010 Author Report Share Posted October 9, 2010 That makes sense. After all, between the "upper bound": [math]\varpi(x)[/math]~ [math]\left(x-\frac{x}{\alpha*\pi*e+e}-\frac{1}{2}*\sqrt{x-\frac{x}{\alpha*\pi*e+e}}\right)*\left(1-\frac{\alpha}{\mu-2*e}\right)+\alpha*x^{\frac{1}{3}}*ln(x) [/math] and the "lower bound": [math]\varpi(x)[/math]~ [math]\left(x-\frac{x}{\alpha*\pi*e+e}-\frac{1}{2}*\sqrt{x-\frac{x}{\alpha*\pi*e+e}}\right)*\left(1-\frac{\alpha}{\mu-2*e}\right)-\frac{1}{4}*\alpha*x^{\frac{1}{3}}*ln(x) [/math] , [math]\varpi(x)[/math] fluctuates as randomly and erratically as [math]\pi(x)[/math] does within its bounds. All this may be somewhat frustrating, but giving up now is simply unthinkable, because we are, with [math]\varpi(1,100,000,000,000)[/math], already at the point where the upper and lower bounds of [math]\alpha[/math], which are [math]137.035999033^{-1}[/math] and [math]137.035999135^{-1}[/math] respectively, result in significantly different projections for [math]\varpi(x)[/math], which means that a much improved estimate of [math]\alpha[/math] is really not all that far away... perhaps as close as [math]\varpi(10^{14})[/math]. And to add to all this exitement and anticipation, a little bird just told me that Donk will be posting his algorithm for [math]\varpi(x)[/math] in the near future! Don. Quote Link to comment Share on other sites More sharing options...

Kharakov Posted October 12, 2010 Report Share Posted October 12, 2010 Don, over in the non-figurate thread I posted a new formula that makes checking a lot faster (you only check ranks rather than checking every polygon type as well): F= n-gon rank r from n-gon rank r = 3-gon rank r + (n-3) * 3-gon rank(r-1) we get: [n-gon rank r] / [3-gon rank (r-1)] = [3-gon rank r] / [3-gon rank (r-1)] + n-3 n>=3 so n-3 is the set of integers from 0 to beyonddddddd infinity (or the natural numbers, which it turns out, aren't boring) Lets extend it a bit: [n-gon rank r] / [3-gon rank (r-1)] - [3-gon rank r] / [3-gon rank (r-1)] = the set of natural numbers (0,1,2,3,4.....) So, with F being our n-gon of rank r: if F/ [3-gon rank (r-1)] - [3-gon rank r] / [3-gon rank (r-1)] is a natural number, F is a polygonal A nice, short, easy testing algorithm without resorting to n. Should speed things up a bit (assuming it isn't already being used?). Of course, this is better (will be implemented in code later):r= rank (which is the 2-gon, or line "polygonal number") if (F - r)/ 3gon (r-1) is an integer, then F is polygonal So, I implemented it in maxima with a couple of short scripts, the first one you input f and the maximum rank you want to try (can quicken the code too, saw a couple spots off the bat here, fixed 'em): ***Note that the test function doesn't display whether a multiple of 3 is figurate: it returns nothing, since I eliminated that whole branch which is all figurate. Should re-write it not to confuse people I suppose, and will fix it tomorrow. For now, some food, then sleep. test(f,rmax):=[testpass:false,fbgontest:true, for i:3 thru rmax while fbgontest do [ if (i>4 and integerp(i/3)) then g:0 else [ isqrd:i^2, lgon:(isqrd-i)/2, bgon:(isqrd+i)/2, if (f>bgon) then [tst:(f-bgon)/lgon, if integerp(tst) then [disp(sconcat(" ",f," is figurate")), testpass:true] ] else fbgontest:false ]], if (testpass=false) and (fbgontest=false) then disp(sconcat(" ",f," is NOT figurate")), if (testpass=false) and (fbgontest) then disp(sconcat(" ",f," is not detected as figurate in ",rmax," tries")) ]$ It displays:test (14,55)$ 14 is NOT figurate OR (not high enough rank attempts to detect it is not figurate): test (14,3)$ 14 is not detected as figurate in 3 tries I didn't write a counting function yet (it's completely elementary to do so, will do so later), but I did a quick testloop function which tells you f is figurate if it is divisible by 3, otherwise it calls the test function I posted above (need to write test function without display things for count, or a seperate count function altogether, now that we have the super algorithm, it'll be easy):testloop (lowf,highf,rmax):=[ for f:lowf thru highf do if integerp(f/3) then disp(sconcat(" ",f," is figurate")) else test(f,rmax)]$ and here is some of the output:36 is figurate 37 is NOT figurate 38 is NOT figurate 39 is figurate 40 is figurate 41 is NOT figurate 42 is figurate 43 is NOT figurate 44 is NOT figurate 45 is figurate 46 is figurate 47 is NOT figurate 48 is figurate 49 is figurate 50 is NOT figurate 51 is figurate 52 is figurate 53 is NOT figurate 54 is figurate 55 is figurate 56 is NOT figurate 57 is figurate 58 is figurate 59 is NOT figurate 60 is figurate 61 is NOT figurate 62 is NOT figurate 63 is figurate Quote Link to comment Share on other sites More sharing options...

phillip1882 Posted October 12, 2010 Report Share Posted October 12, 2010 hey Kharakov, could you check over my python version code?def test(f,rmax): for i in range(3,rmax): if i>4 and i%3 ==0: pass else: j = i*i lowgon = (j-i)/2 highgon = (j+i)/2 if f > highgon: testval = (f-highgon)%lowgon if testval == 0: return 1 else: return 0 return 0 total = 0 row = 6 rowinc = 3 for i in range(6,10**6): if i%3 ==0: total += 1 else: if i>row: rowinc += 1 row += rowinc total += test(i,rowinc) print(total) as far as can tell this is a horrible algorithm. it took me 15 minutes to check 10**6, i checked 10**8 in 30 minutes using a simple division algorithm.max = 10**8 row = 28 column = 21 rowinc = 7 array = [6,3,10,6,15,10] total = int((max-6)/3) +int((max-10)/6) +int((max-15)/10*2/3) +3 while row < max: check = True for i in range(0,len(array),2): if (row-array[i])%array[i+1] == 0 and column%array[i+1] == 0: check = False break if check: value = row print(row) while value<max: check = True for i in range(0,len(array),2): if (value-array[i])%array[i+1] == 0: check = False break if check: total += 1 value += column array += [row,column] column = row rowinc += 1 row += rowinc print(total) Quote Link to comment Share on other sites More sharing options...

## Recommended Posts

## Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.