|
LMCAS
Lamina Computer Algebra System
|
#include <computation_context.hpp>
Public 成员函数 | |
| ComputationContext (ComputationContext &&)=delete | |
| ComputationContext (const ComputationContext &)=delete | |
| ComputationContext (ResourceLimits limits={}, CancellationToken cancellation={}) | |
| Result< void > | add_diagnostic (Diagnostic diagnostic) |
| const std::shared_ptr< const AssumptionContext > & | assumptions () const noexcept |
| const CancellationToken & | cancellation () const noexcept |
| Result< void > | consume_steps (std::size_t amount=1, const std::string &operation={}) |
| const DiagnosticEngine & | diagnostic_engine () const noexcept |
| const std::vector< Diagnostic > & | diagnostics () const noexcept |
| Result< void > | enter_recursion (const std::string &operation={}) |
| void | leave_recursion () noexcept |
| const ResourceLimits & | limits () const noexcept |
| ComputationContext & | operator= (ComputationContext &&)=delete |
| ComputationContext & | operator= (const ComputationContext &)=delete |
| std::size_t | recursion_depth () const noexcept |
| Result< void > | require_ast_nodes (std::size_t amount, const std::string &operation={}) const |
| Result< void > | require_expansion_terms (std::size_t amount, const std::string &operation={}) const |
| Result< void > | require_input_bytes (std::size_t amount, const std::string &operation={}) const |
| Result< void > | require_integer_bits (std::size_t amount, const std::string &operation={}) const |
| Result< void > | set_assumptions (std::shared_ptr< const AssumptionContext > assumptions, const std::string &operation={}) |
| Result< void > | set_diagnostic_consumer (DiagnosticEngine::Consumer consumer, const std::string &operation={}) |
| std::size_t | steps_used () const noexcept |
| const UnitSystem & | units () const noexcept |
| UnitSystem & | units () noexcept |
Private 成员函数 | |
| Result< void > | check_access (const std::string &operation) const |
Private 属性 | |
| std::shared_ptr< const AssumptionContext > | assumptions_ |
| CancellationToken | cancellation_ |
| DiagnosticEngine | diagnostic_engine_ |
| ResourceLimits | limits_ |
| const std::thread::id | owner_thread_ |
| std::size_t | recursion_depth_ = 0 |
| std::size_t | steps_used_ = 0 |
| UnitSystem | units_ |
在文件 computation_context.hpp 第 99 行定义.
|
inlineexplicit |
在文件 computation_context.hpp 第 101 行定义.
引用了 limits().
被这些函数引用 ComputationContext(), ComputationContext(), operator=() , 以及 operator=().
|
delete |
|
delete |
|
inline |
在文件 computation_context.hpp 第 187 行定义.
引用了 check_access(), diagnostic_engine_, LMCAS::DiagnosticEngine::emit() , 以及 LMCAS::Diagnostic::operation.
|
inlinenoexcept |
在文件 computation_context.hpp 第 222 行定义.
引用了 assumptions_.
被这些函数引用 LMCAS::anonymous_namespace{inequality_solver_parametric.cpp}::linear_interval(), set_assumptions(), LMCAS::anonymous_namespace{inequality_solver_parametric.cpp}::simplify_coefficients() , 以及 LMCAS::anonymous_namespace{residual_verification.cpp}::FormalResidual::square_relation().
|
inlinenoexcept |
|
inlineprivate |
在文件 computation_context.hpp 第 227 行定义.
引用了 cancellation_, LMCAS::Cancelled, LMCAS::Result< T >::failure(), LMCAS::InternalInvariant, LMCAS::CancellationToken::is_cancelled(), owner_thread_ , 以及 LMCAS::Result< T >::success().
被这些函数引用 add_diagnostic().
|
inline |
在文件 computation_context.hpp 第 112 行定义.
被这些函数引用 LMCAS::detail::RewriteBudget::append_size(), LMCAS::detail::RewriteBudget::check_step_access(), LMCAS::anonymous_namespace{residual_verification.cpp}::FormalResidual::collect(), LMCAS::detail::AssumptionFacts::collect_names(), LMCAS::detail::RewriteBudget::commit_step(), LMCAS::anonymous_namespace{differential_geometry.cpp}::exterior_derivative_term(), LMCAS::anonymous_namespace{assumption_context.cpp}::has_visible_proof(), LMCAS::detail::RewriteBudget::measure_shape(), LMCAS::anonymous_namespace{residual_verification.cpp}::FormalResidual::multiply(), LMCAS::anonymous_namespace{poly_utils.cpp}::normalize_coefficient(), LMCAS::anonymous_namespace{symbolic_gcd.cpp}::polynomial_term_to_expression(), LMCAS::detail::NumericEvaluator::power(), LMCAS::detail::NumericEvaluator::product(), LMCAS::anonymous_namespace{residual_verification.cpp}::FormalResidual::reduce_radicals(), LMCAS::detail::NumericEvaluator::square_root(), LMCAS::detail::ExactBoundArithmetic::step(), LMCAS::anonymous_namespace{poly_utils.cpp}::trim_checked_coefficients(), LMCAS::multivariate_checked_detail::verify_linear_assignment() , 以及 LMCAS::zc_try_candidate().
|
inlinenoexcept |
在文件 computation_context.hpp 第 199 行定义.
引用了 diagnostic_engine_.
|
inlinenoexcept |
在文件 computation_context.hpp 第 196 行定义.
引用了 diagnostic_engine_ , 以及 LMCAS::DiagnosticEngine::diagnostics().
|
inline |
在文件 computation_context.hpp 第 125 行定义.
被这些函数引用 LMCAS::serialization_detail::Recursion::Recursion(), LMCAS::anonymous_namespace{residual_verification.cpp}::FormalResidual::collect(), LMCAS::anonymous_namespace{residual_verification.cpp}::FormalResidual::convert(), LMCAS::detail::RewriteBudget::enter(), LMCAS::detail::NumericEvaluator::evaluate() , 以及 LMCAS::anonymous_namespace{residual_verification.cpp}::FormalResidual::reduce_radicals().
|
inlinenoexcept |
在文件 computation_context.hpp 第 136 行定义.
引用了 recursion_depth_.
被这些函数引用 LMCAS::serialization_detail::Recursion::~Recursion() , 以及 LMCAS::detail::RewriteBudget::leave().
|
inlinenoexcept |
在文件 computation_context.hpp 第 193 行定义.
引用了 limits_.
被这些函数引用 ComputationContext() , 以及 LMCAS::detail::RewriteBudget::require_shape().
|
delete |
|
delete |
|
inlinenoexcept |
在文件 computation_context.hpp 第 195 行定义.
引用了 recursion_depth_.
被这些函数引用 LMCAS::detail::RewriteBudget::require_shape().
|
inline |
在文件 computation_context.hpp 第 140 行定义.
被这些函数引用 LMCAS::detail::RewriteBudget::require_nodes().
|
inline |
在文件 computation_context.hpp 第 163 行定义.
被这些函数引用 LMCAS::anonymous_namespace{poly_utils.cpp}::checked_coefficient_count(), LMCAS::anonymous_namespace{residual_verification.cpp}::FormalResidual::combine(), LMCAS::anonymous_namespace{residual_verification.cpp}::FormalResidual::multiply(), LMCAS::anonymous_namespace{residual_verification.cpp}::FormalResidual::reduce_radicals(), LMCAS::anonymous_namespace{residual_verification.cpp}::FormalResidual::register_canonical_radical(), LMCAS::anonymous_namespace{residual_verification.cpp}::FormalResidual::register_regular_atom(), LMCAS::anonymous_namespace{residual_verification.cpp}::FormalResidual::register_replacement() , 以及 LMCAS::anonymous_namespace{residual_verification.cpp}::FormalResidual::remember_angle().
|
inline |
在文件 computation_context.hpp 第 175 行定义.
|
inline |
在文件 computation_context.hpp 第 151 行定义.
被这些函数引用 LMCAS::detail::ExactBoundArithmetic::bits(), LMCAS::anonymous_namespace{residual_verification.cpp}::FormalResidual::combine(), LMCAS::anonymous_namespace{residual_verification.cpp}::FormalResidual::convert_number(), LMCAS::anonymous_namespace{residual_verification.cpp}::FormalResidual::multiply(), LMCAS::detail::NumericEvaluator::product(), LMCAS::anonymous_namespace{residual_verification.cpp}::FormalResidual::reduce_radicals(), LMCAS::anonymous_namespace{residual_verification.cpp}::FormalResidual::register_canonical_radical(), LMCAS::detail::RewriteBudget::Measurement::require_bits() , 以及 LMCAS::detail::NumericEvaluator::square_root().
|
inline |
在文件 computation_context.hpp 第 214 行定义.
引用了 assumptions().
|
inline |
在文件 computation_context.hpp 第 202 行定义.
|
inlinenoexcept |
|
inlinenoexcept |
|
inlinenoexcept |
|
private |
在文件 computation_context.hpp 第 244 行定义.
被这些函数引用 assumptions().
|
private |
在文件 computation_context.hpp 第 242 行定义.
被这些函数引用 cancellation() , 以及 check_access().
|
private |
在文件 computation_context.hpp 第 247 行定义.
被这些函数引用 add_diagnostic(), diagnostic_engine() , 以及 diagnostics().
|
private |
在文件 computation_context.hpp 第 241 行定义.
被这些函数引用 limits().
|
private |
在文件 computation_context.hpp 第 243 行定义.
被这些函数引用 check_access().
|
private |
在文件 computation_context.hpp 第 246 行定义.
被这些函数引用 leave_recursion() , 以及 recursion_depth().
|
private |
在文件 computation_context.hpp 第 245 行定义.
被这些函数引用 steps_used().
|
private |
在文件 computation_context.hpp 第 248 行定义.