You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The @acset_colim macro is a beloved method of constructing individual ACSets. But, when people try to create rewrite rules, they need to specify a whole diagram of ACSets. After constructing the objects, they have lost the nice names they wrote down in the @acset_colim macro. The solution seems to be to use the @migration macro to directly specify the diagram. Something like:1
@migration(SchGraph, begin
L =>@joinbegin
(e1,e2)::Esrc(e2)==tgt(e1)
end
I =>@joinbegin
(e1,e2)::E
(v1,v2)::Vsrc(e1)==v2
end
R =>@joinbegin
e::Esrc(e)==tgt(e)
end
left::(I=>L)=>begin
e1 => e1
e2 => e1
v1 => v2
end
right::(I=>R)=>beginendend)
Here, the maps left and right are uniquely determined by these particular generators. A homomorphisms search with those values initialized would return exactly one morphism (for starters, anything else could throw an error).
Footnotes
Maybe this syntax isn't exactly compatible with @migration because it's defining the shape category at the same time. You could ignore the ::(I=>L) stuff and pretend we have a macro specific for the span diagram. It would be helpful, though for a syntax which lets you do the shape on the fly since we may have negative/positive application conditions as well as other sorts of morphisms showing up relevant to rewriting. ↩
The text was updated successfully, but these errors were encountered:
This functionality describing the mappings in terms of the descriptive names used by the user (e.g., introduced in @acset_colim invocations) would be very helpful for elevating the transparency of the rewrite rules which are central to our application of AlgebraicABMs & AlgebraicRewriting in our health models. Creation of such models is a central focus of the ABM hackathon currently underway, and we will -- further -- be making a major investment in creating such models for my semester-long course on applying these tools to health modeling in Fall 2024.
The
@acset_colim
macro is a beloved method of constructing individual ACSets. But, when people try to create rewrite rules, they need to specify a whole diagram of ACSets. After constructing the objects, they have lost the nice names they wrote down in the@acset_colim
macro. The solution seems to be to use the@migration
macro to directly specify the diagram. Something like:1Here, the maps
left
andright
are uniquely determined by these particular generators. Ahomomorphisms
search with those values initialized would return exactly one morphism (for starters, anything else could throw an error).Footnotes
Maybe this syntax isn't exactly compatible with
@migration
because it's defining the shape category at the same time. You could ignore the::(I=>L)
stuff and pretend we have a macro specific for the span diagram. It would be helpful, though for a syntax which lets you do the shape on the fly since we may have negative/positive application conditions as well as other sorts of morphisms showing up relevant to rewriting. ↩The text was updated successfully, but these errors were encountered: