FLINT3.7.0-dev

fq_nmod_embed_trace_matrix

Synopsis#include <flint/fq_nmod_embed.h>
void fq_nmod_embed_trace_matrix(nmod_mat_t res, const nmod_mat_t basis, const fq_nmod_ctx_t sub_ctx, const fq_nmod_ctx_t sup_ctx)

Given contexts for kk = sub_ctx and KK = sup_ctx of degrees m∣nm \mid n and the n×mn \times m matrix basis of an embedding φ:k→K\varphi: k \to K, sets res to the m×nm \times n matrix of the map y↦φ−1(Tr⁡K/φ(k)(y))y \mapsto \varphi^{-1}(\operatorname{Tr}_{K/\varphi(k)}(y)). It is computed as Dk⋅basisT⋅MKD_k \cdot \mathit{basis}^T \cdot M_K, with DkD_k = fq_nmod_embed_dual_to_mono_matrix for kk and MKM_K = fq_nmod_embed_mono_to_dual_matrix for KK. For m=nm = n the result is the inverse of basis.

Generated from the same template as fq_embed_trace_matrix, whose documentation has the details.

Cite this page

The FLINT team, “fq_nmod_embed_trace_matrix (fq_nmod_embed.h),” FLINT: Fast Library for Number Theory, documentation, version 3.7.0-dev, 2026. https://flintlib.org/doc/fq_nmod_embed/fq_nmod_embed_trace_matrix.html (generated 2026-11-02).