#![warn(missing_docs)]
#[cfg(feature = "mimalloc")]
#[global_allocator]
static GLOBAL: mimalloc::MiMalloc = mimalloc::MiMalloc;
pub mod prelude {
pub use ocas_atom::tensor::{
Contracted, IndexPosition, IndexSlot, Symmetry, Tensor, TensorProduct, contract,
symmetrise_sign,
};
pub use ocas_atom::{Atom, AtomArena, AtomNode, Symbol, normalize};
pub use ocas_calc::ode::{
ODE, ODESolution, ODEType, classify_ode, dsolve, dsolve_ivp, dsolve_system,
};
pub use ocas_calc::solve::{
self, DiophantineSolution, SolveError, solve_diophantine, solve_linear_integer,
solve_linear_rational, solve_polynomial_system,
};
pub use ocas_calc::{apart, diff, integrate, integrate_with_fuel, substitute, taylor};
pub use ocas_core::arena::Arena;
pub use ocas_core::error::{OcasError, Result};
pub use ocas_core::fuel::Fuel;
pub use ocas_domain::dual::{DualCoeff, DualShape, HyperDual, new_first_order};
pub use ocas_domain::{
AlgebraicElement, AlgebraicExtension, AlgebraicNumberField, Assumption, Assumptions,
Complex, ComplexDomain, Domain, EuclideanDomain, FiniteField, FiniteFieldElement, Integer,
IntegerDomain, Rational, RationalDomain, RealBall, RealBallDomain, SymbolAssumptions,
};
#[cfg(feature = "simd")]
pub use ocas_eval::VectorEvaluator;
#[cfg(feature = "jit")]
pub use ocas_eval::jit::{JitCompiledFunction, JitEngine};
pub use ocas_eval::numeric::{
IntegrateResult, Integrator, StatisticsAccumulator, Vegas, VegasOptions, integrate_1d,
};
pub use ocas_eval::{
EvalTree, EvaluationDomain, EvaluationError, ExpressionEvaluator, FunctionMap, Instr,
Instruction, PowfExtension, Slot,
};
pub use ocas_parse::{ParseError, parse};
pub use ocas_poly::{
BlockOrder, DenseUnivariatePolynomial, Grevlex, Grlex, GroebnerBasis, Lex, Matrix,
MatrixError, MonomialOrder, RationalPolynomial, RootInterval, SparseMultivariatePolynomial,
SubOrder, WeightOrder, buchberger, f4, monomial_are_coprime, monomial_divides,
monomial_lcm,
};
pub use ocas_rewrite::{
Bindings, MatchError, Pattern, Rule, WildcardLevel, match_pattern, simplify,
simplify_with_fuel, transform,
};
}
#[doc(hidden)]
pub use ocas_atom;
#[doc(hidden)]
pub use ocas_calc;
#[doc(hidden)]
pub use ocas_core;
#[doc(hidden)]
pub use ocas_domain;
#[doc(hidden)]
pub use ocas_eval;
#[doc(hidden)]
pub use ocas_parse;
#[doc(hidden)]
pub use ocas_poly;
#[doc(hidden)]
pub use ocas_rewrite;
pub use prelude::{
Arena, Assumption, Assumptions, Atom, AtomArena, AtomNode, Bindings, BlockOrder, Complex,
ComplexDomain, DenseUnivariatePolynomial, DiophantineSolution, Domain, EuclideanDomain,
EvalTree, EvaluationDomain, EvaluationError, ExpressionEvaluator, FiniteField,
FiniteFieldElement, FunctionMap, Grevlex, GroebnerBasis, Instr, Instruction, Integer,
IntegerDomain, Lex, MatchError, Matrix, MatrixError, MonomialOrder, OcasError, ParseError,
Pattern, PowfExtension, Rational, RationalDomain, RationalPolynomial, RealBall, RealBallDomain,
Result, RootInterval, Rule, Slot, SolveError, SparseMultivariatePolynomial, SubOrder, Symbol,
SymbolAssumptions, WeightOrder, WildcardLevel, apart, buchberger, diff, integrate,
match_pattern, monomial_are_coprime, monomial_divides, monomial_lcm, normalize, parse,
simplify, solve_diophantine, solve_linear_integer, solve_linear_rational,
solve_polynomial_system, substitute, taylor, transform,
};