14 May 2018 - Casper Standup

Casper Research 51

Casper Research 51.

so on the consensus part

I've just been enabling a little bit not too much on it's a new paper out on proof of sequential work and trying to think about how to if there's any way to use that to squeeze some more security properties out of our sharding solutions also I also realized recently that that there might be a kind of continuity constraint on our single [Music] on our single transition for our machine and so we might have a yeah I'm I'm wondering if there's a multi-step continuity constraint that's that would be available that would enable us to even to prove the transitions a sequence of transitions are a faithful to the execution model without necessarily having to know all the details it's sort of like having a not invariant so the the not invariant isn't you can't necessarily recover than not from the knowledge invariant but it still allows you to detect various properties of knots so I've been thinking a lot about whether or not we can have a similar kind of thing which would allow us to get more security

properties out of our transitions and this has to do with their sharding that right now we've got this we've ended up with this tree of lattices model which is a bit more involved then I would like and so yeah I'd just been looking at how to how to reduce the complexity of that structure without having to you know lower the lower the speed to you know in other words you know keep it more scalable so we don't have to have quite so much observation in order to guarantee the security of the transition function and so that's that one thing I could over hewn and the other thing I started to take a little bit more seriously now that we've got all the instructions coated up is this hardware model for the road calculus no I'm not as enthusiastic about this design right now as I was before because we hit a couple of roadblocks with the clash our hardware package that were using that makes it next to impossible to get parallel data lines in you know so it's like we can't but can't get a bunch of things reading memory all the ones you know like even if the memory is kind of chunked into different parallel chunks so that was

but but still the thing will accelerate the performance a anyways that's my update cool Michael do you wanna go more in depth on the proof of sequential work yeah so NASA sent me this paper apparently apparently there's a paper that's come out recently that essentially makes proof of work a little bit more sustainable and so I was it makes it makes it possible not have to do quite so much busy work in order to in order to you know get the security property so the thing is that you do a little bit of work on top of someone else's and so that it's still hard to rewrite history because you'd have to be you know doing the whole thing yourself whereas other people are just doing little bits on top of each other that's the idea yeah something like that yeah exactly so um but anyway I'm not sure if it generalizes to our situation so I've just been kind of thinking about it a little bit but yeah that's a that's one you know I'm wondering that we can compose that to get some with our solution to get some security properties interesting I can send you the paper if you're interested yeah that'd be cool I would

scroll through it sure for sure cool what's up with you see so I've been focusing a coating some more of the Casper modules in in the arcade codebase so we're working towards getting actual rolling terms that are blocks and doing some more of the parts of the consensus that are important so like right now we have you know the module that does the fork trace rule and the module that does the safety and they don't really talk to each other a whole lot and the idea of validator identity is still a little bit wishy-washy so just sort of tightening up all of that stuff getting it to spec as per flads Casper the Friendly Ghost paper with the inclusive ghost rule as opposed to the strictly greedy one mm-hmm so so nothing really I'm on the research side but we are definitely making progress in terms of implementation which is good cool cool that's good and are you are you guys at the point where you have rolling terms in the blocks kind of the short answer is yes but there's a whole bunch of asterisks next to it oh yeah what's one big asterisk well so right now it relies very heavily on the fact that there exists exactly one relay interpreter in

the world so we're currently not actually logging the execution trace and just using the fact that same inputs give you same outputs the concerns all nodes are using the same interpreter so so we still have to plug in the execution logging and include that into blocks okay okay and of course there will be optimizations on that that we also haven't really thought all the way through and exactly how those should work right because the the goal that you've mentioned before is the using shorter propositions to encode properties of the trace as opposed to the trace explicitly but we'll probably start with an explicit trace and then move away from it over time cool cool that sounds that sounds awesome other other things include right now the way the history in rollback works is pretty hacky so the rolling tuplespace is backed by LM DB which has in memory and on disk components so right what you can do is copy the disk components to other places in order to snapshot your database and in a very crude way and so that's currently what's happening but in

the future we will have a much more sophisticated try type setup and it should be a lot more efficient as a result of that as well like right now it's very very slow basically what we have is a working demo that one could show to people but all of the details are wrong yeah well that's good you know it's like that's agile development and into end and refine yeah yeah so that's that's nice really been a very pleased with all of that that's cool and I understand Kent is I don't think he's back next week but a week after something like that he's not he's back at the end of next week yeah that's right yeah so he'll be fully back the week after yeah that's right sweet see well I mean since there's only two of us today I don't mind yielding the time back I feel like I'm a prized at what you guys 200 hey Jim did you wanna say something yes we're talking about mutation and the reluctance to accept it you know let me back to the you know the reversibility aspects and undoing operations and Landers principle and how you know in a logical system you know from state a to state B back again nothing happened but

when we have a finite state representation of expressible logic infinitely a change in state can be very costly in terms of undo operations and it seemed to me that approaching Landau's limit is a mechanism to minimize cost and and achieve consensus as well for house it's almost a proof-of-work type of thing but in undecidable cases you still have to use something else yeah can you send a link I don't sure I know this this construction [Music] I like you to win doubts principle okay you know maybe I really I guess it's a lot to take I don't know of any one else I did search for stuff and I didn't find anything okay I can maybe make it a little bit clearer yeah or if you want to do write up and share it that's also cool okay yeah I I'm I just I don't have enough to piece together the construction well it's more logical in the sense I know if the others cost you and if you know minimize that cost in deciding which branches to follow we buy an essay I already said that oh oh oh oh oh I absolutely see yeah you know this is

closely related to what I was looking at with Oleg's zipper Singh so yeah so I was I came up with a solution to the an immutable approach to the the object state for the rosette machine that involves Oh like zipper the problem is that you're storing all these continuations and the zippers have to potentially have to bounce him back back and forth all around the graph and so this is literally going to be orders of magnitude slower than in place updates like by a law you know it's just like it's going to be so noticeable if there were if there was like you know the the the other the other approach would not be using that delimited continuations but to use the standard you know Oh a style zipper but there again the the multi cursor solution is still a bit of a science project like I haven't seen I haven't seen the you know simple solution we know we know what everything cost already and we can we know that so we know I'm undoing locally just in itself mm-hmm so I mean the so I don't know how useful that is it seemed like something that would that would certainly not hit

Landau's limit but you get a little bit closer to it yeah yeah I mean [Music] yeah the the costs knowing the cost though is an information losing process right it doesn't allow you to recover the the the actual computational step especially if there are multiple computational steps that all have the same cost so so and maybe I'm not following you I'm just talking about the cost of taking another path the cost of undoing yeah the operation okay I'm not talking about the cost of doing it systematically minimizing our undos is going to save us hmm okay all right that's interesting no and if you're choosing between a and my icing image oh I see I see yeah no this is more of a consensus style algorithm than it is okay so so maybe what you're saying okay i yeah I think I understand yeah yeah yeah I like this I like this line of thing it's kind of interesting actually [Music] yeah oh but when it gets mixed with economics it's not necessarily following

the principle anymore because you can get these discontinuous jumps because somebody was willing to pay for it huh oh well what I'm suggesting is that if in the case where one branch is clearly cheaper to undo them the other that it doesn't go for a boat oh oh I see okay all right well let me yeah I'm your ristic there where you can you know use both factors no 50% or some of the work yeah that makes sense that makes sense let me let me noodle on this it's an interesting thought yeah cool good good good idea [Music] cool I there any other updates that we wanted disgust um [Music] no appearance from Vlad no appearance from Nate I think we're probably all good today then all right cool thanks so much so you

XML Transcript: