Sunday, August 31, 2008


Thinking more on code, invitation still open

Having had experience with going it alone with my Class Viewer project I'm reticent about doing a lone coder project again, but may do so, eventually if I must. Until I decide to do that though I'll say that I'd like to be more of an architect as well as the project owner on this one, and have a project manager who gets the other coders, and brings the project to fruition.

And the project is building what I hope is an optimal path engine based on some rather simple ideas inspired by considering the Traveling Salesman Problem with the simple addition of a backwards traveler going backwards in time through the optimal path to the forwards traveler going forwards, so that at the end you collapse to a single traveler going forwards in time, where the key minima is minimizing the total cost at each decision point as the travelers move towards each other.

In a sense I made up a global variable which can in some sense encompass the full map, which it should do perfectly with the Euclidean TSP, and can do in steps with other TSP's where the most random costs give it the most trouble, but still the problem is handled by the algorithm with O(n^3), so it's polynomial time, where n is the count of nodes.

Thinking more on design it seems to me that naturally there will be two travelers in the code, and nodes, and a node map, which could just about be it, so it seems like it should be easy enough to code, but I want a testing environment that has some kind of a GUI and I need something that is an engine in that it is easily plugged into a variety of environments.

If the main idea does work well, then it'd be rather cool, but even if it doesn't, are there any coders who might go for a project just for the fun of coding something even kind of wacky from scratch?

And if you like visibility, you have that, as just Google "optimal path engine" to see where the project will sit in rankings.

Because the project is high profile when it comes to people who might be interested I have to be able to Google you to see what you've done. So if you want on this project and don't have anything searchable, then make something that is, and fast.

Saturday, August 30, 2008


Algebraic integer result with quadratics

A rather remarkable bit of mathematics casts a darker view on the ring of algebraic integers where quadratics thankfully are useful for a somewhat subtle result, and the distributive property is almost bizarrely the linchpin of the proof.

Consider in an integral domain

P(x) = 175x^2 - 15x + 2


7*P(x) = (5a_1(x) + 7)*(5a_2(x)+ 7)

where the a's are roots of

a^2 - (7x-1)a + (49x^2 - 14x) = 0,

So I have a non-monic quadratic with integer coefficients which is multiplied times 7 and then factored using functions given by the roots of a monic quadratic expression, so I've entangled one quadratic with a quadratic generator in such a way as to allow myself to probe at the ring of algebraic integers in a way never before done without such remarkable tools.

Of course with a regular polynomial factorization like

7*(x^2 + 3x + 2) = (7x + 7)*(x+2)

it's trivial to just divide the 7 off to get

(x^2 + 3x + 2) = (x + 1)*(x+2)

but by entangling the two expressions and making the functional values roots of monic quadratics with integer coefficients when x is an integer, I've managed to FORCE a division of the 7 across non-rational solutions, and in that way remove the ability to in general divide it off from

7*P(x) = (5a_1(x) + 7)*(5a_2(x)+ 7)

in the ring of algebraic integers.

That was done by a clever re-grouping of terms:

7*P(x) = 1225x^2 - 105x + 14

and with the re-grouping I have

7*P(x) = (49x^2 - 14x)5^2 + (7x-1)(7)(5) + 7^2

to get

7*P(x) = (5a_1(x) + 7)(5a_2(x)+ 7)

which clearly gives

a^2 - (7x-1)a + (49x^2 - 14x) = 0,

But what's the point of the exercise?

Well by entangling the function into the roots of a quadratic generator I can put the distributive property to the test! As there isn't a lot of difference really between

7*(x^2 + 3x + 2) = (7x + 7)*(x+2)


7*P(x) = (5a_1(x) + 7)*(5a_2(x)+ 7)

where the a's are roots of a^2 - (7x-1)a + (49x^2 - 14x) = 0, because the distributive property doesn't care what is being multiplied, so in the first case you have (x+1)*(x+2), while in the second you have some weird unseen factorization where more complicated than linear functions are involved as yes, x+1 and x+2 are just linear functions.

So in EACH case you have FUNCTIONS involved but in the more complicated case I forced the functions to be more complicated by making them roots of a quadratic generator.

So the two examples are the same mathematically except in the second case the functions are not linear, which is why it's a non-polynomial factorization, which allows non-rational solutions with rational x.

So as they are mathematically the same in all key ways, not surprisingly, in each case you simply have 7 multiplied rather simply, which can be seen with the more complex example by letting x=0 as then

a^2 - (7x-1)a + (49x^2 - 14x) = 0


a^2 + a = 0

so one of the a's is 0 and the other is -1, so I have from

7*P(x) = (5a_1(x) + 7)*(5a_2(x)+ 7)


7*P(0) = (7)*(2) or (2)*(7).

So one of (5a_1(x) + 7) or (5a_2(x)+ 7) is coprime to 7 at that value just like with

7*(x^2 + 3x + 2) = (7x + 7)*(x+2)

one of them is coprime to 7 at x=0, and since I've mentioned coprimeness I'll go ahead and say that we'll try to be in the ring of algebraic integers.

I say try because you may already know that now there is a HUGE problem as if integer x generates a quadratic that is irreducible over Q, then you already know that NEITHER of the a's can have 7 as a factor in that ring!!!

For example with x=1, the result would need that for

a^2 - 6a + 35 = 0

one of the roots has 7 as a factor, but provably NEITHER of them do in the ring of algebraic integers.

And that is the quick demonstration of the major issue over which so many arguments have raged in the roughly six years or so since I discovered the problem.

After pondering things for a while I concluded that the problem was not with my understanding of the distributive property—which is after all rather basic—but with the ring of algebraic integers itself, which lead me to wondering what ring might be ok, and years ago I came up with what I call the ring of objects:

The object ring is defined by two conditions, and includes all numbers such that these conditions are true:
  1. 1 and -1 are the only rationals that are units in the ring.

  2. Given a member m of the ring there must exist a non-zero member n
    such that mn is an integer, and if mn is not a factor of m, then n
    cannot be a unit in the ring.
In that ring I found I didn't have a problem! And can simply divide the 7 off again like before:

P(x) = (5b_1(x) + 1)(5a_2(x)+ 7) or (5a_1(x) + 7)(5b_2(x)+ 1)

where a_1(x) = 7*b_1(x) or a_2(x) = 7*b_2(x),

where you have an ambiguity as to which one unless you have rational values for the functions.

AND I went ahead and figured out how the ring of algebraic integers can allow dividing off of the 7 as well, using what I call wrappers, and you can find my research on that subject by searching in Google on "wrapper theorem".

The problem though with this issue is that it shows that the ring of algebraic integers has additional properties beyond those previously known, and you can do some odd things with it.

Unfortunately some of those things include coming up with mathematical arguments that are not actually proofs as they rely on the quirks of the ring to imply something false.

Thursday, August 28, 2008


Java and history in the making

I came to Java from C++ the way maybe a lot of developers did which was being on a project where I thought I'd do one language and being told I was to learn it because that was the language we were using. So I did. I learned Java and became a lead developer on the project and helped bring a new app into the world where far as I know it's still out there saving lives.

But the language became key in my bigger struggle to find validation for my efforts when after playing with my own amateur mathematical ideas, I was called names, like "subhuman" and crazy. When I had strangers trying to find anything they could say to me in posts to be as nasty as they could, because I was playing with my own math ideas.

Maybe there is something good that can come from hatred and viciousness when responding to it is motivation to DO something that can take you beyond people telling you that you are nothing that you are a cretin that you are beneath contempt because you're trying to do your amateur mathematical research.

And I made Class Viewer, put it on SourceForge and as its ranking went up, I could say, yeah, I can do something. I can MAKE something despite what these math people are telling me. Something they can see, as I hadn't learned yet to repudiate the negative judgments. After all, for my research to be accepted, didn't I need acceptance from the mathematicians?

I NEEDED it because I'd found what I thought were proofs, and could explain them in detail, but these people said I was wrong, and that they were the experts, and that I was crazy. So I thought, maybe I am. What if I am?

I know. I'll make something and see.

And I could write my prime counting function, which I did in Java, and see those counts of prime numbers to verify against known counts, and see the same people hurling insults, still. And I could see and show, though they never missed a beat. Facts meant nothing to them. Demonstration was meaningless...but wait, I was published! But they fought against my paper after publication. The journal SWJPAM died. Where could I go? What could I do?

Where was the world? So connected, through the Internet, but where was the world?

I saw newspaper articles proclaiming greatness for people I knew were wrong, and they ate it up.

They cheered each other, and I knew what it was for people to be wrong together, for the victory of popular belief.

Posters here believe that I talk about Google rankings to brag.


I talk about the concrete to have a hold on my sense of my own sanity.

To say that there IS something concrete beyond what people say because people can lie.

You can sit back and think this story is not about you, but it would be you, if you found something that certain people didn't want known and they could just get together and say, no.

The mathematical community today has problems. Those problems seen first by me in those insults hurled at me just for trying, and now in the denial of proof, or even the definition of mathematical proof.

But the concrete remains so I have comfort in it.

I have my open source Java project on SourceForge. It is my Class Viewer that does some simple things, but I think it does them well, and no math person can ever call me crazy or subhuman ever, and it completely stick.

Though they still try.

No matter how hard they try and they have tried for so many years, I am human. I am not sub. I am not second class. They are not better than me no matter how many of them think they are no matter how many of them claim themselves to be. No matter how many of you do either.

And I try. And I fail. But I will not just be told that I am wrong.

Their efforts in the psychological campaign to rip my humanity from me, to destroy my sense of self, my sense of my own sanity by breaking their own rules and the most basic rules of human decency have failed because of machines.

My computer doesn't care what you say, what you think or how wrong you are because when I write a program if that program is correct then my computer does the right thing.

If only people consistently did the right thing.

If only proof were enough.

But people can lie. So the program is the thing.

I call my latest research the optimal path engine. Some may have noticed that you might call it the Harris optimal path engine. And if you take those first letters, you have HOPE.

The best path is the one that takes you beyond yourself and beyond your dreams to see the world as it truly is, not even as you wish it to be.

And to stand not just on the shoulders of greats, but to stand next to them, shoulder to shoulder, mind to mind, heart to heart, understanding that the pursuit of truth is the greatest art of them all.

I think that's kind of poetic, so I guess I'll post it. After all, why not? It's not like it really matters what people say to me.

I think I've heard just about every nasty thing people can muster.

Wednesday, August 27, 2008


JSH: Simply brutal, algebraic integers undone

What I did was something very clever, unlike anyone before me I constructed bizarre factorizations of a polynomial into non-polynomial factors, and by so doing, I found an error.

It's trivial to show, as consider a simple quadratic:

P(x) = 175x^2 - 15x + 2

I figured out a way to creatively factor it, AFTER you multiply by some constant like 7, so you have

7*P(x) = (5a_1(x) + 7)(5a_2(x)+ 7)

where the a's are the two roots of

a^2 - (7x-1)a + (49x^2 - 14x) = 0.

And in so doing blew up over a hundred years of mathematical thought as I leveraged a CONSTANT against functions in each of the factors:

(5a_1(x) + 7) and (5a_2(x)+ 7)

And you can do simple things like use x=0 to see what is happening and find that you have

7*P(0) = (5(-1) + 7)(5(0)+ 7) or 7*P(0) = (5(0) + 7)(5(-1)+ 7) = 14

And if the distributive property works with functions and

a*(f(x) + b) = a*f(x) + a*b

then you know what happens for any x, not just x=0.

So it's trivial.

Arguing against the result is arguing against the distributive property, but in the ring of algebraic integers you CANNOT DIVIDE OFF THE 7 IN GENERAL because that ring has special properties.

I got a paper published. And some sci.math'ers mounted an email campaign against it, the editors of the journal caved and then the journal quietly shut down.

Mathematical proof has so far been limited in effectiveness against social needs for error.

Quite simply, people who are failures at mathematics can use the error to "prove" things that are not true, and find social success.

And kill number theory in the process if allowed.

Sunday, August 24, 2008


JSH: Understanding the distributive property result

I made a very simple post that has a lot of detail to explain a rather basic result that follows from the distributive property because for YEARS posters on the sci.math newsgroup have disputed it, and it's worth explaining in enough detail for people to understand how easy the mathematics is.

Essentially the key result is that the distributive property doesn't care about the value of functions, so

a*(f(x) + b) = a*f(x) + a*b

but I have shown cases where with expressions of the general form

c*P(x)=(f_1(x) + c)*(f_2(x) + c)

in the ring of algebraic integers where P(x) is a polynomial with integer coefficients, and 'c' is a non-zero, non-unit integer, that factors of c in common with f_1(x) + c or f_2(x) + c at one value of x are NOT factors at some other value, so it's like the distributive property would have to be choosy, and it NOT be true in general that

a*(f(x) + b) = a*f(x) + a*b.

Posters in arguing with me against the distributive property for years have simply claimed that factors of 'c' bounce around depending on the value of x, which I call the tail wagging the dog, as if

a*(f(x) + b) = a*f(x) + a*b

is true sometimes depending on the value of f(x) but not true at other times.

That is also the objection that Professor McKenzie of Vanderbilt University and University of California at Berkeley shot down immediately when I discussed a non-polynomial factorization argument with him at Vanderbilt, in a visit to my alma mater a few years back.

So for years I've had any number of reasons to know that absolute mathematical proof shows that I'm correct, and that disputes about my research are disputes about the distributive property, but posters would just deny that and keep doing it.

And my papers were being denied by journals across the board, where SWJPAM was the only journal to at least briefly do the right thing and publish before posters from the sci.math newsgroup conspired and went after the paper in an email campaign.

So there is easy mathematical proof of a "core" error and I've contacted notables like Barry Mazur and Ralph McKenzie with whom I spoke in person and wrote things out on his chalkboard at his request, and he shot down immediately the objection that some sci.math'ers have used for years, so why hasn't anything happened?

Well the result is so crushing as it removes the ring of algebraic integers completely from usefulness in number theoretic analysis as you can make apparent contradiction using that ring where you appear to prove one thing one way, but can definitively prove the opposite another, which is what I did with my paper.

