OAI/Combinatorics/LowSpaceSubsetSum/Streams/CountedSort.lean
11 declarations, 0 contain sorry, 0 declared as axioms
A counted implementation of the sort used by the streams
The merge follows each comparison branch and counts its steps. The bounded recursive sort is exactly List.mergeSort once its depth accommodates the input length. Its ledger includes list-length/split scans and merge work, giving a linear cost per recursion level, without a quadratic sorting bound.
- def
OAI.LowSpaceSubsetSum.CountedSort.mergeline 21 - theorem
OAI.LowSpaceSubsetSum.CountedSort.merge_valueline 34 - theorem
OAI.LowSpaceSubsetSum.CountedSort.merge_stepsline 44 - def
OAI.LowSpaceSubsetSum.CountedSort.runline 62 - theorem
OAI.LowSpaceSubsetSum.CountedSort.run_lengthline 74 - theorem
OAI.LowSpaceSubsetSum.CountedSort.run_valueline 89 - theorem
OAI.LowSpaceSubsetSum.CountedSort.run_stepsline 123 - def
OAI.LowSpaceSubsetSum.CountedSort.sortline 149 - theorem
OAI.LowSpaceSubsetSum.CountedSort.sort_valueline 152 - theorem
OAI.LowSpaceSubsetSum.CountedSort.sort_stepsline 156 - theorem
OAI.LowSpaceSubsetSum.CountedSort.sort_steps_of_index_bitsline 160