An integer list in Macaulay is an ordered list of integers. They are used for many purposes including, listing the degrees of the rows or columns of a matrix, weights of the variables in a ring, weight functions for monomial orders, and selecting rows or columns of a matrix to define a submatrix.
An integer list consists of a sequence of items, separated by blanks. Each item is one of the following, where e and f are arbitrary integer expressions.
Ranges must represent an increasing sequence of integers, for example
``a..b'', denotes the sequence
, where a and
b are user defined integer variables, and
. ``a..b''
is legal even if a ;SPMgt; b, but denotes the empty sequence.
Replications e..f replicate the first integer e the
number of times indicated by the second integer f. Thus ``2:4''
represents the sequence 2,2,2,2. If
, e..f denotes
the empty sequence.
A matrix variable m denotes the sequence of row degrees of the matrix m.
If a fixed length list is expected (as in the setdegs command), and fewer items are specified, the last integer is replicated to fill the list. If more items are specified, the extras are simply ignored with no warning.
Using special characters in response to an integer list prompt has the following meaning.
Integer lists are displayed using replication.
Examples: Suppose that the row degrees of the matrix m are ``1,1,2,3'' and the row degrees of the matrix n are ``-1,-4,5,100,1200''. Then
Integer lists are used by the commands: submat, cat, ring, setdegs,setcoldegs.