Okay, maybe I start, yeah, so this will be a series of four lectures, following our lectures of, it was like a beer shaper and Masaki Kushevar, but it will be a slightly related subject. Yeah, so the rough plan, it will be four lectures, today we'll, today we'll speak about finite dimensional exponential integrals, then second lecture will be about one forms and wall crossing structures, and then certain force will be infinite dimensional story and applications to quantization, non-preturbative quantization. Yeah, so this, it will be quite different talks and I think, I think it will be quite entertaining to see the relations in the story. So I will start with kind of further integral, which everybody knows, which is Gaussian integral, which is square root of pi, yeah, and somehow I want to generalize this integral and calculate related things, or more general what we can integrate, let's say we integrate still in one variable, we have f of x, g of x dx, we integrate, such think we're, what, the f is maybe some constant times x to the power of d plus some lower terms is a polynomial, which is given, so it's, for example, this example is minus x square, and now g is also a polynomial, which is arbitrary, we write g, it can have any degree, here maybe I assume that d is at least 2, and I should integrate over some pass, yeah, so some pass, and what will be a good pass, pass will be, let's say, in C will be oriented semi-algebraic pass, semi-algebraic, I mean real semi-algebraic, like real line, or you can buy some real equation, polynomial equation, and such that real part of f is taken to pass, then we go to infinity, as we go to infinity in C, real part will go to minus infinity, so the, so the integral should be somehow convergent, so we have many such intervals, but claim that you have, one has to calculate if you vary both g and and pass, you have many integrals, but really interesting integrals are, you have only d minus 1 squared, kind of integrals to compute, and the rest will be given by some linear combinations, yeah, and this thing depends somehow on homology class of pass, and homology class of this form, in C, yeah, yeah, first of all about pass, the integral depends only on homology class, but pass is semi-algebraic, I said that pass is semi-algebraic, and that's, it's not semi-anal, then automatically the integral will be convergent, because in some local coordinates function will grow like a fractional power of small parameter, and the integral will be absolutely convergent, yeah, so the, so it depends on homology class of pass, maybe it's called gamma, which is homology class of the pass, and where it lies, it's an element of first homology group of the pair C, and I can see the subset f minus 1 of, maybe I'll just draw, what I draw, I draw the set of points in C, such that real part of these, I say less than minus t, and t is, I assume that t is very large real number, let me take these integral coefficients, yeah, this homology group is free group of rank d minus 1, with this degree of my polynomial, yeah, just for example, if my function is minus x square, as it's kind of basic example, then what we should draw, we have a C, when we consider the main, when minus x square has very negative real part, we get just two pieces, and we can connect them, this gives a homology class, yeah, this homology group stabilized in t is very large, so I mean just any one of them, and if for example, if degree of, if d is 5, you can, you should get the picture like this, you have in C, you get, depending on coefficients of your polynomial, you get maybe five domains where real part goes to infinity, and as the basis of homology, you can choose, let me choose some, put some orientation, yeah, this is an example of the basis of homology of the pair. Now, so you get essentially d minus 1 interesting pass, and what about g, this function g, let's consider, maybe I just put some blackboard, we consider twisted the RAM complex, which in this case is the following, we consider degree 0, it's just polynomial sin x, and goes by df to c of x, which dx, where df is differential plus which product is df, so if you look how it looks on some polynomial, consider some polynomial g, g goes to what, it goes to g prime, derivative of g plus f prime times g times dx, that's how this is the term differential acts, and why I wrote it, because if you multiply by exponent of f, it will be kind of isomorphism, and good here and here, you just consider expressions, which are polynomials for x times exponent, and polynomials for x times exponent times df, in one forms, this will be just usual differential, yeah, so it's just to write algebraically without referring to exponential function, and the integral again depends only on co-homology class of g dx, maybe, maybe g's wasn't, sorry, maybe we should put some another letter because it's not g, h, so g dx defined model as an image of this differential, and co-homology, so the co-homology of this complex are only in one degree, so here is a snow kernel, so that's only the kernel, so this class of g dx, and each one of this complex, of this twisted theorem complex, which is the same in this case, it's a co-kernel of df, so it's, I'll just, definition, and mod out by the image of this map, and this space is actually, again, finite dimension, it's the morphic to cd to power d minus one, and the basis given by representatives of one times dx, x times dx, x to power d minus two times dx, yeah, it's very easy to calculate this, yeah, for example, for d equal to, yeah, just write houses, houses twisted theorem complex looks like, looks like, so one goes to maybe, and function, maybe minus x square, minus two x, x goes to, yeah, so you get such formula, it's clear that you can kill top-degree terms and reduce to constant here, only constants you cannot get to the image of the differential, yeah, so that's the kind of basic example, generalizing this first thing, first story and now I'll go to general setup, so it will have several ingredients, so first I'll have algebraic, smooth algebraic variety over complex numbers, let's have certain dimension n, then I will have some extra ingredient which wasn't present before, I will have a some closed algebraic subset of smaller dimension, maybe singular, then I get a function, I can write it in various words, it's like a map from x to a fine line or complex numbers, it's kind of polynomial map or equivalently f is section of the structure shift on my variety, then I should have some volume form which is a top-degree algebraic form, it's kind of top-degree algebraic form and I need something which will be something like denoted by c, chain of integration, I'll explain it in a second, but before going on I have to explain why I should introduce this set D, so it's kind of why have this extra set D, because there are other integrals which can similar to what we have, yeah for example one can have this guy and D will be something which contains the boundary of integration or I can have another integral which is, I think it's called something like E1 of T, it's not elementary function and it's, this is called exponential integral in fact, this guy is called this exponential integral, it's not elementary function and for example in this case what will be variety, in this case variety will be a fine line, this is D will be a device at just one point, T function is minus x and form is dx over x, yeah so it's a kind of integrate exponent of function times volume. Volume on what, on x? On x, yeah it's. But x is not compact, it's not compact, ah sorry x1 minus 0, sorry you're right, yeah x is, x is, and T maybe is positive number here. Okay so the idea that your pass sincerely is, ends either at infinity or. Yeah it's some some variety, yeah yeah it's, it's ends as at infinity or at some point T which is in this case algebraic sub-variety of C star. In general you have to integrate of an n-dimensional pass. Yeah and no it's, it's, it's a chain, it's not a pass. Yeah it's chain, yeah in this case it's, it's chain of integrations, it's will be n-dimensional. Yeah, yeah someone should be a bit careful about chain, what will be this chain? Now the chain will be, the following, it's will be some, to be kind of sum over n, n i c i, some finite sum. V c i is oriented n-dimensional semi-algebraic sub-manifold in. Sub-manifold you mean compact or it is. No no it has boundary, it's good. Ah it has boundary, is it smooth after the boundary or? No, no no it's, it's open part, it's, it's open kind of open, it's will be open. In general when you consider simplices, lots of simplices. I consider interior, I consider interior of simplices, like interior simplices, of simplices, yeah. Okay, I love to this. Yeah okay, real, real semi-algebraic sub-manifold and, and x with the property and such thing has, it's kind of rectifiable set, it has natural boundary and I assume that the boundary of support of the differential is in D. And, and the second thing which I assume is the following. If consider real part of f as a function as well as in real numbers and restrict to the, ah maybe in the closure of support and restrict to the that support of C which will be just union of this different sub-varities, then it's, it's a map from to R is has two properties, is bounded from above so it means that real part of f is less than some on the support is less than some constant and, and second this map is proper. Yeah, and if you get such a situation, yeah so one can integrate of a chain this expression and this expression, this integral will be absolutely convergent and that's generalization of this one-dimensional story. Maybe, yeah, yeah but it's, it doesn't matter. I will immediately, in one minute we'll go to some common older group so this exact chance will be relative, relative, yeah, yeah globally, yeah on some complication, yeah. So, so now I want to say what does it mean homology class of, homology class of, of the path belongs to what? Yeah, I want to describe real-life homology theory called gamma. So, first of all define certain set S sitting in, it's kind of set for f and the pair. This is the meaning of this set, it will be some finite subset mc, and it's finite. And what's the definition of this subset? It's a, in formal, it's a point of anthropology change of the fiber, more precisely define what is the complement of the set. So, I say that z is not, before bifurcation value is by definition is the following. There exists an open neighborhood of point z, you will just see which is part two. So, there exists an open neighborhood and plus such that over this, my neighborhood, my vibration is, this subset x to c is locally trivial. So, there is a homomorphism between the pullback and u tends to f minus one of z, compatible with projection to u. So, this diagram is commutative. So, it kind of trivialize topologically my bundle said that this things also trivialize restriction to the subset d, inducing homomorphism of what, of intersection with pre-image with d, with u intersecting, which is kind of subset here. Yeah, so it means that this things is locally trivial. Yeah, I claim that this happens for all points except finitely many. And why it's so? So, the explanation, one should compactify x and so the map will be expanded to the map from the complication to P1 and then to some algebraic variety containing x and then x prime minus x will be some vertical part, which is f minus one infinity union, some horizontal part, which is some another subvariety. Yeah, so you get some kind and also you have our things d. Yeah, so there are algebraic variety with many, many things inside, three devices inside and when you project, we know that topology of everything is locally constant except some finitely many points. Yeah, so you get this finite set of bad values and now what is homology group? One can consider the following various homology group, which will be all isomorphic to each other. First I can see the h, consider homology of x, this is subset d and union of f inverse, again the same story as before with integer coefficients, where minus t is less than real part of any zi, where s is the iso elements of this critical values. If I consider pre-image, it still doesn't depend on t, this is a natural map from one t to another and they are all isomorphism because we get all homotopic equivalences, kind of all isomorphic to each other. Also it's isomorphic to the same thing, but I take pre-image not of not of a half plane, but any point in the half plane, where real part of z is less than real part of the i for any. It's again, you just consider pre-image of one point because one point is not to be equivalent to half plane isomorphism and so I get many, many groups which are isomorphic to each other and call all of them just by one root hb, dot will be degree on homology, hb of pair x, d and f and b is for bt, it means it's kind of usual topology, not the risky topology, how do you know? And so the class of gamma, so the gamma which is class of c is belongs to h, maybe a variety of some dimension n, middle dimensional. Okay, so we generalize the homology class of the path and now we should do something with the form and it's completely similar, so I use twisted Durham complex again, so I have df, d plus h product by df and it gives me a differential on, it gives me complex of shifts, one x df, but it's complex of shifts, now I should be very careful, I should do it in the risky topology, so I consider on the algebraic forms and covering by algebraic open sets and so on, so one can define twisted Durham homology of pair is the following, so now I have pair, just second I think I need one assumption, assume that d is divisor with normal crossing, yeah I said that it should be divisor with normal crossing, it's in general could be singular space, actually it's not a restriction at all, because you can blow up, yeah you can make blow up and replace by divisor with normal crossing, it doesn't change any commold which we consider at all, yeah no but commold of twisted Durham will, yeah no twisted Durham I defined only for normal crossing and it doesn't depend on resolution, oh maybe you can relative to d, yeah I can see the form vanishing on d, if d is singular I will be a bit unconfident, not logarithmic, forms vanishing on d, bond vanishing in which sense vanishing? Restriction to d is zero, yes yes yeah restriction to each component of d is zero here, yeah so I consider, yeah so it contains a sub complex, this is differential df, where omega is d are forms whose restriction and d is a union of some divisors, smooth components distinction to each d i is equal to zero, yeah and and this thing I think I defined as hypercromology in the risky topology of of this complex of shifts and I claim that the integral is actually can be the first of all if you get this my form which I have volume form, if I have n, in fact it's also belongs to because it's top degree form, it's vanish on the on the on divisor d automatically and also we have d of volume form is zero because there's no n plus one form it's top degree form and df which volume form is zero, yeah so it's killed by differential global section so it's definitely gives a class in this hypercromology and what I want to say is its exponential integral which we're interested, it's actually pairing, is a pairing between homology classes so I get and the pairing maps from this beta homology and df h derangue yes yeah there are dual over c, yeah there is a comparison isomorphism that's dual space kind of beta homology after confiscation isomorphic to derangue homology yeah and this comparison isomorphism can be so yeah so without reference to those chains so that's why it's I'm not sure yeah yeah it's it's so like derangue on a shift theoretic yeah one can prove it shifts heritically yeah it's following what what we listened last week's yeah it's also gives a proof yeah essentially it was I think it's actually it was proven maybe first by malgrange this comparison isomorphism I'm not sure yes no if consider homology in not in the risky topology you get just homology of a pair xf because you multiply by exponent of function you identify with usual forms yeah so it's it's completely wrong for if you put an analytic topology I will speak about how we calculate it using compactification all stuff it will take some time but now till the break I will now speak about kind of topological part on the beta side so for a moment we forget about this hypercomulge and this thing so maybe I'll even kind of hide it see too much yeah so first I think we should want to say it's some kind of panker duality yeah actually I go to this picture yeah so I assume I have the following station I get x prime some smooth compact variety compact algebraic variety over c which contains three three divisors horizontal vertical and some closure of my d this will be normal crossing divisor and I assume that this will be unit of some some different components those different three things can these things has no common components yeah I have such thing variety with three divisors and I assume that d bar intersecting between dh is empty and I have a map from I think to cp1 have just a map and a d vertical is pre-image of infinity that's theoretically yeah it's good to do some multiplicity which I don't care in the moment and and how it's related with original story x x x x prime my I remove divisor d horizontal and d vertical d will be d minus intersection of d vertical and f is a bar respective to x now so I get such a situation so let me draw the picture follow various colors yeah so I get cp1 I get point infinity and so some here it's on my x bar yeah so I have some devices normal crossing d vertical which goes to infinity then I get something will be I don't know d bar and have another thing which is completely this first one should be d horizontal now so what happens I remove this I think remove d horizontal take pair relative to no no no it's not a constraint this can be always achieved by making additional blobs yeah because my chain doesn't really touch d infinity if it intersect I can blow up the intersection and chain will not touch this and then you have to change the x yeah I change yeah I change a little bit the x yeah it's true no but to have kind of clean homology theory I really want to have such but the the previous comparison theorem I mean the setup in which you have this comparison theory between different models and this kind of the ramp and so this does not include this hypothesis I mean when you have a situation which this comparison is an opportunity it's not necessarily the case you can compactify it to it's true yeah but yeah yeah I think you are you are you are right yeah this seems yeah but one can at least numbers can reduce to I just I want to say that at least the situation or what is this point credibility I have this thing and and so I can define also beta co-omology by using co-omology of pairs and of rational numbers that do co-omology and the claim is that that if consider homology of original I think it's naturally isomorphic to co-omology after shift of some new variety minus f and maybe shift by two times dimension and what is the new variety you just exchange the role of these two devices you you remove one devices get pair relative to another or vice versa so x prime will be this is the complement but now I just remove instead of d union d vertical and d prime will be just now so you get different homology group and let me briefly say what the origin of this point credibility first you consider kind of common open part you remove from from x bar all three all three devices consider the complement you get some open manifold and then because it's you have devices normal crossing one can add some boundary with corners can add a real boundary and get manifold with corners using polar coordinates and things which clear yeah so get essentially closed manifold and if I analyze all this pairs one can do something on the boundary and eventually uh maybe I'll just draw the picture what happens you have some kind of compactification kind of real manifold real compact manifold with boundary into also these corners and then the boundary of this guy which is again manifold with corners one can decompose one can put some negative part plus maybe some something middle part plus positive part and roughly the picture like this you get some two disjoint open domains in the boundary and the middle you get something like color so it will be the cylinder and then you get a usual point credibility so commulger of pair x0 and d minus x0 is dual to commulger of x0 d plus 0 yeah so one can do analysis like this but there is some interesting point why I replace function by minus function because when I do this uh domains in in in a boundary what I do roughly I can imagine a kind of complexified series sphere at infinity a circle at infinity with the values of my function and instead of minus infinity plus infinity I take two uh angular domains and take them back and you see that it's really looks like two domains which you connect by by a color and the same goes to high dimension why so you said the boundary is a union of d minus d plus and other things and other things which is which is something which if you add to d minus which will be contracts both to be something like um hemomorphic to the to the product of of whatever and minus two dimensions some manifold small dimension times the interval and this comes from the devices from different components yes yes one can yeah make yeah of course one can do it in different languages using shifts and so on so um same story yeah yeah no so the main thing it's uh this objects allow duality that's one thing which I want to say but now uh before the break I want to spend some time some very basic topology question about topology of of the map uh from a pair get x in pair d and and maps to c because it's with topology I think c will just think it's a real plane and we forget about complication story just do something very basic uh so suppose I get a map from a pair to r2 and I define before occasion set as before is a complement to the points when it's locally trivial topological local trivial and assume it's fine but now x and d will be for me very general for x and d will be let's say just topological spaces I ignore all details of this story and uh then I fix integer number and uh uh I claim this case I can construct a constructible shift on c and what is the fiber of the shift uh fiber of x the axis of point z with these any point and c is defined uh stock at point c defines this case topology of the pair x take d and take union of of the pre-image not of the point z but uh small disc with simple z integer coefficients where epsilon z is set of z prime and c open disc and this uh by this uh finiteness condition we see that it stabilizes as epsilon goes to zero so we identify all of them now so the claim it's it's a constructible shift uh so obviously if we outside the formification point then it's local system because we have locally trivial bundle outside we get structures local system and what is the structure of a shift at sorry I don't assume anything it could be in our case it's finite but in general it's yeah it's very very general story it's the main point that it's this is finiteness that's uh what plays for me essential role nothing else it's a constructible shift uh and what's the structure of shift just defined just a collection of a billion groups and one should kind of make the translation suppose I have a critical kind of critical this bad point when I have formification then what should I do what should I do so let's draw kind of a take point z i take pre-image of this disc union with some set and take a mold of pair but now if I have point very close to z prime I can have kind of smallest thing this you see that d epsilon z i what is whatever u z i epsilon uh minus point z i can contain some u some another prime maybe z some epsilon prime z is not the prime and epsilon is smaller than it's much smaller then I can have a restriction map from commode of pair to commode of pair and that gives this shift structure so I have for a for a section for for the stock of my shift at this point I have stocks in nearby points it's exactly definition what is a constructible shift yeah so I get constructible shift which is smooth outside of s and kind of the theorem which is not obvious at all that this shift has a zero co homology there's no global sections no first homology in fact there's no higher group or what can say this r gamma and here it's a very very bizarre story goes on you will see it in a moment it's doesn't really homo it's not really part of homological algebra as I speak about homology so what is explanation of this fact it goes through some different formalism uh let's consider following pairs we have pair d and b consider pair d and b where d is let's say uh in c is uh closed subset and which is homomorphic to closed disk the closed disk this curly d will be some uh maybe not homomorphic I'll say maybe piecewise whatever you want linear an elite analytics infinity this could be maybe some corners and d is a subset of c uh b is a point on the boundary of d and we have only one constraint constraint that there's no uh bad point from the seat of my set on the boundary okay so this bad points which I have will be some inside some outside and here I get a point b my disc you avoid some some spikes or some yeah it's it's doesn't really matter one can use semi-algebra semi-analytic semi-algebraic stuff yeah it's just to uh with horrible singularity and for any such thing I can associate a billion group which denotes something like by a of this pair of d and b which is a case homologous of the pair the formula can take pre-image of disk and and take again you uh d intersecting with pre-image of disk union uh f minus one of b and take homologous integer coefficients I have this uh homologous pair yeah so this uh and they they form the following thing this a if I associate this uh association of the disk and point on the boundary is is a local system on uh space of disk is boundary such a boundary disk do not touch so I allow to move my thing but boundary should should cross this red point this s yeah okay yeah it's some infinite dimensional space but uh this should form a local system then we have such thing then we get restriction maps if one disk contains another and a b is equal to b prime is the same point then we get a map from a of db to a of d prime b and it's again locally constant map if we deform both things yeah so what happens here I get uh this d I get d prime and some bad points stay in one some both of them some outside and because I have just a map of pairs I just get restriction to the smaller space it's clear and uh and then it satisfies some kind of additivity axiom namely uh imagine the situation like this I have d and maybe I just make a little bit smaller d contain d prime and union d double prime uh and there's no point no black black points no bad points in the middle so there are some points here here outside so d is a big uh uh disk contains two small disks yeah all points will be mark points will be the same then the additivity property says the following that's the condition about this thing in the winter no no no no I said that d and d minus d prime intersecting with s is equal to put this condition and and d is kind of something some disc containing is not the contains the union yeah it's not yeah and there may be disjoint here point b the touch at one point then then what I have in this station by restriction maps I get a map from ad b maps to ad prime b plus ad double prime d you take d minus the union or d minus the intersection sorry d minus the intersection the uh the union sorry sorry yeah you're right yeah by restriction maps I get a map from uh to one group to another group I get a map to direct sum and this thing says isomorphism yeah so I get this uh different types of structure which I have in this situation so what is the relation of this to my shift to constructible shift f uh the relations uh is the following if z is in c minus s that's the stock of my shift is can be written as one of the spaces namely when you have the following picture uh here b will be z and d contains s there are many such discs you choose any one of them and uh you define this like this it's not really definition because then you should say how you identify one thing to another it's it's a pretty complicated story but uh and a similar story if z belongs to s one of these special points uh then um then you should draw the following picture you should make uh you should just exclude point z i that's where the point b and all the rest will be inside yeah that's the definition uh what f of z i is a of such I think so what yeah if you look on on uh this uh axiomatics that I get uh groups depending on discs and some restriction maps and additivity axioms it works uh so axiomatics works if we replace the commologo of pairs with some integer coefficients with some given for given in any key by any contra variant functor uh called the h from what from uh topological spaces or pair or pairs because um pairs can be replaced by topological spaces with base point by contracting close six to zero topological spaces with base point two groups or even to any i billion category it doesn't have to be groups it's contra variant functor it's up to homotopy but it doesn't shouldn't be some homologous theory it has only one properties if you have two spaces I don't know some space uh y one and y two with base point y two then have the union where you identify you can book a you identify the base point of course it contains both y one and y two and then then we have a map and this should be should be isomorphism yeah so it's definitely any homologous theory like k-serial bordiasms what the commologous aesthetic efficiency works but maybe some there's some kind of bizarre I don't know function functors on comotopy types which do not come from homologous theory because I just sit in only in one degree yeah so I don't do things like suspension yeah then one can repeat the same procedure and get a constructable shift is argum equal to zero yeah yeah that should be what is right there should be isomorphism yeah make maybe in 10 minutes ah it's it's not clear at all yet it kind of this redid uses from a homological algebra just give you some kind of theorem which we proved with katzarkov and punty a few years ago that says kind of fix finite set c to q naught two or c that's really meta then the following things are equivalent this category of constructable shifts of let's say five billion groups which are local system on the complement to s and cited the snow h zero and h one one condition then it's equivalent to the following data to the following things it's equivalent to collection of the sabilian groups adb boundary b the second piece s is empty which form a local system on on the space of parameters dnb plus restriction maps as I explained before here satisfies the utility axiom and so I think that's something very explicit so this third description uh choose some uh topological data priori choose some kind of di bi uh sorted di interior of di contains only zi and no other yeah so for each for each point in my set yeah so for each point I choose a small uh disk containing the input choose a base point on it and and also choose for any for any ordered pair of indices which are different uh choose a simple path uh and i'll draw the picture and the simple path say it should go from start from some point uh so I have map from interval to r2 so zero goes to point of my first disk but not point bi one goes to point bj and the interval goes to r2 minus union of all all disks decay for my of all points it doesn't intersect all so I draw this path outside of my points so I just make this uh choose but not everything it's uh for example it should be something like sorry this guy disjoint yeah I see that also I think this this collection of paths uh it could be not arbitrary I don't yeah for example I can choose of something called Gabrielle of this type uh what does it mean I kind of imagine to have some points the infinity which is very far from my point zi and kind of first connect by disjoint path to all zi there's no no disk yet but now what I what I do I just uh I have this bi di I have I just draw a small little disk and have first intersection points to the points bi but now how would I connect them it's uh let me just yeah there are two possibilities I go from up or to down and one should choose pass uh something like uh point in my set so you want something which is topologically equivalent to such a thing or what yeah topological equivalent to such a thing here you get just collection of things you get collection of invertible maps so it exists in yours from each guy to itself and collection of maps tij from ui to j for i non-equal to j so to think no further constraints what you do there is not I didn't understand the principle so because you you have different choices it's a and could be j maybe first and be the j second i you start from one i and yeah we want to reach another disk but it could be above or below in this picture and if you have more uh no no it's it's many of them it's maybe some intermediate here yeah yeah I have many many a disk but they're from order set and if I go from one to another from which I start could be below to the result or above and according to this picture you use different yes yes yeah it's for it's ordered pair ordered pair yeah so this is just yeah it's it's really a long story how it goes I just want to explain you and tell explain it's in different terms in my letter for the lectures what is tii what is space ui ui is exactly this a di bi this is definition of spaces ui then what is tii you consider if you have a disk okay yeah you can see the one parameter family of pairs disk is marked points you just travel your point around the boundary of the disk and you make by because all constraints it's kind of local system get automorphism of this space ui and and what is tij just a second yeah so get for i and get something for j and uh what I just finished in one minute you have a pass uh and now now again you can see the one parameter family of disk with marked points which will start with the following thing it will be the mark points will be always bi I start with this then intermediate step will be something like this and the final step will be again get one parameter family of disk with uh uh marked points and and what happens here uh so I get some kind of again disk depending on uh oops sorry disk depending on parameter theta uh some angle along this variable and so what what I get I get ad0 maybe di by uh monodromia along the pass or holonomy along the pass it's identified as d maybe 2 pi the same di then both of them mapped by restriction map because both contains original disks adi bi and also also both of them isomorphic by ax axon to the direct sum also the morphic to direct sum and uh one can check that the matrix when I have so I get isomorphism the space to itself in the matrix will be identity identity zero here because this one is quotient object and sum operator which will be the definition tij yeah that's uh that's the definition of operator tij um yeah yeah so it's a really long story but um if I choose um yeah and if I get this explicit data one can explicitly construct a shift which is argama is equal to zero and the whole thing it doesn't depends on description and yeah so eventually we see that's argama is equal to zero it's a kind of calculational result it's not follows from abstract homological algebra reasons um yeah so uh one can choose different passes in fact if no three points right on the same line one can choose kind of straight passes between disks and sort of maybe rotate a little bit these things yeah so in general what kind of collection of passes you can choose to have this equivalence I don't know it's uh it's kind of interesting question of topology about braid groups so now we have small break for maybe 10 minutes half so before I talk to you a lot about this topological how topology looks like so eventually it's very simple data but depends on this drawing and now about hodge theory so all this thing which you can see the x d and f is it is a generalization of a just smooth variety and divisor say with normal crossing but variety it's not compact and in what sense the generalization we just consider usual rate geometry it's apart when f is equal to zero it's uh and uh of course then then we consider h deram x d f uh it's kind of generalization of deram homology of pair when there's no function we don't have this correction to differential uh and uh so if you try to think it's uh about hodge theory this is commolder of pair it's typical example of mixed hodge structure uh it actually it's not enough considered just open varieties you really can see the pairs to get interesting hodge mixed hodge structures and pure case in uh respond to usually that then d is empty and also x is compact now and uh what is uh analogy of pure case in the case of function uh kind of analogy analogous to pure okay situation is when d is empty but f is proper uh in fact it's very common situation at uh that is it's proper um often when d is empty but f is not proper not proper uh there exists a compactification or partial compactification x tilde contains x uh and f tilde also uh c is proper uh such that compliments say again uh is kind of d horizontal is uh divisible is normal crossing and f f tilde restricted to any and let's say it's union of some d alpha of any intersection is vibration so topology at infinity doesn't uh change uh yeah that's kind of really nice situation in this situation first of all see that critical points of f is the same as critical points of f tilde it's it's automatically belongs to x and um then whatever commolder of pair for x and f is the same as commolder of x tilde f tilde and the same with the RAM in comparison isomorphism um yeah so one can uh kind of get a non-proper station can replace by proper without changing anything and yeah it's very concrete example I can just say the following suppose x is c star square with coordinates let's say x one x two and the map is those two x some low run polynomial one c star square uh then the generic fiber is elliptic curve minus three points and even singular fiber singularity curve minus three points you just add three points to the fiber and compactify the fiber so x tilde will be x and you use three copies of of c computerized somehow and this this things became now proper map and without changing topology yeah and um and such things are really very convenient just instead of uh this proper map you can consider these things which are equivalent to proper uh you have the same co-homology and uh yeah for example we can make kind of tame polynomials even for example take x is c and f is x square x square it's you can yeah no here's a term yeah in the case of one dimension there's really no problem but what is advantage uh such things uh uh uh call x e kind of is a singular to infinity if there exists x tilde satisfying all this property and uh and if you get these things one is either singular to infinity and you have another thing is either singular to infinity you can make a tensor product and here will be some kind of tom sivastiani some sort of the kind of preimage of one plus preimage of f2 and just take these things is again is a singular yeah so in sense it's proper kind of kind of pure hodge whatever unlike of pure hodge structures we can really multiply and just take product yeah it's um there's some sedge mark that's it's very common yeah there is something called tame polynomial for example people sometimes consider x just c in and you get f is some polynomial and for good polynomials you can compactify fibers uniformly without changing topology and also reduce to this pure case yeah yeah but now uh I assume that it's assume d is empty and f proper uh I can do the following I consider some h bar will be parameter plant constant for any plant constant I associate h d run depending on the constant on x and f there's no device I skip it from notation and just by definition to be hypercomology of x is the risk topology you take forms with differential h bar d plus df yeah so the claim claim is the following so this uh this this form this collection of h around h so this forms an algebraic vector bundle on plain c this h bar coordinates and uh for each degree in doubt this uh it has a meromorphic connection natural meromorphic connection uh this pole at h bar equal to zero and in irregular singularity in general here and regular singularity at infinity no other singular points uh and and and the so we get a connection and the connection has second order pole it's irregular has second order pole at h bar equal to zero yes yes uh kind of remark yeah that's kind of yes yes it's kind of first fact it's its vector bundle essentially says it's rank of h h bar equal to zero it's this it doesn't jump it's uh our old result with Sergei Baranikov which was reproved several times and I will explain the proof in the next lecture of more general result yeah yeah that's it's analog of degeneration of hodge to degram spectral sequence and this allows to speak is about uh fact that the connection has second order pole because otherwise you don't have canonical notion of trivialization yeah so the actually what's the origin of this connection uh this uh for for h bar non equal to zero one get conveniently constant into dual lattice uh in in this homology kind of gamma h sitting to h and in fact it's to describe connections better describe this lattice uh the the reason is uh is the following you see that this thing is isomorphic to the homology of d plus df divided by h bar namely isomorphisms you multiply h times degree of form you add you kind of rescale complex and you replace by this uh complex and and then here by comparison isomorphism so it's h deram of x and f divided by h bar and then it's isomorphic to h beta x f divided by h bar turns around c and the image of this things will be a lattice gamma h gives the lattice and lattice gives you a connection there'll be a unique connection preserving this lattice uh yeah so the non trivial thing to check its lattice this has this thing has a real second order pole uh first thing that's if you consider connection over uh go to loran series in variable h bar uh then this uh and to allow poles then it will be isomorphic to the following thing uh to direct some overall critical values of my function uh you take exponent of the i divided by h bar as a kind of generator of demodule in h bar variable uh changing some regular uh holonomic uh demodule over this uh formal uh loran series and uh this part if consider regular holonomic demodule over uh uh loran series is the same as vector space with plus automorphism and in fact what is this vector space in this automorphism we can see the uh homology of kind of beta homology of uh uh neighborhood of maybe uh f minus one of the i this coefficients this shift of vanishing functions of vanishing cycles of function in shift by the i so it'll be value zero and this is a billion group with automorphism and it gives the regular holon demodules and and this is I think it's maybe slightly and let's survive the answer it was actually my question a few years ago and it was the answer that it's uh this is holonomic demodule it's canonicalism of to this guy okay then there was things which I probably will not explain right now the stocks filtration uh at h bar equal to zero in any direction in any direction uh is compatible with lattice structure yeah so there are several statements here if you also go to form power series but without inverting variable h bar uh then it's canonical isomorphic to direct sum of all critical points and you take homology of formal or maybe analytic neighborhood or analytic algebraic neighborhood of what um you consider these things and intersect with this critical set of f called it's maybe kind of capital z i of z i it could be very singular subset an algebraic subset of my x but take arbitrary neighborhood and in neighborhood I consider uh forms now add formal parameter and take again hd plus df the same differential yeah so I can calculate it uh calculate these things uh locally and uh what else I want to say maybe a couple of points here is that fiber at zero is uh it's natural isomorphic sum over i homology again of neighborhood of z i is complex of forms with differential adjustment application by df and it's uh and it's isomorphic homology of x with the risky topology with df and isomorphic homology of x with analytic topology with the same thing so formal you don't think that the right formal completion yes yes and the analytic you don't you do you mean complex analytic complex analytic but then you have to take uh for you take formal or convergent power series no no still formal yeah in each part of the formal power series yeah in fact so when you take analytic is a fixed sum of the limit of what i was for any given neighborhood yeah yeah yeah it was yeah it was pretty complicated story here yeah but I think it's all of them are isomorphic whatever you do and maybe what the last point here get uh and also get kind of non-degenerate pairing it's essentially the spawn carrier pairing which I explained to you before between h and the ram h bar xf is isomorphic to h maybe take do minus h bar xf because it's take a for h bar not equal to zero we get up to shift we get this pairing which I explained before it extends uh to uh non-degenerate pairing pairing at h bar equal to zero yeah so get this picture I will not really yeah it's uh yeah no this is this kind of analog of hot theory and let's explain in a second why it's analog that's going to be sort of the analog of hot theory now yeah so what here really goes on for h bar not equal to zero we already get this notion and no no trouble at all uh what happens if we remove zero we can we just uh uh consider remove zero obtain get uh irregular holonomic demodule on c star with coordinate h bar which has irregular singularity at h bar equal to zero and regular at h to zero regular h bar goes to infinity but now one can make the following thing let's introduce inverse variable call it t just uh so we get demodule on c star t to get vector bundle this connection algebraic connection uh but now it has irregular singularity as t goes to infinity and irregular as t goes to zero and demodule of this thing it means that we have an action of partition t inverse and do dt since it's like usual commutation relations but this demodule we can interpret as demodule over c just forget that t is invertible and the same is demodule on c this variable t uh such that t gives invert multiplication by t gives is invertible operator it does the same story uh plus some regularity condition yeah again the same regularity condition yeah which you have here plus the same same regularity condition and such thing yeah so it's uh and then this thing gives by Fourier transform so Fourier transform it means that t we goes to do d z with z some dual variables and do dt goes to minus z okay and we get demodule on c with z coordinates such a do d z is invertible plus some regularity yeah but this demodule will be regular will have regular singularity everywhere uh and uh then what everywhere including infinity yeah and uh this demodule has regular singularity infinity then it gives a by Riemann Hilbert correspondence it gives a perverse shift on c such that our gammas of the shift is equal to zero because how we calculate the ramp homodule we get a module kind of d uh demodule over this invariable z and when we calculate the ramp homodule you just consider m tethering o by o m tethering o by forms and uh to get the ramp differential you just act by do d z and consider kernel and kernel of these things here so it's the drama homologous kernel kernel of do d z acting on this total space model and because it's invertible it means exactly means that it's our gamma of corresponding constructible shift is zero uh and this is exactly this shift which I explained to you before or or it's functions functions and polynomial functions in the invariable yeah so you see that it's um yeah so it's eventually it's equivalent to this topological data which I have before uh to have these things and uh so if you just throw away zero you get the same topological data just rephrase in different way and extension to h bar equal to zero it's kind of analog of hodge filtration that's where hodge structure uh appears uh one can treat the very simple case when f equal to zero yeah and if you follow the the line then h deram h equal to zero of x f equal to zero you will be direct sum of hp of x it's a bit uh direct sum of commulger forms yeah and for h non-cozy will get the ramp commulger and how we glue one thing to another it's using hodge filtration yeah so because it's well known for things like filtered spaces are the same as c stark variant bundles and you get essentially this uh this picture uh and uh what I want to say is it yet it it looks it's all this uh things can be extend to general case if x bar is contains this d vertical just using d you want to plus the d bar I have the three things and uh I really want this property uh this is before and I get a bar from my extension to p1 then what one should do one should consider on x bar minus d vertical we can see the things like this we can see the forms which vanish whose restriction to d bar is zero and our logarithmic forms with respect to d horizontal and we have this shift and and we end up end out with differential h d plus df take our our gamma and uh this again form a at least a hop form a vector bundle as h bar goes to zero and the same story works uh yeah so just minus d vertical yeah sorry yeah sorry you're right you can see the forms vanish it's easy to see the vector bundle outside yeah because it's the same you have topological description topol and homologous pair don't jump yeah but it's bar to zero it I think it's it's the spectral sequence again degenerates but um but in principle should be part of more general things about so this is a generalization of the previous yes yes yeah yeah yeah I think it's should work even for general mixed hodge models so let's me formulate the general story there's some kind of notion of things called mixed hodge models uh it's by by seto uh yeah yeah so it's uh if you have uh but these mixed hodge models could and very interesting mixed hodge model on a fine line see this algebraic all right you're not an analytic one what is it it's a constructible shift it's a perverse shift of the modules which correspond to some things with regular singularities uh in corresponding demodule with regular singularities and to treat care something like hodge filtration this will be vector bundle this connection to some delta functions yeah so there's some kind of notion here everywhere including infinity yeah and um so we get some some category of mixed hodge modules and contains spot uh uh which do not by something like this those such that r gamma of constructible shift is zero and uh is it a q shift or z shift z shift say yeah yeah or maybe q shift maybe a different perverse yeah yeah maybe to q shift yeah forget about torsion it's also it's not terribly good yeah and this is a rigid tensor category where you use convolution additive convolution to make a tensor product yeah actually this perverse shifts will be automatically constructible shifts shift sitting in degree one is follows from this condition yeah there's some simple result that in case of unveritable it's automatically just sits in one degree shift and and there is some kind of weight filtration here yeah so this one can make analog of weight filtration story which we developed with the unsuible one for some auxiliary reasons and um yeah so this can complete parallel to usual story and maybe I stop here and continue next week


