GapCVP proof, part 08, continuation 04 #
GapCVP reduction support.
Equations
- One or more equations did not get rendered due to their size.
Instances For
GapCVP reduction support.
Equations
- GapCVP.gapYES400 I = decide (GapCVP.gapCVPWellFormed I = true ∧ ∃ (z : Fin I.dimension → ℤ), GapCVP.distanceSquared I z ≤ ↑I.radius ^ 2)
Instances For
GapCVP reduction support.
Equations
- GapCVP.gapNO400 I = decide (GapCVP.gapCVPWellFormed I = true ∧ ∀ (z : Fin I.dimension → ℤ), (GapCVP.gapFactor400 I * ↑I.radius) ^ 2 < GapCVP.distanceSquared I z)
Instances For
GapCVP reduction support.
Equations
- One or more equations did not get rendered due to their size.
Instances For
GapCVP reduction support.
Equations
- One or more equations did not get rendered due to their size.
Instances For
GapCVP reduction support.
Equations
Instances For
GapCVP reduction support.
- variableCount : ℕ
GapCVP reduction support.
- clauses : List (Clause self.variableCount)
GapCVP reduction support.
Instances For
GapCVP reduction support.
Equations
- clause.Satisfied assignment = decide (∃ literal ∈ clause.literals, assignment literal.variableIndex = literal.satisfyingValue)
Instances For
GapCVP reduction support.
Equations
Instances For
GapCVP reduction support.
Equations
- formula.Satisfiable = decide (∃ (assignment : Fin formula.variableCount → Bool), formula.Satisfied assignment = true)
Instances For
GapCVP reduction support.
Equations
Instances For
GapCVP reduction support.
Equations
Instances For
GapCVP reduction support.
Equations
- GapCVP.BinarySourceVariableCompaction.compactVariableRank formula name = List.idxOf name (GapCVP.BinarySourceVariableCompaction.occurringVariables formula)
Instances For
GapCVP reduction support.
- swap {m : ℕ} (left right : Fin m) : RowOperation m
- add {m : ℕ} (source target : Fin m) (distinct : source ≠ target) : RowOperation m
Instances For
GapCVP reduction support.
Equations
- (GapCVP.Core.EffectiveBinaryGaussian.RowOperation.swap left right).apply system = GapCVP.Core.EffectiveBinaryGaussian.swapRows system left right
- (GapCVP.Core.EffectiveBinaryGaussian.RowOperation.add source target distinct).apply system = GapCVP.Core.EffectiveBinaryGaussian.addRow system source target
Instances For
GapCVP reduction support.
- system : System m n
GapCVP reduction support.
- nextPivot : ℕ
GapCVP reduction support.
GapCVP reduction support.
- operations : List (RowOperation m)
GapCVP reduction support.
Instances For
GapCVP reduction support.
Equations
- One or more equations did not get rendered due to their size.
Instances For
GapCVP reduction support.
Equations
- GapCVP.Core.EffectiveBinaryGaussian.findPivotOption state column = List.find? (fun (row : Fin m) => decide (state.nextPivot ≤ ↑row ∧ state.system.check row column = 1)) (List.finRange m)
Instances For
GapCVP reduction support.
Equations
- GapCVP.Core.EffectiveBinaryGaussian.clearTargets pivot column targets state = List.foldl (GapCVP.Core.EffectiveBinaryGaussian.clearTarget pivot column) state targets
Instances For
GapCVP reduction support.
Equations
- GapCVP.Core.EffectiveBinaryGaussian.runColumns columns state = List.foldl GapCVP.Core.EffectiveBinaryGaussian.columnStep state columns
Instances For
GapCVP reduction support.
Equations
Instances For
GapCVP reduction support.
Equations
Instances For
GapCVP reduction support.
Equations
- GapCVP.Core.EffectiveBinaryField.wordPolynomial word = ∑ i : Fin e, (Polynomial.monomial ↑i) (GapCVP.Core.EffectiveBinaryField.bitValue (word i))
Instances For
GapCVP reduction support.
Equations
Instances For
GapCVP reduction support.
Equations
- GapCVP.Core.EffectiveBinaryField.coefficientWord e p i = decide (p.coeff ↑i = 1)
Instances For
GapCVP reduction support.
Equations
- One or more equations did not get rendered due to their size.
Instances For
GapCVP reduction support.
Equations
Instances For
GapCVP reduction support.
Equations
Instances For
GapCVP reduction support.
Equations
- GapCVP.Core.EffectiveBinaryField.multiplyMod lower left right i = GapCVP.Core.EffectiveBinaryField.reduceProduct lower (GapCVP.Core.EffectiveBinaryField.multiplyWords left right) ⟨↑i, ⋯⟩
Instances For
GapCVP reduction support.
Equations
Instances For
GapCVP reduction support.
Equations
Instances For
Power basis of the selected binary field extension, reindexed by its degree.
Equations
Instances For
GapCVP reduction support.
Equations
Instances For
GapCVP reduction support.
Equations
- GapCVP.BinaryFieldBasis.indexedWord degree index bit = (↑index).testBit ↑bit
Instances For
GapCVP reduction support.
Equations
- GapCVP.BinaryFieldBasis.boundedWordIndex hcount = Fin.castLEEmb hcount
Instances For
GapCVP reduction support.
Equations
- GapCVP.BinaryFieldBasis.evaluationWordIndex hcount = (Fin.natAddEmb count).trans (finCongr ⋯).toEmbedding
Instances For
Equations
- GapCVP.BinaryFieldBasis.factor400GaloisFieldFintype degree = Fintype.ofFinite (GaloisField 2 degree)
GapCVP reduction support.
Equations
Instances For
GapCVP reduction support.
Equations
Instances For
GapCVP reduction support.
Equations
- One or more equations did not get rendered due to their size.
Instances For
GapCVP reduction support.
Equations
- GapCVP.BinaryFieldBasis.indexedFieldEquiv degree hdegree = Equiv.ofBijective (GapCVP.BinaryFieldBasis.indexedFieldElement✝ degree hdegree) ⋯
Instances For
The indexed field equivalence evaluates the corresponding binary word.
The anchor embedding evaluates the indexed binary word in the extension field.
The evaluation embedding evaluates the indexed binary word in the extension field.
GapCVP reduction support.
Equations
- One or more equations did not get rendered due to their size.
Instances For
GapCVP reduction support.
Equations
- GapCVP.Core.binaryFieldBitEmbedding dimension = LinearMap.pi fun (i : Fin dimension) => Algebra.linearMap (ZMod 2) K ∘ₗ LinearMap.proj i
Instances For
GapCVP reduction support.
Equations
- GapCVP.Core.binaryFieldParityLinearMap basis checks = ↑(GapCVP.Core.binaryFieldVectorEquiv basis m) ∘ₗ ↑(ZMod 2) checks.mulVecLin ∘ₗ GapCVP.Core.binaryFieldBitEmbedding n
Instances For
GapCVP reduction support.
Equations
- GapCVP.Core.binaryFieldParityMatrix basis checks = LinearMap.toMatrix' (GapCVP.Core.binaryFieldParityLinearMap basis checks)
Instances For
GapCVP reduction support.
Equations
- system.Solves z = decide (system.check.mulVec (GapCVP.Core.binaryResidue z) = system.rightHandSide)
Instances For
GapCVP reduction support.
Instances For
GapCVP reduction support.
Equations
- GapCVP.Core.assembledBinaryParityMatrix basis rowCounts checks row column = GapCVP.Core.binaryFieldParityMatrix basis (checks row.fst) row.snd column
Instances For
GapCVP reduction support.
Equations
- GapCVP.Core.assembledBinaryRightHandSide basis rowCounts targets row = (GapCVP.Core.binaryFieldVectorEquiv basis (rowCounts row.fst)) (targets row.fst) row.snd
Instances For
GapCVP reduction support.
Equations
- One or more equations did not get rendered due to their size.
Instances For
GapCVP reduction support.
Equations
- GapCVP.Core.sourcePuncturedGrid variablePlaces = Finset.univ \ variablePlaces
Instances For
GapCVP reduction support.
Equations
- GapCVP.Core.sourceFieldExponent N = Nat.clog 2 (N ^ 200)
Instances For
GapCVP reduction support.
Equations
Instances For
GapCVP reduction support.
Equations
- GapCVP.Core.supportMoment support j = ∑ a ∈ support, a ^ j
Instances For
GapCVP reduction support.
Equations
- GapCVP.Core.paritySupport [] = ∅
- GapCVP.Core.paritySupport (s :: supports) = symmDiff s (GapCVP.Core.paritySupport supports)
Instances For
GapCVP reduction support.
Equations
- GapCVP.Core.shiftedMomentCombination moments β j = ∑ l ∈ Finset.range (j + 1), Polynomial.C (↑(j.choose l) * (-β) ^ (j - l)) * moments l
Instances For
GapCVP reduction support.
Equations
- GapCVP.Core.sourceSizeParameter encodingLength formula = 100 + encodingLength + formula.variableCount + formula.clauses.length
Instances For
GapCVP reduction support.
Equations
- C.variableSet = Finset.image (fun (literal : GapCVP.Core.Literal m) => literal.variableIndex) C.literals
Instances For
GapCVP reduction support.
Equations
- C.LocalVariable = ↥C.variableSet
Instances For
GapCVP reduction support.
Equations
- C.LocalAssignment = (C.LocalVariable → Bool)
Instances For
GapCVP reduction support.
Equations
- C.LocalSatisfied assignment = decide (∃ (literal : GapCVP.Core.Literal m) (hliteral : literal ∈ C.literals), assignment ⟨literal.variableIndex, ⋯⟩ = literal.satisfyingValue)
Instances For
GapCVP reduction support.
Equations
- C.SatisfyingLocalTuple = { assignment : C.LocalAssignment // C.LocalSatisfied assignment = true }
Instances For
GapCVP reduction support.
Equations
- C.restrictAssignment assignment i = assignment ↑i
Instances For
GapCVP reduction support.
Equations
- C.satisfyingLocalTupleOfAssignment assignment h = ⟨C.restrictAssignment assignment, ⋯⟩
Instances For
GapCVP reduction support.
Equations
- GapCVP.Core.sourceSATTableType F = (Unit ⊕ (C : Fin F.clauses.length) × (F.clauses.get C).SatisfyingLocalTuple)
Instances For
GapCVP reduction support.
Equations
- GapCVP.Core.sourceSATGridPoint points = ↥points
Instances For
GapCVP reduction support.
Equations
- GapCVP.Core.sourceSATTableCoordinate F K points = (GapCVP.Core.sourceSATTableType F × GapCVP.Core.sourceSATGridPoint points × K)
Instances For
GapCVP reduction support.
Equations
- GapCVP.Core.sourceSATTableDimension F K points = Fintype.card (GapCVP.Core.sourceSATTableCoordinate F K points)
Instances For
GapCVP reduction support.
Equations
- GapCVP.Core.sourceReedSolomonCode points degreeBound = (GapCVP.Core.sourceGridEvaluationLinearMap✝ points ∘ₗ (Polynomial.degreeLE K ↑degreeBound).subtype).range
Instances For
GapCVP reduction support.
Equations
Instances For
GapCVP reduction support.
Equations
- GapCVP.Core.sourceSATColumnIndex F points tableType point value = (Fintype.equivFin (GapCVP.Core.sourceSATTableCoordinate F K points)) (tableType, point, value)
Instances For
GapCVP reduction support.
Equations
- One or more equations did not get rendered due to their size.
Instances For
GapCVP reduction support.
Equations
- One or more equations did not get rendered due to their size.
Instances For
GapCVP reduction support.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Number of field checks contributed by one SAT constraint family.
Equations
- GapCVP.Core.sourceSATFamilyRowCount F points momentBudget (Sum.inl val) = Fintype.card (GapCVP.Core.sourceSATGridPoint points)
- GapCVP.Core.sourceSATFamilyRowCount F points momentBudget (Sum.inr (Sum.inl val)) = Fintype.card (GapCVP.Core.sourceSATGridPoint points × K)
- GapCVP.Core.sourceSATFamilyRowCount F points momentBudget (Sum.inr (Sum.inr (Sum.inl (fst, j)))) = GapCVP.Core.sourceReedSolomonCodimension✝ points (F.variableCount * ↑j)
- GapCVP.Core.sourceSATFamilyRowCount F points momentBudget (Sum.inr (Sum.inr (Sum.inr ⟨fst, ⟨fst_1, (fst_2, j)⟩⟩))) = GapCVP.Core.sourceReedSolomonCodimension✝ points ((F.variableCount - 1) * ↑j)
Instances For
Target values for the field checks of one SAT constraint family.
Equations
- GapCVP.Core.sourceSATFamilyTarget F points momentBudget (Sum.inl val) x_1 = 1
- GapCVP.Core.sourceSATFamilyTarget F points momentBudget (Sum.inr val) x_1 = 0
Instances For
Matrix of field checks for one SAT constraint family.
Equations
- GapCVP.Core.sourceSATFamilyFieldMatrix F points variablePlace momentBudget family = LinearMap.toMatrix' (GapCVP.Core.sourceSATFamilyLinearMap✝ F points variablePlace momentBudget family)
Instances For
GapCVP reduction support.
Equations
- One or more equations did not get rendered due to their size.
Instances For
GapCVP reduction support.
Equations
- One or more equations did not get rendered due to their size.
Instances For
GapCVP reduction support.
Equations
- GapCVP.Core.sourceSATPuncturedGrid F variablePlace = GapCVP.Core.sourcePuncturedGrid (Finset.image variablePlace Finset.univ)
Instances For
GapCVP reduction support.
Equations
- GapCVP.Core.sourceFormulaField encodingLength F = GapCVP.Core.SourceFiniteField (GapCVP.Core.sourceSizeParameter encodingLength F)
Instances For
GapCVP reduction support.
Equations
- GapCVP.Core.sourceActiveLocalTuple F assignment hsatisfies clause = (F.clauses.get clause).satisfyingLocalTupleOfAssignment assignment ⋯
Instances For
GapCVP reduction support.
Equations
- One or more equations did not get rendered due to their size.