> ## Documentation Index
> Fetch the complete documentation index at: https://docs.herodotus.cloud/llms.txt
> Use this file to discover all available pages before exploring further.

# L2 Proof Verification

> STARK proofs can be verified on L2 (Starknet) with [Integrity](https://github.com/HerodotusDev/integrity) verifier, so that other contracts deployed on Starknet can use its FactRegistry contract to check whether given proof was verified.

<Note>
  For now, proof verification can only be performed together with
  [Proof Generation](/atlantic-api/steps/proof-generation).
</Note>

### How to use?

Follow instructions for [Proof Generation](/atlantic-api/steps/proof-generation), but select `PROOF_VERIFICATION_ON_L2` as `result`.

After the proof is verified, you can call
`isCairoFactValid(fact_hash: felt252, is_mocked: bool)` or
`get_verification(verification_hash: felt252)` on the
[Satellite contract](/atlantic-api/contract-addresses#starknet-chains), as described
in more detail on the [Integrity page](/atlantic-api/integrity-verifier).

You can also set `mockFactHash` to omit actual proof verification on-chain, reducing the cost for testing purposes.

### Calculating fact hash

For fact hash calculation on Starknet, refer to the
[Integrity page](/atlantic-api/integrity-verifier).
