Return-Path: Received: from smtp1.linuxfoundation.org (smtp1.linux-foundation.org [172.17.192.35]) by mail.linuxfoundation.org (Postfix) with ESMTPS id 4766E8DC for ; Fri, 3 Nov 2017 12:59:50 +0000 (UTC) X-Greylist: whitelisted by SQLgrey-1.7.6 Received: from mail-wr0-f176.google.com (mail-wr0-f176.google.com [209.85.128.176]) by smtp1.linuxfoundation.org (Postfix) with ESMTPS id 589004FC for ; Fri, 3 Nov 2017 12:59:49 +0000 (UTC) Received: by mail-wr0-f176.google.com with SMTP id y39so2445654wrd.4 for ; Fri, 03 Nov 2017 05:59:49 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc; bh=gbuHXyyfeRFJqTz5f94UX2lOR63Vov77k5zWA2Iuqnc=; b=KBwV9gBEAnck0kamOkni8M+lKkaU8tPREm1kDovCjo8D8OsTP+/xQDw+dyLPEXltt/ Bi4B3BlLC58n3QyQaMIEtW3LVZGaLEjhgLMqmV6NXtvaaahXPJkIs4UQnz8RX2U4DzQ4 Hj12Cju9DkbF8c1v35BGL2FjLgiyoCo0+aNQnWzQXywiDUbu6U1t9Ps99T2qLOeaaAAM U5ow3tPw0TYh+aMfXkUG8aXdSynmkRtYctrxSOj5ZSmQLxgTMEFdk2LN5O1eVFydRBkf iUFI0dbWVOJU6pVXBqb4tSD4H4ssv3OJU1CvMFCoT4Q5yP/qcoGyeZkERBQTnZZLdE7B /Fzw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:cc; bh=gbuHXyyfeRFJqTz5f94UX2lOR63Vov77k5zWA2Iuqnc=; b=bmR2eF8VsbmBQHfhwWriC5f57kTNIzEa4PGRMglPiN05l0yCr2eqay1dLNLHXMmBAW jbhjZxDIHZhPFmUFkFOB7knfYc85H1T0QM61P285fzDzspEiYlWsUKVYtpG+6N+7OeJW Yt4uiARPT+BVLeJDXBdjlSo8J8my02TEJiy/fJ6u8qDNICk2+BAlD97epx6AzUZHFS0s GsKNus+fzLGoWbCmoTWIv+j0RnysPiVM/kv7ra7ZlRWQF+NsVAYo2r0ErJkhmdlhtaNA wPwxNpknbSqhXKhrZSOJH1Vpcjx28J2iEiUpIV20psVQNEap68cz18Q/a3nU03gsjXyr b8AA== X-Gm-Message-State: AMCzsaUYXTBHvcvP6ZijLzyg7J0/Urgtgumt+t2bTb8OImARtylwkcnH A44F8a7XcKSiQOJL2thP6ApEeVa+/sK9DbsRn9s= X-Google-Smtp-Source: ABhQp+QsX8yAJ/EBh88sARlN1k6MYyy1+laCcFZAFovnDGbbZCYmfK9TDIthvCY5fRPWxZzcmozh0qYwRVIA5XhISOk= X-Received: by 10.223.176.183 with SMTP id i52mr6273116wra.257.1509713987875; Fri, 03 Nov 2017 05:59:47 -0700 (PDT) MIME-Version: 1.0 Received: by 10.223.133.5 with HTTP; Fri, 3 Nov 2017 05:59:46 -0700 (PDT) In-Reply-To: References: <052D6E20-7194-4645-B628-1B7B7FECF330@gmail.com> From: =?UTF-8?Q?Hampus_Sj=C3=B6berg?= Date: Fri, 3 Nov 2017 13:59:46 +0100 Message-ID: To: "Russell O'Connor" , Bitcoin Protocol Discussion Content-Type: multipart/alternative; boundary="001a11413b6af5b9c2055d13adae" X-Spam-Status: No, score=0.4 required=5.0 tests=DKIM_SIGNED,DKIM_VALID, DKIM_VALID_AU,FREEMAIL_FROM,HTML_MESSAGE,RCVD_IN_DNSWL_NONE, RCVD_IN_SORBS_SPAM autolearn=disabled version=3.3.1 X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on smtp1.linux-foundation.org Cc: =?UTF-8?Q?JOSE_FEMENIAS_CA=C3=91UELO?= Subject: Re: [bitcoin-dev] Simplicity proposal - Jets? X-BeenThere: bitcoin-dev@lists.linuxfoundation.org X-Mailman-Version: 2.1.12 Precedence: list List-Id: Bitcoin Protocol Discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 03 Nov 2017 12:59:50 -0000 --001a11413b6af5b9c2055d13adae Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Thank you for your answer, Russel. When a code path takes advantage of a jet, does the Simplicity code still need to be publicly available/visible in the blockchain? I imagine that for big algorithms (say for example EDCA verification/SHA256 hashing etc), it would take up a lot of space in the blockchain. Is there any way to mitigate this? I guess in a softfork for a jet, the Simplicity code for a jet could be defined as "consensus", instead of needed to be provided within every script output. When the Simplicity interpretor encounters an expression that has a jet, it would run the C/Assembly code instead of interpreting the Simplicity code. By formal verification we would be sure they match. Greetings Hampus 2017-11-03 2:10 GMT+01:00 Russell O'Connor via bitcoin-dev < bitcoin-dev@lists.linuxfoundation.org>: > Hi Jose, > > Jets are briefly discussed in section 3.4 of https://blockstream.com/ > simplicity.pdf > > The idea is that we can recognize some set of popular Simplicity > expressions, and when the Simplicity interpreter encounters one of these > expressions it can skip over the Simplicity interpreter and instead > directly evaluate the function using specialized C or assembly code. > > For example, when the Simplicity interpreter encounters the Simplicity > expression for ECDSA verification, it might directly call into libsecp > rather than continuing the ECDSA verification using interpreted Simplicit= y. > > HTH. > > > On Nov 2, 2017 18:35, "JOSE FEMENIAS CA=C3=91UELO via bitcoin-dev" < > bitcoin-dev@lists.linuxfoundation.org> wrote: > > Hi, > > I am trying to follow this Simplicity proposal and I am seeing all over > references to =E2=80=98jets=E2=80=99, but I haven=E2=80=99t been able to = find any good reference to > it. > Can anyone give me a brief explanation and or a link pointing to this > feature? > Thanks > > On 31 Oct 2017, at 22:01, bitcoin-dev-request@lists.linuxfoundation.org > wrote: > > The plan is that discounted jets will be explicitly labeled as jets in th= e > commitment. If you can provide a Merkle path from the root to a node tha= t > is an explicit jet, but that jet isn't among the finite number of known > discounted jets, > > > > _______________________________________________ > bitcoin-dev mailing list > bitcoin-dev@lists.linuxfoundation.org > https://lists.linuxfoundation.org/mailman/listinfo/bitcoin-dev > > > > _______________________________________________ > bitcoin-dev mailing list > bitcoin-dev@lists.linuxfoundation.org > https://lists.linuxfoundation.org/mailman/listinfo/bitcoin-dev > > --001a11413b6af5b9c2055d13adae Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
Thank you for your answer, Russel.

