Oracle Composition
Exercise BE-110
local source supported. Current content-bound mathematical second pass accepted. No new Lean verification is claimed for this NL view.
Assumptions and conventions
- Each selector value s names a permutation p_s of the system register
- SELECT preserves the coefficient and selector registers
- The forward map carries the selector through unchanged
- A basis permutation's matrix is a 0/1 permutation matrix
Question
A coherently controlled SELECT applies, for each selector value s, a permutation p_s of the system register, while leaving the coefficient and selector registers fixed. Prove that the map sending (coeff, (s, x)) to (coeff, (s, p_s(x))) is a genuine bijection of the whole product register by exhibiting its two-sided inverse, and explain why its matrix is automatically unitary. Why is it essential that the inverse applies the inverse permutation (p_s)^{-1} indexed by the SAME selector value s that is read on input?
Hint: mathematical route
A controlled SELECT (coeff,(s,x)) |-> (coeff,(s,p_s(x))) is a bijection with inverse applying (p_s)^{-1} under the same preserved selector s, hence unitary as a basis permutation; coherent control requires carrying the selector through for inversion.
- Define F(coeff,(s,x)) = (coeff,(s,p_s(x))) and the candidate inverse G applying (p_s)^{-1} on the system.
- G∘F = identity because (p_s)^{-1} undoes p_s under the preserved selector s.
- F∘G = identity because p_s undoes (p_s)^{-1}, so F is a bijection.
- The matrix of F is a basis permutation matrix, which is unitary over C.
- The inverse must apply (p_s)^{-1} for the same preserved selector s; coherent control carries the selector through so the inverse re-reads the correct permutation.
Reference solution
Define F(coeff, (s, x)) = (coeff, (s, p_s(x))). Candidate inverse: G(coeff, (s, y)) = (coeff, (s, (p_s)^{-1}(y))). Check both composites. G(F(coeff,(s,x))) = G(coeff,(s,p_s(x))) = (coeff,(s,(p_s)^{-1}(p_s(x)))) = (coeff,(s,x)) since (p_s)^{-1} undoes p_s. F(G(coeff,(s,y))) = F(coeff,(s,(p_s)^{-1}(y))) = (coeff,(s,p_s((p_s)^{-1}(y)))) = (coeff,(s,y)). Both composites are the identity, so F is a bijection with inverse G. Its matrix is the permutation matrix of F (a 0/1 matrix with a single 1 per row and column), and every permutation matrix over C is unitary: its conjugate transpose is the permutation matrix of F^{-1}, and the product of a permutation matrix with its inverse is the identity. Hence SELECT is unitary purely because it is a basis permutation, with no amplitude arithmetic required. It is essential that G applies (p_s)^{-1} indexed by the SAME selector s: the selector is preserved by F, so on input the controlling value is s and the system permutation applied is p_s; to invert we must read that same preserved selector s and undo exactly p_s. If the inverse used a different selector's permutation p_{s'} the composite would apply p_s then (p_{s'})^{-1}, which is not the identity unless the permutations happen to coincide. Coherent control means the control register both selects which permutation acts and is itself carried through unchanged so the inverse can re-read it.
Assessment rubric
- Exhibit the candidate inverse G applying (p_s)^{-1} on the system while preserving coefficient and selector (1 weight)
- Verify both composites G∘F and F∘G are the identity, concluding F is a bijection (1 weight)
- Conclude unitarity because the matrix is a basis permutation, and explain that the inverse must use the same preserved selector s so coherent control re-reads the correct permutation (1 weight)
Graph-grounded prerequisites
These are support/source anchors, not an automatically extracted theorem-dependency proof.
Lean view and evidence boundary
No aligned Lean view has been admitted for this native core in this textbook checkpoint. This is not a claim that the underlying mathematics lacks a formal proof. Contributions must preserve this exact target contract and split.
Sources and provenance
- QuantumBlockEncoding/Robin/ComplexLCU.lean
def controlledSystemEquiv (permutation : selector → system ≃ system) : LCUIndex coefficient selector system ≃ LCUIndex coefficient selector system where toFun index := (index.1, (index.2.1, permutation index.2.1 index.2.2)) invFun index := (index.1, (index.2.1, (permutation index.2.1).symm index.2.2)) left_inv index := by simp right_inv index := by simp (lines 315-327); theorem selectLift_unitary ... := equivPermutationMatrix_unitary _ (lines 340-349)
Source SHA-256:aa51d33a6ca788b17879e1d88030b525f4f035c97d74588636ccf25f8c04b843· MIT (repository LICENSE)
Contract: f58c46fe0545b797fbc05fe022a9413adb33d92606e70eb4f28cf219e27ab9cd
Item digest: 0cc5f51f216a0d5dbe1cc2aa09034b4fe15c07d1d632632b930ae11ec0505a4d
Graph snapshot: qcb-snapshot-ffa644f0da3031a1ce754b9a
Authored support steps: 5. This is not measured graph distance or model difficulty.