Top
Back: D.9.1.11 dual_code
Forward: D.9.1.13 permute_L
FastBack: D. SINGULAR libraries
FastForward: E. Release Notes
Up: D.9.1 brnoeth_lib
Top: Singular 2-0-4 Manual
Contents: Table of Contents
Index: F. Index
About: About This Document

D.9.1.12 sys_code

Procedure from library brnoeth.lib (see brnoeth_lib).

Usage:

sys_code(C); C is a matrix of constants

Return:

list L with:

 
   L[1] is the generator matrix in standard form of an equivalent code,
   L[2] is the parity check matrix in standard form of such code,
   L[3] is an intvec which represents the needed permutation.
   
Note:

Computes a systematic code which is equivalent to the given one.
The input should be a matrix of numbers.
The output has to be interpreted as follows: if the input was the generator matrix of an AG code then one should apply the permutation L[3] to the divisor D of rational points by means of permute_L(D,L[3]); before continuing to work with the code (for instance, if you want to use the systematic encoding together with a decoding algorithm).

Example:

 
LIB "brnoeth.lib";
ring s=3,T,lp;
matrix C[2][5]=0,1,0,1,1,0,1,0,0,1;
print(C);
→ 0,1,0,1,1,
→ 0,1,0,0,1 
list L=sys_code(C);
L[3];
→ 2,4,3,1,5
// here is the generator matrix in standard form
print(L[1]);
→ 1,0,0,0,1,
→ 0,1,0,0,0 
// here is the control matrix in standard form
print(L[2]);
→ 0, 0,1,0,0,
→ 0, 0,0,1,0,
→ -1,0,0,0,1 
// we can check that both codes are dual to each other
print(L[1]*transpose(L[2]));
→ 0,0,0,
→ 0,0,0 

See also: AGcode_Omega; permute_L; prepSV.


Top Back: D.9.1.11 dual_code Forward: D.9.1.13 permute_L FastBack: D. SINGULAR libraries FastForward: E. Release Notes Up: D.9.1 brnoeth_lib Top: Singular 2-0-4 Manual Contents: Table of Contents Index: F. Index About: About This Document
            User manual for Singular version 2-0-4, October 2002, generated by texi2html.