> For the complete documentation index, see [llms.txt](https://valargroup.gitbook.io/shielded-vote-docs/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://valargroup.gitbook.io/shielded-vote-docs/circuit-components/rho-binding.md).

# Rho Binding

**Used in:** ZKP #1 (condition 3)

## What it does

Constrains the signed note's `rho` value to be a deterministic hash of the notes being delegated, the VAN, and the voting round. This makes the delegation signature non-replayable and scoped to the exact delegation context.

## Circuit

```
rho_signed = Poseidon(cmx_1, cmx_2, cmx_3, cmx_4, cmx_5, van_cmx, vote_round_id)
```

Where:

* `cmx_1, ..., cmx_5` — the note commitments of the 5 delegated notes (real + padded)
* `van_cmx` — the commitment to the Vote Authority Note
* `vote_round_id` — the voting round identifier

## Why this matters

Because the signed note is a dummy (constructed specifically for governance), we can freely choose its `rho`. By binding `rho` to the delegation context, the delegation signature becomes:

* **Non-replayable** — tied to a specific `vote_round_id`
* **Scoped** — tied to specific notes and VAN
* **Verifiable** — the constraint is enforced in-circuit

This is similar in spirit to Quantum Recoverable Orchard's approach to constraining rho.