Thanks Autodesk for having me. Thanks Rumpi Giz for having me. Actually, I was pulled into this. Yeah. So I'm going to talk about debugging with Git. So Git is not just a conventional source control system, right? It's a very powerful tool. It has pretty much everything that you need to control your code base and control your source tree. And debugging is kind of like a side effect of it, but it's a powerful tool for debugging as well. So this is kind of like a beginner to intermediate talk. So if you're already familiar with all the concepts here, just bear with it. I think some people will benefit quite a bit from it as well. So the first part of the talk is going to be about the prerequisites. Before you can actually use Git for debugging, you have to satisfy some sort of requirements first. Because the biggest requirement, the first requirement is that you have to have smaller modular commits.   If you're not doing this, please do it. The reason is that you have to walk through the Git history in order to know what's going wrong in your code base. If that's a bug, it's a defect, for example, you have to walk through the Git history and understand why that happens.   And don't be like myself three years ago and do something like this.  When you look through your Git message, you should probably have a good idea of what a commit does. If you have to use the word end in your commit, then you should think again. Things like cleanup and refactoring probably are not very suitable for a small and modular commit. You should break it down to two commits, one for cleanup and one for refactoring. And even better, you should break down into cleanup something, cleanup like a user model, for example. Cleanup one file, refactoring one file. And why do we have... Oh, sorry. So when you have a big change, I think a lot of you go through this problem a lot.  The best way is to always commit when you do something and then it works and then commit it. But you can and you forget to do it. And then you have a big chunk of code to be checked in. Then you can use the dash P option when you're doing a Git add. Does everyone know about this? No? Oh, great. So yeah, if you provide a dash P option when you add a file or adding a folder, for example, it will show you all the chunks, all the code pieces that you can pick which one you want to go into a commit. So doing it that way, you can break down a small chunk of changes into smaller commits. And yeah, the reason why you need that is think about Git history as some sort of an event system. Each commit is like a record of something that has been changed in your code base. And if you put a lot of changes into one commit and you lose a record of all changes inside. So this is going to come back again when I do a live demo. I'm going to show you some techniques where you can go when it comes to debugging. So let's get to that now. Oh, and almost all changes in your code base should be recorded. Again, using smaller modular commits. So debugging with Git, basically the main philosophy is that you have a system. You have an application, for example. And things were working fine yesterday or some day ago in the past, but now it doesn't. So some features just got broken.  So debugging with Git will be able to help you resolve that problem. So I'm going to go through some scenarios and do some live demo, hopefully they'll work. Yeah, so the first scenario is that you have a defect of the bug. And if you're the one working on the code related to that bug, you probably will know which file contains the issue. So if you know the file, you can use either Git blame or Git log to go through what all the changes have been done to the file. So I'm going to show you an example right now. Just clear that up. Okay, I have a project here that I've been working on or I used to work on in the past. And yeah, it's basically a Ruby gem. And this project is incubated by Ruby on Rails organization. And if you're a Rails developer, any Rails developers here? Oh, wow. So I worked on this in the past, but I haven't been working with it for a long time. And I just checked it out the other day and I saw something different. Suspicious commit. And if I do that again, hopefully it's the one I'm looking for. So there you go, I have my white border. So it's a pretty useful tool. And now since the change is very small, I can really look through this and understand what happens, whether it's intentional or not. And probably hopefully I can get my white border back. So if you are the one working on the file and you know which file contains the issue, you can go with git blame and git love. They're very powerful tools. But it's often time that you don't know that, right? If you're new to the project or you're fixing some bugs that's someone else. Right? Yes? I'm so moved to git, but like, no. Can I run two git folders? No, two git archives on the same folder. Sorry, can you review that? Can I have two git histories? Two git histories? For the same folder. I don't think you can. I'm thinking to run one every minute. That's a commit. And then doing a totally separate that I do manually. You should use branches for that. Are you familiar with git branch? I always see the issue. And I make some changes to some project on git helping. Yeah, so, I don't know what you're saying this. Maybe you can talk after this. Okay, so the second scenario is that if you're not the one working on the file and you don't know which file is the one you should be modifying. And seriously, you have no idea. So you can use git bisect. It's a very powerful tool as well. What it does is that you'll run a binary research process similar to this. So you know that the current commit is bad. And then some time ago, you can go through the history and see that there's a commit that's good. So like the commit I just checked out earlier is a good commit. And I can mark it as bad. So I can mark the current head as bad and that commit as good. And git bisect will walk me through the binary research process. You'll go to this commit in the middle and then I can test and see if it's a good one or a bad one. And then you continue going like that.  And then this is the one I'm looking for. So it is pretty powerful. I want to show you right now. Is this commit based on branch or is it on file? It's on my branch. So given this process, you don't really know what file it is targeting.  So what you're looking for is a commit, right? And then if you do git show or commit, then you'll see all the things that the commit does. So basically it's touching this web console HTML file. Yeah, these are the things that have been added and removed. One commit can have more than one file also. Sorry? One commit can have more than one file also. Yes. So that's why I was saying that if you really want to do debugging easily, then it should have very, very small commit. And if there are more than one file changed and you don't have a really good reason for it, then probably you should back it down. So you would commit per file? I would personally do that. But if you don't want to, if multiple changes in multiple files correspond to the same feature that you're committing, then it's fine. But I highly encourage you to do that. Because if you want to group multiple commits together, you can do it with pull requests. But a commit should be atomic. Sure. But very often the single commit, if you do it on the file level, it may not work or it may only fix part of what you're trying to do. Yeah, you can use steps for that. So if you're adding a new file and it doesn't do anything, if it has the function call, it can just return something. And then it works. It definitely works. It will run and it doesn't break anything. And then you can start adding more stuff to it. It's more like a process thing than a technical thing. You just have to be disciplined to it. I lost what I'm doing. Oh, automation, yes. So this is on the assumption that we are debugging on the branch where we have made all the commits. So let's say I have a front-end commit to that branch. And then I integrate to the next level, right? All that history will be gone. What do you mean by the next level? Okay, maybe I'm not very well versed with the big things. But master, let's say master. I have my own branch. Yes. I have 40 commits. And then I integrate back to master. Yes. That will go as one commit, right? It will be treated as a merge commit. 40 commits. 40 commits. And then I can debug master in the same manner? Yes. Unless you squash them. Yeah, if you squash them, then it's just one commit. Then that goes right. Then you resist. Yeah. Okay, automation. GetBicycle is pretty sweet as well. You don't have to do all of that manual step yourself. You can just write a test script and then do getBicycle run with a test script. And if the test script returns with a status code of zero, which means that the commit you're testing is good. So we can automate all of the rails, start server, and then go to the browser and check for the white border easily by writing a test script.  It's pretty sweet. Yeah. But the third scenario is very, very complicated. Is that if you go through the getBicycle process and you find one particular commit that causes the problem, but when you look at the commit, you have no idea what it does. It makes changes to the file that you don't understand. You don't know the code that it tries to change why it was created in the first place. So in that case, you have to walk through the entire getHistory and make a snapshot of the getHistory related to the problem that you are trying to debug. You have to do this in a manual process, but I can show you it's fairly easily done as well. So let me go back to master. Master is very far ahead from the branch that was done away with you. So now all of the code structure has been changed a lot. There's no action dispatch folder. Everything is inside a web console folder. And inside that folder, we have templates. And inside templates, we have multiple template files. There's not just one file anymore. And we have this style of CSS.ERB. This is the one that contains all of the CSS files in master. And if you do a getLog of that file, it's only one commit. What does this mean? If this is the one causing the problem and there's just one commit, you can't do anything. This means that this file is either brand new or it's broken down from another file. And in order to verify that, you just have to look at what the commit does. And there's a huge chunk of thinking here, which is why I said if you have really, really small commits, that's a lot easier to go through each individual commit and then know what it does. I can just search for my file, the file that I was looking for. Yeah, so this file is basically renamed from... Yeah, so this is the one deleted and this is the one added. So style.css.erb was renamed to... Yeah, style.css is renamed to style.css.erb. So if I want to know what happened to this style.css, I can just check out the commit that happened before that, which is the commit that creates the style.css file. And then I can still have... I have the style.css and I just do a getLog again. But again, you have only four commits here. It's still not enough. I want more information because I want to find out why this code is added at the first place. So if it is a problem and I haven't worked on the code, I'm not the one writing it, then I need a lot of information in order to understand what it does and why it doesn't behave the way I want it to. So the same thing. You can just check out this commit and go back to the commit before that, which is the commit that before creating or renaming your file. And you check that again. Style.css.erb. So style.css.erb was renamed to style.css and is renamed to style.css.erb again. So if this thing continues, right, then if you just do a git bisect and you get the very first commit that's bad, you have no idea what goes on.  Probably some programmer thinks of some brilliant idea and then it doesn't work out. It's not the case here, but... Yeah. So if you log the file again, again, there's only one commit, it's still not in half. You remember when I did the... What if you commit every minute with a timestamp? You will be able to read everything. You will be able to read everything, but your commit will probably not make sense because your commit needs to work. Yeah. You have some changes that something like add a new file or delete some file and it doesn't contribute anything. And the commit message is important too. You read... This is a very good commit message, right? It says extract something or something which probably means that there's a file that's been broken down into smaller files and then, yeah, this timestamp is just getting quite big and blah blah blah so I need to break it down further. So this is very, very descriptive description. It helps to understand what the commit does even though the commit is rather big. So if you commit every minute, you lose that very descriptive message. I usually have a descriptive message on top of each function. Top of each function. Yeah, but the message is for the change. Yeah. That's why you're making a change. Yeah, why you're making a change. Yeah, I'm looking at this because if you're going to make a very huge editorial responsibility of these commits, you will spend a lot more time just putting in the timestamp and reading step by step backwards. Well, it's a good investment. Think of it as an investment, right?  This is documenting. Yeah, basically documenting. It's like in your life, right? In some stage of your life, something happened and you want to make sense of it. Like you'll get married while you get married or something. Yeah, so... It's the same process over and over again until I can... So you can see here now, if I go back one commit earlier, then we have this session.shml.erb file, which is the only file that's under template. And remember the commit message earlier? Extract template, rendering, and split into template files. So this is a big file that we're talking about. Now if I go and git log the file and it would show me some changes to it, and if this provides enough information for me to start debugging, then I'll just stop here. But you can go on and on, keep walking through the git history until you find probably until the beginning of time when something was introduced, some features introduced, and then you have all the information you need. You understand about the system, you understand about the problem, and you can start debugging with that. So I'm going to stop here, but you can actually go further and then go to the underscore web console, the html.erb file that was showing you earlier. So some food for thought, actually. My live demo is done. We'll see that again. Can all of this be automated? It actually can be, right? Git by-side can be automated using a test script, as I mentioned earlier. And the whole process of walking through the git history also can be automated. The problem is that your commit is not good enough for you to write any script that passes the commit and do something with it, like walking through the git history. It's basically the same process. You go git log and then get the first commit, the changes in the file, and then check out the commit before and then it goes through it again. So if you can classify the commits into different categories, git basically acts on files, right? And there are only a few things you can do with files. Either you're adding a new file or deleting a file, or breaking down a file into multiple smaller files, as I showed you earlier, or you're making changes to the file. And it's just that. Each commit should do one of the four things and nothing more than that. This is a little bit out of control because as a developer, you can't be disciplined enough to do something like that. So I'm thinking about something, some sort of a abstraction layer on top of git that influences this kind of behavior. But it's just some thoughtful thoughts, seriously. But the same is my philosophy in theory that this whole thing can be automated very well. And then think about, imagine the future, right? If your user reports something wrong with the system, some new bugs were introduced, and then just run a single command and give you all the information that you need through the git history, and then you can have everything you need to start debugging and start crafting up a solution. It's pretty powerful. So git is awesome. Use it. If you're not very good at it yet, just keep working with it until you're better, I think. Yeah, that's it. I got a quick question about renaming files. It sounds like from what you say that the moment you do a git mv, you should commit before you work on the rename file. Renaming file basically to git, it means you're deleting a file and then you're creating a new file. And then there's some reference to that as well. Exactly. Yeah, so if you rename a file, probably you should commit. Immediately before you work. Before you work on something else. I think you should change the references also to this file before you commit or not. Now, git will do that automatically. So to git, basically you're adding a new file and deleting an existing file.  I think that's my mistake. I've got a lot of trouble with that. The log history of files when you're renaming. It's probably very hard. It's very, very hard. So what I did, right, as you can see earlier, you should keep the history of when it's renamed. So this file is actually renamed from a style of CSS file. And you can do git log dash dash. Which means you'll provide the logs of all the commits that happen to the file which has been renamed. This is the one that appeared in the past and doesn't appear now. And you can still do that with git. But the problem is in this scenario, right, you have a file, file A has been renamed to file B. But then you'll rename back again to file A. And then it's impossible to just look through all the changes. And you have to walk through the git history, go back to the commit before when the file is renamed, and then you can log it and see the commits before that. Does the follow option work? Follow option? So git log has an option called dash add follow? Let's just try that. I haven't tried that actually. This? Yeah. It's still... Wait, let's move... If you don't have the follow option... Oh yeah, it works actually. It's pretty good. Yeah, it works. Thank you. So basically when you rename a file, it sort of keeps track of it based on the similarity of the deleted file and the created file. And you can... I think in log or some other commands, you can actually delegate how much similarity you wanted to keep in mind. So I don't know the exact option, but it has it somewhere. It can do that? I thought it's like keeping an i-note of the file or something. I don't know. I also don't know. Yes. That would be a silly question. Just you mentioned of file A renamed to file B then back. Yeah. So if this happened in the past, then is that a way for us to correct it or, you know, make less trouble to the... For the future. You have to do it yourself in the present. You cannot go back. Well, I encourage you not to go back and then make modification in the past because it's very nasty. You want to keep a record of all the things that have been changed in the system and basically don't keep lies because if you go back and change something, it's just a lie. So yeah. So my colleague has this... My colleagues has this nasty habit of checking out git and then after that copy it to another folder who changes there, take a bunch of files and everything move back to the git directory. Yes. Copy it and there's one whole change. Yes. How do I tell them not to do that? I think those are called standard operating procedures. Just kick their ass, really. Get the precom calls. In this folder, there are lots of checkouts that are happening. Yes. In real time, all that happens is when the issue comes in, whenever we are working on the other task. Yes. So what will happen to the files? Consider I do a checkout. Yeah. And at that time, I already had some files which are made. I was able to do it. Yes. So all three are sold. So you can do either one or two things. The first thing is you can stash them.  Yeah. Yeah. So yeah. The second option is that you can go to another branch and commit all the changes there. Just a dummy commit. It's just like a placeholder. And then go back to the current branch and you can check out in the past easily. Sorry. No, just go to a temporary branch. Yeah. A disposable one. Yeah. Is there a possible way to commit procedures? Yes. You can. Git rebase can do that as well. So. Okay. Any other questions? No? Okay. Thank you. Thank you.


