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

Splitting idempotents #1105

Merged
merged 55 commits into from
Apr 17, 2024
Merged

Splitting idempotents #1105

merged 55 commits into from
Apr 17, 2024

Conversation

fredrik-bakke
Copy link
Collaborator

@fredrik-bakke fredrik-bakke commented Mar 30, 2024

Summary

  • Retracts of a type
    • Define retracts of a type
    • Characterize equality of retracts
  • Weakly constant maps
    • The type of fixed points of weakly constant maps is a proposition
  • Idempotent maps
    • Rename "preidempotent maps" to "idempotent maps". This mirrors how we treat "invertible maps" vs "coherently invertible maps", although there is an essential difference between the two concepts: idempotent maps are not "coherentifiable" like invertible maps. That role is taken by "quasicoherently idempotent maps" instead.
  • Quasicoherently idempotent maps (called "quasiidempotent maps" in [Shu17])
    • Define quasicoherently idempotent maps
    • Quasicoherently idempotent maps are closed under homotopy (without funext)
  • Split idempotent maps
    • Define split idempotent maps
    • Split idempotent maps are quasicoherently idempotent
    • Idempotent maps on sets split
    • Weakly constant idempotent maps split
    • Quasicoherently idempotent maps split
  • Retracts of small types are small

Work towards #1103.

@fredrik-bakke
Copy link
Collaborator Author

Since I won't be able to finish this PR before I leave tomorrow, let me write down some thoughts here for when I pick this up again.

  • It remains to show that is-split-idempotent-map f is a retract of is-quasiidempotent-map f
  • The splitting of this retract gives us an infinitely coherent definition of idempotent maps.

It's sensible to make a new file for infinitely coherent idempotent maps, but then one may ask if the proof that quasiidempotents split fits better in that file. There is also a question of whether we want more agda-unimath like names for is-preidempotent and is-quasiidempontent. My initial suggestions would be is-idempotent for the former, mirroring e.g. is-involution which is not coherent either, and is-quasicoherent-idempotent for the latter.

  • I should also write informal proofs for the main results, and this shouldn't be difficult.
  • Remark on the explicit counter-examples given in the paper.

Any other nice and easy consequences of this formalization?

@fredrik-bakke
Copy link
Collaborator Author

I also need to verify that the diagrams render properly

@fredrik-bakke fredrik-bakke changed the title Idempotent maps Split idempotent maps Mar 31, 2024
@fredrik-bakke
Copy link
Collaborator Author

To partition this work up a bit, I may aim to formalize fully coherent idempotents in a subsequent PR. It still remains to tidy up this PR before it is ready for review, however.

Copy link
Collaborator

@EgbertRijke EgbertRijke left a comment

Choose a reason for hiding this comment

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

This is a very nice pull request, with many excellent new additions. Thank you so much for making this effort Fredrik!

Copy link
Contributor

@tomdjong tomdjong 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 to see this formalized, @fredrik-bakke!

src/foundation/quasicoherently-idempotent-maps.lagda.md Outdated Show resolved Hide resolved
src/foundation/quasicoherently-idempotent-maps.lagda.md Outdated Show resolved Hide resolved
src/foundation/quasicoherently-idempotent-maps.lagda.md Outdated Show resolved Hide resolved
src/foundation/split-idempotent-maps.lagda.md Outdated Show resolved Hide resolved
src/foundation/split-idempotent-maps.lagda.md Show resolved Hide resolved
@fredrik-bakke fredrik-bakke changed the title Split idempotent maps Splitting idempotent maps Apr 15, 2024
@fredrik-bakke fredrik-bakke changed the title Splitting idempotent maps Splitting idempotents Apr 17, 2024
@fredrik-bakke
Copy link
Collaborator Author

Is this PR ready to merge? I can formalize the counter-example in a subsequent PR thanks to #1115

@EgbertRijke
Copy link
Collaborator

Is this PR ready to merge? I can formalize the counter-example in a subsequent PR thanks to #1115

Great work, I'll turn on the auto-merge

@EgbertRijke EgbertRijke enabled auto-merge (squash) April 17, 2024 10:44
@EgbertRijke EgbertRijke merged commit f4400b1 into UniMath:master Apr 17, 2024
4 checks passed
EgbertRijke pushed a commit that referenced this pull request Jun 4, 2024
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.

None yet

3 participants