Documentation

HexBerlekampZassenhausMathlib.Lattice.CutProjection

Projection onto the first r coordinates as a -linear map.

Equations
Instances For
    @[simp]
    theorem HexBerlekampZassenhausMathlib.BHKS.projFirst_apply (r n : ) (w : Fin (r + n)) (i : Fin r) :
    (projFirst r n) w i = w (Fin.castAdd n i)

    Application rule for the first-block projection.

    A retained prefix row, projected to its first block, is a generator of the executable projected integer row span.

    Every executable projected row comes from a retained row of the traced LLL-reduced basis, and is exactly that row's first-coordinate block.

    Build CutProjectionHypotheses from any per-support short vector in the BHKS row lattice.

    The vector may include nonzero diagonal-period row coefficients. The prefix survivor-span lemma only needs lattice membership plus the tight cut-radius bound, and the final projection only needs the first block to be the support indicator.

    @[simp]

    intVectorToRat of the zero vector is the zero rational vector.

    @[simp]

    intVectorToRat commutes with pointwise addition.

    @[simp]

    intVectorToRat of an integer-scalar multiple is the rational-cast scalar times the rational vector.

    Membership in the integer span carries over to membership of the rational-cast vector in the rational span of the rational-cast generators.

    The rational projected row is the pointwise rational cast of the integer projected row. Both projectedRowsRatMatrix and projectedRowsIntMatrix read the same underlying L.projectedRows array; the only difference is the codomain.

    The range of the rational projected rows is the image of the range of the integer projected rows under intVectorToRat.