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

Transformations between acsets involving only combinatorial data #806

Merged
merged 2 commits into from
Oct 3, 2023

Conversation

kris-brown
Copy link
Contributor

@kris-brown kris-brown commented Jun 14, 2023

By considering CSetTransformations between ACSets (where naturality is not demanded on attributes) we can obtain two sorts of practical constructions:

  1. A kind of "labeled CSet" where we can think of the attributes as functioning as labels
  2. A kind of limit construction for ACSets which acts purely on the combinatorial data. The apex can put whatever it wants for the attributes, but we can deliberately pick a representative of the isomorphism class to make it correspond to something meaningful (with valid ACSetTransformations), which Kevin has a nice categorical characterization of in an AlgebraicJulia blog post.

Implementation-wise, this means we want an abstract type of ACSetMorphism which is implemented by ACSetTransformation and CSetTransformation (therefore, this is changing the meaning of CSetTransformation, which before was an ACSetTransformation that happened to be on a schema with no attributes). There is probably a lot of functionality which is written for ACSetTransformation which would straightforwardly work for ACSetMorphism, but the minimal required functionality (e.g. dom, compose) for getting limits to work is all that is generalized for now.

It may be the case that we want something in between, where a subset of the attributes are marked to be ignored. This would give us a kind of "LACSets" - but we would then lose the ability to do #2 above, which I see as the real value of this.

Edit: I also addressed a tiny bug in the HomSearch code where monic and iso fast failure constraints were not being checked for the combinatorial Attr data.

@kris-brown kris-brown changed the title Pragmatic product of varacsets and a generalized stratification Abstracted product of varacsets and a generalized stratification Jun 21, 2023
@epatters epatters force-pushed the stratification branch 2 times, most recently from 8dbb553 to 4356d1d Compare July 20, 2023 16:40
@kris-brown kris-brown changed the title Abstracted product of varacsets and a generalized stratification Abstracted product of varacsets Jul 21, 2023
@kris-brown kris-brown changed the title Abstracted product of varacsets Category of ACSets and CSetTransformations Aug 24, 2023
@kris-brown kris-brown self-assigned this Aug 24, 2023
@AlgebraicJulia AlgebraicJulia deleted a comment from github-actions bot Oct 2, 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.

Very nice! I just left a few small comments.

src/categorical_algebra/CSets.jl Show resolved Hide resolved
src/categorical_algebra/CSets.jl Outdated Show resolved Hide resolved
src/categorical_algebra/CSets.jl Outdated Show resolved Hide resolved
src/categorical_algebra/CSets.jl Show resolved Hide resolved
@epatters epatters changed the title Category of ACSets and CSetTransformations Transformations between acsets involving only combinatorial data Oct 2, 2023
Kris Brown added 2 commits October 3, 2023 13:56
loose kwarg for product and terminal

example where distinguished object is not a leaf object

SigmaMigration can return a DiagramHom with components kwarg

master -> main

Pragmatic -> abstract

no stratify nor box product for now

CSetTransformations

cleanup

cascade effect of fixing homsearch bug

finish rebase
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 1874704 into AlgebraicJulia:main Oct 3, 2023
13 checks passed
@kris-brown kris-brown deleted the stratification branch October 3, 2023 23:44
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