65.143 CoveringRadius

CoveringRadius( code )

CoveringRadius is a function that already appeared in earlier versions of GUAVA, but it is changed to reflect the implementation of new functions for the covering radius.

If there exists a function called SpecialCoveringRadius in the operations field of the code, then this function will be called to compute the covering radius of the code. At the moment, no code-specific functions are implemented.

If the length of BoundsCoveringRadius (see BoundsCoveringRadius), is 1, then the value in
code.boundsCoveringRadius is returned. Otherwise, the function
code.operations.CoveringRadius is executed, unless the redundancy of code is too large. In the last case, a warning is issued.

If you want to overrule this restriction, you might want to execute
code.operations.CoveringRadius yourself. However, this algorithm might also issue a warning that it cannot be executed, but this warning is sometimes issued too late, resulting in GAP exiting with an memory error. If it does run, it can only be stopped by pressing ctrl-C twice, thereby quitting GAP. It will not enter the usual break-loop. Therefore it is recommendable to save your work before trying code.operations.CoveringRadius.

    gap> CoveringRadius( BCHCode( 17, 3, GF(2) ) );
    3
    gap> CoveringRadius( HammingCode( 5, GF(2) ) );
    1
    gap> code := ReedMullerCode( 1, 9 );;
    gap> CoveringRadius( code );
    CoveringRadius: warning, the covering radius of
    this code cannot be computed straightforward.
    Try to use IncreaseCoveringRadiusLowerBound( <code> ).
    (see the manual for more details).
    The covering radius of <code> lies in the interval:
    [ 240 .. 248 ] 
    gap> code.operations.CoveringRadius( code );
    Error, CosetLeaderMatFFE: sorry, no hope to finish 

Previous Up Top Next
Index

GAP 3.4.4
April 1997