AlgebraicJulia / AlgebraicJulia/AlgebraicABMs.jl

Specifying the essential identity of a match morphism

未關閉
#21 0 則留言 0 個 reaction 已指派 0 人 在 GitHub 檢視
主要語言
Julia
星號
10
分支
4
PR 合併指標
30 天內沒有已合併 PR

描述

A match morphism triggers an event to happen in the future. There is some ambiguity about what it means for that match to be "still existing" when that time comes around and it's time to fire the event. The current logic is very strict about this: there needs to exist a morphism $L\xrightarrow{m_{now}} X_{now}$ that is equal to the composite $L\xrightarrow{m_{past}}X_{past}\overset{update}{\nrightarrow} X_{now}$. This means that a rewrite rule, which merges two parallel edges and adds their weights together, will fail to fire if the target vertex is deleted and recreated in the intervening time. This may or may not be what you want; it depends on whether you consider the target of the edge to be constitutive of its identity.

Another example involves a door with a boolean attribute saying whether or not it's closed. Someone may be triggered to go through the door soon if the door is open, and if the door closes but reopens in the intervening time, we may wish that to be equivalent to the door having stayed open the whole time, rather than the clock deactivating when it closes and then being resampled when it reopens.

The right data for this is a subobject $L_{fix}\xhookrightarrow{fix} L$. However, CSet subobjects do not give us fine enough granularity to say "include the edge, but not its tgt vertex", thus we want a subobject in C-**Par**. Now the condition for the match still being valid is $fix;m_{now} = fix;m_{past};update$.

The current behavior would be that $L_{fix}$ is all of $L$'s combinatorial data, but none of its attribute data. This seems arbitrary. What is a sensible default for $L_{fix}$? I think when $L$ is specified via `@acset_colim`, the representables that are explicitly mentioned are great candidates for what belongs to $L_{fix}$.

Note: this change can only be made within AlgebraicRewriting.Incremental

貢獻指南

這個儲存庫沒有索引到貢獻指南

評估

這個 Issue 還沒有評估資料。

把新 issue 寄到你的電子郵件信箱

精選適合新手參與的 GitHub issue 摘要。