Найти конкретное решение Ax = b над первичным полем Галуа
x = gflineq(A,b)
x = gflineq(A,b,p)
[x,vld] = gflineq(...)
Примечание
Эта функция выполняет вычисления в GF (p), где p является простым. Для работы в GF (2m) применить \ или / оператор для массивов Galois. Дополнительные сведения см. в разделе Решение линейных уравнений.
x = gflineq(A,b) выводит конкретное решение линейного уравнения A x = b в GF (2). Элементы вa, b и x равны 0 или 1. Если уравнение не имеет решения, то x пуст.
x = gflineq(A,b,p) возвращает конкретное решение линейного уравнения A x = b над GF (p), где p - простое число. Если A является матрицей k-by-n и b - вектор длины k, x является вектором длины N. Каждая запись A, x, и b является целым числом от 0 до p-1. Если решения не существует, x пуст.
[x,vld] = gflineq(...) возвращает флаг vld указывает на существование решения. Если vld = 1, решение x существует и действителен; если vld = 0, решение не существует.
Приведенный ниже код дает некоторые действительные решения линейного уравнения над 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)Выходные данные приведены ниже.
x =
2
1
0
vld =
1
В отличие от этого, команда ниже обнаруживает, что линейное уравнение не имеет решений.
[x2,vld2] = gflineq(zeros(3,3),[2;0;0],3)
Выходные данные приведены ниже.
This linear equation has no solution.
x2 =
[]
vld2 =
0
gflineq использует гауссову элиминацию.