@proto-kit/protocol • Docs
Documentation / @proto-kit/protocol / StateTransitionProverProgrammable
Class: StateTransitionProverProgrammable
StateTransitionProver is the prover that proves the application of some state transitions and checks and updates their merkle-tree entries
Extends
Constructors
new StateTransitionProverProgrammable()
new StateTransitionProverProgrammable(
stateTransitionProver):StateTransitionProverProgrammable
Parameters
• stateTransitionProver: Pick<StateTransitionProver, "areProofsEnabled">
Returns
StateTransitionProverProgrammable
Overrides
Defined in
packages/protocol/src/prover/statetransition/StateTransitionProver.ts:64
Accessors
areProofsEnabled
Get Signature
get areProofsEnabled():
undefined|AreProofsEnabled
Returns
undefined | AreProofsEnabled
Overrides
ZkProgrammable.areProofsEnabled
Defined in
packages/protocol/src/prover/statetransition/StateTransitionProver.ts:73
Methods
applyTransition()
applyTransition(
currentBatch,transition,witness,index):AppliedStateTransitionBatchState
Applies a single state transition to the given state and mutates it in place
Parameters
• currentBatch: AppliedStateTransitionBatchState
• transition: ProvableStateTransition
• witness: LinkedMerkleTreeWitness
• index: number = 0
Returns
AppliedStateTransitionBatchState
Defined in
packages/protocol/src/prover/statetransition/StateTransitionProver.ts:279
applyTransitions()
applyTransitions(
state,batch,witnesses):StateTransitionProverExecutionState
Applies the state transitions to the current stateRoot and returns the new prover state
Parameters
• state: StateTransitionProverExecutionState
• batch: StateTransitionProvableBatch
• witnesses: MerkleWitnessBatch
Returns
StateTransitionProverExecutionState
Defined in
packages/protocol/src/prover/statetransition/StateTransitionProver.ts:181
compile()
compile(
registry):Promise<Record<string,CompileArtifact>>
Parameters
• registry: CompileRegistry
Returns
Promise<Record<string, CompileArtifact>>
Inherited from
Defined in
packages/common/dist/zkProgrammable/ZkProgrammable.d.ts:55
dynamicProofType()
dynamicProofType():
Promise<typeofDynamicProof>
Returns
Promise<typeof DynamicProof>
Inherited from
ZkProgrammable.dynamicProofType
Defined in
packages/common/dist/zkProgrammable/ZkProgrammable.d.ts:54
merge()
merge(
publicInput,proof1,proof2):Promise<StateTransitionProverPublicOutput>
Parameters
• publicInput: StateTransitionProverPublicInput
• proof1: StateTransitionProof
• proof2: StateTransitionProof
Returns
Promise<StateTransitionProverPublicOutput>
Defined in
packages/protocol/src/prover/statetransition/StateTransitionProver.ts:364
proofType()
proofType():
Promise<typeofProof>
Returns
Promise<typeof Proof>
Inherited from
Defined in
packages/common/dist/zkProgrammable/ZkProgrammable.d.ts:53
proveBatch()
proveBatch(
publicInput,batch,witnesses,currentAppliedBatch):Promise<StateTransitionProverPublicOutput>
Applies a whole batch of StateTransitions at once
Parameters
• publicInput: StateTransitionProverPublicInput
• batch: StateTransitionProvableBatch
• witnesses: MerkleWitnessBatch
• currentAppliedBatch: AppliedStateTransitionBatchState
Returns
Promise<StateTransitionProverPublicOutput>
Defined in
packages/protocol/src/prover/statetransition/StateTransitionProver.ts:326
zkProgram()
zkProgram():
Promise<PlainZkProgram<StateTransitionProverPublicInput,StateTransitionProverPublicOutput>[]>
Returns
Promise<PlainZkProgram<StateTransitionProverPublicInput, StateTransitionProverPublicOutput>[]>
Inherited from
Defined in
packages/common/dist/zkProgrammable/ZkProgrammable.d.ts:52
zkProgramFactory()
zkProgramFactory():
Promise<PlainZkProgram<StateTransitionProverPublicInput,StateTransitionProverPublicOutput>[]>
Returns
Promise<PlainZkProgram<StateTransitionProverPublicInput, StateTransitionProverPublicOutput>[]>
Overrides
ZkProgrammable.zkProgramFactory
Defined in
packages/protocol/src/prover/statetransition/StateTransitionProver.ts:77