Function lineq

Source
pub fn lineq<F>(
    a: Vec<Vec<F::Element>>,
    b: Vec<F::Element>,
    modulo: &F,
) -> Option<(Vec<F::Element>, Vec<Vec<F::Element>>)>
where F: FF, F::Element: FFElem,
Expand description

$\mathbb{Z} / p \mathbb{Z}$($p$は素数)上で連立一次方程式$A \boldsymbol{x} = \boldsymbol{b}$を解く。

ここで、$A$は$n \times m$の行列、$\boldsymbol{x}$は$m$行の縦ベクトル、$\boldsymbol{b}$は$n$行の縦ベクトル。

連立方程式が解をもたないとき、Noneを返す。 そうでなければ、Some((sol, bases))を返す。

solは$m$行のベクトル、basesdim個の$m$行のベクトルで、 連立方程式の解は、basesの要素の線型結合とsolの和で表される。