LMCAS
Lamina Computer Algebra System
载入中...
搜索中...
未找到
exact_matrix_support.hpp
浏览该文件的文档.
2#pragma once
3
5
6#include <optional>
7
9
10Result<void> validate_matrix(const ExactMatrixData& matrix,
11 const std::string& operation);
12std::optional<Rational> exact_rational(const ExprPtr& expression);
13ExprPtr simplify_expr(ExprPtr expression, ComputationContext& context);
14ExprPtr exact_add(const ExprPtr& left, const ExprPtr& right, ComputationContext& context);
15ExprPtr exact_negate(const ExprPtr& expression, ComputationContext& context);
16ExprPtr exact_subtract(const ExprPtr& left, const ExprPtr& right, ComputationContext& context);
17ExprPtr exact_multiply(const ExprPtr& left, const ExprPtr& right, ComputationContext& context);
18ExprPtr exact_divide(const ExprPtr& numerator, const ExprPtr& denominator, ComputationContext& context);
19void swap_rows(ExactMatrixData& matrix, std::size_t first, std::size_t second);
20Result<std::optional<std::size_t>> choose_pivot(
21 const ExactMatrixData& matrix, std::size_t first_row, std::size_t column,
22 ComputationContext& context, const std::string& operation);
23
24}
ExprPtr simplify_expr(ExprPtr expression, ComputationContext &context)
std::optional< Rational > exact_rational(const ExprPtr &expression)
Result< std::optional< std::size_t > > choose_pivot(const ExactMatrixData &matrix, std::size_t first_row, std::size_t column, ComputationContext &context, const std::string &operation)
ExprPtr exact_multiply(const ExprPtr &left, const ExprPtr &right, ComputationContext &context)
ExprPtr exact_subtract(const ExprPtr &left, const ExprPtr &right, ComputationContext &context)
ExprPtr exact_negate(const ExprPtr &expression, ComputationContext &context)
void swap_rows(ExactMatrixData &matrix, std::size_t first, std::size_t second)
Result< void > validate_matrix(const ExactMatrixData &matrix, const std::string &operation)
ExprPtr exact_add(const ExprPtr &left, const ExprPtr &right, ComputationContext &context)
ExprPtr exact_divide(const ExprPtr &numerator, const ExprPtr &denominator, ComputationContext &context)
ComputationContext const std::string & operation
std::size_t std::size_t ComputationContext & context
std::shared_ptr< SymbolicExpr > ExprPtr
const ExprPtr & right
const ExprPtr & denominator