Changeset 76afcd in git for Singular/LIB/decodegb.lib
- Timestamp:
- Mar 25, 2009, 12:15:16 PM (14 years ago)
- Branches:
- (u'spielwiese', '0d6b7fcd9813a1ca1ed4220cfa2b104b97a0a003')
- Children:
- 087a94afc4dc0923c87d4d3d336e0ab8ae621a77
- Parents:
- fe919cbede83a96748fd037a48aa15876e31e41e
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
Singular/LIB/decodegb.lib
rfe919c r76afcd 1 1 /////////////////////////////////////////////////////////////////////////////// 2 version="$Id: decodegb.lib,v 1. 9 2009-01-14 16:07:03 SingularExp $";2 version="$Id: decodegb.lib,v 1.10 2009-03-25 11:15:16 bulygin Exp $"; 3 3 category="Coding theory"; 4 4 info=" … … 12 12 is worked out here as well. We also (for comparison) enable to work with the 13 13 system of Fitzgerald-Lax. We provide some auxiliary functions for further 14 manipulations and decoding. For an overview of the methods mentioned above @ref{Decoding codes with GB} 14 manipulations and decoding. For an overview of the methods mentioned above @ref{Decoding codes with GB}. 15 15 For the vanishing ideal computation the algorithm of Farr and Gao is 16 16 implemented. … … 90 90 91 91 proc sysCRHT (int n, list defset, int e, int q, int m, list #) 92 "USAGE: sysCRHT(n,defset,e,q,m,[k]); n,e,q,m,k int, defset list of int's92 "USAGE: sysCRHT(n,defset,e,q,m,[k]); n,e,q,m,k are int, defset list of int's 93 93 @format 94 94 - n length of the cyclic code, … … 281 281 282 282 proc sysNewton (int n, list defset, int t, int q, int m, list #) 283 "USAGE: sysNewton (n,defset,t,q,m,[tr]); n,t,q,m,tr int, defset list int's283 "USAGE: sysNewton (n,defset,t,q,m,[tr]); n,t,q,m,tr int, defset is list int's 284 284 @format 285 285 - n is length, … … 296 296 the corresponding ideal 'newton' with the generalized Newton 297 297 identities. With its help one can solve the decoding problem. For 298 basics of the method @ref{ Cooper philosophy}.298 basics of the method @ref{Generalized Newton identities}. 299 299 SEE ALSO: sysCRHT, sysBin 300 300 EXAMPLE: example sysNewton; shows an example … … 471 471 @format 472 472 - v a number if errors, 473 - Q is a generating set of the code,473 - Q is a defining set of the code, 474 474 - n the length, 475 475 - odd is an additional parameter: if 476 set to 1, then the generating set is enlarged by odd elements,477 which are 2^(some power)*(some elment in the gen.set) mod n476 set to 1, then the defining set is enlarged by odd elements, 477 which are 2^(some power)*(some elment in the def.set) mod n 478 478 @end format 479 479 RETURN: the ring with the resulting system called 'bin' 480 480 THEORY: Based on Q of the given cyclic code, the procedure constructs 481 the corresponding ideal 'bin' with the use of Waring function.481 the corresponding ideal 'bin' with the use of the Waring function. 482 482 With its help one can solve the decoding problem. 483 483 For basics of the method @ref{Generalized Newton identities}. … … 657 657 "USAGE: sysQE(check,y,t,[fieldeq,formal]);check,y matrix;t,fieldeq,formal int 658 658 @format 659 - check is thecheck matrix of the code659 - check is a parity check matrix of the code 660 660 - y is a received word, 661 661 - t the number of errors to be corrected, … … 663 663 - if formal=0, field equations on (known) syndrome variables 664 664 are not added, in order to add them (note that the exponent should 665 be as anumber of elements in the INITIAL alphabet) one665 be equal to the number of elements in the INITIAL alphabet) one 666 666 needs to set formal>0 for the exponent 667 667 @end format … … 669 669 THEORY: Based on 'check' of the given linear code, the procedure constructs 670 670 the corresponding ideal that gives an opportunity to compute 671 unknown syndrome of the received word y. Further672 one is able to solve the decoding problem.671 unknown syndrome of the received word y. After computing the unknown 672 syndromes one is able to solve the decoding problem. 673 673 For basics of the method @ref{Decoding method based on quadratic equations}. 674 674 SEE ALSO: sysFL … … 860 860 861 861 proc errorInsert(matrix y, list pos, list val) 862 "USAGE: errorInsert(y,pos,val); y is matrix, pos,val list of int's862 "USAGE: errorInsert(y,pos,val); y is matrix, pos,val are list of int's 863 863 @format 864 864 - y is a (code) word, … … 900 900 901 901 proc errorRand(matrix y, int num, int e) 902 "USAGE: errorRand(y, num, e); y matrix, num,e int902 "USAGE: errorRand(y, num, e); y is matrix, num,e are int 903 903 @format 904 904 - y is a (code) word, … … 1014 1014 - a is a primitive element of the field. 1015 1015 @end format 1016 NOTE: An MDS matrix is constructed in the following way. We take ato be a1016 NOTE: An MDS matrix is constructed in the following way. We take 'a' to be a 1017 1017 generator of the multiplicative group of the field. Then we construct 1018 the Vandermonde matrix with this a.1018 the Vandermonde matrix with this 'a'. 1019 1019 ASSUME: extension field should already be defined 1020 RETURN: a matrix with the MDS property 1020 RETURN: a matrix with the MDS property. @xref{Decoding method based on quadratic equations} 1021 for more info. 1021 1022 EXAMPLE: example genMDSMat; shows an example 1022 1023 " … … 1138 1139 - t is an upper bound for the number of errors one wants to correct 1139 1140 @end format 1141 NOTE: The method described in @ref{Decoding method based on quadratic equations} 1142 is used for decoding. 1140 1143 ASSUME: Errors in rec should be correctable, otherwise the output is 1141 1144 unpredictable … … 1322 1325 "USAGE: decodeCode(check, ntrials, [e]); check matrix, ntrials,e int 1323 1326 @format 1324 - check is a check matrix for the code,1327 - check is a parity check matrix for the code, 1325 1328 - ntrials is the number of received vectors per code to be 1326 1329 corrected. … … 1730 1733 "USAGE: sysFL (check,y,t,e,s); check,y matrix, t,e,s int 1731 1734 @format 1732 - check is a check matrix of the code,1735 - check is a parity check matrix of the code, 1733 1736 - y is a received word, 1734 1737 - t the number of errors to correct, … … 1992 1995 "USAGE: decodeRandomFL(redun,p,e,n,t,ncodes,ntrials,minpol); 1993 1996 @format 1994 - n is length of codes generated, redun = redundancy of codes1995 generated,1997 - n is length of codes generated, 1998 - redun = redundancy of codes generated, 1996 1999 - p is characteristics, 1997 2000 - e is the extension degree,
Note: See TracChangeset
for help on using the changeset viewer.