Thank you all very much but more importantly all of you there in the stands including myself now up here shall we just once let out a yell and show how much we appreciate what all these wonderful people have been doing for us here for the last hour. We really thank you. You know this year is Ringling Brothers 100th birthday. They're just a little older than I am and this year they're going to do more than just entertain people. The Ringling Brothers Barnum and Bailey Circus traveling across the country is going to have a program that is called the Save Safe Kids campaign with all of the lost children the problems that we're having in this country. They're going across the country. They're going to give children and parents an opportunity to obtain free educational material identification documentation and help keep their families safe and secure. Earlier this month I met at the White House with the group of leaders from the communities from law enforcement schools business government to talk about what can be done to keep all children safe and I asked them to form a national partnership for child safety and now I'd like to ask all of you boys and girls who are here today to join at least in part time in that campaign and I've jotted down a few things here in a card that we'd like to ask you to do and to tell you what to do how you can help number one be sure to learn and know your full address and your home phone number second always let your parents know where you are and learn to use the phone so that you could call them from anywhere and third most important listen carefully to all the special safety tips that your parents and your teachers tell you each and every one of you is very important to all of us I think you could see that when these wonderful people here were willing to give of their talent and their time to entertain us the way they have and now throughout the country they're going to be participating in campaigns to see if we can't prevent the disappearance of children that has been happening in our country that's all the time now and I've taken too much time away from all the beauty and the glamour is here but just to add my thanks to all of you here in the show to all of you for being here thank you God bless you all


