|
LMCAS
Lamina Computer Algebra System
|
多元多项式因式分解器实现. 更多...
#include "multivariate_factor.hpp"#include "transcendental_factor.hpp"#include <algorithm>#include <climits>#include <cstdint>#include <cmath>#include <functional>#include <iterator>#include <map>#include <set>#include <stdexcept>#include <new>#include "internal/multivariate_factor_support.hpp"类 | |
| struct | LMCAS::GcdSamples |
命名空间 | |
| namespace | LMCAS |
函数 | |
| static std::string | LMCAS::active_univariate_variable (const MultiPoly &poly) |
| static void | LMCAS::add_lagrange_value (MultiPoly &result, const MultiPoly &value, const std::vector< Rational > &basis_coeffs, const std::vector< std::string > &all_vars, int var_idx) |
| static std::string | LMCAS::choose_main_variable (const MultiPoly &a, const MultiPoly &b) |
| static void | LMCAS::collect_gcd_samples (const MultiPoly &a_prim, const MultiPoly &b_prim, const std::string &main_var, const std::vector< Rational > &eval_pts, int num_points, GcdSamples &samples) |
| static bool | LMCAS::divides_poly (const MultiPoly ÷nd, const MultiPoly &divisor) |
| static MultiPoly | LMCAS::embed_univariate_gcd (const MultiPoly &result, const std::string &a_var, const std::vector< std::string > &vars) |
| static MultiPoly | LMCAS::extended_gcd_interpolation (const MultiPoly &a_prim, const MultiPoly &b_prim, const std::string &main_var, const std::vector< std::string > &vars, int degree_bound, const Rational &nc_gcd) |
| static std::map< int, MultiPoly > | LMCAS::extract_coefficients (const MultiPoly &poly, const std::string &main_var) |
| static MultiPoly | LMCAS::formal_derivative (const MultiPoly &poly, const std::string &main_var) |
| 计算多元多项式关于指定变量的形式偏导数 | |
| static std::vector< Rational > | LMCAS::gcd_evaluation_points (int bound) |
| static std::vector< Rational > | LMCAS::lagrange_basis_coefficients (const std::vector< Rational > &points, size_t i, const Rational &denom) |
| static MultiPoly | LMCAS::lagrange_interpolate (const std::vector< Rational > &points, const std::vector< MultiPoly > &values, const std::string &main_var, const std::vector< std::string > &all_vars) |
| MultiPoly | LMCAS::multivariate_content (const MultiPoly &poly, const std::string &main_var) |
| MultiPoly | LMCAS::multivariate_gcd (const MultiPoly &a, const MultiPoly &b) |
| MultiPoly | LMCAS::multivariate_primitive_part (const MultiPoly &poly, const std::string &main_var) |
| static MultiPoly | LMCAS::normalize_gcd_candidate (MultiPoly candidate, const Rational &content) |
| static Rational | LMCAS::rational_gcd (const Rational &a, const Rational &b) |
| static MultiPoly | LMCAS::recursive_multivariate_gcd (const MultiPoly &a, const MultiPoly &b, const std::vector< std::string > &vars) |
| static Monomial | LMCAS::restore_main_exponent (const Monomial &reduced, size_t variable_count, int variable_index, int exponent) |
| SquareFreeDecomp | LMCAS::square_free_decompose (const MultiPoly &poly, const std::string &main_var) |
| 多元无平方因子分解(Yun 算法的多元推广) | |
| static MultiPoly | LMCAS::univariate_gcd (const MultiPoly &a, const MultiPoly &b, const std::vector< std::string > &vars) |
多元多项式因式分解器实现.
在文件 multivariate_factor.cpp 中定义.
| struct LMCAS::GcdSamples |
在文件 multivariate_factor.cpp 第 257 行定义.
| 类成员 | ||
|---|---|---|
| vector< Rational > | points | |
| int | target_degree = -1 | |
| vector< MultiPoly > | values | |