MeatAxe: zcf - Change Field

MeatAxe 2.4

- Main Page
- Related Pages
- Modules
- Data Structures

zcf - Change Field

## Command Line

    zcf Options q Input Output

Options
  Standard options, see Standard Command Line Options

q
  New field order.

Input
  Input file.

Output
  Output file.

## Input Files

Input
  Input file.

## Output Files

Output
  Output file.

## Description

This program converts between various data types. Currently there are two kinds of conversions available:

- If Input is a matrix, the field is changed to GF(q). The current field of the input file must be a subfield or a superfield of GF(q). In the latter case, all matrix entries must be in GF(q).
- If Input is a permutation of degree n, it is converted into the corresponding n times n permutation matrix over GF(q).

## Implementation Details

For matrices, the conversion is done in two steps. First, all entries of the matrix are converted to integers. Then, they are mapped to the new field and reassembled into rows. The result is written out row by row.

In case of permutations the output matrix is generated row by row by inserting ones at the positions specified by the permutation.

If the input is a matrix, the whole matrix must fit into memory. Additionally, the program needs n⋅m⋅s bytes of memory, where m and n are the dimensions of the input matrix and s=1 for the small arithmetic version and s=2 for the big version. In case of permutations, the input permutation and one row of the output file must fit into memory.