@nori-zk/proof-conversion
Version:
Verifying zkVM proofs inside o1js circuits, to generate Mina compatible proof
415 lines (414 loc) • 19.8 kB
TypeScript
import { FpC, FrC } from '../towers/index.js';
import { Field } from 'o1js';
declare const Sp1PlonkProof_base: (new (value: {
l_com_x: import("o1js").CanonicalForeignField;
l_com_y: import("o1js").CanonicalForeignField;
r_com_x: import("o1js").CanonicalForeignField;
r_com_y: import("o1js").CanonicalForeignField;
o_com_x: import("o1js").CanonicalForeignField;
o_com_y: import("o1js").CanonicalForeignField;
h0_x: import("o1js").CanonicalForeignField;
h0_y: import("o1js").CanonicalForeignField;
h1_x: import("o1js").CanonicalForeignField;
h1_y: import("o1js").CanonicalForeignField;
h2_x: import("o1js").CanonicalForeignField;
h2_y: import("o1js").CanonicalForeignField;
l_at_zeta: import("o1js").CanonicalForeignField;
r_at_zeta: import("o1js").CanonicalForeignField;
o_at_zeta: import("o1js").CanonicalForeignField;
s1_at_zeta: import("o1js").CanonicalForeignField;
s2_at_zeta: import("o1js").CanonicalForeignField;
grand_product_x: import("o1js").CanonicalForeignField;
grand_product_y: import("o1js").CanonicalForeignField;
grand_product_at_omega_zeta: import("o1js").CanonicalForeignField;
batch_opening_at_zeta_x: import("o1js").CanonicalForeignField;
batch_opening_at_zeta_y: import("o1js").CanonicalForeignField;
batch_opening_at_zeta_omega_x: import("o1js").CanonicalForeignField;
batch_opening_at_zeta_omega_y: import("o1js").CanonicalForeignField;
qcp_0_at_zeta: import("o1js").CanonicalForeignField;
qcp_0_wire_x: import("o1js").CanonicalForeignField;
qcp_0_wire_y: import("o1js").CanonicalForeignField;
}) => {
l_com_x: import("o1js").CanonicalForeignField;
l_com_y: import("o1js").CanonicalForeignField;
r_com_x: import("o1js").CanonicalForeignField;
r_com_y: import("o1js").CanonicalForeignField;
o_com_x: import("o1js").CanonicalForeignField;
o_com_y: import("o1js").CanonicalForeignField;
h0_x: import("o1js").CanonicalForeignField;
h0_y: import("o1js").CanonicalForeignField;
h1_x: import("o1js").CanonicalForeignField;
h1_y: import("o1js").CanonicalForeignField;
h2_x: import("o1js").CanonicalForeignField;
h2_y: import("o1js").CanonicalForeignField;
l_at_zeta: import("o1js").CanonicalForeignField;
r_at_zeta: import("o1js").CanonicalForeignField;
o_at_zeta: import("o1js").CanonicalForeignField;
s1_at_zeta: import("o1js").CanonicalForeignField;
s2_at_zeta: import("o1js").CanonicalForeignField;
grand_product_x: import("o1js").CanonicalForeignField;
grand_product_y: import("o1js").CanonicalForeignField;
grand_product_at_omega_zeta: import("o1js").CanonicalForeignField;
batch_opening_at_zeta_x: import("o1js").CanonicalForeignField;
batch_opening_at_zeta_y: import("o1js").CanonicalForeignField;
batch_opening_at_zeta_omega_x: import("o1js").CanonicalForeignField;
batch_opening_at_zeta_omega_y: import("o1js").CanonicalForeignField;
qcp_0_at_zeta: import("o1js").CanonicalForeignField;
qcp_0_wire_x: import("o1js").CanonicalForeignField;
qcp_0_wire_y: import("o1js").CanonicalForeignField;
}) & {
_isStruct: true;
} & Omit<import("node_modules/o1js/dist/node/lib/provable/types/provable-intf.js").Provable<{
l_com_x: import("o1js").CanonicalForeignField;
l_com_y: import("o1js").CanonicalForeignField;
r_com_x: import("o1js").CanonicalForeignField;
r_com_y: import("o1js").CanonicalForeignField;
o_com_x: import("o1js").CanonicalForeignField;
o_com_y: import("o1js").CanonicalForeignField;
h0_x: import("o1js").CanonicalForeignField;
h0_y: import("o1js").CanonicalForeignField;
h1_x: import("o1js").CanonicalForeignField;
h1_y: import("o1js").CanonicalForeignField;
h2_x: import("o1js").CanonicalForeignField;
h2_y: import("o1js").CanonicalForeignField;
l_at_zeta: import("o1js").CanonicalForeignField;
r_at_zeta: import("o1js").CanonicalForeignField;
o_at_zeta: import("o1js").CanonicalForeignField;
s1_at_zeta: import("o1js").CanonicalForeignField;
s2_at_zeta: import("o1js").CanonicalForeignField;
grand_product_x: import("o1js").CanonicalForeignField;
grand_product_y: import("o1js").CanonicalForeignField;
grand_product_at_omega_zeta: import("o1js").CanonicalForeignField;
batch_opening_at_zeta_x: import("o1js").CanonicalForeignField;
batch_opening_at_zeta_y: import("o1js").CanonicalForeignField;
batch_opening_at_zeta_omega_x: import("o1js").CanonicalForeignField;
batch_opening_at_zeta_omega_y: import("o1js").CanonicalForeignField;
qcp_0_at_zeta: import("o1js").CanonicalForeignField;
qcp_0_wire_x: import("o1js").CanonicalForeignField;
qcp_0_wire_y: import("o1js").CanonicalForeignField;
}, {
l_com_x: bigint;
l_com_y: bigint;
r_com_x: bigint;
r_com_y: bigint;
o_com_x: bigint;
o_com_y: bigint;
h0_x: bigint;
h0_y: bigint;
h1_x: bigint;
h1_y: bigint;
h2_x: bigint;
h2_y: bigint;
l_at_zeta: bigint;
r_at_zeta: bigint;
o_at_zeta: bigint;
s1_at_zeta: bigint;
s2_at_zeta: bigint;
grand_product_x: bigint;
grand_product_y: bigint;
grand_product_at_omega_zeta: bigint;
batch_opening_at_zeta_x: bigint;
batch_opening_at_zeta_y: bigint;
batch_opening_at_zeta_omega_x: bigint;
batch_opening_at_zeta_omega_y: bigint;
qcp_0_at_zeta: bigint;
qcp_0_wire_x: bigint;
qcp_0_wire_y: bigint;
}>, "fromFields"> & {
fromFields: (fields: import("node_modules/o1js/dist/node/lib/provable/field.js").Field[]) => {
l_com_x: import("o1js").CanonicalForeignField;
l_com_y: import("o1js").CanonicalForeignField;
r_com_x: import("o1js").CanonicalForeignField;
r_com_y: import("o1js").CanonicalForeignField;
o_com_x: import("o1js").CanonicalForeignField;
o_com_y: import("o1js").CanonicalForeignField;
h0_x: import("o1js").CanonicalForeignField;
h0_y: import("o1js").CanonicalForeignField;
h1_x: import("o1js").CanonicalForeignField;
h1_y: import("o1js").CanonicalForeignField;
h2_x: import("o1js").CanonicalForeignField;
h2_y: import("o1js").CanonicalForeignField;
l_at_zeta: import("o1js").CanonicalForeignField;
r_at_zeta: import("o1js").CanonicalForeignField;
o_at_zeta: import("o1js").CanonicalForeignField;
s1_at_zeta: import("o1js").CanonicalForeignField;
s2_at_zeta: import("o1js").CanonicalForeignField;
grand_product_x: import("o1js").CanonicalForeignField;
grand_product_y: import("o1js").CanonicalForeignField;
grand_product_at_omega_zeta: import("o1js").CanonicalForeignField;
batch_opening_at_zeta_x: import("o1js").CanonicalForeignField;
batch_opening_at_zeta_y: import("o1js").CanonicalForeignField;
batch_opening_at_zeta_omega_x: import("o1js").CanonicalForeignField;
batch_opening_at_zeta_omega_y: import("o1js").CanonicalForeignField;
qcp_0_at_zeta: import("o1js").CanonicalForeignField;
qcp_0_wire_x: import("o1js").CanonicalForeignField;
qcp_0_wire_y: import("o1js").CanonicalForeignField;
};
} & {
fromValue: (value: {
l_com_x: bigint | import("o1js").CanonicalForeignField;
l_com_y: bigint | import("o1js").CanonicalForeignField;
r_com_x: bigint | import("o1js").CanonicalForeignField;
r_com_y: bigint | import("o1js").CanonicalForeignField;
o_com_x: bigint | import("o1js").CanonicalForeignField;
o_com_y: bigint | import("o1js").CanonicalForeignField;
h0_x: bigint | import("o1js").CanonicalForeignField;
h0_y: bigint | import("o1js").CanonicalForeignField;
h1_x: bigint | import("o1js").CanonicalForeignField;
h1_y: bigint | import("o1js").CanonicalForeignField;
h2_x: bigint | import("o1js").CanonicalForeignField;
h2_y: bigint | import("o1js").CanonicalForeignField;
l_at_zeta: bigint | import("o1js").CanonicalForeignField;
r_at_zeta: bigint | import("o1js").CanonicalForeignField;
o_at_zeta: bigint | import("o1js").CanonicalForeignField;
s1_at_zeta: bigint | import("o1js").CanonicalForeignField;
s2_at_zeta: bigint | import("o1js").CanonicalForeignField;
grand_product_x: bigint | import("o1js").CanonicalForeignField;
grand_product_y: bigint | import("o1js").CanonicalForeignField;
grand_product_at_omega_zeta: bigint | import("o1js").CanonicalForeignField;
batch_opening_at_zeta_x: bigint | import("o1js").CanonicalForeignField;
batch_opening_at_zeta_y: bigint | import("o1js").CanonicalForeignField;
batch_opening_at_zeta_omega_x: bigint | import("o1js").CanonicalForeignField;
batch_opening_at_zeta_omega_y: bigint | import("o1js").CanonicalForeignField;
qcp_0_at_zeta: bigint | import("o1js").CanonicalForeignField;
qcp_0_wire_x: bigint | import("o1js").CanonicalForeignField;
qcp_0_wire_y: bigint | import("o1js").CanonicalForeignField;
}) => {
l_com_x: import("o1js").CanonicalForeignField;
l_com_y: import("o1js").CanonicalForeignField;
r_com_x: import("o1js").CanonicalForeignField;
r_com_y: import("o1js").CanonicalForeignField;
o_com_x: import("o1js").CanonicalForeignField;
o_com_y: import("o1js").CanonicalForeignField;
h0_x: import("o1js").CanonicalForeignField;
h0_y: import("o1js").CanonicalForeignField;
h1_x: import("o1js").CanonicalForeignField;
h1_y: import("o1js").CanonicalForeignField;
h2_x: import("o1js").CanonicalForeignField;
h2_y: import("o1js").CanonicalForeignField;
l_at_zeta: import("o1js").CanonicalForeignField;
r_at_zeta: import("o1js").CanonicalForeignField;
o_at_zeta: import("o1js").CanonicalForeignField;
s1_at_zeta: import("o1js").CanonicalForeignField;
s2_at_zeta: import("o1js").CanonicalForeignField;
grand_product_x: import("o1js").CanonicalForeignField;
grand_product_y: import("o1js").CanonicalForeignField;
grand_product_at_omega_zeta: import("o1js").CanonicalForeignField;
batch_opening_at_zeta_x: import("o1js").CanonicalForeignField;
batch_opening_at_zeta_y: import("o1js").CanonicalForeignField;
batch_opening_at_zeta_omega_x: import("o1js").CanonicalForeignField;
batch_opening_at_zeta_omega_y: import("o1js").CanonicalForeignField;
qcp_0_at_zeta: import("o1js").CanonicalForeignField;
qcp_0_wire_x: import("o1js").CanonicalForeignField;
qcp_0_wire_y: import("o1js").CanonicalForeignField;
};
toInput: (x: {
l_com_x: import("o1js").CanonicalForeignField;
l_com_y: import("o1js").CanonicalForeignField;
r_com_x: import("o1js").CanonicalForeignField;
r_com_y: import("o1js").CanonicalForeignField;
o_com_x: import("o1js").CanonicalForeignField;
o_com_y: import("o1js").CanonicalForeignField;
h0_x: import("o1js").CanonicalForeignField;
h0_y: import("o1js").CanonicalForeignField;
h1_x: import("o1js").CanonicalForeignField;
h1_y: import("o1js").CanonicalForeignField;
h2_x: import("o1js").CanonicalForeignField;
h2_y: import("o1js").CanonicalForeignField;
l_at_zeta: import("o1js").CanonicalForeignField;
r_at_zeta: import("o1js").CanonicalForeignField;
o_at_zeta: import("o1js").CanonicalForeignField;
s1_at_zeta: import("o1js").CanonicalForeignField;
s2_at_zeta: import("o1js").CanonicalForeignField;
grand_product_x: import("o1js").CanonicalForeignField;
grand_product_y: import("o1js").CanonicalForeignField;
grand_product_at_omega_zeta: import("o1js").CanonicalForeignField;
batch_opening_at_zeta_x: import("o1js").CanonicalForeignField;
batch_opening_at_zeta_y: import("o1js").CanonicalForeignField;
batch_opening_at_zeta_omega_x: import("o1js").CanonicalForeignField;
batch_opening_at_zeta_omega_y: import("o1js").CanonicalForeignField;
qcp_0_at_zeta: import("o1js").CanonicalForeignField;
qcp_0_wire_x: import("o1js").CanonicalForeignField;
qcp_0_wire_y: import("o1js").CanonicalForeignField;
}) => {
fields?: Field[] | undefined;
packed?: [Field, number][] | undefined;
};
toJSON: (x: {
l_com_x: import("o1js").CanonicalForeignField;
l_com_y: import("o1js").CanonicalForeignField;
r_com_x: import("o1js").CanonicalForeignField;
r_com_y: import("o1js").CanonicalForeignField;
o_com_x: import("o1js").CanonicalForeignField;
o_com_y: import("o1js").CanonicalForeignField;
h0_x: import("o1js").CanonicalForeignField;
h0_y: import("o1js").CanonicalForeignField;
h1_x: import("o1js").CanonicalForeignField;
h1_y: import("o1js").CanonicalForeignField;
h2_x: import("o1js").CanonicalForeignField;
h2_y: import("o1js").CanonicalForeignField;
l_at_zeta: import("o1js").CanonicalForeignField;
r_at_zeta: import("o1js").CanonicalForeignField;
o_at_zeta: import("o1js").CanonicalForeignField;
s1_at_zeta: import("o1js").CanonicalForeignField;
s2_at_zeta: import("o1js").CanonicalForeignField;
grand_product_x: import("o1js").CanonicalForeignField;
grand_product_y: import("o1js").CanonicalForeignField;
grand_product_at_omega_zeta: import("o1js").CanonicalForeignField;
batch_opening_at_zeta_x: import("o1js").CanonicalForeignField;
batch_opening_at_zeta_y: import("o1js").CanonicalForeignField;
batch_opening_at_zeta_omega_x: import("o1js").CanonicalForeignField;
batch_opening_at_zeta_omega_y: import("o1js").CanonicalForeignField;
qcp_0_at_zeta: import("o1js").CanonicalForeignField;
qcp_0_wire_x: import("o1js").CanonicalForeignField;
qcp_0_wire_y: import("o1js").CanonicalForeignField;
}) => {
l_com_x: string;
l_com_y: string;
r_com_x: string;
r_com_y: string;
o_com_x: string;
o_com_y: string;
h0_x: string;
h0_y: string;
h1_x: string;
h1_y: string;
h2_x: string;
h2_y: string;
l_at_zeta: string;
r_at_zeta: string;
o_at_zeta: string;
s1_at_zeta: string;
s2_at_zeta: string;
grand_product_x: string;
grand_product_y: string;
grand_product_at_omega_zeta: string;
batch_opening_at_zeta_x: string;
batch_opening_at_zeta_y: string;
batch_opening_at_zeta_omega_x: string;
batch_opening_at_zeta_omega_y: string;
qcp_0_at_zeta: string;
qcp_0_wire_x: string;
qcp_0_wire_y: string;
};
fromJSON: (x: {
l_com_x: string;
l_com_y: string;
r_com_x: string;
r_com_y: string;
o_com_x: string;
o_com_y: string;
h0_x: string;
h0_y: string;
h1_x: string;
h1_y: string;
h2_x: string;
h2_y: string;
l_at_zeta: string;
r_at_zeta: string;
o_at_zeta: string;
s1_at_zeta: string;
s2_at_zeta: string;
grand_product_x: string;
grand_product_y: string;
grand_product_at_omega_zeta: string;
batch_opening_at_zeta_x: string;
batch_opening_at_zeta_y: string;
batch_opening_at_zeta_omega_x: string;
batch_opening_at_zeta_omega_y: string;
qcp_0_at_zeta: string;
qcp_0_wire_x: string;
qcp_0_wire_y: string;
}) => {
l_com_x: import("o1js").CanonicalForeignField;
l_com_y: import("o1js").CanonicalForeignField;
r_com_x: import("o1js").CanonicalForeignField;
r_com_y: import("o1js").CanonicalForeignField;
o_com_x: import("o1js").CanonicalForeignField;
o_com_y: import("o1js").CanonicalForeignField;
h0_x: import("o1js").CanonicalForeignField;
h0_y: import("o1js").CanonicalForeignField;
h1_x: import("o1js").CanonicalForeignField;
h1_y: import("o1js").CanonicalForeignField;
h2_x: import("o1js").CanonicalForeignField;
h2_y: import("o1js").CanonicalForeignField;
l_at_zeta: import("o1js").CanonicalForeignField;
r_at_zeta: import("o1js").CanonicalForeignField;
o_at_zeta: import("o1js").CanonicalForeignField;
s1_at_zeta: import("o1js").CanonicalForeignField;
s2_at_zeta: import("o1js").CanonicalForeignField;
grand_product_x: import("o1js").CanonicalForeignField;
grand_product_y: import("o1js").CanonicalForeignField;
grand_product_at_omega_zeta: import("o1js").CanonicalForeignField;
batch_opening_at_zeta_x: import("o1js").CanonicalForeignField;
batch_opening_at_zeta_y: import("o1js").CanonicalForeignField;
batch_opening_at_zeta_omega_x: import("o1js").CanonicalForeignField;
batch_opening_at_zeta_omega_y: import("o1js").CanonicalForeignField;
qcp_0_at_zeta: import("o1js").CanonicalForeignField;
qcp_0_wire_x: import("o1js").CanonicalForeignField;
qcp_0_wire_y: import("o1js").CanonicalForeignField;
};
empty: () => {
l_com_x: import("o1js").CanonicalForeignField;
l_com_y: import("o1js").CanonicalForeignField;
r_com_x: import("o1js").CanonicalForeignField;
r_com_y: import("o1js").CanonicalForeignField;
o_com_x: import("o1js").CanonicalForeignField;
o_com_y: import("o1js").CanonicalForeignField;
h0_x: import("o1js").CanonicalForeignField;
h0_y: import("o1js").CanonicalForeignField;
h1_x: import("o1js").CanonicalForeignField;
h1_y: import("o1js").CanonicalForeignField;
h2_x: import("o1js").CanonicalForeignField;
h2_y: import("o1js").CanonicalForeignField;
l_at_zeta: import("o1js").CanonicalForeignField;
r_at_zeta: import("o1js").CanonicalForeignField;
o_at_zeta: import("o1js").CanonicalForeignField;
s1_at_zeta: import("o1js").CanonicalForeignField;
s2_at_zeta: import("o1js").CanonicalForeignField;
grand_product_x: import("o1js").CanonicalForeignField;
grand_product_y: import("o1js").CanonicalForeignField;
grand_product_at_omega_zeta: import("o1js").CanonicalForeignField;
batch_opening_at_zeta_x: import("o1js").CanonicalForeignField;
batch_opening_at_zeta_y: import("o1js").CanonicalForeignField;
batch_opening_at_zeta_omega_x: import("o1js").CanonicalForeignField;
batch_opening_at_zeta_omega_y: import("o1js").CanonicalForeignField;
qcp_0_at_zeta: import("o1js").CanonicalForeignField;
qcp_0_wire_x: import("o1js").CanonicalForeignField;
qcp_0_wire_y: import("o1js").CanonicalForeignField;
};
};
declare class Sp1PlonkProof extends Sp1PlonkProof_base {
deserialize(hexProof: string): Sp1PlonkProof;
}
type ProofType = {
l_com_x: FpC;
l_com_y: FpC;
r_com_x: FpC;
r_com_y: FpC;
o_com_x: FpC;
o_com_y: FpC;
h0_x: FpC;
h0_y: FpC;
h1_x: FpC;
h1_y: FpC;
h2_x: FpC;
h2_y: FpC;
l_at_zeta: FrC;
r_at_zeta: FrC;
o_at_zeta: FrC;
s1_at_zeta: FrC;
s2_at_zeta: FrC;
grand_product_x: FpC;
grand_product_y: FpC;
grand_product_at_omega_zeta: FrC;
batch_opening_at_zeta_x: FpC;
batch_opening_at_zeta_y: FpC;
batch_opening_at_zeta_omega_x: FpC;
batch_opening_at_zeta_omega_y: FpC;
qcp_0_at_zeta: FrC;
qcp_0_wire_x: FpC;
qcp_0_wire_y: FpC;
};
declare const deserializeProof: (hexProof: string) => ProofType;
export { Sp1PlonkProof, deserializeProof };