n | k | t | P(X) |
15 | 7 | 2 | X8 + X7 + X6 + X4 + 1 |
15 | 5 | 3 | X10 + X8 + X5 + X4 + X2 + X + 1 |
To do the sorting, you can either use the unix sort and uniq utilities, or load into a spreadsheet and use the sorting facilities there. If you take the latter approach, you may need to do something to make sure that the data is imported as strings, preserving leading 0's.
There is a sample method for generating all E with three 1-bits in tester.java.
Note that you will need to make sure that ZPAD is set to true in bitstring.java, so remainders have their initial zero bits.
Added October 30: for those who are still working on this,
here are the complete tables of all error patterns E
(all 15-bit strings with, for row 3, up to two 1-bits,
or for row 4, up to three 1-bits):
E values for row 3
E values for row 4
The files are in text format, with one entry per line. Using a typical unix shell, you can calculate the syndrome S for each of these and create the file of all pairs with
for i in $(cat file) do java foo $i donewhere the output of "foo 10000000" is the argument 10000000 followed by the computed syndrom (eg 01101), with the two separated by a space. This is perhaps the easiest way to get a file with both the original E and the corresponding syndrome S(E) together on the same line. The file can then be sorted with the unix sort utility, or by loading into a spreadsheet.
Added December 3: I've added a method readstrings(String filename) in tester.java; given the filename "E_row3.text", it returns an ArrayList of all 120 bitstrings in that file. This should make it easier to read in the file in java, and then generate the remainders by looping through that ArrayList, and printing out the original bitstrings and remainders.