Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Small fixes #18

Open
wants to merge 4 commits into
base: master
Choose a base branch
from
Open

Small fixes #18

wants to merge 4 commits into from

Conversation

uncomputable
Copy link

These are small errors / oddities that I noticed while going through the document. Great work, by the way.

@@ -1566,9 +1566,9 @@

But for the case $600 = 10 \times 10 \times 6$ - we first ``chunk'' in 10s, then
again in 10s, leaving only 6 components for the final step. That
requires revealing $2\times 10-1 = 19$ commitments at each of the two reducing
requires revealing $2\times (10 - 2) = 18$ commitments at each of the two reducing
Copy link
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I guess we can clarify this and the next bit of arithmetic via #19 but also 2 x (10-2) is not 18 :)

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

My true (in)ability is exposed!

@@ -1863,7 +1863,7 @@
receive back a challenge $x$, both sides recalculate $C'$, continue until a
final step (each step a halving and a new $L, R$), and in the last step reveal
scalars for the now single values $a, b$, and the Verifier makes the final
check that $C^{*} = a^{*}b^{*}G + a^{*}G_1 + b^{*}H_1$, where * indicates the $\log_2n$-th transformed values.
check that $C^{*} = (a^{*} \cdot b^{*})G + a^{*}G_1 + b^{*}H_1$, where * indicates the $\log_2n$-th transformed values.
Copy link
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I believe these are now single values not vectors (as per previous line), so we don't want a dot product here. Admittedly it does look really crappy using a * superscript here, though.

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

You're right. When I was first reading this, I thought the protocol could end on vectors of length 2, for which you would need the dot product. I think the number of messages stays the same, but I think I invented that out of thin air.

@@ -2143,7 +2143,7 @@
can see that this requires:
\begin{align*}
& \textbf{H}' = \textbf{y}^{-n}\textbf{H} \\
& P = A + xS -zG + \left(z\textbf{y}^n + z^2\textbf{2}^n\right)\textbf{H}' \\
& P = A + xS -z\textbf{G} + \left(z\textbf{y}^n + z^2\textbf{2}^n\right)\textbf{H}' \\
Copy link
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

z is committed to via a single generator G. Whereas the vector (bolded)G is used as a shorthand. See eqns (2), (3), (4) earlier on.

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think you might be confusing the inner product proof (which has zG) with the range proof (which has z\vec{G}). We need z\vec{G} to extract a_L and a_R (see "Then consider coefficients of G:").

@AdamISZ
Copy link
Owner

AdamISZ commented Feb 16, 2023

Thanks for this review work :)

It's been many years so forgive me if I struggle sometimes to answer/address points here and there :)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants