New Ethereum talks, every Monday. The week's conference uploads by event, in your inbox.

Loading player…

Essential Maths for Zero Knowledge Proofs: Laurence Kirk

NapulETH MeetupThu, Oct 9, 2025, 12:00 AM

NapulETH 2024 Open Village

Transcript

so this is our website for notes about maths uh ZKA uh and zkl so if you go to math. exe.io this uh the notes are there uh under the zkl notes all right so I'm Lawrence from extrap uh if you want to contact us here's some details uh yeah there's a link to the notes as well thank you for coming uh early this morning after after I know there some good parties last night all right so what I'm going to talk about are uh I'll talk a little bit about the the two technologies so machine learning and CK to give you an introduction uh then we'll talk a little bit about the problems of bringing these two things together and we'll go through some popular Frameworks that have been uh invented uh talk about some relat development uh demonstration I I can start that I don't know you be uh you want that but we we can have that uh and where you can find out more information so I'll start about talking about machine learning so it's part of the general area of artificial intelligence uh and machine learning itself uh there's a sort of subset of that well sort of more in-depth uh way of doing it I guess or more complex uh called Deep learning so you'll see many of these terms but uh machine learning learning is the more the more General one and the idea behind it is that we start with some training data and we we teach our our machine Learning System uh on the training data and then we hope that it can generalize uh and be able to use that uh the uh the training to then make predictions or do something intelligent so that's the the hope so when we're looking at machine learning we have really two phes we have a training phase where we're teaching the system and then we have what is called an inference phase which is where we're actually using that trained system to do something intelligent okay and for some some terminology we talk about machine learning models so these are the things that we we build when we when we're training we creating the these models and uh the the process of training can be quite complex and it is quite time consuming and uh there's special Hardware that is used to uh to to to help with the training just because it's so computationally intensive it take it can take a very long time and typically we use things like gpus and things that will do parallel processing so that we can uh get the training done as quickly as possible but even so if you look at some of the the latest machine learning models such as sort of the chat GPT models they have you know very very expensive hardware and they still take months to trying so it is a extremely in uh involved uh expensive uh and long run long running process so yeah these are the two uh Parts really so we do the the training for first of all uh and then we uh can use that training to make some predictions or do something intelligent and yeah as I said it can take a very long time now uh one type of model that has been uh used uh for quite a long time and has been very successful is a thing called a neural network and in concept this is modeled the architecture of it is modeled in a way that is similar to the way that the neurons work in the brain and so what we have is a number of nodes or or neurons if you like uh and they're they're created in layers so we have layers uh an input layer uh what's called a hidden layer and then an output and there may be uh many many hidden layers so there may this thing may be many layers wide and uh when the this is after this has been trained what we will do is we will provide it with some input uh in these input layers and these nodes will pass uh some signals to the next layer and as you see each each node will have connections to many other nodes in the next layer and then those nodes will pass information to the next layer and so on until you get some output and then hopefully that output is something sensible and as I said the the hidden layer here there could be many many of these now to go into a little bit more detail the way that uh we actually get the the intelligence in there the configuration in there is that these nodes when they're sending signals these signals can have what are called weights so the this each link between let me go back so each link that we have here between uh the node and the next layer will have a weight which will show how What proportion of the signal from here will go to each of these nodes and we we adjust these weights and really that is what the training is about it is getting these weights created so that something useful will happen so if we look in in more detail at that we have our inputs uh to a particular uh uh node uh or to a layer and then there will be weights which will do a proportion of this input and then send that to the next node and so all of that we one node in the next layer will have inputs from many nodes in the previous layer those all get added together so that's what the the sigma is for and then that is further processed in what is called an activation function so what this activation function is doing is trying to decide what to do what to pass on to the next layer and you could have it very simple you could say well there's going to be a threshold so that if the the the values we get here are above a certain level then we'll we'll send a signal to the next layer but if it's below a certain level then we won't okay so that's one thing you can do but what usually happens with these activation functions is that they are more complex so they will send maybe a little bit of signal uh if this signal isn't very strong uh and then it will it will gradually increase until there's a great signal uh as these are are greater but these these functions can be quite complex in in what they please come in please please join okay all right so uh another point we get with neural networks uh we also have these things called biases which is really like a an extra switch we can add to a a particular node to uh perhaps to make it fire more often to to make it pass on more often uh and this is just set as part of the the architecture it doesn't depend on the inputs here it's just always going to present give a certain value as well so this is a way you could say okay this particular know we think is really important so we we're going to give it an extra kind of a boost uh in the signal uh and you said that but it doesn't depend upon the the signal that's receiving um okay and that's really what how neural networks are built but they are they're built with you know many many layers and that's how they work in terms of going in this direction where you you start off with your inputs and you do the processing and get to some out outputs or maybe this is the better model you you start here and you do the processing and get to some output so that's called the inference stage that's where we're doing something useful but hopefully intelligent when we want to train it though what we do is we go in the opposite direction so when we're training a model and we're trying to work out which weights are actually going to be useful what we do is we say okay well I I know what output I want so for example if you you're training your model so that it recognizes a picture as being either a flower or a car then what you can do is you can say okay if the out I know the output is I want it to be a flower I want it to tell me that this is a flower you can provide it with some inputs and then see what happens and if it if it gets the correct output then you know that the weights you're using are correct and you can just keep going through adjusting these weights until it gives you the correct output uh with with the input that you have okay but that process of correcting these weights again is quite quite complicated and yeah takes a long time but that's what we do okay and so that was a basic neural network uh and these were invented maybe I don't know 30 years ago or something like that and then people started to make them more complicated and we get things called convolutional uh neural networks convolutional just means we're changing things in some way we're doing a transformation and the I won't go through all of this we don't really need it but uh this diagram is little small bit bigger but what what we do for to get things that will work and be actually useful we build models that have very many lays so you've got your inputs here this is a picture of a a robot and it's going through many many layers until you get an output and the output will be saying this is a robot and it's not a flower and it's not a car and the so we have lots of layers but then the other thing we want to do is we when we have this picture we don't want it to be too sensitive to where a to a particular pixel in the the input for example if I if I took this robot like the actual image and just moved it up slightly it should still be recognized as a robot we shouldn't be completely dependent on there being you know an eye at a certain point a certain coordinate and so with convolutional neurom what they managed to do by doing many transformations in these layers is to extract features and work out oh this this thing here is an eye and I I don't really care whereabouts in the the picture it is I can recognize that as a feature um well yeah wherever it is so this is a way of just making our networks even more sophisticated okay uh and we can also have these things uh we have things called Dropout layers as well where we can say okay we're going to ignore some part of the picture or ignore certain features because they're they're not very useful uh another design that uh was tried is is I thing called current neural networks and the the flow of this is from I'm going from from bottom to top here uh and the the recurrence part is the fact that we can get some flow going uh sort of back through the layer so it goes into the hidden layer and it can go across and then we can also get input back maybe not to the input layer but perhaps to other hidden layers so you get kind of Loops being involved in the uh in the layers and and what what this is showing uh is an example where we're we're typing in some characters and it's trying to predict what the next character should be so as you can see we've started typing in uh the beginning of hello uh and it's it's coming out saying okay the next one's going to be the rest of this word and we've got the final letter there and these were these were quite successful and I I played around with these a little bit you could uh about 10 years ago these were invented and you could uh train these on kind of normal PCS normal Hardware uh and they they did quite interesting things uh for example um this is a bit small but they you could train them on some some text and then it could it would it would uh produce something similar so for example you could train it give it some Shakespeare and then just give it a letter and then it starts to produce something that looks like Shakespeare so this is an example that It produced by itself uh and it it understands that there are uh for example characters and it will you know will have a character that is going to speak and then it will print out what they're meant to be saying so that it's quite successful quite sophisticated and this is similar to what chat GPT is able to do although that uses a different technology uh uh yeah so chat GPT uh these are large language models and what's really happened with these is that you've you've got this idea of a neural network and you've made it massive and so the number of uh weights uh involved as you can see there is uh you know one uh 1.75 billion uh weights and they've got you know this network of 400 layers so it's uh AB these things are absolutely huge so you can imagine when you're training these and you've got to set up all these billions of Weights it's going to take a long time all right now uh some of the questions about this I I this was uh originally this talk was about was also about privacy and and one of the reasons that we have we put together machine learning and and zero knowledge is because we want privacy and some these are some of the reasons May where why we would want to do that so for example if we're building one of these models that we're going to use it could be that that trained data could be very useful and so we may not want to have to share that uh similarly when we're training these models the input to these models may be sensitive so we may not want that to be public um and when we're using these models uh the the inputs could be confidential or personal you could have a model that is uh using medical data to to predict something so you have to be careful then that that's that data is not leaking so there is the need when we're using these machine learning models that we would want some privacy uh and we don't want to necessarily share all of the data um now question you could get around this because you could just use your model locally you could just do everything in private so if you're a company you could train your model on your own data you could just run the model yourself and not let any of the data leak out so everything would be private uh but then uh you get the well one one point second Point here is useful to learn from other models it's useful to be able to use training that other people have done so we would like to be able to share these things um also and this is another aspect of the the ZK uh ml is that we we often want to verify that the this model has worked because if you if you give some data say you give some medical data to a model and it comes back to say uh yes you're fine you don't have a particular disease well obviously that's good news but then would you trust that do you know that they've used a good enough model to to do that uh because they could have used their super cheap very simple model that always comes back to say everything's fine so what it would be nice is if you could verify that the the model they used was a competent model was correct and was doing the computation correctly and so this is another reason why we try to get ZK and ml together so to move on to to ZK uh this technology uh sort of an aspect of uh cryptography uh it gives it has two particular useful features one is that we can verify computation uh so if we have some computation being done we can create a proof that that was done correctly and it's the checking of that proof is very quick so if I have a computation that lasts 10 years I could check that that computation was correct in a couple of seconds okay which seems too good to be true but it's uh the other good point is that we have some privacy in zero no proof so that's the the zero knowledge aspect so we have we can put in private inputs to our proof and uh the person is verifying the proof doesn't get to know those private inbs and the the process of doing Zer proofs is a number of Transformations we start off usually with some high level language we write some program uh and there's some some examples here this then gets turned into what is called a circuit uh some representation of the the higher level language uh and then that goes on we do further things uh and this this is really part of the setup and what it allows us to do is to provide uh some inputs uh and be a public input and a private input to the the system we've set up and this will create a proof for us to go into that in a little more detail this uh this is uh an example got the the real world and snar world and I'd like to live in snar world uh this is really where we do the setup so we we create the circuit uh uh from maybe a higher level representation uh and this feeds into the setup and once we have that we can uh use the setup along with the the private inputs the witness uh and any public inputs to go to something to create a proof this creates the proof which can be sent to something to verify that proof and then maybe you would pass that on to some other aspect of the system maybe blockchain whatever I think uh maybe I'll I'll skip through some of uh through some of these and we can perhaps have more time for for questions so uh I'll talk generally now about the how we've managed to put these two areas together and what projects are out there so it's this is still a very new area uh but there are things being built so uh on the left hand side we've got companies that are building Hardware to help accelerate this process so this is because the training takes a long time so uh these companies are building stuff that will help that training quicker uh these are ones these projects here are ones I'm going to talk about in a second where they actually allow you to do the process and they will uh take moduls and allow you to uh get some output from the model uh with maybe private inputs uh these are these are more about uh blockchain gener things like axom that is allowing you to look at things that happen on blockchain and prove that that was correct uh the this decentralized training the Federation machine learning I'll come on to a little bit later this is really kind of a a different well or an alternative to uh some of the CK side um these ones uh again there some of them a little different or using other Technologies also Zama is a company that is doing quite a lot but they use uh a cryptography uh the technique called uh fully homomorphic encryption uh to do to allow private inputs to to V reses uh and then for some of the use cases uh you may have heard of worldcoin uh they have these things called orbs which uh they take a scan of your retina and then will give you a an identity based on that that you can then use uh and they claim and I'm not disputing this but they they claim that they delete the data and they just have the the identity so there's nothing can be Tred back to you or to your biometric data um and they're doing quite a lot of work on the cmsi they're doing a lot of research on that in that area uh other things I'll talk about this one which is a a standard for nfts where if you create an nft and you're generating uh the the image using AI so uh using the S of the typical tools we can use to generate images then this is a this is a standard on ethereum to check that that image is uh how that has been generated and that it belongs to this particular nft uh and then Rocky bot is or it was a an online trading bot so we it was it had some intelligence uh and it was let loose on uh from a wish train uh and then it just traded and it was hopefully made a pro it did make a bit of a profit I think uh and but you could check what it was doing by by uh uh the ZK side uh I don't know if I've got I do have some slides about Rocky bot somewhere I don't know if I got them in this presentation all right so I've talked about the two sort of two top areas of technology and uh you might think well great they're both interesting and wouldn't we love to just put these together and you know what why wouldn't we and what problems would we have well there's a lot of problems um so uh some of them first thing is the complexity so both of these areas are complex areas and require people to understand these areas in in a lot of depth um I guess on the machine learning side maybe people have been aware of this for longer but it's still a very complex area there's still not so many people who understand it on the the ZK side uh it's a very complex area very few people understand it they're still developing the area so that's one of the first problems it's it requires a lot of uh of knowledge uh also the one thing with one of these neural networks if I if I presented one of them to you and said here this this is capable of translating from English into French uh and you looked at the actual model and uh you just see lots of weights and you know it's difficult to understand well where in all of that is the ability to do what it can do it's very difficult to understand how machine learning models actually work we know kind of what they're doing and you know each signal go into the next layer but where is the intelligence in that it's somewhere within those weights and it's somewhere within the architecture but how that actually works how it's actually manifested into something intelligent and useful we we can't readily see we can't readily sort of point at it and say okay that's that's the bit that's doing a certain thing uh we just yeah it's very difficult to work that out uh but other other problems with integrating these things one of the biggest problems is that they depend upon a fundamentally different type of maths so with machine learning we're using floating Point uh representation so we're using fractional numbers we're using you know decimal point and then so you know lots of uh decimal place uh and we also do a thing we we tend to use matrices it's a particular type of of operation with CK we can't use floating points at all we just use integers uh we tend not to use matrices uh either so the the types of operations that are involved in each of them are fundamentally very different and it's very difficult to get these two areas together and on this this floating point aspect you could say well one way we could turn those that floating Point into a whole number so if I have you know number 3.7 I could make that into a whole number by multiplying by 10 so I get 37 I just have to remember that I multiplied it by 10 so we could turn it into an integer but that adds an extra step into our processing so if you having to do that to every number in the system that's going to increase the time taken to do everything um the other thing you can do and you we do do this in machine learning as well is you can reduce the the uh Precision of the numbers so you could actually reduce and get rid of some of the floating Point numbers anyway and just cut off after the the decimal point and this does work but after a time it makes your model less accurate you know it's you're losing accuracy by doing that so it's not a it's not a perfect thing um so that's one of the that's one of the major problems but uh some of this uh is improving over time and there are tools to try to do perhaps some of these these conversions and then the the final Point here which I'll come back to with this project is looking at a completely different way of doing machine learning which integrates more easily with CK uh another aspect that we have problems with is that uh when we well there's two parts really when we represent floating Point numbers in computers they they don't work completely accurately uh you can try examples of this you can do addition in uh maybe in JavaScript with floating Point numbers and you sometimes they come up with the wrong answer just because floating points are not represented very well in the hardware um uh and similarly with the way that we train the neural neural networks we often produce we often use Randomness in the way that we're doing it and that doesn't work well with the zero knowledge proofs either so that's another another stumbling block uh that we have uh I really like this quote um that uh the you know reality has a surprising amount of detail and that's really the kind of the heart of the problem that we're trying to get all of that detail and put it into something that wants to be much more discrete and that is a fundamentally difficult thing to do okay but let's not give up um we we we are making a you know we are getting there and as you saw from the ecosystem there are projects that can do this to some extent what we where we have really got to is that we can do the inference stage so we with in ZK ml we can start with some input and we can start with a model that's already been trained and then then prove that the uh the uh the computation from the input to the output is correct so we can do that that's kind of where we're at training is much more difficult because that's much more intensive uh and so that uh is still uh much more of a problem okay um this is just a an example there's a one project called tensor plon um but this illustrates this diagram illustrates the kind of thing that we may want to do in that we could have someone who's providing machine learning for us um so we don't have the computational power ourselves to do it so what we want to do is send off an input and get them to do the machine learning part and do the inference but we want and they've already got the weights Etc but we want to know that what they've done is correct so similar to what I was saying about the medical example so you send your inputs to them the provider uh and they they come back with some output but they also they produce a proof and then you can verify that proof that that was done correctly so this is just a representation of what I said earlier okay uh I'll skip through some of this uh but what what he's really saying is that it's it's looking at this the problems we have so if we have a we're trying to get a build a neural network but we want to do that in zero using zero knowledge and oddly enough the uh neural networks themselves that kind of architecture right just go that so this this kind of uh architecture is similar in some ways to what uh the heart of ZK looks like heart of uh uh yeah ZK models look like uh in that we in ZK we create these things called circuits where we have Gates where we're passing or where we're checking signals uh that that could go between those Gates and so in some ways the it looks very similar so you might think well in what we could do is replace these uh nodes by these Gates that that are what we use in ZK anyway uh and then that would give us a circuit it would look very similar to this but unfortunately that that doesn't work because uh really from a performance point of view it's it justce would take far too long uh to do that um uh which is what this this top point is about so the the performance of just doing it in a very naive way is just hopeless it wouldn't work but people have these other things here are just approaches that other people have taken to just Chip Away really at some of the problems and try to work at UH and see if they can put in little optimizations that will help uh us do this all right now uh just quickly mention this Onyx is a a framework that allows people to share the architecture of a machine learning model so it specifies what the nodes look like you know the number of layers Etc uh and it also can you can specify the weights within the the model so it's a way that we can sort of an abstract out the details of the model uh and then share that's the standard that we can use and this is being used also in zkr um so some of the Frameworks are available uh there one called Ezekiel uh which is a uh library that you can use to uh take a model uh it will uh get the details of that it will build uh the the the uh the file the Onyx file so it's in a standard format uh and then it can create a circuit so it can create this ZK version of that model and then you can use that uh to put in some inputs and it will run the machine learning uh and you'll get the output but you can then also get a proof that it was it was done correctly and you can put in private inputs Etc um another framework is Orion uh so this uses onx so uses that standard uh and it allows us to create circuits uh with the top of ZK called a star okay so there are different types of zeroid proving systems we have snarks and Starks and so this one is used for Starks um and there's lots of it's an open source project uh there's lots of resources you can use use and it is in fact then part of this this project uh which takes that Giza is uh takes that that run time and then adds Tools around it to automate the flow that you will have through uh if you're doing machine learning uh so it will be using the excuse me using the model uh and you can automate the different different processes uh uh using the r engine but uh writing scripts around it Etc so it's it's it's there to make the whole thing a bit uh more user friendly they also have uh data sets you can use as well so uh you know there are standard data sets they that are use for training so they provide those also uh I won't go through this this is just more about about Giza but it really just shows the same thing uh or this actually so this is a working uh and you can use different libraries so you can use a zql uh but also because it's doing STS you can write Cairo programs so you can run a Cairo program do some machine learning in a Cairo contract on stocket and then have that proved uh as with Giza okay let me move on so to go through some more use cases uh one very interesting one is around the authenticity of me some type of media uh could be images or video or audio and uh there was uh this example the ZK microphone which uh came out of a uh a hackathon and what they did is they took a microphone just like this one and they stuck a raspberry piie on it and what they would do is take the the audio from the microphone and then sort of fingerprint that and then you could create proofs that that hadn't been tampered with and there was an example a good example you want to dig into it was with a podcast so there's a a podcast called the zero knowledge podcast which is well worth listening to and one thing they did on that podcast was to build an AI agent so that you could ask questions and it would come back in the voice of one of the presenters okay so it was an artificial voice being used so on that podcast then they got the person who invented or was working on the CK microphone and they recorded the podcast and then they took the audio from that and they removed the background noise but they created a proof that the the resulting audio was genuine so all that had happened to it was to reduce a background no noise they didn't change the voices or anything else and there was a proof that that had happened so that's that's do uh show that you can take some media and you can alter it but prove what alterations you did and similarly we can do this with cameras so there are are some cameras that are built that have a hardware component that will fingerprint the image but what you can do then is to take that image and maybe transform it maybe crop it or rotate it and you can have a proof that that is all that was done to that image that it wasn't faked in any other way so it's quite nice that although AI has given us the ability to create fake images uh and which is problematic because we now we can't really believe any image that we look at we can't believe it's true but also we we can use the similar technology then to be able to prove that these are genuine so it's it's quite a nice uh feature okay so this is the thing I was talking about for the uh the nft so the diagram sort of explain it best so the idea is that uh we will have a user and they will be creating an nft using AI generated content so to do that they will create a prompt so they will say you know uh P you know a photo realistic picture of a dog S standing on a board or something like that which will then uh create some some image uh but what we can do is we can create proofs that this has been done correctly by showing that the proof did indeed lead to this particular image uh and we can do the get the zkl approver to to create the proof of that and then that can then all tie in to the actual uh nft so you can you can do this process and only if it's verified that this image did come from that promp would it allow the nft to be minted uh and then that would all be done in a smart contract uh which can be which could be verified there so it's a way to verify that the the image uh did come from a particular prompt okay and so this this is really a this is just a standard that they've they've written to uh for this okay so I said we've got all these problems with putting together zkl uh and and one project that came out of a hackathon about 18 months ago uh was zero gravity and what they did is to say well yes we've got all these problems because the way that machine Learning Works using neural networks and using weight Etc is really hard to integrate with ZK and so what what they've done is they found uh that um there is a a different way of doing neural networks you can do these weightless neural networks which don't work in the same way they don't have the same weights so you don't have this problem of the floating Point operations you don't have to do matrices Etc uh it it uses a different type of technology which works better with CK um there's there's more details there but I I don't know so much about it so I can't really explain it uh much further than that but there's links to the paper there if you're interested okay so that's that's promising that uh they've got that okay and then if you feel that I've been too gloomy about this and it's it's all hopeless and we're never going to get anywhere there was something that happened earlier this year that was quite uh reassuring quite uplifting in that they uh a particular project actually managed to work with one of the uh versions of chat GPT so chat GPT obviously is a seen as the sort of Flagship uh machine learning model and uh they managed to create a proof of that working so they actually managed to do zkl with that and it was a previous version so uh it was uh gpt2 uh but still it had uh one and a half billion uh well parameters or whs if you prefer um in it which the the billion mark is seen as something uh uh of is seen as an important uh point to once you get past that you're seeing as doing something useful so is it was uh important that we've got past that we've managed to build a model uh that can uh prove this uh it did uh it wasn't simple uh so you've got details here of uh how long it took so to actually do the setup so to take that model to create the circuit from it took uh 91 hours uh on 128 core uh machine um with one terabyte of ram so not you know not a laptop um the the key or this this setup produced things called keys uh they took terab 10 terabytes so the whole setup was big uh and then that was just a setup then to create a proof uh when they did it uh it took 90 hours again to put in an input uh and get a proof that that had been done correctly so they managed to do it uh and it was seen as something of a landmark that they'd managed to do it but uh obviously it took a time but this is reassuring you know we are making progress and hopefully we'll we'll continue to do that we'll build upon the the techniques they use so it was modulus Labs that did this um and you know hopefully that people can build upon those techniques and we'll be able to get closer to the latest versions of chat GPT um this is an example of um I think this is about GPT generally so you're seeing the the type uh yeah the the amounts that are being spent uh for this so it is huge amount that is needed to do these processes um for time okay so that's zkl now if you if you know your scalability your blockchain scalability and you know rollups you'll know that rollups there there are two types there's the ZK type and then there's the optimistic type and so people I'm guessing they took that idea and said well zkl is one approach why don't we do optimistic ml as a different approach and that's what they've done so we have this thing optimistic machine learning opml uh and it takes a a similar type of idea to uh the way that optimistic rollups work in that they they do the the inference they do the computation uh but they're just optimistic about it and say we think it probably worked all right if not uh there's a possibility that you can challenge it uh and you could then create a proof that it it was done incorrectly in order for that this process this verification game to work uh you do need incentives you do need this to be done on the blockchain and you do need uh yeah Stakes to be uh there as well U but still uh it is possible there are projects building on this as well and um this gives a uh and uh shows you the differences between the the two types of approaches so we got more options that uh other things Federated machine learning has been been around for quite a long time and it it's trying to do a similar thing perhaps to to zkl in that it it's what it wants to do is to be able to uh allow people to share data so if you're training a your model on a certain data set what it allows you to do is to share that model with other people um and allow multiple people to train their models and share the data but without giving away that data without sort of leaking privacy um so it's a a different way of of doing it uh one company uh I know called flower AI who do this um and there's details uh of them there if you want to know more about it but this is a little bit more established this is a uh this has been around for longer but it's doing a similar thing to what zkl wants to do and Federated machine learning generally uh is a more mature area and some links there to that um I could just do I can do a quick demo but uh of this um you can try this yourself really does the demo itself in this Cas not not very big but what it's doing um all you need to do for this demo it's it's in a notebook already uh and you just click these uh these pieces here okay it's not going to let I need to sign in first okay you just you can just click through through he's got all of the code ready so you can just click through these areas and it will take a simple model uh and eventually uh create a proof of it so you can see for example if I go down to the end here uh we've got the final the final stages here are generating a proof and then verifying a proof so that's uh that's using uh that's a zql uh using uh ex using some standard machine learning models okay so uh if you're interested uh other places other resources uh so DC Builder is one of the researchers at worldcoin he does a lot of talks and has a lot of resources uh in this area so uh check those out yeah worldcoin generally are doing a lot of work on this um they've got and got repos uh the zero know podcast I've mentioned it's it's good generally always good to listen to um there's some further papers here there's a community on telegram you can join uh the ethereum foundation have a team that are also involved in researching this uh please join our Discord server uh because we are going to be running a course uh later this year about zkl so you'll uh be able to get details uh of that uh and uh we have further resources and courses available on our education site okay that's everything thank you for coming uh and appreciate it was very early for you uh but yeah thanks thanks for attending the talk I hope that was useful thank you

Automatic transcript — names and jargon may be misspelled.