Considering the across the board rejection of my research from that sweeping result, to my prime number research, to my factoring research, it appears to me that certain people in the number theory community may have decided to let the human race go hang, block progress in number theory indefinitely, and just hold on for as long as they can to prestige, and paychecks that they now know they are not earning.

And, possibly most horrendously, teach young minds flawed mathematical ideas as THAT is the best way to guarantee they keep getting away with it, and maybe they're just cynical about human progress if that is true, as what they are doing is stopping progress in number theory so that it is all "pure math" in that it will NEVER be of value as it's all wrong, unless someday, someway the truth comes out, possibly by computers checking?

But you see, calling it "pure" and saying that it's not supposed to have practical application removes the threat of discovery until computers develop to the point of checking these arguments, and I suspect they are blocking computer science in that area as well, so maybe they figure if they can hold off human progress in number theory for 50 years or more they'll be long dead before anyone realizes they are frauds.

So they will have had the rewards in their lifetimes and avoided the painful reality.

But that is a speculative theory as I try to figure out how people could do these things, especially to so many young people around the world, who trust them.

Saturday, August 23, 2008


Class Viewer, Google searches, and rankings

Maybe more on-topic for Java developers I will again admit that I am curious about where my open source program Class Viewer for Java really ranks, where for years now I've puzzled over the #1 position held on a Google or Yahoo search on "class viewer" without knowing if it's really significant as hit counts to the page are pathetic, as in, 10 per day, on a good day.

The program itself isn't big or complicated and really just gives you a GUI for quick reference on Java classes to see all the public methods, fields and constructors, and it will open a browser to get javadocs, and can take you to the specific method:[],%20int,%20int)

The program built that URL and opened Firefox for me to it and I just copied that out to show here.

How good of a feature is that? I know now developers are using IDE's while when I was professionally programming I used an IDE with C++, but the Java ones were considered crappy by my fellow developers (should date when I was developing) so they convinced me to do everything from the command line. And I hate IntelliSense.

All the javadocs I need are kept up with in an xml file, so once they're in there, I don't have to look them up again and the program opens them up in an instant to the method I want, and if there are changes I just open it with a text editor and make the changes to the path for the URL.

I've considered letting people do that through the GUI but without feedback I don't know if it's needed or would be useful.

Oh yeah, as I cover neat features as I need more info, and getting feedback about users is a waste as I learned earlier, I'll ask about comparisons, one thing I love is the ability to do a search on every public method with a certain character string in it. Like I can search for everything with "ode", in String and get the following output:

int hashCode()
int codePointAt(int)
int codePointBefore(int)
int codePointCount(int,int)
int offsetByCodePoints(int,int)

So that just pulled everything with "Code", and that's everything in String. Or you can search on "char" and get every method that has "char" in it at all, which I think is just neat.

The program itself is just middle-ware I think on Java Reflections which returns methods with package information which makes that hard to read so the program strips that off (or tries to strip it off), and then it just gives you search, and finally you can double-click on a method and get javadocs opened up for you to that method.

So then, does all of that deserve a #1 ranking in Google for a search on "Class Viewer"?

Do the IDE's now do all of that for you?

And if it's a decent little program, why do I only get at best 10 hits per day on the main webpage?


JSH: Distributive property and key result

It is worth reminding yet again that I discovered a flaw in "core" mathematics which oddly enough is easily shown to be there using the distributive property and some simple quadratics.

But that is so controversial because the people who are supposed to evaluate such a discovery are number theorists who have their dreams of successful research shattered by the result, so despite the ease of proof and, of course the absoluteness of the proof, they have chosen instead to live in error, and to teach it to young minds.

The key to understanding what follows is accepting the distributive property with functions, for example,

a*(f(x) + b) = a*f(x) + a*b

If you accept that then all follows easily. I have seen arguments on the sci.math newsgroup where people dispute that and then come back to claim that they are not disputing it as they dodge on the basis of a slight difference in form as you will see

c*P(x)=(f_1(x) + c)*(f_2(x) + c)

so there are TWO cases where the distributive property is used, but it doesn't change how it works, but in that deuce, posters have tried to convince against mathematical proof.

Now then, consider in an integral ring

c*P(x)=(f_1(x) + c)*(f_2(x) + c)

where P(x) is a polynomial with integer coefficients, and c is a non-zero integer, where also P(0) is nonzero and coprime to c in Z. That is, c is coprime to P(0) in the ring of integers.

Then it cannot be true that both f_1(0) = 0 and f_2(0)=0.

Proof: Assume both DO equal 0 when x=0, then you have

c*P(0) = c^2 which contradicts with P(0) being coprime to c in Z.

Since they both cannot equal 0 when x=0, let's normalize with

f_1(x) = g_1(x) + b_1


f_2(x) = g_2(x) + b_2

where g_1(0) = 0 and g_2(0) = 0, where b_1 and b_2 are not functions of x and both cannot equal 0 as proven above.

Then making the substitutions I have

