- representing expressions prettily -- ie Latex, MathJax, MathML (presentation)
- storing expressions meaningfully -- ie an Abstract Syntax Tree, MathML (content)
- converting between presentation and content
- converting between non-propriatry content representation and a Computer Algebra System
- finding a Computer Algebra System capable of handling most of mathematical physics
- manually creating content (ie actual derivations)
- entering content manually into the Physics Derivation Graph
- searching for content (ie PDFs of derivations)
- converting found content (ie PDFs) to input for the Physics Derivation Graph
- checking the consistency of content in the Physics Derivation Graph
- rendering the content of the Physics Derivation Graph, ie using d3js or GraphViz

There are dependencies among these tasks. Also, there is an order for the tasks. Below I group and order the tasks.

Getting content is vital to the Physics Derivation Graph being useful.

- manually creating content (ie actual derivations)
- entering content manually into the Physics Derivation Graph
- searching for content (ie PDFs of derivations)
- converting found content (ie PDFs) to input for the Physics Derivation Graph

Before entering content into a computer, it makes sense to choose how to store the data

- representing expressions prettily -- ie Latex, MathJax, MathML (presentation)
- storing expressions meaningfully -- ie an Abstract Syntax Tree, MathML (content)
- converting between presentation and content

Once content exists, it would be useful to validate

- checking the consistency of content in the Physics Derivation Graph
- finding a Computer Algebra System capable of handling most of mathematical physics
- converting between non-proprietary content representation and a Computer Algebra System

Lastly, but no less important, how will consumers interact with the data?

- rendering the content of the Physics Derivation Graph, ie using d3js or GraphViz

## No comments:

## Post a Comment