A toolbox for simple finite field operation
This toolbox can handle simple operations (+,-,*,/,.*,./,inv) of GF(p^n) for any p and n. Examples are given below (also documented in gf_test.m).
If you find any bug or have any concern/comment, please contact me.
% setup path
java_path_setup;
% create gf class of 3^2
gf9=gf(3,2);
%%%%
% Eg. 1
a=[2 1;1 0]
% compute rank
gf9.rank(a)
% compute inverse
inva = gf9.inv(a)
% Check inverse
a_times_ainva=gf9.mult(a,inva)
% matrix divide
gf9.div(a,a)
%%%%%
% Eg. 2
b=[1 2 1;1 0 1];
c=[1 1 0;2 1 1];
% compute summation
gf9.add(b,c)
% compute subtraction
gf9.sub(b,c)
% compute dot multiplication
gf9.dmult(b,c)
% compute dot division
gf9.ddiv(b,c)
% output the primitive polynomial
gf9.return_primitive_polynomial % x^2 + 1
% show polynomial representation
gf9.return_poly_representation(5) % x + 2
%%%%
% Eg. 3
% manipulating polynomials.
a=[1 2 1 1];
b=[1 3 1];
gf9.conv(a,b)
[q,rem]=gf9.deconv(a,b)
Cite As
Samuel Cheng (2024). A toolbox for simple finite field operation (https://www.mathworks.com/matlabcentral/fileexchange/32872-a-toolbox-for-simple-finite-field-operation), MATLAB Central File Exchange. Retrieved .
MATLAB Release Compatibility
Platform Compatibility
Windows macOS LinuxCategories
- Wireless Communications > Communications Toolbox > PHY Components > Error Detection and Correction >
Tags
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!Discover Live Editor
Create scripts with code, output, and formatted text in a single executable document.
gf/
Version | Published | Release Notes | |
---|---|---|---|
1.3.0.0 | Added new functionality to manipulate polynomials. |
||
1.1.0.0 | Oops, found two silly bugs. First, an error check condition was corrected. Second, I guess it is probably the safest to run a separate script to setup path and so I extracted that part out. |
||
1.0.0.0 |