Securely scaling
ZK Interoperability
Seamlessly interact between chains with cryptographically secure state proofs, out opaque intermediaries. Run expressive and dynamic distributed ZK computation at a Big Data scale on top of multi-chain contract states.
LAGRANGE STATE COMMITTEES
Lagrange State Committees generate succinct zero-knowledge state proofs for optimistic rollups with instant finality. Each ZK state proof can easily be integrated into existing cross-chain messaging protocols or bridges to enhance security.
State Committees are modeled after the Ethereum Sync Committee and are designed to extend Ethereum’s economic security to any rollup or chain that settles on Ethereum.
ZK BIG DATA
ZK Big Data is a verifiable computing framework designed for generating ZK proofs for any distributed or parallelizable computational model. ZKBD can support programming models ranging from MapReduce to RDD to distributed SQL.
Starting with a single block header, ZKBD can parallelize proof computation across thousands of historical blocks and storage slots.
INTEGRATE WITH LAGRANGE STATE COMMITTEES
Seamlessly integrate Lagrange State Proofs with any existing bridge or messaging protocol, to enhance the security of cross-chain interaction.

function verifyStateCommittee(
uint256 chainID,
bytes32 blockHash,
bytes32 participantRoot,
bytes32 stateCommitteeRoot,
bytes32 genesisCommittee,
bytes calldata committeeProof
) external {
uint256[] memory pubStatement = new uint256[](5);
pubSignals[0] = chainID;
pubSignals[1] = uint256(uint160(blockHash));
pubSignals[2] = uint256(participantRoot);
pubSignals[3] = uint256(stateCommitteeRoot);
pubSignals[4] = uint256(genesisCommittee);
return verifier.verifyProof (proofOfInteraction, pubStatement);
}

var dataframe = polygon.createDataFrame({
block_range_start: polygon.currentBlock() - 1024,
block_range_start: polygon.currentBlock(),
interval: 1,
content:{
address:"0xb794f...68",
keys:[
{name: liquidity_1, memory:"0x56e81...21"},
{name: liquidity_2, memory:"0x56211...32"},
]
}
})
dataframe = polygon.map("asset_price", polygon.liquidity_1.div (polygon.liquidity_2))
var price_mean = polygon.reduce(avg ("asset_price"))
EXPLORE
ZK MAPREDUCE
Our first product in the ZK Big Data stack. Explore how to use ZK MapReduce to generate expressive distributed computation and batched storage proofs.