OAI/Algebra/DepthFive/BlockCircuitValue.lean
7 declarations, 0 contain sorry, 0 declared as axioms
- theorem
OAI.Problem335.BlockData.indexedCircuit_bottomValueline 15 - theorem
OAI.Problem335.BlockData.indexedCircuit_lowerValueline 20 - theorem
OAI.Problem335.BlockData.indexedCircuit_middleValueline 26 - theorem
OAI.Problem335.BlockData.indexedCircuit_upperValueline 35 - theorem
OAI.Problem335.BlockData.indexedCircuit_circuitValueline 45Source documentation
The block circuit computes the corresponding entry of the product of block matrices.
theorem indexedCircuit_circuitValue (K : Type*) [CommSemiring K] (blocks : List (List (Fin n))) (z : Fin n) : (indexedCircuit K blocks z).circuitValue = ((blocks.map (immBlock K n)).prod) z z := by …Mentions: OAI.Problem335.BlockData.indexedCircuit, OAI.Problem335.circuitValue, OAI.Problem335.immBlock
- theorem
OAI.Problem335.BlockData.circuit_valueline 61Source documentation
Semantic correctness after converting all gate indices to
Fin.theorem circuit_value (K : Type*) [CommSemiring K] (blocks : List (List (Fin n))) (z : Fin n) : Problem335.circuitValue (circuit K blocks z) = ((blocks.map (immBlock K n)).prod) z z := by …Mentions: OAI.Problem335.circuitValue, OAI.Problem335.BlockData.circuit, OAI.Problem335.immBlock
- theorem
OAI.Problem335.BlockData.circuit_value_eq_immline 69Source documentation
Any partition of the layers produces a circuit computing the qualified IMM polynomial.
theorem circuit_value_eq_imm (K : Type*) [CommSemiring K] (hn : 0 < n) (blocks : List (List (Fin n))) (hblocks : blocks.flatten = List.finRange n) : Problem335.circuitValue (circuit K blocks ⟨0, hn⟩) = imm K n := by …Mentions: OAI.Problem335.circuitValue, OAI.Problem335.BlockData.circuit, OAI.Problem335.imm