diff --git a/book/src/SUMMARY.md b/book/src/SUMMARY.md index e52c1d0..5f11e6f 100644 --- a/book/src/SUMMARY.md +++ b/book/src/SUMMARY.md @@ -2,7 +2,7 @@ [halo2](README.md) - [Concepts](concepts.md) - - [Background](concepts/background.md) + - [Proof systems](concepts/proofs.md) - [UltraPLONK Arithmetization](concepts/arithmetization.md) - [Cores](concepts/cores.md) - [Chips](concepts/chips.md) diff --git a/book/src/concepts/background.md b/book/src/concepts/proofs.md similarity index 89% rename from book/src/concepts/background.md rename to book/src/concepts/proofs.md index 296aedc..de7ec1f 100644 --- a/book/src/concepts/background.md +++ b/book/src/concepts/proofs.md @@ -1,4 +1,4 @@ -# Background +# Proof systems The aim of any ***proof system*** is to be able to prove ***instances*** of ***statements***. @@ -10,6 +10,10 @@ Normally the statement will also have ***private inputs***. The private inputs a intermediate values that make an instance of a statement hold, are collectively called a ***witness*** for that instance. +> The intermediate values depend on how we express the statement. We assume that we can +> compute them efficiently from the private and public inputs (if that were not the case +> then we would consider them part of the private inputs). + A ***Non-interactive Argument of Knowledge*** allows a ***prover*** to create a ***proof*** for a given instance and witness. The proof is data that can be used to convince a ***verifier*** that the creator of the proof knew a witness for which the statement holds on