How statement and proof provenance work
The first chip identifies the source of the statement or construction; the second identifies the source of its local proof or verification.
- Literature-sourced: the exact statement appears in a cited source; only wording and notation differ.
- AI-adapted: a semantically identical restatement of literature-sourced material, modulo indexing, notation, and boundary cases adopted by the library.
- AI-generated: a genuinely novel statement formulated by AI, with no source for the claim itself.
These labels describe origin, not correctness: citations and verification chips remain separate evidence.
Reversible modular multiplication by a unit
Definition
Input. An integer , , a one-bit control , an -bit data register , and integers with and . The data encoding is valid when its unsigned value is less than .
Residue addition and multiplication are in with the class operations of The congruence class and the quotient set , Addition and multiplication on by and , and For every natural , is an abelian group, multiplication is a commutative monoid operation, and both distributive laws hold. The inverse condition says is a unit, equivalently by The unit group and Euler's totient for and For , is a unit if and only if . Kets use Dirac Notation Conversion; are ordered computational-basis registers with the unsigned encoding of Finite registers and their ordered computational bases and Big-endian encoding of ordered bit strings, tensor order as in Ordered tensor registers, their inner product, and wire permutations, and circuit denotation as in Denotational semantics of a finite layered circuit. “Clean work” means initialized and returned to zero under Clean and dirty ancillas.
Output. A reversible circuit on and clean work registers which implements the controlled map for and valid , and is the identity on invalid encodings and when .
Instructions. Define the total Boolean function on by Generate the following explicit NOT/AND/OR DAG for this function. Bit arrays in the instructions below are indexed from least significant bit ; the input and output port lists retain the repository's most-significant-first register order. Begin with the distinct input identifiers and two constant nodes . Every gate emission appends a fresh identifier in consecutive order, referencing only existing identifiers. A named bit below is an alias of its node identifier, never an additional gate. Expand every macro call immediately in the stated loop order.
- Define by emitting, in order, , , , and , returning . Define by looping : emit , , , , and . Return and . Define by first emitting in increasing and then calling ; return its difference bits and carry bit (the no-borrow bit).
- Define by emitting and, for , , , . It returns the selected bit array . Public constant arrays below refer to the shared nodes and are zero-padded to the displayed width.
- Initialize a -bit accumulator with zero aliases. For , form a -bit row : for , emit , where is the constant bit of ; all other row bits alias . Replace by the sum output of , ignoring the carry output.
- Initialize to zero aliases. For , form the -bit array by and for . Call , obtaining difference and carry . Set to the low bits of .
- Pad by a zero high bit, call , and let be its carry. Emit and . Set . The ordered output ports are . This completes the finite DAG and its topological order. Construct a second DAG by the identical recipe with constant in place of .
Compile each DAG to the clean-target XOR oracle of Coherent XOR function oracle using Reversible embedding of a Boolean circuit, whose exact gate-emission rules apply also to repeated-source ports. Allocate an -bit clean target, compute into it, swap the data and target registers with three CNOT gates per bit, then apply the compiled XOR computation for to the old-data target, using the new data as input. Each compiled XOR oracle is an involution by A total Boolean XOR oracle is unitary and involutive. Return the concatenated gate list with every compute-copy-uncompute stage included. Separate items thm-qa-modular-multiplication-circuit-correctness and thm-qa-modular-arithmetic-cost establish its basis action and gate/work bounds. No depth bound is part of this algorithm.
Depends on
- Clean and dirty ancillas
- Dirac Notation Conversion
- Reversible embedding of a Boolean circuit
- Coherent XOR function oracle
- A total Boolean XOR oracle is unitary and involutive
- The congruence class $[a]_n$ and the quotient set $\mathbb{Z}/n$
- Addition and multiplication on $\mathbb{Z}/n$ by $[a]_n+[b]_n=[a+b]_n$ and $[a]_n[b]_n=[ab]_n$
- For every natural $n$, $(\mathbb{Z}/n,+)$ is an abelian group, multiplication is a commutative monoid operation, and both distributive laws hold
- The unit group $(\mathbb{Z}/n)^\times$ and Euler's totient $\varphi(n)=\lvert(\mathbb{Z}/n)^\times\rvert$ for $n\ge1$
- For $n\ge1$, $[a]_n$ is a unit if and only if $\gcd(a,n)=1$
- Denotational semantics of a finite layered circuit
- Finite registers and their ordered computational bases
- Big-endian encoding of ordered bit strings
- Ordered tensor registers, their inner product, and wire permutations
Used by
- Modular order finding with rational reconstruction Algorithm
- Shor factoring with verified output and bounded outer retries Algorithm
- Correctness of the reversible modular multiplier Theorem
- Gate and bit cost of modular multiplication and powering Theorem
- Success probability and repetition for modular order finding Theorem
Dependency tree · two levels
65 results within two dependency steps of this one, each drawn at its shortest distance from it. An arrow runs from a result to what uses it, so the chart reads left to right and ends at this result, which carries a heavier outline. Every node is a link to that result. Click elsewhere on the chart to enlarge it.
Sources
- John Preskill, Quantum Computation, Chapter 5: Classical and Quantum Circuits (standard reference, not scraped)
- Ronald de Wolf, Quantum Computing: Lecture Notes, arXiv:1907.09415v6 (standard reference, not scraped)