c*P(x)=(g_1(x) + b_1 + c)*(g_2(x) + b_2 + c)

and notice that at x=0 I have

c*P(0)=(b_1 + c)*(b_2 + c).

Now let d_1 be any factors in common between (b_1 + c) and c, and let d_2 be any in common between c and (b_2 + c), then I have that

c = d_1*d_2.

Then it follows from the distributive property that g_1(x) and g_2(x) must be products as well so let

g_1(x) = d_1*h_1(x)


g_2(x) = d_2*h_2(x)

and making those substitutions gives

d_1*d_2*P(x)=(d_1*h_1(x) + b_1 + d_1*d_2)*(d_2*h_2(x) + b_2 + d_1*d_2)

and now for reference return to our original expression

c*P(x)=(f_1(x) + c)*(f_2(x) + c)


f_1(x) + c = d_1*h_1(x) + b_1 + d_1*d_2

and since c = d_1*d_2, that is

f_1(x) = d_1*h_1(x) + b_1

so f_1(x) must have d_1 as a factor since b_1 does.

Proof complete.

So we now have proven the result that d_1 has distributed through f_1(x) + c and d_2 has distributed through f_2(x) + c.

To get some grasp of what that result means consider that if the ring is the ring of integers and f_1(x) and f_2(x) are polynomials then you have that d_1 is a factor of f_1(x) and d_2 is a factor of f_2(x).

But it is possible in the ring of algebraic integers for f_1(x) to NOT have d_1 as a factor so all of those steps above are not always valid in the ring of algebraic integers.

Since you can calculate d_1 and d_2, it is easy to check the result with actual polynomials.

Friday, August 22, 2008


Innovation, my TSP algorithm and factoring, timelines

Turns out that there is a lag between pickup of any revolutionary idea and its presentation.

I have research into the factoring problem which I think is kind of good, though I didn't actually finish an algorithm as I decided it was too dangerous. Gist of that research was to consider two congruences where mathematicians typically consider one:

x^2 = y^2 mod p
z^2 = y^2 mod T

where T is the target composite to be factored and p is an odd prime that I call a helper prime as it's just there to help you factor T. I solved out the problem with a couple of additional variables as one of my key problem solving techniques involves adding in extra variables, or degrees of freedom as physics people like to say (I think as I'm a physics person).

If I'm right then it turns out that I don't actually have to finish out the research but the time lag until someone does, if I'm right, would be anywhere from 6 months to 2 years which is kind of a W.A.G. but I think it's roughly correct.

Now more recently I came up with an algorithm which I think solves the Traveling Salesman Problem and in so doing proves that P=NP, as naturally, from thinking I have a break on the factoring problem, I'd go to TSP looking to apply the same type techniques against it!

And doing so I came up with two travelers where one is going backwards in time and you multiply the costs along legs times the distance between the two travelers to figure out the total cost of a path and pick the least cost path, using a global variable.

Now THAT algorithm is a couple of weeks old but I've given a complete algorithm, so that should speed things up, so I'd estimate that it'd take from one month to a year before it's picked up somewhere in the world if it is correct.

Which leaves me with nothing to do but wait.

Oh, so why not simply implement myself? Like solve the factoring problem? Or directly prove that the TSP algorithm works?

Well, they might be wrong! And I don't want the disappointment if so!

And, I gain little with success. Now I'm some "crackpot" mouthing off on Usenet. With success I'd have to be someone else. There'd be a tremendous weight of public opinion on me when I did things that people disapproved of, and the scariest thing is that whole role model thing.

I don't want to be a role model.

And I don't want to answer a lot of stupid questions, so there.

If I were truly irresponsible I'd simply keep the research to myself and let the world go hang.

But instead I'm at least putting it out there, though you people so sorely tempt me. If I could just put all of it back in the bottle so to speak, I'd be very tempted as trust me, it's a stupid world. I'm really scared of being dragged down to doom with the rest of you people, but hey, maybe that's just destiny.

So, in any event, I get to party, be irresponsible to an extent, and have silly conversations with funny people who take themselves too seriously and think they know more than they do, while not feeling like I'm cheating the world as the information is out there.

People just have to use it.

Or not!

IF I am wrong, then of course, no one will ever do anything with my ideas, so there.

It's a nice complete package which allows me to go back to silly conversation with funny people.
The short of it is that they blocked everything.

I first went for "pure math" and when I had proofs there I was blocked by a simple refusal of mathematicians to acknowledge the results, so I branched out.

I created Class Viewer. I focused more towards concrete results, like trying to popularize my prime counting function. I created a definition of mathematical proof.

I worked on factoring and finally came to TSP, and I've realized that I'm dealing with a situation where there is an absolute refusal to acknowledge my research.

And the only saving grace is knowing that as the line of humanity, its direction, moves against knowledge, things get worse.

But it's a class war and back in Old England if the nobility ever faced a situation where it was either end their class system or have their entire world suffer annihilation, I think they would have everyone die.

These people appear to be set on not letting anything through.

The US and Britain are economic powers so flows of money had to be re-routed around them, and competing currencies to the US dollar and pound were needed.

Because my analysis has always been that presented with a situation where the lies that they had turned from class structures to democracies and middle class ways were outed that the US would initiate World War III and try to annihilate the world versus allowing a truly free society.

So then, what would the solution be given that assessment?

How do you de-nuke nuclear powers?

Good question.

Sunday, August 17, 2008


My OPE & the Euclicidean TSP

A little while back I posted for a while on a creative algorithm I came up with for tracing out a path through nodes, and discussions got bogged down on the issue of whether or not it solved the TSP, where the consensus of several members was that it did not. But I have made a project for the full algorithm at Google Code for coding in java and while the welcome mat for coders has been put out, I have no responses, so I have decided to talk more about the algorithm here with the Euclidean TSP as I realized it'd be simpler to explain.

I will not give the full detailed algorithm here as I wish to simply explain, but the gist of it is that you have TWO travelers who start from the same node, every node is connected to every other node, and the weight is the distance between nodes as it's the Euclidean Traveling Salesman Problem being considered, and the two travelers choose nodes such that they stay as physically close together as possible where they can't choose the same node.

The weird thing in considering that as a solution is wondering how local choices can have a global impact as playing with any TSP problem for any length of time can, I'm sure, lead to the belief that the main issue has to do with unknowns far away from the initial nodes, while my idea says that local choices from BOTH sides of the path solve the problem, so to help understand how local solves global, consider two other travelers not using the algorithm.

To make it easier to imagine let's say the nodes are cities, and you have two teams, where both teams are couples, and they all start from the same city, but as they travel through all nodes—say, going through European cities—they avoid again going to the same city, or to a city their couple has already visited, but the first couple tries to stay as close together physically as possible in their choices while the other couple doesn't care, and makes different choices.

What happens after iteration 1?

Well the first couple has moved from the starting city to two other different cities, choosing them such that their physical distance apart is the LEAST possible given all possible city choices, while the other couple has gone to different cities for some other reason, so what do we now know?

We know that the second couple is further away from each other as they traveled FARTHER than the first and MUST eventually make up that distance, as eventually they come back together, so we already know that the second couple has already traveled further and will have to travel still further to make up the distance than the first. It's like a double whammy. They traveled to more distant cities, and are
farther apart so will have a greater distance to travel in coming back together down the line.

You may say, but what about the second choice, and the next and the next?

Well, in each case the first couple remains as close as possible so the second couple gets further behind, but can actually catch up as the first couple can kind of bounce off each other if they're traversing through very close cities until they're forced apart by running through all of those so they have to get further apart as they go to unvisited cities, so here is where the other couple can start catching up.

Eventually each couple comes to a point where they're each at the last two cities, so they can just pick one at which to meet, or there is only one city left in the middle and they both move forward to meet there, and tracing out the two routes you have just two routes along which you can imagine a SINGLE traveler.

So at the end of the exercise you can collapse out the second traveler and have a route for a single traveler in each case.

My hope is that pondering that problem and how each local choice leads to a global result: distance apart, will help understanding of how this algorithm works, and why it works.

Maybe the simplest thing for those of you who actually play with TSP problems is to trace out a route for a Euclidean TSP, using two travelers, where one starts at the end and works back to one starting from the beginning and working forward and check the distance between them at any point, versus two travelers using a non-optimal path.

My problem solving methods often involve using additional variables—more degrees of freedom—which just help with solving the problem but collapse out from the final solution and here using two travelers allows a handle to be placed on the optimal path, which handles the global problem piecewise with local decisions from BOTH ends.

I generalized the full algorithm to handle the TSP in general, where you may not necessarily have distance information, and then I generalized to situations where all nodes are not connected to every other node, and got the full algorithm for what I call the optimal path engine, or the OPE, which is waiting to be designed and coded.

The project space is optimalpathengine at Google Code. There is also a newsgroup:

Where you can discuss the idea including criticizing it if you like. I'll only manage to the extent that I keep out flaming or any other kind of deliberately disruptive behavior, so if you post there disagreement with the idea, don't worry I won't get rid of it, though if you're looking to simply sabotage the project with criticism, no need to bother as so far nothing is happening anyway, which is why I'm posting.

As a sidenote, for those interested in more in theory, if you look for paths that are not round trip, so you're going to have a starting node, and a different ending node, the algorithm behaves rather interestingly in that if you start and finish at opposite ends then the algorithm works in reverse in that you have the travelers pick in a way that maximizes the distance between them, as otherwise they will take the LONGEST path. Also, you can get the longest path with the original by having them pick to maximize the distance between them.

