# Parity Verification
Parity verification is the foundation of the conformance suite: for a generated input, does the backend return exactly the same bytes as the CPU reference?
## What It Proves
Parity proves point truth. For every input the suite executes, it knows the exact correct output and verifies that the backend matches it.
## What It Does Not Prove
Parity is probabilistic over the input space. Passing parity on 10,000 generated inputs does not prove correctness on the 4 billion other possible `u32` pairs. That is why L1 (parity alone) is the minimum bar, and L2 adds algebraic verification to constrain the entire domain.
## Inputs Used
Parity runs on:
- **Edge cases**: zero, one, max, powers of two, alternating patterns
- **Pathological values**: shift boundaries, division by zero, i32::MIN
- **Random witnesses**: deterministic seeded uniform samples
- **Regressions**: every previously-failing input
- **Boundary values**: explicit edges declared in `OpSpec`
## Failure Format
A parity failure (`ParityFailure`) contains:
- Operation ID and version
- Generator name and input label
- Raw input bytes
- GPU output bytes
- CPU output bytes
- Diagnostic message with a `Fix: ...` direction
## Relationship to Levels
L1 requires parity verification. L2, L3, and L4 require parity plus additional verification strategies.