Is there a reasonable way to make an entire Computer Algebra System (algebraic equations, limits, derivatives, integrals) without using binary trees?
CAS - Binary Tree Alternative
366 Views Asked by gab06 At
1
There are 1 best solutions below
Related Questions in MATH
- bc: prevent "divide by zero" runtime error on multiple operations
- How to round smoothly percentage in JS
- Calculate if trend is up, down or stable
- How to pick a number based on probability?
- Python 2.7 - find combinations of numbers in a list that add to another number
- How to translate an object to a location slowly (so that it can be seen)
- max() implemented with basic operators
- Matlab: how to fit time series with a funcion of a certain type
- 3D B-Spline approximation
- Issues with adding doubles. Arithmetic Coding
- Calculate new position post rotation
- Javascript: PI (π) Calculator
- How to compute a^^b mod m?
- Need Custom Query in SQL Server
- Number of divisiors upto 10^6
Related Questions in BINARY-TREE
- How to Compute Space Complexity for Printing All paths which Sum to a Given Value in Binary Tree
- Recursively divide a list that each iteration divides into two parts to get the closest sum overall
- Function that return average depth of a binary search tree
- Print a Binary Search Tree with Correct Formatting
- Recursive Tree Walk with ES6 Promise
- Making a very basic binary tree in Scala
- maximum sum of value from root to leaf in a binary tree using stack
- How to Compute Space Complexity for Binary SubTree Finding
- Scala: How to compute the sum of all elements in the leaves of a Binary Tree?
- Pass a value by reference in a function to find level of node in a binary tree
- How to implement remove() method in binary search tree iterator
- How to copy an object in Scala?
- Complex conditional filter design
- Recursively count children nodes in binary tree
- Updating value of node in Scala?
Related Questions in COMPUTER-ALGEBRA-SYSTEMS
- maxima CAS - how to substitute variable for an expression?
- Sign of a symbolic algebraic expression
- Maxima: Simplify expressions containing minimum
- Mathematica-like (LaTeX) typesetting for own CAS application
- computer algebra soft to minimize the number of operations in a set of polynomials
- Exact Large Finite Field Linear Algebra Library (e.g. GF(2^128) / GF(2^256) )
- How many bits do i need to store AB+C?
- How to solve simultaneous congruences equations in r
- Computer Algebra System Accessible in Javascript
- how to find 6-bit 2’s complement representation of -32
- cannot open Singular on a running emacs
- How to do function composition in Sympy?
- Sympy: Drop higher order terms in polynomial
- Lisp-like (prefix) output for the Reduce/Redlog computer algebra system
- CAS - Binary Tree Alternative
Related Questions in SYMBOLIC-COMPUTATION
- Matlab numerical error and how to get the correct answer
- Does symsum in Matlab do more than it should?
- Inverse Laplace transform of a rational function with third order polynominal denominator, using Sympy
- Solve equation without using symbolic toolbox in Matlab
- How do you install Symbolic C++ on Visual Studio 2010?
- OOP: Change of class of object following operation - operations no longer as desired
- Example of recursive define in real system/ programs
- Maximum recursion depth error in Sympy when using non commutative symbols
- Defining and using mathematical functions in cython
- klee with loops strange behaviour with similar code
- Unexpected result on solving some inequality in Matlab symbolic computation
- Issue with Matlab solve function?
- A bug of numeric::solve
- Very slow infinite series with symsum in Matlab
- Please explain the result from these commands
Trending Questions
- UIImageView Frame Doesn't Reflect Constraints
- Is it possible to use adb commands to click on a view by finding its ID?
- How to create a new web character symbol recognizable by html/javascript?
- Why isn't my CSS3 animation smooth in Google Chrome (but very smooth on other browsers)?
- Heap Gives Page Fault
- Connect ffmpeg to Visual Studio 2008
- Both Object- and ValueAnimator jumps when Duration is set above API LvL 24
- How to avoid default initialization of objects in std::vector?
- second argument of the command line arguments in a format other than char** argv or char* argv[]
- How to improve efficiency of algorithm which generates next lexicographic permutation?
- Navigating to the another actvity app getting crash in android
- How to read the particular message format in android and store in sqlite database?
- Resetting inventory status after order is cancelled
- Efficiently compute powers of X in SSE/AVX
- Insert into an external database using ajax and php : POST 500 (Internal Server Error)
Popular Questions
- How do I undo the most recent local commits in Git?
- How can I remove a specific item from an array in JavaScript?
- How do I delete a Git branch locally and remotely?
- Find all files containing a specific text (string) on Linux?
- How do I revert a Git repository to a previous commit?
- How do I create an HTML button that acts like a link?
- How do I check out a remote Git branch?
- How do I force "git pull" to overwrite local files?
- How do I list all files of a directory?
- How to check whether a string contains a substring in JavaScript?
- How do I redirect to another webpage?
- How can I iterate over rows in a Pandas DataFrame?
- How do I convert a String to an int in Java?
- Does Python have a string 'contains' substring method?
- How do I check if a string contains a specific word?
Maple uses a Directed acyclic graph (DAG). The is still a tree-like structure with nodes and links however two nodes can have the same child if they have common subexpressions. Binary trees are a special case of DAG's which are a special type of graph.
Binary trees are actually a bit restrictive. You often want to have a different number of children for each node: unitary operators like -x, functions with various numbers of arguments. An integral will need four children: the integrand, top and bottom limits and the variable the integral is wrt.
If you know your elements are going to be of a specific type then other data types might be more appropriate. For example if you are dealing with polynomials then multidimensional arrays might be more appropriate. So 2 x^2 + 3 x - 7 might be represented as [7,3,2].
For a general purpose system I don't think you could get away from some graph like structure.