戻り値2つのベクトルの次元をNとする。Nが0ならinitを返す。ない場合は、共役を取らない内積、つまり以下の式のScalar型の値を返す。(1)の並列アルゴリズム版。(1)のinitを和の各項の型のデフォルト値に置き換えて計算する。(3)の並列アルゴリズム版。InVec1::value_type、InVec2::value_type、Scalarが全て浮動小数点数型またはstd::complexの特殊化で、ScalarがInVec1::value_typeとInVec2::value_typeより精度が高い場合、和の各項はScalarまたはより高い精度の型が使われる。処理系にあるコンパイラで確認していないため、間違っているかもしれません。下に提供されています。