ProgCrypto (ZK) Study Group 2025 — The Moonmath Manual to ZK-Snarks: Chapter 3 Arithmetics
Ethereum Malaysia·Thu, Oct 9, 2025, 12:00 AM
It’s that time of the year again—We're diving back into zero knowledge proofs! Join us for a weekly study group starting June 24 (Tuesday), as we explore the Moonmath Manual by Least Authority. Each week, we'll break down the theory and optionally implement what we’ve learned to build real understanding. Whether you're new to ZK or looking to solidify your foundations, this is a great way to learn together.
Transcript
Okay, there you go. So, um again, thank you all for coming today. Um yeah, let's start from so we we last week we discussed that we were going to cover mainly 3.3 3.4 with focus on Chinese remainder theorem and um mod inverse and also lrange interpolation.
So that's the few topics that specifically we want to go a little bit deeper into. But um just for um to to include everyone um anything that um it's like before uh Chinese remainder here for congrance like 3.2.1 and 3.2.
Anyone have any um questions uh things they want to discuss? I'll take the silent as a no. So okay then let's go to um 3.3 Chinese remainder theorem again. Yeah.
So before before we go into this um yeah any parts of this that you do not understand for 3.3 that you want to talk to us about you want to ask about here. Wow everyone understood this. Um did anyone of you try to implement um for those that techn more technical did anyone to of you try to implement um I check the Chinese remainder theorem in uh in code? No.
Okay. It will be fun though. I uh I would love to see someone do that. That will be quite an interesting thing to see and you help you probably learn a lot. Uh it's fine.
It's fine you know. So okay so 3.3 I assume this um no one has issue with 3.3 then uh but yeah just for the sake of it um let's try to go through one of the examples um over here. So yeah, example 10 um so looking at this.
So okay so um for congruences um essentially right when we talk about using the Chinese theorem to solve a system of congruence what we essentially want to do is to find some value for x that um satisfies all this right um given some of x it's um congrent to four mod 7 1 mod 3 mod 5 0 11 right so um in order to do that um they actually give us the full steps here but um essentially um let Let me see if I can pull up some notes here. Yeah, it's fine. Um, so essentially we want to find a x value that satisfies all. So to do that, um, we can start by doing, um, if you have pen and paper, feel free to do it on on your end. I am going to do it on pen and paper that I cannot really show here.
Let's see. I'll try to get a let me see I can annotate this. Um, annotate. Um, okay. So is there okay great um can I just nope I cannot do that I will need to clear all the drawings so um there you go nice so first let's focus on these two um to actually do uh for these four let's focus on these two so let's find a value that um is equal to four mod 7 or 1 mod 3 um one very simple way of doing this is essentially just um I mean it's essentially you have to go through each of them right so four mod Um what is 47?
Well, four is 47. Uh 11 is 47 and so on and so forth, right? What it's what is 47 and also 1 3. So um actually interestingly enough four is four mod 7 and also uh one mod 3 in this case I believe. Yeah, four mod 3 is 1 three right.
So that's our first so that satisfied these two these two right and so now we want to find out this okay so let's do just okay so we'll also usually um combine this because four mod 7 and one mod 3 essentially um is also equivalent to four mod 21 okay okay great yes Okay. So now let's find something that is also um let me just so let me just this is a bit confusing. Let me just remove this. So we have we found four here. So um since we found four we want to find something that satisfy this and also um x um equals to three right.
So to do that x uh x congrent to 3.5. So to do that um let's find something that's with that satisfies the above and then this um so to do that essentially you have to find um usually in increment of um 21 because you want it to satisfy this above right. So something that satisfies both of this will needs to be needs to be um in well in mod 21 essentially because if you just take one of it like let's say we just take smart mod 7 it might have some that does not satisfy the second congrent right yeah the systems of congrent essentially so um so 4 + uh 21 so four mod 5 is obviously four plus 21 will be 25 in this 25 mod 5 is zero. Um + 21 will be 46.
Uh 46 mod 5 it's uh 1. So this is 4 um 0 1 and then plus 21 which is 67 in this case. Um and this is um two actually and uh we continue plus 21. So 80 8 yes 88 mod 5 will be three. Okay great.
So it's 88. Okay. So um here with this two we know it's um 88 right? 88 um x is 88 right? So here um since 8 is 88 so we can also basically add this up.
So 8 88 mod uh 21 * 5 it's uh [Music] I think is this should be let me just yeah I think this is correct 105 should be yeah yeah so 88 mod 10 105 yeah so now 88 mod 105 we have this now let's so let's do this okay oop oh this is quite useful I should use this more often anyways um so now we have this we can now try to calculate this right the last one zero mark 11 so to calculate this again uh this is kind of the uh so to say more brute force method um if you implement the algorithm it obviously becomes a lot easier to calculate with your computer right um so yeah so from there from here uh let's see let's look for something that satisfies all the above and also um will be congrent to zero mod 11 right so 88 um let's remember it's plus 105 my handwriting is getting worse here um so 88 mod 11 actually that's zero so I don't even need to do any more calculation 88 mod 11 is zero so you divide is eight right so it's zero so we know a x from from this calculation right from this calculation we know x is 88 um or more accurately represented x is 88 mod 7 * 3 * 5 * 11 which is u the answer here so is 115 I'm going to copy this. Um yeah, so that's that's essentially how we calculate the the um simultaneous congruences, right? We are the Chinese remainder theorem. Um okay, let's see if I'm right. Oh, I can't screw with this.
So I'm just going to clear everything. One, two, three. Boom. Okay, great. Um what's this?
Okay, so is it 88? Yep. So it's 88 mod. um in this case 88 mod 1155 right and um you can see here that it tells you that the set of all solutions is this because remember in modular arithmetic well um there is a lot of possible solutions other than 88 right and you get all this set and if you are a little bit confused how you get all this set is essentially via 88 minus or plus right it goes up or down right in this case um yeah so that's essentially it um and if you have sage you can do this. So, I'm just going to copy this.
If you have Sage, you can try to do this on your laptop. Okay, let me just do this. Okay. Um, I need to clear this. Can I clear this?
Nope. I cannot turn Kitty again. Sage, welcome by the way. Um so yeah, see so this is essentially doing the same thing that we did but a lot faster. Um but yeah so follow along if you can you know great.
Um okay so that's essentially just a brief go through of this um you can also see like um they they do use something like this. This is essentially the um extended ukleian algorithm that we mentioned last week in very little detail. We just went go through it by passing is this. It's the GCD. Um you might know other ways of calculating this by hand.
Um it's slightly different but yeah it does this right. Anyways so that's that. That's a very quick one go through of the Chinese remain theorem. Any questions? Oh let's see.
Oh yeah. Oh that's great. Sell works. Yeah yeah it should it should work. Um let me see as well.
Yeah, I I personally don't like the UI there. I think there's another one called co something uh that someone mentioned in the group. Um but yeah, if you can use the the link that be just mentioned in in the chat. Yeah, use it. Um it's fine.
It it does the calculation should do the calculation fine. Yeah. Ah, cool cloud. Yes, thank you very much. Get Gerald.
Um yeah, so yeah, you can do this, right? This is obviously faster than what I've tried to do here. Um and most of the time when you work with um DK there is library out there but if you need to implement it by hand it it does help a little bit to know how how to calculate it um you know anyways so I'll assume there's no questions so far. Okay, if that's the case, let's go. Oh, go ahead.
Yeah, no problem.
I just I just in the outside, so I will.
Yeah. Uh, so uh I'm not I'm not sure on on the uh process of the Chinese remainder algorithm that the uh that uh why why do we have to to do the uh extend ukliden algorithm here? I mean like I'm I'm trying to put this one through.
Ah I see I see. Um I think in this case so um what what I've manually done um is essentially I'm looking through all the possibilities right but I uh what what's is essentially done here it's trying to find so in each step um it's essentially trying to find um the x value for um let's say um n1 is trying to find Um so 5.79 * 7 is this one right? So it's getting the GCD of 7 and in this case um 165 uh 165 it's obtained via um this division right this um 117 time this is a essentially this is the product of all this modular and by dividing by seven you you get essentially this value this value is um not exactly the result of um what we've done just now. Um but they are trying to essentially do this steps here.
So this is a more algorithmic way of doing it. Um they're essentially trying to do this and then calculate via uklidian algorithm to get um the value um the the values required to find the next um the next step of what we've gone through just now. So remember just now we we first find some some x value that satisfies these two and then we try to find some x value that satisfy all three and then go to four right
that's more of a um calculation on hand so this follows this algorithm here um it does essentially similar things um but yeah it's more computer friendly I would say this because if you want to implement what we've done just now um with a program it's essentially like quite a lot of loops Right? You need to find this and then you need to generate all the possible modular that satisfy both and then you have to generate again. You have to generate again it grows with the amount of simultaneous congrent in this case it's I think faster at least it's not n more than n square I believe is it yeah might be more maybe n square but yeah it's definitely more efficient to do this on a computer than this. Yeah. Um okay I guess I mean I mean is some is it is it actually some algorithm that we would do it on the computer rather than the uh just calculate by hand because the the value is so vast.
Yes. Um it's so what we are working with here right now it's very small congrents right um so these are are pretty pretty easy to calculate by hand and if you try to do larger values or if you add more uh like if you do something that's mod some prime some very large prime number it's a lot harder to do by hand because you've seen just now I'm I I mean I'm already struggling a little bit although it's like just like hundred something right thousand something
right So you can imagine if it goes uh like to a huge amount this will be a lot better to calculate um I believe yeah but if you look at um what they are trying to do here um they get this value here um it it's part of the formula that that's introduced here um but yeah it it achieves the same thing it's just I think this is a little bit more formal um harder to understand definitely um but it does the same It's trying to find some value that satisfy all of this
specify of that's only one value that satisfy all the congruence, right?
Um to be fair, there's a set. So the set is this.
Uh we are we are finding the smallest value that's non- negative. Um which is nicer to represent. technically you know anything that mod 1155 um that's 8 88 mod 1155 right would be that's a lot right so you 88 plus this will still be mod like when you modify 88 it's still going to be 88 so if you modify it's going to be 88 so what I mean is let me just try to see if I can write this so um it's in this set because um 88 mod 1155 it's it's I mean it's 88 right but technically 1247 which is equals to 1155 plus 88 mod 1155 is still 88 right so um yeah the the answer you get is 88 mod this um but it's actually a set right the solutions for for this is a that um but yeah
you you're right to think that 88 is the answer um it's just that to be a little bit more specific or a little bit more I guess accurate it's a set of numbers that is this yeah
yeah the negative numbers does the same thing it's just minus right
so if I understand it right so 88 is the uh we we we can 88 can be can be used for the congruence in the uh problem at the first right the for access above
uh you mean for you can say 88 is the answer for this yes yes
okay
88 mod 1155 it will be the answer to to this yes
okay I think I think that kind of makes me a little bit right now
great great great yeah thanks for the question you know always appreciate it. So, any more questions? Don't be shy. You're also free to answer questions post, by the way. Okay, then we'll we shall move on.
Okay, great. Um, so there's also remainder class representation. So this is um yeah this is essentially we are trying to do the remainder class for the remainder you get the following. So this is essentially let's look at example right choosing the modal n equals six we have six remainder classes and this remainder classes essentially is what um um how do I put this? Okay.
So when you say given given modulus 6, right? 0 modulus 6 can be the answer to zero modulus 6 or like what modulus 6 is zero can be a set of values right and same goes 1 2 3 and four and five. So this is essentially the remainder classes um so to say um yeah that's essentially what it's talking about. I'm going to quick skip this. But if you have any questions on this, yeah, tell me.
So the next important Okay, so before I continue to the modular inverses also to un answer some questions from last week as well. Um there was question on hey you know um we are learning on um like we talking about we are learning uh modular arithmetic and um poly arithmetic you're learning about all this um remainder theorem modular inverse like why why are we learning them so actually so for for Chinese remainder theorem it's actually used in um cryptography and particular implementation of um FFT um so um what what part in cryptography one might ask. So uh one example is Shamiro secret sharing which is uh it's not I guess it's not ZK but it's NPC um where you essentially shout your secrets to um multiple parties and then only when you have a enough shares that you can recover the secret. So these are the building blocks of um ZK and other cryptographies are like the primitives to them. um that's why we we learn about this, right?
Um it's to help us understand it and hopefully maybe in a future workshop. Um we can implement it, you know, that's the that's the that's the goal, you know, to build something useful of this. Okay. Anyways, module reverses again any questions before we maybe go to one of the examples? Any questions you've had after going through this section last week?
Anyone? [Music] Great. Great. Oh, you guys are really good at understanding this. This took me a while.
Um, that's great. Then we can So, let's let's just go to look at the uh example here. Um, module inverses. Essentially what inverses are the multiplicative one at least. Um so let me just find something.
Yeah. So inverses is something like this you know. Um yeah inverses generally speaking multiplicative inverse we talk about it it's is this yeah a * a e to the 1 a inverse right is equals to one. So this is an inverse. So let's go through an example shall we?
I'll go through one and uh hopefully one of you will go through another one. Well, we'll pick player. I might be Yeah, just prepare yourself. Anyways, uh so let's try to go through the simple ones here, I guess. Where is the find the example that they provided?
Actually, no, it's not here. Yeah, but yeah, there's also a way of doing it when they calculate you can actually calculate resus r in modic and this basically gives you the inverse u. Yeah. So let's let's go through this example shall we? Um t so oh sorry just first where is it okay so here um they're trying to find there is a chance where you do not get there's no inverse right um for example um for the value two in um modular six arithmetic there is no inverse for two because two and six are not um co-primes so so sorry two and six have a GCD of one so there are no co-primes yes um does not have a GCVD of one sorry I said the wrong thing yeah they are no co-primes um two and six has a GCD of two I believe yes two so that's why if they are not co-prime Uh that's how you know they're not co- prime and in that case there's not really a inverse of two multiplicative inverse of two.
Um but for five so for mod five arithmetic in this case let's say um here they actually so yeah this here so here they actually talk about uh let's see where where do I okay so five so for five let's find the the inverse of let's say four so to find the inverse of four in five um one way is to use this r -2 right and we can find so in this p is five and r r is I believe the value itself so it's four to the let me just get a calculator not calculator annotation um sorry four to the f minus two remember to mod So the inverse of four using this method should be 4 ^ 3 mod 5 which should be equals to a so 4 ^ 3 let's just cheat a little bit 64 64 mod 5 which should be equals to [Music] E four actually what um yeah for five so it's his own inverse um yeah so that's how is that correct wait let me think h is that correct ah it's congrent to negative 1 5. Yes. Yes, you are also right. Um but 1.5 is technically four mod 5 too.
Um yeah, but if it's I guess if it's um just um integer positive integers, it's um 4.5. So it's its own it's its own uh inverse in this case. I think it's Frank from my understanding it's right. I'm hopefully I don't understand this wrongly.
Um but yeah um I think that's an example here. So this is three. So in this case three uh the inverse of three in modul 5 arithmetic is two. Oh where am I? Okay.
Yeah it's two. Yeah. And uh if the inverse of three is two, then the inverse of two is very likely three. Um yeah. So anyways, yeah, that's one way to get a this is one way to get essentially or calculate essentially how the multiplicative inverse of uh in some modular P arithmetic.
Yeah, thank you for the Yeah, anyways. Um yeah. So you can also try to find some inverse of um of a polomial here but it will need to be in a in modular some modular arithmetic. Um yeah so in this case let's look through this 3x + 3 = 0 um following yeah I think this is modular oh yeah this is just showing the difference between uh nonprime number arithmetic um not really inverses sorry okay but yeah uh let's let's look at this then so consider the modulus this um which of these values have multiplicative inverse in mod 24 arithmetic. So in this case um we have to first know calculate if it's a co-prime um here.
Uh so seven is not a co-prime I guess. Wait I don't believe so. Let's do the GCD of this. Um, no they are a co-rime. Yeah, they are a co-rime.
Sorry. Yeah. Um, one technically is a co-rime. Um, zero is not a co-prime. Um, 805 is a co-prime.
And this let me wait. H this I believe also is a co-prime. Yeah. So I believe other than zero all of this should have multiplicative inverse. Um, I'm not going to do the big numbers cuz I'm I'm lazy.
Um, but yeah, let's try to comput the inverse of 7 and 1 in mod arithmetic 24, right? Um, because GCD is um yeah, GC of 10. So 4 and 7 is technically one. Uh 1 and 24 is one, I guess. Um yeah, so let's find you know what?
Let's just find seven, right? I'm a little bit lazy today. Um, okay. So, how do you find it? Again, um, RP minus 2.
Um, in this case, 74 minus 2 is 7 to the 22. I'm not going to calculate this by hand cuz it's insane. Um, sorry, that's also insane. Um, let's just mod this by 24. Can I just mod?
That doesn't make sense. Wait 7 4 - 2 or 7 and two. Yep. One. That doesn't really make sense to me.
Wait, is the calculation wrong? this calculation we can mod 24. Oh, it's one uh apparently. So, so the inverse of seven in 24 module 24 arithmetic is one. Huh.
Okay. Oh, yeah. Wait, great. Yeah, it just didn't seem right in my brain. But yeah, so yeah, using theorem.
Yeah, that's how you calculate it. So yeah, you can do the rest and um that's that's it uh for modular arithmetic. Sorry, modular inverses. And any questions? Yeah, 24 is not prime.
The inverses are really weird. Yeah. Any questions before we move on to our final topic? that we want to cover today. So uh hi hi hi hi um so having an inverse means so multiplying 7 to one in modular arithmetic 24 is going to become one right like the whole meaning of inverse
let me think no in this case I don't believe so uh so 71 is not So 7 if you take 7 mod 24 * 1 24 it's going to be 7 in this case right?
Yeah that's why I was a bit confused.
Yeah. Yeah. So uh I it's really when you talk about um yeah when you talk about this um in in in non prime number. So let's let's nonprime number. Okay.
Yeah. realistic uh let's take if you think about talk about prime number modulus I think it makes a little bit more sense for example um just now we calculated
uh four four mod 5 it's inverse is four mod 5 right 4 * 4 is 16 mod 5 is one right it goes back to one
and for example three and two right three is the inverse of two 2 is inverse of three for modular five arithmetic and 3 * 2 is six mod 5 is what right
so in this case it it kind of doesn't Makes sense, I guess. Um, but I think if you um do it in a prime number, this might be a little bit more sane. Um, I'm not sure about that, but yeah. Um, it will make a lot more sense um in uh in
uh Hello. Yeah, sorry. Yeah, go for it.
No, so his wasn't his question is like what's the definition of a modular inverse? So yeah, in mod 24 uh the inverse of 7 is 7 because 7 * 7 is 1 because it's like what's the modular number equivalent to 1 / 7. That's like the definition of what an inverse is. So yeah and then going back to your other point uh when you're in prime world so it's like if you mod a prime number generally like all the numbers will have like a friend or like a pair. So like 2 and three are like inverses of each other in mod 5.
But then like usually the prime minus one which is like mod 5 is four. Then that is always an inverse of itself. But then the other members will have like a friend. But in like mod 24 then there will be weird things. Some numbers don't have inverses some do.
But yeah generally the definition of a modular inverse is
a * e to
* b. B is A * B and if B is the inverse of A if the result equals one
in any case it can A and B can be the same thing.
Yep. There you go. Thank you. Wait for the for the
Thank you. Thanks for explanation. Thank you. Yeah. I'm not very very familiar with uh nonatic but yeah thank you very helpful.
Any more questions before we go ahead or any we want to talk about great let's proceed. Um yep so 3.4 for poly poly arithmetic. So yep um we talked about univariate pol last week um division prime factors. So uh the main point we want to talk about is lrunch interpolation.
So before we get in here any questions on 3.4 Wow. Okay, great. So then let's go into Lrunch interpolation. So yeah, this is uh something that we'll constantly use um in various ways.
um in this case um yeah so this is something that later on so in in graph 16 uh the growth 16 protocol as well um we'll use this in a lot of I I believe you know most all if not all um ZK protocols we do use this in in different ways um we do use FFT um in place of the original le I mean we are just we still doing interpolating right but we're doing SFT to make it faster but yeah the the idea is the same um this is a technique that we use um to for for the calculation in in a lot of the protocols and that's why this is essentially quite important here so yeah any questions on this um anyone who tried to integrate like implement this it will be quite fun implementing miss I think um anyone questions okay if not um let's go through an example um as usual u come on should have tried um but yeah let's go through an example for this um and then yeah let's let's see if we get questions and also on so Um what lranche is um simply is um essentially it's a it's a way of so given some points some points on a what's that called some points on the plate on the graph yeah some points on a ukium plane I guess that's called it's called ukidium plate yeah um axis yeah um given some points um given m point n plus one points you can um calculate a um m degree polomial. So essentially um yeah that's a very simple explanation of it but essentially uh you have some points right you have some points sorry every time I draw in the words you have some points tada you have some points right let me just draw simply points um you have some points yeah and um essentially what interpolation does is it it draws blind And uh this is usually a polom in this case right and if I have four points you can at most get a is it at most I might be wrong but you can get a a degree three polomial right and if I have more points you can get something higher as well um but yeah that's that's essentially what lranch interpolation is and um we're going to go through two examples here just so that we see what how it works for um nonmodular uh non modular arithmetic math and then we see how it works for modular arithmetic. So here um given some set s right 0 4 -2 1 2 3 um we want to compute like a polomial of degree 2 in this case um if you look let me just cancel this for a while if you look here they gave like a algorithm that you can use um I'm going to use this because I don't really know really other very efficient way of calculating this Um but yeah um so let me just take this. Okay great. Um so it essentially it calculates so for these three points it needs to do this three calculations for essentially I mean it's not each of the points I guess is for each of the points right?
So x - x1 this x - x2 this sorry the wrong one this y x yeah this and x0 - x1 so x0 - x1 and x0 - x2 so you do this for each so for the second one is the same uh but it's it's instead of from x0 it's going to be from um x - x0 instead and x1 - x0 x1 - x2 and this is the same right. So to after you do this calculation you essentially get a polomial for each of it get one polomial for excuse me L0 L1 and L2 which you then combine um in the end by doing PX = 4 * L0 X sorry my this is a bit hard for me to control uh let me just make this nicer so in the end after you've calculate gotten this tree polomial. Um what you do is you did px equals 4 l0x plus so y so it's taking the first y values actually y 0 l0x y1 l1x so y1 is one l one sorry X and then plus um the final one 3 L2 X. Okay, so you can see it actually here and then you after you combine all of them um as seen here. Oops, I need to remove that notation.
then you can see that hey this is the polomial that you get. So this polomial represent a um represent a line in a sense a line that pass through these three points right. Um yeah this is n plus this three so n plus one so this is two um yeah you can also do the same thing for modular arithmetic. um in which case basically this but uh remember to follow the rules of mod something that you're working in um in this case again good example here um they are doing the same thing but here is4 so4 um under I believe this is mod five yeah mod five it's one right um yeah so this divide by one will be just what's above um which is wait I think this is because of um oh yeah 2 * 3 is one yes in this case yeah it's a bit weird anyways uh yeah so it does the same thing but it's just for honors um arith arithmetic which means that these are also behind All this it's not really written but they are technically something like this right so yeah um and and this is this is technically mod five um yeah but you usually wouldn't wouldn't really see this written out um it's usually say that hey you know this is operating in a a field of um order five. Okay.
So yeah um same thing goes here. I do this calculation I get x over 3 * this um and this becomes this because of the so 3 * 1 uh 3 * 1 1. So this case let me calculate for a little bit. You get this from H. I believe the result.
Let me just try to calculate this as well. So we should get X. Oh, sorry. one modular five. So this is essentially ah because it's inverse.
Yes. Um so it's x² + 3 x and then numbers of 3 which is 2. So it's 2 x² + 3 x and that's why you get this. Um so 2x^2 + 6 which doesn't exist. So it's one so it's 1 x.
That's why you get this. Um yeah. Uh so again I I'll put it in a little bit more clarity um here. So sorry. So this this became this because if you translate this um it's essentially um if you I mean if you do the calculation this is essentially x² + 3x / 3 which is equivalent to x² + 3x sorry time 3 inverse right I mean this is equal to 1 / 3 in in a yeah So which is the inverse of 3 in module 5 arithmetic is 2.
So it's 2 x² + 3x which again if you expand not is 2x^2 + 6x which is 6x is essentially what in this case plus x. Yeah. So yeah that's that's essentially I it's very similar to normal arratic. It's just that you have to honor the Mod 5 and um inverses are treated you can you can change them to essentially this. Yeah.
Um yeah. So do it for everything and then do the same thing of four * L0 1 * L1 and then 3 * L2. You get this very nice very pretty polomial without uh any fractions. Yeah, that's essentially what LR interpolation is. Um, so right now we're actually working with points.
You can also work uh you can also use it on well not really use it on uh polomial. You can use it on the evaluation of different polomials at a certain point and you can essentially get a new polomial that represents the value of that polinomial that you are interpolating or the point of the polinomial you're interpolating. Um yeah when given that point as an input um yeah I think I'm speaking very abstractly here never mind we'll cover this later on anyways but yeah you can use the grunch polomial to essentially create a new polinomial out of evaluation of other polomials at a certain point so you can take other you can basically draw a line that's that's what we're going to use in the future that's one very useful thing we're going to use in the future as well um So you will later in the I mean I'm just speaking like I'm I'm just talking about things that will happen that we can use this in in that way. So um in future we might have like multiple lines. Okay.
So like one line, two line, three line, right? Um you can use what we do here. So this this is like using multipoints to get the point. It's cool. But what's interesting is we can also use this calculation or the pol interpolation to actually say hey um let's say um I want to so this polomial so pol evaluates to a certain value at one polomial b sorry this is one sorry one polin b evaluates to a certain value at um two I suppose yeah two and polin c which is this really weird one evaluates to this value at point 3 and we can only just take this few points and then create a new polomial via the grunch polinomial to to basically say hey I'm drawing this new polomial that when at this point evaluates to the same value as pol A when at this point evaluates to the same value as pol B and at this point evaluates to the same value as pol C.
Yeah. So this is um something you will see in graph 16 actually um but yeah and and some other C protocols but yeah this is where um the poly is used just to share a little bit. Yep. Anyways, any questions? No questions?
Nothing. Okay, great. Um, if there's no questions, that's essentially it for this session. Um, before we end, so let's set um let's set a let's set what's for next week essentially. Um, so next week we'll be so next two weeks actually we'll be covering chapter 4.
Um, which is algebra. Um if we do it fast enough in one session maybe we can just cover like the entire thing. Um but yeah um please please please go back go through this chapter. Um yeah go through this chapter try to learn as much as possible. I really appreciate any form of participation during the session.
ask questions um tell me like ask question participate in discussion right way was really helpful just now thank you very much on that um so yeah I always appreciate we all learning together um yeah if you want to do all the examples go ahead that would be great um after you do the example you can also share like what you've learned that that would be great right but yeah um so for for chapter 4 um you don't need to do all the exam okay if you're asking if you need to to do one example. You don't need to, but I think they will help you learn a lot. Yeah. So, next week we'll focus on algebra. Um, and so there's a lot of things that pretty interesting here.
Um, there are some that are a little bit more straightforward um as well, but yeah, just go through them um on your own pace. Um, we'll see what we can cover next week. Um, we'll go a little bit faster maybe because I feel like um if there's not much questions, we can always go fast. this question. We can go a little bit slower across this chapter.
Um yeah, then we'll see. Okay. So, um homework slash um book for all of you for next week. Um go through chapter 4. Um yeah, and then we'll we'll come back again next Tuesday to learn before another thing before all of you leave me.
Um there is also going to be a introduction to zero knowledge um or more like it's a more like a lab section session I would say it's more like a hangout session that also would have um a small sharing on ZK a small introduction and sharing on ZK um next Saturday. So, I'll share the link here in the chat in a second. Give me a moment. Uh to get the Sorry. Uh okay.
Okay. So let me just paste it here. So um there will also going to be a uh introduction like the introduction zero knowledge um session uh where in the hacker house at um SS15 next Saturday it will be in the morning just before lunch um yeah you all you are invited you know let's just hang out a little bit talk about programmable cryptography um ZK you know and yeah it would be great to see you all there no pressure So yeah, anyways, thank you very much for coming today. Um, see you guys next week.
Bye-bye.
Thank you.
Thank you.
Thank you. See you.
Automatic transcript — names and jargon may be misspelled.