  
  [1m[4m[31mB. Random functions[0m
  
  Here  we  describe  some  functions  which  allow to create several "random"
  objects.
  
  
  [1m[4m[31mB.1 Random functions[0m
  
  [1m[4m[31mB.1-1 RandomNumericalSemigroup[0m
  
  [1m[34m> RandomNumericalSemigroup( [0m[22m[34mn, m[0m[1m[34m ) _________________________________[0mfunction
  
  Returns  a  ``random"  numerical semigroup with no more than [22m[34mn[0m generators in
  [1..[22m[34mm[0m].
  
  [22m[35m---------------------------  Example  ----------------------------[0m
    [22m[35mgap> RandomNumericalSemigroup(3,9);[0m
    [22m[35m<Numerical semigroup with 3 generators>[0m
  [22m[35m------------------------------------------------------------------[0m
  
  [1m[4m[31mB.1-2 RandomListForNS[0m
  
  [1m[34m> RandomListForNS( [0m[22m[34mn, m[0m[1m[34m ) __________________________________________[0mfunction
  
  Returns  a  set  of  length  not greater than [22m[34mn[0m of random integers in [22m[34m[1..m][0m
  whose GCD is 1. It is used to create "random" numerical semigroups.
  
  [22m[35m---------------------------  Example  ----------------------------[0m
    [22m[35mgap> RandomListForNS(13,79);[0m
    [22m[35m[ 22, 26, 29, 31, 34, 46, 53, 61, 62, 73, 76 ][0m
  [22m[35m------------------------------------------------------------------[0m
  
  [1m[4m[31mB.1-3 RandomModularNumericalSemigroup[0m
  
  [1m[34m> RandomModularNumericalSemigroup( [0m[22m[34mk[0m[1m[34m ) _____________________________[0mfunction
  
  Returns a ``random" modular numerical semigroup.
  
  [22m[35m---------------------------  Example  ----------------------------[0m
    [22m[35mgap> RandomModularNumericalSemigroup(9);[0m
    [22m[35m<Modular numerical semigroup satisfying 5x mod 6 <= x >[0m
  [22m[35m------------------------------------------------------------------[0m
  
  [1m[4m[31mB.1-4 RandomProportionallyModularNumericalSemigroup[0m
  
  [1m[34m> RandomProportionallyModularNumericalSemigroup( [0m[22m[34mk[0m[1m[34m ) _______________[0mfunction
  
  Returns a ``random" proportionally modular numerical semigroup (see [1m1.[0m).
  
  [22m[35m---------------------------  Example  ----------------------------[0m
    [22m[35mgap> RandomProportionallyModularNumericalSemigroup(9);[0m
    [22m[35m<Proportionally modular numerical semigroup satisfying 2x mod 3 <= 2x >[0m
  [22m[35m------------------------------------------------------------------[0m
  
  [1m[4m[31mB.1-5 RandomListRepresentingSubAdditiveFunction[0m
  
  [1m[34m> RandomListRepresentingSubAdditiveFunction( [0m[22m[34mm, a[0m[1m[34m ) ________________[0mfunction
  
  Produces a ``random" list representing a subadditive function (see [1m1.[0m) which
  is  periodic  with  period  [22m[34mm[0m  (or  less).  When possible, the images are in
  [22m[34m[a..20*a][0m. (Otherwise, the list of possible images is enlarged.)
  
  [22m[35m---------------------------  Example  ----------------------------[0m
    [22m[35mgap> RandomListRepresentingSubAdditiveFunction(7,9);[0m
    [22m[35m[ 173, 114, 67, 0 ][0m
    [22m[35mgap> RepresentsPeriodicSubAdditiveFunction(last);[0m
    [22m[35mtrue[0m
  [22m[35m------------------------------------------------------------------[0m
  
