OAI/Computability/QuantumFactoring/TriangularAlgebra.lean
16 declarations, 0 contain sorry, 0 declared as axioms
- lemma
OAI.ExactQuantumFactoring.Triangular.pathShift_prefixline 13 - lemma
OAI.ExactQuantumFactoring.Triangular.pathShift_full_sumline 23 - lemma
OAI.ExactQuantumFactoring.Triangular.pathWeight_prefixline 29 - def
OAI.ExactQuantumFactoring.Triangular.dotline 35 - lemma
OAI.ExactQuantumFactoring.Triangular.hEntry_powline 37 - lemma
OAI.ExactQuantumFactoring.Triangular.pathWeight_fullline 41 - lemma
OAI.ExactQuantumFactoring.Triangular.selected_evolveline 48 - def
OAI.ExactQuantumFactoring.Triangular.inputNumberline 68Source documentation
The input word is reversed physically, while the output wire j is k_j.
def inputNumber {b : ℕ} (x : Bits b) : ℕ := ∑ i, 2^(b-1-i.val)*(x i).toNat - def
OAI.ExactQuantumFactoring.Triangular.outputNumberline 69 - def
OAI.ExactQuantumFactoring.Triangular.lowTermline 71 - def
OAI.ExactQuantumFactoring.Triangular.highTermline 74 - lemma
OAI.ExactQuantumFactoring.Triangular.productTermline 77 - lemma
OAI.ExactQuantumFactoring.Triangular.product_decompositionline 99 - def
OAI.ExactQuantumFactoring.Triangular.rowShiftline 115Source documentation
One shift after H_j combines all the prescribed mutually commuting controlled power-of-two shifts in that row.
def rowShift {b : ℕ} (j : Fin b) (z : Bits b) : ℕ := … - lemma
OAI.ExactQuantumFactoring.Triangular.rowShift_hybridline 118 - lemma
OAI.ExactQuantumFactoring.Triangular.pathShift_rowsline 128