pub fn lineq<F>(
a: Vec<Vec<F::Element>>,
b: Vec<F::Element>,
modulo: &F,
) -> Option<(Vec<F::Element>, Vec<Vec<F::Element>>)>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$行のベクトル、basesはdim個の$m$行のベクトルで、
連立方程式の解は、basesの要素の線型結合とsolの和で表される。