Return-Path: Received: from smtp3.osuosl.org (smtp3.osuosl.org [IPv6:2605:bc80:3010::136]) by lists.linuxfoundation.org (Postfix) with ESMTP id 42691C0032 for ; Mon, 7 Aug 2023 08:32:01 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by smtp3.osuosl.org (Postfix) with ESMTP id 16B626100C for ; Mon, 7 Aug 2023 08:32:01 +0000 (UTC) DKIM-Filter: OpenDKIM Filter v2.11.0 smtp3.osuosl.org 16B626100C Authentication-Results: smtp3.osuosl.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.a=rsa-sha256 header.s=20221208 header.b=IkQWI7un X-Virus-Scanned: amavisd-new at osuosl.org X-Spam-Flag: NO X-Spam-Score: -2.098 X-Spam-Level: X-Spam-Status: No, score=-2.098 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001] autolearn=ham autolearn_force=no Received: from smtp3.osuosl.org ([127.0.0.1]) by localhost (smtp3.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id gkx-G0uRwkt6 for ; Mon, 7 Aug 2023 08:31:55 +0000 (UTC) Received: from mail-il1-x132.google.com (mail-il1-x132.google.com [IPv6:2607:f8b0:4864:20::132]) by smtp3.osuosl.org (Postfix) with ESMTPS id D04DA60F15 for ; Mon, 7 Aug 2023 08:31:52 +0000 (UTC) DKIM-Filter: OpenDKIM Filter v2.11.0 smtp3.osuosl.org D04DA60F15 Received: by mail-il1-x132.google.com with SMTP id e9e14a558f8ab-348cd23610cso15757775ab.1 for ; Mon, 07 Aug 2023 01:31:52 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1691397112; x=1692001912; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=7Qk4qqEwkSqUoIEH2U+cL+2i4BBwa/STFCDb0okf1Xs=; b=IkQWI7unloE1pgDFxrtc7kbiZi/nquPrfQ6u0QGFwCYsgv1486F9rxJ8DcnhxexNmm qWOHVSD6ZF8WYSxMuB04W94Se7UCnOnsNPre7jbYqplnjm60Cit+rXvO5yI+J/b8q0ES O3xC4jUe5WHlXbBWYET8vkwY1E8DzaiI+8Ggng0VZSI1p9/QZ+ZomZCeZK5SjNEV+V08 JHovuTDLFUGQ4AfNlCYYKV8nxW1u/stWtflgBmJEUz0CdJa/1Lk6LVdh2tgU8AGEBSEl GJqvuFci6gH8rf4pLYj7PUmTZALYMwesQJ1kxmJcSgGcS9BTHmoIdkloOsgBsnrh7xn/ uVtQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1691397112; x=1692001912; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=7Qk4qqEwkSqUoIEH2U+cL+2i4BBwa/STFCDb0okf1Xs=; b=Ow68DeiOYRNTE5GE7wqBVEPnsIn2WlmUe6UCEjUasua/+gdD71xyeJFe7uIgtC5Z1r u5TNp++TbCeI61Xnx6WhCN6tDzyCQKzNumHY7FXKt07p1jBYHAwo/Q/6L4g9RLUQc+tE av9QYhsaTb9PeN1CaTAUIAhR1j4JRDB3UqaBSWcl/wh5a9hRCCwQ9vkWahCCroQstpCI sfs2+7XueAd0KGyrCE27PVLmu4Rx1quIbqsBMb10GCfK4be+XDl92GFcN8WZBlGJa061 FBrcQ1H5D8MIzIFphTT3jZAVOVlXY8tqmp0UZDLZyvzWtftbeaZaXnz+fslB3IS8CYJB xfIQ== X-Gm-Message-State: AOJu0YwXcE2OmHN0uCJNHdH8h4Lsb/Rbgewe2Pzw7wSOA0DDB0MmOE3j 935xIhVDV8Jh81NXVOPGuM20TNVHRQ4kLDQU7E6zyELK7AFeMA== X-Google-Smtp-Source: AGHT+IHHGXwGqBNnaJtIqC6z/8X7ei7McFWjwshD24brplgeNOYzOwnfHVh3F20QLU52tlo1OqF4vvWzga79EnrD36s= X-Received: by 2002:a05:6e02:2191:b0:346:fe2:125a with SMTP id j17-20020a056e02219100b003460fe2125amr12190072ila.26.1691397111714; Mon, 07 Aug 2023 01:31:51 -0700 (PDT) MIME-Version: 1.0 References: <99A6BB96-50B4-4894-9EFD-E36047D890E3@dtrt.org> In-Reply-To: <99A6BB96-50B4-4894-9EFD-E36047D890E3@dtrt.org> From: Salvatore Ingala Date: Mon, 7 Aug 2023 10:31:40 +0200 Message-ID: To: "David A. Harding" Content-Type: multipart/alternative; boundary="00000000000004986a0602511419" X-Mailman-Approved-At: Tue, 08 Aug 2023 14:06:48 +0000 Cc: Bitcoin Protocol Discussion Subject: Re: [bitcoin-dev] Concrete MATT opcodes X-BeenThere: bitcoin-dev@lists.linuxfoundation.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: Bitcoin Protocol Discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 07 Aug 2023 08:32:01 -0000 --00000000000004986a0602511419 Content-Type: text/plain; charset="UTF-8" Hi Dave, I apologize for the confusion and the inconsistent use of plurals. The reason I called it a "complete proposal" is that the opcode is now functionally complete, unlike the previous attempt where the approach for the output amount introspection was not yet specified. The semantics are informally defined in the previous e-mail, and implemented in the code [1], which is the only formal specification at this time. I believe the code is now fairly stable and ready to experiment with. My own and (hopefully) others' experimentation will help in writing a more informed BIP proposal in the next few months. About the plurals: OP_CHECKCONTRACTVERIFY is indeed now a single opcode that is useful on its own, but I will also be maintaining a separate branch [2] that contains both OP_CHECKCONTRACTVERIFY and OP_CAT, which enables the full generality of the MATT proposal. Best, Salvatore [1] - https://github.com/bitcoin-inquisition/bitcoin/compare/24.0...Merkleize:bitcoin:checkcontractverify [2] - https://github.com/Merkleize/bitcoin/tree/matt --00000000000004986a0602511419 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
Hi Dave,

I apologize for the= confusion and the inconsistent use of plurals.
The reason I called it a= "complete proposal" is that the opcode is
now functionally co= mplete, unlike the previous attempt where the
approach for the output am= ount introspection was not yet specified.

The semantics are informal= ly defined in the previous e-mail, and
implemented in the code [1], whic= h is the only formal specification
at this time. I believe the code is= =C2=A0now fairly stable and ready to
experiment with.
My own and (hop= efully) others' experimentation will help in writing
a more informed= BIP proposal in the next few months.

About the plurals: OP_CHECKCON= TRACTVERIFY is indeed now a single
opcode that is useful on its own, but= I will also be maintaining a
separate branch [2] that contains both OP_= CHECKCONTRACTVERIFY and
OP_CAT, which enables the full generality of the= MATT proposal.

Best,
Salvatore

[1] - https://github.com/bitcoin-inquisition/b= itcoin/compare/24.0...Merkleize:bitcoin:checkcontractverify
[2] - = https://github.com/Merkleize/bitcoin/tree/matt

--00000000000004986a0602511419--