GCC Code Coverage Report


Directory: ./
Coverage: low: ≥ 0% medium: ≥ 75.0% high: ≥ 90.0%
Coverage Exec / Excl / Total
Lines: 100.0% 102 / 0 / 102
Functions: 100.0% 12 / 0 / 12
Branches: 90.0% 54 / 0 / 60

src/lalg/mat/adj/lib.hpp
Line Branch Exec Source
1 #pragma once
2
3 #include "../../../util/rand/lib.hpp"
4 #include "../inv/lib.hpp"
5
6 namespace tifa_libs {
7
8 template <class T, class Is0, class Ge>
9 requires requires(Is0 is0, Ge ge, T t, matrix<T> A, bool clear_u) {
10 { is0(t) } -> std::same_as<bool>;
11 { ge(A, clear_u) } -> std::same_as<i32>;
12 }
13 264 CEXP matrix<T> adj_mat(matrix<T> mat, Is0&& is0, Ge&& ge) NE {
14 264 cu32 n = mat.row();
15
6/12
tifa_libs::matrix<tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<13l> > > tifa_libs::adj_mat<tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<13l> >, main::{lambda(tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<13l> >)#1}&, main::{lambda(tifa_libs::matrix<tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<13l> > >&, bool)#1}&>(tifa_libs::matrix<tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<13l> > >, main::{lambda(tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<13l> >)#1}&, main::{lambda(tifa_libs::matrix<tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<13l> > >&, bool)#1}&):
✗ Branch 1 not taken.
✓ Branch 2 taken 44 times.
tifa_libs::matrix<tifa_libs::mint_impl_::mint<tifa_libs::mint_bs_tag<998244353ul> > > tifa_libs::adj_mat<tifa_libs::mint_impl_::mint<tifa_libs::mint_bs_tag<998244353ul> >, main::{lambda(tifa_libs::mint_impl_::mint<tifa_libs::mint_bs_tag<998244353ul> >)#1}&, main::{lambda(tifa_libs::matrix<tifa_libs::mint_impl_::mint<tifa_libs::mint_bs_tag<998244353ul> > >&, bool)#1}&>(tifa_libs::matrix<tifa_libs::mint_impl_::mint<tifa_libs::mint_bs_tag<998244353ul> > >, main::{lambda(tifa_libs::mint_impl_::mint<tifa_libs::mint_bs_tag<998244353ul> >)#1}&, main::{lambda(tifa_libs::matrix<tifa_libs::mint_impl_::mint<tifa_libs::mint_bs_tag<998244353ul> > >&, bool)#1}&):
✗ Branch 1 not taken.
✓ Branch 2 taken 44 times.
tifa_libs::matrix<tifa_libs::mint_impl_::mint<tifa_libs::mint_md64_tag<13l> > > tifa_libs::adj_mat<tifa_libs::mint_impl_::mint<tifa_libs::mint_md64_tag<13l> >, main::{lambda(tifa_libs::mint_impl_::mint<tifa_libs::mint_md64_tag<13l> >)#1}&, main::{lambda(tifa_libs::matrix<tifa_libs::mint_impl_::mint<tifa_libs::mint_md64_tag<13l> > >&, bool)#1}&>(tifa_libs::matrix<tifa_libs::mint_impl_::mint<tifa_libs::mint_md64_tag<13l> > >, main::{lambda(tifa_libs::mint_impl_::mint<tifa_libs::mint_md64_tag<13l> >)#1}&, main::{lambda(tifa_libs::matrix<tifa_libs::mint_impl_::mint<tifa_libs::mint_md64_tag<13l> > >&, bool)#1}&):
✗ Branch 1 not taken.
✓ Branch 2 taken 44 times.
tifa_libs::matrix<tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<13l> > > tifa_libs::adj_mat<tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<13l> >, main::{lambda(tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<13l> >)#1}&, main::{lambda(tifa_libs::matrix<tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<13l> > >&, bool)#1}&>(tifa_libs::matrix<tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<13l> > >, main::{lambda(tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<13l> >)#1}&, main::{lambda(tifa_libs::matrix<tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<13l> > >&, bool)#1}&):
✗ Branch 1 not taken.
✓ Branch 2 taken 44 times.
tifa_libs::matrix<tifa_libs::mint_impl_::mint<tifa_libs::mint_ms64_tag<998244353ul> > > tifa_libs::adj_mat<tifa_libs::mint_impl_::mint<tifa_libs::mint_ms64_tag<998244353ul> >, main::{lambda(tifa_libs::mint_impl_::mint<tifa_libs::mint_ms64_tag<998244353ul> >)#1}&, main::{lambda(tifa_libs::matrix<tifa_libs::mint_impl_::mint<tifa_libs::mint_ms64_tag<998244353ul> > >&, bool)#1}&>(tifa_libs::matrix<tifa_libs::mint_impl_::mint<tifa_libs::mint_ms64_tag<998244353ul> > >, main::{lambda(tifa_libs::mint_impl_::mint<tifa_libs::mint_ms64_tag<998244353ul> >)#1}&, main::{lambda(tifa_libs::matrix<tifa_libs::mint_impl_::mint<tifa_libs::mint_ms64_tag<998244353ul> > >&, bool)#1}&):
✗ Branch 1 not taken.
✓ Branch 2 taken 44 times.
tifa_libs::matrix<tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<998244353ul> > > tifa_libs::adj_mat<tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<998244353ul> >, main::{lambda(tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<998244353ul> >)#1}&, main::{lambda(tifa_libs::matrix<tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<998244353ul> > >&, bool)#1}&>(tifa_libs::matrix<tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<998244353ul> > >, main::{lambda(tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<998244353ul> >)#1}&, main::{lambda(tifa_libs::matrix<tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<998244353ul> > >&, bool)#1}&):
✗ Branch 1 not taken.
✓ Branch 2 taken 44 times.
264 assert(n == mat.col());
16 264 rand_gen<u64> gen;
17 264 matrix<T> m2(n + 1, n + 1);
18
12/12
tifa_libs::matrix<tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<13l> > > tifa_libs::adj_mat<tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<13l> >, main::{lambda(tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<13l> >)#1}&, main::{lambda(tifa_libs::matrix<tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<13l> > >&, bool)#1}&>(tifa_libs::matrix<tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<13l> > >, main::{lambda(tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<13l> >)#1}&, main::{lambda(tifa_libs::matrix<tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<13l> > >&, bool)#1}&):
✓ Branch 0 taken 16689 times.
✓ Branch 1 taken 44 times.
tifa_libs::matrix<tifa_libs::mint_impl_::mint<tifa_libs::mint_bs_tag<998244353ul> > > tifa_libs::adj_mat<tifa_libs::mint_impl_::mint<tifa_libs::mint_bs_tag<998244353ul> >, main::{lambda(tifa_libs::mint_impl_::mint<tifa_libs::mint_bs_tag<998244353ul> >)#1}&, main::{lambda(tifa_libs::matrix<tifa_libs::mint_impl_::mint<tifa_libs::mint_bs_tag<998244353ul> > >&, bool)#1}&>(tifa_libs::matrix<tifa_libs::mint_impl_::mint<tifa_libs::mint_bs_tag<998244353ul> > >, main::{lambda(tifa_libs::mint_impl_::mint<tifa_libs::mint_bs_tag<998244353ul> >)#1}&, main::{lambda(tifa_libs::matrix<tifa_libs::mint_impl_::mint<tifa_libs::mint_bs_tag<998244353ul> > >&, bool)#1}&):
✓ Branch 0 taken 16689 times.
✓ Branch 1 taken 44 times.
tifa_libs::matrix<tifa_libs::mint_impl_::mint<tifa_libs::mint_md64_tag<13l> > > tifa_libs::adj_mat<tifa_libs::mint_impl_::mint<tifa_libs::mint_md64_tag<13l> >, main::{lambda(tifa_libs::mint_impl_::mint<tifa_libs::mint_md64_tag<13l> >)#1}&, main::{lambda(tifa_libs::matrix<tifa_libs::mint_impl_::mint<tifa_libs::mint_md64_tag<13l> > >&, bool)#1}&>(tifa_libs::matrix<tifa_libs::mint_impl_::mint<tifa_libs::mint_md64_tag<13l> > >, main::{lambda(tifa_libs::mint_impl_::mint<tifa_libs::mint_md64_tag<13l> >)#1}&, main::{lambda(tifa_libs::matrix<tifa_libs::mint_impl_::mint<tifa_libs::mint_md64_tag<13l> > >&, bool)#1}&):
✓ Branch 0 taken 16689 times.
✓ Branch 1 taken 44 times.
tifa_libs::matrix<tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<13l> > > tifa_libs::adj_mat<tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<13l> >, main::{lambda(tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<13l> >)#1}&, main::{lambda(tifa_libs::matrix<tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<13l> > >&, bool)#1}&>(tifa_libs::matrix<tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<13l> > >, main::{lambda(tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<13l> >)#1}&, main::{lambda(tifa_libs::matrix<tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<13l> > >&, bool)#1}&):
✓ Branch 0 taken 16689 times.
✓ Branch 1 taken 44 times.
tifa_libs::matrix<tifa_libs::mint_impl_::mint<tifa_libs::mint_ms64_tag<998244353ul> > > tifa_libs::adj_mat<tifa_libs::mint_impl_::mint<tifa_libs::mint_ms64_tag<998244353ul> >, main::{lambda(tifa_libs::mint_impl_::mint<tifa_libs::mint_ms64_tag<998244353ul> >)#1}&, main::{lambda(tifa_libs::matrix<tifa_libs::mint_impl_::mint<tifa_libs::mint_ms64_tag<998244353ul> > >&, bool)#1}&>(tifa_libs::matrix<tifa_libs::mint_impl_::mint<tifa_libs::mint_ms64_tag<998244353ul> > >, main::{lambda(tifa_libs::mint_impl_::mint<tifa_libs::mint_ms64_tag<998244353ul> >)#1}&, main::{lambda(tifa_libs::matrix<tifa_libs::mint_impl_::mint<tifa_libs::mint_ms64_tag<998244353ul> > >&, bool)#1}&):
✓ Branch 0 taken 16689 times.
✓ Branch 1 taken 44 times.
tifa_libs::matrix<tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<998244353ul> > > tifa_libs::adj_mat<tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<998244353ul> >, main::{lambda(tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<998244353ul> >)#1}&, main::{lambda(tifa_libs::matrix<tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<998244353ul> > >&, bool)#1}&>(tifa_libs::matrix<tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<998244353ul> > >, main::{lambda(tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<998244353ul> >)#1}&, main::{lambda(tifa_libs::matrix<tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<998244353ul> > >&, bool)#1}&):
✓ Branch 0 taken 16689 times.
✓ Branch 1 taken 44 times.
100398 flt_ (u32, i, 0, n)
19
12/12
tifa_libs::matrix<tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<13l> > > tifa_libs::adj_mat<tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<13l> >, main::{lambda(tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<13l> >)#1}&, main::{lambda(tifa_libs::matrix<tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<13l> > >&, bool)#1}&>(tifa_libs::matrix<tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<13l> > >, main::{lambda(tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<13l> >)#1}&, main::{lambda(tifa_libs::matrix<tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<13l> > >&, bool)#1}&):
✓ Branch 2 taken 8060517 times.
✓ Branch 3 taken 16689 times.
tifa_libs::matrix<tifa_libs::mint_impl_::mint<tifa_libs::mint_bs_tag<998244353ul> > > tifa_libs::adj_mat<tifa_libs::mint_impl_::mint<tifa_libs::mint_bs_tag<998244353ul> >, main::{lambda(tifa_libs::mint_impl_::mint<tifa_libs::mint_bs_tag<998244353ul> >)#1}&, main::{lambda(tifa_libs::matrix<tifa_libs::mint_impl_::mint<tifa_libs::mint_bs_tag<998244353ul> > >&, bool)#1}&>(tifa_libs::matrix<tifa_libs::mint_impl_::mint<tifa_libs::mint_bs_tag<998244353ul> > >, main::{lambda(tifa_libs::mint_impl_::mint<tifa_libs::mint_bs_tag<998244353ul> >)#1}&, main::{lambda(tifa_libs::matrix<tifa_libs::mint_impl_::mint<tifa_libs::mint_bs_tag<998244353ul> > >&, bool)#1}&):
✓ Branch 2 taken 8060517 times.
✓ Branch 3 taken 16689 times.
tifa_libs::matrix<tifa_libs::mint_impl_::mint<tifa_libs::mint_md64_tag<13l> > > tifa_libs::adj_mat<tifa_libs::mint_impl_::mint<tifa_libs::mint_md64_tag<13l> >, main::{lambda(tifa_libs::mint_impl_::mint<tifa_libs::mint_md64_tag<13l> >)#1}&, main::{lambda(tifa_libs::matrix<tifa_libs::mint_impl_::mint<tifa_libs::mint_md64_tag<13l> > >&, bool)#1}&>(tifa_libs::matrix<tifa_libs::mint_impl_::mint<tifa_libs::mint_md64_tag<13l> > >, main::{lambda(tifa_libs::mint_impl_::mint<tifa_libs::mint_md64_tag<13l> >)#1}&, main::{lambda(tifa_libs::matrix<tifa_libs::mint_impl_::mint<tifa_libs::mint_md64_tag<13l> > >&, bool)#1}&):
✓ Branch 2 taken 8060517 times.
✓ Branch 3 taken 16689 times.
tifa_libs::matrix<tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<13l> > > tifa_libs::adj_mat<tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<13l> >, main::{lambda(tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<13l> >)#1}&, main::{lambda(tifa_libs::matrix<tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<13l> > >&, bool)#1}&>(tifa_libs::matrix<tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<13l> > >, main::{lambda(tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<13l> >)#1}&, main::{lambda(tifa_libs::matrix<tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<13l> > >&, bool)#1}&):
✓ Branch 2 taken 8060517 times.
✓ Branch 3 taken 16689 times.
tifa_libs::matrix<tifa_libs::mint_impl_::mint<tifa_libs::mint_ms64_tag<998244353ul> > > tifa_libs::adj_mat<tifa_libs::mint_impl_::mint<tifa_libs::mint_ms64_tag<998244353ul> >, main::{lambda(tifa_libs::mint_impl_::mint<tifa_libs::mint_ms64_tag<998244353ul> >)#1}&, main::{lambda(tifa_libs::matrix<tifa_libs::mint_impl_::mint<tifa_libs::mint_ms64_tag<998244353ul> > >&, bool)#1}&>(tifa_libs::matrix<tifa_libs::mint_impl_::mint<tifa_libs::mint_ms64_tag<998244353ul> > >, main::{lambda(tifa_libs::mint_impl_::mint<tifa_libs::mint_ms64_tag<998244353ul> >)#1}&, main::{lambda(tifa_libs::matrix<tifa_libs::mint_impl_::mint<tifa_libs::mint_ms64_tag<998244353ul> > >&, bool)#1}&):
✓ Branch 2 taken 8060517 times.
✓ Branch 3 taken 16689 times.
tifa_libs::matrix<tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<998244353ul> > > tifa_libs::adj_mat<tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<998244353ul> >, main::{lambda(tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<998244353ul> >)#1}&, main::{lambda(tifa_libs::matrix<tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<998244353ul> > >&, bool)#1}&>(tifa_libs::matrix<tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<998244353ul> > >, main::{lambda(tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<998244353ul> >)#1}&, main::{lambda(tifa_libs::matrix<tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<998244353ul> > >&, bool)#1}&):
✓ Branch 2 taken 8060517 times.
✓ Branch 3 taken 16689 times.
48463236 flt_ (u32, j, 0, n) m2(i, j) = mat(i, j);
20
12/12
tifa_libs::matrix<tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<13l> > > tifa_libs::adj_mat<tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<13l> >, main::{lambda(tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<13l> >)#1}&, main::{lambda(tifa_libs::matrix<tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<13l> > >&, bool)#1}&>(tifa_libs::matrix<tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<13l> > >, main::{lambda(tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<13l> >)#1}&, main::{lambda(tifa_libs::matrix<tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<13l> > >&, bool)#1}&):
✓ Branch 0 taken 16689 times.
✓ Branch 1 taken 44 times.
tifa_libs::matrix<tifa_libs::mint_impl_::mint<tifa_libs::mint_bs_tag<998244353ul> > > tifa_libs::adj_mat<tifa_libs::mint_impl_::mint<tifa_libs::mint_bs_tag<998244353ul> >, main::{lambda(tifa_libs::mint_impl_::mint<tifa_libs::mint_bs_tag<998244353ul> >)#1}&, main::{lambda(tifa_libs::matrix<tifa_libs::mint_impl_::mint<tifa_libs::mint_bs_tag<998244353ul> > >&, bool)#1}&>(tifa_libs::matrix<tifa_libs::mint_impl_::mint<tifa_libs::mint_bs_tag<998244353ul> > >, main::{lambda(tifa_libs::mint_impl_::mint<tifa_libs::mint_bs_tag<998244353ul> >)#1}&, main::{lambda(tifa_libs::matrix<tifa_libs::mint_impl_::mint<tifa_libs::mint_bs_tag<998244353ul> > >&, bool)#1}&):
✓ Branch 0 taken 16689 times.
✓ Branch 1 taken 44 times.
tifa_libs::matrix<tifa_libs::mint_impl_::mint<tifa_libs::mint_md64_tag<13l> > > tifa_libs::adj_mat<tifa_libs::mint_impl_::mint<tifa_libs::mint_md64_tag<13l> >, main::{lambda(tifa_libs::mint_impl_::mint<tifa_libs::mint_md64_tag<13l> >)#1}&, main::{lambda(tifa_libs::matrix<tifa_libs::mint_impl_::mint<tifa_libs::mint_md64_tag<13l> > >&, bool)#1}&>(tifa_libs::matrix<tifa_libs::mint_impl_::mint<tifa_libs::mint_md64_tag<13l> > >, main::{lambda(tifa_libs::mint_impl_::mint<tifa_libs::mint_md64_tag<13l> >)#1}&, main::{lambda(tifa_libs::matrix<tifa_libs::mint_impl_::mint<tifa_libs::mint_md64_tag<13l> > >&, bool)#1}&):
✓ Branch 0 taken 16689 times.
✓ Branch 1 taken 44 times.
tifa_libs::matrix<tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<13l> > > tifa_libs::adj_mat<tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<13l> >, main::{lambda(tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<13l> >)#1}&, main::{lambda(tifa_libs::matrix<tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<13l> > >&, bool)#1}&>(tifa_libs::matrix<tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<13l> > >, main::{lambda(tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<13l> >)#1}&, main::{lambda(tifa_libs::matrix<tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<13l> > >&, bool)#1}&):
✓ Branch 0 taken 16689 times.
✓ Branch 1 taken 44 times.
tifa_libs::matrix<tifa_libs::mint_impl_::mint<tifa_libs::mint_ms64_tag<998244353ul> > > tifa_libs::adj_mat<tifa_libs::mint_impl_::mint<tifa_libs::mint_ms64_tag<998244353ul> >, main::{lambda(tifa_libs::mint_impl_::mint<tifa_libs::mint_ms64_tag<998244353ul> >)#1}&, main::{lambda(tifa_libs::matrix<tifa_libs::mint_impl_::mint<tifa_libs::mint_ms64_tag<998244353ul> > >&, bool)#1}&>(tifa_libs::matrix<tifa_libs::mint_impl_::mint<tifa_libs::mint_ms64_tag<998244353ul> > >, main::{lambda(tifa_libs::mint_impl_::mint<tifa_libs::mint_ms64_tag<998244353ul> >)#1}&, main::{lambda(tifa_libs::matrix<tifa_libs::mint_impl_::mint<tifa_libs::mint_ms64_tag<998244353ul> > >&, bool)#1}&):
✓ Branch 0 taken 16689 times.
✓ Branch 1 taken 44 times.
tifa_libs::matrix<tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<998244353ul> > > tifa_libs::adj_mat<tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<998244353ul> >, main::{lambda(tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<998244353ul> >)#1}&, main::{lambda(tifa_libs::matrix<tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<998244353ul> > >&, bool)#1}&>(tifa_libs::matrix<tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<998244353ul> > >, main::{lambda(tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<998244353ul> >)#1}&, main::{lambda(tifa_libs::matrix<tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<998244353ul> > >&, bool)#1}&):
✓ Branch 0 taken 16689 times.
✓ Branch 1 taken 44 times.
100398 flt_ (u32, i, 0, n) {
21 100134 m2(i, n) = (T)gen.next();
22 100134 m2(n, i) = (T)gen.next();
23 }
24 264 auto _ = inv_mat<T, Is0, Ge, true>(m2, is0, ge);
25
12/12
tifa_libs::matrix<tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<13l> > > tifa_libs::adj_mat<tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<13l> >, main::{lambda(tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<13l> >)#1}&, main::{lambda(tifa_libs::matrix<tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<13l> > >&, bool)#1}&>(tifa_libs::matrix<tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<13l> > >, main::{lambda(tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<13l> >)#1}&, main::{lambda(tifa_libs::matrix<tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<13l> > >&, bool)#1}&):
✓ Branch 1 taken 7 times.
✓ Branch 2 taken 37 times.
tifa_libs::matrix<tifa_libs::mint_impl_::mint<tifa_libs::mint_bs_tag<998244353ul> > > tifa_libs::adj_mat<tifa_libs::mint_impl_::mint<tifa_libs::mint_bs_tag<998244353ul> >, main::{lambda(tifa_libs::mint_impl_::mint<tifa_libs::mint_bs_tag<998244353ul> >)#1}&, main::{lambda(tifa_libs::matrix<tifa_libs::mint_impl_::mint<tifa_libs::mint_bs_tag<998244353ul> > >&, bool)#1}&>(tifa_libs::matrix<tifa_libs::mint_impl_::mint<tifa_libs::mint_bs_tag<998244353ul> > >, main::{lambda(tifa_libs::mint_impl_::mint<tifa_libs::mint_bs_tag<998244353ul> >)#1}&, main::{lambda(tifa_libs::matrix<tifa_libs::mint_impl_::mint<tifa_libs::mint_bs_tag<998244353ul> > >&, bool)#1}&):
✓ Branch 1 taken 7 times.
✓ Branch 2 taken 37 times.
tifa_libs::matrix<tifa_libs::mint_impl_::mint<tifa_libs::mint_md64_tag<13l> > > tifa_libs::adj_mat<tifa_libs::mint_impl_::mint<tifa_libs::mint_md64_tag<13l> >, main::{lambda(tifa_libs::mint_impl_::mint<tifa_libs::mint_md64_tag<13l> >)#1}&, main::{lambda(tifa_libs::matrix<tifa_libs::mint_impl_::mint<tifa_libs::mint_md64_tag<13l> > >&, bool)#1}&>(tifa_libs::matrix<tifa_libs::mint_impl_::mint<tifa_libs::mint_md64_tag<13l> > >, main::{lambda(tifa_libs::mint_impl_::mint<tifa_libs::mint_md64_tag<13l> >)#1}&, main::{lambda(tifa_libs::matrix<tifa_libs::mint_impl_::mint<tifa_libs::mint_md64_tag<13l> > >&, bool)#1}&):
✓ Branch 1 taken 7 times.
✓ Branch 2 taken 37 times.
tifa_libs::matrix<tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<13l> > > tifa_libs::adj_mat<tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<13l> >, main::{lambda(tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<13l> >)#1}&, main::{lambda(tifa_libs::matrix<tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<13l> > >&, bool)#1}&>(tifa_libs::matrix<tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<13l> > >, main::{lambda(tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<13l> >)#1}&, main::{lambda(tifa_libs::matrix<tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<13l> > >&, bool)#1}&):
✓ Branch 1 taken 7 times.
✓ Branch 2 taken 37 times.
tifa_libs::matrix<tifa_libs::mint_impl_::mint<tifa_libs::mint_ms64_tag<998244353ul> > > tifa_libs::adj_mat<tifa_libs::mint_impl_::mint<tifa_libs::mint_ms64_tag<998244353ul> >, main::{lambda(tifa_libs::mint_impl_::mint<tifa_libs::mint_ms64_tag<998244353ul> >)#1}&, main::{lambda(tifa_libs::matrix<tifa_libs::mint_impl_::mint<tifa_libs::mint_ms64_tag<998244353ul> > >&, bool)#1}&>(tifa_libs::matrix<tifa_libs::mint_impl_::mint<tifa_libs::mint_ms64_tag<998244353ul> > >, main::{lambda(tifa_libs::mint_impl_::mint<tifa_libs::mint_ms64_tag<998244353ul> >)#1}&, main::{lambda(tifa_libs::matrix<tifa_libs::mint_impl_::mint<tifa_libs::mint_ms64_tag<998244353ul> > >&, bool)#1}&):
✓ Branch 1 taken 7 times.
✓ Branch 2 taken 37 times.
tifa_libs::matrix<tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<998244353ul> > > tifa_libs::adj_mat<tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<998244353ul> >, main::{lambda(tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<998244353ul> >)#1}&, main::{lambda(tifa_libs::matrix<tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<998244353ul> > >&, bool)#1}&>(tifa_libs::matrix<tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<998244353ul> > >, main::{lambda(tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<998244353ul> >)#1}&, main::{lambda(tifa_libs::matrix<tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<998244353ul> > >&, bool)#1}&):
✓ Branch 1 taken 7 times.
✓ Branch 2 taken 37 times.
264 if (!_) return matrix<T>(n, n);
26 222 auto&& [det, inv] = _.value();
27 222 matrix<T> ans(n, n);
28 41037402 ans.apply([&](u32 i, u32 j, T& val) NE { val = inv(n, n) * inv(i, j) - inv(i, n) * inv(n, j); });
29 222 return ans * det;
30 264 }
31
32 } // namespace tifa_libs
33