Documentation ¶
Index ¶
- type GFPoly
- func (gp *GFPoly) AddOrSubstract(other *GFPoly) *GFPoly
- func (gp *GFPoly) Degree() int
- func (gp *GFPoly) Divide(other *GFPoly) (quotient *GFPoly, remainder *GFPoly)
- func (gp *GFPoly) GetCoefficient(degree int) int
- func (gp *GFPoly) MultByMonominal(degree int, coeff int) *GFPoly
- func (gp *GFPoly) Multiply(other *GFPoly) *GFPoly
- func (gp *GFPoly) Zero() bool
- type GaloisField
- type ReedSolomonEncoder
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type GFPoly ¶
type GFPoly struct { Coefficients []int // contains filtered or unexported fields }
func NewGFPoly ¶
func NewGFPoly(field *GaloisField, coefficients []int) *GFPoly
func NewMonominalPoly ¶
func NewMonominalPoly(field *GaloisField, degree int, coeff int) *GFPoly
func (*GFPoly) AddOrSubstract ¶
func (*GFPoly) GetCoefficient ¶
GetCoefficient returns the coefficient of x ^ degree
type GaloisField ¶
GaloisField encapsulates galois field arithmetics
func NewGaloisField ¶
func NewGaloisField(pp, fieldSize, b int) *GaloisField
NewGaloisField creates a new galois field
func (*GaloisField) AddOrSub ¶
func (gf *GaloisField) AddOrSub(a, b int) int
AddOrSub add or substract two numbers
func (*GaloisField) Invers ¶
func (gf *GaloisField) Invers(num int) int
func (*GaloisField) Multiply ¶
func (gf *GaloisField) Multiply(a, b int) int
Multiply multiplys two numbers
func (*GaloisField) Zero ¶
func (gf *GaloisField) Zero() *GFPoly
type ReedSolomonEncoder ¶
type ReedSolomonEncoder struct {
// contains filtered or unexported fields
}
func NewReedSolomonEncoder ¶
func NewReedSolomonEncoder(gf *GaloisField) *ReedSolomonEncoder
Click to show internal directories.
Click to hide internal directories.