49 const MultiPoly& poly,
53 const MultiPoly& poly);
131 const MultiPoly& poly,
133 const std::string& lift_var,
134 const Rational& eval_point,
152 const std::vector<MultiPoly>& factors,
154 const std::string& var,
155 const Rational& eval_point,
182LMCAS_API std::optional<std::pair<MultiPoly, MultiPoly>>
194LMCAS_API std::optional<std::tuple<std::string, std::string, int>>
220 const MultiPoly& poly,
多元多项式类 MultiPoly,稀疏表示,支持任意数量变量上的环运算。
std::pair< Monomial, MultiPoly > extract_common_monomial(const MultiPoly &poly)
提取公因子单项式
bool is_linear(const MultiPoly &poly, const std::string &main_var)
检测是否为线性多项式(主变量次数 <= 1)
Result< std::optional< MultiFactorResult > > factor_homogeneous_bivariate(const MultiPoly &poly, ComputationContext &context)
齐次二元多项式分解
const std::string & main_var
std::optional< std::tuple< std::string, std::string, int > > detect_binomial_power(const MultiPoly &poly)
检测二项式幂模式 xⁿ - yⁿ
std::size_t std::size_t ComputationContext & context
std::optional< std::pair< MultiPoly, MultiPoly > > detect_difference_of_squares(const MultiPoly &poly)
检测差平方模式 a^2 - b^2
Result< MathResult< MultiFactorResult > > MultiFactorCheckedResult
const std::vector< Polynomial< BigInt > > const BigInt ComputationContext & context
std::vector< MultiPoly > factors
精确因子列表(各因子本原)
std::vector< MultiPoly > components
各无平方分量,components[i] 重数为 i+1
MultiFactorCheckedResult factor_multivariate_checked(const MultiPoly &poly, ComputationContext &context)
SquareFreeDecomp square_free_decompose(const MultiPoly &poly, const std::string &main_var)
多元无平方因子分解(Yun 算法的多元推广)
std::vector< MultiPoly > multivariate_hensel_lift(const MultiPoly &poly, const std::vector< Polynomial< Rational > > &univariate_factors, const std::string &lift_var, const Rational &eval_point, int degree_bound)
多元 Hensel 提升(单变量步)
MultiPoly multivariate_primitive_part(const MultiPoly &poly, const std::string &main_var)
__attribute__((visibility("default"))) VectorCalculusExprResult curve_integral_scalar_checked(const std __attribute__((visibility("default"))) VectorCalculusExprResult curve_integral_scalar_checked(const std __attribute__((visibility("default"))) std const VectorField const std::string const std::shared_ptr< SymbolicExpr > & a
std::vector< MultiPoly > multivariate_diophantine(const std::vector< MultiPoly > &factors, const MultiPoly &target, const std::string &var, const Rational &eval_point, int degree_bound)
多元丢番图方程求解器
MultiPoly multivariate_gcd(const MultiPoly &a, const MultiPoly &b)
const std::string & main_var
MultiPoly multivariate_content(const MultiPoly &poly, const std::string &main_var)
std::vector< int > multiplicities
各因子的重数