FLINT3.7.0-dev

ca_mat_solve_tril_classical, ca_mat_solve_tril_recursive, ca_mat_solve_tril, ca_mat_solve_triu_classical, ca_mat_solve_triu_recursive, ca_mat_solve_triu

Synopsis#include <flint/ca_mat.h>
void ca_mat_solve_tril_classical(ca_mat_t X, const ca_mat_t L, const ca_mat_t B, int unit, ca_ctx_t ctx)source
void ca_mat_solve_tril_recursive(ca_mat_t X, const ca_mat_t L, const ca_mat_t B, int unit, ca_ctx_t ctx)source
void ca_mat_solve_tril(ca_mat_t X, const ca_mat_t L, const ca_mat_t B, int unit, ca_ctx_t ctx)source
void ca_mat_solve_triu_classical(ca_mat_t X, const ca_mat_t U, const ca_mat_t B, int unit, ca_ctx_t ctx)source
void ca_mat_solve_triu_recursive(ca_mat_t X, const ca_mat_t U, const ca_mat_t B, int unit, ca_ctx_t ctx)source
void ca_mat_solve_triu(ca_mat_t X, const ca_mat_t U, const ca_mat_t B, int unit, ca_ctx_t ctx)source

Solves LX = B for a lower triangular L, or UX = B for an upper triangular U, by substitution (classical), block recursively (recursive), or with an automatic choice. The matrix must be triangular with nonzero diagonal entries; this is not checked. If unit is nonzero, the diagonal is taken to consist of ones and is not read. Wrappers of the gr_mat_nonsingular_solve_tril and _triu functions.

Cite this page

The FLINT team, “ca_mat_solve_tril_classical, ca_mat_solve_tril_recursive, ca_mat_solve_tril, ca_mat_solve_triu_classical, ca_mat_solve_triu_recursive, ca_mat_solve_triu (ca_mat.h),” FLINT: Fast Library for Number Theory, documentation, version 3.7.0-dev, 2026. https://flintlib.org/doc/ca_mat/ca_mat_solve_tril_classical.html (generated 2026-10-20).