Oh yeah, in closing, if this algorithm does work to pick the shortest path then it proves that P=NP which is worth mentioning because the solution then explains why "hard" problems are hard as they require additional degrees of freedom not evident in the final solution e.g. the second traveler of the algorithm and the distance between the two travelers.

These additional degrees of freedom give the range necessary for solving NP hard problems, but are invisible to people searching for solutions unless they figure out an angle, so they can work for as long as they won't and find various techniques that don't provide a general solution, and yes, I have used additional variables in other areas and I did go to TSP because I had this insight about this problem solving approach and the TSP was the natural thing to consider. The approach I use was born December 1999 out of attempts at proving Fermat's Last Theorem. I'd exhausted very way I knew of paying with x^p + y^p = z^p, so I thought to myself, wouldn't it be neat if I had more degrees of freedom? So I've used the approach now for over 8 years with amazing successes that are the subject of controversy.

Another example of a problem where I used an additional degree of freedom is my prime counting function, which is worth mentioning again because of the reception it receives, as in chilly. There I found a much simpler way to count prime numbers than is currently taught where I have a P(x,y) function (fully mathematicized, but a P(x,n) in sieve form), versus the pi(x) function of traditional mathematics.

It has been six years since that innovation. I have little expectation that a solution proving P=NP would be rapidly picked up—against the intuition or gut feelings of many of you I'm sure—but fully expect MASSIVE resistance against the solution without any objections being given that show the idea is actually flawed!!! Amazingly enough.

(Consider that I actually had some of my research published in a mathematical journal once. Readers on the sci.math newsgroup found out about it, some conspired in posts an email campaign against the paper. The editors just yanked my paper after that email campaign, after publication, as it was an electronic journal, so they just left a gap! They managed one more edition and then the entire math journal shut-down. Its hosting university, Cameron University, part of the Oklahoma state university system, removed ALL MENTION of the journal from its website. That math journal had been around for 9 years. The mathematical paper published in it over that timeframe might have been lost except EMIS maintained the archives. Don't believe that amazing story? See for yourself:

Link to edition that HAD my paper:

An entire mathematical journal died quietly over a controversial paper accepted from a supposed "crackpot" and the world just kept on going like nothing happened. No big news story. No intrepid reporters from ANY of the world's press that bothered to care—even though I tried to bug them about it!!!

Revolutionary results run into the problem of defense against the truth.)

But I could be wrong, so here's this post to see. Obviously if you study this idea and see viability or prove it (remember you can trace out actual Euclidean TSP solutions) then you can sign on and help design and code the OPE. Even if you think I'm right, make no mistake, it could take YEARS or even decades before the world accepts the truth as that's how it really works, unlike fantasies some may have from stories, legends or Hollywood movies. The fantasy world is not the reality. Reality is a slog through the mud, and massive resistance against the truth, and lots of people maybe willing to say really mean things to you for a period of years.

There is no instant on, I like to say. So you can face ridicule, or mostly being totally ignored for years no matter what you can prove, or demonstrate even with a program. So only those who can move forward without that social stuff like approval and accolades need even consider signing on.
Oh, that's wrong.

Saturday, August 16, 2008


Initial status report

Thought to myself that maybe it'd help to try and keep up with what's going on with status reports, so here's a try. May be the only one…but, don't know.

Still just kind of trying to get a hold on things as the op algorithm came to me so fast and I'm reading up more now on things like TSP as didn't realize the scale of efforts with it, though I knew it was a big deal to some extent. It's just different when you have your own idea in the ring to look at so much out there from others. Different perspective.

The algorithm I have now seems solid enough but besides there will be no changes while I'm letting things percolate anyway, so that doesn't necessarily mean there wouldn't be changes later. Have pdf's at project site, so maybe can draw interest from others, not likely though. Have newsgroup setup, just in case as well.

Started thinking a bit about design and code structure but find that can't stay focused on it now. Guess it's too soon.

Oh, did talk a bit about these ideas as I fleshed them out quickly in discussions on a computer science newsgroup, and not surprisingly some people came to dismiss the idea, really quickly. It's amazing to me how predictable that is, and how irrational. They couldn't even offer up real examples to dispute but talked as if they did. Remarkably how most people get taken in by that though, guess it's because it takes so much effort to think for yourself, and oh, that assumption that if someone were right the world would take notice.

Only in fantasy land. In the real world, this is what happens. One lonely discoverer gets a lot of time on his hands to ponder how weird the world really is, while all those other people go for comfort, not understanding that discovery is like wandering the wilderness.

It's a lonely job which is maybe why it seems only guys can do it, as maybe only guys can be like me now, so alone with a beautiful solution, knowing it has to be right, pressing on because you're driven from inside, and believe in absolutes.

There is a beauty in that though, like being on the top of a very high mountain, above all the fog and clouds, gazing out on beautiful landscapes never seen by all those people who can never get more than a few feet off the ground…and I'm no longer writing a status report!!!

