-
Notifications
You must be signed in to change notification settings - Fork 42
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
Modular Group as a mutual inductive type #214
base: master
Are you sure you want to change the base?
Conversation
Thanks. I'll ask @UlrikBuchholtz to help to review this. |
Thank you! |
Here are some requests and suggestions before @UlrikBuchholtz completes his review:
Thanks! |
I will be working on this! Thanks. |
Maybe the directory |
Two things:
|
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Just to make official what I requested before: please state and prove the universal property before we review this in more detail. Thanks.
just to update you on the status, I've started work on this. so far I've defined an induction principle based on generators S and T (T being defined as SR, which reduces to T in this representation). I've used it to define a function from Group PSL2Z to an arbitrary group, and it has the requisite is-hom properties. For fun I also defined one by case matching instead of the induction function and shown functional equivalence between the two. I am now where I must prove uniqueness, and this is the point where I have to become clever because I am actively expanding my knowledge at this stage. I'll submit a force push when its ready. |
I wonder if there has been any progress regarding the work of this PR. |
Yes I will submit an update by this week |
Wanted to give a quick update, I did a lot of refactoring of my Universal Property file, I am currently running into an issue when I assume an arbitrary hom |
Sure, you can update the PR! |
Any updates on this @lane-core? |
Hi @martinescardo, I realize I've left this PR open even after promising to complete the required revisions; I hope that you won't mind the length of what follows, but I want to write a thoughtful summary of my experience and what my endeavors eventually led to, which I hope explains and mitigates my considerable absence somewhat. Don't think for a moment I wasn't appreciative that you were interested in reviewing this contribution. Rather I hope you'll agree with me that that the path I was led onto will be much more fruitful for any future contributions I might submit towards your consideration in the long run; I am deeply interested in your thoughts on the below, specifically towards the end, because I am aware of work of yours that touches upon exact real arithmetic, and I've been able to surmise some interesting connections here due to my idiosyncratic journey in this subject. To summarize where I left off working on this PR: my difficulty began when I found that I could prove most of the cases required to show an equivalence between types, except for the base case, where I had hit a wall. I had proven a lemma of the form:
I had shown that the homomorphism between the group characterized by the generators
I found certain difficulty. I had chosen an unfortunate approach, which was to try to derive straightaway that
where the special character letters are functions encoding left-composition of their corresponding symbols in the generic group. The snag was: due to my choice of having two base unit constructors in my type, namely I was not satisfied with an immediate solution however. I saw that my hack-and-slash adventures with type theory had reached a limit, and that it was better for me to digest a more sophisticated approach to the subject. Namely, catching up to the big ideas in univalent mathematics and to thoroughly digest the fundamentals of homotopy type theory beyond elementary DTT, which has been enriching, illuminating, and deeply fascinating. An important and influential line of investigation on my part has come from attempting to understand certain constructions from graphical theories of computation, specifically the school of Lafont, Mazza, and so on, applying thinking from HoTT in this domain in relation to the new potential interpretations given to the aspects of proof theory that these graphical methods generalize. This has been a fruitful and lively avenue for me to investigate, and it is currently leading me towards an exploration of Braided/Ribbon categories in particular. As I began to imagine the possible ways to investigate my current focus of research, I was reminded me of this pull request. I observed that this construction as an instructive and elementary example that will benefit from a certain approach I've stumbled onto. This week I will recode this set of modules, and soon after I'll continue onto Hecke Groups-- specifically because the notion of a mutually inductive type generating a universe of elements by constructors formed with vectors ( Forgive me if I am just rediscovering some observation in a paper I don't know of yet, in which case, kindly point me to that direction if anything comes to mind, but I'd share my current thinking on this specifically to see if anything comes to mind for you: I believe there is a way to interpret Hecke groups that offers illuminating analogies for fundamental concerns in type-theoretic semantics, and can serve to connect this field to the rich literature on Modular/Hecke groups. To start with, lets examine the action of S, and consider this thought experiment: we begin by interpreting
While S^2 is observationally equivalent to id from the perspective of the signal traversing the wire, in the ambient context one can strictly distinguish a signal traversing this pathway's twists from that path taking no twists. We achieve a return to the original identity by the time we reach S^4 if we interpret S^3 as an application of an unraveling where we pull the wire back and under, and do so again at S^4 such that we are left with a pair of parallel wires; this now expresses There is a degree of subtlety for how to characterize the action of ST in this interpretation. I believe the answer lies in interpreting the fact that elements of Hecke group For simplification of this interpretation, let's return to the Modular Group case (PSL2Z). In the Monoid composed by these group elements, each of the words actually demarcates a specific linear path taken through this chain of composed elements, which are interpreted here by string diagrams expressing braidings/permutation sets between the elements of C2*C3 formed by unique compositions of Under this interpretation, we see very well why we can form a canonical presentation of elements in PSL2Z: because the twists/braidings are in a 2d space, there is only one way to arrive at a given word which expresses a specific path comprised of various twists and untwists along these mutually paramaterized diagrams, and this is exactly why the composable words in PSL2Z can be shown to form a set. Whereas, I conjecture based on the immediate implication of this characterization I've presented, SL2Z may be most elegantly presented by a type that forms a higher hlevel than a set, because there are a number of distinct presentations in the monoid corresponding to the 'same sort' of semantic object. This is due to the fact that its twists are formed in a 3d space in contrast, such that there are multiple nontrivial paths to the same 'state' or semantic element. In other words, we can place each word in an equivalence class of semantic elements (and it is these equivalence classes which form the set given by the group SL2Z). Each of the elements of the equivalence class is related by an invariant property, and one may arrive at some representative within this equivalence class beginning from any root word. Put another way: the number of ways that The richer structure of SL2Z a propos PSL2Z is due to the fact that one has multiple pathways to each of these classes beginning from any specific state. This multiplicity is necessitated because the action of elements in SL2Z specifically serves to braid the wires in such a way that they cannot be untangled unless one applies an on-the-nose inverse to undo the actions that led to the state presented by a given word in SL2Z. I consider it analogous to how one can compute arithmetic operations between any particular element of the integers in the arithmetic defined by the equivalence class construction, no matter what particular representation within each equivalence class one chooses, but in a strict sense one distinguishes between It's exactly why we can characterize any path with a unique matrix: the integer entries of this matrix are themselves interpretable as representatives of an equivalence class, so we have a family of matrices of the form I'd rather draw your attention to this: this analogy suggests that we can characterize PSL2Z as the set truncation of SL2Z in the univalent sense. It also has the benefit of relating this family of Hecke groups deeply to the graphical theories I mentioned earlier; in fact, under this interpretation you'd have that certain PROs present a sort of 'degenerate' case of Hecke Groups, because, for example, in interaction nets we can characterize the diagram generated by elementary commutation rewrite rule of the interaction of opposite nodes as a function composed by the parallel composition Given the above meditation I am tempted to begin straightaway with formalizing Hecke groups under the lines I've indicated above, refactoring my presentation the modular group as a specific case in which I apply general lemmas from the former. So consider that I am resuming work on this PR, but I'm curious about your thoughts on the above given the realms I know your work has explored in the past and presently as well. Specifically, I wonder if you might discern some relation to your work on Discrete Graphic Monoids that I saw in the repo. Finally, thank you for reading this comment, which turned out to be much longer than I initially expected. |
Thanks for the discussion. I am happy for you to take the approach you suggest, if you think it will be more fruitful. I am pinging @UlrikBuchholtz in case he has something to remark about this. |
This is a construction of the Modular Group PSL2(Z) utilizing a mutual inductive type. I will quote from the preamble of the Type declaration to contextualize the formalization presented here. This will serve as a base for future modules I will be adding to this folder.