Documentation

Complexitylib.Classes.Randomized.Hashing.Affine.Circuit.Defs

Circuit fragments for affine Boolean forms -- definitions #

This module compiles affine Boolean forms over existing circuit wires. Each row uses one shared AND gate per coefficient/input pair followed by the linear-size parity fragment. The multi-row builder appends a linear threshold test deciding whether every affine output bit is zero.

def Complexity.PairwiseIndependentHash.AffineCircuit.linearValue {width : } (coefficients input : BitString width) (constant : Bool) :

Semantic value of one affine Boolean form.

Equations
  • One or more equations did not get rendered due to their size.
Instances For

    One product gate per coefficient/input coordinate.

    Equations
    Instances For
      def Complexity.PairwiseIndependentHash.AffineCircuit.productWire (available : ) {width : } (coordinate : Fin width) :

      Wire emitted for one coefficient/input product.

      Equations
      Instances For
        def Complexity.PairwiseIndependentHash.AffineCircuit.parityRefs (available constantRef : ) {width : } :
        Fin (width + 1)

        Inputs to the parity stage: all product wires followed by the constant coefficient.

        Equations
        Instances For

          Exact gate count of one compiled affine Boolean form.

          Equations
          Instances For

            Absolute wire carrying the compiled affine-form value.

            Equations
            Instances For
              def Complexity.PairwiseIndependentHash.AffineCircuit.compileLinearRaw (available : ) {width : } (coefficientRefs inputRefs : Fin width) (constantRef : ) :

              Compile one affine Boolean form over existing coefficient, input, and constant wires.

              Equations
              • One or more equations did not get rendered due to their size.
              Instances For

                Wire count available before compiling the selected affine row.

                Equations
                Instances For
                  def Complexity.PairwiseIndependentHash.AffineCircuit.rowOutputWire (available width : ) {rowCount : } (row : Fin rowCount) :

                  Absolute output wire of one row in a sequential affine matrix build.

                  Equations
                  • One or more equations did not get rendered due to their size.
                  Instances For
                    def Complexity.PairwiseIndependentHash.AffineCircuit.compileRowsRaw (available width rowCount : ) :
                    (Fin rowCountFin (width + 1))(Fin width)CircuitCode.RawCircuit

                    Compile every row of an affine Boolean matrix, retaining one output wire per row.

                    Equations
                    Instances For

                      Boolean value asserting that every coordinate of a fixed-width output is zero.

                      Equations
                      Instances For

                        Wire count available after all affine rows have been compiled.

                        Equations
                        Instances For

                          Exact gate count of the full affine-zero fragment.

                          Equations
                          Instances For

                            Absolute wire carrying the full affine-zero decision.

                            Equations
                            • One or more equations did not get rendered due to their size.
                            Instances For
                              def Complexity.PairwiseIndependentHash.AffineCircuit.compileZeroRaw (available width rowCount : ) (coefficientRefs : Fin rowCountFin (width + 1)) (inputRefs : Fin width) :

                              Compile all affine rows and return true exactly when every row is zero.

                              Equations
                              • One or more equations did not get rendered due to their size.
                              Instances For