OAI/Computability/QuantumFactoring/NodeControlCircuit.lean
29 declarations, 0 contain sorry, 0 declared as axioms
- def
OAI.ExactQuantumFactoring.BitArithmetic.properOnline 20 - lemma
OAI.ExactQuantumFactoring.BitArithmetic.properOn_valueline 24 - abbrev
OAI.ExactQuantumFactoring.BitArithmetic.NodeCircuit.widthline 36 - def
OAI.ExactQuantumFactoring.BitArithmetic.NodeCircuit.pendingline 38 - def
OAI.ExactQuantumFactoring.BitArithmetic.NodeCircuit.divisorline 39 - def
OAI.ExactQuantumFactoring.BitArithmetic.NodeCircuit.topline 40 - def
OAI.ExactQuantumFactoring.BitArithmetic.NodeCircuit.poppedline 42 - def
OAI.ExactQuantumFactoring.BitArithmetic.NodeCircuit.quotientline 44 - def
OAI.ExactQuantumFactoring.BitArithmetic.NodeCircuit.isPrimeline 46 - def
OAI.ExactQuantumFactoring.BitArithmetic.NodeCircuit.isDoneline 47 - def
OAI.ExactQuantumFactoring.BitArithmetic.NodeCircuit.isProperline 48 - def
OAI.ExactQuantumFactoring.BitArithmetic.NodeCircuit.splitline 49 - def
OAI.ExactQuantumFactoring.BitArithmetic.NodeCircuit.nextline 52 - def
OAI.ExactQuantumFactoring.BitArithmetic.NodeCircuit.emittedline 55 - def
OAI.ExactQuantumFactoring.BitArithmetic.NodeCircuit.failedline 57 - def
OAI.ExactQuantumFactoring.BitArithmetic.NodeCircuit.stepline 60 - def
OAI.ExactQuantumFactoring.BitArithmetic.NodeCircuit.packline 63 - lemma
OAI.ExactQuantumFactoring.BitArithmetic.NodeCircuit.pending_packline 66 - lemma
OAI.ExactQuantumFactoring.BitArithmetic.NodeCircuit.divisor_packline 70 - lemma
OAI.ExactQuantumFactoring.BitArithmetic.NodeCircuit.top_packline 74 - lemma
OAI.ExactQuantumFactoring.BitArithmetic.NodeCircuit.popped_packline 79 - lemma
OAI.ExactQuantumFactoring.BitArithmetic.NodeCircuit.quotient_packline 83 - lemma
OAI.ExactQuantumFactoring.BitArithmetic.NodeCircuit.split_packline 89 - lemma
OAI.ExactQuantumFactoring.BitArithmetic.NodeCircuit.isPrime_packline 96 - lemma
OAI.ExactQuantumFactoring.BitArithmetic.NodeCircuit.isProper_packline 101 - lemma
OAI.ExactQuantumFactoring.BitArithmetic.NodeCircuit.isDone_packline 107 - lemma
OAI.ExactQuantumFactoring.BitArithmetic.NodeCircuit.next_pack_consline 115Source documentation
Literal guarded stack update for one node of the recursive producer. The source primality test is the Boolean AKS circuit, and division is a full word division circuit. No semantic factorization operation is used here.
lemma next_pack_cons {s w : ℕ} (hw : 128 ≤ w) (a d : Basis w) (xs : List (Basis w)) (h : xs.length ≤ s) (ha : 2 ≤ (bitsValue a).toNat) : (next s w).eval (pack (a::xs) d)= if (bitsValue a).toNat.Prime then stackEncoding (s+1) w xs else if ProperDivisor (bitsValue a).toNat (bitsValue d).toNat then stackEncoding (s+1) w (d::(quotient s w).eval (pack (a::xs) d)::xs) else stackEncoding (s+1) w (a::xs) := by …Mentions: OAI.ExactQuantumFactoring.Basis, OAI.ExactQuantumFactoring.bitsValue, OAI.ExactQuantumFactoring.BitArithmetic.NodeCircuit.next, OAI.ExactQuantumFactoring.BitArithmetic.NodeCircuit.pack, OAI.ExactQuantumFactoring.BitArithmetic.stackEncoding, OAI.ExactQuantumFactoring.BitArithmetic.NodeCircuit.quotient
- lemma
OAI.ExactQuantumFactoring.BitArithmetic.NodeCircuit.emitted_pack_consline 130 - lemma
OAI.ExactQuantumFactoring.BitArithmetic.NodeCircuit.failed_pack_consline 140