Depth-sensitive counting #
Instead of enumerating circuit syntax, this file closes the set of scalar
functions under one operation layer. Every depth-d circuit output belongs to
that closure, yielding interpretation-sensitive depth lower bounds.
Semantic closure by depth #
Coordinate projections, which are the scalar functions available at depth zero.
Equations
- Algebraic.Depth.projections n = Finset.image (fun (input : Fin n) (values : Fin n → U) => values input) Finset.univ
Instances For
Pointwise application of one interpreted operation to scalar functions.
Equations
- Algebraic.Depth.applyOperation interpretation op arguments input = interpretation op fun (k : Fin (σ.Arity op)) => arguments k input
Instances For
Scalar functions obtained by applying one primitive operation to functions
from prior.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Scalar functions available by depth d, with projections retained at
every layer.
Equations
- Algebraic.Depth.functions interpretation n 0 = Algebraic.Depth.projections n
- Algebraic.Depth.functions interpretation n depth.succ = Algebraic.Depth.projections n ∪ Algebraic.Depth.operationClosure interpretation (Algebraic.Depth.functions interpretation n depth)
Instances For
Applying an operation to depth-d functions produces a depth-d + 1
function.
Soundness for programs and circuits #
Multi-output targets assembled from scalar functions available by depth.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Exact and numeric lower-bound criteria #
Interpretation-independent numeric recurrence bounding the number of scalar functions at each depth.
Equations
- Algebraic.Depth.countBound σ n 0 = n
- Algebraic.Depth.countBound σ n depth.succ = n + σ.lineCount (Algebraic.Depth.countBound σ n depth)
Instances For
A family exceeding the semantic closure count contains a depth-hard target.
Purely numeric depth criterion, derived from Depth.countBound.
Full-universe depth lower bound from the exact semantic closure count.
Full-universe depth lower bound from the numeric recurrence.
Arity-only recurrence #
Arity-only recurrence bounding the interpretation-independent depth closure.
Equations
- Algebraic.Depth.coarseCount σ r n 0 = n
- Algebraic.Depth.coarseCount σ r n depth.succ = n + Fintype.card σ.Op * (Algebraic.Depth.coarseCount σ r n depth + 1) ^ r
Instances For
Boolean specialization of the arity-only depth recurrence.