The table below lists the polynomials used. All are feed-forward non-systematic codes with no catastrophic cycles.

(H) indicates the minimum distance equals the Heller bound. (T) indicates a transparent polynomial set, although the block convolutional code is not transparent.

The alias can be used as argument to the `-p` program options instead of
giving the full octal polynomial.

Alias | Code | Polynomials in Octal | $d_{min}$ |
---|---|---|---|

2K15B | Rate 1/2 K=15 | 046253,077361 | 17 |

2K16B | Rate 1/2 K=16 | 0114727,0176121 | 18 |

2K17B | Rate 1/2 K=17 (T) | 0213631,0353323 | 20 |

2K18A | Rate 1/2 K=18 | 0507517,0654315 | 20 |

2K21A | Rate 1/2 K=21 | 05016515,06770547 | 24 |

2K23A | Rate 1/2 K=23 (T) | 051202215,066575563 | 24 |

3K10A | Rate 1/3 K=10 (H) | 01117,01365,01633 | 20 |

3K11A | Rate 1/3 K=11 (H) | 02353,02671,03175 | 22 |

3K12A | Rate 1/3 K=12 (H) | 04767,05723,06265 | 24 |

3K13A | Rate 1/3 K=13 | 010533,010675,017661 | 24 |

3K14A | Rate 1/3 K=14 | 021645,035661,037133 | 26 |

4K13A | Rate 1/4 K=13 | 011145,012477,015537,016727 | 32 |

4K14A | Rate 1/4 K=14 (H) | 021113,023175,035527,035537 | 36 |

4K15B | Rate 1/4 K=15 | 050575,051447,056533,066371 | 37 |

4K16A | Rate 1/4 K=16 | 0123175,0135233,0156627,0176151 | 39 |

4K17A | Rate 1/4 K=17 | 0235433,0247631,0264335,0311727 | 41 |

4K19A | Rate 1/4 K=19 (H) | 01122645,01373343,01531175,01634157 | 46 |

4K21A | Rate 1/4 K=21 | 04542365,05342433,06347677,07232671 | 50 |

4K23A | Rate 1/4 K=23 | 022346335,024275433,035520777,036271251 | 54 |

4K25A | Rate 1/4 K=25 (T) | 0106042635,0125445117,0152646773,0167561761 | 58 |

8K17A | Rate 1/8 K=17 | 0222537,0226345,0255077,0267667, 0306347,0315117,0326721,0372751 |
84 |

8K19A | Rate 1/8 K=19 | 01632737,01226537,01214561,01276775, 01221517,01523533,01154451,01543563 |
92 |

8K21A | Rate 1/8 K=21 (H) | 04470745,04714453,05175161,05366615, 06375351,06752427,06775363,07310533 |
102 |

8K23A | Rate 1/8 K=23 (H) | 023372665,024534765,025561775,027325743, 031716223,032210543,035451321,036744713 |
110 |

8K25A | Rate 1/8 K=25 | 0105341521,0111747353,0114371121,0122355637, 0134552773,0150627331,0164507577,0172554315 |
118 |

16K19A | Rate 1/16 K=19 (H) | 01047113,01072363,01131677,01153145, 01214573,01306665,01334255,01346335, 01456535,01555113,01676751,01723045, 01737471,01743251,01761527,01765237 |
187 |

16K21A | Rate 1/16 K=21 (H) | 04232547,04505631,05114365,05234555, 05275577,05333523,05634353,05663763, 05735521,06110751,06273753,06523067, 06723455,07454677,07647511,07710617 |
204 |

16K23A | Rate 1/16 K=23 | 021570463,022334751,023471145,023564713, 024225255,025336745,026522675,030653713, 030664223,031367237,032361377,033355313, 036377267,037212147,037352421,037553071 |
220 |

16K25A | Rate 1/16 K=25 (H) | 0104722251,0107672671,0122541663,0122545535, 0123470447,0125364663,0131553555,0131615665, 0145114761,0145522105,0146174323,0157705733, 0162370765,0166576517,0167572771,0176274217 |
238 |

Most of the shorter constraint length polynomials are standard well known codes. The longer ones were found by a brute force search. A very large number of polynomial sets were randomly generated (subject to some simple constraints) and tested for $d_{min}$. Those with the largest $d_{min}$ where then compared on the basis of the first few dozen terms of their distance spectrum.

The production rate of good codes was significantly enhanced by taking a large set of reasonably good rate $1/r$ codes and testing combinations of these as rate $1/(2r)$ codes.

Some effort was made to rank codes based only on their cumulative distance spectrum without considering their $d_{min}$, with a view to producing codes optimised for list decoding. However, no significant difference in actual message performance could be established using such codes, compared with those with the highest $d_{min}$.