When a code path takes advantage of a jet, does the Simpl= icity code still need to be publicly available/visible in the blockchain? I= imagine that for big algorithms (say for example EDCA verification/SHA256 = hashing etc), it would take up a lot of space in the blockchain.
I= s there any way to mitigate this?

I guess in a sof= tfork for a jet, the Simplicity code for a jet could be defined as "co= nsensus", instead of needed to be provided within every script output.=
When the Simplicity interpretor encounters an expression that ha= s a jet, it would run the C/Assembly code instead of interpreting the Simpl= icity code. By formal verification we would be sure they match.

Greetings
Hampus
=
2017-11-03 2:10 GMT+01:00 Russell O'Conn= or via bitcoin-dev <bitcoin-dev@lists.linuxfoundation.= org>:
Hi Jose,

Jets are briefly di= scussed in section 3.4 of https://blockstream.com/simplicity.pdf

The idea is that we can recogni= ze some set of popular Simplicity expressions, and when the Simplicity inte= rpreter encounters one of these expressions it can skip over the Simplicity= interpreter and instead directly evaluate the function using specialized C= or assembly code.

For e= xample, when the Simplicity interpreter encounters the Simplicity expressio= n for ECDSA verification, it might directly call into libsecp rather than c= ontinuing the ECDSA verification using interpreted Simplicity.

HTH.


On Nov 2, 2017 1= 8:35, "JOSE FEMENIAS CA=C3=91UELO via bitcoin-dev" <bitcoin-de= v@lists.linuxfoundation.org> wrote:
Hi,

I am trying t= o follow this Simplicity proposal and I am seeing all over references to = =E2=80=98jets=E2=80=99, but I haven=E2=80=99t been able to find any good re= ference to it.
Can anyone give me a brief explanation and or a li= nk pointing to this feature?
Thanks

On 31 Oct 2017, at 22:01, bitcoin-d= ev-request@lists.linuxfoundation.org wrote:

The plan is that discounted jets will be e= xplicitly labeled as jets in the
= commitment.=C2=A0 If you can provide a Merkle path from the root to a node = that
is an explicit jet, but that= jet isn't among the finite number of known
discounted jets,


_______________________________________________ bitcoin-dev mailing list
= bitcoin-dev@lists.linuxfoundation.org
https://lists.linuxfoundation.org= /mailman/listinfo/bitcoin-dev



_______________________________________________
bitcoin-dev mailing list
bitcoin-dev@lists.= linuxfoundation.org
https://lists.linuxfoundation.org= /mailman/listinfo/bitcoin-dev


--001a11413b6af5b9c2055d13adae--