Goto Chapter: Top 1 2 3 4 5 6 7 8 9 A B C Bib Ind

### B Random functions

Here we describe some functions which allow to create several "random" objects.

#### B.1 Random functions

##### B.1-1 RandomNumericalSemigroup
 `‣ RandomNumericalSemigroup`( n, a[, b] ) ( function )

Returns a ``random" numerical semigroup with no more than n generators in [1..a] (or in [a..b], if b is present).

```gap> RandomNumericalSemigroup(3,9);
<Numerical semigroup with 3 generators>
gap> RandomNumericalSemigroup(3,9,55);
<Numerical semigroup with 3 generators>
```

##### B.1-2 RandomListForNS
 `‣ RandomListForNS`( n, a, b ) ( function )

Returns a set of length not greater than n of random integers in [a..b] whose GCD is 1. It is used to create "random" numerical semigroups.

```gap> RandomListForNS(13,1,79);
[ 22, 26, 29, 31, 34, 46, 53, 61, 62, 73, 76 ]
```

##### B.1-3 RandomModularNumericalSemigroup
 `‣ RandomModularNumericalSemigroup`( k[, m] ) ( function )

Returns a ``random" modular numerical semigroup S(a,b) with a le k (see 1.) and multiplicity at least m, were m is the second argument, which may not be present..

```gap> RandomModularNumericalSemigroup(9);
<Modular numerical semigroup satisfying 5x mod 6 <= x >
gap> RandomModularNumericalSemigroup(10,25);
<Modular numerical semigroup satisfying 4x mod 157 <= x >
```

##### B.1-4 RandomProportionallyModularNumericalSemigroup
 `‣ RandomProportionallyModularNumericalSemigroup`( k[, m] ) ( function )

Returns a ``random" proportionally modular numerical semigroup S(a,b,c) with a le k (see 1.) and multiplicity at least m, were m is the second argument, which may not be present.

```gap> RandomProportionallyModularNumericalSemigroup(9);
<Proportionally modular numerical semigroup satisfying 2x mod 3 <= 2x >
gap> RandomProportionallyModularNumericalSemigroup(10,25);
<Proportionally modular numerical semigroup satisfying 6x mod 681 <= 2x >
```

 `‣ RandomListRepresentingSubAdditiveFunction`( m, a ) ( function )
```gap> RandomListRepresentingSubAdditiveFunction(7,9);