It seems If I can kind of tell if a number is a composite or prime very Quickly once I've done some more tweaking and not only that differnt types of composites seem to yeild different behavours too. I might be very close to fast prime factorisation or at least a very fast probable prime test that can even be done quickly on numbers with 100's of millions of digits long evn a billion digits long quickly with a good GPU once coded properly for.
The Results
First
Comparing Primes with Compisites
{{{0, -2, 0, 2}, {0, 0, 0, 1,0}}, {{-2, 0, 1, -1}, {0, 0, 1, 1, 0}}},
{{{-2, 0, 2, 0}, {0, 0,0, 0, 0}}, {{0, 2, 0, 0}, {0, 0, 1, 1, 0}}},
{{{0, -2, 0, 2}, {0, 0, 0, 0, 0}}, {{2, 0, 1, -1}, {0, 0, 1, -1, -1}}},
{{{2, 0, 0,2}, {0, 0, 0, 0, 0}}, {{0, 2, 0, 2}, {0, 0, -1, -1,0}}},
{{{0, -2, 2, 0}, {0, 0, 1, 0, 0}}, {{0, -2, -2, 0}, {0, 0,0, 1, 0}}},
{{{-2, 0, 2, 0}, {0, 0, 0, 0, 0}}, {{2, 0, 0, 0}, {0, 0, 1, -1, 0}}},
{{{2, 0, 0, -2}, {0, 0, 0, 0, 0}}, {{0, 2, 1,1}, {0, 0, -1, 1, 0}}},
{{{2, 0, 2, 0}, {0, 0, 0, 1, 0}}, {{0, 2, 1, 1}, {0, 0, 1, 1, 0}}},
{{{0, -2, 2, 0}, {0, 0, 0, 0, 0}}, {{-2, 0, 1, -1}, {0, 0, -1, 0, 0}}},
{{{0, 2, 0, 2}, {0, 0, 0, 1, 1}}, {{0, 2, 1, -1}, {0, 0, 1, 1, 0}}}
Now Comparing 3 Prime Composites with 2 Prime Composites
{{{0, 2, 0, -2}, {-1, -1, 1, 0, 1}}, {{0, 2, 2, 0}, {-1, 1, -1, 0, 0}}},
{{{2, 0, 0, -2}, {0, -1, 0, 0, -1}}, {{0, 2, 2, 0}, {-1, -1,1, 0, 0}}},
{{{0, -2, 0, -2}, {0, 0, 0, 0, 1}}, {{-2, 0, 2, 0}, {1, 0, -1, 1, 0}}},
{{{-2, 0, 2, 0}, {1, 0, 0, 0, 0}}, {{0, -2, -2, 0}, {0, 0, -1, 1, 0}}},
{{{2, 0, 0, -2}, {1, 1, -1, 0, -1}}, {{0,2, 2, 0}, {0, -1, -1, -1, 0}}},
{{{-2, 0, -2, 0}, {-1, 0, 0, 0, 0}}, {{0, -2, 0, 2}, {0, 0, 1, 0, 0}}}
Now the MatheMatica Code I used
FiveItt[x98_, cc5_] :=
DifferenceRoot[
Function[{\[FormalY], \[FormalN]}, {-cc5 -
cc5 \[FormalY][\[FormalN]] + \[FormalY][1 + \[FormalN]] ==
0, \[FormalY][1] == 1, \[FormalY][2] == cc5}]][x98];
BCC[x55_, g77_] :=
Drop[Flatten[Reap[
Module[
{x45 = x55, z7 = 0, z8 = 0, z9, g7 = g77, bell},
z7 =
If[x45/FiveItt[Length[IntegerDigits[x45, g7]], g7] <= 1,
If[x45 == 1, 1, Length[IntegerDigits[x45, g7]] - 1],
Length[IntegerDigits[x45, g7]]];
bell = FiveItt[z7 - 1, g7];
z9 = g7^(z7 - 1);
Label[SPo];
z8 =
If[IntegerQ[x45/g7] && x45 > g7,
Quotient[x45 - bell - (1/(2*g7)), z9],
If[x45 <= g7, x45, Quotient[x45 - bell, z9]]];
Sow[z8];
x45 = x45 - (z8*(z9));
z7 = z7 - 1;
z9 = z9/g7;
bell = bell - z9;
If[z7 < 1, Goto[EnD], Goto[SPo]];
Label[EnD];
]
]], 1];
Px = Compile[
{{x1d, _Complex}, {si1d, _Real}}
,
Module[{x1c = x1d, si1c = si1d}
, x1c +
1/2 (Floor[
Re[(-4 + si1c +
Sqrt[(-4 + si1c)^2 + 8 (-2 + si1c) (-1 + x1d)])/(
2 (-2 + si1c))]] +
Floor[Im[(-4 + si1c +
Sqrt[(-4 + si1c)^2 + 8 (-2 + si1c) (-1 + x1d)])/(
2 (-2 + si1c))]] I) (-4 +
si1c - (-2 +
si1c) (Floor[
Re[(-4 + si1c +
Sqrt[(-4 + si1c)^2 + 8 (-2 + si1c) (-1 + x1c)])/(
2 (-2 + si1c))]] +
Floor[Im[(-4 + si1c +
Sqrt[(-4 + si1c)^2 + 8 (-2 + si1c) (-1 + x1c)])/(
2 (-2 + si1c))]] I))]
, CompilationTarget -> "C", "RuntimeOptions" -> "Speed"];
PJ[x45_] := {
{
JacobiSymbol[x45, Floor[Re[Px[Total[BCC[x45, 5]], 11]]]] +
JacobiSymbol[x45, Floor[Re[Px[Total[BCC[x45, 11]], 5]]]],
JacobiSymbol[x45, Floor[Re[Px[Total[BCC[x45, 5]], 11]]]] -
JacobiSymbol[x45, Floor[Re[Px[Total[BCC[x45, 11]], 5]]]],
JacobiSymbol[x45, Floor[Re[Px[x45, 7]]]] +
JacobiSymbol[x45, Floor[Re[Px[x45, 5]]]],
JacobiSymbol[x45, Floor[Re[Px[x45, 7]]]] -
JacobiSymbol[x45, Floor[Re[Px[x45, 5]]]]
}, {
JacobiSymbol[x45 + 5, Floor[Re[Px[x45, 11]]]],
JacobiSymbol[x45 + 5, Floor[Re[Px[x45, 5]]]],
JacobiSymbol[x45 + 5, Floor[Re[Px[Total[BCC[x45 + 5, 5]], 5]]]],
JacobiSymbol[x45 + 5, Floor[Re[Px[Total[BCC[x45 + 5, 5]], 11]]]],
JacobiSymbol[x45 + 5, Floor[Re[Px[Total[BCC[x45 + 5, 11]], 5]]]]
}
};