--- Log opened Sat Apr 02 00:00:44 2022 00:41 -!- shesek_ [~shesek@user/shesek] has quit [Remote host closed the connection] 00:41 -!- shesek_ [~shesek@user/shesek] has joined ##miniscript 01:10 -!- shesek_ [~shesek@user/shesek] has quit [Remote host closed the connection] 01:10 -!- shesek_ [~shesek@user/shesek] has joined ##miniscript 02:12 -!- shesek_ [~shesek@user/shesek] has quit [Remote host closed the connection] 02:12 -!- shesek_ [~shesek@user/shesek] has joined ##miniscript 03:04 -!- shesek__ [~shesek@user/shesek] has joined ##miniscript 03:06 -!- shesek_ [~shesek@user/shesek] has quit [Remote host closed the connection] 03:36 -!- shesek__ [~shesek@user/shesek] has quit [Remote host closed the connection] 03:36 -!- shesek__ [~shesek@user/shesek] has joined ##miniscript 04:19 -!- shesek__ [~shesek@user/shesek] has quit [Remote host closed the connection] 04:19 -!- shesek__ [~shesek@user/shesek] has joined ##miniscript 05:16 -!- shesek__ [~shesek@user/shesek] has quit [Remote host closed the connection] 05:16 -!- shesek__ [~shesek@user/shesek] has joined ##miniscript 05:36 < darosior> sanket1729: but without a signature older(10) is malleable 05:38 < darosior> sipa: do you think the bug i mentioned above (about https://github.com/sipa/miniscript/blob/a2b7b35d765c11aa95d880fdcb3813f3b801d7fd/bitcoin/script/miniscript.cpp#L192) is wrong? 05:43 < darosior> sanket1729: i don't think it can? Take the first instance i reported above: the 'e' property for and_b(X, Y). The website says it's just granted, the Rust implem does that, and the cpp implem condition it on both X and Y being 'e'. I think only the cpp implem is right here, no matter whether we assume non-malleability of X and Y as a requirement. 05:43 < darosior> If X and Y dissatisfactions are not unique, or_b(X, Y) will not magically make it so. 05:44 < darosior> The same goes for all other instances, if i didn't make a mistake yesterday 05:46 <@sipa> @darosior Are you talking about.or_b or and_b? 05:47 < darosior> Sorry, or_b() 05:47 <@sipa> Ok, so or_b has a requirement for non-malleability that both its arguments are e. 05:48 < darosior> 🤦 05:48 < darosior> Thanks 05:48 <@sipa> so saying "e" or "e=ex and ey" are equivalent. 05:48 < darosior> Yeah 05:48 <@sipa> They're not exactly the same, these expressions will yield different values for the e property for certain miniscripts. 05:49 <@sipa> But they'll only differ for things that are never going to be non-malleable. 05:50 < darosior> Thanks, i just had completely overlooked the requirements table. All my comments above are covered there. 05:53 < darosior> sipa the only thing left from yesterday not related to the requirements for non-malleability is: 05:53 < darosior> > It also seems that https://github.com/sipa/miniscript/blob/a2b7b35d765c11aa95d880fdcb3813f3b801d7fd/bitcoin/script/miniscript.cpp#L192 is not implementing 'e=e_x*f_y+f_x*e_y' as the comments states, but 'e=(e_x+e_y)*(f_x+f_y)'. That sounds wrong as for instance if X is 'ef', or_i(X, Y) shouldn't necessarily be 'e'. 05:59 <@sipa> e and f conflict with each other 05:59 <@sipa> so you can't have them both simultaneously 06:00 < darosior> Oh, ok. Thanks 06:00 <@sipa> f requires all satisfactions to have a sig 06:00 <@sipa> *dissatisfactions 06:00 <@sipa> e required at least one dissatisfaction without a sig 06:04 <@sipa> I think it's just that (e_x+e_y)*(f_x+f_y) was easier to implement. 06:11 -!- shesek__ [~shesek@user/shesek] has quit [Remote host closed the connection] 06:12 -!- shesek__ [~shesek@user/shesek] has joined ##miniscript 06:44 -!- shesek__ [~shesek@user/shesek] has quit [Remote host closed the connection] 06:44 -!- shesek__ [~shesek@user/shesek] has joined ##miniscript 07:19 -!- shesek__ [~shesek@user/shesek] has quit [Remote host closed the connection] 07:20 -!- shesek__ [~shesek@user/shesek] has joined ##miniscript 09:29 -!- shesek__ [~shesek@user/shesek] has quit [Remote host closed the connection] 09:30 -!- shesek__ [~shesek@user/shesek] has joined ##miniscript 10:06 -!- shesek__ [~shesek@user/shesek] has quit [Remote host closed the connection] 10:07 -!- shesek__ [~shesek@user/shesek] has joined ##miniscript 11:25 -!- shesek__ [~shesek@user/shesek] has quit [Remote host closed the connection] 11:26 -!- shesek__ [~shesek@user/shesek] has joined ##miniscript 11:43 -!- shesek__ [~shesek@user/shesek] has quit [Remote host closed the connection] 11:44 -!- shesek__ [~shesek@user/shesek] has joined ##miniscript 12:02 -!- shesek__ [~shesek@user/shesek] has quit [Remote host closed the connection] 12:02 -!- shesek__ [~shesek@user/shesek] has joined ##miniscript 12:52 -!- shesek__ [~shesek@user/shesek] has quit [Remote host closed the connection] 12:52 -!- shesek__ [~shesek@user/shesek] has joined ##miniscript 13:29 -!- shesek__ [~shesek@user/shesek] has quit [Remote host closed the connection] 13:29 -!- shesek__ [~shesek@user/shesek] has joined ##miniscript 13:41 -!- shesek__ [~shesek@user/shesek] has quit [Remote host closed the connection] 13:41 -!- shesek__ [~shesek@user/shesek] has joined ##miniscript 15:40 -!- shesek__ [~shesek@user/shesek] has quit [Remote host closed the connection] 22:05 -!- proofofkeags [~proofofke@97-118-153-128.hlrn.qwest.net] has quit [Ping timeout: 260 seconds] --- Log closed Sun Apr 03 00:00:44 2022