Benchmark

non-incremental/QF_ANIA/20211213-GrandProduct-Ozdemir/unsound/same/10.smt2

# The special soundness of PLONK's grand product argument

Let F be a prime-order field and n a natural less than F's size. Let n = {1,
2, .., n} be a subset of F. The PLONK[1] grand product argument relies on the
fact that given a permutation pi: [n] -> [n] and functions A, B: [n] -> [n],

    prod_i (A(i) + beta * i + gamma) = prod_i (B(i) + beta * pi(i) + gamma)

holds for random beta, gamma in F with good probability only when A composed
with pi is B.

Does this implication hold in a deterministic setting, where the above is
checked for distinct---but non-random---beta and gamma?

If it is checked for n+1 distinct values of beta, and for each value of beta,
n+1 distinct values of gamma, then yes. One can prove this.

If it is checked for 2 distinct values of beta, and for each value of beta, n+1
distinct values of gamma, then no.

This series of benchmarks checks the implication holds
* for varying n
* for a fixed permutation pi = (2 3 ... n 1)
* for all A and B
  * that must be equal ("same") or may differ ("diff")
* for all distinct 2 ("unsound") or n+1 ("sound") beta values

rather than instantiating gamma explicitly, we just check that the multisets

    {{A[i] + beta * i}}_i  ==  {{B[i] + beta * pi(i)}}_i

are equal.

[1]: https://eprint.iacr.org/2019/953
Benchmark
Size8243
Compressed Size2293
License Creative Commons Attribution 4.0 International (CC-BY-4.0)
Categorycrafted
First Occurrence2022-08-10
Generated ByAlex Ozdemir
Generated On2021-12-13 00:00:00
GeneratorZ3Py API
Dolmen OK1
strict Dolmen OK1
check-sat calls1
Query 1
Status sat
Inferred Status sat
Size 8235
Compressed Size2339
Max. Term Depth55
Asserts 54
Declared Functions0
Declared Constants23
Declared Sorts 0
Defined Functions0
Defined Recursive Functions 0
Defined Sorts0
Constants0
Declared Datatypes0

Symbols

true1 not1 and2 =22
distinct1 let101 +80 *20
<=20 >=20 select40 store40

Evaluations

Evaluation Rating Solver Variant Result Wallclock CPU Time
SMT-COMP 2022 0.25 (3/4) CVC4 CVC4-sq-final_default sat ✅ 746.36900 746.26600
cvc5 cvc5-default-2022-07-02-b15e116-wrapped_sq unknown ❌ 1200.01000 1199.72000
MathSAT MathSAT-5.6.8_default sat ✅ 23.07010 23.06840
Z3 z3-4.8.17_default sat ✅ 74.55120 74.55030
SMT-COMP 2023 0.50 (2/4) CVC4 CVC4-sq-final_default sat ✅ 1100.35000 1100.29000
cvc5 cvc5-default-2023-05-16-ea045f305_sq unknown ❌ 1200.11000 1200.04000
SMTInterpol smtinterpol-2.5-1272-g2d6d356c_default sat ✅ 94.20690 111.71900
Yices2 Yices 2 for SMTCOMP 2023_default unknown ❌ 1200.02000 1199.38000
SMT-COMP 2024 0.33 (2/3) cvc5 cvc5 unknown ❌ 1201.71753 1201.07713
SMTInterpol SMTInterpol sat ✅ 7.46263 19.38124
Yices2 Yices2 sat ✅ 17.23616 17.13576
SMT-COMP 2025 0.33 (2/3) cvc5 cvc5 unknown ❌ 1201.77075 1200.93412
SMTInterpol SMTInterpol sat ✅ 5.46709 15.90571
Yices2 Yices2 sat ✅ 14.24392 14.10773