0:00 Hi, Paul. Hi, Henry. 0:24 Are you able to hear me, Henry? 0:31 Awesome. 0:37 Are you able to hear me, Henry? 1:01 We need some background music while we're waiting. 1:04 Anybody want to do some karaoke? 1:10 Are we human or are we dancers? 1:34 What up, Paul? Mr. Sports? 1:38 Hey, Super, what's up? 1:42 Things are going very well. 1:43 Oh, that's good. 1:44 I always try to join this space like immediately and it always takes like a long time. 1:49 I got to reset the app to try multiple times. 1:52 I don't know. 1:53 But it seems to work when I eventually. 2:00 Works fine for me. 2:01 You know. 2:03 Yep. 2:05 Anyway, well, welcome to the space. 2:09 I think I can only hang around for like maybe half an hour, 45 minutes. 2:15 But here I am. 2:17 Busy guy. 2:18 Here you are. 2:20 Yeah, it's for the Thanksgiving weekend. 2:23 So would you do anything fun? 2:24 Sure. 2:25 Happy Thanksgiving, everybody. 2:26 Happy Thanksgiving to everyone. 2:27 I forgot about that. 2:29 All right, let's get right into it. 2:30 Why does BitVM suck? 2:32 Should I start or should you? 2:33 Well, OK, why don't you let me give a tiny crack at it? 2:36 OK. 2:38 And if I had to answer that question, I would say one of the things about it that's not great is you don't. 2:47 It's hard to call more participants into the set after you set it up. 2:52 So you sit down and you set it up. 2:55 But then the other people, they don't really get the primary benefit out of BitVM if they come later. 3:02 They need their own. 3:03 So it has the same onboarding problem that most things have. 3:08 I would say that's not great. 3:09 And I would also say, as usual, people refuse to. 3:14 This is not specific to BitVM, as I've said for many, many, many, many years now. 3:19 About 51 percent hashrate can always censor some message or another from the blockchain and then manipulate the state of the contract. 3:29 And so the question is not if it's vulnerable to miners, but just how. 3:36 And BitVM, it's kind of like you won't know if you've been scammed by miners until after it's too late. 3:44 So I guess those would be the two things that I would kind of maybe mention. 3:51 What do you think? 3:52 Yeah, I fully agree with the second one. 3:55 That is a terrible thing about BitVM that I don't see a solution for. 4:00 And I think that one of the nice things about BIP300 is that it makes that same procedure take time. 4:08 So if a mining pool wants to steal from you with BIP300 and they have a hashrate majority, you can see their attempt well in advance. 4:17 And you can go and complain to members of that mining pool and be like, hey, you guys are trying to steal from me and maybe you guys don't know it. 4:24 So go to a different pool that's not trying to steal from me. 4:27 And it gives time for a procedure like that to take place, which I think is good. 4:33 We see mining pool members are often responsive to pressure from Twitter. 4:39 And so maybe I like that. 4:43 And I wish that BitVM had something like that. 4:46 Not only is it slow, but the idea is that they have to have guilt. 4:52 They have to be caught red-handed long before they even know if they will succeed. 4:59 So there's still kind of like an aversive angle that they might try and then not succeed and then fail. 5:05 So they have a cost of trying to steal, whereas in the others, they can complete the crime before anyone uses it. 5:17 I don't currently think it's possible to add anything similar in BitVM. 5:23 But I would like to think more about it and see if maybe we can do something with time locks. 5:29 Because we have these time lock things in Bitcoin. 5:31 Maybe you could make it so that withdrawals have to be announced in advance and then time locked for a certain amount of time. 5:38 And miners have to post the transaction in advance or something. 5:41 I don't know. I'm already getting lost. 5:43 I don't know how you would do it. 5:44 I think it could be possible that you have to publish a blob. 5:49 It would end up just simulating BIP300, but it would be something like if you want to withdraw from our magic ceremony, 5:56 you first must publish the blob, like an op-return blob to Bitcoin. 6:01 And then we do more BitVM stuff off-chain with the counting, counting the 13,000. 6:10 And then whatever, 13,000 blocks after the blob. 6:14 You understand by the blob, I mean something like the withdrawal transaction or the withdrawal transaction ID 6:21 or something that commits to the set of people withdrawing. 6:25 I think you just put that blob on first, then do more BitVM stuff. 6:29 And then part of the BitVM can trigger a catastrophic loss if the withdrawal is done any other way. 6:38 Something like that. I don't know. 6:40 I haven't really given it a lot of thought. 6:42 Right. I haven't either. 6:44 But that's one of the best things about BIP300. 6:47 And if there's a way to do something, even if it's not as good, 6:50 but something that approaches that in some way or gets us closer, that would be ideal. 6:56 Because that's one of my favorite things about BIP300. 7:00 So your other objection was that the other reason you think it sucks or could suck 7:06 is that it's hard to add people in to the verifier set after the chain's been running for six years. 7:14 And then someone's like, I would like to peg in, but I want to be one of the validators. 7:17 They're not going to just redo all the pre-signed transactions and everything for you. 7:23 So one thing with that, you could actually do that. 7:29 You could have it so that anyone can decide they want to be a validator, 7:33 maybe post some collaterals to prove that they're not joking. 7:37 And then you just do that. 7:41 One of the consensus rules of the sidechains is if somebody goes through this procedure 7:45 and says they want to be a validator, everyone's got to do that. 7:49 Everyone's got to re-sign all the things. 7:51 Otherwise, if they don't, then that's considered a consensus failure, 7:54 and the validator set loses their pledge. 7:58 So that's an option. You could do that. 8:00 But another thing is that I don't think even that's necessary, 8:03 because what you could do instead is you could make a contract with one of the existing validators. 8:08 And you could say something like, I want to make a contract with you 8:12 that if I can prove that I submitted a valid withdrawal request 8:16 and it wasn't processed within X number of blocks, 8:21 then you're going to lose your money, because that means you didn't do your job. 8:25 You didn't force the prover to give me a withdrawal or to send me my money. 8:33 And so you could actually, I think, without making everything be re-signed, 8:38 just make a second contract, like a derivative contract, 8:41 where you're making an agreement with one of the validators instead. 8:44 And if none of the validators will make that contract with you, 8:47 then they're probably trying to scam you because they don't want to be held accountable 8:50 and they don't actually want to do their job and make sure that everyone gets their withdrawals. 8:55 Well, those are two very interesting examples. 8:58 But I think the – so like, let's take the second one first. 9:05 It's kind of like you have to meet with someone who is in the set, 9:10 and then they have to do something with you. 9:12 They have to like agree to something. 9:15 I guess you could standardize all of that. 9:17 But it's kind of like – these are kind of like – let me try to phrase it like this. 9:23 You need their consent to join the set. 9:29 And if you don't get it, then, of course, you could have some kind of inference, as you say. 9:33 You could say, well, since no one will give me consent, 9:37 I infer that 100% of these people are doing the wrong thing. 9:45 But you have to kind of like – you have to do this interactive ceremony and then conclude something. 9:50 So it's not – it's kind of like if they agree. 9:54 Sure, pegging in is always – you always have to be online in order to peg into a sidechain. 10:00 So if one of the validators has to be online too, well, that's natural anyway 10:05 because that's part of their job is to be online and be available. 10:11 It's part of their job to extend the validator set to whoever wants. 10:16 Like they have just a server and it's just – when people want to join as a sub-validator or whatever, 10:23 they just – I'm not really sure. 10:27 So the first example that you gave was that you write it into the rules of the first set that the set can expand. 10:37 But that's also not really what I had in mind because the – 10:42 allowing the set to expand and re-signing everything, that kind of – 10:48 now you're vulnerable to that person going AWOL, I would think. 10:53 So you don't want to have re-signing being done. 10:59 But yeah, I don't know. I mean, I think – I guess what you're saying makes some sense. 11:02 But I'm just saying that this is part of the project is that – 11:05 when I think of BitVM, I think two people sit down and they play chess, 11:09 and then one of them wins some money from the other. 11:12 And of course, it can be – the chess could be anything of arbitrary complexity. 11:18 But it's like the two people sat down and they're the ones who are going to zero out all of the different logic gates. 11:30 And so I would just imagine, like, isn't there like a – I'm not very familiar with the details, 11:39 but doesn't it – doesn't this look like an exponential blob of state that has to be zeroed out in advance? 11:46 You know, if you start messing with the sets? 11:52 There does be – if everyone has to re-sign everything, 11:55 then you can't have a validator set too large because it just becomes a combinatorial explosion for everyone to send each other nonces and stuff. 12:08 If you have to send your nonces to – you have to send 1,000 different nonces to 1,000 different people, 12:14 then each of them has to send 1,000 different nonces to 1,000 different people, 12:17 and you have to all validate all that stuff. 12:19 And at some point, it becomes really difficult to do. 12:24 And you have to do that for every pre-signed transaction of which there might be hundreds. 12:28 If you're going to – or tens of thousands if you're going to have a long-lasting – if you want to have a long-lasting sidechain. 12:35 So that could be a lot to do. 12:39 And yeah, the smaller the set, the better. 12:42 So unless we get covenants or some other form of covenants than the ones we already have. 12:49 Yeah, how do you think that that would improve BitVM? 12:55 Well, with covenants, you get rid of all that pre-signing stuff. 12:58 So without – I mean, the only form of covenants we currently have, one of the existing forms we have, is multisig, 13:06 where you get – if a bunch of people create a transaction or a set of pre-signed transactions, 13:13 you can't – the money is definitely going to flow through that pre-signed set of transactions 13:22 unless everyone in the set agrees to break the covenant, the terms of the agreement. 13:27 So that's pretty good, but it's – like I said, if there's a lot of people involved, 13:33 the more people you add, the more of a combinatorial explosion you get. 13:38 Covenants remove all that. 13:39 With covenants, you can just create the set of pre-signed – well, it's not even pre-signed. 13:44 You just create the set of transactions, you embed them in the covenant, and you say, 13:47 okay, this is – if we put money into this address, it has to flow through this thing. 13:51 There's no – like the consensus rules of Bitcoin enforce that instead of needing signatures from a bunch of covenants 13:56 or from a bunch of multisig members. 13:59 And that's better. 14:00 Then you don't have to re-sign everything. 14:02 You can just show that this is the rules, and everyone can validate that and then say, 14:07 okay, I agree. 14:08 Let's fund this address. 14:11 So that's way better. 14:12 It just completely removes that pain point. 14:19 Does that make sense? 14:20 It does. 14:24 Well, that's a very neat idea, of course. 14:28 I mean, what would be your favorite? 14:31 Because I know that people have very strong opinions on CTV, OP_CAT, whatever, TxHash. 14:39 Probably most normal people listening have no idea what the differences are. 14:46 But we should at least – should people at least put their favorite? 14:50 Should we have the convention where we have an emoji for each covenant opcode, like the cat? 14:56 Definitely have hats that we sell. 15:00 I would love to – one of my favorite things about the Taproot upgrade was when that was going through, 15:04 there was this meme that went around on every Bitcoin podcast and on Twitter, too, 15:09 that was like, everyone agrees we want Taproot. 15:11 The only question is how do we activate it? 15:13 And I thought that was such a genius move. 15:16 Whoever came up with that meme completely shifted the narrative away from whether Taproot was good 15:21 to something that no one cares about. 15:24 And so Taproot sailed through easily. 15:26 And so I would love to do something like that. 15:28 I would love to create the meme. 15:29 Everyone agrees we're going to get OP_CTV. 15:32 The only question is what comes with it. 15:34 Do we also add in any Prevow? 15:37 Do we also add in CheckSignature from Stag? 15:39 Do we also add in OP_CAT? 15:41 That would be cool. 15:42 I would like that. 15:43 But I don't make these types of decisions. 15:47 So yeah, maybe you can start it, Paul. 15:49 You go ahead and start saying it, and then maybe it'll be true. 15:53 The meme craft. 15:54 I should say something like OP_CAT is the worst thing ever. 15:58 It's an attack on Bitcoin. 16:01 And then it'll reverse psychology, people. 16:06 Well, you know, it's interesting because this is what people said about 1.19, 16:10 not to go into too much pointless BIP drama. 16:14 Although, in a way, the pointless BIP drama is the most important thing happening in Bitcoin right now. 16:21 So maybe we should just refuse to talk about anything else 16:24 until this subject is dealt with in the appropriate way. 16:28 But 1.19 is another thing where, like, actually it was the case that, 16:32 exactly as the meme you had said before said, 16:35 where people actually, everyone did really want CTV. 16:40 And the only question was how to activate it. 16:42 The same with 1.18. 16:43 1.18, 1.19, and the difference is that 1.19, Jeremy tried to actually activate it. 16:48 And then it was, now there's a pointless delay for two years, I suppose, now. 16:53 I don't know exactly when it was. 16:54 Was it, does anyone know? 16:56 Was it April of last year? 16:57 It felt like it was right after Taproot. 17:00 Yeah, yeah, so Taproot, November 2021. 17:02 Yeah. 17:03 I think at some point he got the impression that right after Taproot they were going to do CTV. 17:07 And then, so he just tried to do it. 17:09 Well, at least why not do it, yeah. 17:11 Yeah. 17:13 Yeah. 17:14 For those of you who don't know, 17:17 kind of a pointless disaster where Jeremy Rubin, the creator, 17:21 ended up just quitting Bitcoin altogether over this activation drama. 17:25 And then, you know, you could see that as time has gone on, 17:28 1.19 has become more popular, 17:31 and no one has a problem with the content of 1.19. 17:36 I think the activation, it just brings out the worst in people, 17:39 because everyone wants to think, 17:41 you know, you've heard that phrase, success has many fathers, failure is an orphan. 17:46 Everyone wants to be like, this succeeded because of me, 17:48 because my node signaled for Taproot. 17:53 And so, I don't know, I mean, that's just my guess. 17:55 But for some reason the activation is miserable, 17:59 and I actually hope that, 18:01 I think what we should get going is a different meme where 18:04 something along the lines of 18:07 we need to have more people take responsibility for Bitcoin succeeding, 18:12 and we need them to, like, just say, 18:15 we can't have people hide behind this crap about, like, 18:18 what do the people want, or what does, you know, 18:22 because, you know, people don't know anything. 18:26 Only if in order to prove that you're doing something about Bitcoin, 18:29 you don't actually have to do anything, 18:31 like just set a flag or something, like virtue signaling. 18:36 And then that means you're one of the good guys. 18:38 Like, as long as you don't actually have to do anything, 18:40 then that can succeed. 18:41 But if you actually need people to do something, 18:43 then they're not going to want to do it. 18:46 The irony of the soft fork is that 18:48 as classically conceived and as implemented today, 18:52 see, it's weird because actually I think Taproot and especially SegWit, 18:56 those are very rare cases, in my humble opinion. 19:00 They're very unusual. 19:02 But most other things like repurposing the opcode 19:05 or just turning OP_CAT back on, 19:07 or it was on, then off, and then turned back on again via opnop. 19:14 Those, all of those, the regular user really does not need to do anything. 19:18 It's only 51% of miners that must upgrade. 19:21 And everyone else can keep using the old version of the software, 19:24 which is, the fact that that's even possible 19:26 is kind of remarkable and almost magical. 19:29 But I just wanted to point out that... 19:32 That goes against the meme, you know, everyone needs to take responsibility. 19:35 If you want to do that, you've got to give them something 19:37 so that they can say, I took responsibility, I clicked the button. 19:40 Right. You're right about that. 19:42 Well, I think one thing would be if you do the UASF date, 19:45 the date where it's like inevitable UASF day, 19:49 and then if hashrate signals, it's earlier, 19:53 then you are doing something 19:55 because you are threatening to disconnect from the network 20:00 if it doesn't... 20:02 We're getting away from the topic of why BitVM sucks. 20:05 Do you want to get... I have some additional thoughts. 20:08 Because I really thought that one was about not being able to join. 20:11 All right, let's hear some more. 20:14 Hang on a second. 20:16 You said you really thought that one of them was... 20:19 I thought not being able to join was real, 20:21 and then your defense of it was something like, 20:23 you can write into the rules that the people are forced 20:26 to take anyone who makes an envoy of some form. 20:30 And I was like, this doesn't sound great. 20:32 And then you said also, you can subcontract. 20:36 You can go to each member of the set and say, 20:39 I also want to join this set with you. 20:42 I demand that you hold a gun to your own head 20:45 that will go off if you do not allow me to join. 20:49 These are kind of like not really what I was... 20:52 Doesn't this dilute the kind of the core value proposition of BitVM, 20:57 which is like two people sit down and they can't cheat each other 21:00 after sitting down to play chess for $5. 21:03 So what if you could... 21:06 My offer was, I want you to hold a gun to your head. 21:08 I don't want you to pull the trigger. 21:10 In fact, if you don't pull the trigger, I'll give you a dollar. 21:12 But if you cheat, if you cheat, 21:15 if you don't do the job you signed up for, 21:19 I get to pull the trigger. 21:22 I think that would be a good deal. 21:24 This would be like the holy grail of not only game theory, 21:27 but probably just like law, 21:30 or like all legal fundamentalism or something. 21:35 So this would be quite a... 21:37 To say nothing of mechanism design and game theory, 21:39 this would be like a revolution in contract law. 21:45 Well, I like BitVM. 21:47 I'm worried about... 21:49 I think it's all related. 21:51 It's all related, is it not? 21:53 Because it's kind of like that's what Bitcoin is also. 21:55 Bitcoin says, you can join our network and connect, 21:59 but there's things you can't do. 22:01 You can't spend money you don't have, 22:03 or the signature for that's already been spent. 22:06 You can't create more than 21 million coins. 22:09 You can't... 22:10 So this is what Bitcoin... 22:12 And I had a tiny little presentation about this in 2016. 22:15 For anyone who's interested, you can look it up. 22:17 It's in the blockchain.info literature section. 22:19 The scam is you have to watch everything. 22:21 I'm not going to tell you which one it is, 22:23 but go back to 2016 and you can find some of it. 22:25 And everything... 22:28 Just layer one Bitcoin is a smart contract. 22:31 Lightning Network is a smart contract. 22:33 So these things are all... 22:37 punching into contract law 22:39 and rewriting what's possible, 22:42 which is... 22:43 I am bullish on that, 22:44 and I think that's very inspiring, 22:46 and I think that's part of what inspired all of us, 22:48 everyone here, to some extent, 22:50 to get interested in Bitcoin in the first place. 22:54 This idea that... 22:55 And it's worth pointing out, 22:57 multisig is a perfect example. 22:58 You say the only covenant we have is multisig. 23:00 Multisig is something that Bitcoin did not originally have. 23:04 It's something that it only has because of a soft fork, 23:08 and that soft fork actually has a bunch of problems, famously. 23:11 It has like a... 23:14 The most glaring issue is the pointless stack item, 23:17 which is simply an error. 23:18 I thought we had like three of three multisig from the beginning, 23:21 or any number of three from the beginning. 23:23 Well, that's true. 23:24 Actually, in the very beginning, 23:26 you're right about that, I think. 23:28 I mean, I should actually double check, 23:29 but I think Satoshi had a bunch more opcodes running 23:32 that were never used, 23:34 and then there was a great disabling. 23:38 Because you can send directly to a contract, 23:40 but there was only a few that were 23:43 within the relay policy. 23:46 I don't think they had those terms back then that we have now, 23:49 of like mempool policy versus consensus rules. 23:53 But one of the accepted contract types 23:55 was that you could send money to three public keys. 23:58 You could just list them out 23:59 and then have the OP check multisig at the end of them. 24:02 And it would work, but it was limited to three, I think, in the beginning. 24:06 And then later they came up with beta script hash, which bucked it up to 15. 24:11 That's fascinating. I mean, I think you might be right. I want to look into that. 24:17 But the point is, we didn't have P2SH, which is what I was referring to. 24:25 And it's just a weird – I think it's a very quirky example. 24:33 We're getting a little off topic again, but this is an important topic, 24:35 which is that it's an important thing that was worked on in Bitcoin. 24:42 We have the soft fork for. It's something that fiat currency cannot do. 24:47 Like, it's almost impossible. 24:50 It is possible, but you'd have to go to the bank and say, 24:53 here's all these people we're putting on the account, and you need to have two of them. 24:59 There are banks that offer those policies. 25:01 I think my parents had a joint bank account where either one of them could sign the check, 25:05 and then the bank would cash it. 25:07 That's very common. It's very common to have a one of n. 25:11 You can always put someone else on the account as an admin on the account. 25:15 So that's very common. Our business has an account. 25:18 And two of two is also very common for joint bank accounts. 25:21 You can make it so that you have a joint bank account that says both of us need to sign, 25:25 and banks will do that for you. 25:27 Right, but it's not really – in practice, it's not a thing that – 25:36 well, you're right about that, but the point is this idea of the – 25:40 you have to go, and you have to sign paperwork, and it takes this setup thing, 25:45 and it's not like a very big – it's not – I mean, of course, it is possible with the law and contracts. 25:53 Oh, Robin's here. Can we get Robin up here? He can tell you why BitVM sucks. 25:59 Robin, is it? Yes. 26:01 Well, yeah, I was trying to say is that – 26:04 Okay, great. Yes, come on up if you wish. 26:07 What I was trying to say was just that the multisig is a cool thing. 26:12 It's a big point of differentiation, I think, between Bitcoin and fiat, 26:18 where it's like anyone can just get it with a click in Bitcoin world, 26:23 whereas in the fiat world, you have to do this complicated other thing that involves the bank doing it for you. 26:29 And it's also a case where the soft fork was rushed, but we probably are happy that we have it now, 26:38 even though it had – despite its problems, it's better to have it versus nothing, 26:44 but it would have been better to have something that didn't have this problem. 26:49 So, yeah, there's a lot of thoughts about that. 26:53 So, Robin, I got Paul to say – correct me if I'm wrong, Paul. 26:56 This is my impression – that BitVM is a revolution in contract law, as big as Bitcoin was when Bitcoin came out. 27:04 Is that an accurate statement of your case there, Paul? 27:10 Well, I was saying that this whole industry is part of the topic of revolutionizing law. 27:16 But I was saying – you said, if I could hold a gun to my head, you had the metaphor about the gun. 27:21 But I was trying to say that actually quite a few things are that, including L1 Bitcoin. 27:26 And it touches on everything about how the blockchain works, 27:30 which is who – Satoshi realized, apparently, that in order to advance the state, 27:36 you need to have this whole mining concept, this whole mining game. 27:41 Because you need to know about who saw which message by when. 27:45 People can just ignore messages and just kind of pocket veto them, which is not good. 27:51 Because, of course, if you can censor something, then it can make it look like someone is not participating. 27:58 And so Satoshi's idea with the mining and each message has a transaction fee and all that, 28:03 that seems to be tightly linked to whether or not it can actually deliver on the promise of the smart contract. 28:12 It sounded better earlier. My version was better. 28:16 Now you're making this sound like, oh, the revolution already happened 15 years ago. 28:21 Well, apparently not, though, because we have yet to achieve the full – 28:27 it will have happened when every type of relationship flows through something, 28:36 like you were saying with the gun. 28:39 Anyway, maybe Super was going to give a list of other reasons why BitVM sucks. 28:44 Yeah, it was. I had this whole cool thing. 28:48 Who knows better than you and Robin? 28:51 Well, Robin knows better than me, because the reasons I find that it sucks are probably fixable. 28:57 Robin probably knows how to fix them. 28:59 But last week I did a – well, someone else made an implementation of SHA-256 29:05 that works in a slightly modified version of my BitVM implementation. 29:12 And I was ecstatic and ran it on Signet, and it totally worked. 29:17 I was able to do a SHA-256 function. 29:20 It took my computer about five minutes to do the processing, just for a single SHA-256. 29:26 And Robin's paper mentions that if you're doing computation with BitVM, 29:31 the off-chain part, one of the downsides of it is there's a large amount of off-chain computation and data transfer. 29:38 So I made this five-megabyte file full of patches and preimages, 29:42 and then I had to send that to Alice, who I was also running Alice. 29:46 I was both Alice and Bob. 29:50 Bob had to create the file, then download it, send it to Alice, 29:54 and then Alice had to upload it and – well, not upload it, but just run it through a program. 30:00 And it took my computer five minutes to actually run the program. 30:06 So that kind of sucked, and it was just for a silly little SHA-256 function. 30:10 So since then, I've been looking at porting an actual CPU to Bitcoin or to BitVM, 30:18 because the SHA-256 function is more complex than an actual CPU. 30:23 So I was like, if we can do that, if we can do SHA-256, we should be able to do a CPU and do a state change. 30:30 So I've been looking into them, and the first one I looked at is RISC-V, 30:35 which is a computer that has – it's a free and open-source computer, 30:41 and there's a lot of tooling around simulating it, 30:47 because people use it for other things, like simulating Linux on other systems, 30:55 like simulating the hardware it runs on. 30:57 So I started looking at RISC-V, and it's too complex for me. 31:01 It's a 32-bit computer, and it's got this insane clock speed that it's supposed to run at, 31:08 and it's just – I had a hard time wrapping my mind around it. 31:13 So I started looking for a simpler computer, and I thought, what's the simplest computer I know of? 31:17 And I thought a Game Boy is the simplest programmable computer that I know of. 31:22 So I looked up the Game Boy schematics, and I found that it's a very simple computer. 31:26 It only has 3,000 logic gates, which is like two orders of magnitude less than the SHA-256 function, 31:33 which is 100,000 – more than 100,000 logic gates. 31:37 So I started looking into that, downloaded the schematic, 31:41 tried to – I found some people who had already implemented a simulation of it, 31:45 and even that is too complicated, because the Game Boy not only has a CPU that it uses for state changes, 31:52 but it also has a separate GPU that it passes stuff to, and then that thing operates, 31:57 so you have to emulate both of them if you want to actually run Game Boy programs. 32:02 And then it also has a sound card that I wouldn't even want. 32:05 I would want to just strip that out, but then you have to do something with the wires that are supposed to connect to the sound card. 32:10 You have to simulate them going into the void somehow. 32:14 And it was just really hard. 32:15 So I gave up on trying to do the Game Boy and looked for a yet simpler computer, 32:20 and I found this 8-bit computer made by a guy on this program called Logisim, 32:28 which is like a tool for simulating logical circuits, and people play with it. 32:32 They make circuits and then share them online. 32:35 And somebody made an 8-bit CPU for it that was extremely simple. 32:38 It only has 256 bytes of RAM, and that's in a couple of memory registers, 32:44 and the only things that are inputs to the program are those, 32:48 so you don't have to worry about keyboard presses or anything. 32:51 It's an 8-bit CPU, and it runs at like 1 megahertz. 32:55 So I was like, I think I can do that. 32:57 So I started doing some napkin math today as I was beginning work on implementing this thing for Bitcoin. 33:04 And with 256 bytes of RAM, if I wanted to send somebody a program, 33:11 I would have to send them a hash preimage for each byte of RAM, because those are the inputs to the circuit. 33:17 And so you have to multiply the 256 bytes by 8 to get the number of bits you have to send them, 33:22 and then you have to multiply that number by 256 again, because you're sending them a hash for each bit. 33:31 In fact, you're sending them two hashes. 33:33 So it gets into the realm of just to send them a program that you want to run through this copy of a CPU, 33:39 you have to send them somewhere around 50 megabytes of data, 33:43 and that's not including, for every logic gate in the circuit, of which this one has something like 3,000, 33:49 you have to send them three hashes for each of those, 33:54 or six hashes for each of those, and then three preimages. 33:57 So it gets to be this huge, like, that's just for one clock cycle. 34:03 So if you want to do anything meaningful with a computer, it has to run for multiple clock cycles. 34:09 And if you wanted to run the thing for a second, I calculated you would have to send them somewhere around 18 terabytes. 34:15 18 terabytes of data to run the computer for one second, which sucks. 34:22 That's not feasible. 34:24 I assume this is because I'm just not a good programmer, 34:26 and that you maybe don't have to send them the logic gates that aren't being used in that clock cycle, 34:32 and maybe you don't have to send them hash preimages for bytes of the memory that didn't change, 34:38 and maybe you could cut that down considerably. 34:40 But my napkin math tells me in order to run this 8-bit computer for one second, 34:44 you'd need to send somewhere around 18 terabytes of data. 34:48 And so that's another reason why BitVM sucks. 34:51 Robin, you want to correct me on this? 34:54 I was wondering if you really need every CPU state. 34:57 I mean, you might, maybe people would, but let's hear from Robin. 35:02 I had that exact thought about I'm going to play Mario Tennis, Game Boy Color version, against Super Testnet, 35:09 and the winner will get a Bitcoin. 35:12 And then I was like, how does that work exactly? 35:17 Do we simulate every possible… we have a Game Boy Color emulator, and it's going to simulate every single… 35:24 But what you just could do is you just put in the inputs. 35:28 You know what I mean? You just put in the controller inputs. 35:30 You just say, at each time, left, left, left down, A, you know? 35:34 But you also have to give it the ROM. 35:36 The cartridge is like 32 kilobytes of data, which you have to convert into the format BitVM understands, 35:42 which is several hatches per bit. 35:45 Yeah, well, maybe. I mean, can't you just… I don't know. I don't know the details. 35:51 But I was wondering about that exact question. 35:53 I was like, there's an awful lot of stuff happening, even in a simple game. 35:59 But anyway, hello, Robin. Happy Friday. 36:02 For every frame of the game, you need to send what buttons you're pressing, 36:06 and your opponent would need to send what buttons they're pressing, 36:09 and then run them through the program and make sure that it is valid input. 36:13 It's a simple 15 terabytes every second. 36:15 We'll just call, you know, we'll get Sam over at OpenAI. 36:22 I hear that he is purchasing some hardware in bulk, 36:25 so maybe he can lend some to the Bitcoin community for BitVM. 36:31 Well, so when Robin's talking about this, he's much smarter about this stuff than I am. 36:35 And he says that you could run a real computer, like a big beefy 64-bit Intel CPU, 36:42 for only like 30 gigabytes of data transfer. 36:47 So my math tells me different, but he's also better at this than I am. 36:53 I don't know if he can speak right now, but I'd love it if he could. 36:57 He is muted. 36:59 Robin, welcome to the stage as a muted person. 37:07 Well, I'm going to keep tinkering away at my version. 37:11 Even if I can only get a version that runs at this awful speed of 18 terabytes per second, 37:19 at least it's a starting point. 37:21 And then someone who's smarter can be like, you idiot, you didn't have to do it this way. 37:24 And then they can fix it for me. 37:26 Because I'm learning all this stuff for the first time. 37:29 You know, like how to make 8-bit CPUs and then convert them between various formats and simulate them. 37:34 I think you don't need – this is complete. 37:37 I'm just totally making this up, and this makes no sense. 37:40 No one should take anything about what I'm saying seriously anyway, 37:44 because I don't even like – I don't think this is the greatest way to go versus BIP300, obviously. 37:51 But I think that you could rewrite Mario Tennis, Game Boy Color into like – 37:58 you could delete everything that's not the one specific match, 38:01 and then you could rewrite it as just a stream of stuff that could happen in that one – 38:09 you know what I mean? You could like really, really narrowly rewrite the game. 38:12 You make a Mario Tennis ASIC. 38:15 Very narrowly rewrite it so that there's only a few interpretations of what can happen. 38:22 And you have a new game, and then that's the game you play. 38:25 Yeah, and that's basically the route we went with the SHA-256 function. 38:28 Because instead of making a CPU that can run anything, including SHA-256, 38:32 we just wrote the entire circuit out. 38:34 And that works. It's way faster than if we did it on this 8-bit CPU. 38:39 But it still takes like five minutes just to run the SHA-256 function. 38:44 Yeah, I'm sure all of you are very familiar with Mario Tennis, Game Boy Color, 38:47 which is a great game, so I'm just going to speak as everyone is. 38:50 But it's like you just have someone serve, and then everyone volleys. 38:53 And then you don't have to keep track of as much of the stuff about who wins a match point, 38:58 or a set point, or game point, match point, set point, et cetera. 39:03 Because it's just like – you could reduce it. 39:06 You could make a tree of the game, since it's just someone serves, 39:10 and then you volley over and over again. 39:13 Hopefully you won't have to wait five minutes for each frame. 39:17 You don't even need the music and the graphics for each step at all, 39:23 because you could have a front end reinterpret it. 39:27 So you're turning Mario Tennis into Pong. 39:30 You get rid of the graphics, get rid of the sound. 39:33 Maybe you'd put it back on later. 39:35 You certainly don't need the music and stuff. 39:37 You could just have a Spotify, group Spotify, and do that part. 39:42 Yeah, you could write Pong. 39:43 I mean it would be a lot easier to write Pong for it, 39:45 and then skin it to look like Mario Tennis. 39:49 Yeah, exactly. 39:53 Yeah, I saw Robin do a tweet about something about a modern CPU. 39:58 And I was like, wow, really? 40:01 Cool. 40:02 I'm trying to do an ancient CPU. 40:04 It's far fetched for me. 40:06 I mean, at a certain point it does become a huge question mark 40:10 where you think, okay, the computer that I'm going to run BitVM on 40:14 is only of a certain size. 40:16 So you're going to do all this stuff to like zero out bits and hash them. 40:25 You kind of think, how can it be? 40:28 How can it be? 40:29 Isn't it like a Russian dolls situation? 40:32 Isn't it just a recursive? 40:34 Next thing you know we'll be simulating a quantum computer 40:36 on our analog computers. 40:38 Right. 40:39 And then that computer will simulate a million other computers. 40:44 And you're like, why does the world, 40:46 why does planet Earth even need any more than just one computer at that point? 40:51 There we go, world computer. 40:53 Simulate it all. 40:54 That's where we're at. 40:55 So, yeah. 40:56 What else? 40:57 Do you have a long list other than the data transfer requirements? 41:07 Yeah, I assume I do, but that's the one that's been occupying my attention. 41:11 So that's the one on top of mind. 41:14 But I can't think of other ones that are probably lurking in my yesterday's memory. 41:22 Okay, interesting. 41:24 You seem much more practical on the scale of theoretical to practical. 41:30 I'm always seeing SupertestNet has built the first blah, blah, blah. 41:38 So on the scale of theoretical to practical you seem to be. 41:42 And, you know, as is often the case, 41:43 when the people build something in practice they realize, 41:45 oh, this is going to take my computer like 45 years. 41:49 And then you're like, well, that's better. 41:52 Well, I still think it's cool, though. 41:53 Even if it does take you 45 years to render another frame of Mario Tennis, 41:58 at least you can do it. 42:00 That's cool. 42:02 It's a really great game, guys. 42:03 It has great music. 42:04 Everyone get out there. 42:06 Get your Game Boy Color emulator. 42:10 Post a screenshot when you make it to the Island Cup. 42:15 Okay, that's the challenge of the day, or of the weekend. 42:22 It's a really fun game. 42:24 Back in the days of Game Boy Color, everyone's like, what? 42:26 How old are these people? 42:28 Are they a trillion years old? 42:29 Yeah, back in the day you were lucky. 42:32 You know what's really crazy is if you played – 42:33 I never had a Game Boy Color. 42:35 I had an original Game Boy, or my brothers did, 42:37 and then I sort of got it hand-me-downed to me. 42:40 Yeah, I played Pokemon on Game Boy Black and White at first for like a short time, 42:44 and then I got the Game Boy Color, and I had my colors, which was great. 42:51 It was amazing. 42:52 Oh, and then whenever Game Boy Advance came out, it was like a golden sun, 42:55 and I just couldn't believe the graphics were so good. 42:57 I just couldn't believe it. 42:59 I would just stare at them, and I just thought, I can't believe it. 43:01 It's amazing. 43:03 Yeah, the Game Boy Advance is a really cool system. 43:07 We never really needed to advance beyond that, honestly. 43:10 It was already advanced enough. 43:11 I agree. 43:15 Well, actually, it did need – I have to tell you. 43:17 We agree too much, Paul, you and I. 43:19 We can't think of anything to argue about. 43:21 No, but I'll tell you this. 43:22 You had to go to the backlit screen. 43:25 Nothing had a backlit screen before then. 43:27 People who are young, you don't know what it was like without the backlit screen. 43:33 It was like you literally would be playing – 43:35 You had a little dial. 43:36 You could use the dial to make it change the color scheme. 43:41 You would be playing a game. 43:44 Certain games could not be played, and you'd be playing a game like Pokemon, 43:47 and you'd be sitting in your car, your family car you'd be driving to, whatever, 43:51 and you'd have to go streetlight by streetlight to play the game 43:55 because there were no backlit screens. 43:59 Well, it had the Game Boy Light, though. 44:01 You could plug a little light into your – 44:03 I was a proud owner. 44:04 Link cable? 44:05 I was a proud owner of the Game Boy Light, yeah. 44:07 My parents would never let you use it on car rides because they'd be like, 44:10 hey, turn the light off. 44:11 It's too bright. 44:12 Yeah, it makes it hard to see out of the car at night. 44:15 This all happened. 44:16 This is all real. 44:17 Some fantastic – 44:18 You've got to compare the Mario Tennis music on Game Boy Color 44:23 to every other Mario Tennis music, and it's actually horrible. 44:28 The old music is way, way better in many such cases 44:33 where the old music was written by – 44:35 the people who wrote, for example, this is way off topic, 44:38 but people who wrote Pokémon music, that was a guy who was going in 44:42 and he would program each of the sound waves. 44:45 These Japanese workaholics that work super hard every day 44:49 to try and put joy into every single note of this, 44:52 they're changing the vibrato of each note, 44:55 and they know they only have four sounds. 44:58 So when you are listening to the sound effects of the game 45:02 in the game interface, they temporarily deload a sound. 45:05 It's just people who just really, really cared so much 45:07 about producing something that children would like. 45:11 They just really took responsibility for every tiny detail. 45:14 They were trying to get the most out of this tiny, tiny piece of hardware. 45:18 It's also a lot of fun. 45:20 It's a cool thing. 45:22 Learning how they did all this stuff for me 45:24 to try and recreate some of it on Bitcoin. 45:26 Fascinating. 45:27 It's fascinating. 45:28 It's very similar. 45:29 It's a fun topic, because the idea of having to simulate something, 45:34 there's this great thing, I think it's called War Stories, 45:37 and I think it's Ars Technica, and it's fantastic. 45:40 Go back and you see how they made... 45:42 For example, when they made Myst, 45:44 they had absolutely no idea that it would actually... 45:47 They just started making it, and they had no idea. 45:49 The CD-ROM hadn't come out yet, or the specs weren't out. 45:52 So they just made this game, 45:54 and then luckily CD-ROM had been invented. 45:57 And then luckily, it didn't work at all, 46:00 but they just had the idea to just put, 46:02 literally onto the physical spiral of the CD-ROM, 46:06 they put the images in what they thought 46:08 would be the order of people clicking on them. 46:11 And this happened to work just barely enough. 46:14 Otherwise the game would have been unusable. 46:17 It would just have never existed. 46:19 And there's just all these great stories 46:21 about Crash Bandicoot and everything. 46:23 It's like hacking the CPU of the PlayStation 46:28 and stealing RAM from the operating system. 46:33 This is just amazing. 46:35 We got Ryndell here. Ryndell, congratulations. 46:37 Oh, thanks. Yeah, thank you. 46:39 A new thing. 46:41 I heard you guys talking about programming old Game Boy games. 46:44 I love programming in constrained environments. 46:49 For a while, my decompression stress relief hobby 46:53 was writing microcontroller firmware 46:56 because it's very low level. 46:58 And if you mess up, then the light doesn't turn on. 47:02 So it's a very short feedback loop, 47:04 and you're so much closer to the problem domain 47:07 than some other stuff. 47:09 If you haven't seen it, Super Test Night, 47:11 you should check out. 47:13 There's a device that came out not that long ago 47:15 called the Playdate. 47:17 It's like a little handheld game console. 47:19 And it's got an A and B button, a D-pad, 47:23 and then a little crank on the side, 47:25 which is like an input device. 47:27 And it's like a monochromatic reflective screen 47:30 and a single mono speaker. 47:32 And people have been putting out 47:34 just really fun, delightful little games. 47:37 Because it's just this really small, low-powered device 47:41 with very constrained inputs. 47:43 And people have been doing really creative, 47:45 interesting games with it. 47:47 And the programming environment for it 47:49 is really, really nice. 47:51 So they put out a Lua SDK, 47:53 and they put out a whole bunch of tools, 47:55 like a level builder and stuff. 47:57 So if you like programming little games and stuff, 47:59 it's a really fun little device. 48:01 Yeah, I think I've seen another brand of that. 48:05 It wasn't called the Playdate, 48:07 but it was called something else. 48:09 It's like the size of a credit card. 48:11 And yeah, it's a really cool system. 48:13 Somebody made a first-person shooter for it, 48:15 which I thought was amazing. 48:17 So I love seeing people try to make Doom run on anything. 48:20 And it wasn't Doom, 48:22 but they got this first-person shooter running on it, 48:24 which is cool. 48:28 Okay, well, let's just see, though, 48:30 if we can give the poor people something. 48:32 So can we summarize? 48:34 Problems with BitVM are it's new, 48:36 and this is from SuperTestNet. 48:38 It's new, and it may be 48:40 just extremely unwieldy 48:43 to get anything useful out of it 48:46 because it will take 15 terabytes to... 48:49 Well, no. No, hang on a second. 48:51 We got the SHA-256 function working. 48:53 That's extremely useful, 48:55 and that only takes five minutes to run. 48:57 Five minutes for SHA-256. Okay, not so bad. Let's be more clear, though, because now I don't even know about... So this is the case where you and I sit down, and we must grind it out independently, and then we fund, we deposit the money, and then we play the game, and then we withdraw the money. Is that the scenario? 49:18 Yeah, yeah. That's how we have been doing it, and that's how I want to keep doing it. 49:24 Each person who wants to enforce the BitVM, they must do this thing that you were talking about. They must compute the VM. I mean, I don't know. There's not a good terminology for it. 49:38 They have to take the program and convert it into a Bitcoin address, and it takes a long time if it's a big program. And then they have to compare it with everyone else's to make sure everyone got the same thing. 49:52 And then everyone sends the same money to the Bitcoin address. 49:55 Well, that kind of depends. Sometimes only the prover needs to send money. Sometimes the verifier also needs to put up a pledge. 50:05 Yeah, it would be like you sit down at an arcade, and there's like player one, player two. They have different – everyone knows that player one's Bitcoin address is this. Player two's Bitcoin address is that. 50:17 Yeah, but sometimes you don't need – sometimes you just want to say, like, I will pay the prover off-chain if, like, conditional on him putting some money off as a pledge that he will run the program correctly. And then player two doesn't actually need to put any money in. 50:32 Okay, that's good. But we're talking about – should we – I think we should name this thing. Is there a name for this, like, you know, the setup, the setup precompute? Like, what is the name? 50:47 Setup phase. 50:48 Setup phase. 50:50 That's what I've been calling it. 50:51 Setup phase is five minutes per SHA-256 and – 50:55 And then another five minutes after you've computed. 50:59 Five hours to simulate a Game Boy-esque CPU. Not quite, but – 51:09 However long it takes you to download 18 terabytes of data from what I can know how to do. Obviously, I'm just floundering here because I don't actually know how to program this stuff. 51:19 Okay, unclear setup phase. And then the lack of recourse. If it turns out one of your counterparties is a miner, then there is a – it is a – then you are – BitVM isn't doing anything for you. They already have the money. 51:40 Not just any miner. It would have to be one of the miners that has a majority of hash rate. 51:44 Yeah. 51:45 So, it would have to be amp-pool plus foundry, and then you're screwed. 51:50 Yeah. Which, of course, you know – the reason why I bring it up is because I think that it's not – I think usually the miners are not trying to screw everyone over, and I think the miners have great incentives. 52:02 But, you know, people throw it against me, and I just say, well, then you should apply that criticism to everything. It's a very weak criticism, though. 52:11 But I think in the case of BIP300, it is designed – it's supposed to be slow for a variety of reasons so that you see the attack coming in advance. You can blame the people and have the attack fail, and then they still get the blame. 52:23 And also, it's very difficult – one kind of weird quirk of the BIP300 strategy is that the miners might start the attack today, but the hash rate shifts over time. 52:36 You know, it's not foundry – there was – for many years, foundry didn't exist. So, foundry had 0%, but then now all of a sudden they're number one, and there have been many such cases. 52:47 So, in three months, the hash rate percentages might be different, and so that's another thing that's designed to throw a wrench into that. 52:55 But, yeah, so that's – so those are three things. 52:58 So, we've come up with three things. The set of phases is really difficult. It's not as safe as BIP300 because they can – if you're 51% of miners, they can steal from you much more quickly. 53:10 And then third, the third thing is that it's unclear if there is a robust way to grow the set of validators so that you don't have to trust any of them. 53:21 Like, do you really feel good about that? Like you said, there's 50 people who – they were all there from day one. 53:26 They precomputed everything, and they precomputed something where you can join, but you're not part of the original thing. 53:34 So, you're kind of like, maybe – I guess it could be okay. 53:39 So, first of all – 53:40 We need to see the details. We've got to see the details. 53:42 I do think it's – it sounds possible to me. I see a path to how to get it so that you can not have to trust one of the validators. 53:52 However, even if you do, even if what I think will work doesn't work, it's still an improvement on the sidechains we have today because today you have to trust like eight people in order to use one of these sidechains. 54:04 And this would be – you only have to trust that one out of the 15 people or one of the 50 is honest. 54:09 And that's way better. It's just a way better situation. 54:12 It's certainly more fun and more impressive and cool. It's more techie. 54:19 I do worry in a way, though, that it does – people seem to be – as time goes on in Bitcoin, people will either jump on a bandwagon or jump off a bandwagon or whatever. 54:35 They seem – the ratio of confidence to actual putting in the work and doing something is, I think, has been increasing, which is bad. 54:50 People are more overconfident. They just think – 54:53 Well, Taproot is kind of an example because people were going around and saying this is the biggest upgrade to smart contracts in Bitcoin's history or something. 55:01 They were saying stuff like that. That was kind of like not really what you would say. 55:07 They just had an inkling that BitVM was possible. 55:10 Yeah, between BitVM and ordinals, we're going to prove them right. 55:16 Yeah, things they never saw coming are going to actually turn out to make them right. 55:21 No, I'm just kidding. I don't think that's true, but I do think it's cool. 55:28 BitVM is really neat, and I'm having a ton of fun. 55:31 I'm having the time of my life learning about how to make computers from scratch so I can build them for BitVM. 55:36 It does sound like you would learn an awful lot from doing such a low-level thing. 55:44 Well, there you go. I don't know. Unfortunately, I really don't have a lot of time today. 55:52 Yeah, that's it. We came up with three reasons BitVM sucks. 55:57 We gave people something. 55:59 We gave them two mitigations. 56:02 You guys can certainly stay if you leave it open. We just let it run. It can be one of those spaces that just runs. 56:07 I mean, I'm happy to do that. 56:11 Rindell, you can take over. 56:13 And your co-host can be Robin, who can't speak right now. 56:17 We can infer that Robin is being held at gunpoint and has secretly activated his phone. 56:24 Well, no. Robin is just working on computing the circuit. 56:27 It's going to take a few more minutes, and he's going to send over all the hashes. 56:31 He's going to send it. He's uploading it. 56:33 He's running Twitter space on the BitVM, and that's why. 56:36 It's the slow upload speed, so to get to 15 terabytes, it's going to take a little while. 56:49 And then the way it works is because we have total control over the state, 56:54 so if he then unmutes and says the wrong thing, we slash him and we take his money. 57:02 The contract with Robin is that he has to produce a certain waveform during the… 57:06 Exactly. He has to produce certain words, and they better sound good. 57:12 BitVM, bit extortion. 57:22 I don't think that's an example of a good-sounding thing. 57:26 Hey, J25, you got up as a speaker. What did you want to say? 57:28 Hello. Yes, do you have anything? Now's the time. 57:34 And anyone, now is the time. If you have something you really want to ask, quick. 57:38 Quickly come up here and try to ask. 57:42 Lightning round. And again, I'll just leave. You guys can stay if you want. 57:46 You're muted, though, J25. Quantum. 57:49 Yeah, hey, guys. I'll just jump in real quick. 57:51 Hello. 57:52 Yeah, and again, this is just kind of saying kudos on the way out. 57:57 I know I messaged both SupertestNet and Paul Sztorc individually to try and actually get this, 58:03 you know, to get you two together to have a conversation for people that wanted to listen. 58:07 So I'm super glad I was able to jump in and listen. 58:11 And I want to encourage you two to keep conversating about it as you make developments individually. 58:19 Yeah, Super's great. Super's great. We did a great panel at Bitcoin++ in Austin. 58:25 Awesome. Yeah, so. 58:27 One of the all-time greatest. 58:29 Yeah, I just wanted to say thanks because I'm, you know. 58:31 And Paul's decent. No, I'm kidding. He's awesome. 58:34 He's a decent human. Yeah. 58:36 So I'm just, you know, teaching myself on a lot of this stuff as I did in the past. 58:42 You know, I was out of Bitcoin development really until Taproot came out. 58:48 Because when those original opcodes were deprecated, I was like, oh, well, the things I want to do on the core chain. 58:55 I'm going to have to wait for a re-release or something. 58:57 So it happened. And then I started relearning what I've forgotten and put in the back of my mind for many years. 59:06 So I'm excited about what you guys are doing and what we can develop and figure out after that. 59:12 So thanks for coming by. Thanks for you two for getting together. 59:14 And again, just much encouragement for you two to keep conversing and keeping people up to speed on what's going on. 59:22 The only thing I would say is, you know, don't be afraid to break things down to like simple forms. 59:27 So, you know, in terms of for you, super testnet, like you talk about programming in these logic gates, 59:32 you may have people in the space that don't even know what a logic gate is or does. 59:37 Right. So just don't be afraid to break that down if you have the time, obviously. 59:41 But thanks for coming by, guys. Thanks for having me up. Thanks as always. 59:46 Cool. Thanks. Yeah, I think BitVM, we should. 59:48 There should be like a little, we'll make a little infographic, like an animated thing that are like, 59:53 it's just as like the idea of hashing each bit. 59:58 Maybe that as an image, maybe that would help people or maybe not. I have no idea. 1:00:02 Anyway, J25 is up on, but muted. 1:00:06 So, so one of the things is this probably I didn't think of this. 1:00:11 This is probably the reason why mine is so inefficient is because I'm using logic gates. 1:00:17 And Robin's version of the BitVM doesn't. 1:00:21 He uses mostly Bitcoin's arithmetic off codes. 1:00:24 Instead, there's all you can do with arithmetic. 1:00:28 And it's much more efficient, apparently, because, you know, his Blake three function certainly didn't take five minutes to compute. 1:00:36 Everyone's node got it done within a few seconds, within, you know, milliseconds. 1:00:40 So, yeah, actually, that's probably the reason why mine is so terribly inefficient, 1:00:44 is because I'm trying to do everything at the logic gate level and simulating each logic gate of the circuit. 1:00:49 If I was smart, like Robin, I would just do this more efficiently. 1:00:57 Hey, Mark. Hello. 1:01:00 My name is Mark. I have a question. Is Casey's indexer in any way, shape or form used in the project? 1:01:09 Not mine. I doubt Robin uses it. 1:01:12 Okay. Casey's the ordinal indexer, original creator. 1:01:15 So I guess, well, I just want to give a shout out to the host Layer 2 and Paul and SuperTestNet. 1:01:22 And I'm a big fan of what you guys are doing here. 1:01:25 So I'm just going to go back to listening. 1:01:27 I hope to contribute positively in some way, shape or form in the future. 1:01:34 Cool. Okay, great. 1:01:40 Well, again, I have to go. But if anyone has anything they must ask, come up quick. 1:01:46 I support you, Paul, on your mission. I think Drivechains are the future. 1:01:49 I definitely think we need to take Ethereum. 1:01:55 Yeah, we should take every good idea. And developers are going to dev. 1:01:58 That's the thing is. 1:02:01 Why not? 1:02:02 Yeah, and we can't have a priori knowledge of each idea. 1:02:06 You can think an idea is bad. 1:02:09 I thought Twitter was a terrible idea when it first came out. 1:02:12 And I thought Snapchat was a terrible idea when it first came out. 1:02:14 And I don't really use Snapchat that much these days. 1:02:18 You weren't wrong about Twitter. 1:02:19 Exactly. And there's parts of Twitter that are terrible. 1:02:24 Things grow and change and the circumstances change. 1:02:30 And no matter what happens, we are going to have people who will make lots of projects. 1:02:35 So they will do BitVM. They will do Solana. 1:02:39 They will do Bitcoin SV. 1:02:42 And the idea behind BIP300 is just we'll just turn those things into Bitcoin projects. 1:02:47 So use BTC. 1:02:49 And if we don't do this, then they'll just be altcoin projects. 1:02:53 So a lot of people, I think, hope. 1:02:55 They think, well, we want them to be altcoin projects because we want those people to suffer and waste their time. 1:03:00 But it's like these projects are going to continue to happen at a geometrically increasing rate forever. 1:03:08 And some of them will attract users of some form or another. 1:03:12 For example, Solana is a great example. 1:03:15 And Bitcoin SV are great examples of something where they don't want to be decentralized in terms of how expensive running a node is. 1:03:25 So they don't want to have a server like Liberty Reserve, but they don't care if the node costs a lot. 1:03:31 Where it costs a lot isn't even that much. 1:03:33 It's like thousands, tens of thousands a year maybe, which is not far from infinite. 1:03:38 And so they're going to push the envelope in that direction. 1:03:41 And then they're going to get everything they can out of that. 1:03:44 So people are going to continue to do that. 1:03:47 And the question is, do we want to use Bitcoin with those projects, or do we want to have this endless, pointless conflict? 1:03:56 Anyway, I have to go. 1:03:58 So yeah, we should copy everything, though. 1:04:00 You guys can stay if you want. 1:04:03 A guy asked me if I could explain what Logigates are and how they work. 1:04:08 I'm going to leave, though. 1:04:10 But thanks, everyone. 1:04:12 Stay for 24 hours until the thing crashes. 1:04:15 I think that's the limit. 1:04:18 Anyway, see you guys later. 1:04:19 Maybe I'll rejoin. 1:04:20 See you guys. 1:04:21 Thanks a lot. 1:04:24 Yeah, so Logigates. 1:04:26 So one of the ways that you can build a BitVM is the way I'm doing it, which is by writing circuits in Logigates. 1:04:33 And so what's a Logigate? 1:04:35 Well, they were invented a long time ago by this guy named George Boole, who was a mathematician in the 1800s. 1:04:43 And he discovered that you could do a form of – well, I want to say a form of mathematics. 1:04:52 It's not exactly mathematics, though. 1:04:54 It's logic, where you make true or false statements and represent those statements as ones and zeros. 1:05:04 And then you pass those statements through these things called Logigates that can assess the validity of certain types of statements. 1:05:11 An example of a Logigate is an AND gate. 1:05:13 And the AND gate says that if the two statements that are passed into it are true, it will say so. 1:05:23 It will say, yeah, both statements were true. 1:05:27 And then another one is the OR gate, which says if two statements are passed into it and at least one of them is true, 1:05:33 it will say so. 1:05:34 It will say, yeah, at least one of these things was true. 1:05:37 And then there's a few others. 1:05:39 There's the exclusive OR gate, which says you can pass two statements to it, and if only one of them is true, it will say so. 1:05:46 But if both of them are true, it will say there was a problem. 1:05:54 And then there's the NAND gate, which is the one that I use most because it's the most powerful of them all. 1:06:02 And it says if you pass two statements from it, it will only say – if both of them are false, it will say so. 1:06:12 Otherwise, it will fail and say there was a problem. 1:06:16 Anyway, you can use these things to build computers. 1:06:18 In fact, computers are built of these things. 1:06:21 In the 1900s, people figured out how to make these things called transistors, which are little pieces of metal that have electrical charge on them. 1:06:31 And you can simulate logic gates with them. 1:06:34 And it's what we use. 1:06:36 It's what computer chips are made of. 1:06:38 They're just a bunch of – millions of these logic gates all hooked together. 1:06:41 And then you can pass electricity through them and, like, make lights show up on your monitor in predictable, programmable ways. 1:06:52 So you can say, you know, if I hit H on my computer, then an H will show up on my monitor or on someone else's monitor or whatever it is that your program wants it to do. 1:07:02 Or, you know, you can play pong with this. 1:07:05 You can say if I hit up on my thing and I hit it up for long enough, then I have the ball get smacked by the paddle and go to the other side of the screen at whatever angle. 1:07:16 These are the things that you can make with logic gates. 1:07:18 And every computer chip is just composed of a bunch of logic gates hooked together along with these things called latches for doing memory. 1:07:27 And they're neat. 1:07:29 Like, they're really cool things. 1:07:30 So that's what a logic gate is. 1:07:32 It's a small piece of circuitry. 1:07:36 Originally, they weren't even circuitry. 1:07:38 They were just a mathematical kind of notation for analyzing the true and false statements. 1:07:46 But now they're circuitry. 1:07:47 They're pieces of computer circuitry that you can use to make programs out of. 1:07:51 And I'm designing my implementation of BitVM to just use those to create a real computer and then run programs on it. 1:08:00 You can also just design the programs themselves in it, which is what we've been doing so far. 1:08:05 The things that have actually run on BitVM are just individual programs. 1:08:09 We've had an addition program and recently a SHA-256 program. 1:08:13 And you can just pass data into it, and it'll process that data according to addition or according to whatever function you chose, and then it'll pass out the result. 1:08:22 I'm trying right now, one of my current projects, to build a computer, an actual computer with these things, or I guess a virtual computer with these things. 1:08:30 And then you could program it to do a bunch of different things. 1:08:35 Yeah, so the logic gates allow you to do millions of cool things, and I hope that helps people understand what they are. 1:08:43 They're also not – in Robin's mind, they're not efficient. 1:08:48 Or in a certain sense, there are more efficient ways to build BitVM than by creating and simulating logic gates in Bitcoin script. 1:09:01 So yeah, he's got a much more efficient implementation of BitVM than I do, but I don't know how to do his, and it also sounds really boring. 1:09:09 So I'm doing it my way, which is less efficient and terribly expensive computationally to run, but it works, and I have fun with it. 1:09:19 So yeah, that's what's up. 1:09:21 Hope that helps. 1:09:24 That's pretty cool. 1:09:26 What? 1:09:28 I enjoyed listening to that. 1:09:30 Let me ask you, though. 1:09:32 Is the concept of runes and ordinal inscriptions – can logic gates be programmed in? 1:09:37 Let's say you want to program a specific circuit, like a 555, or some kind of mathematical circuit to process a script. 1:09:46 Can that be put in as an inscription, perhaps, and then referenced? 1:09:51 Yeah. 1:09:53 At least you can take a whole program and inscribe it onto Bitcoin. 1:10:00 Somebody did that with Doom. 1:10:04 Somebody took the game Doom, and it's like a four-megabyte file, and they inscribed it, and then they put it on the blockchain. 1:10:13 So you can download Doom from the blockchain and then play it. 1:10:16 But that's not what I'm trying to do. 1:10:18 I'm trying to make it so that Bitcoin can actually enforce the logic of the thing. 1:10:21 So if you just download Doom from the blockchain and then run it, Bitcoin doesn't know anything about what you're doing. 1:10:28 It was just sort of a file host for you. 1:10:31 What I'm trying to do is make it so that the Bitcoin network actually enforces the rules of whatever program you're trying to run, 1:10:38 so that if you run it incorrectly, Bitcoin will make you lose money. 1:10:42 How do you solve the grievance problem? 1:10:45 Isn't there a grievance problem that has yet to be solved, Paul? 1:10:48 Probably. 1:10:52 There's probably all sorts of unsolved problems, but I'm not familiar with the grievance problem in this context. 1:10:57 Do you want to elaborate on it? 1:10:58 So let's say you're playing a game of chess, and the position is checkmate. 1:11:03 You are entitled to your funds because you defeated your opponent, but your opponent is grieving. 1:11:09 He is refusing to send you the funds. 1:11:14 Yeah, that's solved because all you do is you make a time lock. 1:11:21 He has to act within a certain time frame. 1:11:24 So you use Bitcoin's time lock technology to say he has to act within 10 blocks, and if he doesn't, you get the money. 1:11:30 Nice. 1:11:31 And so that solves that problem. 1:11:34 But there's another way to grieve in this scenario, which is that chess is not that complicated of a program, 1:11:41 but it would probably take somewhere around 20 transactions to play out a full game of chess on the blockchain, 1:11:49 and your opponent could grieve you in that way. 1:11:53 On the first move, he just makes a dispute, and then the rest of the game has to be played out on the blockchain, 1:12:02 which would cost a lot of money, especially recently. 1:12:05 Transaction fees were like $20. 1:12:07 So you have to pay $20 per move, and that would be another form of grieving you. 1:12:13 So the game can start off offline but then go on-chain. 1:12:18 That is a mind-blown concept right there. 1:12:21 Okay, cool. 1:12:22 Yeah. 1:12:23 It's designed so that nothing goes on-chain because there's no – 1:12:29 whichever party decides to put it on-chain can only do so in the form of a challenge, 1:12:34 and if they lose the challenge, they lose a pledge. 1:12:38 They lose some collateral that they put up saying, I know I'm right. 1:12:43 So there's an incentive not to do that, but if you do it, if you do it anyway, 1:12:48 even though you're going to lose some money, you're still making your opponent pay a lot of money 1:12:52 just to run the set of transactions that prove that they weren't lying, 1:12:58 prove that they weren't being fraudulent. 1:13:00 So, yeah, it kind of – you can ruin someone's day by going on-chain anyway, 1:13:06 but you'll lose money by doing so. 1:13:08 So hopefully people won't do that. 1:13:11 Exactly. 1:13:15 So is there a software-as-a-service platform yet for any of this? 1:13:21 No. 1:13:23 My implementation is on my GitHub, and it runs as a GitHub page. 1:13:28 So you just go to my GitHub, you find the BitVM repository, and you click the URL. 1:13:36 It's like try it here. 1:13:38 You click the URL. 1:13:39 It loads up a web page where just GitHub pages are serving the content for you, 1:13:44 and you run some JavaScript that creates a BitVM virtual machine. 1:13:50 So you pick a program you want to run, and then you can do it with another person, 1:13:54 or I've always just done it with myself. 1:13:56 I play both sides, Alice and Bob. 1:13:59 So that's what we've been currently doing. And the current functions we have running, only one of them is actually really – well, only two of them are really useful. No, that's not true. They're all useful, but they're all kind of fundamental building blocks. There's not much you can do with them just by themselves. 1:14:22 So yeah, making things that use these tools we have available now is one thing to work on in the BitVM space. And then another thing to work on, which is what I've been doing, is trying to make more tools for people to use and to make cool programs that do new useful things. 1:14:42 So Super, I'm totally LARPing, but I put a thing in the nest. Would you be objecting to a pleb like me implementing a BitVM into a controller kind of abstraction layer where we can use Brocade to streamline this setup and teardown of these connections? 1:15:04 I don't know what Brocade is, but go for it, man. Do whatever you think is cool. 1:15:07 Okay, it's open source, so it'll be auditable. 1:15:12 Great. Yeah, if you find something cool that you can do with BitVM, go do it. Go forth and do it and tell us about it so we can try it out. 1:15:21 Okay, cool. Thanks. Yeah, so I'll slide into your DMs if I start getting really technical. Otherwise, I'm just going to keep it lay for everybody here because I'm definitely interested in BitVM and what's going on here. 1:15:34 Great. Another BitVM developer, guys. Round of applause. 1:15:38 A LARPing pseudo-wannabe developer, guys. I'm just an enthusiast at this point. I'm trying to learn, and I think we could do more with Bitcoin. I definitely think we're underutilizing it, and it's the future of the internet. 1:15:50 In my experience, if you LARP long enough, you convince yourself that you can actually do it. 1:15:55 Yeah, right. 1:15:56 That's nice. 1:15:59 I appreciate the platform. Thank you. I yield the floor. 1:16:03 Did you think of utilizing some hardware description language, like VHDL, for example, for generating the gates or writing the processor you were mentioning before? 1:16:20 Yeah, I did. So one of the things I did yesterday was I downloaded something called Verilog for the first time, which is a program for producing VHDL files, which is a type of hardware description language format. 1:16:36 And so that was really neat. I took one program that somebody wrote, ran it through Verilog, and it produced this hardware description language. 1:16:46 And then I looked at the file and saw how it actually converted it into all these logic gates for me, and I could read it. 1:16:53 I was like, oh, I can see how I can turn this into something I could use on BitVM. 1:16:58 So yeah, that was a neat and new experience for me. 1:17:02 And then while I was researching that, I found something else called Logisim, which is this program where you place logic gates on a virtual breadboard and create connections between them with virtual wires. 1:17:20 And then when your program is ready, you can hit go, and it'll start a little clock that you can program the speed of. 1:17:26 And it'll send electricity through the wires at whatever frequency you make. 1:17:31 And it's really neat. People have done a bunch of cool stuff in this Logisim program, including they have converters between that and Verilog, so you can make hardware HDLs out of it and then program an FPGA or make an ASIC using the things you made in Logisim. 1:17:50 So I started playing with Logisim yesterday, too, and that's enormous fun because you can see the results. 1:17:57 They make little input devices and output devices. 1:18:00 You can visualize what your program is doing. 1:18:03 So yeah, I've been having a heck of a time learning how to do that and playing with it. 1:18:08 And yeah, HDLs are now something I've done only for one day, but they're fun, and I'm enjoying it immensely. 1:18:18 Yeah, I think Verilog is actually the older version of the VHDL language, if I am not mistaken. 1:18:26 I've played with it like 10 years ago, and it was some kind of a school project, actually. 1:18:32 And we made an 8-bit processor in it, and it wasn't so hard in the end. 1:18:38 So I was thinking it may be useful for this stuff. 1:18:42 Mm-hmm. Yeah, I found somebody produced a circuit file for an 8-bit computer. 1:18:48 Well, a bunch of people have, actually, in Logisim. 1:18:51 So I'm trying to take that and then convert it into this version. 1:18:56 Well, it's not an HDL, but I guess in some ways it's equivalent into the kind of format that BitVM understands. 1:19:04 So that's one of my current projects is to make an 8-bit CPU for BitVM. 1:19:11 Yeah, and that's part of what we were discussing on this stage. 1:19:14 I was just doing some napkin math earlier today to figure out what the data transfer requirements would be to run a cycle of this CPU. 1:19:23 And I was blown away by how large the amount of data you'd have to send your counterparty is in order to run a CPU. 1:19:32 And I assume that I'm just misunderstanding something fundamental about optimal design. 1:19:38 But we'll see. I'm going to keep building and learning. 1:19:43 The way I understand it, there's always a left, a right, and a center. 1:19:48 So you're always either working on two operations and you're – sorry, guys, I'm in a loud place. 1:19:54 But, yeah, if you take the left side of an operation and then the right side, and then you know that there's a sum that they both have to compute to, 1:20:03 that would be the left side and the right side of the processor if you're just doing point-to-point. 1:20:08 It would get nutty if you were doing multi-point-to-multi-point or point-to-multi-point. 1:20:15 Well, all of those are new terms for me, so I don't know what to say about any of that. 1:20:22 I'm just trying to think, how would you break down a simple operation like a simple gate? 1:20:30 How would you verify that both parties agree to the output of some input? 1:20:37 I don't know, maybe I'm misunderstanding it. Guide me through. 1:20:42 I guess the goal is to keep each other honest when playing games like chess or cards or something on the internet for money. 1:20:49 Well, so the nice thing about Bitcoin is that its programming language, Bitcoin script, has support for logic gates. 1:20:57 So one thing you can do if you want to make sure that you both agree on the outcome of a particular logic gate is you can make a Bitcoin transaction that has that logic gate in it, 1:21:07 and you can commit to what numbers you're going to put into that logic gate. 1:21:13 Logic gates only accept 0s and 1s as input, and they only give 0s and 1s as output. 1:21:18 So you can make commitments to that. You can say, here's my commitment to putting in two 0s to the AND gate. 1:21:25 And if you put in two 0s, the AND gate should produce a 0. That's what it's supposed to do. 1:21:29 But if your commitment says, yeah, I'm going to put in two 0s and I say it's going to produce a 1, you can run that on Bitcoin, 1:21:36 and Bitcoin can be like, nope, that's false. That does not compute. And that's give your money to the other guy. 1:21:43 So that's kind of what we do with BitVM, or at least that's what I'm doing with it, is I'm encoding every logic gate of the entire circuit into a Bitcoin address, 1:21:52 and then you pick which one you want to challenge your opponent on. 1:21:55 And you say, if there is a challenge, if you disagree on the outcome of a particular gate, you can say, hey, here's what I put in and I got this result. 1:22:02 Here's what he put in. He got that result. Which one of us is correct? 1:22:06 And Bitcoin will find whoever's incorrect and then send that person's money to the other guy. 1:22:11 Man, I'd love to do a Zoom so you can just walk me through this on the screen, how to test this out. This is awesome. 1:22:19 Sure. Well, if you do want to test it out, you can go to my GitHub. 1:22:24 GitHub.com slash supertestnet, all one word, and look through my repositories. 1:22:30 One of the most recent ones is called Tapleaf Circuits. 1:22:33 It's my implementation of the BitVM, and it's got a live version running on the web, and you can take a look at the source code. 1:22:40 You can view it, see how the programs operate, see how the Bitcoin transactions are constructed. 1:22:45 And it's got a little explanation in the readme that goes through it, which a lot of people have said they found helpful. 1:22:52 I hope you find it helpful, too. 1:22:55 Thank you. I'll definitely try that when I get to a computer. 1:22:59 Cool. 1:23:03 Okay. Well, I think that's going to be it for me. 1:23:07 I'm going to go to the convenience store to get a drink, and then I'm going to come back and start working again on my 8-bit CPU. 1:23:15 But I want to thank everyone for the time we've spent together here trashing BitVM and praising BIP300. 1:23:23 One more question, supertestnet. Is your 8-bit CPU going to have a super user bit flag? 1:23:32 I don't think so. It was just going to have some RAM and an instruction set that can modify the contents of RAM based on what they currently say. 1:23:44 So in every clock cycle, it would read what's currently in the RAM, run the set of instructions, and then write the new state of the RAM. 1:23:51 And then the next clock cycle, just do that again and do that repeatedly. 1:23:56 And I was hoping that some of the pieces of RAM would be reserved for updating pixels on a screen. 1:24:04 And so then you could actually have an output device that you'd be able to show the user. 1:24:08 And I would want to get some games running on it so people can play games on BitVM. 1:24:14 That's what I'm hoping to do. 1:24:16 But I've been running into napkin math problems that tell me it'll be like terabytes of data to update this thing. 1:24:22 So hopefully I will learn while I'm making this. 1:24:26 And as I show my work, people will be like, you idiot. You did this all wrong. Do it this way. 1:24:32 There's no faster way to get good products built than to write terrible ones and put them on the Internet. 1:24:37 And then people will correct you because people love to do that. 1:24:40 And that's my superpower is being wrong on the Internet. 1:24:45 Nice. Super. I'm unemployed right now. 1:24:47 So I'll be following you a lot on the Internet and interacting with you for the next few weeks at least. 1:24:53 Sweet. 1:24:54 Super. Tesnet, may I ask you a question? 1:24:57 I know you need to go. 1:24:59 Well, I don't need to. It was getting dead in here. 1:25:01 So I wanted to go, but now it's lively again. 1:25:03 So go ahead. What's your question? 1:25:05 Yeah, that was nice what you were talking. 1:25:08 And congratulations and wish you success. 1:25:14 I want to ask you, can you please just touch? 1:25:17 Don't need to explain very deep. 1:25:19 What is the connection? 1:25:23 What connection has BitVM with Bitcoin blockchain? 1:25:30 Like how it's connected? 1:25:33 Is it with the node or how is the interaction? 1:25:38 For example, like Drivechain, you have the escrow and then the sending the transaction to be hashed. 1:25:45 So can you explain about that more? 1:25:49 Sure. 1:25:50 You don't need to do deep explanation, just touch on it. 1:25:55 Yeah, the point of connection is in Bitcoin addresses. 1:26:00 So whenever you create a Bitcoin or a BitVM program, you encode the program as a set of tap leaves in a tap tree. 1:26:10 And then the root of the tap tree becomes your Bitcoin address. 1:26:15 So that's what you send money to. 1:26:17 You send money into that Bitcoin address. 1:26:19 Two parties do. 1:26:21 But before they send money into it, they sign up, they co-sign together a bunch of transactions that allow one of them or both of them to challenge the other and say you ran the program incorrectly. 1:26:34 And you can prove that they ran the program incorrectly by showing what basically what line of code executes falsely. 1:26:43 So you can a way to think about an analogy to think of it is that if you take each line of code, you're putting each line into a into a leaf of a tap tree. 1:26:53 And and so every line of code is in there somewhere. 1:26:57 So if you both run the code, if you both say we're going to put this data as input to the program and I get this result and my counterparty gets this result. 1:27:08 If you agree on the result, then that's great. There's no dispute. You both ran the program correctly. 1:27:12 And then you just send the money to whoever the program says should get it. 1:27:17 If there is no dispute or if there is a dispute, if one of you says it came out true and the other says the program returned false, then I guess it'd be my program. 1:27:30 I ran the same code as you through the program and it said that I'm supposed to get the money. 1:27:33 But your counterparty says no, it says I'm supposed to get the money. 1:27:36 Then you take each other's code and you show what line of code they ran incorrectly, what line of code they ran wrong. 1:27:44 And that works. And Bitcoin can give the money to the person who ran it correctly or just whichever one ran it incorrectly. 1:27:51 It'll take their money and give it to the other person. 1:27:53 So this incentivizes both parties to play honestly or to, I say play, but to write good code. 1:27:59 Don't don't run bad stuff through the program or you'll lose your money. 1:28:05 You almost want to have a software-as-a-service platform handle all this stuff for you. 1:28:11 Maybe. I'm hoping that you can easily run it on your own device. 1:28:16 That would be cool. 1:28:18 But maybe if it's a really complicated program and you don't have a good device, you're only on your mobile phone, 1:28:25 maybe paying someone to run the program for you would be great. 1:28:30 But we'll see. I'm just trying to make the software so that people can do what they want. 1:28:36 Yeah, that's great. Thank you for the explanation. 1:28:39 Actually, everything is connected to the address that you interact with. 1:28:49 Yeah, and this is one of the things that makes it different from like BIP300. 1:28:55 Where BIP300 makes it so that all the nodes on the network validate that miners are processing withdrawals from a sidechain 1:29:08 in the way that BIP300 says they should. 1:29:11 And if miners don't do that, then they get wrecked. 1:29:16 Their blocks are invalid. 1:29:18 Whereas with BitVM, it's a non-consensus change. 1:29:23 No one's paying attention to what BitVM does except for people who are using it. 1:29:28 You and your counterparty make a BitVM address together. 1:29:31 No one else knows that anything even happened. 1:29:33 They just see some money entering a regular Bitcoin address. 1:29:37 But behind the scenes, you and your counterparty know what program you put into that address. 1:29:42 And then you run the code off-chain and only go on-chain if there's a dispute. 1:29:47 And then you only show, ideally, one line of code where your opponent ran it incorrectly. 1:29:55 Yeah, actually, if it's a dispute, you put that function that the blockchain should have in reality for everything. 1:30:11 Because for me, the blockchain is the permanent law in this space. 1:30:16 And you actually prove that if something happens or it's a dispute, you kind of solve the dispute through running with the blockchain or something that is going there. 1:30:34 So you resolve the dispute. 1:30:36 But I think that because like for Drivechains, I think that both can exist because I see a different kind of use case for the BitVM and different for drivechains. 1:30:55 Because for me, Drivechains is for me, you know. 1:31:01 It doesn't mean that everybody needs to agree, but I see more as something bigger and can create or kickstart some kind of different way of different decentralized economy or something like that. 1:31:22 But the BitVM can be also useful with some kind of programs and, you know, who knows in the future. 1:31:35 But it's good. 1:31:37 I've talked a lot about games, and that's one of the things I'm really interested in doing with it is running games on Bitcoin or technically off Bitcoin. 1:31:46 I just think it'd be hilarious to have a Doom deathmatch where the winner gets some Bitcoin. 1:31:53 That'd be awesome. 1:31:54 And I think a lot of people would have a lot of fun doing that. 1:31:57 However, a game is just a program and BitVM is just a computer. 1:32:02 So in theory, you can write any program for it. 1:32:05 And so there are Robins more interested in writing a light client for a sidechain and then validating what happens on the sidechain on Bitcoin. 1:32:16 And then you can use that to do stuff like manage withdrawals and deposits for that sidechain where Bitcoin understands what's happening and can actually say, like, yeah, you're supposed to be able to withdraw your money or whatever. 1:32:30 So that's, you know, you can you can use this for sidechains. 1:32:33 But I think he and I would both say that they wouldn't be as good as it would be if we if we had BIP300. 1:32:41 There'd be a lot safer and a lot less data intensive and complicated for people to actually use. 1:32:50 Yeah, for sure. 1:32:51 BIP300 would be a big improvement. 1:32:53 But something's better than nothing, right? 1:32:56 If we don't have BIP300, but we do have BitVM, let's do what we can with that. 1:33:00 And then maybe we can fix it later and use BIP300 in the future to make better versions of things that we did with BitVM. 1:33:12 So that'd be my hope. 1:33:13 Yeah, absolutely. 1:33:15 I mean, it's like everything I hear you said, try to do something more with Bitcoin, which, you know, I agree and I support. 1:33:26 And I'm with my team, we are doing something on Bitcoin, which I can't I can't talk anything about that yet. 1:33:39 But we are trying to do something. 1:33:44 Thank you for trying to do something. 1:33:46 Oh, yeah. 1:33:47 I mean, you know, like I always say, Bitcoin is kind of like an open book. 1:33:58 Everything is possible. 1:33:59 Just you need to be kind of, you know, to find a way and develop something that is different. 1:34:06 And I mean, useful, positive and something that will improve Bitcoin as a whole. 1:34:23 All right, well, I'm going to head out. 1:34:25 So thank you all for the time we've had together. 1:34:28 And if you all want to keep talking, that's great. 1:34:32 But I'm out. 1:34:33 See you later. 1:34:34 It was super good talking to you. 1:34:36 You too.