 Hi, everyone. Thanks for making it out again to the dispute seminar. This week we have Michael Levitt from the University of Colorado Boulder, and he'll be speaking about the WL algorithm for group isomorphism. Take this away. So today I'll be talking about vice-filer layman for group isomorphism, and we'll be looking specifically at action compatibility. And this is joint work with Josh Grouchow. So first let me define the group isomorphism problem. So we take his input two finite groups, and these groups are given by their multiplication tables. So we have all of our elements in hand, we have all of their products in hand, and effectively all of the relations are pre-computed so that we don't have to worry about any pesky undecidability issues. The question now is, given these two groups G and H, are they isomorphic? The complexity of the group isomorphism problem is really a long-standing open problem. Dating back to the 70s, Tarjan observed that every group of order N has a generating set of size log N, and this gives rise to a brute force algorithm known as generator enumeration. So we compute a generating set for G. We look at all the ways we can map it into H, and we ask if any of those maps extend to an isomorphism. The end of the log N bound has really gone unscathed, and the only real improvement we've seen is in 2013, where Rosenbaum and Wagner observed that we can do the same sort of trick using composition series, rather than group elements. And using composition series enumeration they got a quadratic speed up. So they were able to put a one half in the exponent. And Rosenbaum developed this bidirectional collision technique that improved the runtime to roughly end of the one fourth log N. And this is really state of the art for what we know how to do for group isomorphism in general. Now, when we don't know how to attack the problem in general, the natural thing to try is let's look at special cases. In the last 10 to 12 years that's really been the focus on the group isomorphism literature is what are motivated families of groups, and can we solve the isomorphism problem in polynomial time. And we've had quite a bit of success. And effectively the key idea is to identify algebraic structure or group theoretic structure, and then to try and develop algorithms to check that structure. So a lot of the approaches are very algebraic in nature, they use tools from linear algebra from representation theory from group co homology. And it's also worth pointing out that even for these cases we do know how to solve efficiently, we do not have any sort of unifying framework or unifying algorithm questions about the algorithmic balance. The group isomorphism problem is also very motivated by its connections to graph isomorphism group isomorphism is a key barrier to placing graph isomorphism into P. It's well known that group isomorphism is polynomial time reducible to graph isomorphism. Given a Kaley table, we can construct a graph, a corresponding graph and polynomial time. And that's when we look at more stringent reductions. So when we look at these much weaker AC zero reductions, we can actually separate out graph isomorphism from group isomorphism. So that is when we zoom in with a microscope, we can really see a difference between these two problems. And there's a lot of complexity theoretic evidence that graph isomorphism is not NP complete, and therefore group isomorphism is unlikely to be NP complete. And bringing it back to the algorithmic side, bubby's quasi polynomial time graph isomorphism procedure runs in time roughly end of the log squared, and this is quite close to the end to the log and bound for group isomorphism. This brings us to really a motivating question. Why consider combinatorial tools for group isomorphism will first recall from a couple slides ago that group isomorphism algorithms tend to really focus on algebraic techniques. That is combinatorial techniques really haven't been tried. Basically, since group isomorphism is easier than graph isomorphism under these AC zero reductions. It's very natural to ask whether we can adapt techniques from graph isomorphism to the setting of groups. And vice filer layman really is the key combinatorial tool that subsumes all combinatorial approaches for graph isomorphism, and is used in basically every state of the art algorithm, both on the theoretical and the practical side. So if you're looking at practical implementations for graph isomorphism tests. This is basically some flavor of vice filer layman. So let's look at how the vice filer layman algorithm works for graphs. So for graph G, and an integer K at least to the K dimensional vice filer layman algorithm works by first initially coloring the K tuples of vertices, according to their marked isomorphism type. So if you're looking to K tuples, you and V received the same initial color, if they induce an isomorphic sub graph. And we don't go looking for the isomorphism we asked for a very specific app. Does the map sending UI to VI extend to an isomorphism of the induced sub graphs. So if the answer is yes, modular the second technical condition at the bottom, then you and V received the same color. And if the answer is no, they receive different initial colors, questions about the initial coloring for vice filer layman. So now for the refinement stage, we take the coloring computed around our minus one, and we use that to produce a coloring around our. We look at the color of you around our, we look at the color that you received around our minus one. And we look at the colors assigned around our minus one of the nearby K tuples. And when I say nearby, I mean hamming distance one. So the picture I really have in my head about vice filer layman is that it manages implicitly this generalized hyper cube structure. So K tuples is the vertices to K tuples are adjacent, if they have hamming distance one. The coloring assigned to the K tuple you looks at its closed distance one neighborhood on this implicit graph questions about that. Now this coloring induces a partition on the K tuples. And the algorithm terminates when this partition is not refined. By the K w l algorithm runs in polynomial time. And more interestingly, at least to me, Rocky and verbitsky observed that vice filer layman can be effectively parallelized. So each iteration can be implemented with what's called a TC zero circuit. And this is a constant depth Boolean circuit with counting gates. And the key idea is that if we can control the number of iterations, then we might be able to obtain improved complexity theoretic upper bounds for complexity classes within P. So for our work to foreshadow a little bit. We'll show that vice filer layman only needs a constant number of rounds. And so we really do obtain TC zero isomorphism tests. And from some perspective, not only does TC zero sit within P TC zero sits within log space. And when we think about log space complete problems for log space are really algorithmic problems on trees, given a graph is the graph a tree. That's log space complete. Given two trees, are they isomorphic. That's another log space complete problem. So for the groups we'll consider, and some of them have quite involved structure. We're actually obtaining TC zero upper bounds. And so the isomorphism problems for these families of groups are actually easier than dealing with traits. Now, already on graphs, by spiraling on on its own has been pretty successful. So for instance, by spiraling on identifies and polynomial time graphs with bounded genus graphs with forbidden liners and graphs of bounded tree way. And these are pretty big families of graphs. Additionally, by by incorporates log and dimensional by spiraling on in combination with permutation group algorithms to obtain his quasi polynomial time isomorphism test. Given the success by spiraling on it's very natural to ask, can this solve graph isomorphism in polynomial time do combinatorial techniques suffice to solve graph isomorphism. Here and emmerman gave a very resounding answer of no. And they gave an infinite family of counter examples at where linear dimensional by spider blame on is required. IE w requires time roughly end of the end to distinguish these graphs. And interestingly enough, these counter examples have max degree for. So we've already the group theoretic techniques of the by and lux yield a polynomial time isomorphism test. And the real intuition here is that combinatorial techniques are insufficient to resolve graph isomorphism, and we really need group theoretic techniques questions so far. So we've introduced the vice father layman algorithm for graphs. And I want to turn to talking about how this is adapted to the setting of groups. So very recently, Rachter and Schweitzer introduced three variants of WL for groups. We use their third version, which works as follows. We take the multiplication table for a group, and we encoded as a graph. So this is really a complexity theoretic reduction to groups or isomorphic, if and only if the corresponding graphs are isomorphic. We've run WL, the graph version of WL on these resulting graphs, and we pull back the coloring to the K tuples of group elements. So for a group of order and the reduction has a blow up. So for a group of order and the graph has roughly n squared vertices. And so in terms of the runtime, we see a little bit of a blow up. But this runtime is still polynomial time computable. So we don't have to worry that the reduction is not only polynomial time computable, but the reduction is efficiently computable in parallel. So we don't have to worry about the reduction being a barrier to our complexity goals, either for polynomial time isomorphism tests, or for TC zero isomorphism tests. So for a group of order n, given a group of order n, we construct a corresponding graph gamma sub G as follows. First, every group element gets its own vertex. Then, once we have the group element vertices, we add in these multiplication gadgets to encode the relation G times H. So for every ordered pair, we have a multiplication gadget to encode this relation. So if we're dedicated, really the thing to zero in on is this multiplication gadget. So for group elements G H, and the product G times H, we add in these four new vertices. And this encodes the group multiplication. So I'll give everyone a second to stare. So now that we have a sense of at a high level. How does vice filer layman work, both in the setting of graphs and groups. So this really, how do we show that by spider layman distinguishes two groups or two graphs, analyzing this iterative color refinement procedure outright is, I think very cumbersome and not very intuitive. And this really brings us back to the CFI paper. So their second big contribution is they characterized by spider layman in terms of tools from logic. So KW well run for our iterations is equivalent to an R round K plus one pebble game. And this pebble game is really going to be our workhorse to analyze by spider layman. The other equivalents is in terms of this K plus one variable fragment. So K plus one with quantifier depth are. This is basically first order logic with the addition of counting quantifiers. So while the pebble game is our workhorse, our tool, the characterization in terms of these logics is really nice because it ties back to a different field descriptive complexity theory. And the goal of descriptive complexity theory is to write down succinct logical formulas that identify a given object. And as a result of side for Aaron Emmerman, we now have a connection between isomorphism testing and descriptive complexity theory. So what I want to do now is I really want to look at the pebble game, and the pebble game will allow us to determine the vice father layman dimension. This is the K as in KW well. And this will also allow us to control the number of iterations or the number of rounds the algorithm requires. In the pebble game we take as input two graphs gamma one and gamma two, and we have two players spoiler and duplicator spoilers goal is to show that these two graphs are not isomorphic. And duplicators goal is to match or to duplicate the structure and one graph that spoiler highlights in the other. So if gamma one and gamma two are our graphs, the game works as follows. First, spoiler picks up a pair of pebbles. These could be unused pebbles, these pebbles could be on vertices. One spoiler has these pebbles in hand, we check the winning condition. We look at the pebbles on the vertices. We look at the map induced by the pebbles, and we ask, is this map and isomorphism of the induced sub graphs. The answer is yes. Duplicator has one at the given round. If the answer is no, then spoiler has one. Once we check the winning condition, duplicator selects a bijection on the vertices and spoiler picks a pebble pebbles that vertex and pebbles its image under this new bijection. And we'll see an example in a little bit. So since vice father layman version three creates graphs and runs graph w well. This pebble game on graphs is the exact pebble game that we use to analyze the groups. Now, for vice father layman version three. And this is really the powerful thing about vice father layman version three. This is really what drew me to look at vice father layman version three. So if we go back to the multiplication gadget. If spoiler places a pebble on a and a maps to a corresponding a in a different multiplication gadget, then effectively what's what spoiler has done is spoiler has nailed down G and H for future rounds. Basically, by pebbling a non group element vertex of a multiplication gadget, spoiler can nail down to group elements at once. And if we're trying to point out an action and compatibility, being able to nail down to group elements at once is very powerful when developing the strategy. So spoiler implicitly pebbles a non group element vertex of a multiplication gadget, if G and H map to f of G and f of H at subsequent bijections duplicator has to fix both of these. This is not powerful enough to point out a homomorphism failure, because at the next round duplicator can just fix and fix any sort of homomorphism incompatibility on G and H. So it sends the product G times H to f of G times f of H, but implicit pebbling is powerful enough to nail down G and H outright at future rounds. So Raktor and Schweitzer refer to this as implicit pebbling. And again, this is really for me, the key selling point of vice five of lame on version three. So the other real contribution from Raktor and Schweitzer for WL version three is they effectively show, we don't really have to think about the graphs, we can just think about the groups. And they developed a key lemma that basically says the following. Duplicator has to send group element vertices to group element vertices. So set wise, we have to send G to H. Furthermore, duplicator must select bijections that respect the group structure on the pebbled elements. Otherwise, spoiler can win very quickly with two additional pebbles and four additional rounds. So again, we can ignore the graph and we can really think about the group theory. And effectively we have a pebble game that maps group elements to group elements and spoiler can pebble at most two group elements at a single route. Now spoilers goal is to pebble group elements so that the induced map is not an isomorphism of the generated subgroups. This is spoilers really big overarching goal. Questions. Now in the setting of graphs, graphs really have this well defined notion of distance whereas groups do not. Additionally, these graphs that by spider layman version three produces are very very symmetric. They don't have a large diameter. So thinking about graph distance really isn't useful to start nailing down structure. At this level, spoiler needs to look at the groups and figure out how to lay a few pebbles down to anchor down some group structure. So anchor points for me are very big intuition for the initial strategy from spoiler. And spoiler wants to really force duplicator into the following duplicator can either start by selecting nice bijections. Or if duplicator does not select these nice bijections spoiler wins very quickly. Nice is going to be very subjective in terms of the groups we're looking at but at a high level. We want to force duplicator to select nicely behaved bijections. If the duplicator starts selecting these nice nice bijections spoiler wants to exploit them in some way to lay down a few additional pebbles, such that the map induced by the pebbled elements is not a nice amorphism of the generated subgroups. Once we have that we swing the Brochter Schweitzer lemma as a black box. And so spoiler can win with two more pebbles and four more rounds. So let's look at the high level about spoilers strategy. So let's turn to showing that vice by the layman serves as an isomorphism test. And the first family I want to consider our ability in groups. So on the way to showing that WL identifies ability in groups. We want to first show that WL has to respect cyclic subgroups. E, if duplicator does a bad thing by not restricting to an isomorphism on a cyclic subgroup, spoiler can win very quickly. And we control four pebbles and six rounds. So if duplicator does not select does not respect cyclic groups, then for some element G, this equation at the first bullet point does not hold. So G to the I does not does not map to F of G raised to the I spoiler can nail down both the generator and this incompatibility with a single pebble by implicitly pebbling. Now intuitively at this point we should be done, but to use the Brochter Schweitzer lemma, we need two pebbles to be in play. And so the spoiler places one additional pebble on the board. And now spoiler wins by using the Brochter Schweitzer lemma as a black box. Questions about this first lemma. So now we want to turn to looking at a billion groups. And our goal is to show that three dimensional by spoiler layman identifies ability in groups and six rounds. Now recall since we have three WL, we have four pebbles in our couple game. So if G is a finite ability in group and H is not isomorphic, we have two cases. In this case, we want to distinguish an abelian group from a non abelian group. Now if H is non abelian, H has two non commuting elements, spoiler implicitly pebbles to such elements and their pre images and G. Again at this point, intuitively we're done, but we need to pebbles on the board. And so spoiler pebbles one other element. It may as well be a times B. So that's one of this. In the case when H is not abelian spoiler wins by the Brochter Schweitzer lemma. Questions about how abelian groups distinguish how WL distinguishes abelian groups from non abelian groups. So now suppose that G and H are both abelian. The isomorphism and variants were abelian groups are the order multi sets. So we look at all of the elements, we look at the orders of each element and we take those multi sets and pair them. So if G and H are non isomorphic abelian groups, they have to have different order multi sets. Recall that the order of an element is the size of the cyclic group it generates. So if G and H have different order multi sets, there is no feasible way the duplicator can preserve cyclic groups. So in this case, spoiler wins by our previous lemma. So the real takeaway here is this corollary we obtain group isomorphism for abelian groups, we obtain a TC zero upper bound. And this is basically the first improvement on the complexity of abelian group isomorphism in about 10 years. In 2007, Cavitha gave what I consider our algorithmic upper bound, a linear time algorithm. On the other hand in 2011, we have this spunky looking upper bound log space, as well as TC zero FOLL. Now recall that TC zero is contained within L. And so we already obtained an improvement here. So inside this TC zero FOLL bound. The key idea is that FOLL circuits can compute orders of elements, but FOLL circuits are not powerful enough to count. And that's why we have this TC zero circuit at the end to compare the order multi sets. So the improvement here is that we get rid of this FOLL circuit to compute the order multi sets. We also obtained results for a more general family of groups, namely co prime extensions, where the normal whole subgroup and is abelian. The complement has a bounded number of generators. In 2011, Charles Sarma and Tang gave a polynomial time algorithm for this family of groups. And we obtain that a similar result using vice filer blame on, and we only need a constant number of rounds. So for this family of co prime extensions, we improve also improve the complexity theoretic upper bound from P to TC zero. And here, recall that semi direct products are determined up to isomorphism by the factors H and N, as well as the conjugation action of H on that. So for the remainder of this talk, I want to focus on a more complicated family of groups which we call semi simple groups. semi simple groups are those with no abelian normal subgroups. And when I phrase it that way, semi simple groups sound a little bit esoteric. Why do we care about these things. The main characterization is that semi simple groups have a trivial radical, the solvable radical is trivial. Now for any groups, for any group G, G modulo the radical is semi simple. So this really gives us a thrust towards thinking about solvable groups, which are believed to be the hard case for group isomorphism. If we can deal with solvable groups, if we can deal with the semi simple quotient, then what's left is to figure out how to glue them back together to get G. And so what we're really handling is the semi simple question. Now to even put semi simple groups into P, what took a series of two papers. In the second paper, but by code and audience child looked at this complicated twisted code equivalence problem. So we look at permutational equivalence of of codes, and then we look at substituting characters at the end. And they gave an efficient algorithm in the order of the group to detect the action of G on a specific characteristic subgroup, namely the cycle. Another contribution is to show that vice father layman can identify semi simple groups in a constant number of rounds, ie vice father layman can really detect this conjugation action of G on the cycle. So again, this improves our complexity theoretic upper bound from P to TC zero. And in this document that while we did not attempt to optimize these constants, we're really thinking four or five dimensional vice father layman, and we're thinking about maybe 10 iterations. So to begin, let me define the cycle. The cycle is the subgroup generated by the minimal normal subgroups of G. Since minimal normals commute, and by minimality, they have trivial intersection. So the cycle is really the direct product of our minimal normal subgroups. Now for a semi simple group. The cycle does not contain any abelian factors. And so the cycle really decomposes as a direct product of non abelian simple groups. The semi simple groups are determined up to isomorphism by two things. The first is the isomorphism class of the cycle. And two is the conjugation action of G on these non abelian direct factors. And for brevity, when I, I'll probably just start calling these direct factors, but I mean non abelian simple direct factors. Now the conjugation action on the direct factors of the cycle can do a few things. The first is that it can promote the simple factors. And here, the minimal normal subgroups are the orbits. The conjugation action can act by automorphism on individual simple factors by moving the elements around inside, or it can do both at the same time. And here's my intuition for this. We really think about these direct factors as plates. And we really think about the elements in a given direct factor as cookies on the plate. The conjugation action moves around the plates. It can move around the cookies on individual plates, or it can do both at the same time. So to understand this action we really wanted to be thinking about how do we detect moving around the plates. How do we detect moving around the cookies. And this comes at a high level about that intuition. So for semi simple groups, we asked first, is there an isomorphism of the circles. If so, such an isomorphism extends in it most one way to an isomorphism of the groups. And if F does not extend to an isomorphism of the groups, then the conjugation action of G on the cycle is not compatible with IE. The answer to the question of how you're here is equivalent to action and compatibility. So for a pebbling strategy, we really need to address three key bullets. First, can WL distinguish semi simple groups from non semi simple groups. So the short answer here is yes. For the, for the sake of time and the purposes of this talk, I will not go into details about the first bullet point. The takeaway here is that we can now restrict attention and assume that she and age are semi simple for the rest of the talk. So we're dealing with two semi simple groups. So the next, the next bullet to address. Spoiler wants to force duplicator to select nice bijections. And what we mean by a nice bijection here is that these bijections are isomorphisms of the cycle. So whether if the circles are not isomorphic, then this will be taken care of in the second bullet point. And once we have an isomorphism of the circles, it remains to check action compatibility. So that's our high level of pressure. So our first call, we want to force duplicator to select bijections that restrict isomorphisms of the circles. So let's recall a few facts about the cycle and simple groups. So the direct factors of the cycle are characteristic assets. And basically what this means is if I take two direct factors, their direct product does not pick up any additional direct factors of the cycle. This is very different than the case with vector spaces. So consider a two dimensional vector space, where my basis vectors are the x and the y axis. Think about the number of one dimensional subspaces we pick up that are neither the x axis, nor the y axis. This does not happen with the non-abelian direct factors of the cycle. And this is something we will very much exploit in our pebbling strategy. Questions. So our first goal is effectively to show that duplicator has to preserve weight. Well, since the direct factors are characteristic assets, we have this well defined notion of weight. So for a given element of the cycle, write S in terms of its direct factor decomposition. So S can be written as a product of elements where little SI belongs to the direct factor big SI. And the weight of S is the number of non-trivial SIs. Basically this is hamming weight. So we first show that duplicator one has to map the cycle to the cycle, and this is a set-wise map. This is not an isomorphism. And we also have to show that we also show that duplicator has to preserve weights. If duplicator does not do these two things, spoiler wins very quickly. So now that we have duplicator selecting nice bijections that sends the cycle to the cycle set-wise, we want to pull out a little bit more structure and figure out how to get an isomorphism. Now non-Abelian simple groups from the isomorphism testing perspective are very nice. These have generating sets of size too. So for the non-Abelian direct factors, let XI and YI be distinguished generators and let F be the bijection duplicator selects. First, I claim that duplicator has to send direct factors to direct factors. Now once we have that, let X be a product of the XIs and let Y be a product of the YIs. Spoiler implicitly pebbles X and Y. This turns out to be enough to force duplicator to select the nice isomorphism of the cycle. So first by weight, X is a product of L elements. X has weight L. So since duplicator has to preserve weight, F of X has weight L. Similarly for F of Y. Furthermore, at subsequent bijections, duplicator does not have to fix the direct factors. I.e. duplicator could send XI or SI to F of SJ. But duplicator has to send XI and YI to HJ and ZJ. I.e. duplicator has to send the special cookies in G to the special cookies in H. Not only does this fix an isomorphism, does this give us an isomorphism of SI? But this tells us what isomorphism we have to consider. So we don't have to worry about duplicator changing isomorphisms of the direct factors. We know that duplicator picks isomorphisms of the direct factors. And we know which isomorphism's duplicator picks. Once we have an isomorphism of the direct factors with some extra work, we can show that we can force duplicator to select an isomorphism of the cycles. So again, our key strategy was to pebble a product of the generators for each direct factor. And that forces an isomorphism on the cycles. What questions do y'all have? So now that we have nice bijections, i.e. isomorphisms on the cycle, our goal now is to look at action compatibility. So recall that there are three types of incompatibilities and automorphism incompatibility, i.e. we move cookies on a plate in an inconsistent way. Permutational incompatibility. We move the plates around in an inconsistent way. Or we do both at the same time. We move plates around consistently. But then when we move the plates around, the cookies get messed up. So for the automorphism incompatibility. So suppose we have an element g, little g and g. And g acts on this direct factor si, such that g fixes si, but conjugation gets messed up under the bijection. So we have an action incompatibility, and that's this equation at the bottom line. So to begin, spoiler implicitly pebbles the actor g together with this conjugate, gxg inverse. Now here's where we use the characteristicness of the direct factors. Because gxg inverse is in si, the subsequent bijection, duplicator has to send si to wherever it went under fpr. Effectively we have fixed set-wise this direct factor. So not only is this direct factor fixed, but the special cookies have to go to the special cookies. And so the generators, i.e. the isomorphism is fixed and does not change. So now it remains for spoiler to pebble the generators. And so we have the following things pebbled, g, this conjugate of acts, and these special generators. And this map here does not extend to an isomorphism. And once we have that, we apply our black box, this factor Schweitzer lemma, and spoiler now wins. Questions about the automorphism incompatibility. So again, I want to point out this implicit pebbling. I could pebble both g and this conjugate at once with a single pebble in a single route. If I did not have implicit pebbling, I'd worry about duplicator being able to change where g goes to hide the action incompatibility. So nailing down this action incompatibility is really easy to do when we have implicit pebbling. Without that, it's, it's really not clear what we would do. And again, this is what this is really what attracted me to bicepiler layman version three over the other two versions of bicepiler layman from Brachter and Schweitzer. So I want to point out this implicit pebbling idea. Now, our permutational incompatibility decomposes into a few more cases. And I want to go through a few of the details for some of the cases. So for case one, we have an element g, and g fixes si, but f prime of g does not fix f prime of si. So in this case, spoiler again pebbles g and some element in si may as well be one of the generators. And so at the next round again we have that si is fixed. And we have that why I is also fixed the special generator goes to the special generator. And so all that remains is for spoiler the pebble why I. This map does not extend to an isomorphism. This map here does not extend to an isomorphism. And so spoiler wins by the brachter Schweitzer lemma. So I'll give everyone a second to stare at the slide. What questions do y'all have. So now for our second type of incompatibility, the permutational case. So here we have an element g, and we have distinct simple factors si sj and sk, such that g sends si to sj, but f prime of g sends si to sk. So spoiler begins by implicitly pebbling g, as well as this product xi and sj. And what pebbling this product does is it fixes si and sj supplies. For future bijections, duplicator has to send si to either f prime of si, or f prime of sj. We're not saying si has to go to f prime of si. But we're saying si now has two choices, si or sj. Now on the easy case, if spoiler sends si to f prime of si. Once we have g pebbled, then alls we have to do is pebble the generators. Our complicated case is if duplicator swaps si and sj. And this case decomposes into a couple of sub cases. And for the sake of time, I'm not going to go through those in detail, but I want to give y'all a sense for the types of details that we need to consider. So the big results at the end. Really is this bold sentence at the bottom. If we go through all of the work, we pebble a product of the generators, we force duplicator to select an isomorphism of the sockhole. At the end of the day, what we've shown is if duplicator does not select an isomorphism of semi simple groups. Spoiler can win. We have solved the decision problem for for semi simple groups, ie, given to semi simple groups, are they isomorphic in the pebble game characterization we have solved the search problem. Given to semi simple groups, duplicator has to pick an isomorphism. And this is pretty significant because we're only using a constant number of pebbles, think four or five pebbles. And there exists very complicated semi simple groups, or even not so complicated ones. For instance, as five to decay already uses already requires login generators and groups such as a five to the K have a lot of isomorphisms and to the log login isomorphisms. So if we were looking at even just listing out the isomorphisms. It would already be a super colon and the old time bound. And in TC zero, we can force duplicator to pick an isomorphism of our semi simple groups. The only other family we know of where we can do this are groups with a bounded number of generators, and we basically just pebble the generators. So what we got here. It's not clear how to extract isomorphisms from the multi set of colors. So recall, WL spits out colored K tuples of group elements. Using those colored K tuples. It's not really clear how to pull out an isomorphism, or if that would even be feasible to do questions. Right, well I think this I think this is a good stopping point. Thank you for listening. And I'm happy to take any questions y'all have. Alright, thanks Michael, if everyone could thank Michael in some way. And the floor is open for questions. What's your stance is a group isomorphism and P. I think group isomorphism is in NC. So I'll go even stronger not just within P, but I think there's an efficient parallel algorithm. I do know this is being reported right. I do however think Vice Father layman is insufficient to resolve group isomorphism. And I think there's probably a counter example and P groups. So P groups are determined entirely by their co homology. I think people who know more about that and are smarter than I am will be the ones to address that. Any last minute questions for Michael. Thanks again Michael for for your very wonderful talk and and it's great to see you again. It's been a couple years since since we've seen each other. And yeah, I think we'll go ahead and end there. Thanks everyone for having me. Thank you.