Translate Equation to Network¶
Translating a system of equations to a computational network happens in four stages:
- Resolution: the binding of a unique variable identifier to each equation of the system
- Isolation: rewriting the system to isolate each bound variable on the left side of each equation
- Translation: translating the isolated system to a network according to a set of rewrite rules
- Unification: unifying matching network outputs and inputs using the trace operator
Resolution¶
TODO
For each equation \(i\) we define the set of possible bounded variables \( BV \) in the following way:
To find the unique bounded variable for each equations we solve the associated boundedness problem as a simple linear equational system.
Isolation¶
Now the isolation is pretty straightforward.
For each equation, with a bounded variable, we isolated the bounded variable through the following rewrite:
TODO: write up isolation rewrite rules
Translation¶
To translate from an isolated equation to a network we apply the following set of rewrite rules:
Equation Translation¶
Term Translation¶
Identifier Translation¶
Number Translation¶
Arithmetic Operator Translation¶
Application and Abstraction Translation¶
Integral Translation¶
Derivative Translation¶
Unification¶
Unification now follows as a straightforward rewrite across input and output labels using copy and trace operators.
TODO: write up the rewrite rules