|
LMCAS
Lamina Computer Algebra System
|
#include "multivariate_factor.hpp"#include <algorithm>#include <climits>#include <cstdint>#include <cmath>#include <map>#include <set>#include <stdexcept>#include "internal/multivariate_factor_support.hpp"命名空间 | |
| namespace | LMCAS |
| namespace | LMCAS::detail |
| 多元 Hensel 提升(单变量步) | |
函数 | |
| static void | LMCAS::detail::adjust_homogeneous_constant (const MultiPoly &poly, MultiFactorResult &result) |
| std::optional< std::tuple< std::string, std::string, int > > | LMCAS::detail::detect_binomial_power (const MultiPoly &poly) |
| 检测二项式幂模式 xⁿ - yⁿ | |
| std::optional< std::pair< MultiPoly, MultiPoly > > | LMCAS::detail::detect_difference_of_squares (const MultiPoly &poly) |
| 检测差平方模式 a^2 - b^2 | |
| std::pair< Monomial, MultiPoly > | LMCAS::detail::extract_common_monomial (const MultiPoly &poly) |
| 提取公因子单项式 | |
| Result< std::optional< MultiFactorResult > > | LMCAS::detail::factor_homogeneous_bivariate (const MultiPoly &poly, ComputationContext &context) |
| 齐次二元多项式分解 | |
| static MultiPoly | LMCAS::detail::homogenize_factor (const Polynomial< Rational > &uf, const std::vector< std::string > &vars) |
| bool | LMCAS::detail::is_linear (const MultiPoly &poly, const std::string &main_var) |
| 检测是否为线性多项式(主变量次数 <= 1) | |
| static std::optional< Rational > | LMCAS::detail::rational_square_root (const Rational &coefficient) |