Expand description
Convenience prelude for common imports
This is the recommended way to use MathHook. Import everything you need with:
use mathhook::prelude::*;§Examples
use mathhook::prelude::*;
// Macro-first philosophy
let x = symbol!(x);
let expr = expr!(x ^ 2); // x squared
let simplified = expr.simplify();
// Solver API
let mut solver = MathSolver::new();
let equation = Expression::equation(Expression::symbol(x.clone()), expr!(5));
let solutions = solver.solve(&equation, &x);Re-exports§
pub use num_bigint;pub use num_rational;
Modules§
- expressions
- Expression creation macros (now procedural)
- multivariate_
gcd - Multivariate polynomial GCD computation using evaluation-interpolation
- parsing
- Parsing macros for mathematical expressions
- symbols
- Symbol creation macros (now procedural)
Macros§
- expr
- Procedural macro for creating mathematical expressions with full syntax support
- function
- Procedural macro for creating function expressions
- symbol
- Procedural macro for creating symbols with optional type specification
- symbols
- Procedural macro for creating multiple symbols at once
Structs§
- Basic
Derivatives - Basic derivative operations
- Basic
Integrals - Basic integration operations
- Chain
Rule - Chain rule implementation for function derivatives
- Educational
Result - Educational result wrapper
- Enhanced
Step - Enhanced step with human and API data
- Enhanced
Step Explanation - Enhanced step explanation with multiple output formats
- Equation
Analyzer - Smart equation analyzer that determines solver routing
- Function
Integrals - Function integration handler
- Higher
Order Derivatives - Higher-order derivative operations
- Integration
Methods - Integration methods collection
- Math
Solver - Stateful mathematical solver for the hybrid API
- Numeric
Matrix - Operation
Context - Context information for educational operations
- Parser
- Fully integrated mathematical expression parser
- Parser
Config - Power
Rule - Power rule implementation
- Product
Rule - Product rule implementation for two factors
- Smart
Equation Solver - Master equation solver with smart dispatch
- Solver
Config - Configuration for solving operations
- Step
- Represents a single step in a mathematical operation
- Step
ByStep Explanation - Complete step-by-step explanation of a mathematical operation
- Summation
Methods - Summation methods and utilities
- Symbol
- Mathematical symbol/variable with efficient string sharing
Enums§
- Commutativity
- Commutativity of an expression or operation
- Difficulty
Level - Difficulty level for educational content
- Equation
Type - Types of equations our system can handle
- Expression
- Memory-optimized Expression enum (target: 32 bytes)
- Limit
Direction - Direction for limit computation
- Math
Constant - Common mathematical constants
- Math
Error - Comprehensive mathematical error type
- Math
Language - Mathematical language/format for expressions
- Matrix
- Unified matrix type that can represent any matrix efficiently
- Number
- Unified number type supporting integers, rationals, and floats
- Parse
Error - Pattern
- A pattern that can match against expressions
- Series
Type - Types of series expansions
- Solver
Result - Result of a solving operation
- Symbol
Type - Type of symbol (determines commutativity)
Traits§
- Advanced
Polynomial - Trait for advanced polynomial operations
- Advanced
Simplify - Trait for advanced simplification operations
- Collect
- Trait for collecting terms in expressions
- Complex
Analysis - Trait for complex analysis operations related to singularities
- Complex
Operations - Trait for complex number operations
- Core
Matrix Ops - Core matrix operations that work directly on Matrix types
- Derivative
- Trait for derivative operations
- Educational
Ext - Extension trait for adding educational capabilities to existing operations
- Educational
Operation - Trait for mathematical operations that provide educational explanations
- Eigen
Operations - Eigenvalue and eigenvector operations trait
- Expand
- Trait for expanding expressions
- Factor
- Trait for factoring expressions
- Integration
- Trait for integration operations
Added
depthparameter to prevent infinite recursion in integration by parts. Thedepthparameter tracks recursion depth and enables maximum depth limiting. - LaTeX
Formatter - Format the expression to LaTeX
- Limits
- Trait for limit operations
- Matchable
- Trait for types that support pattern matching
- Matrix
Decomposition - Matrix decomposition operations trait
- Matrix
Operations - High-level matrix operations trait for Expression
- Polynomial
Gcd - Trait for GCD operations on expressions
- Rational
Simplify - Trait for rational expression operations
- Residue
Calculus - Trait for residue calculus operations
- Series
Expansion - Trait for series expansion operations
- Simple
Formatter - Format the expression to Simple
- Simplify
- Trait for simplifying expressions
- Step
ByStep - Trait for generating step-by-step explanations
- Substitutable
- Trait for types that support substitution operations
- Summation
- Trait for summation and product operations
- Wolfram
Formatter - Format the expression to Wolfram Language
- Zero
Detection - Trait for zero detection in expressions
Functions§
- multivariate_
gcd - Compute GCD of multivariate polynomials using evaluation-interpolation
- polynomial_
div - Polynomial long division
- polynomial_
quo - Polynomial quotient (division without remainder)
- polynomial_
rem - Polynomial remainder
Type Aliases§
- Pattern
Matches - Result of pattern matching containing variable bindings