Documentation

Complexity.Algorithms.WordRAM.MatrixMultiplication.Schonhage.Pruned.Weight

A finite trace weight for the native controller's potential #

Main definitions #

Main results #

This weight is a mathematical potential, not an assumed execution-time certificate. A separate native execution proof must show that actual instructions decrease it sufficiently.

Weighting each call by its request count plus one pays for scans and fixed controller work.

Instances For

    A timestamp budget for a node with n levels remaining. A leaf scans no children; an internal node scans ten children, each of which may use its own recursive budget.

    Instances For

      Ten fresh child scans and all ten recursive budgets fit in the parent's allowance.

      Every partial traversal of the ten children fits the same concrete timestamp allowance.

      The timestamp budget is bounded by twice the original leaf-array size.

      The weight of the zero-depth root, including the empty-query boundary.

      The existing leaf/passed-set theorem bounds this potential without a runtime assumption.

      Potential contributed by the child subtrees with numerical labels below k. This is a finite sum of mathematical trace weights, not an assumed execution-time bound.

      Instances For

        After all ten terms, the child-prefix potential is exactly the recursive part of the existing mathematical trace weight, in the program's unchanged numerical term order.

        theorem Cslib.Algorithms.WordRAM.MatrixMultiplication.Schonhage.PrunedQuery.node_local_cost_le (N : ℕ) :
        7 * N + 30 + 10 * (20 * N + 44 + (31 * N + 31)) + 28 ≤ 4096 * (N + 1)

        The complete local controller work fits within the root summand of traceWeight. The terms account for entry, ten scan/push/accumulate pairs, return, and all loop controls. Empty children use less work than the displayed pair. Child recursive work is separate.