|
D.10.1.8 prepSV
Procedure from library brnoeth.lib (see brnoeth_lib).
- Usage:
- prepSV( G, D, F, EC ); G,D,F intvecs and EC a list
- Return:
- list E of size n+3, where n=size(D). All its entries but E[n+3]
are matrices:
| E[1]: parity check matrix for the current AG code
E[2] ... E[n+2]: matrices used in the procedure decodeSV
E[n+3]: intvec with
E[n+3][1]: correction capacity
of the algorithm
E[n+3][2]: designed Goppa distance
of the current AG code
|
- Note:
- Computes the preprocessing for the basic (Skorobogatov-Vladut)
decoding algorithm.
The procedure must be called within the ring EC[1][4], where EC is
the output of extcurve(d) (or in the ring EC[1][2] if d=1)
The intvec G and F represent rational divisors (see
BrillNoether for more details).
The intvec D refers to rational places (see AGcode_Omega
for more details.).
The current AG code is AGcode_Omega(G,D,EC) .
If you know the exact minimum distance d and you want to use it in
decodeSV instead of
, you can change the value
of E[n+3][2] to d before applying decodeSV.
If you have a systematic encoding for the current code and want to
keep it during the decoding, you must previously permute D (using
permute_L(D,P); ), e.g., according to the permutation
P=L[3], L being the output of sys_code .
- Warnings:
- F must be a divisor with support disjoint from the support of D and
with degree
, where
.
G should satisfy
, which is
not checked by the algorithm.
G and D should also have disjoint supports (checked by the
algorithm).
Example:
See also:
AGcode_Omega;
decodeSV;
extcurve;
permute_L;
sys_code.
|