src/comb/stirling1_smallp/lib.hpp
| Line | Branch | Exec | Source |
|---|---|---|---|
| 1 | #pragma once | ||
| 2 | |||
| 3 | #include "../binom/lib.hpp" | ||
| 4 | |||
| 5 | namespace tifa_libs { | ||
| 6 | |||
| 7 | template <class mint, class fact = fact_helper<mint>, bool with_sgn = true> | ||
| 8 | class stirling1 { | ||
| 9 | const binom<mint, fact> mCn; | ||
| 10 | vvec<mint> s; | ||
| 11 | |||
| 12 | public: | ||
| 13 | 36000160 | static CEXP u32 mod() NE { return mint::mod(); } | |
| 14 | //! @param p MUST be prime | ||
| 15 | 400 | CEXPE stirling1() NE : mCn(mint::mod()), s(mint::mod()) { | |
| 16 | 200 | u32 p = mint::mod(); | |
| 17 |
10/20tifa_libs::stirling1<tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<12l> >, tifa_libs::fact_helper<tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<12l> > >, true>::stirling1():
✗ Branch 0 not taken.
✓ Branch 1 taken 20 times.
tifa_libs::stirling1<tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<13l> >, tifa_libs::factl_helper<tifa_libs::poly_impl_::poly<tifa_libs::polymtt_impl_::cconv_mtt<tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<13l> >, double> > >, true>::stirling1():
✗ Branch 0 not taken.
✓ Branch 1 taken 20 times.
tifa_libs::stirling1<tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<14l> >, tifa_libs::factl_helper<tifa_libs::poly_impl_::poly<tifa_libs::poly3ntt_impl_::cconv_3ntt<tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<14l> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_bs_tag<167772161ul> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_bs_tag<469762049ul> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_bs_tag<754974721ul> > > > >, true>::stirling1():
✗ Branch 0 not taken.
✓ Branch 1 taken 20 times.
tifa_libs::stirling1<tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<14l> >, tifa_libs::factl_helper<tifa_libs::poly_impl_::poly<tifa_libs::poly3ntt_impl_::cconv_3ntt<tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<14l> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms64_tag<167772161ul> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms64_tag<469762049ul> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms64_tag<754974721ul> > > > >, true>::stirling1():
✗ Branch 0 not taken.
✓ Branch 1 taken 20 times.
tifa_libs::stirling1<tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<14l> >, tifa_libs::factl_helper<tifa_libs::poly_impl_::poly<tifa_libs::poly3ntt_impl_::cconv_3ntt<tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<14l> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<167772161ul> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<469762049ul> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<754974721ul> > > > >, true>::stirling1():
✗ Branch 0 not taken.
✓ Branch 1 taken 20 times.
tifa_libs::stirling1<tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<12l> >, tifa_libs::fact_helper<tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<12l> > >, true>::stirling1():
✗ Branch 0 not taken.
✓ Branch 1 taken 20 times.
tifa_libs::stirling1<tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<13l> >, tifa_libs::factl_helper<tifa_libs::poly_impl_::poly<tifa_libs::polymtt_impl_::cconv_mtt<tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<13l> >, double> > >, true>::stirling1():
✗ Branch 0 not taken.
✓ Branch 1 taken 20 times.
tifa_libs::stirling1<tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<14l> >, tifa_libs::factl_helper<tifa_libs::poly_impl_::poly<tifa_libs::poly3ntt_impl_::cconv_3ntt<tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<14l> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_bs_tag<167772161ul> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_bs_tag<469762049ul> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_bs_tag<754974721ul> > > > >, true>::stirling1():
✗ Branch 0 not taken.
✓ Branch 1 taken 20 times.
tifa_libs::stirling1<tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<14l> >, tifa_libs::factl_helper<tifa_libs::poly_impl_::poly<tifa_libs::poly3ntt_impl_::cconv_3ntt<tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<14l> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms64_tag<167772161ul> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms64_tag<469762049ul> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms64_tag<754974721ul> > > > >, true>::stirling1():
✗ Branch 0 not taken.
✓ Branch 1 taken 20 times.
tifa_libs::stirling1<tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<14l> >, tifa_libs::factl_helper<tifa_libs::poly_impl_::poly<tifa_libs::poly3ntt_impl_::cconv_3ntt<tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<14l> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<167772161ul> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<469762049ul> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<754974721ul> > > > >, true>::stirling1():
✗ Branch 0 not taken.
✓ Branch 1 taken 20 times.
|
200 | assert(p < 32768), s[0] = {1}; |
| 18 |
20/20tifa_libs::stirling1<tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<12l> >, tifa_libs::fact_helper<tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<12l> > >, true>::stirling1():
✓ Branch 0 taken 17180 times.
✓ Branch 1 taken 20 times.
tifa_libs::stirling1<tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<13l> >, tifa_libs::factl_helper<tifa_libs::poly_impl_::poly<tifa_libs::polymtt_impl_::cconv_mtt<tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<13l> >, double> > >, true>::stirling1():
✓ Branch 0 taken 17180 times.
✓ Branch 1 taken 20 times.
tifa_libs::stirling1<tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<14l> >, tifa_libs::factl_helper<tifa_libs::poly_impl_::poly<tifa_libs::poly3ntt_impl_::cconv_3ntt<tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<14l> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_bs_tag<167772161ul> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_bs_tag<469762049ul> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_bs_tag<754974721ul> > > > >, true>::stirling1():
✓ Branch 0 taken 17180 times.
✓ Branch 1 taken 20 times.
tifa_libs::stirling1<tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<14l> >, tifa_libs::factl_helper<tifa_libs::poly_impl_::poly<tifa_libs::poly3ntt_impl_::cconv_3ntt<tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<14l> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms64_tag<167772161ul> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms64_tag<469762049ul> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms64_tag<754974721ul> > > > >, true>::stirling1():
✓ Branch 0 taken 17180 times.
✓ Branch 1 taken 20 times.
tifa_libs::stirling1<tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<14l> >, tifa_libs::factl_helper<tifa_libs::poly_impl_::poly<tifa_libs::poly3ntt_impl_::cconv_3ntt<tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<14l> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<167772161ul> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<469762049ul> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<754974721ul> > > > >, true>::stirling1():
✓ Branch 0 taken 17180 times.
✓ Branch 1 taken 20 times.
tifa_libs::stirling1<tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<12l> >, tifa_libs::fact_helper<tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<12l> > >, true>::stirling1():
✓ Branch 0 taken 17180 times.
✓ Branch 1 taken 20 times.
tifa_libs::stirling1<tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<13l> >, tifa_libs::factl_helper<tifa_libs::poly_impl_::poly<tifa_libs::polymtt_impl_::cconv_mtt<tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<13l> >, double> > >, true>::stirling1():
✓ Branch 0 taken 17180 times.
✓ Branch 1 taken 20 times.
tifa_libs::stirling1<tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<14l> >, tifa_libs::factl_helper<tifa_libs::poly_impl_::poly<tifa_libs::poly3ntt_impl_::cconv_3ntt<tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<14l> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_bs_tag<167772161ul> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_bs_tag<469762049ul> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_bs_tag<754974721ul> > > > >, true>::stirling1():
✓ Branch 0 taken 17180 times.
✓ Branch 1 taken 20 times.
tifa_libs::stirling1<tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<14l> >, tifa_libs::factl_helper<tifa_libs::poly_impl_::poly<tifa_libs::poly3ntt_impl_::cconv_3ntt<tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<14l> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms64_tag<167772161ul> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms64_tag<469762049ul> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms64_tag<754974721ul> > > > >, true>::stirling1():
✓ Branch 0 taken 17180 times.
✓ Branch 1 taken 20 times.
tifa_libs::stirling1<tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<14l> >, tifa_libs::factl_helper<tifa_libs::poly_impl_::poly<tifa_libs::poly3ntt_impl_::cconv_3ntt<tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<14l> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<167772161ul> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<469762049ul> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<754974721ul> > > > >, true>::stirling1():
✓ Branch 0 taken 17180 times.
✓ Branch 1 taken 20 times.
|
172000 | flt_ (u32, i, 1, p) { |
| 19 | 171800 | s[i].assign(i + 1, 0); | |
| 20 |
20/20tifa_libs::stirling1<tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<12l> >, tifa_libs::fact_helper<tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<12l> > >, true>::stirling1():
✓ Branch 0 taken 29468997 times.
✓ Branch 1 taken 17180 times.
tifa_libs::stirling1<tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<13l> >, tifa_libs::factl_helper<tifa_libs::poly_impl_::poly<tifa_libs::polymtt_impl_::cconv_mtt<tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<13l> >, double> > >, true>::stirling1():
✓ Branch 0 taken 29468997 times.
✓ Branch 1 taken 17180 times.
tifa_libs::stirling1<tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<14l> >, tifa_libs::factl_helper<tifa_libs::poly_impl_::poly<tifa_libs::poly3ntt_impl_::cconv_3ntt<tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<14l> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_bs_tag<167772161ul> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_bs_tag<469762049ul> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_bs_tag<754974721ul> > > > >, true>::stirling1():
✓ Branch 0 taken 29468997 times.
✓ Branch 1 taken 17180 times.
tifa_libs::stirling1<tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<14l> >, tifa_libs::factl_helper<tifa_libs::poly_impl_::poly<tifa_libs::poly3ntt_impl_::cconv_3ntt<tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<14l> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms64_tag<167772161ul> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms64_tag<469762049ul> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms64_tag<754974721ul> > > > >, true>::stirling1():
✓ Branch 0 taken 29468997 times.
✓ Branch 1 taken 17180 times.
tifa_libs::stirling1<tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<14l> >, tifa_libs::factl_helper<tifa_libs::poly_impl_::poly<tifa_libs::poly3ntt_impl_::cconv_3ntt<tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<14l> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<167772161ul> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<469762049ul> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<754974721ul> > > > >, true>::stirling1():
✓ Branch 0 taken 29468997 times.
✓ Branch 1 taken 17180 times.
tifa_libs::stirling1<tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<12l> >, tifa_libs::fact_helper<tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<12l> > >, true>::stirling1():
✓ Branch 0 taken 29468997 times.
✓ Branch 1 taken 17180 times.
tifa_libs::stirling1<tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<13l> >, tifa_libs::factl_helper<tifa_libs::poly_impl_::poly<tifa_libs::polymtt_impl_::cconv_mtt<tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<13l> >, double> > >, true>::stirling1():
✓ Branch 0 taken 29468997 times.
✓ Branch 1 taken 17180 times.
tifa_libs::stirling1<tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<14l> >, tifa_libs::factl_helper<tifa_libs::poly_impl_::poly<tifa_libs::poly3ntt_impl_::cconv_3ntt<tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<14l> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_bs_tag<167772161ul> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_bs_tag<469762049ul> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_bs_tag<754974721ul> > > > >, true>::stirling1():
✓ Branch 0 taken 29468997 times.
✓ Branch 1 taken 17180 times.
tifa_libs::stirling1<tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<14l> >, tifa_libs::factl_helper<tifa_libs::poly_impl_::poly<tifa_libs::poly3ntt_impl_::cconv_3ntt<tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<14l> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms64_tag<167772161ul> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms64_tag<469762049ul> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms64_tag<754974721ul> > > > >, true>::stirling1():
✓ Branch 0 taken 29468997 times.
✓ Branch 1 taken 17180 times.
tifa_libs::stirling1<tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<14l> >, tifa_libs::factl_helper<tifa_libs::poly_impl_::poly<tifa_libs::poly3ntt_impl_::cconv_3ntt<tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<14l> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<167772161ul> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<469762049ul> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<754974721ul> > > > >, true>::stirling1():
✓ Branch 0 taken 29468997 times.
✓ Branch 1 taken 17180 times.
|
294861770 | flt_ (u32, j, 0, i + 1) { |
| 21 |
20/20tifa_libs::stirling1<tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<12l> >, tifa_libs::fact_helper<tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<12l> > >, true>::stirling1():
✓ Branch 0 taken 29451817 times.
✓ Branch 1 taken 17180 times.
tifa_libs::stirling1<tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<13l> >, tifa_libs::factl_helper<tifa_libs::poly_impl_::poly<tifa_libs::polymtt_impl_::cconv_mtt<tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<13l> >, double> > >, true>::stirling1():
✓ Branch 0 taken 29451817 times.
✓ Branch 1 taken 17180 times.
tifa_libs::stirling1<tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<14l> >, tifa_libs::factl_helper<tifa_libs::poly_impl_::poly<tifa_libs::poly3ntt_impl_::cconv_3ntt<tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<14l> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_bs_tag<167772161ul> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_bs_tag<469762049ul> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_bs_tag<754974721ul> > > > >, true>::stirling1():
✓ Branch 0 taken 29451817 times.
✓ Branch 1 taken 17180 times.
tifa_libs::stirling1<tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<14l> >, tifa_libs::factl_helper<tifa_libs::poly_impl_::poly<tifa_libs::poly3ntt_impl_::cconv_3ntt<tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<14l> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms64_tag<167772161ul> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms64_tag<469762049ul> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms64_tag<754974721ul> > > > >, true>::stirling1():
✓ Branch 0 taken 29451817 times.
✓ Branch 1 taken 17180 times.
tifa_libs::stirling1<tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<14l> >, tifa_libs::factl_helper<tifa_libs::poly_impl_::poly<tifa_libs::poly3ntt_impl_::cconv_3ntt<tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<14l> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<167772161ul> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<469762049ul> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<754974721ul> > > > >, true>::stirling1():
✓ Branch 0 taken 29451817 times.
✓ Branch 1 taken 17180 times.
tifa_libs::stirling1<tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<12l> >, tifa_libs::fact_helper<tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<12l> > >, true>::stirling1():
✓ Branch 0 taken 29451817 times.
✓ Branch 1 taken 17180 times.
tifa_libs::stirling1<tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<13l> >, tifa_libs::factl_helper<tifa_libs::poly_impl_::poly<tifa_libs::polymtt_impl_::cconv_mtt<tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<13l> >, double> > >, true>::stirling1():
✓ Branch 0 taken 29451817 times.
✓ Branch 1 taken 17180 times.
tifa_libs::stirling1<tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<14l> >, tifa_libs::factl_helper<tifa_libs::poly_impl_::poly<tifa_libs::poly3ntt_impl_::cconv_3ntt<tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<14l> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_bs_tag<167772161ul> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_bs_tag<469762049ul> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_bs_tag<754974721ul> > > > >, true>::stirling1():
✓ Branch 0 taken 29451817 times.
✓ Branch 1 taken 17180 times.
tifa_libs::stirling1<tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<14l> >, tifa_libs::factl_helper<tifa_libs::poly_impl_::poly<tifa_libs::poly3ntt_impl_::cconv_3ntt<tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<14l> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms64_tag<167772161ul> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms64_tag<469762049ul> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms64_tag<754974721ul> > > > >, true>::stirling1():
✓ Branch 0 taken 29451817 times.
✓ Branch 1 taken 17180 times.
tifa_libs::stirling1<tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<14l> >, tifa_libs::factl_helper<tifa_libs::poly_impl_::poly<tifa_libs::poly3ntt_impl_::cconv_3ntt<tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<14l> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<167772161ul> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<469762049ul> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<754974721ul> > > > >, true>::stirling1():
✓ Branch 0 taken 29451817 times.
✓ Branch 1 taken 17180 times.
|
294689970 | if (j) s[i][j] += s[i - 1][j - 1]; |
| 22 |
20/20tifa_libs::stirling1<tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<12l> >, tifa_libs::fact_helper<tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<12l> > >, true>::stirling1():
✓ Branch 0 taken 29451817 times.
✓ Branch 1 taken 17180 times.
tifa_libs::stirling1<tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<13l> >, tifa_libs::factl_helper<tifa_libs::poly_impl_::poly<tifa_libs::polymtt_impl_::cconv_mtt<tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<13l> >, double> > >, true>::stirling1():
✓ Branch 0 taken 29451817 times.
✓ Branch 1 taken 17180 times.
tifa_libs::stirling1<tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<14l> >, tifa_libs::factl_helper<tifa_libs::poly_impl_::poly<tifa_libs::poly3ntt_impl_::cconv_3ntt<tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<14l> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_bs_tag<167772161ul> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_bs_tag<469762049ul> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_bs_tag<754974721ul> > > > >, true>::stirling1():
✓ Branch 0 taken 29451817 times.
✓ Branch 1 taken 17180 times.
tifa_libs::stirling1<tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<14l> >, tifa_libs::factl_helper<tifa_libs::poly_impl_::poly<tifa_libs::poly3ntt_impl_::cconv_3ntt<tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<14l> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms64_tag<167772161ul> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms64_tag<469762049ul> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms64_tag<754974721ul> > > > >, true>::stirling1():
✓ Branch 0 taken 29451817 times.
✓ Branch 1 taken 17180 times.
tifa_libs::stirling1<tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<14l> >, tifa_libs::factl_helper<tifa_libs::poly_impl_::poly<tifa_libs::poly3ntt_impl_::cconv_3ntt<tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<14l> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<167772161ul> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<469762049ul> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<754974721ul> > > > >, true>::stirling1():
✓ Branch 0 taken 29451817 times.
✓ Branch 1 taken 17180 times.
tifa_libs::stirling1<tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<12l> >, tifa_libs::fact_helper<tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<12l> > >, true>::stirling1():
✓ Branch 0 taken 29451817 times.
✓ Branch 1 taken 17180 times.
tifa_libs::stirling1<tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<13l> >, tifa_libs::factl_helper<tifa_libs::poly_impl_::poly<tifa_libs::polymtt_impl_::cconv_mtt<tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<13l> >, double> > >, true>::stirling1():
✓ Branch 0 taken 29451817 times.
✓ Branch 1 taken 17180 times.
tifa_libs::stirling1<tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<14l> >, tifa_libs::factl_helper<tifa_libs::poly_impl_::poly<tifa_libs::poly3ntt_impl_::cconv_3ntt<tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<14l> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_bs_tag<167772161ul> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_bs_tag<469762049ul> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_bs_tag<754974721ul> > > > >, true>::stirling1():
✓ Branch 0 taken 29451817 times.
✓ Branch 1 taken 17180 times.
tifa_libs::stirling1<tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<14l> >, tifa_libs::factl_helper<tifa_libs::poly_impl_::poly<tifa_libs::poly3ntt_impl_::cconv_3ntt<tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<14l> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms64_tag<167772161ul> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms64_tag<469762049ul> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms64_tag<754974721ul> > > > >, true>::stirling1():
✓ Branch 0 taken 29451817 times.
✓ Branch 1 taken 17180 times.
tifa_libs::stirling1<tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<14l> >, tifa_libs::factl_helper<tifa_libs::poly_impl_::poly<tifa_libs::poly3ntt_impl_::cconv_3ntt<tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<14l> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<167772161ul> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<469762049ul> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<754974721ul> > > > >, true>::stirling1():
✓ Branch 0 taken 29451817 times.
✓ Branch 1 taken 17180 times.
|
294689970 | if (j < i) s[i][j] += s[i - 1][j] * (p - i + 1); |
| 23 | } | ||
| 24 | } | ||
| 25 | 200 | } | |
| 26 | |||
| 27 | template <std::signed_integral T> | ||
| 28 | 36000160 | CEXP mint operator()(T m_, T n_) CNE { | |
| 29 |
20/40tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<12l> > tifa_libs::stirling1<tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<12l> >, tifa_libs::fact_helper<tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<12l> > >, true>::operator()<long>(long, long) const:
✓ Branch 0 taken 3600016 times.
✗ Branch 1 not taken.
✗ Branch 2 not taken.
✓ Branch 3 taken 3600016 times.
tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<13l> > tifa_libs::stirling1<tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<13l> >, tifa_libs::factl_helper<tifa_libs::poly_impl_::poly<tifa_libs::polymtt_impl_::cconv_mtt<tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<13l> >, double> > >, true>::operator()<long>(long, long) const:
✓ Branch 0 taken 3600016 times.
✗ Branch 1 not taken.
✗ Branch 2 not taken.
✓ Branch 3 taken 3600016 times.
tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<14l> > tifa_libs::stirling1<tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<14l> >, tifa_libs::factl_helper<tifa_libs::poly_impl_::poly<tifa_libs::poly3ntt_impl_::cconv_3ntt<tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<14l> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_bs_tag<167772161ul> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_bs_tag<469762049ul> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_bs_tag<754974721ul> > > > >, true>::operator()<long>(long, long) const:
✓ Branch 0 taken 3600016 times.
✗ Branch 1 not taken.
✗ Branch 2 not taken.
✓ Branch 3 taken 3600016 times.
tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<14l> > tifa_libs::stirling1<tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<14l> >, tifa_libs::factl_helper<tifa_libs::poly_impl_::poly<tifa_libs::poly3ntt_impl_::cconv_3ntt<tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<14l> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms64_tag<167772161ul> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms64_tag<469762049ul> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms64_tag<754974721ul> > > > >, true>::operator()<long>(long, long) const:
✓ Branch 0 taken 3600016 times.
✗ Branch 1 not taken.
✗ Branch 2 not taken.
✓ Branch 3 taken 3600016 times.
tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<14l> > tifa_libs::stirling1<tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<14l> >, tifa_libs::factl_helper<tifa_libs::poly_impl_::poly<tifa_libs::poly3ntt_impl_::cconv_3ntt<tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<14l> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<167772161ul> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<469762049ul> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<754974721ul> > > > >, true>::operator()<long>(long, long) const:
✓ Branch 0 taken 3600016 times.
✗ Branch 1 not taken.
✗ Branch 2 not taken.
✓ Branch 3 taken 3600016 times.
tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<12l> > tifa_libs::stirling1<tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<12l> >, tifa_libs::fact_helper<tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<12l> > >, true>::operator()<long>(long, long) const:
✓ Branch 0 taken 3600016 times.
✗ Branch 1 not taken.
✗ Branch 2 not taken.
✓ Branch 3 taken 3600016 times.
tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<13l> > tifa_libs::stirling1<tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<13l> >, tifa_libs::factl_helper<tifa_libs::poly_impl_::poly<tifa_libs::polymtt_impl_::cconv_mtt<tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<13l> >, double> > >, true>::operator()<long>(long, long) const:
✓ Branch 0 taken 3600016 times.
✗ Branch 1 not taken.
✗ Branch 2 not taken.
✓ Branch 3 taken 3600016 times.
tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<14l> > tifa_libs::stirling1<tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<14l> >, tifa_libs::factl_helper<tifa_libs::poly_impl_::poly<tifa_libs::poly3ntt_impl_::cconv_3ntt<tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<14l> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_bs_tag<167772161ul> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_bs_tag<469762049ul> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_bs_tag<754974721ul> > > > >, true>::operator()<long>(long, long) const:
✓ Branch 0 taken 3600016 times.
✗ Branch 1 not taken.
✗ Branch 2 not taken.
✓ Branch 3 taken 3600016 times.
tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<14l> > tifa_libs::stirling1<tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<14l> >, tifa_libs::factl_helper<tifa_libs::poly_impl_::poly<tifa_libs::poly3ntt_impl_::cconv_3ntt<tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<14l> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms64_tag<167772161ul> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms64_tag<469762049ul> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms64_tag<754974721ul> > > > >, true>::operator()<long>(long, long) const:
✓ Branch 0 taken 3600016 times.
✗ Branch 1 not taken.
✗ Branch 2 not taken.
✓ Branch 3 taken 3600016 times.
tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<14l> > tifa_libs::stirling1<tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<14l> >, tifa_libs::factl_helper<tifa_libs::poly_impl_::poly<tifa_libs::poly3ntt_impl_::cconv_3ntt<tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<14l> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<167772161ul> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<469762049ul> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<754974721ul> > > > >, true>::operator()<long>(long, long) const:
✓ Branch 0 taken 3600016 times.
✗ Branch 1 not taken.
✗ Branch 2 not taken.
✓ Branch 3 taken 3600016 times.
|
36000160 | retif_((n_ < 0 || n_ > m_) [[unlikely]], 0); |
| 30 | 36000160 | cu32 p = mod(); | |
| 31 | 36000160 | cu64 m = (u64)m_, n = (u64)n_, i = m / p; | |
| 32 |
20/20tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<12l> > tifa_libs::stirling1<tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<12l> >, tifa_libs::fact_helper<tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<12l> > >, true>::operator()<long>(long, long) const:
✓ Branch 0 taken 243584 times.
✓ Branch 1 taken 3356432 times.
tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<13l> > tifa_libs::stirling1<tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<13l> >, tifa_libs::factl_helper<tifa_libs::poly_impl_::poly<tifa_libs::polymtt_impl_::cconv_mtt<tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<13l> >, double> > >, true>::operator()<long>(long, long) const:
✓ Branch 0 taken 243584 times.
✓ Branch 1 taken 3356432 times.
tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<14l> > tifa_libs::stirling1<tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<14l> >, tifa_libs::factl_helper<tifa_libs::poly_impl_::poly<tifa_libs::poly3ntt_impl_::cconv_3ntt<tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<14l> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_bs_tag<167772161ul> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_bs_tag<469762049ul> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_bs_tag<754974721ul> > > > >, true>::operator()<long>(long, long) const:
✓ Branch 0 taken 243584 times.
✓ Branch 1 taken 3356432 times.
tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<14l> > tifa_libs::stirling1<tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<14l> >, tifa_libs::factl_helper<tifa_libs::poly_impl_::poly<tifa_libs::poly3ntt_impl_::cconv_3ntt<tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<14l> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms64_tag<167772161ul> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms64_tag<469762049ul> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms64_tag<754974721ul> > > > >, true>::operator()<long>(long, long) const:
✓ Branch 0 taken 243584 times.
✓ Branch 1 taken 3356432 times.
tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<14l> > tifa_libs::stirling1<tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<14l> >, tifa_libs::factl_helper<tifa_libs::poly_impl_::poly<tifa_libs::poly3ntt_impl_::cconv_3ntt<tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<14l> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<167772161ul> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<469762049ul> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<754974721ul> > > > >, true>::operator()<long>(long, long) const:
✓ Branch 0 taken 243584 times.
✓ Branch 1 taken 3356432 times.
tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<12l> > tifa_libs::stirling1<tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<12l> >, tifa_libs::fact_helper<tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<12l> > >, true>::operator()<long>(long, long) const:
✓ Branch 0 taken 243584 times.
✓ Branch 1 taken 3356432 times.
tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<13l> > tifa_libs::stirling1<tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<13l> >, tifa_libs::factl_helper<tifa_libs::poly_impl_::poly<tifa_libs::polymtt_impl_::cconv_mtt<tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<13l> >, double> > >, true>::operator()<long>(long, long) const:
✓ Branch 0 taken 243584 times.
✓ Branch 1 taken 3356432 times.
tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<14l> > tifa_libs::stirling1<tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<14l> >, tifa_libs::factl_helper<tifa_libs::poly_impl_::poly<tifa_libs::poly3ntt_impl_::cconv_3ntt<tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<14l> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_bs_tag<167772161ul> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_bs_tag<469762049ul> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_bs_tag<754974721ul> > > > >, true>::operator()<long>(long, long) const:
✓ Branch 0 taken 243584 times.
✓ Branch 1 taken 3356432 times.
tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<14l> > tifa_libs::stirling1<tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<14l> >, tifa_libs::factl_helper<tifa_libs::poly_impl_::poly<tifa_libs::poly3ntt_impl_::cconv_3ntt<tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<14l> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms64_tag<167772161ul> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms64_tag<469762049ul> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms64_tag<754974721ul> > > > >, true>::operator()<long>(long, long) const:
✓ Branch 0 taken 243584 times.
✓ Branch 1 taken 3356432 times.
tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<14l> > tifa_libs::stirling1<tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<14l> >, tifa_libs::factl_helper<tifa_libs::poly_impl_::poly<tifa_libs::poly3ntt_impl_::cconv_3ntt<tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<14l> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<167772161ul> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<469762049ul> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<754974721ul> > > > >, true>::operator()<long>(long, long) const:
✓ Branch 0 taken 243584 times.
✓ Branch 1 taken 3356432 times.
|
36000160 | if (i > n) return 0; |
| 33 | 33564320 | u64 a = (n - i) / (p - 1); | |
| 34 | 33564320 | cu32 j = u32(m % p); | |
| 35 | 33564320 | u32 b = u32((n - i) % (p - 1)); | |
| 36 |
40/40tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<12l> > tifa_libs::stirling1<tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<12l> >, tifa_libs::fact_helper<tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<12l> > >, true>::operator()<long>(long, long) const:
✓ Branch 0 taken 851809 times.
✓ Branch 1 taken 2504623 times.
✓ Branch 2 taken 446652 times.
✓ Branch 3 taken 405157 times.
tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<13l> > tifa_libs::stirling1<tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<13l> >, tifa_libs::factl_helper<tifa_libs::poly_impl_::poly<tifa_libs::polymtt_impl_::cconv_mtt<tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<13l> >, double> > >, true>::operator()<long>(long, long) const:
✓ Branch 0 taken 851809 times.
✓ Branch 1 taken 2504623 times.
✓ Branch 2 taken 446652 times.
✓ Branch 3 taken 405157 times.
tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<14l> > tifa_libs::stirling1<tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<14l> >, tifa_libs::factl_helper<tifa_libs::poly_impl_::poly<tifa_libs::poly3ntt_impl_::cconv_3ntt<tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<14l> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_bs_tag<167772161ul> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_bs_tag<469762049ul> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_bs_tag<754974721ul> > > > >, true>::operator()<long>(long, long) const:
✓ Branch 0 taken 851809 times.
✓ Branch 1 taken 2504623 times.
✓ Branch 2 taken 446652 times.
✓ Branch 3 taken 405157 times.
tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<14l> > tifa_libs::stirling1<tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<14l> >, tifa_libs::factl_helper<tifa_libs::poly_impl_::poly<tifa_libs::poly3ntt_impl_::cconv_3ntt<tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<14l> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms64_tag<167772161ul> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms64_tag<469762049ul> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms64_tag<754974721ul> > > > >, true>::operator()<long>(long, long) const:
✓ Branch 0 taken 851809 times.
✓ Branch 1 taken 2504623 times.
✓ Branch 2 taken 446652 times.
✓ Branch 3 taken 405157 times.
tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<14l> > tifa_libs::stirling1<tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<14l> >, tifa_libs::factl_helper<tifa_libs::poly_impl_::poly<tifa_libs::poly3ntt_impl_::cconv_3ntt<tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<14l> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<167772161ul> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<469762049ul> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<754974721ul> > > > >, true>::operator()<long>(long, long) const:
✓ Branch 0 taken 851809 times.
✓ Branch 1 taken 2504623 times.
✓ Branch 2 taken 446652 times.
✓ Branch 3 taken 405157 times.
tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<12l> > tifa_libs::stirling1<tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<12l> >, tifa_libs::fact_helper<tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<12l> > >, true>::operator()<long>(long, long) const:
✓ Branch 0 taken 851809 times.
✓ Branch 1 taken 2504623 times.
✓ Branch 2 taken 446652 times.
✓ Branch 3 taken 405157 times.
tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<13l> > tifa_libs::stirling1<tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<13l> >, tifa_libs::factl_helper<tifa_libs::poly_impl_::poly<tifa_libs::polymtt_impl_::cconv_mtt<tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<13l> >, double> > >, true>::operator()<long>(long, long) const:
✓ Branch 0 taken 851809 times.
✓ Branch 1 taken 2504623 times.
✓ Branch 2 taken 446652 times.
✓ Branch 3 taken 405157 times.
tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<14l> > tifa_libs::stirling1<tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<14l> >, tifa_libs::factl_helper<tifa_libs::poly_impl_::poly<tifa_libs::poly3ntt_impl_::cconv_3ntt<tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<14l> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_bs_tag<167772161ul> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_bs_tag<469762049ul> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_bs_tag<754974721ul> > > > >, true>::operator()<long>(long, long) const:
✓ Branch 0 taken 851809 times.
✓ Branch 1 taken 2504623 times.
✓ Branch 2 taken 446652 times.
✓ Branch 3 taken 405157 times.
tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<14l> > tifa_libs::stirling1<tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<14l> >, tifa_libs::factl_helper<tifa_libs::poly_impl_::poly<tifa_libs::poly3ntt_impl_::cconv_3ntt<tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<14l> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms64_tag<167772161ul> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms64_tag<469762049ul> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms64_tag<754974721ul> > > > >, true>::operator()<long>(long, long) const:
✓ Branch 0 taken 851809 times.
✓ Branch 1 taken 2504623 times.
✓ Branch 2 taken 446652 times.
✓ Branch 3 taken 405157 times.
tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<14l> > tifa_libs::stirling1<tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<14l> >, tifa_libs::factl_helper<tifa_libs::poly_impl_::poly<tifa_libs::poly3ntt_impl_::cconv_3ntt<tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<14l> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<167772161ul> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<469762049ul> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<754974721ul> > > > >, true>::operator()<long>(long, long) const:
✓ Branch 0 taken 851809 times.
✓ Branch 1 taken 2504623 times.
✓ Branch 2 taken 446652 times.
✓ Branch 3 taken 405157 times.
|
33564320 | if (!b && j) { |
| 37 |
20/20tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<12l> > tifa_libs::stirling1<tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<12l> >, tifa_libs::fact_helper<tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<12l> > >, true>::operator()<long>(long, long) const:
✓ Branch 0 taken 445144 times.
✓ Branch 1 taken 1508 times.
tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<13l> > tifa_libs::stirling1<tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<13l> >, tifa_libs::factl_helper<tifa_libs::poly_impl_::poly<tifa_libs::polymtt_impl_::cconv_mtt<tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<13l> >, double> > >, true>::operator()<long>(long, long) const:
✓ Branch 0 taken 445144 times.
✓ Branch 1 taken 1508 times.
tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<14l> > tifa_libs::stirling1<tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<14l> >, tifa_libs::factl_helper<tifa_libs::poly_impl_::poly<tifa_libs::poly3ntt_impl_::cconv_3ntt<tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<14l> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_bs_tag<167772161ul> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_bs_tag<469762049ul> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_bs_tag<754974721ul> > > > >, true>::operator()<long>(long, long) const:
✓ Branch 0 taken 445144 times.
✓ Branch 1 taken 1508 times.
tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<14l> > tifa_libs::stirling1<tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<14l> >, tifa_libs::factl_helper<tifa_libs::poly_impl_::poly<tifa_libs::poly3ntt_impl_::cconv_3ntt<tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<14l> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms64_tag<167772161ul> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms64_tag<469762049ul> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms64_tag<754974721ul> > > > >, true>::operator()<long>(long, long) const:
✓ Branch 0 taken 445144 times.
✓ Branch 1 taken 1508 times.
tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<14l> > tifa_libs::stirling1<tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<14l> >, tifa_libs::factl_helper<tifa_libs::poly_impl_::poly<tifa_libs::poly3ntt_impl_::cconv_3ntt<tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<14l> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<167772161ul> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<469762049ul> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<754974721ul> > > > >, true>::operator()<long>(long, long) const:
✓ Branch 0 taken 445144 times.
✓ Branch 1 taken 1508 times.
tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<12l> > tifa_libs::stirling1<tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<12l> >, tifa_libs::fact_helper<tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<12l> > >, true>::operator()<long>(long, long) const:
✓ Branch 0 taken 445144 times.
✓ Branch 1 taken 1508 times.
tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<13l> > tifa_libs::stirling1<tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<13l> >, tifa_libs::factl_helper<tifa_libs::poly_impl_::poly<tifa_libs::polymtt_impl_::cconv_mtt<tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<13l> >, double> > >, true>::operator()<long>(long, long) const:
✓ Branch 0 taken 445144 times.
✓ Branch 1 taken 1508 times.
tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<14l> > tifa_libs::stirling1<tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<14l> >, tifa_libs::factl_helper<tifa_libs::poly_impl_::poly<tifa_libs::poly3ntt_impl_::cconv_3ntt<tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<14l> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_bs_tag<167772161ul> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_bs_tag<469762049ul> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_bs_tag<754974721ul> > > > >, true>::operator()<long>(long, long) const:
✓ Branch 0 taken 445144 times.
✓ Branch 1 taken 1508 times.
tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<14l> > tifa_libs::stirling1<tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<14l> >, tifa_libs::factl_helper<tifa_libs::poly_impl_::poly<tifa_libs::poly3ntt_impl_::cconv_3ntt<tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<14l> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms64_tag<167772161ul> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms64_tag<469762049ul> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms64_tag<754974721ul> > > > >, true>::operator()<long>(long, long) const:
✓ Branch 0 taken 445144 times.
✓ Branch 1 taken 1508 times.
tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<14l> > tifa_libs::stirling1<tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<14l> >, tifa_libs::factl_helper<tifa_libs::poly_impl_::poly<tifa_libs::poly3ntt_impl_::cconv_3ntt<tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<14l> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<167772161ul> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<469762049ul> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<754974721ul> > > > >, true>::operator()<long>(long, long) const:
✓ Branch 0 taken 445144 times.
✓ Branch 1 taken 1508 times.
|
4466520 | if (b += p - 1; a) --a; |
| 38 | 15080 | else return 0; | |
| 39 | } | ||
| 40 |
30/40tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<12l> > tifa_libs::stirling1<tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<12l> >, tifa_libs::fact_helper<tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<12l> > >, true>::operator()<long>(long, long) const:
✓ Branch 0 taken 3354924 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 1139597 times.
✓ Branch 3 taken 2215327 times.
tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<13l> > tifa_libs::stirling1<tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<13l> >, tifa_libs::factl_helper<tifa_libs::poly_impl_::poly<tifa_libs::polymtt_impl_::cconv_mtt<tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<13l> >, double> > >, true>::operator()<long>(long, long) const:
✓ Branch 0 taken 3354924 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 1139597 times.
✓ Branch 3 taken 2215327 times.
tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<14l> > tifa_libs::stirling1<tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<14l> >, tifa_libs::factl_helper<tifa_libs::poly_impl_::poly<tifa_libs::poly3ntt_impl_::cconv_3ntt<tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<14l> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_bs_tag<167772161ul> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_bs_tag<469762049ul> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_bs_tag<754974721ul> > > > >, true>::operator()<long>(long, long) const:
✓ Branch 0 taken 3354924 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 1139597 times.
✓ Branch 3 taken 2215327 times.
tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<14l> > tifa_libs::stirling1<tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<14l> >, tifa_libs::factl_helper<tifa_libs::poly_impl_::poly<tifa_libs::poly3ntt_impl_::cconv_3ntt<tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<14l> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms64_tag<167772161ul> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms64_tag<469762049ul> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms64_tag<754974721ul> > > > >, true>::operator()<long>(long, long) const:
✓ Branch 0 taken 3354924 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 1139597 times.
✓ Branch 3 taken 2215327 times.
tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<14l> > tifa_libs::stirling1<tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<14l> >, tifa_libs::factl_helper<tifa_libs::poly_impl_::poly<tifa_libs::poly3ntt_impl_::cconv_3ntt<tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<14l> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<167772161ul> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<469762049ul> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<754974721ul> > > > >, true>::operator()<long>(long, long) const:
✓ Branch 0 taken 3354924 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 1139597 times.
✓ Branch 3 taken 2215327 times.
tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<12l> > tifa_libs::stirling1<tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<12l> >, tifa_libs::fact_helper<tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<12l> > >, true>::operator()<long>(long, long) const:
✓ Branch 0 taken 3354924 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 1139597 times.
✓ Branch 3 taken 2215327 times.
tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<13l> > tifa_libs::stirling1<tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<13l> >, tifa_libs::factl_helper<tifa_libs::poly_impl_::poly<tifa_libs::polymtt_impl_::cconv_mtt<tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<13l> >, double> > >, true>::operator()<long>(long, long) const:
✓ Branch 0 taken 3354924 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 1139597 times.
✓ Branch 3 taken 2215327 times.
tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<14l> > tifa_libs::stirling1<tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<14l> >, tifa_libs::factl_helper<tifa_libs::poly_impl_::poly<tifa_libs::poly3ntt_impl_::cconv_3ntt<tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<14l> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_bs_tag<167772161ul> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_bs_tag<469762049ul> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_bs_tag<754974721ul> > > > >, true>::operator()<long>(long, long) const:
✓ Branch 0 taken 3354924 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 1139597 times.
✓ Branch 3 taken 2215327 times.
tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<14l> > tifa_libs::stirling1<tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<14l> >, tifa_libs::factl_helper<tifa_libs::poly_impl_::poly<tifa_libs::poly3ntt_impl_::cconv_3ntt<tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<14l> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms64_tag<167772161ul> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms64_tag<469762049ul> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms64_tag<754974721ul> > > > >, true>::operator()<long>(long, long) const:
✓ Branch 0 taken 3354924 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 1139597 times.
✓ Branch 3 taken 2215327 times.
tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<14l> > tifa_libs::stirling1<tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<14l> >, tifa_libs::factl_helper<tifa_libs::poly_impl_::poly<tifa_libs::poly3ntt_impl_::cconv_3ntt<tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<14l> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<167772161ul> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<469762049ul> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<754974721ul> > > > >, true>::operator()<long>(long, long) const:
✓ Branch 0 taken 3354924 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 1139597 times.
✓ Branch 3 taken 2215327 times.
|
33549240 | if (i < a || b > j) return 0; |
| 41 | 22153270 | mint res = mCn.lucas(i, a) * s[j][b]; | |
| 42 | if CEXP (with_sgn) | ||
| 43 |
20/20tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<12l> > tifa_libs::stirling1<tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<12l> >, tifa_libs::fact_helper<tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<12l> > >, true>::operator()<long>(long, long) const:
✓ Branch 0 taken 981634 times.
✓ Branch 1 taken 1233693 times.
tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<13l> > tifa_libs::stirling1<tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<13l> >, tifa_libs::factl_helper<tifa_libs::poly_impl_::poly<tifa_libs::polymtt_impl_::cconv_mtt<tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<13l> >, double> > >, true>::operator()<long>(long, long) const:
✓ Branch 0 taken 981634 times.
✓ Branch 1 taken 1233693 times.
tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<14l> > tifa_libs::stirling1<tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<14l> >, tifa_libs::factl_helper<tifa_libs::poly_impl_::poly<tifa_libs::poly3ntt_impl_::cconv_3ntt<tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<14l> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_bs_tag<167772161ul> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_bs_tag<469762049ul> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_bs_tag<754974721ul> > > > >, true>::operator()<long>(long, long) const:
✓ Branch 0 taken 981634 times.
✓ Branch 1 taken 1233693 times.
tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<14l> > tifa_libs::stirling1<tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<14l> >, tifa_libs::factl_helper<tifa_libs::poly_impl_::poly<tifa_libs::poly3ntt_impl_::cconv_3ntt<tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<14l> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms64_tag<167772161ul> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms64_tag<469762049ul> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms64_tag<754974721ul> > > > >, true>::operator()<long>(long, long) const:
✓ Branch 0 taken 981634 times.
✓ Branch 1 taken 1233693 times.
tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<14l> > tifa_libs::stirling1<tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<14l> >, tifa_libs::factl_helper<tifa_libs::poly_impl_::poly<tifa_libs::poly3ntt_impl_::cconv_3ntt<tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<14l> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<167772161ul> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<469762049ul> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<754974721ul> > > > >, true>::operator()<long>(long, long) const:
✓ Branch 0 taken 981634 times.
✓ Branch 1 taken 1233693 times.
tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<12l> > tifa_libs::stirling1<tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<12l> >, tifa_libs::fact_helper<tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<12l> > >, true>::operator()<long>(long, long) const:
✓ Branch 0 taken 981634 times.
✓ Branch 1 taken 1233693 times.
tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<13l> > tifa_libs::stirling1<tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<13l> >, tifa_libs::factl_helper<tifa_libs::poly_impl_::poly<tifa_libs::polymtt_impl_::cconv_mtt<tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<13l> >, double> > >, true>::operator()<long>(long, long) const:
✓ Branch 0 taken 981634 times.
✓ Branch 1 taken 1233693 times.
tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<14l> > tifa_libs::stirling1<tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<14l> >, tifa_libs::factl_helper<tifa_libs::poly_impl_::poly<tifa_libs::poly3ntt_impl_::cconv_3ntt<tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<14l> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_bs_tag<167772161ul> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_bs_tag<469762049ul> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_bs_tag<754974721ul> > > > >, true>::operator()<long>(long, long) const:
✓ Branch 0 taken 981634 times.
✓ Branch 1 taken 1233693 times.
tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<14l> > tifa_libs::stirling1<tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<14l> >, tifa_libs::factl_helper<tifa_libs::poly_impl_::poly<tifa_libs::poly3ntt_impl_::cconv_3ntt<tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<14l> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms64_tag<167772161ul> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms64_tag<469762049ul> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms64_tag<754974721ul> > > > >, true>::operator()<long>(long, long) const:
✓ Branch 0 taken 981634 times.
✓ Branch 1 taken 1233693 times.
tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<14l> > tifa_libs::stirling1<tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<14l> >, tifa_libs::factl_helper<tifa_libs::poly_impl_::poly<tifa_libs::poly3ntt_impl_::cconv_3ntt<tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<14l> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<167772161ul> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<469762049ul> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<754974721ul> > > > >, true>::operator()<long>(long, long) const:
✓ Branch 0 taken 981634 times.
✓ Branch 1 taken 1233693 times.
|
22153270 | if ((i + a) & 1) res = -res; |
| 44 | 22153270 | return res; | |
| 45 | } | ||
| 46 | template <std::unsigned_integral T> | ||
| 47 | 36000160 | CEXP mint operator()(T m_, T n_) CNE { return operator()(std::make_signed_t<T>(m_), std::make_signed_t<T>(n_)); } | |
| 48 | }; | ||
| 49 | |||
| 50 | } // namespace tifa_libs | ||
| 51 |