Home Online Manual
Top
Back: readInputTXT
Forward: checkpfdMat
FastBack:
FastForward:
Up: pfd_lib
Top: Singular Manual
Contents: Table of Contents
Index: Index
About: About this document

D.15.12.9 pfdMat

Procedure from library pfd.lib (see pfd_lib).

Usage:
pfdMat(file[, dotest, ignore_nonlin, output_mode, parallelize]); file string, dotest,ignore_nonlin,output_mode,parallelize int

Purpose:
apply pfd to all entries of a matrix of rational functions saved in a txt-file. The string file should be the [directory +] name of the file.
The input file can either be a txt-file or an ssi-file created with readInputTXT. In case of a txt-file, the base ring has to match and the matrix has to be in the same format specified in readInputTXT. Also, txt-files that are bigger than 2 GB should be split as described for readInputTXT and a list of the filenames can be given as first argument instead.
The result is saved in multiple txt- (and ssi-) files (see below) within the directory of the input file.
Also a logfile is created, which protocols the memory used and the runtimes of pfd for each matrix entry in real-time.


There are also 4 optional arguments:
If dotest is nonzero, test the results with checkpfd:
dotest<0 (default): exact test (may be slow),
dotest>0: do this amount of probabilistic tests for each entry (see checkpfd).


If ignore_nonlin is nonzero (default), for each denominator, the nonlinear factors in the factorization are removed before applying pfd (and added back in in the output files).


If parallelize is nonzero (default), the decompositions are calculated in parallel using parallel_lib.


The parameter output_mode controls the output files created:
output_mode=1 (default): The result consists of two files: <filename>_pfd_indexed.txt contains the matrix of all decompositions (as list of lists separated by the characters "{", "}" and ",") where all the denominators are written in factorized form depending on irreducible factors q1, q2, ... . The file <filename>_denominator_factors.txt lists all the polynomials q1, q2, ... .
output_mode=2: Additionally to mode 1, the file <filename>_pfd.txt is created, which also contains the matrix of decompositions but the factors in the denominators are written out.
output_mode=3: Additionally to mode 2, the result and some intermediate results are saved as SINGULAR objects in ssi-files:
<filename>.ssi: contains the result of readInputTXT in case a txt-file was given as input.
<filename>_factorized_denominators.ssi: like the first file, but the denominators are saved in factorized form, that is as a list of an ideal of irreducible non constant polynomials and an intvec of exponents.
<filename>_linear_part.ssi (only if ignore_nonlin is nonzero): like the previous file, but all the irreducible denominator factors are removed
<filename>_non_linear_factors.ssi (only if ignore_nonlin is nonzero): a list of an ideal p generated by irreducible polynomials and a matrix (list of lists) of the nonlinear denominator factors of each entry of the input matrix. These are represented as lists of an intvec of indices i for which p[i] occurs as a (nonlinear) factor in the denominator and an intvec containing the exponents of those factors.
<filename>_pfd.ssi: a list, where the first entry is an ideal q of denominator factors and the second entry is a matrix (as list of lists) containing the decompositions, each of which is a list of terms, where a term is represented as in the result of pfd by a list containing
1) the numerator polynomial
2) an intvec of indices i for which q[i] occurs as a factor in the denominator
3) an intvec containing the exponents of those irreducible factors.
IMPORTANT: If ignore_nonlin is nonzero, this file contains the decompositions of the entries of the matrix in <filename>_linear_part.ssi. Thus the nonlinear factors, are NOT contained in this file.
output_mode=4: Additionally to mode 3, the direct output of each call of pfd is saved in separate ssi-files called pfd_results_i_j.ssi where i,j are the matrix indices. This creates a lot of files, but may be useful in case the algorithm does not terminate in time for every matrix entry. Other than the files created in mode 1-3, these files are saved in the current directory, rather than the directory of the input file.

See also: checkpfd; checkpfdMat; pfd; readInputTXT.