LMCAS
Lamina Computer Algebra System
载入中...
搜索中...
未找到
normalization_utils.cpp 文件参考
#include "internal/normalization_utils.hpp"
#include <limits>
normalization_utils.cpp 的引用(Include)关系图:

浏览该文件的源代码.

命名空间

namespace  LMCAS

函数

std::shared_ptr< const NumberNode > LMCAS::add_numbers (const std::shared_ptr< const NumberNode > &a, const std::shared_ptr< const NumberNode > &b)
 两个数值节点相加
Rational LMCAS::exact_number_as_rational (const NumberNode &node)
BigInt LMCAS::get_node_degree_helper (const std::shared_ptr< const SymbolicNode > &node)
 计算 AST 节点的多项式次数
bool LMCAS::get_pi_coeff (const std::shared_ptr< const SymbolicNode > &node, Rational &coefficient)
static bool LMCAS::is_pi_variable (const VariableNode &variable)
std::shared_ptr< const SymbolicNode > LMCAS::make_normalized_multiply_node (const std::vector< std::shared_ptr< const SymbolicNode > > &operands, detail::RewriteBudget *budget=nullptr)
std::shared_ptr< const NumberNode > LMCAS::multiply_numbers (const std::shared_ptr< const NumberNode > &a, const std::shared_ptr< const NumberNode > &b)
 两个数值节点相乘
std::shared_ptr< const SymbolicNode > LMCAS::norm_subst_index (const std::shared_ptr< const SymbolicNode > &node, const std::string &index_var, const std::shared_ptr< const SymbolicNode > &value, detail::RewriteBudget *budget=nullptr)
void LMCAS::normalization_append (detail::RewriteBudget *budget, std::size_t &nodes, std::vector< std::shared_ptr< const SymbolicNode > > &children, std::shared_ptr< const SymbolicNode > child)
std::size_t LMCAS::normalization_check_count (detail::RewriteBudget *budget, std::size_t rows, std::size_t cols=1, bool wrapped=true)
bool LMCAS::normalization_factor_less (const std::shared_ptr< const SymbolicNode > &left, const std::shared_ptr< const SymbolicNode > &right)
bool LMCAS::try_get_integer_value (const std::shared_ptr< const NumberNode > &node, BigInt &value)