C(++)ECCO
C++ Error Control COding: a header-only library for ECC simulations and experiments, modeling complete coding systems across arbitrary finite fields and complex inter-field relationships - Christian Senger <senger@inue.uni-stuttgart.de>
Loading...
Searching...
No Matches
CECCO::details::largest_common_subfield< F, G > Struct Template Reference

Largest field that appears as a subfield of both F and G. More...

#include <field_concepts_traits.hpp>

Public Types

using type = prefer_iso<raw_largest, F, G>

Detailed Description

template<typename F, typename G>
struct CECCO::details::largest_common_subfield< F, G >

Largest field that appears as a subfield of both F and G.

Template Parameters
FFinite-field type
GFinite-field type (same characteristic as F; checked by static_assert)

Computes the bridge field used by the cross-field constructors of CECCO::Ext and CECCO::Iso. Procedure: intersect collect_subfields_t<F> with collect_subfields_t<G> and pick the largest by get_size(). As a tiebreaker, if that largest field is isomorphic to an Iso operand, the Iso itself is returned instead — this preserves the merged-tower structure that the user explicitly built.

Usage_Examples

using F3 = Fp<3>;
using F9 = Ext<F3, {2, 2, 1}>;
using F81a = Ext<F3, {2, 1, 0, 0, 1}>; // direct F3 → F81
using F81b = Ext<F9, {6, 0, 1}>; // F3 → F9 → F81
using F27 = Ext<F3, {1, 2, 0, 1}>;
Extension field š”½_{q^m} ≅ B[x]/(f(x)), constructed from a base field and an irreducible monic modulus...
Definition fields.hpp:2221
Prime field š”½_p ≅ ℤ/pℤ
Definition fields.hpp:1647
typename largest_common_subfield< F, G >::type largest_common_subfield_t

Definition at line 623 of file field_concepts_traits.hpp.

Member Typedef Documentation

◆ type

template<typename F, typename G>
using CECCO::details::largest_common_subfield< F, G >::type = prefer_iso<raw_largest, F, G>

Definition at line 644 of file field_concepts_traits.hpp.


The documentation for this struct was generated from the following file: