Inner product of compile-time coefficients and sequence of values
Solution 1:
This appears way too complicated. Something along these lines perhaps:
template <uint64_t Divisor, uint64_t... Coefficients>
static constexpr auto inner_product(std::floating_point auto... values)
{
return ((values * Coefficients / Divisor) + ...);
}
Demo