system in particular convertible virtual currency exchanges. Then as I remember in January 2017, IDRBT, a research institute of Reserve Bank of India enlisted the advantages and disadvantages of digital currency. While the advantages indicated were control and security, transparency, very low transaction cost, the disadvantages indicated a bit of security issues and volatility. The Supreme Court held that the RBI's circular, which prevented regulated entities from providing banking services to those engaged in the trading or facilitating the trading in virtual currencies, was liable to be set aside on the ground of proportionality, on the ground of proportionality, one of the most important grounds for judicial review, ground of proportionality. Basically, many of the law students or lawyers would be able to gather this that in the test of proportionality, the courts will caution the exercise of discretionary powers in which there is no reasonable relation between the objective, which is sought to be achieved and means used to that end. The implication of the principle of proportionality is that the court will weigh for itself the advantages and disadvantages of an administrative action. And such an action will be upheld as valid if and only if the balance is advantages. If this action is disproportionate to the mischief, then it will be quashed. So that was the ground on which predominantly this circular was of Reserve Bank of India was quashed. The Supreme Court said that when the consistent stand of RBI is that they have not banned, they have not banned virtual currencies and when the government of India is unable to take a call despite several committees coming up with several proposals, including two draft bills, both of which advocated exactly opposite positions. It is not possible, Supreme Court said for us, the Supreme Court said it is not possible for us to hold that the impugned measure is proportionate. That's how the Supreme Court reached the conclusion of striking down the RBI circular. The RBI circular was struck down by the Supreme Court by considering some important facts as well in the chronology such as RBI failing to identify in the past five years or more the activities of virtual currency exchanges having essentially impacted adversely the way the entities regulated by RBI function. They were not able to establish that there was any adverse effect by these virtual currencies. The consistent stand taken by RBI being that it has not prohibited virtual currencies in the country and even the Interministerial Committee constituted in 2017 which initially recommended a specific legal framework including the introduction of a new law namely a crypto token regulation bill 2018 was of the opinion that a ban on crypto currencies might be an extreme tool and that the same objectives could be achieved through regulatory measures. Yes, that's what they felt even the Interministerial Committee. Nobody was propagating complete ban. The court noted that the position as on date in March 2020 was that the VCs were not banned, virtual currencies were not banned, but the trading in virtual currencies and the functioning of virtual currency exchanges were sent to a state of comma by the impugned or the challenged circular by disconnecting their lifeline namely the interface with the regular banking sector and what was worse? Supreme Court felt was that this has been done despite RBI not finding anything wrong about the way in which these exchanges were functioning and despite the fact that the VCs are not banned. So there was a kind of mismatch in the way RBI had proceeded. Well, I will now close my talk by summing up in few words by starting to with a court of Victor Hugo who said nothing else in the world. Not all the armies is so powerful as an idea whose time has come. So nothing can stop an idea whose time has come. Fiscal era of human race started with a commodity based barter system and then it moved on to sovereign legal tenders known as currency system and now we have this math based value system. Let us embrace it with caution and a set of regulation, caution and regulation.


Hello. Welcome to the Judge Ben Show. My name is Ben Joseph. I'm a retired Vermont Superior Court Judge. This is a program in which I interview people about issues that concern us in Vermont. I've done several shows recently about domestic violence and sexual assault, and those things are available to you if you're watching. I want you to understand that the 800 numbers that you see in the screen will work from every county in Vermont. So while Rose works in Rotten County, and we'll talk to you about what she does there, if you live in a different county, not in Rotland, and you see this program, if you dial that 800 number, you'll be connected to the program in your county where you live. You won't be talking to someone in Burlington or someone in St. Albans. It'll be a local connection, and hopefully that person can help you when you talk to them. So today it's Rose Kennedy's turn. Rose, you're the state's attorney for Rotland County. Hi, Judge. Yes, I'm the state's attorney in Rutland. First of all, thank you very much for inviting me to appear here. It's good to see you. Thank you. I've been the state's attorney in Rutland since 2015, February 1st, going on six years. Wow. Yeah. Time flies. Well, how many people do you have working with you in your office? I have six deputies, deputies, state's attorneys, and I have two victim advocates and three admin. So we're a pretty busy office. We handle somewhere around 1500 to 2000 cases a year. And a lot of those are pretty serious cases. Obviously, we handle all cases from misdemeanors to homicides. But yes, we're a pretty busy, pretty office, and I have very dedicated staff. And approximately, how many domestic violence and sexual assault cases do you handle in a year, do you know? So our numbers were down a little bit in 2020, I think because of COVID and the reporting, sort of the difficulties in reporting. But in 2020, we had approximately 150 domestic violence cases, both misdemeanor and felony, about 25 violations of protective orders, and about 30 sexual assaults. So I think our numbers in 2019 were slightly higher. So I'm not sure if we'll see a peak when sort of the restrictions in COVID are lifted and people are out and about more. But that is probably my guess. I've heard this in several different counties that the numbers went down, particularly at the beginning, when the lockdowns first happened. Well, I think it makes sense. I mean, you're dealing with folks who are navigating, maybe losing a job or trying to figure out how they deal with childcare, you know, and so it's not the time to sort of be bold for some people. And so I think people are a lot of people are just in survival mode mode right now. And so I think when when COVID starts to lift and there's more movement and more security, I think maybe we'll we'll hear about things that have happened over the course of the last year. Do you have a kind of a backlog of these cases? So yeah, we do. Our courts, I think, are being you know, very, very good at sort of trying to handle as much as we can remotely like we are today. But there are some things that just can't happen that way. Trials being one of those things. And motion hearings where, you know, there's going to be live testimony, and the parties can't agree on whether or not a remote testimony situation is okay. So because there's been, you can't really schedule those right now. There's a there's a bit of a backlog. Well, that's, you know, this has got serious consequences. I mean, I imagine there are some defendants who are held in jail waiting trial, and they get held longer and longer because they can't get into the courtroom. Right, right. It's, you know, obviously, it's not ideal for anyone. There's victims that want cases resolved. They want to be able to sort of get through the process and move on with their life. And like you said, there's defendants who are being held and want their day in trial or what they're doing court to be able to tell their their side of the story or make the state prove its case against them. I think we're all doing the best we can, trying to resolve cases where we can. And, you know, I think once once we are told we can have jury trials, there's going to be a lot of cases that, you know, are in line to be heard. Well, do you do you work with various organizations in the county? Yeah, we have a great domestic violence center in our county called News Story Center. And my office works pretty closely with them and Disability Rights Vermont. We have a, we actually co-authored a grant together. So we sort of have formal ties with each other. If a victim comes in and sometimes we might not know, but we might have a suspicion that there's a disability at play, we'll reach out to Disability Rights Vermont. We often encourage the victims to reach out to News Story Center to figure out what sort of resources are available to them from their angle. We also work with Have Justice Will Travel, who helps out with restraining orders and such and Family Court. So we have a pretty good relationship with different agencies that are designed to help victims. We also have a pretty good relationship with, you know, other state agencies that just come across these types of cases and the people that are involved in them. So my office holds a routine meeting with Department of Children and Families, probation and parole, law enforcement, trying to think who else. Anybody who might be in contact with the families that we're in contact with, letting them know that charges have been brought, letting them know what we're seeing, and just sharing as much information as possible. Sometimes we can't share things, but trying to share as much information as possible so that we know how to help folks out of this situation. Well, I'm sure housing is a big issue. Housing is a huge issue, right, especially in Rattling County. I'm not sure about other places, obviously, but yeah, that's tough for folks, trying to figure out where they can go to be safe and to stay safe. And like I said, News Story Center is great with that. And we also have another agency called Brock that helps with that. So, you know, we're constantly making referrals. Do these people go to shelters or they go to hotels or what do you do? I think through News Story Center, they mostly start off in hotels or a shelter and then they sort of work with them from there. But I do think it's difficult for them. That's one of the things that we hear regularly that trying to find a safe place to land once they've decided to leave their abuser is often very difficult, especially if there's little kids. Oh, I can imagine. If the victim is working, she's got to find some arrangement to take care of the kids. Yeah, and that's really tough. I remember having a conversation with a woman who got pretty badly assaulted and really wanted the charges dropped. And I met with her and tried to figure out exactly why. And it was because she had trouble finding someone to put the kids on the bus in the morning that she had a certain shift. She couldn't she couldn't change her shift. And so, you know, having the abuser be the one that put the kids on the bus in the morning was huge. And without it, she thought she'd lose her house and lose the school district that the kids were in, which was, you know, really positive for everybody. So, you know, sometimes it's a matter of just trying to figure out what the issue is and if there's a way to provide support. And it can be challenging, but we try. Have you had cases like that in which you've been successful? Yeah, I mean, I think Vermont, I mean, Rutland in particular has a pretty good support system. And like I said, we all sort of talk. So when those issues come up, we try really hard to find solutions. But, you know, there are obviously some that we can't find solutions for.  And that's really a decision that the victim makes. Well, we try to have conversations with them. And it's, I would say, obviously, as the prosecutors in the case, we have an obligation to make sure they're safe, and we have an obligation to make sure other members of the community are safe. But, you know, when we're dealing with adults, we try to have very frank conversations and try to figure out if there's, you know, common ground that we can agree on. So I'd say it's a give and take. And we never, you know, we never abandon what our role is. But, you know, I do think that there's an understanding that adults are involved. So trying to have honest conversations about it. So the victim really can make decisions here. It's not as if the victims have no say. They definitely have a say. I mean, sometimes, and I, you know, sometimes because of the injuries, because of the danger the defendant poses, we may go forward even without their agreement. But we try to have conversations in which they tell us their opinions and we, you know, we share our thoughts and try to be on the same page going forward. Wow. How long does it typically take now for you to get one of these cases? You're not even trying cases now I gather. Is that right? No, we're not having jury trials.  So there are a lot of cases sort of backing up. Well, that just really gives the defendants some real power in this, I suppose. Yeah, it's hard to say. I mean, I think it can go both ways. Sometimes the more distance makes the victim more, the stronger, you know, in testifying and sort of more able to talk about what happened. But I certainly think there are pros and cons to the delay. And I think it depends on the case and the facts of the case, you know, who is benefiting from the delay. Well, I, you know, I often think that each case is unique to its facts, you know, and not all the same.  Every case is different. Right. I think that's something that a lot of people don't appreciate, you know, it's one of the things about your job, you know, every case is different. Right. That's right. You've got to try to find the best solution for each case. It's a tough, tough job. What do you do with cases in which the children are present when some of these crimes occur? Is there any special approach to that? So, I mean, they're not the direct victim, but they were in the household when it happened. Exactly. Yeah. So, you know, we do, as a matter of course, make a report to DCF when we learn that case. I'm sorry. Just for those viewers who are not familiar with the... Oh, sorry. Yeah. Department of Children and Families. Here you go. Yeah. So, they have a 1-800 number and, you know, we will call them in the morning when we learn that kids were in the house, even if the kids weren't witnesses or present during the actual assault, just so that there is a record that kids were aware or at home, we assume that they hear and that they're aware. You can bet on that. Great. So, in our DCF office, like, you know, we have an understanding that they probably won't accept it for investigation unless the child was actually involved in the assault. But they know it and that's, you know, I think that has proven to be very helpful when some of our families sort of reappear to have that sort of history that the kids were present at other times as well. So, we do that. And like I said, we meet regularly with a representative from DCF who specializes in domestic violence issues. So, you know, when we charge a case, sometimes we're not aware if kids were in the house or if, you know, sometimes it might not necessarily come out because the assault might be late reported or whatever. And so, just letting them know who we've charged and if it's familiar to them, then they can be aware that there is a domestic violence issue going on with some of the kids that they're working with. So, those are the two main things we do. We also do try if the children are old enough to talk to them and find out what they heard and what they know. And, you know, depending, that hasn't happened very often, but when it does, it's, you know, probably people would be surprised to know that they hear and know a lot more than parents think. So, it's been helpful to sort of understand the context of the assault and the relationship of the abuse. Do you ever get complaints, you ever get information from school personnel? Yeah, I mean, usually that goes first through their mandated reporting through DCF.  Right. If they suspect child abuse. So, that's usually how it goes. So, we, you know, law enforcement in DCF will talk to the schools, but we do, you know, we have a good relationship with the schools, and I think that they do a good job reporting what they suspect and, you know, DCF and the law enforcement folks do a good job sort of following up on those. Well, I think several agencies, yours especially, really onto this, trying to do their best for these people. Are there any resources you wish to, additional resources you'd like to have? So, I'm fortunate because I have a DV prosecutor, I have the ability through a grant, through a stop grant, was able to have a DV prosecutor who that's all she really does is domestic violence and intimate partner crimes. In addition to that, through the grant, I have a part-time DV investigator, which has been crucial, I think. Is there a person you've got 20 hours a week who does nothing but investigate these cases? Yeah. So, I think, you know, normally when a domestic violence or domestic assault case comes into law enforcement, you know, law enforcement is responding, oftentimes in middle and night, their number one priority is to separate the folks, make sure people are safe. There's not a whole lot of time or people might be in the middle of the trauma and can't really talk about, you know, the history involved in the relationship. So, we use the domestic violence investigator to sort of do a follow-up interview in the days that fall, you know, days after to try to get more understanding about, you know, the overall relationship and the context of the assault. And that's been really helpful for us to, you know, understand what's been going on. Oftentimes, a victim of domestic violence will not call the police immediately. You know, it takes many, many assaults before they call the police. So, by the time we get involved, we kind of know, we want to know what's been going on before they picked up the phone. And so, you know, having that DV investigator at our disposal to do that follow-up is huge because, you know, like I said, a lot of these happen at night and we're in the office during the day. So, to connect with the officer that actually handled the arrest can be problematic and a lot of, you know, phone calls back and forth, but having a DV investigator to just say, can you pick up where that officer left off and, you know, follow through has been great. And we've used it to file what's called prior bad act notices so that the court can have a better understanding of, you know, the actual context of the assault, you know, that it wasn't just one slap or one push that it's been going on for quite some time. Well, I think that's typical. Am I right about that? Is it typical that it's been a long course of conduct? Yeah, so when I first took office, one of the things that really struck me was a lot of our first-time calls were strangulations. And that just seemed kind of hard to understand. And what I've learned is that, you know, when someone gets grabbed by the choke, it's scary enough that that's when they call the police, but there probably were other things that happened before that. So, you know, in that context, having the DV investigator sort of get that story is really important to us. They can get a history, as it were. Yeah, exactly. And so we campaign a fuller picture when we're in front of the judge or the jury about, you know, what really has been going on. This wasn't a fight over, you know, the TV or the dinner. You know, it's a relationship that has a lot of violence in it, potentially. And of course, if there's been witnesses to these incidents, that's so important if you can get that absolutely sorted out. Right. And there often aren't witnesses. You know, oftentimes this happens in someone's home, but what there are witnesses to maybe are mood changes or personality changes or, you know, random bruises that don't have great explanations. And so we've tried to find those people too and been successful in cases to sort of bring those people out and, you know, match them up to what the victim says was actually happening and had success. So, yeah. Well, I think the mandate is you mentioned mandated reporters. There are people who will have to report if they think there's been a child when it assaulted. I mean, a lot of cases that come from a teacher who walks into class and sees a kid with a black eye, that kind of thing. Right. It's important. Yeah. And it's not the same for adults, obviously. So there's a lot of people out there who might suspect, you know, a friend or a loved one is being assaulted and don't feel that they have the they're in the right place to make that report. From my experience, from where I sit, you know, I'd say go ahead and, you know, let law enforcement know and see if the person's willing to talk about what's really going on. You know, I've certainly had those cases where mom suspected daughter was being abused, but didn't feel like she could say anything. And then once the daughter came out and said that she's been in an abusive relationship, mom felt horribly because she hadn't spoken up sooner. You know, there's really no easy answer to all of that. I understand that. But, you know, I think like you have the 1-800 number down there, I think that could be helpful for people who think they have a loved one in an abusive relationship too. Well, I'm hoping this gives them some ability to help, at least to find out what's possible. Right, right. God, what a job.  Well, I don't know, Rosa, so much to talk about. And no, really, it's just so hard. So hard. And I think the delays in the court system are not helping victims. I've been thinking it's been bad for the victims that there'd be so many delays. But I think there are things that can be done short of prosecution that you can help them with. You can steer them to resources. You can steer them to different options, to housing, to counseling, to things that can help the kids. Absolutely. You can't get the case of trials. There's a lot of other things that can be done. Right. Yeah. And I have, like I said, I have two victim advocates in my office who have been trying their hardest to sort of stay in touch with people during this period. And, you know, certainly would try to help any way they could for people right now. And, you know, they might not have the resources themselves, but would be able to direct them to the folks that that do. Well, Rose, thank you so much. I can't thank you, Judge. Oh, no, I really appreciate it. I think it's so important. I think there's so many of us who work in our own little bubble, you know, that people don't understand what your job is. And it's not like it's public knowledge. So the more that I think it's one of the functions of this town meeting TV stuff that, you know, people get to see who's in charge in this county and what resources are available. And I'm hoping if nothing else that we've done that today. Well, thanks for highlighting it. Thank you for all your interest. I'm going to try. I'm going to do a few more of these interviews. One with an old friend of mine who's not doing this work in Canada. Can you know that? Yeah, it's going to be fun. All right. Interesting to hear how it's done in Vancouver, you know. Right. Okay. Well, thanks again. Thanks. All right. Thank you. Take care. You too.