|
LMCAS
Lamina Computer Algebra System
|
类 | |
| struct | ComplexContinuityPoint |
| class | ComplexPuncturedFacts |
| class | SideBranchRewriter |
类型定义 | |
| using | NodePtr = std::shared_ptr<const SymbolicNode> |
函数 | |
| LimitResult | assumption_limit_failure (const CasError &error) |
| LimitResult | classify_infinite_function (const FunctionNode &function, const std::string &variable, ComputationContext &context, const FactsQuery &facts, Domain domain) |
| LimitResult | classify_infinite_power (const PowerNode &power, const std::string &variable, ComputationContext &context, const FactsQuery &facts, Domain domain) |
| LimitResult | classify_infinite_product (const MultiplyNode &product, const std::string &variable, ComputationContext &context, const FactsQuery &facts, Domain domain) |
| LimitResult | classify_infinite_sum (const AddNode &sum, const std::string &variable, ComputationContext &context, const FactsQuery &facts, Domain domain) |
| LimitResult | classify_limit_result (const NodePtr &node, const std::string &variable, ComputationContext &context, const FactsQuery &facts, Domain domain=Domain::Real) |
| LimitResult | combine_one_sided_limits (const LimitOutcome &left, const LimitOutcome &right, ComputationContext &context) |
| Result< bool > | complex_polynomial_nonzero (const RelationalNode &relation, const std::string &variable, const FactsQuery &facts, ComputationContext &context, std::vector< NodePtr > &nonzero_bases) |
| Result< bool > | complex_punctured_condition (const NodePtr &condition, const std::string &variable, const FactsQuery &facts, ComputationContext &context, std::vector< NodePtr > &nonzero_bases) |
| Result< bool > | complex_punctured_domain (const NodePtr &node, const std::string &variable, const FactsQuery &facts, ComputationContext &context, std::vector< NodePtr > &nonzero_bases) |
| bool | continuous_function_branch (FunctionNode::FuncType type, const NodePtr &argument, const ComplexContinuityPoint *point) |
| bool | elementary_continuous_structure (const NodePtr &node, const ComplexContinuityPoint *complex_point=nullptr) |
| LimitResult | evaluate_one_sided_node (const NodePtr &node, const std::string &variable, const LimitExprPtr &point, LimitDirection direction, ComputationContext &context, const AssumptionContext &local, const FactsQuery &facts, LimitVisitor &visitor) |
| Result< int > | finite_sign (const NodePtr &node, const FactsQuery &facts, ComputationContext &context) |
| bool | has_infinity (const NodePtr &node) |
| int | infinity_sign (const LimitOutcome &value) |
| LimitResult | limit_at_checked_point (const LimitExprPtr &expression, const std::string &variable, const LimitExprPtr &point, LimitDirection direction, ComputationContext &context, const FactsQuery &facts, Domain domain) |
| LimitResult | limit_complex_at_point (const LimitExprPtr &expression, const std::string &variable, const LimitExprPtr &point, ComputationContext &context, const FactsQuery &facts) |
| LimitResult | limit_one_sided_checked (const LimitExprPtr &expression, const std::string &variable, const LimitExprPtr &point, LimitDirection direction, ComputationContext &context) |
| LimitResult | limit_real_at_point (const LimitExprPtr &expression, const std::string &variable, const LimitExprPtr &point, LimitDirection direction, int endpoint_sign, ComputationContext &context) |
| std::optional< LimitResult > | oscillatory_one_sided_limit (const NodePtr &node, const std::string &variable, const LimitExprPtr &point, LimitDirection direction, ComputationContext &context, const FactsQuery &facts, LimitVisitor &visitor) |
| LimitResult | outcome (LimitOutcome value) |
| bool | power_continuous_structure (const PowerNode &power, const ComplexContinuityPoint *point) |
| std::optional< LimitResult > | scaled_one_sided_limit (const MultiplyNode &product, const std::string &variable, const LimitExprPtr &point, LimitDirection direction, ComputationContext &context, const FactsQuery &facts) |
| LimitResult | unknown () |
| Result< void > | validate_limit_input (const LimitExprPtr &expression, const std::string &variable, const LimitExprPtr &point, LimitDirection direction, Domain domain) |
| using LMCAS::anonymous_namespace{limit_result.cpp}::NodePtr = std::shared_ptr<const SymbolicNode> |
在文件 limit_result.cpp 第 19 行定义.
| LimitResult LMCAS::anonymous_namespace{limit_result.cpp}::assumption_limit_failure | ( | const CasError & | error | ) |
在文件 limit_result.cpp 第 27 行定义.
引用了 assumption_limit_failure(), LMCAS::CasError::code, LMCAS::Result< Verified< LimitOutcome > >::failure(), LMCAS::InvalidArgument , 以及 unknown().
被这些函数引用 assumption_limit_failure() , 以及 limit_one_sided_checked().
| LimitResult LMCAS::anonymous_namespace{limit_result.cpp}::classify_infinite_function | ( | const FunctionNode & | function, |
| const std::string & | variable, | ||
| ComputationContext & | context, | ||
| const FactsQuery & | facts, | ||
| Domain | domain ) |
在文件 limit_result.cpp 第 143 行定义.
引用了 LMCAS::FunctionNode::Abs, LMCAS::FunctionNode::ArcTan, classify_infinite_function(), classify_limit_result(), LMCAS::context, LMCAS::domain, LMCAS::FunctionNode::Exp, LMCAS::function(), infinity_sign(), LMCAS::FunctionNode::Ln, LMCAS::detail::make_expression_ptr(), LMCAS::detail::make_node(), outcome(), LMCAS::FunctionNode::Sqrt, unknown() , 以及 LMCAS::variable.
被这些函数引用 classify_infinite_function() , 以及 classify_limit_result().
| LimitResult LMCAS::anonymous_namespace{limit_result.cpp}::classify_infinite_power | ( | const PowerNode & | power, |
| const std::string & | variable, | ||
| ComputationContext & | context, | ||
| const FactsQuery & | facts, | ||
| Domain | domain ) |
在文件 limit_result.cpp 第 127 行定义.
引用了 LMCAS::PowerNode::base(), classify_infinite_power(), classify_limit_result(), LMCAS::context, LMCAS::domain, LMCAS::exponent, LMCAS::PowerNode::exponent(), LMCAS::extract_coeff_value(), infinity_sign(), LMCAS::integer, LMCAS::detail::make_expression_ptr(), outcome(), LMCAS::try_get_integer_value(), unknown() , 以及 LMCAS::variable.
被这些函数引用 classify_infinite_power() , 以及 classify_limit_result().
| LimitResult LMCAS::anonymous_namespace{limit_result.cpp}::classify_infinite_product | ( | const MultiplyNode & | product, |
| const std::string & | variable, | ||
| ComputationContext & | context, | ||
| const FactsQuery & | facts, | ||
| Domain | domain ) |
在文件 limit_result.cpp 第 92 行定义.
引用了 classify_infinite_product(), classify_limit_result(), LMCAS::context, LMCAS::domain, LMCAS::Result< Verified< LimitOutcome > >::failure(), finite_sign(), infinity_sign(), LMCAS::detail::make_expression_ptr(), LMCAS::detail::make_node(), LMCAS::detail::node(), LMCAS::detail::normalize_node(), LMCAS::MultiplyNode::operands(), outcome(), unknown(), LMCAS::value , 以及 LMCAS::variable.
被这些函数引用 classify_infinite_product() , 以及 classify_limit_result().
| LimitResult LMCAS::anonymous_namespace{limit_result.cpp}::classify_infinite_sum | ( | const AddNode & | sum, |
| const std::string & | variable, | ||
| ComputationContext & | context, | ||
| const FactsQuery & | facts, | ||
| Domain | domain ) |
在文件 limit_result.cpp 第 65 行定义.
引用了 classify_infinite_sum(), classify_limit_result(), LMCAS::context, LMCAS::domain, infinity_sign(), LMCAS::detail::make_expression_ptr(), LMCAS::detail::make_node(), LMCAS::detail::node(), LMCAS::detail::normalize_node(), LMCAS::AddNode::operands(), outcome(), unknown(), LMCAS::value , 以及 LMCAS::variable.
被这些函数引用 classify_infinite_sum() , 以及 classify_limit_result().
| LimitResult LMCAS::anonymous_namespace{limit_result.cpp}::classify_limit_result | ( | const NodePtr & | node, |
| const std::string & | variable, | ||
| ComputationContext & | context, | ||
| const FactsQuery & | facts, | ||
| Domain | domain = Domain::Real ) |
在文件 limit_result.cpp 第 171 行定义.
引用了 classify_infinite_function(), classify_infinite_power(), classify_infinite_product(), classify_infinite_sum(), classify_limit_result(), LMCAS::detail::contains_node_type(), LMCAS::context, LMCAS::domain, LMCAS::expression_depends_on_variable(), LMCAS::Result< Verified< LimitOutcome > >::failure(), LMCAS::function(), has_infinity(), LMCAS::FunctionNode::Infinity, LMCAS::detail::make_expression_ptr(), outcome(), LMCAS::detail::query_definedness(), LMCAS::True, unknown() , 以及 LMCAS::variable.
被这些函数引用 classify_infinite_function(), classify_infinite_power(), classify_infinite_product(), classify_infinite_sum(), classify_limit_result(), evaluate_one_sided_node(), limit_at_checked_point() , 以及 limit_complex_at_point().
| LimitResult LMCAS::anonymous_namespace{limit_result.cpp}::combine_one_sided_limits | ( | const LimitOutcome & | left, |
| const LimitOutcome & | right, | ||
| ComputationContext & | context ) |
在文件 limit_result.cpp 第 428 行定义.
引用了 combine_one_sided_limits(), LMCAS::detail::compare_pointwise_values(), LMCAS::context, LMCAS::Result< Verified< LimitOutcome > >::failure(), LMCAS::False, infinity_sign(), outcome(), LMCAS::Real, LMCAS::right, LMCAS::True , 以及 unknown().
被这些函数引用 combine_one_sided_limits() , 以及 limit_real_at_point().
| Result< bool > LMCAS::anonymous_namespace{limit_result.cpp}::complex_polynomial_nonzero | ( | const RelationalNode & | relation, |
| const std::string & | variable, | ||
| const FactsQuery & | facts, | ||
| ComputationContext & | context, | ||
| std::vector< NodePtr > & | nonzero_bases ) |
在文件 limit_result.cpp 第 469 行定义.
引用了 LMCAS::Complex, complex_polynomial_nonzero(), LMCAS::context, LMCAS::Result< T >::failure(), LMCAS::detail::make_expression_ptr(), LMCAS::detail::node(), LMCAS::detail::normalize_node(), LMCAS::detail::query_definedness(), LMCAS::detail::query_nonzero_value(), LMCAS::relation(), LMCAS::True, LMCAS::UnsupportedExpression, LMCAS::value , 以及 LMCAS::variable.
被这些函数引用 complex_polynomial_nonzero() , 以及 complex_punctured_condition().
| Result< bool > LMCAS::anonymous_namespace{limit_result.cpp}::complex_punctured_condition | ( | const NodePtr & | condition, |
| const std::string & | variable, | ||
| const FactsQuery & | facts, | ||
| ComputationContext & | context, | ||
| std::vector< NodePtr > & | nonzero_bases ) |
在文件 limit_result.cpp 第 506 行定义.
引用了 complex_polynomial_nonzero(), complex_punctured_condition(), LMCAS::context, LMCAS::Result< T >::failure(), LMCAS::LogicalNode::Or, LMCAS::relation() , 以及 LMCAS::variable.
被这些函数引用 complex_punctured_condition() , 以及 complex_punctured_domain().
| Result< bool > LMCAS::anonymous_namespace{limit_result.cpp}::complex_punctured_domain | ( | const NodePtr & | node, |
| const std::string & | variable, | ||
| const FactsQuery & | facts, | ||
| ComputationContext & | context, | ||
| std::vector< NodePtr > & | nonzero_bases ) |
在文件 limit_result.cpp 第 521 行定义.
引用了 LMCAS::Complex, complex_punctured_condition(), complex_punctured_domain(), LMCAS::context, LMCAS::domain, LMCAS::detail::domain_constraints(), LMCAS::Result< T >::failure(), LMCAS::detail::node() , 以及 LMCAS::variable.
被这些函数引用 complex_punctured_domain() , 以及 limit_complex_at_point().
| bool LMCAS::anonymous_namespace{limit_result.cpp}::continuous_function_branch | ( | FunctionNode::FuncType | type, |
| const NodePtr & | argument, | ||
| const ComplexContinuityPoint * | point ) |
在文件 limit_result.cpp 第 229 行定义.
引用了 LMCAS::FunctionNode::Abs, LMCAS::FunctionNode::ArcCos, LMCAS::FunctionNode::ArcSin, LMCAS::FunctionNode::ArcTan, continuous_function_branch(), LMCAS::FunctionNode::Cos, LMCAS::FunctionNode::Exp, LMCAS::FunctionNode::Ln, LMCAS::point, LMCAS::FunctionNode::Sin, LMCAS::FunctionNode::Sqrt , 以及 LMCAS::FunctionNode::Tan.
被这些函数引用 continuous_function_branch() , 以及 elementary_continuous_structure().
| bool LMCAS::anonymous_namespace{limit_result.cpp}::elementary_continuous_structure | ( | const NodePtr & | node, |
| const ComplexContinuityPoint * | complex_point = nullptr ) |
在文件 limit_result.cpp 第 245 行定义.
引用了 LMCAS::complex(), continuous_function_branch(), elementary_continuous_structure(), LMCAS::function(), LMCAS::point , 以及 power_continuous_structure().
被这些函数引用 elementary_continuous_structure(), limit_complex_at_point(), oscillatory_one_sided_limit() , 以及 power_continuous_structure().
| LimitResult LMCAS::anonymous_namespace{limit_result.cpp}::evaluate_one_sided_node | ( | const NodePtr & | node, |
| const std::string & | variable, | ||
| const LimitExprPtr & | point, | ||
| LimitDirection | direction, | ||
| ComputationContext & | context, | ||
| const AssumptionContext & | local, | ||
| const FactsQuery & | facts, | ||
| LimitVisitor & | visitor ) |
在文件 limit_result.cpp 第 370 行定义.
引用了 classify_limit_result(), LMCAS::context, LMCAS::direction, LMCAS::detail::domain_constraints(), evaluate_one_sided_node(), LMCAS::expression_depends_on_variable(), LMCAS::Result< Verified< LimitOutcome > >::failure(), LMCAS::detail::node(), LMCAS::detail::normalize_node(), oscillatory_one_sided_limit(), LMCAS::point, LMCAS::Real, scaled_one_sided_limit(), unknown() , 以及 LMCAS::variable.
被这些函数引用 evaluate_one_sided_node() , 以及 limit_one_sided_checked().
| Result< int > LMCAS::anonymous_namespace{limit_result.cpp}::finite_sign | ( | const NodePtr & | node, |
| const FactsQuery & | facts, | ||
| ComputationContext & | context ) |
在文件 limit_result.cpp 第 47 行定义.
引用了 LMCAS::context, LMCAS::Result< T >::failure(), LMCAS::False, finite_sign(), LMCAS::Inconclusive, LMCAS::detail::query_nonnegative_value(), LMCAS::detail::query_nonzero_value(), LMCAS::detail::query_positive_value(), LMCAS::Real , 以及 LMCAS::True.
被这些函数引用 classify_infinite_product() , 以及 finite_sign().
| bool LMCAS::anonymous_namespace{limit_result.cpp}::has_infinity | ( | const NodePtr & | node | ) |
在文件 limit_result.cpp 第 35 行定义.
引用了 LMCAS::SymbolicNode::accept(), has_infinity(), LMCAS::FunctionNode::Infinity, LMCAS::FunctionNode::type() , 以及 LMCAS::detail::RecursiveSymbolicVisitor::visit().
被这些函数引用 classify_limit_result(), has_infinity(), limit_complex_at_point() , 以及 limit_one_sided_checked().
| int LMCAS::anonymous_namespace{limit_result.cpp}::infinity_sign | ( | const LimitOutcome & | value | ) |
在文件 limit_result.cpp 第 30 行定义.
引用了 infinity_sign() , 以及 LMCAS::value.
被这些函数引用 classify_infinite_function(), classify_infinite_power(), classify_infinite_product(), classify_infinite_sum(), combine_one_sided_limits(), infinity_sign(), limit_at_checked_point() , 以及 oscillatory_one_sided_limit().
| LimitResult LMCAS::anonymous_namespace{limit_result.cpp}::limit_at_checked_point | ( | const LimitExprPtr & | expression, |
| const std::string & | variable, | ||
| const LimitExprPtr & | point, | ||
| LimitDirection | direction, | ||
| ComputationContext & | context, | ||
| const FactsQuery & | facts, | ||
| Domain | domain ) |
在文件 limit_result.cpp 第 606 行定义.
引用了 classify_limit_result(), LMCAS::Complex, LMCAS::context, LMCAS::direction, LMCAS::domain, infinity_sign(), limit_at_checked_point(), limit_complex_at_point(), limit_real_at_point(), LMCAS::detail::make_expression_ptr(), LMCAS::detail::node(), LMCAS::detail::normalize_node(), LMCAS::point, unknown() , 以及 LMCAS::variable.
被这些函数引用 limit_at_checked_point().
| LimitResult LMCAS::anonymous_namespace{limit_result.cpp}::limit_complex_at_point | ( | const LimitExprPtr & | expression, |
| const std::string & | variable, | ||
| const LimitExprPtr & | point, | ||
| ComputationContext & | context, | ||
| const FactsQuery & | facts ) |
在文件 limit_result.cpp 第 552 行定义.
引用了 LMCAS::SymbolicNode::accept(), classify_limit_result(), LMCAS::Complex, complex_punctured_domain(), LMCAS::context, elementary_continuous_structure(), LMCAS::expression_depends_on_variable(), LMCAS::Result< Verified< LimitOutcome > >::failure(), LMCAS::NormalizationVisitor::get_result(), has_infinity(), limit_complex_at_point(), LMCAS::detail::node(), LMCAS::point, LMCAS::detail::query_definedness(), LMCAS::substitute_free(), LMCAS::True, unknown(), LMCAS::value , 以及 LMCAS::variable.
被这些函数引用 limit_at_checked_point() , 以及 limit_complex_at_point().
| LimitResult LMCAS::anonymous_namespace{limit_result.cpp}::limit_one_sided_checked | ( | const LimitExprPtr & | expression, |
| const std::string & | variable, | ||
| const LimitExprPtr & | point, | ||
| LimitDirection | direction, | ||
| ComputationContext & | context ) |
在文件 limit_result.cpp 第 403 行定义.
引用了 assumption_limit_failure(), LMCAS::context, LMCAS::direction, evaluate_one_sided_node(), LMCAS::FromBelow, has_infinity(), limit_one_sided_checked(), LMCAS::detail::make_node(), LMCAS::Negative, LMCAS::detail::node(), LMCAS::point, LMCAS::Positive, LMCAS::Real, LMCAS::detail::SymbolicRewriter::rewrite() , 以及 LMCAS::variable.
被这些函数引用 limit_one_sided_checked() , 以及 limit_real_at_point().
| LimitResult LMCAS::anonymous_namespace{limit_result.cpp}::limit_real_at_point | ( | const LimitExprPtr & | expression, |
| const std::string & | variable, | ||
| const LimitExprPtr & | point, | ||
| LimitDirection | direction, | ||
| int | endpoint_sign, | ||
| ComputationContext & | context ) |
在文件 limit_result.cpp 第 589 行定义.
引用了 LMCAS::Both, combine_one_sided_limits(), LMCAS::context, LMCAS::direction, LMCAS::FromAbove, LMCAS::FromBelow, LMCAS::Inconclusive, limit_one_sided_checked(), limit_real_at_point(), outcome(), LMCAS::point, LMCAS::right, unknown() , 以及 LMCAS::variable.
被这些函数引用 limit_at_checked_point() , 以及 limit_real_at_point().
| std::optional< LimitResult > LMCAS::anonymous_namespace{limit_result.cpp}::oscillatory_one_sided_limit | ( | const NodePtr & | node, |
| const std::string & | variable, | ||
| const LimitExprPtr & | point, | ||
| LimitDirection | direction, | ||
| ComputationContext & | context, | ||
| const FactsQuery & | facts, | ||
| LimitVisitor & | visitor ) |
在文件 limit_result.cpp 第 347 行定义.
引用了 LMCAS::context, LMCAS::FunctionNode::Cos, LMCAS::direction, LMCAS::domain, LMCAS::detail::domain_constraints(), elementary_continuous_structure(), LMCAS::Result< Verified< LimitOutcome > >::failure(), LMCAS::Inconclusive, infinity_sign(), LMCAS::limit_checked(), LMCAS::detail::make_expression_ptr(), LMCAS::detail::node(), oscillatory_one_sided_limit(), outcome(), LMCAS::point, LMCAS::Real, LMCAS::FunctionNode::Sin , 以及 LMCAS::variable.
被这些函数引用 evaluate_one_sided_node() , 以及 oscillatory_one_sided_limit().
| LimitResult LMCAS::anonymous_namespace{limit_result.cpp}::outcome | ( | LimitOutcome | value | ) |
在文件 limit_result.cpp 第 20 行定义.
引用了 outcome(), LMCAS::Result< Verified< LimitOutcome > >::success() , 以及 LMCAS::value.
被这些函数引用 classify_infinite_function(), classify_infinite_power(), classify_infinite_product(), classify_infinite_sum(), classify_limit_result(), combine_one_sided_limits(), limit_real_at_point(), oscillatory_one_sided_limit() , 以及 outcome().
| bool LMCAS::anonymous_namespace{limit_result.cpp}::power_continuous_structure | ( | const PowerNode & | power, |
| const ComplexContinuityPoint * | point ) |
在文件 limit_result.cpp 第 218 行定义.
引用了 LMCAS::PowerNode::base(), elementary_continuous_structure(), LMCAS::exponent, LMCAS::PowerNode::exponent(), LMCAS::integer, LMCAS::point, power_continuous_structure() , 以及 LMCAS::try_get_integer_value().
被这些函数引用 elementary_continuous_structure() , 以及 power_continuous_structure().
| std::optional< LimitResult > LMCAS::anonymous_namespace{limit_result.cpp}::scaled_one_sided_limit | ( | const MultiplyNode & | product, |
| const std::string & | variable, | ||
| const LimitExprPtr & | point, | ||
| LimitDirection | direction, | ||
| ComputationContext & | context, | ||
| const FactsQuery & | facts ) |
在文件 limit_result.cpp 第 324 行定义.
引用了 LMCAS::context, LMCAS::direction, LMCAS::expression_depends_on_variable(), LMCAS::Result< Verified< LimitOutcome > >::failure(), LMCAS::Inconclusive, LMCAS::limit_checked(), LMCAS::detail::make_expression_ptr(), LMCAS::MultiplyNode::operands(), LMCAS::point, LMCAS::detail::query_nonzero_value(), LMCAS::Real, scaled_one_sided_limit(), LMCAS::True , 以及 LMCAS::variable.
被这些函数引用 evaluate_one_sided_node() , 以及 scaled_one_sided_limit().
| LimitResult LMCAS::anonymous_namespace{limit_result.cpp}::unknown | ( | ) |
在文件 limit_result.cpp 第 23 行定义.
引用了 LMCAS::Result< Verified< LimitOutcome > >::failure(), LMCAS::Inconclusive , 以及 unknown().
被这些函数引用 assumption_limit_failure(), classify_infinite_function(), classify_infinite_power(), classify_infinite_product(), classify_infinite_sum(), classify_limit_result(), combine_one_sided_limits(), evaluate_one_sided_node(), limit_at_checked_point(), limit_complex_at_point(), limit_real_at_point() , 以及 unknown().
| Result< void > LMCAS::anonymous_namespace{limit_result.cpp}::validate_limit_input | ( | const LimitExprPtr & | expression, |
| const std::string & | variable, | ||
| const LimitExprPtr & | point, | ||
| LimitDirection | direction, | ||
| Domain | domain ) |
在文件 limit_result.cpp 第 533 行定义.
引用了 LMCAS::Both, LMCAS::Complex, LMCAS::direction, LMCAS::domain, LMCAS::expression_depends_on_variable(), LMCAS::Result< T >::failure(), LMCAS::InvalidArgument, LMCAS::detail::node(), LMCAS::point, LMCAS::Real, LMCAS::Result< T >::success(), validate_limit_input() , 以及 LMCAS::variable.
被这些函数引用 validate_limit_input().