 Okay, so What we've established essentially a natural polynomial time property, which is not invariant under this and this led us to ask well linear algebra, which is where we found this property in some sense is Unexplored to some extent in terms of definability in fixed-point with counting What can we do, you know? What problem it might be the source of more natural problems that are not definable and possibly more natural Extensions of fixed-point with counting which allow us to get closer to the goal of expressing all of polynomial time. Yes That's right Yeah, so the point is that you can yeah, so this is the simplest case in some sense So we can prove that for any finite field this solvability is not definable, right? It's and in fact that is what we do. We in our paper. We actually show something More in in for any finite abelian group you'll take systems of equations over that group and You can do essentially do the same argument. So it's undefinable Okay Yeah, I mean I just use the two element field as it because it's simple to describe and It already captures the cypher moment construction, but yes our result is a bit more general So in fact, that's where I'm good So we we started to look at what can we do in linear? What natural problems from linear algebra are definable in fixed-point counting or not definable and Maybe from the undefinable ones. We can get some natural ideas for how to extend the logic. So basically in The remainder I have just under 40 minutes. I take it About 40 minutes, I want to You know, it'll be focused on this which is very much current work, okay? so When I talk about problems from linear algebra again, think of it as this way for instance And now if you have an arbitrary set I And a binary relation on it we can think of this binary relation as a matrix as a zero one matrix Usually when you think of a matrix, of course, you have an ordering on the rows in the columns Which is in more ordering on imposing an ordering on the set I We want to avoid this ordering at all costs, right? We are we are looking ultimately for order invariant property, but there are many natural properties obviously of the matrix Which are invariant under permutations of I those are the kinds of properties. We're interested in Okay, now this is simply because think of M as a Linear operator on a vector space whose basis is given by I Most interesting properties of the linear operator don't depend upon a particular ordering of the basis there You know invariant so Okay So we cannot ask natural questions about the definability even when we think of I the underlying domain as being unordered For instance matrix multiplication, so here's the idea Say we have We have a set Which we think of as the domain in other words the the underlying thing which indexes indices the rows in the element the rows and columns of of our matrix and We want to define we have two binary relations on the set a and b Which we think of as matrices over zero and zero one matrices So matrices over the two element field and we want to define their product in other words. I write down a formula Which with two free variables x and y which given binary relations a and b defines the binary relation Which is the matrix product and it's actually quite easy to do this with a counting term right because I just need to pick out those positions x and y For which the number of z such that a xz and b z y is true, right? But both of those are true that number should be odd Okay, and that's all that's what this formula does So that's just matrix multiplication written out in well just first order with counting And the application of induction allows us to say do exponentiation Okay, just do repeated multiplication More interesting. So what do I mean by exponentiation? I mean we are given a matrix a as a binary relation. We're given a number variable nu and We're defining a binary relation which gives us the matrix a ratio to power nu Okay, I call this you power because effectively this number. I'm thinking of now is given an unary more interesting is If the number is given in binary in other words is given as a unary relation over the number domain Or think of it as a formula with one free number variable and now Instead of instead of just iteration we do repeated squaring it turns out we can still do exponentiation So I'm given a binary relation on on my element domain a unary relation on the numbers And I want to compute a raise to power n where n is the number Coding coded by that interpreted as a binary string okay, and We can do this all in fixed point with counting is not very difficult what this allows us to do is For instance, it allows us to define whether a matrix is invertible. This is this is follows from an observation in a paper by Blossom Garevich which is That so they actually show non-singularity of a matrix over Z2 is expressible in fixed point with counting and I mean I'm not going to run through the the argument here It's not very difficult if you know the the the algebra, but Basically, if you look at the general linear group What's called the general linear group of degree and over that too? That is just the group of invertible matrices Under matrix multiplication of n-bion matrices then you can calculate its order and That's the order of the group, which means a raise to the power of that order for any invertible matrix is the identity and Since that is just an exponential number you can calculate you can Produce a formula in the number domain, which is a binary representation of this number And then you just use the exponentiation I had on the previous slide and that allows gives you a test for testing whether a matrix is invertible and In fact all also for computing the inverse because obviously if a to the n is the identity then a to the n-1 is the inverse of a Okay, so you can compute the inverse of a matrix now So this it seems you can there's quite a lot you can do and and just to place it into context and this answers Your question come up from the back of the problems we're looking at are not P complete You want to place them in terms of computational complexity the natural places with complexity class called parity L So parity L is defined as the complexity class containing languages for which there's a nondeterministic logarithmic space machine With the following acceptance condition that a string is in the language L If and only if the number of accepting parts on M on in protects is odd Right, so you look at parity of the number of accepting parts of this non-deterministic machine and that tells you whether a string is in the language or not Okay In terms of inclusions we know that L is included in NL I Just threw I threw in another one UL. This is unambiguous logarithmic space machines Which are included in both parity L and NL I think the general belief in Complexity theory is that probably NL is actually included in parity L, but this is unproved In fact, I think the belief is that NL is equal to UL Because if it's not then some rather unexpected things happen, but But this is the this is the situation as we know it the of the inclusion of these parity classes a Natural parity L complete problem is parity gap given an acyclic directed graph G with vertices S and T is the number of distinct parts from S to T odd This we can express in fixed point with counting by the way parity gap Because this is just you take the matrix for the graph G you think of it as a Matrix over the two element field raise it to the power of the size of the matrix And then you look at the entry from S to T and it'll tell you whether the number of parts is even around Okay, so this is This is expressible in parity gap is expressible in fixed point with counting In terms of complexity in fact all of these problems turn out to be equivalent The non-singularity of matrices invertibility of matrices Actually inverting a matrix finding the rank of a matrix. I should also have Right they're all parity L complete under log space reduction, so they're all equivalent to parity gap Okay And this is all appeared in this paper by buddhrock et al back in 92 okay But what we show is that in terms of definability in fixed point with counting there's a difference between these right, I just are told you that the first two are definable in fixed point with counting we can Check whether a matrix is invertible. We can compute the inverse of a matrix or there's a formula expressing the inverse of a matrix but we can't Determine the rank of a matrix Because if we could we could check whether a system of equations are solvable You just take the a system of equations is solvable if you take the rank of the matrix and it's unchanged When you add the rank of the column on the right-hand side right because that has to be in the span of the left-hand side for it to be solvable So so so here's what we can say Fix over any finite field matrix multiplication Non-singularity of matrix and the inverse of matrix are all definable in fixed point with counting as I've sort of argued It turns out it requires a little bit more work to show that determinants of matrices are definable in fixed point with counting this is rather tricky to show and In fact all the coefficients of the characteristic polynomial are definable But the rank of a matrix is undefinable and solvability of systems of equations is undefinable by the proof I sketched you right so this was in our paper in VIX 2009 all of these This led us to think about Rank as a natural numerical parameter which could be used just like counting was as an extension of the logic Okay, it's a bit. It's I mean, I'm it's a bit less wieldy if you were more unwieldy then Then just counting but we introduce an ocean an operator for matrix rank as a way to extend our logic so the idea the definition as as follows as With fixed point and counting we have terms of element sort and numeric sort It's it's the two sorted logic Now if you have a term of numeric sort eta xy We think of it So x and y are now variables of element sort so we think of this as defining a matrix where You let x range over the elements of a you let y range over the elements of a and The entries of the matrix are given by the numbers you get by evaluating the term eta at x and y Okay, and now we allow in our logic Are we allow ourselves a term which basically takes? the rank of This matrix eta xy and this is a term of number sort and What do we mean? It means the rank of this matrix when these entries eta xy are interpreted as eta a Well eta a b. I said mod q and Strictly speaking so this rank operator is Parameterized by a particular q and we do this for all prime values q. Okay. We allow ourselves this rank operator Okay, so I like to argue that this is Not that far. I mean the argument I You know we put forth in this paper is the following When emerman said that counting was what was missing from fixed point? He picked the two week a form of counting He added the ability to count the cardinality of a definable of definable sets Which was missing what we're saying is you're still missing the ability to count the cardinality of sorry Count the dimension of definable vector spaces, which is what this allows you to do Right this eta xy gives you effectively You know the vector space spanned by the columns of this matrix and the rank is the dimension of that vector space okay, and Just the ability of counting that emerman proposed was too weak to allow this kind of counting So this is in that sense a generalized form of counting And you can see it's generalized in the sense that we don't need counting once we have this Because to count the number of elements that satisfy formula phi is just pick the rank of the matrix That particular matrix, which is just zeros everywhere except along the diagonal you pick the elements where phi is true Right, you look at that matrix and take its rank. That's just the number of elements which satisfy phi Okay, so you don't you don't need that so we define this what we call fixed point with rank We can do everything we can do in fixed point with counting in addition We can express the solvability of linear systems of equations. We can express the side for emerman graphs Property we can express the order on multi-peeds in other words the various Polar domain time properties that had been shown not to be definable now become definable in this logic Three color abilities is not definable as far as we know You wouldn't expect that but anyway So that's that's our that was the logic we proposed Okay We also explored The power of the rank operator in the absence of fixed points what happens if you just add a rank operator first order logic It turns out to be quite interesting already You can do things like you can express deterministic transfer closure in other words you can express and Even symmetric transfer closure so you can express reachability on undirected graphs with no fixed points in the logic Okay You can express the solvability of linear equations You don't need the fixed points for that Right. All you need is the rank operator Where I'm going exactly So Kamala's anticipated it Looking Ahead actually more generally if you take the rank quantum Rank operators modulo P for any prime P on ordered structures first order with rank P captures mod P But you need an order to do the capturing result okay So and this is just an easy an easy exercise to show you how with the rank operators and in just first order logic you can Express reachability on undirected graphs. It's quite trivial. It's a it's a simple reduction from the reachability problem to From the reachability problem to solving the system equations over the two-element field basically For each Throw in a variable for every vertex in your graph and for every edge x for every edge UV You throw in the equation x u plus x v is zero you say x s equals 1 x t equals zero This system is solvable if and only if the graph is if there's no path from s to t Because this is you know this this essentially ensures that the variables at any two end points of an edge must take the same value Since you said that x s has the value one everything in the connected component of x s of of s must take the value one But you require t to take the value zero so the graph must be disconnected Okay So yeah, like it says over there and this then shows allows you to do this Okay, this is crucially undirected. Could you do the same for directed graphs? Could you express directed graphs in in this form? Well, if you could You'll prove that inclusion Directed reachability is complete for an L and Define ability in here would place it in priority L Sorry, you might be able to prove that you cannot do it Especially in the absence of order. Yes, especially in the absence of order. It might be a yeah, but now This is where I want to get to One thing we do prove which is more of an inconvenience You see with counting when we introduce these counting operators He said this is the number of elements that satisfy fire We could have introduced a more general form of counting Count the number of tuples satisfying fire. We don't need to because with this it turns out you can define this It requires a little bit of work that I mean obviously counting the number of tuples It's not enough to just count and call them by column, but a little bit of work You can see see how to count number of tuples just given this We are in a bit more difficult situation. So I showed you I can define Matrix XY, but now why shouldn't I take tuples? Over here and take a matrix You know n to the k by n to the k matrix well, certainly why not so we allow that okay and We would have liked to be able to show similar collapse and say that this was unnecessary You could get these higher higher arity rank operators from the lower arity ones But in fact we prove the opposite that is that they form they form a hierarchy The proof requires vocabularies of increasing arity. It's it's derived from a Construction here to Hela So it's still conceivable that say over a fixed vocabulary like graphs the arity hierarchy collapses, but we don't know this but now this means Yeah, ultimately what we want as a as focus is suggested for instance. We may want to show that Directly reach ability is not in first order with rank, but now we need tools for proving inexpressibility. So we get back to Now find the appropriate notion of equivalence Find a suitable game for that and can we start proving inexpressibility results for logic to the rank and this is not easy okay, so Diarki home my PhD student in his thesis gave a nice game characterizations But it's not an easy one to use particularly because of these arities It may it makes the definition really unwieldy and we haven't actually managed while we have a definition of a game We have we don't yet have an application where we can actually we've used it to prove something is undefined But well a minor one where at the arity one case Yeah, what it says there we can show that if P and Q are distinct primes then solvability of linear equations mod Q cannot be defined in using just The upper rank operators mod P But again, we were only able to do this for arity one because the game becomes rather unwieldy prior I'll give you the definition of the game, but It's and you will see it's it's not easy to use so we thought of various possibilities Right, you had the emerman and lander characterization here. You pick a set Spoiler picks a set duplicate rest to respond to the set of the same size. You could do something very similar spoiler picks Choosing constructs a matrix Duplicator has to respond with a matrix of the same rank spoiler challenges an entry duplicate rest to respond with that The trouble is to make this work. You would need to ensure that the spoiler is restricted to picking matrices that are definable It turns out the same issue arises in the emerman and lander game But they prove that allowing spoiler the extra power doesn't You know change the equivalence relation so you could you get the simplified game We don't know how to prove that and requiring only picking definable relations as matrices Seems a bit sort of like catching your own tail because Defineable it is what we're trying to characterize in the first place, right? so So we weren't quite happy with that we were trying to think of a Bijection something analogous to hell as bijection game. What is a bijection? requiring duplicated a specified bijection means Bijections are precisely those maps which preserve card melody of all sets and card melody is of course the thing that's captured here What are the maps which preserve dimensions of all vector spaces? Well, there will be sort of linear maps So, you know, we thought about a game where duplicator was specific, you know had to give some sort of a definable linear map Again, this was the this is the closest we got to that and this is what what makes it work I say we this is really the R keys work So the idea is this we have a pebble game and Now at any point of the game So we have k pebbles as before k pairs of pebbles k pebbles on a capable pebbles and b at any point spoiler can pick up 2 m pebbles So 2 m is less than k the idea is we're We're going to look at m by sorry n to the m by n to the m matrices So the elements are going to be indexed by tuples of length 2 m m for the row m for the column Okay, so spoiler specifies which pebbles he's going to move duplicator has to respond with the following You look at so we know it's going to be some matrix defined on a to the m a to the m over here and B to the m and B to the m over here So duplicate it takes this and specify some way of partitioning the space Right I'll just draw it like this. I mean obviously it doesn't have to be and some way of partitioning this Into the same number of parts and a bijection between these parts for it for example that's what duplicator has to specify and the bijection has to have the following property that if you if you fill this matrix up with values 0 to P minus 1 with the Proviso that each part all the entries in each part take the same value For any way of doing that here Fill this up the same way you get a matrix of the same rank This is what duplicator has to present some way of partitioning this and a bijection which satisfies that condition Okay, so duplicator gives a partition of a partition of B and a bijection So is that for any labeling of the parts you look at the matrices you get they have the same rank Once duplicator presents this spoiler picks Some tuple in this some tuple in the corresponding part over there those get pebbled and the game proceeds Okay, this is the game that captures these rank operators as I said It's a bit unwieldy and we haven't really found a non An application that uses the full power of this to prove inexpressibility Right, for instance, it would be interesting to prove saying Directed reach ability is not definable in this, but yeah, sorry even an MP That's right. I'll Yeah, we don't have any really concrete example of something. That's that that we can use this to show so As I said if we think of this so effectively what we have defined now is a new notion of equivalence k variable Exquivalence in the in the we can say first-order logic with rank operators Which is now intermediate between this and isomorphism, right? The new family of equivalence relations. What do we know about them? We know that each of these is in polynomial time and in fact This is they provide an approximation of graph isomorphism. I've said this before and in fact It's a well-known one it goes by the name of the V's for the V's feeler Liemann method Right, or so the particularly this would be the k-dimensional V's feeler Liemann method for Ck and as I said you can see in in From growers proof that for on any minor closed class of graphs This V's feeler Liemann method there is a fixed case of the k-dimensional V's feeler Liemann method gives you isomorphism and The Cfi construction shows that there is no K for which this I You know Ck equivalence gives you graph isomorphism. We can ask the same sorts of questions with respect to Rk First of all, we don't even know that this equivalence relation is in polynomial time right this one is For every K this one we don't know okay We you look at the natural I mean you look at this definition which gives you a sort of algorithm it involves a sort of Test at each stage over all partitions which seems naturally exponential Okay, and so we don't actually have a polynomial time algorithm for testing this as far as we know Could it be that there's a fixed value of K at which this becomes isomorphism It's possible. We don't know Okay Another thing this is just telling you about some very recent work. We've been doing We introduced this fixed point with ranked logic because we found one problem You know rank of a matrix or a definability of systems of equations, which was not definable in fixed model counting We then sort of step back and say well before we start talking about new logic and put in a new logic Let's look at the space of problems opened up by looking at solvability of systems of equations Look at the polynomial time problems there and see which ones are reducible to which Okay, and reducible here means within say fixed point with counting So that you know in some sense, which is the maximum the hard one you should be looking at and it turns out We may have picked the wrong one in the sense that You can define systems of equations not just over finite fields, but say over finite rings or groups as long as And the thing is for finite rings. It's still polynomial time for groups as long as the group is abelian. It's again polynomial time Okay, so these are all problems solvable in polynomial time But there's no corresponding notion of rank and it's not clear that these problems can actually be expressed in fixed point with rank Okay right the notion of rank is something very specific about You know vector spaces over finite fields is where it comes from because they have they have a notion of dimension which is You don't get with modules over rings and so on and What we did was we looked at all these various problems and found that they could within fixed point with counting you can reduce them all We were hoping we could reduce them all to say solvability over a finite field and that would mean that they were all definable in fixed point with rank or We only got this far we can reduce them all to solvability of equations over finite commutative local rings Okay So there's a problem Which You know we would like to see whether we can express in fixed point with rank or not Okay Yeah now before I mean I'm I'm getting to the end of my talk of it. I Wanted to say a little bit about another direction which I haven't talked about Yeah, yeah No reach ability in directed offices in fixed-point logic is that it's a candidate for not being in first order with rank So here's a candidate for not being in fixed-point rank is also a solvability over over finite rings Okay, which we say reduces to solvability over finite commutative local rings We were hoping actually to reduce it down to finite fields and so it was definable, but we haven't done that That's it. Yeah, I'm not sure it's a candidate because I'm not sure I have a strong belief of whether it's definable or not Okay, but in some sense. We're still developing a feel for you know, I Don't have a strong feel for using these games I don't have you know clear way of expressing this this problem in in the in the logic either but Yeah, it's it's certainly a candidate for separating. I mean there's there are other things. I mean I'll give you some things which we don't know at all the status of Is for instance, it's general matching matching in graphs and bipartite matching was shown to be in fixed-point with counting by in a paper by Blasparovic and Schiller But general graph matching we don't know either in fixed-point with counting or fixed-point with rank Another thing which I don't think has been studied at all of course is linear programming I Don't have a clear formulation of that. Yeah, no, no, I don't I don't necessarily I mean Yeah, I don't know how you would express it But I mean you first of all you'd have to I mean it's a bit tricky because you have to sort of define linear programming in A way that makes sense as a as a relational structure You know without bringing an order in it, which I think should be doable because you know that it's an unordered set of constraints and so on but It's It's something I don't think anybody's looked at in in-define ability terms Okay, so choiceless polynomial time. I'm just I'm not going to say very much about it I just it's more because I want to mention another direction because this is another proposal for extending fixed-point with counting Which was given by Blasparovic and Schiller It's it's a logic in the in the loose sense in that it's it's Defined on a machine model called the great abstract state machines But it were machine model which works directly on relational structures So it guarantees that it that the things if expressible are ordered variant But to give the Model sufficient power it has access not just to the the relational structure but to the universe of hereditary finite sets over the relational structure so it can construct sets of elements sets of sets of sets of elements and so on and then we define the polynomial time restriction of this which has to be polynomial time in space which is suitably defined by Saying that the the transitive closure of these these sets you use Must all be polynomial in the size of the structure and the number of steps is polynomial, etc I'm not going to run through the the the definitions. This is a proper extension of fixed-point logic, but still can't do counting But then we can add counting to this choiceless polynomial time. So it's giving us a CPT card and this Is yet another proposal for logic for P time and it properly extends fixed-point with counting So here's what we know it can express the property of graphs of sci-fi or MMM But we know that any property any program that expresses that's the air property must use is use sets of unbounded rank Which means in this highly universe for early finite sets. It's you know, there's no finite Nesting of sets and sets of sets and sets of sets that will do Okay, no, so so these all appear in this in this paper with Dave Richard B and Ben Rossman Okay So now I Mean this is I just wanted to mention this and I want to sort of conclude in the last few minutes by telling you lots of open questions Okay, because this is a We're now at this sort of state of the art and there are lots and lots of questions Which we are still working on and thinking about having to do with both So we say the rank logic and chose this polynomial time I've mentioned many of these in the course of the talk. So we have this equivalence relation for each value of k Right the equivalence relation of two structures being equivalent in the rank logic with k variables For full definition, you know, I would suggest you can have a look at I think the best source for information on that is the RK Homes PhD thesis Is this equivalence relation itself definable in fixed point right one of the key things over here Was this equivalence relation turns out itself to be definable in IFP This relation is definable in IFP with counting Okay That's something similar hold here. We this would be a sign that this logic is nicely behaved if this equivalence relation Was itself definable which would in particular imply its polynomial time decidable as well. We don't know that Okay Or on could it be that there's some fixed value of k for which this gives you isomorphism Is it actually an infinite sequence of ever refining relations or could it be that there's a fixed value of k? I'll be surprised, but I Don't know the answer Can we solve linear equations over finite rings in fixed point with rank? This is what we were saying I mean it's more general than solving over over fields and we don't know whether It reduces to that. Are there any problems in p-time not definable in fixed point with rank? That's of course Interesting questions How about just separating fixed point with rank from first order with rank? This would be a nice exercise in say use of the games Prove that you can't do alternating transitive closure in first order with right I mean you you were talking about directed reachability, which is complete for this How about alternating reachability? Prove that it's not in first order with rank on unordered structures Take any concrete problem say an NP complete one. This is takes it back to Newton's question, right? Take any NP complete problem Say three colorability and prove that it's not in fixed point with rank That would be nice Bounded degree graphs are an interesting case. So I gave you the the examples Where fixed point with counting captures? polynomial time right leading to Grosz result above minus close cross Bounded degree graphs are another interesting case where we know If you bound the degree that there is a polynomial time isomorphism test, there's polynomial time canonical labeling So in principle, there is a logic for P in in the in the abstract sense because canonical labeling is in polynomial time But we know that fixed point with counting is not enough Why because the Cypher-Emerman construction can all be done with with a with a bound on the degree Okay So we know that fixed point with counting is not enough is fixed point with rank enough. This would really mean Looking at the those canonical labeling algorithms and trying to see if they can be expressed in fixed point with rank They're enormously complicated and this is partly what led us to looking at solvability of systems of equations of a group and Wings rather than just fields because there they are group theoretic algorithms. So that remains an open question How about comparing fixed point with rank with choiceless polynomial time with counting, right? So these are two different extensions of fixed point with counting which have been proposed and We know nothing about their relative expressive power is either one included in the other We don't know whether choiceless polynomial time with counting can express the rank of a matrix right and We don't have any examples of something expressible in here, which is not expressible in there We don't have an inclusion in either direction Okay, all of this remains open Yeah, so this last one I've already mentioned this matrix of definable in Choiceless polynomial time with counting we don't know so lots of we don't know to end this talk I'll stop here