gflineq

Find particular solution of Ax = b over prime Galois field

Syntax

x = gflineq(A,b)
x = gflineq(A,b,p)
[x,vld] = gflineq(...)

Description

Note

This function performs computations in GF(p), where p is prime. To work in GF(2m), apply the \ or / operator to Galois arrays. For details, see Solving Linear Equations.

x = gflineq(A,b) outputs a particular solution of the linear equation A x = b in GF(2). The elements in a, b and x are either 0 or 1. If the equation has no solution, then x is empty.

x = gflineq(A,b,p) returns a particular solution of the linear equation A x = b over GF(p), where p is a prime number. If A is a k-by-n matrix and b is a vector of length k, x is a vector of length n. Each entry of A, x, and b is an integer between 0 and p-1. If no solution exists, x is empty.

[x,vld] = gflineq(...) returns a flag vld that indicates the existence of a solution. If vld = 1, the solution x exists and is valid; if vld = 0, no solution exists.

Examples

The code below produces some valid solutions of a linear equation over GF(3).

A = [2 0 1;
1 1 0;
1 1 2];
% An example in which the solutions are valid
[x,vld] = gflineq(A,[1;0;0],3)

The output is below.

x =

2
1
0

vld =

1

By contrast, the command below finds that the linear equation has no solutions.

[x2,vld2] = gflineq(zeros(3,3),[2;0;0],3)

The output is below.

This linear equation has no solution.

x2 =

[]

vld2 =

0

Algorithms

gflineq uses Gaussian elimination.