Conversion between raw circuits and fixed-width descriptions -- definitions #
This module encodes each bounded topologically ordered raw circuit into the
fixed gate-slot representation. Active slots contain fixed-width little-endian
references and all inactive slots are zero. The inverse direction is the
Description.toRawCircuit operation from the core fixed-width layer.
A natural number truncated to one fixed-width little-endian reference word.
Equations
- Complexity.CircuitCode.FixedWidth.GateSlot.referenceBits width value = Complexity.BitString.ofList (width.toBitsLE value) ⋯
Instances For
Encode one raw gate into a fixed-width slot. References outside the word range are truncated; bounded well-formed circuits never take that path.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Canonical fixed-slot description of a raw circuit within gateBound.
Slots after the circuit's final gate are all zero.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Valid fixed-width descriptions at one arity and gate bound.
Equations
- Complexity.CircuitCode.FixedWidth.ValidDescription inputWidth gateBound = { description : Complexity.CircuitCode.FixedWidth.Description inputWidth gateBound // description.WellFormed }
Instances For
Equations
- One or more equations did not get rendered due to their size.
Equations
- Complexity.CircuitCode.FixedWidth.instDecidableEqValidDescription inputWidth gateBound = Complexity.CircuitCode.FixedWidth.instDecidableEqValidDescription._aux_1 inputWidth gateBound
Nonempty topologically ordered raw circuits within one gate bound.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
- Complexity.CircuitCode.FixedWidth.instDecidableEqBoundedRawCircuit inputWidth gateBound = Complexity.CircuitCode.FixedWidth.instDecidableEqBoundedRawCircuit._aux_1 inputWidth gateBound