field
コンセプト · internal/internal_type_traits.hpp
template <class T>
concept field = std::is_base_of_v<field_base, T>;
概要
体 (field) として扱える型。field_base を継承した型のみが満たす。 modint(素数 mod)や有理数を想定。
関連項目
field_base— 体 (field) であることを表明する opt-in マーカー基底。 四則演算(除算を含む)が閉じ、0/1を構築でき==で比較できる型が継承する。 整数型・浮動小数点型は構文上は四則演算できても「体である」保証がないため 区別したく、構文ベースの concept では弾けないのでマーカー方式を採る。