powdr-labs / powdr

A modular stack for zkVMs, with a focus on productivity, security and performance.
Apache License 2.0
416 stars 82 forks source link

Copy constraints: Connect PIL with witgen #1333

Open georgwiese opened 7 months ago

georgwiese commented 7 months ago

In #1276, we implemented witness generation for machines with copy constraints. However, the actual copy constraints are not yet passed from the PIL code.

chriseth commented 7 months ago

There is already a test that uses copy constraints (but the witnesses do not need to be generated for that test).

We should decide if we want the RHS in the connect statement to be row-column pairs or certain multiples of roots of unity.

If we use row-column, then the translation to roots of unity must be done in the export to estark part.

Both for witgen and the pil code, it is probably easier to use row-column pairs.

georgwiese commented 7 months ago

I'll vote for row-column pairs; I think the fixed columns of the connect statement leak the implementation of the copy constraints.

chriseth commented 7 months ago

One we have this, we should re-activate the pipeline test secondary_machine_plonk