AlgebraicJulia / AlgebraicJulia/Catlab.jl

Calculating hom-sets from a presentation of an SMC

オープン
#80 コメント 1 件 リアクション 0 件 担当者 0 名 GitHub で見る
enhancement
主要言語
Julia
スター
724
フォーク
73
PR マージ指標
30日以内にマージされた PR はありません

説明

If I had a presentation of a free category C, and someone told me two objects X,Y in Ob(C), could I characterize Hom(X,Y) with an algorithm? Could I calculate the "simplest" element of Hom(X,Y) with some shortest path algorithm?

In the case of the kitchen category example

```julia
@presentation Kitchen(FreeCategory) begin
crust::Ob
lemon::Ob
butter::Ob
sugar::Ob
egg::Ob
yolk::Ob
white::Ob
lemonfilling::Ob
meringue::Ob
unbakedlemonpie::Ob
unbakedpie::Ob

separate::Hom(egg, otimes(yolk, white))
make_lemonfilling::Hom(otimes(lemon, butter, sugar), lemonfilling)
make_meringue::Hom(otimes(white, sugar), meringue)
fill_crust::Hom(lemonfilling, unbakedlemonpie)
add_meringue::Hom(otimes(unbakedlemonpie, meringue), unbakedpie)
end
```

If I tell you that I have `otimes(crust, lemon, butter, sugar, egg, sugar)` and that I want an `unbakedpie`, can you algorithmically discover the recipe?

コントリビューションガイド

コントリビューションガイドを開く

評価

この issue はまだ評価されていません。

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。