AlgebraicJulia / AlgebraicJulia/Catlab.jl
Standard library of ACT applications
- Linguagem predominante
- Julia
- Estrelas
- 724
- Forks
- 73
- Métricas de merge de PRs
- Nenhum PR com merge em 30d
Descrição
When we talked about a standard library of prebuilt functionality for Catlab, we talked about a module for linear algebra (#65). I think this issue could serve as a collection point for what to put in that standard library. Here are some of the examples that make sense to me:
1. LinAlg: describing linear relations with graphical linear algebra
2. MarkovProcesses and Circuits: anything in CS that you can represent with graphs probably forms a category of decorated cospans https://aip.scitation.org/doi/pdf/10.1063/1.4941578?class=pdf
3. Relational Ologs: describe arbitrary knowledge with FreeBicatRel
4. Process Planning: objects are physical objects and morphisms are arbitrary processes (https://doi.org/10.1016/j.compind.2019.103124) (ex. kitchen processes)
I guess for each component of the library we should have a doctrine, an instance, some examples, and a function that computes something interesting about a morphism functorially.
1. LinAlg: solve systems of equations by computing matvec functorially
2. MarkovProcesses: solve for equilibrium (stationary distribution)
3. RelationalOlog: generate a DB schema / knowledge graph to represent information
4. Process Planning: compute plan refinements with pushouts
@epatters do you see any other good examples?
Guia de contribuição
Avaliação
Esta issue ainda não foi avaliada.