Goto Chapter: Top 1 2 3 4 5 6 7 8 9 10 11 12 13 A B C Bib Ind
 [Top of Book]  [Contents]   [Previous Chapter]   [Next Chapter] 

A Generalities
 A.1 Bézout sequences
 A.2 Periodic subadditive functions

A Generalities

Here we describe some functions which are not specific for numerical semigroups but are used to do computations with them. As they may have interest by themselves, we describe them here.

A.1 Bézout sequences

A sequence of positive rational numbers a_1/b_1 < ⋯ < a_n/b_n with a_i,b_i positive integers is a Bézout sequence if a_i+1b_i - a_i b_i+1=1 for all i∈ {1,...,n-1}.

The following function uses an algorithm presented in [BR09].

A.1-1 BezoutSequence
‣ BezoutSequence( arg )( function )

arg consists of two rational numbers or a list of two rational numbers. The output is a Bézout sequence with ends the two rational numbers given. (Warning: rational numbers are silently transformed into irreducible fractions.)

gap> BezoutSequence(4/5,53/27);
[ 4/5, 1, 3/2, 5/3, 7/4, 9/5, 11/6, 13/7, 15/8, 17/9, 19/10, 21/11, 23/12,
  25/13, 27/14, 29/15, 31/16, 33/17, 35/18, 37/19, 39/20, 41/21, 43/22,
  45/23, 47/24, 49/25, 51/26, 53/27 ]

A.1-2 IsBezoutSequence
‣ IsBezoutSequence( L )( function )

L is a list of rational numbers. IsBezoutSequence returns true or false according to whether L is a Bézout sequence or not.

gap> IsBezoutSequence([ 4/5, 1, 3/2, 5/3, 7/4, 9/5, 11/6]);
true
gap> IsBezoutSequence([ 4/5, 1, 3/2, 5/3, 7/4, 9/5, 11/3]);
Take the 6 and the 7 elements of the sequence
false

A.1-3 CeilingOfRational
‣ CeilingOfRational( r )( function )

Returns the smallest integer greater than or equal to the rational r.

gap> CeilingOfRational(3/5);
1

A.2 Periodic subadditive functions

A periodic function f of period m from the set N of natural numbers into itself may be specified through a list of m natural numbers. The function f is said to be subadditive if f(i+j)≤ f(i)+f(j) and f(0)=0.

A.2-1 RepresentsPeriodicSubAdditiveFunction
‣ RepresentsPeriodicSubAdditiveFunction( L )( function )

L is a list of integers. RepresentsPeriodicSubAdditiveFunction returns true or false according to whether L represents a periodic subadditive function f periodic of period m or not. To avoid defining f(0) (which we assume to be 0) we define f(m)=0 and so the last element of the list must be 0. This technical need is due to the fact that positions in a list must be positive (not a 0).

gap> RepresentsPeriodicSubAdditiveFunction([1,2,3,4,0]);
true

A.2-2 IsListOfIntegersNS
‣ IsListOfIntegersNS( L )( function )

Detects whether L is a nonempty list of integers.

gap> IsListOfIntegersNS([1,-1,0]);
true
gap> IsListOfIntegersNS(2);
false
gap> IsListOfIntegersNS([[2],3]);
false
gap> IsListOfIntegersNS([]);
false
 [Top of Book]  [Contents]   [Previous Chapter]   [Next Chapter] 
Goto Chapter: Top 1 2 3 4 5 6 7 8 9 10 11 12 13 A B C Bib Ind

generated by GAPDoc2HTML