While Serg is working on an implementation of his Canonical Form function, I have made some progress with "band classification" (distribution by "band" = rows 1-3) using the "Minlex Index" (MI) method.
I stopped the random grid caonicalisation tests after 2 million grids (mainly because getting CF grids is so expensive), and the final sample results were:
- Code: Select all
Index 0: R2 = 214365897, grids = 1667128 78.916%, bands >= 66
Index 1: R2 = 214367895, grids = 437459 20.708%, bands >= 127
Index 2: R2 = 214537896, grids = 7948 0.376%, bands >= 62
Index 3: R2 = 214567893, grids = 8 bands >= 2
-------
ed grids = 2112543
The use of ">=" for the band counts is just a reminder that we can't be sure that more distinct band settings won't be found.
For MI = 4, 5, 6 the results are known and complete:
- Code: Select all
Index 4: R2 = 214365897, grids = 1649, bands = 37
Index 5: R2 = 214367895, grids = 57, bands = 17
Index 6: R2 = 214537896, grids = 1, bands = 1
-------
ed grids = 1707
I wrote a program to enumerate all grids with a given MI value, and tested it on MI = 4, 5 and 6. The results confirmed that these 1707 grids are the only ED grids with MI = 4, 5, 6.
The program starts with rows 1 and 2 fixed for the given MI, then adds all possible row 3 settings that maintain the target MI. This "AddRow" function is applied recursively, and when we get to row 9 we have a complete grid with the target MI. For each complete grid we check that the transpose and conjugates don't have a smaller MI, then write those grids that pass this check to the results file.
The resulting grid set should contain only grids with the target MI - these are then converted to CF (the current choke point!) and duplicates removed, producing a final set of ED grids. The # of different R3 settings, the number of R9 grid completions, and the number of different ED grids found are shown below:
- Code: Select all
MI R3 values R9 completions ED
---------------------------------------
6 167,825 400 1
5 1,163,148 357,324 57
4 1,445,805 3,514,743 1649
3 3,699,570 23,279,340 ?? (tba)
As you can see, I have generated the full grid set for MI = 3 (my 2 million sample contained only 8 cases). CF reduction is now grinding away at this set, and this will take days, perhaps weeks, to complete, but it looks like the final ED count will be ~60K
MI = 2 enumeration seems feasible, but only for the grid generation stage - the CF reduction using my current function would take far too long.
I am thinking about a randomised version of this process that could perhaps help identify new band settings for MI = 0, 1, 2.