|
D.10.2.14 decodeRandom
Procedure from library decodegb.lib (see decodegb_lib).
- Usage:
- decodeRandom(redun,q,ncodes,ntrials,[e]); all parameters int
| - redun is a redundabcy of a (random) code,
- q is the field size,
- ncodes is the number of random codes to be processed,
- ntrials is the number of received vectors per code to be corrected
- If e is given it sets the correction capacity explicitly. It
should be used in case one expects some lower bound,
otherwise the procedure tries to compute the real minimum distance
to find out the error-correction capacity
|
- Return:
- nothing;
Example:
| LIB "decodegb.lib";
int q=32; int n=25; int redun=n-11; int t=redun+1;
ring r=(q,a),x,dp;
// correct 2 errors in 2 random binary codes, 3 trials each
decodeRandom(n,redun,2,3,2);
==> check matrix:
==> 0,1,0,0,0,1,1,1,0,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,
==> 1,0,0,0,0,0,1,0,0,1,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,
==> 1,1,1,1,0,0,0,1,1,1,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,
==> 1,1,0,0,0,0,1,0,1,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,
==> 0,0,0,1,1,0,1,0,0,1,1,0,0,0,0,1,0,0,0,0,0,0,0,0,0,
==> 0,0,1,0,1,1,1,0,1,1,1,0,0,0,0,0,1,0,0,0,0,0,0,0,0,
==> 0,1,0,0,0,1,0,1,0,0,1,0,0,0,0,0,0,1,0,0,0,0,0,0,0,
==> 0,1,1,1,0,1,1,1,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,
==> 1,0,0,0,1,1,1,1,0,1,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,
==> 0,1,1,1,0,1,0,0,1,1,1,0,0,0,0,0,0,0,0,0,1,0,0,0,0,
==> 0,0,1,0,0,1,0,1,1,0,1,0,0,0,0,0,0,0,0,0,0,1,0,0,0,
==> 0,0,1,0,0,0,1,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,
==> 0,0,0,0,1,0,0,0,0,1,1,0,0,0,0,0,0,0,0,0,0,0,0,1,0,
==> 1,0,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1
==> The system is generated
==> Codeword:
==> 1,0,0,1,0,1,0,1,1,1,0,1,0,1,0,0,1,0,1,0,0,1,1,1,0
==> Received word:
==> 1,0,0,1,0,1,0,0,1,1,0,1,0,1,0,0,1,1,1,0,0,1,1,1,0
==> The Groebenr basis of the QE system:
==> U(25)+a^25,
==> U(24)+a^20,
==> U(23)+a^28,
==> U(22)+a^7,
==> U(21)+a^29,
==> U(20)+a^19,
==> U(19)+a^23,
==> U(18)+a^19,
==> U(17)+a^21,
==> U(16)+a^9,
==> U(15)+a^14,
==> U(14)+a^25,
==> U(13)+a^28,
==> U(12)+a^14,
==> U(11)+a^30,
==> U(10)+a^27,
==> U(9)+a^26,
==> U(8)+a^7,
==> U(7)+a^14,
==> U(6)+a^15,
==> U(5)+a^13,
==> U(4)+a^7,
==> U(3)+a^22,
==> U(2)+a^11,
==> U(1),
==> V(2)+a^11,
==> V(1)+a^24
==> Codeword:
==> 0,0,1,1,1,1,1,0,0,1,0,1,0,1,1,0,1,1,0,0,0,0,1,0,0
==> Received word:
==> 0,0,0,1,1,1,1,0,0,1,0,1,0,1,1,0,1,1,0,0,0,0,1,1,0
==> The Groebenr basis of the QE system:
==> U(25)+a^6,
==> U(24)+a^16,
==> U(23)+a^8,
==> U(22)+a^2,
==> U(21)+a^8,
==> U(20)+a^13,
==> U(19)+a,
==> U(18)+a^12,
==> U(17)+a^29,
==> U(16)+a,
==> U(15)+a^21,
==> U(14)+a^16,
==> U(13)+a^3,
==> U(12)+a^4,
==> U(11)+a^4,
==> U(10)+a^16,
==> U(9)+a^30,
==> U(8)+a^26,
==> U(7)+a^17,
==> U(6)+a^2,
==> U(5)+a^15,
==> U(4)+a^24,
==> U(3)+a^23,
==> U(2)+a^27,
==> U(1),
==> V(2)+a^27,
==> V(1)+a^25
==> Codeword:
==> 0,0,0,1,0,1,0,0,0,1,1,1,1,0,0,1,1,0,0,0,0,0,1,0,1
==> Received word:
==> 0,0,0,1,1,1,0,1,0,1,1,1,1,0,0,1,1,0,0,0,0,0,1,0,1
==> The Groebenr basis of the QE system:
==> U(25)+a^7,
==> U(24)+a^21,
==> U(23)+a^5,
==> U(22)+a^9,
==> U(21)+a^21,
==> U(20)+a^11,
==> U(19)+a^22,
==> U(18)+a^14,
==> U(17)+a,
==> U(16)+a^11,
==> U(15)+a^13,
==> U(14)+a^10,
==> U(13)+a^19,
==> U(12)+a^18,
==> U(11)+a^26,
==> U(10)+a^11,
==> U(9)+a^16,
==> U(8)+a^22,
==> U(7)+a^25,
==> U(6)+a^13,
==> U(5)+a^8,
==> U(4)+a^28,
==> U(3)+a^4,
==> U(2)+a^2,
==> U(1),
==> V(2)+a^2,
==> V(1)+a^11
==> check matrix:
==> 0,1,0,1,1,0,1,1,1,1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,
==> 0,1,1,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,
==> 0,0,0,0,0,0,1,0,1,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,
==> 0,0,1,0,0,1,1,1,0,1,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,
==> 1,1,0,0,1,1,0,1,1,1,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,
==> 1,1,0,0,0,0,0,0,0,0,1,0,0,0,0,0,1,0,0,0,0,0,0,0,0,
==> 1,1,1,0,1,1,0,1,0,1,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,
==> 0,1,1,0,0,0,0,1,0,0,1,0,0,0,0,0,0,0,1,0,0,0,0,0,0,
==> 1,0,0,1,1,0,1,0,1,0,1,0,0,0,0,0,0,0,0,1,0,0,0,0,0,
==> 0,0,0,0,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,
==> 1,0,1,0,0,1,0,1,1,1,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,
==> 1,0,0,1,1,1,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,
==> 1,0,0,1,0,0,1,1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,
==> 1,0,0,0,1,0,1,1,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,1
==> The system is generated
==> Codeword:
==> 0,0,1,0,1,0,1,0,1,0,0,1,1,0,0,0,0,0,1,1,0,0,0,1,0
==> Received word:
==> 0,0,1,0,1,1,1,0,1,0,0,0,1,0,0,0,0,0,1,1,0,0,0,1,0
==> The Groebenr basis of the QE system:
==> U(25)+a^4,
==> U(24)+a^4,
==> U(23)+a^6,
==> U(22)+a^17,
==> U(21)+a^13,
==> U(20)+a^27,
==> U(19)+a^21,
==> U(18)+a^8,
==> U(17)+a^16,
==> U(16)+a^8,
==> U(15)+a^15,
==> U(14)+a^12,
==> U(13)+a^2,
==> U(12)+a^3,
==> U(11)+a^22,
==> U(10)+a^26,
==> U(9)+a^8,
==> U(8)+a^23,
==> U(7)+a,
==> U(6)+a^11,
==> U(5)+a^4,
==> U(4)+a^16,
==> U(3)+a^2,
==> U(2)+a,
==> U(1),
==> V(2)+a,
==> V(1)+a^16
==> Codeword:
==> 1,0,0,1,1,1,1,1,0,0,0,0,0,1,1,0,1,0,1,0,1,1,0,0,0
==> Received word:
==> 0,0,0,1,1,0,1,1,0,0,0,0,0,1,1,0,1,0,1,0,1,1,0,0,0
==> The Groebenr basis of the QE system:
==> U(25)+a^6,
==> U(24)+a^7,
==> U(23)+a^30,
==> U(22)+a^23,
==> U(21)+a^22,
==> U(20)+a^5,
==> U(19)+a^26,
==> U(18)+a^12,
==> U(17)+a,
==> U(16)+a^14,
==> U(15)+a^20,
==> U(14)+a^29,
==> U(13)+a^3,
==> U(12)+a^15,
==> U(11)+a^11,
==> U(10)+a^13,
==> U(9)+a^16,
==> U(8)+a^10,
==> U(7)+a^17,
==> U(6)+a^21,
==> U(5)+a^8,
==> U(4)+a^24,
==> U(3)+a^4,
==> U(2)+a^2,
==> U(1),
==> V(2)+a^2,
==> V(1)+a^5
==> Codeword:
==> 1,0,1,1,1,1,0,0,0,1,1,1,1,0,1,0,0,1,0,0,0,0,0,1,1
==> Received word:
==> 1,0,1,1,0,1,0,0,0,1,1,1,0,0,1,0,0,1,0,0,0,0,0,1,1
==> The Groebenr basis of the QE system:
==> U(25)+a^30,
==> U(24)+a^2,
==> U(23)+a^20,
==> U(22)+a^5,
==> U(21)+a^20,
==> U(20)+a^9,
==> U(19)+a^18,
==> U(18)+a^29,
==> U(17)+a^12,
==> U(16)+a^4,
==> U(15)+a^5,
==> U(14)+a^9,
==> U(13)+a^15,
==> U(12)+a^10,
==> U(11)+a^10,
==> U(10)+a^9,
==> U(9)+a^6,
==> U(8)+a^18,
==> U(7)+a^23,
==> U(6)+a^5,
==> U(5)+a^3,
==> U(4)+a^27,
==> U(3)+a^17,
==> U(2)+a^24,
==> U(1),
==> V(2)+a^24,
==> V(1)+a^16
|
|