Enough babbling…initial setup complete. Incubation process in progress… Nothing further.

Saturday, August 09, 2008


JSH: Confronting my fatalism

For various reason I've been looking more at my own behavior in looking at why some of my mathematical research has failed to gain more mainstream acceptance, and I've had to admit to myself that I've been looking for failure, expecting it, partly from being a student of history and knowing how hard it is for new ideas to be accepted but also because of some personal background I have brought up years before, as I was born into a fundamentalist Christian family that among other things believed that God would soon literally destroy the world, killing every other person not a part of this religion, ushering in a paradise on earth afterwards.

As a kid there were times based on what I was taught that I didn't think I'd have to worry about graduating from high school because this world would probably be destroyed by then, by God.

Oh yeah, also I was taught that the world is actually governed by Satan the Devil, who is in charge of all world leaders, so true Christians are supposed to be separate from the world, work only so that they can survive, and devote most of their time to preaching to others to follow in the footsteps of Jesus Christ.

And those are some central tenets of the Jehovah's Witness religion and while I let go, or thought I'd let them go, looking back I can see how my postings have often been impacted by the world view that was drilled into me, and it's time for me to just honestly look at that and make a better effort to not look for and expect the worst from others.

And to not get preachy about my own mathematical discoveries, I guess.

Functionally, most of that means I will no longer rant against mathematicians, math society, or "math people", as I've done in the past.

I have no intentions of picking up a renewed posting frenzy either as I fear a need on some level to "preach" may have driven a larger than necessary posting volume in the past—maybe with all those threads I was doing the equivalent of JW's knocking on a lot of doors—though I was also brainstorming so it was a mixed bag. Life is complicated, eh?

And think about one interesting thing of how I was trained: I was brought up to go to the homes of strangers and knock on their door to tell them their religion was wrong, as that's what Jehovah's Witnesses do.

I was 4 years old going with my parents, helping them. Later before I escaped to college, I was a kid facing resistance from strangers in arguments on Christ and the fate of the world.

You might say I was trained to do what I did for so many years on math groups, and with that training, I have to say, I was pretty damn good at it.

Time to let it go.

Sunday, August 03, 2008


My prime counting function

Sieve form of my prime counting function:

With natural numbers x and n, where p_i is the i_th prime:

P(x,n) = x - 1 - sum for i=1 to n of {P([x/p_i],i-1) - (i-1)}

where if n is greater than the count of primes up to and including sqrt(x) then n is reset to that count.

That simple algorithm will count primes out to positive infinity. And yes, it is perfect.

It is the shortest representation of a prime counting function that I've ever seen that is not just brute force i.e. check each natural and see if it's prime.

If you code it, you can easily verify that it works. Just to be sure you understand what I mean, note that P(100,4) = 25 as there are 25 prime up to 100, and P(10,2) = 4, where those primes are 2, 3, 5 and 7, and that [] is the floor() function, so [1.333]=1.

It is in actuality part of one of the most remarkable intellectual finds in human history, and I did the research back in 2002, and for my troubles the mathematical community has given me grief and understanding this story is a lot about understanding the reality of our academic world, and it's relevant here because I am also a Java programmer with the open source project Class Viewer and I fear that some of you completely have the wrong idea about me.

I am not a crackpot. I am a major discoverer who can prove it easily, like with that prime counting function above, and even show you what you have missed, like not getting taught it in school or seeing it in journals or added to references, though I fully informed the mathematical community years ago.

I like simplicity and elegance, which is why my Class Viewer project is so minimalist and doesn't require a lot of instruction.

My research simplifies mathematics.

It simplifies it greatly.

If you do a search on "prime counting function" and read what mathematicians traditionally teach you will get knocked over by complexity.

Complexity gives room for paper, books, lectures and lots more mathematicians doing research in an area than are actually needed.

Don't believe me?

Then, program the prime counting function. Look at what's out there for prime counting functions. Notice mine is not given. Consider that I have been beating the drums on this research since 2002 and try to come up with a better explanation.

That is just one of my more minor results. The others are much bigger and ALL of them are simplifying results.

I've been told by mathematicians that my prime counting function is not important because they don't think it's interesting. But it is the most compact representation of a prime counting function known, other than brute force. It is the ONLY multi-dimensional prime counting function that I know of. And it is a unique find that should at least be cataloged.

But if I let it die, they would let it die. They would let the knowledge be lost if they could, but I will not let them.

The trouble with a lot of people shouting conspiracy all the time is that when you actually are faced with one you can say, it's not possible or it has to be some crazy guy who just doesn't understand, which is why I say: program the algorithm, look over the literature and see.

And if you get really bold, just ask the mathematicians, and then see what happens.

I have six years of experience of knowing what they do, so I have nothing to learn there.

Quite simply, they will disappoint you.

This page is powered by Blogger. Isn't yours?