Linear forms on windows of the answers #
The linear-constraints processor of the tailored question reduction writes its constraints as
linear forms on fixed windows of the two answers: a register sits at a known offset of the
re-encoded answer (MIPRE.Tailored.Intro.enc). This file is the arithmetic of that:
dotL c v, theF₂inner product of two bit strings, andsatisfies_append_iff: the constraintα ++ β ++ [γ]holds ofa ++ b ++ [true]exactly when⟨α, a⟩ + ⟨β, b⟩ = γ;place n off w, the vector of lengthncarryingwat offsetoff, anddotL_place: its inner product withais that ofwwith the window ofaatoff;eqCons: the constraints that a window ofaequals a window ofb, bit by bit, andeqCons_iff;guardCons b: no constraint when the readable conditionbholds, the rejecting one otherwise.
The inner product #
The F₂ inner product of two bit strings, on their common prefix.
Equations
- MIPRE.Tailored.Intro.dotL (x_2 :: c) (y :: v) = (x_2 && y ^^ MIPRE.Tailored.Intro.dotL c v)
- MIPRE.Tailored.Intro.dotL x✝¹ x✝ = false
Instances For
A constraint on the two answers and the affine coordinate, read.
Vectors placed at an offset #
The vector of length n with w at offset off and zeros elsewhere (when it fits).
Equations
- MIPRE.Tailored.Intro.place n off w = List.replicate off false ++ w ++ List.replicate (n - off - List.length w) false
Instances For
The inner product with a placed vector is that with the window.
Equality of windows #
The unit vector eᵢ of length m.
Equations
Instances For
The constraints a_{oa+i} = b_{ob+i} for i < m, on answers of lengths la, lb.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The window equality constraints hold exactly when the windows are equal.
Readable guards #
No constraint when the readable condition holds, the rejecting one otherwise.