|
LMCAS
Lamina Computer Algebra System
|
类 | |
| struct | ExactInequalityRoot |
函数 | |
| Result< void > | append_exact_factor_roots (std::vector< ExactInequalityRoot > &roots, const Polynomial< Rational > &factor, int multiplicity, const std::string &variable, detail::RewriteBudget &budget, std::size_t &root_nodes) |
| void | check_interval_forest (const std::vector< Interval > &intervals, detail::RewriteBudget &budget) |
| bool | constant_satisfies (const Rational &value, InequalityType type) |
| std::vector< Interval > | exact_polynomial_sign_intervals (const Polynomial< Rational > &polynomial, const std::vector< ExactInequalityRoot > &roots, InequalityType type) |
| Endpoint | finite_endpoint (const std::shared_ptr< SymbolicExpr > &value, bool strict) |
| bool | rational_is_negative (const Rational &value) |
| std::shared_ptr< SymbolicExpr > | rational_polynomial_expression (const Polynomial< Rational > &polynomial, detail::RewriteBudget &budget) |
| Result< IntervalUnion > | solve_exact_affine_inequality_impl (const Polynomial< Rational > &polynomial, InequalityType type, ComputationContext &context) |
| Result< IntervalUnion > | solve_exact_polynomial_inequality_impl (const Polynomial< Rational > &polynomial, InequalityType type, ComputationContext &context) |
| Result< void > | sort_exact_inequality_roots (std::vector< ExactInequalityRoot > &roots, ComputationContext &context) |
| Result< void > | verify_quadratic_boundary (const Polynomial< Rational > &polynomial, const std::shared_ptr< SymbolicExpr > &boundary, const Rational &rational_part, const Rational &radical_coefficient, const Rational &radicand, ComputationContext &context) |
变量 | |
| constexpr const char * | kCheckedInequalityOperation = "solve_inequality_checked" |
| struct LMCAS::anonymous_namespace{inequality_solver_polynomial.cpp}::ExactInequalityRoot |
在文件 inequality_solver_polynomial.cpp 第 299 行定义.
| 类成员 | ||
|---|---|---|
| ExactRealAlgebraic | algebraic | |
| shared_ptr< SymbolicExpr > | expression | |
| int | multiplicity = 1 | |
| Result< void > LMCAS::anonymous_namespace{inequality_solver_polynomial.cpp}::append_exact_factor_roots | ( | std::vector< ExactInequalityRoot > & | roots, |
| const Polynomial< Rational > & | factor, | ||
| int | multiplicity, | ||
| const std::string & | variable, | ||
| detail::RewriteBudget & | budget, | ||
| std::size_t & | root_nodes ) |
在文件 inequality_solver_polynomial.cpp 第 326 行定义.
引用了 append_exact_factor_roots(), LMCAS::detail::RewriteBudget::append_size(), LMCAS::context, LMCAS::detail::RewriteBudget::context(), LMCAS::Result< T >::failure(), LMCAS::isolate_real_roots_checked(), LMCAS::detail::make_exact_real_algebraic(), LMCAS::detail::RewriteBudget::measure(), LMCAS::detail::node(), rational_polynomial_expression(), LMCAS::roots(), LMCAS::Result< T >::success() , 以及 LMCAS::variable.
被这些函数引用 append_exact_factor_roots() , 以及 solve_exact_polynomial_inequality_impl().
| void LMCAS::anonymous_namespace{inequality_solver_polynomial.cpp}::check_interval_forest | ( | const std::vector< Interval > & | intervals, |
| detail::RewriteBudget & | budget ) |
在文件 inequality_solver_polynomial.cpp 第 25 行定义.
引用了 LMCAS::detail::RewriteBudget::append_size(), check_interval_forest(), LMCAS::interval(), LMCAS::detail::RewriteBudget::measure(), LMCAS::detail::node() , 以及 LMCAS::Result< T >::value().
被这些函数引用 check_interval_forest(), solve_exact_affine_inequality_impl() , 以及 solve_exact_polynomial_inequality_impl().
| bool LMCAS::anonymous_namespace{inequality_solver_polynomial.cpp}::constant_satisfies | ( | const Rational & | value, |
| InequalityType | type ) |
在文件 inequality_solver_polynomial.cpp 第 38 行定义.
引用了 constant_satisfies(), LMCAS::GreaterEqual, LMCAS::GreaterThan, LMCAS::LessEqual, LMCAS::LessThan, rational_is_negative() , 以及 LMCAS::value.
被这些函数引用 constant_satisfies() , 以及 solve_exact_affine_inequality_impl().
| std::vector< Interval > LMCAS::anonymous_namespace{inequality_solver_polynomial.cpp}::exact_polynomial_sign_intervals | ( | const Polynomial< Rational > & | polynomial, |
| const std::vector< ExactInequalityRoot > & | roots, | ||
| InequalityType | type ) |
在文件 inequality_solver_polynomial.cpp 第 376 行定义.
引用了 LMCAS::Polynomial< CoeffType >::degree(), exact_polynomial_sign_intervals(), LMCAS::GreaterEqual, LMCAS::GreaterThan, LMCAS::Polynomial< CoeffType >::lead_coeff(), LMCAS::LessThan, LMCAS::lower, rational_is_negative() , 以及 LMCAS::roots().
被这些函数引用 exact_polynomial_sign_intervals() , 以及 solve_exact_polynomial_inequality_impl().
| Endpoint LMCAS::anonymous_namespace{inequality_solver_polynomial.cpp}::finite_endpoint | ( | const std::shared_ptr< SymbolicExpr > & | value, |
| bool | strict ) |
在文件 inequality_solver_polynomial.cpp 第 50 行定义.
引用了 finite_endpoint() , 以及 LMCAS::value.
被这些函数引用 finite_endpoint().
| bool LMCAS::anonymous_namespace{inequality_solver_polynomial.cpp}::rational_is_negative | ( | const Rational & | value | ) |
在文件 inequality_solver_polynomial.cpp 第 34 行定义.
引用了 rational_is_negative() , 以及 LMCAS::value.
被这些函数引用 constant_satisfies(), exact_polynomial_sign_intervals(), rational_is_negative() , 以及 solve_exact_affine_inequality_impl().
| std::shared_ptr< SymbolicExpr > LMCAS::anonymous_namespace{inequality_solver_polynomial.cpp}::rational_polynomial_expression | ( | const Polynomial< Rational > & | polynomial, |
| detail::RewriteBudget & | budget ) |
在文件 inequality_solver_polynomial.cpp 第 305 行定义.
引用了 LMCAS::Polynomial< CoeffType >::coeffs, LMCAS::Polynomial< CoeffType >::degree(), LMCAS::detail::make_expression_ptr(), LMCAS::detail::RewriteBudget::measure(), LMCAS::detail::node(), LMCAS::detail::normalize_node(), rational_polynomial_expression(), LMCAS::variable , 以及 LMCAS::Polynomial< CoeffType >::variable_name.
被这些函数引用 append_exact_factor_roots() , 以及 rational_polynomial_expression().
| Result< IntervalUnion > LMCAS::anonymous_namespace{inequality_solver_polynomial.cpp}::solve_exact_affine_inequality_impl | ( | const Polynomial< Rational > & | polynomial, |
| InequalityType | type, | ||
| ComputationContext & | context ) |
在文件 inequality_solver_polynomial.cpp 第 239 行定义.
引用了 check_interval_forest(), LMCAS::Polynomial< CoeffType >::coeffs, constant_satisfies(), LMCAS::context, LMCAS::Polynomial< CoeffType >::degree(), LMCAS::Result< T >::failure(), LMCAS::GreaterEqual, LMCAS::GreaterThan, LMCAS::Inconclusive, LMCAS::InternalInvariant, LMCAS::interval(), LMCAS::Polynomial< CoeffType >::is_zero(), kCheckedInequalityOperation, LMCAS::LessThan, rational_is_negative(), solve_exact_affine_inequality_impl(), LMCAS::Result< T >::success() , 以及 LMCAS::value.
被这些函数引用 solve_exact_affine_inequality_impl().
| Result< IntervalUnion > LMCAS::anonymous_namespace{inequality_solver_polynomial.cpp}::solve_exact_polynomial_inequality_impl | ( | const Polynomial< Rational > & | polynomial, |
| InequalityType | type, | ||
| ComputationContext & | context ) |
在文件 inequality_solver_polynomial.cpp 第 415 行定义.
引用了 append_exact_factor_roots(), check_interval_forest(), LMCAS::context, exact_polynomial_sign_intervals(), LMCAS::Result< T >::failure(), LMCAS::InternalInvariant, kCheckedInequalityOperation, LMCAS::ResourceLimit, LMCAS::roots(), solve_exact_polynomial_inequality_impl(), sort_exact_inequality_roots(), LMCAS::square_free_factorization() , 以及 LMCAS::Polynomial< CoeffType >::variable_name.
被这些函数引用 solve_exact_polynomial_inequality_impl().
| Result< void > LMCAS::anonymous_namespace{inequality_solver_polynomial.cpp}::sort_exact_inequality_roots | ( | std::vector< ExactInequalityRoot > & | roots, |
| ComputationContext & | context ) |
在文件 inequality_solver_polynomial.cpp 第 354 行定义.
引用了 LMCAS::detail::compare_exact_real_algebraic(), LMCAS::context, LMCAS::Result< T >::failure(), LMCAS::order, LMCAS::roots(), sort_exact_inequality_roots() , 以及 LMCAS::Result< T >::success().
被这些函数引用 solve_exact_polynomial_inequality_impl() , 以及 sort_exact_inequality_roots().
| Result< void > LMCAS::anonymous_namespace{inequality_solver_polynomial.cpp}::verify_quadratic_boundary | ( | const Polynomial< Rational > & | polynomial, |
| const std::shared_ptr< SymbolicExpr > & | boundary, | ||
| const Rational & | rational_part, | ||
| const Rational & | radical_coefficient, | ||
| const Rational & | radicand, | ||
| ComputationContext & | context ) |
在文件 inequality_solver_polynomial.cpp 第 54 行定义.
引用了 LMCAS::Polynomial< CoeffType >::coeffs, LMCAS::context, LMCAS::Result< T >::failure(), LMCAS::Inconclusive, LMCAS::InternalInvariant, kCheckedInequalityOperation, LMCAS::detail::node(), LMCAS::steps, LMCAS::Result< T >::success() , 以及 verify_quadratic_boundary().
被这些函数引用 verify_quadratic_boundary().
|
constexpr |