Files
linea-monorepo/prover/example/test_cases/permutation_test.go
AlexandreBelling e63c730d6d Prover: switch the go import path to linea-monorepo (#20)
* switch the go import path to linea-monorepo
* address every occurence to zkevm-monorepo
2024-09-13 15:10:04 +02:00

31 lines
914 B
Go

//go:build !fuzzlight
package test_cases_test
import (
"testing"
"github.com/consensys/linea-monorepo/prover/maths/common/smartvectors"
"github.com/consensys/linea-monorepo/prover/protocol/ifaces"
"github.com/consensys/linea-monorepo/prover/protocol/wizard"
)
func definePermSingleCol(build *wizard.Builder) {
/*
just a basic permutation protocol
*/
n := 1 << 4
P1 := build.RegisterCommit(P1, n) // overshadowing
P2 := build.RegisterCommit(P2, n) // overshadowing
build.Permutation(PERMUTATION1, []ifaces.Column{P1}, []ifaces.Column{P2})
}
func provePermSingleCol(run *wizard.ProverRuntime) {
run.AssignColumn(P1, smartvectors.ForTest(1, 1, 2, 3, 4, 5, 8, 0, 1, 1, 2, 3, 4, 5, 8, 0))
run.AssignColumn(P2, smartvectors.ForTest(8, 1, 2, 1, 3, 0, 4, 5, 1, 1, 2, 3, 4, 5, 8, 0))
}
func TestPermSingleCol(t *testing.T) {
checkSolved(t, definePermSingleCol, provePermSingleCol, ALL_BUT_ILC, true)
}