gflineq

Найдите конкретное решение Ax = b по главному Полю Галуа

Синтаксис

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

Описание

Примечание

Эта функция выполняет вычисления в GF (p), где p является главным. Чтобы работать в GF (2 м), примените \ или оператор / к массивам Галуа. Для получения дополнительной информации смотрите Линейные уравнения Решения.

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 использует Исключение Гаусса.

Смотрите также

| | | | |

Представлено до R2006a