Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Support for mark-as-deleted in acsets #831

Merged
merged 3 commits into from
Feb 7, 2024

Conversation

kris-brown
Copy link
Contributor

@kris-brown kris-brown commented Jul 17, 2023

This branch incorporates mark as deleted into Catlab. As was the case with VarACSets, the priority is getting support for hom search. Colimits would be the next natural thing to do. In the course of working on this, the problem of Catlab having it's own version of everything in ACSets (FinFunction machinery vs column + index machinery) was very painful.

There could be no difference in the data structure for a morphism between MaD ACSets if we just treat the data in position i of a FinFunction (when i has been deleted in the domain) as to-be-ignored.

Constructing the ACSetTransformation data structure (e.g. as the result of a hom search) posed a challenge, as the data gets validated in many ways which do not work when parts have been deleted.

There are many challenges in making colimits work. However, since AlgebraicRewriting has support for in-place colimits (for MaD ACSets), there is no need to integrate with the normal colimit infrastructure just yet.

@epatters epatters changed the title mark as deleted + homomorphism search Support for mark-as-deleted in acsets Jul 17, 2023
@kris-brown kris-brown self-assigned this Aug 30, 2023
Copy link
Member

@epatters epatters left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good! Just one question below.

src/categorical_algebra/CSets.jl Show resolved Hide resolved
@AlgebraicJulia AlgebraicJulia deleted a comment from github-actions bot Feb 6, 2024
Kris Brown added 2 commits February 6, 2024 16:00
in_bounds, fix is_natural, homsearch generic to dense/sparse

columns are used for sparse hom search as well as when initiating an ACSetTransformation with Dicts
is_monic for columns

sparsify, densify, trying to make columns behave like finfunctions

use FinFunctions even for MarkAsDeleted

tests are broken

more updates

hom search and acset transformations for mark as deleted

rem
@epatters epatters marked this pull request as ready for review February 7, 2024 18:34
Copy link
Member

@epatters epatters left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks Kris!

@epatters epatters merged commit f0680ef into AlgebraicJulia:main Feb 7, 2024
10 checks passed
@kris-brown kris-brown deleted the compat_markdeleted branch February 15, 2024 23:15
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants