AlgebraicJulia / AlgebraicJulia/ACSets.jl
Morphisms between atttribute types in acset schema
- Lenguaje dominante
- Julia
- Estrellas
- 36
- Forks
- 11
- Métricas de merge de PR
- Sin PR fusionados en 30 d
Descripción
The category of attributes in the schema is assumed to be discrete, but it would helpful to allow the specification of morphisms.
For example, the schema for a free diagram is currently as defined:
```julia
@present TheoryFreeDiagram <: TheoryGraph begin
Ob::AttrType
Hom::AttrType
ob::Attr(V,Ob)
hom::Attr(E,Hom)
end
```
Since a free diagram is supposed to be a functor out of a freely generated category, it would be better to have:
```julia
@present TheoryFreeDiagram <: TheoryGraph begin
Ob::AttrType
Hom::AttrType
dom::AttrHom(Hom,Ob)
codom::AttrHom(Hom,Ob)
ob::Attr(V,Ob)
hom::Attr(E,Hom)
compose(src, ob) == compose(hom, dom)
compose(tgt, ob) == compose(hom, codom)
end
```
The intended interpretation is that whatever Julia types instantiate `Ob` and `Hom` should have methods `dom(::Hom)::Ob` and `codom(::Hom)::Ob` and then the instance data should satisfy the two equations.
At least to start with, this feature would be for documentation/specification purposes and would not provide any new functionality. Thoughts on this, @olynch?
Guía de contribución
No hay ninguna guía de contribución indexada para este repositorio
Evaluación
Este issue todavía no se ha evaluado.