############################################################################# ## #A codecr.gd GUAVA library Reinald Baart #A Jasper Cramwinckel #A Erik Roijackers #A Eric Minkes ## ## This file contains functions for calculating with code covering radii ## #H @(#)$Id: codecr.gd,v 1.3 2003/02/12 03:49:16 gap Exp $ ## Revision.("guava/lib/codecr_gd") := "@(#)$Id: codecr.gd,v 1.3 2003/02/12 03:49:16 gap Exp $"; ######################################################################## ## #F CoveringRadius( ) ## ## Return the covering radius of ## In case a special algorithm for this code exist, call ## it first. ## ## Not useful for large codes. ## ## That's why I changed it, see the manual for more details ## -- eric minkes. ## DeclareAttribute("CoveringRadius", IsCode); ######################################################################## ## #F SpecialCoveringRadius( ) ## ## Special function to calculate the covering radius of a code ## None implemented yet. ## DeclareAttribute("SpecialCoveringRadius", IsCode); ######################################################################## ## #F BoundsCoveringRadius( ) ## ## Find a lower and an upper bound for the covering radius of code. ## DeclareOperation("BoundsCoveringRadius", [IsCode]); ######################################################################## ## #F SetBoundsCoveringRadius( , ) ## SetBoundsCoveringRadius( , ) ## ## Enable the user to set the covering radius (or bounds) him/herself. ## Was SetCoveringRadius in GAP3 version of GUAVA. ## DeclareOperation("SetBoundsCoveringRadius", [IsCode, IsVector]); ######################################################################## ## #F IncreaseCoveringRadiusLowerBound( ## [, ] [, ] ) ## DeclareOperation("IncreaseCoveringRadiusLowerBound", [IsCode, IsInt, IsVector]); ######################################################################## ## #F ExhaustiveSearchCoveringRadius( ) ## ## Try to compute the covering radius. Don't compute all coset ## leaders, but increment the lower bound as soon as a coset leader ## is found. ## DeclareOperation("ExhaustiveSearchCoveringRadius", [IsCode, IsBool]); ######################################################################## ## #F CoveringRadiusLowerBoundTable ## ######################################################################## ## #F GeneralLowerBoundCoveringRadius( , [, ] ) ## GeneralLowerBoundCoveringRadius( ) ## DeclareOperation("GeneralLowerBoundCoveringRadius", [IsCode]); ######################################################################## ## #F LowerBoundCoveringRadiusSphereCovering( , [, ] [, true ] ) ## DeclareOperation("LowerBoundCoveringRadiusSphereCovering", [IsInt, IsInt, IsInt, IsBool]); ######################################################################## ## #F LowerBoundCoveringRadiusVanWee1( ... ) ## DeclareOperation("LowerBoundCoveringRadiusVanWee1", [IsInt, IsInt, IsInt, IsBool]); ############################################################################# ## #F LowerBoundCoveringRadiusVanWee2( , ) Counting Excess bound ## DeclareOperation("LowerBoundCoveringRadiusVanWee2", [IsInt, IsInt, IsBool]); ############################################################################# ## #F LowerBoundCoveringRadiusCountingExcess( , ) ## DeclareOperation("LowerBoundCoveringRadiusCountingExcess", [IsInt, IsInt, IsBool]); ######################################################################## ## #F LowerBoundCoveringRadiusEmbedded1( , [, ] ) ## DeclareOperation("LowerBoundCoveringRadiusEmbedded1", [IsInt, IsInt, IsInt, IsBool]); ######################################################################## ## #F LowerBoundCoveringRadiusEmbedded2( , [, ] ) ## DeclareOperation("LowerBoundCoveringRadiusEmbedded2", [IsInt, IsInt, IsInt, IsBool]); ############################################################################# ## #F LowerBoundCoveringRadiusInduction( , ) Induction bound ## DeclareOperation("LowerBoundCoveringRadiusInduction", [IsInt, IsInt]); ######################################################################## ## #F GeneralUpperBoundCoveringRadius( ) ## DeclareOperation("GeneralUpperBoundCoveringRadius", [IsCode]); ######################################################################## ## #F UpperBoundCoveringRadiusRedundancy( ) ## ## Return the redundancy of the code as an upper bound for ## the covering radius. ## ## Only for linear codes. ## DeclareOperation("UpperBoundCoveringRadiusRedundancy", [IsCode]); ######################################################################## ## #F UpperBoundCoveringRadiusDelsarte( ) ## DeclareOperation("UpperBoundCoveringRadiusDelsarte", [IsCode]); ######################################################################## ## #F UpperBoundCoveringRadiusStrength( ) ## ## Return (q-1)n/q as an upper bound for , if it ## has strength 1 (i.e. every coordinate contains each element ## of the field the same number of times). ## DeclareOperation("UpperBoundCoveringRadiusStrength", [IsCode]); ######################################################################## ## #F UpperBoundCoveringRadiusGriesmerLike( ) ## DeclareOperation("UpperBoundCoveringRadiusGriesmerLike", [IsCode]); ######################################################################## ## #F UpperBoundCoveringRadiusCyclicCode( ) ## DeclareOperation("UpperBoundCoveringRadiusCyclicCode", [IsCode]);