vcgen versus specification normalization

Hover a bar, cell, or line for its numbers.

At a glance

Two scoreboards over every case: how fast each route·tier is at a size most of them reach, and how its time grows with n.

Total time at each case's largest common size Median total time per run at the largest n at which most route·tiers finished. The fastest in each column is bold, and the color is each cell's slowdown against it. × marks a failure at this size, or with @n at the smaller size n, after which larger sizes were skipped; hover for the reason. slowdown against the fastest ≤ 1.25× ≤ 2× ≤ 4× ≤ 10× ≤ 30× > 30× Complete proofs Generation only AddSubCancel n = 2200 AddSubCancel Deep n = 900 LetBinding n = 100 ReaderState n = 100 PurePrecond n = 2400 GetThrowSet n = 200 DiteSplit n = 100 MatchSplit n = 100 ReaderState n = 2600 GetThrowSet n = 800 MatchSplit n = 1500 vcgen hand-written-specs 1.67 s vcgen · hand-written-specs — AddSubCancel, complete proofs, n = 2200 Total 1.67 s Prepare 106 ms · Generate 288 ms · Grind 363 ms · Share 522 ms · Kernel 351 ms · Instantiate 30.6 ms 1 VC · peak 1.48 GB 3.09× the fastest at this size 746 ms vcgen · hand-written-specs — AddSubCancelDeep, complete proofs, n = 900 Total 746 ms Prepare 87.8 ms · Generate 136 ms · Grind 146 ms · Share 117 ms · Kernel 245 ms · Instantiate 9.96 ms 1 VC · peak 1.38 GB 3.39× the fastest at this size 119 ms vcgen · hand-written-specs — LetBinding, complete proofs, n = 100 Total 119 ms Prepare 12.2 ms · Generate 18.9 ms · Grind 18.9 ms · Share 17.1 ms · Kernel 48.8 ms · Instantiate 2.59 ms 1 VC · peak 1.31 GB 4.11× the fastest at this size 578 ms vcgen · hand-written-specs — ReaderState, complete proofs, n = 100 Total 578 ms Prepare 9.06 ms · Generate 23.1 ms · Grind 518 ms · Share 8.76 ms · Kernel 17.5 ms · Instantiate 1.09 ms 1 VC · peak 1.37 GB 1.09× the fastest at this size 899 ms vcgen · hand-written-specs — PurePrecond, complete proofs, n = 2400 Total 899 ms Prepare 57.6 ms · Generate 263 ms · Grind 0.06 ms · Share 296 ms · Kernel 237 ms · Instantiate 41.5 ms 0 VCs · peak 1.44 GB 1.00× the fastest at this size 35.2 s vcgen · hand-written-specs — GetThrowSet, complete proofs, n = 200 Total 35.2 s Prepare 19.3 ms · Generate 41.0 ms · Grind 35.0 s · Share 65.3 ms · Kernel 56.3 ms · Instantiate 10.7 ms 201 VCs · peak 1.36 GB 132.19× the fastest at this size 2.27 s vcgen · hand-written-specs — DiteSplit, complete proofs, n = 100 Total 2.27 s Prepare 15.7 ms · Generate 34.5 ms · Grind 2.14 s · Share 30.1 ms · Kernel 39.7 ms · Instantiate 5.71 ms 101 VCs · peak 1.35 GB 5.13× the fastest at this size 10.3 s vcgen · hand-written-specs — MatchSplit, complete proofs, n = 100 Total 10.3 s Prepare 9.04 ms · Generate 27.2 ms · Grind 10.2 s · Share 13.2 ms · Kernel 43.1 ms · Instantiate 2.24 ms 101 VCs · peak 1.40 GB 221.48× the fastest at this size 1.63 s vcgen · hand-written-specs — ReaderState, generation only, n = 2600 Total 1.63 s Prepare 75.5 ms · Generate 402 ms · Grind 0.11 ms · Share 588 ms · Kernel 508 ms · Instantiate 45.0 ms 1 VC · peak 1.53 GB 6.16× the fastest at this size 3.69 s vcgen · hand-written-specs — GetThrowSet, generation only, n = 800 Total 3.69 s Prepare 58.5 ms · Generate 129 ms · Grind 1.42 ms · Share 2.85 s · Kernel 453 ms · Instantiate 205 ms 801 VCs · peak 1.65 GB 31.76× the fastest at this size 648 ms vcgen · hand-written-specs — MatchSplit, generation only, n = 1500 Total 648 ms Prepare 45.3 ms · Generate 188 ms · Grind 2.91 ms · Share 217 ms · Kernel 172 ms · Instantiate 17.3 ms 1501 VCs · peak 1.40 GB 4.50× the fastest at this size library 4.08 s vcgen · library — AddSubCancel, complete proofs, n = 2200 Total 4.08 s Prepare 103 ms · Generate 2.49 s · Grind 435 ms · Share 658 ms · Kernel 389 ms · Instantiate 50.4 ms 1 VC · peak 1.56 GB 7.57× the fastest at this size 15.6 s vcgen · library — AddSubCancelDeep, complete proofs, n = 900 Total 15.6 s Prepare 88.7 ms · Generate 7.86 s · Grind 259 ms · Share 6.33 s · Kernel 766 ms · Instantiate 342 ms 1 VC · peak 2.30 GB 71.06× the fastest at this size 215 ms vcgen · library — LetBinding, complete proofs, n = 100 Total 215 ms Prepare 12.1 ms · Generate 111 ms · Grind 19.1 ms · Share 17.8 ms · Kernel 51.9 ms · Instantiate 2.85 ms 1 VC · peak 1.31 GB 7.44× the fastest at this size 1.01 s vcgen · library — ReaderState, complete proofs, n = 100 Total 1.01 s Prepare 8.92 ms · Generate 343 ms · Grind 541 ms · Share 75.0 ms · Kernel 31.8 ms · Instantiate 9.11 ms 1 VC · peak 1.35 GB 1.91× the fastest at this size 900 ms vcgen · library — PurePrecond, complete proofs, n = 2400 Total 900 ms Prepare 58.2 ms · Generate 267 ms · Grind 0.06 ms · Share 296 ms · Kernel 236 ms · Instantiate 41.5 ms 0 VCs · peak 1.44 GB 1.00× the fastest at this size 35.8 s vcgen · library — GetThrowSet, complete proofs, n = 200 Total 35.8 s Prepare 19.4 ms · Generate 345 ms · Grind 35.2 s · Share 185 ms · Kernel 70.6 ms · Instantiate 21.0 ms 201 VCs · peak 1.41 GB 134.61× the fastest at this size 2.70 s vcgen · library — DiteSplit, complete proofs, n = 100 Total 2.70 s Prepare 15.7 ms · Generate 329 ms · Grind 2.18 s · Share 107 ms · Kernel 53.4 ms · Instantiate 14.3 ms 101 VCs · peak 1.39 GB 6.11× the fastest at this size 10.6 s vcgen · library — MatchSplit, complete proofs, n = 100 Total 10.6 s Prepare 8.90 ms · Generate 177 ms · Grind 10.3 s · Share 45.9 ms · Kernel 51.5 ms · Instantiate 6.68 ms 101 VCs · peak 1.41 GB 226.81× the fastest at this size 20.0 s vcgen · library — ReaderState, generation only, n = 2600 Total 20.0 s Prepare 75.7 ms · Generate 11.2 s · Grind 0.12 ms · Share 7.19 s · Kernel 1.08 s · Instantiate 435 ms 1 VC · peak 2.60 GB 75.68× the fastest at this size 6.46 s vcgen · library — GetThrowSet, generation only, n = 800 Total 6.46 s Prepare 58.7 ms · Generate 1.52 s · Grind 2.54 ms · Share 3.98 s · Kernel 627 ms · Instantiate 269 ms 801 VCs · peak 1.82 GB 55.59× the fastest at this size 5.46 s vcgen · library — MatchSplit, generation only, n = 1500 Total 5.46 s Prepare 45.4 ms · Generate 3.10 s · Grind 5.37 ms · Share 1.94 s · Kernel 252 ms · Instantiate 115 ms 1501 VCs · peak 1.68 GB 37.92× the fastest at this size vcgen-finish hand-written-specs 1.97 s vcgen-finish · hand-written-specs — AddSubCancel, complete proofs, n = 2200 Total 1.97 s Prepare 105 ms · Generate 515 ms · Grind 0.06 ms · Share 842 ms · Kernel 443 ms · Instantiate 33.5 ms 0 VCs · peak 1.47 GB 3.65× the fastest at this size 796 ms vcgen-finish · hand-written-specs — AddSubCancelDeep, complete proofs, n = 900 Total 796 ms Prepare 88.8 ms · Generate 231 ms · Grind 0.05 ms · Share 185 ms · Kernel 277 ms · Instantiate 10.6 ms 0 VCs · peak 1.39 GB 3.61× the fastest at this size 127 ms vcgen-finish · hand-written-specs — LetBinding, complete proofs, n = 100 Total 127 ms Prepare 12.1 ms · Generate 30.7 ms · Grind 0.05 ms · Share 21.4 ms · Kernel 59.7 ms · Instantiate 2.84 ms 0 VCs · peak 1.32 GB 4.40× the fastest at this size × error @10 vcgen-finish · hand-written-specs — ReaderState, complete proofs, n = 100 error: `finish` failed, at n = 10; larger sizes skipped 1.26 s vcgen-finish · hand-written-specs — PurePrecond, complete proofs, n = 2400 Total 1.26 s Prepare 59.9 ms · Generate 596 ms · Grind 0.06 ms · Share 308 ms · Kernel 241 ms · Instantiate 46.6 ms 0 VCs · peak 1.46 GB 1.40× the fastest at this size 1.18 s vcgen-finish · hand-written-specs — GetThrowSet, complete proofs, n = 200 Total 1.18 s Prepare 19.1 ms · Generate 560 ms · Grind 0.06 ms · Share 136 ms · Kernel 446 ms · Instantiate 14.2 ms 0 VCs · peak 1.37 GB 4.43× the fastest at this size 442 ms vcgen-finish · hand-written-specs — DiteSplit, complete proofs, n = 100 Total 442 ms Prepare 15.8 ms · Generate 100 ms · Grind 0.05 ms · Share 192 ms · Kernel 119 ms · Instantiate 14.0 ms 0 VCs · peak 1.32 GB 1.00× the fastest at this size 4.56 s vcgen-finish · hand-written-specs — MatchSplit, complete proofs, n = 100 Total 4.56 s Prepare 8.88 ms · Generate 370 ms · Grind 0.05 ms · Share 1.34 s · Kernel 2.82 s · Instantiate 11.3 ms 0 VCs · peak 1.79 GB 97.56× the fastest at this size library 4.46 s vcgen-finish · library — AddSubCancel, complete proofs, n = 2200 Total 4.46 s Prepare 110 ms · Generate 2.80 s · Grind 0.06 ms · Share 973 ms · Kernel 510 ms · Instantiate 55.0 ms 0 VCs · peak 1.57 GB 8.27× the fastest at this size 15.7 s vcgen-finish · library — AddSubCancelDeep, complete proofs, n = 900 Total 15.7 s Prepare 88.8 ms · Generate 7.98 s · Grind 0.06 ms · Share 6.45 s · Kernel 769 ms · Instantiate 347 ms 0 VCs · peak 2.33 GB 71.16× the fastest at this size 225 ms vcgen-finish · library — LetBinding, complete proofs, n = 100 Total 225 ms Prepare 12.2 ms · Generate 124 ms · Grind 0.06 ms · Share 22.2 ms · Kernel 63.0 ms · Instantiate 3.07 ms 0 VCs · peak 1.31 GB 7.77× the fastest at this size × error @10 vcgen-finish · library — ReaderState, complete proofs, n = 100 error: `finish` failed, at n = 10; larger sizes skipped 1.27 s vcgen-finish · library — PurePrecond, complete proofs, n = 2400 Total 1.27 s Prepare 58.8 ms · Generate 605 ms · Grind 0.06 ms · Share 311 ms · Kernel 241 ms · Instantiate 47.9 ms 0 VCs · peak 1.45 GB 1.41× the fastest at this size 1.65 s vcgen-finish · library — GetThrowSet, complete proofs, n = 200 Total 1.65 s Prepare 19.3 ms · Generate 885 ms · Grind 0.06 ms · Share 257 ms · Kernel 468 ms · Instantiate 22.9 ms 0 VCs · peak 1.41 GB 6.22× the fastest at this size 929 ms vcgen-finish · library — DiteSplit, complete proofs, n = 100 Total 929 ms Prepare 15.7 ms · Generate 413 ms · Grind 0.06 ms · Share 345 ms · Kernel 133 ms · Instantiate 22.5 ms 0 VCs · peak 1.38 GB 2.10× the fastest at this size 4.79 s vcgen-finish · library — MatchSplit, complete proofs, n = 100 Total 4.79 s Prepare 9.16 ms · Generate 538 ms · Grind 0.06 ms · Share 1.44 s · Kernel 2.77 s · Instantiate 16.6 ms 0 VCs · peak 1.82 GB 102.56× the fastest at this size vcgen-finish-simp hand-written-specs 266 ms vcgen-finish-simp · hand-written-specs — GetThrowSet, complete proofs, n = 200 Total 266 ms Prepare 19.4 ms · Generate 94.2 ms · Grind 0.06 ms · Share 35.5 ms · Kernel 113 ms · Instantiate 3.23 ms 0 VCs · peak 1.31 GB 1.00× the fastest at this size library 688 ms vcgen-finish-simp · library — GetThrowSet, complete proofs, n = 200 Total 688 ms Prepare 19.5 ms · Generate 413 ms · Grind 0.06 ms · Share 118 ms · Kernel 127 ms · Instantiate 10.7 ms 0 VCs · peak 1.37 GB 2.59× the fastest at this size sym – 3.95 s sym — AddSubCancel, complete proofs, n = 2200 Total 3.95 s Prepare 105 ms · Generate 1.26 s · Grind 0.06 ms · Share 1.94 s · Kernel 632 ms · Instantiate 28.5 ms 0 VCs · peak 1.57 GB 7.32× the fastest at this size 1.50 s sym — AddSubCancelDeep, complete proofs, n = 900 Total 1.50 s Prepare 92.3 ms · Generate 587 ms · Grind 0.06 ms · Share 473 ms · Kernel 336 ms · Instantiate 9.79 ms 0 VCs · peak 1.41 GB 6.81× the fastest at this size normalize custom-monad 575 ms normalize · custom-monad — AddSubCancel, complete proofs, n = 2200 Total 575 ms; + one-time 23.9 ms = 599 ms Prepare 0.09 ms · Generate 131 ms · Grind 406 ms · Share 0.10 ms · Kernel 37.0 ms · Instantiate 0.07 ms 1 VC · peak 1.37 GB 1.07× the fastest at this size 223 ms normalize · custom-monad — AddSubCancelDeep, complete proofs, n = 900 Total 223 ms; + one-time 38.3 ms = 261 ms Prepare 0.09 ms · Generate 58.3 ms · Grind 148 ms · Share 0.10 ms · Kernel 16.3 ms · Instantiate 0.07 ms 1 VC · peak 1.31 GB 1.01× the fastest at this size 29.5 ms normalize · custom-monad — LetBinding, complete proofs, n = 100 Total 29.5 ms; + one-time 18.4 ms = 48.0 ms Prepare 0.08 ms · Generate 7.56 ms · Grind 19.5 ms · Share 0.09 ms · Kernel 1.99 ms · Instantiate 0.05 ms 1 VC · peak 1.31 GB 1.02× the fastest at this size 529 ms normalize · custom-monad — ReaderState, complete proofs, n = 100 Total 529 ms; + one-time 24.7 ms = 554 ms Prepare 0.08 ms · Generate 8.72 ms · Grind 518 ms · Share 0.10 ms · Kernel 2.30 ms · Instantiate 0.07 ms 1 VC · peak 1.37 GB 1.00× the fastest at this size 43.2 s normalize · custom-monad — PurePrecond, complete proofs, n = 2400 Total 43.2 s; + one-time 19.0 ms = 43.3 s Prepare 0.08 ms · Generate 105 ms · Grind 43.1 s · Share 0.10 ms · Kernel 37.8 ms · Instantiate 0.07 ms 1 VC · peak 7.37 GB 48.11× the fastest at this size 31.7 s normalize · custom-monad — GetThrowSet, complete proofs, n = 200 Total 31.7 s; + one-time 31.1 ms = 31.7 s Prepare 0.08 ms · Generate 21.0 ms · Grind 31.7 s · Share 0.10 ms · Kernel 5.96 ms · Instantiate 0.07 ms 1 VC · peak 2.55 GB 119.13× the fastest at this size 1.89 s normalize · custom-monad — DiteSplit, complete proofs, n = 100 Total 1.89 s; + one-time 32.1 ms = 1.92 s Prepare 0.08 ms · Generate 16.1 ms · Grind 1.87 s · Share 0.10 ms · Kernel 4.01 ms · Instantiate 0.07 ms 1 VC · peak 1.36 GB 4.28× the fastest at this size 118 ms normalize · custom-monad — MatchSplit, complete proofs, n = 100 Total 118 ms; + one-time 28.6 ms = 146 ms Prepare 0.08 ms · Generate 7.34 ms · Grind 108 ms · Share 0.09 ms · Kernel 2.28 ms · Instantiate 0.05 ms 1 VC · peak 1.31 GB 2.52× the fastest at this size 277 ms normalize · custom-monad — ReaderState, generation only, n = 2600 Total 277 ms; + one-time 24.7 ms = 301 ms Prepare 0.08 ms · Generate 208 ms · Grind 0.22 ms · Share 9.03 ms · Kernel 57.8 ms · Instantiate 0.41 ms 1 VC · peak 1.31 GB 1.05× the fastest at this size 116 ms normalize · custom-monad — GetThrowSet, generation only, n = 800 Total 116 ms; + one-time 31.1 ms = 147 ms Prepare 0.08 ms · Generate 81.7 ms · Grind 0.08 ms · Share 8.11 ms · Kernel 25.9 ms · Instantiate 0.07 ms 1 VC · peak 1.31 GB 1.00× the fastest at this size 144 ms normalize · custom-monad — MatchSplit, generation only, n = 1500 Total 144 ms; + one-time 28.6 ms = 173 ms Prepare 0.08 ms · Generate 102 ms · Grind 0.09 ms · Share 5.09 ms · Kernel 36.5 ms · Instantiate 0.07 ms 1 VC · peak 1.31 GB 1.00× the fastest at this size hand-written-specs 659 ms normalize · hand-written-specs — AddSubCancel, complete proofs, n = 2200 Total 659 ms; + one-time 26.1 ms = 686 ms Prepare 0.09 ms · Generate 196 ms · Grind 376 ms · Share 0.11 ms · Kernel 86.3 ms · Instantiate 0.07 ms 1 VC · peak 1.37 GB 1.22× the fastest at this size 263 ms normalize · hand-written-specs — AddSubCancelDeep, complete proofs, n = 900 Total 263 ms; + one-time 41.7 ms = 305 ms Prepare 0.09 ms · Generate 83.4 ms · Grind 146 ms · Share 0.13 ms · Kernel 32.8 ms · Instantiate 0.07 ms 1 VC · peak 1.31 GB 1.19× the fastest at this size 34.2 ms normalize · hand-written-specs — LetBinding, complete proofs, n = 100 Total 34.2 ms; + one-time 20.1 ms = 54.3 ms Prepare 0.09 ms · Generate 10.5 ms · Grind 19.5 ms · Share 0.10 ms · Kernel 3.76 ms · Instantiate 0.05 ms 1 VC · peak 1.31 GB 1.18× the fastest at this size 534 ms normalize · hand-written-specs — ReaderState, complete proofs, n = 100 Total 534 ms; + one-time 27.5 ms = 561 ms Prepare 0.09 ms · Generate 12.5 ms · Grind 517 ms · Share 0.10 ms · Kernel 3.36 ms · Instantiate 0.07 ms 1 VC · peak 1.37 GB 1.01× the fastest at this size 43.4 s normalize · hand-written-specs — PurePrecond, complete proofs, n = 2400 Total 43.4 s; + one-time 19.7 ms = 43.4 s Prepare 0.08 ms · Generate 137 ms · Grind 43.2 s · Share 0.11 ms · Kernel 50.3 ms · Instantiate 0.07 ms 1 VC · peak 7.37 GB 48.24× the fastest at this size × error normalize · hand-written-specs — GetThrowSet, complete proofs, n = 200 error: `simp` failed: maximum number of steps exceeded 2.01 s normalize · hand-written-specs — DiteSplit, complete proofs, n = 100 Total 2.01 s; + one-time 36.0 ms = 2.05 s Prepare 0.08 ms · Generate 20.0 ms · Grind 1.98 s · Share 0.12 ms · Kernel 10.9 ms · Instantiate 0.07 ms 1 VC · peak 1.36 GB 4.56× the fastest at this size 46.7 ms normalize · hand-written-specs — MatchSplit, complete proofs, n = 100 Total 46.7 ms; + one-time 32.8 ms = 79.5 ms Prepare 0.09 ms · Generate 8.35 ms · Grind 34.5 ms · Share 0.11 ms · Kernel 3.22 ms · Instantiate 0.06 ms 1 VC · peak 1.31 GB 1.00× the fastest at this size 391 ms normalize · hand-written-specs — ReaderState, generation only, n = 2600 Total 391 ms; + one-time 27.5 ms = 419 ms Prepare 0.09 ms · Generate 298 ms · Grind 0.21 ms · Share 8.76 ms · Kernel 83.1 ms · Instantiate 0.41 ms 1 VC · peak 1.31 GB 1.48× the fastest at this size 176 ms normalize · hand-written-specs — GetThrowSet, generation only, n = 800 Total 176 ms; + one-time 35.1 ms = 211 ms Prepare 0.08 ms · Generate 102 ms · Grind 0.08 ms · Share 12.9 ms · Kernel 60.5 ms · Instantiate 0.06 ms 1 VC · peak 1.31 GB 1.51× the fastest at this size 173 ms normalize · hand-written-specs — MatchSplit, generation only, n = 1500 Total 173 ms; + one-time 32.8 ms = 206 ms Prepare 0.08 ms · Generate 115 ms · Grind 0.09 ms · Share 7.25 ms · Kernel 50.8 ms · Instantiate 0.07 ms 1 VC · peak 1.31 GB 1.20× the fastest at this size library 694 ms normalize · library — AddSubCancel, complete proofs, n = 2200 Total 694 ms; + one-time 26.2 ms = 720 ms Prepare 0.09 ms · Generate 222 ms · Grind 377 ms · Share 0.11 ms · Kernel 94.6 ms · Instantiate 0.07 ms 1 VC · peak 1.36 GB 1.29× the fastest at this size 361 ms normalize · library — AddSubCancelDeep, complete proofs, n = 900 Total 361 ms; + one-time 42.6 ms = 404 ms Prepare 0.09 ms · Generate 166 ms · Grind 146 ms · Share 0.13 ms · Kernel 47.9 ms · Instantiate 0.06 ms 1 VC · peak 1.31 GB 1.64× the fastest at this size 35.6 ms normalize · library — LetBinding, complete proofs, n = 100 Total 35.6 ms; + one-time 20.0 ms = 55.7 ms Prepare 0.08 ms · Generate 11.7 ms · Grind 19.5 ms · Share 0.10 ms · Kernel 3.89 ms · Instantiate 0.05 ms 1 VC · peak 1.31 GB 1.23× the fastest at this size 548 ms normalize · library — ReaderState, complete proofs, n = 100 Total 548 ms; + one-time 28.3 ms = 576 ms Prepare 0.09 ms · Generate 21.9 ms · Grind 519 ms · Share 0.11 ms · Kernel 5.00 ms · Instantiate 0.07 ms 1 VC · peak 1.37 GB 1.03× the fastest at this size 43.3 s normalize · library — PurePrecond, complete proofs, n = 2400 Total 43.3 s; + one-time 19.7 ms = 43.3 s Prepare 0.08 ms · Generate 136 ms · Grind 43.1 s · Share 0.11 ms · Kernel 50.0 ms · Instantiate 0.07 ms 1 VC · peak 7.37 GB 48.15× the fastest at this size × error normalize · library — GetThrowSet, complete proofs, n = 200 error: `simp` failed: maximum number of steps exceeded 2.01 s normalize · library — DiteSplit, complete proofs, n = 100 Total 2.01 s; + one-time 36.3 ms = 2.04 s Prepare 0.08 ms · Generate 22.6 ms · Grind 1.97 s · Share 0.12 ms · Kernel 10.9 ms · Instantiate 0.07 ms 1 VC · peak 1.36 GB 4.54× the fastest at this size 47.6 ms normalize · library — MatchSplit, complete proofs, n = 100 Total 47.6 ms; + one-time 33.2 ms = 80.9 ms Prepare 0.08 ms · Generate 8.83 ms · Grind 35.0 ms · Share 0.11 ms · Kernel 3.30 ms · Instantiate 0.06 ms 1 VC · peak 1.31 GB 1.02× the fastest at this size 707 ms normalize · library — ReaderState, generation only, n = 2600 Total 707 ms; + one-time 28.3 ms = 735 ms Prepare 0.09 ms · Generate 563 ms · Grind 0.20 ms · Share 8.84 ms · Kernel 132 ms · Instantiate 0.42 ms 1 VC · peak 1.32 GB 2.67× the fastest at this size 188 ms normalize · library — GetThrowSet, generation only, n = 800 Total 188 ms; + one-time 35.5 ms = 223 ms Prepare 0.08 ms · Generate 114 ms · Grind 0.08 ms · Share 12.6 ms · Kernel 60.9 ms · Instantiate 0.06 ms 1 VC · peak 1.31 GB 1.61× the fastest at this size 177 ms normalize · library — MatchSplit, generation only, n = 1500 Total 177 ms; + one-time 33.2 ms = 210 ms Prepare 0.09 ms · Generate 118 ms · Grind 0.09 ms · Share 7.25 ms · Kernel 50.8 ms · Instantiate 0.07 ms 1 VC · peak 1.31 GB 1.23× the fastest at this size normalize-sym custom-monad 540 ms normalize-sym · custom-monad — AddSubCancel, complete proofs, n = 2200 Total 540 ms; + one-time 23.9 ms = 564 ms Prepare 0.08 ms · Generate 124 ms · Grind 380 ms · Share 0.11 ms · Kernel 37.0 ms · Instantiate 0.06 ms 1 VC · peak 1.37 GB 1.00× the fastest at this size 220 ms normalize-sym · custom-monad — AddSubCancelDeep, complete proofs, n = 900 Total 220 ms; + one-time 38.3 ms = 259 ms Prepare 0.09 ms · Generate 56.6 ms · Grind 147 ms · Share 0.09 ms · Kernel 16.2 ms · Instantiate 0.07 ms 1 VC · peak 1.31 GB 1.00× the fastest at this size 28.9 ms normalize-sym · custom-monad — LetBinding, complete proofs, n = 100 Total 28.9 ms; + one-time 18.4 ms = 47.4 ms Prepare 0.08 ms · Generate 7.03 ms · Grind 19.4 ms · Share 0.09 ms · Kernel 2.00 ms · Instantiate 0.05 ms 1 VC · peak 1.31 GB 1.00× the fastest at this size 534 ms normalize-sym · custom-monad — ReaderState, complete proofs, n = 100 Total 534 ms; + one-time 24.7 ms = 559 ms Prepare 0.08 ms · Generate 8.47 ms · Grind 523 ms · Share 0.11 ms · Kernel 2.39 ms · Instantiate 0.07 ms 1 VC · peak 1.37 GB 1.01× the fastest at this size 43.5 s normalize-sym · custom-monad — PurePrecond, complete proofs, n = 2400 Total 43.5 s; + one-time 19.0 ms = 43.5 s Prepare 0.08 ms · Generate 138 ms · Grind 43.3 s · Share 0.10 ms · Kernel 38.2 ms · Instantiate 0.07 ms 1 VC · peak 7.37 GB 48.42× the fastest at this size 31.4 s normalize-sym · custom-monad — GetThrowSet, complete proofs, n = 200 Total 31.4 s; + one-time 31.1 ms = 31.5 s Prepare 0.08 ms · Generate 25.9 ms · Grind 31.4 s · Share 0.10 ms · Kernel 6.03 ms · Instantiate 0.07 ms 1 VC · peak 2.55 GB 118.16× the fastest at this size 1.91 s normalize-sym · custom-monad — DiteSplit, complete proofs, n = 100 Total 1.91 s; + one-time 32.1 ms = 1.94 s Prepare 0.08 ms · Generate 22.5 ms · Grind 1.88 s · Share 0.10 ms · Kernel 4.03 ms · Instantiate 0.07 ms 1 VC · peak 1.36 GB 4.33× the fastest at this size 124 ms normalize-sym · custom-monad — MatchSplit, complete proofs, n = 100 Total 124 ms; + one-time 28.6 ms = 153 ms Prepare 0.08 ms · Generate 14.7 ms · Grind 107 ms · Share 0.09 ms · Kernel 2.27 ms · Instantiate 0.05 ms 1 VC · peak 1.31 GB 2.66× the fastest at this size 264 ms normalize-sym · custom-monad — ReaderState, generation only, n = 2600 Total 264 ms; + one-time 24.7 ms = 289 ms Prepare 0.09 ms · Generate 201 ms · Grind 0.08 ms · Share 5.64 ms · Kernel 56.5 ms · Instantiate 0.42 ms 1 VC · peak 1.31 GB 1.00× the fastest at this size 139 ms normalize-sym · custom-monad — GetThrowSet, generation only, n = 800 Total 139 ms; + one-time 31.1 ms = 170 ms Prepare 0.08 ms · Generate 107 ms · Grind 0.09 ms · Share 5.63 ms · Kernel 25.7 ms · Instantiate 0.06 ms 1 VC · peak 1.31 GB 1.20× the fastest at this size 278 ms normalize-sym · custom-monad — MatchSplit, generation only, n = 1500 Total 278 ms; + one-time 28.6 ms = 307 ms Prepare 0.08 ms · Generate 234 ms · Grind 0.09 ms · Share 7.53 ms · Kernel 36.5 ms · Instantiate 0.07 ms 1 VC · peak 1.31 GB 1.93× the fastest at this size hand-written-specs 656 ms normalize-sym · hand-written-specs — AddSubCancel, complete proofs, n = 2200 Total 656 ms; + one-time 26.1 ms = 682 ms Prepare 0.09 ms · Generate 191 ms · Grind 378 ms · Share 0.10 ms · Kernel 86.5 ms · Instantiate 0.07 ms 1 VC · peak 1.37 GB 1.22× the fastest at this size 269 ms normalize-sym · hand-written-specs — AddSubCancelDeep, complete proofs, n = 900 Total 269 ms; + one-time 41.7 ms = 311 ms Prepare 0.10 ms · Generate 82.5 ms · Grind 148 ms · Share 0.12 ms · Kernel 37.2 ms · Instantiate 0.06 ms 1 VC · peak 1.31 GB 1.22× the fastest at this size 34.3 ms normalize-sym · hand-written-specs — LetBinding, complete proofs, n = 100 Total 34.3 ms; + one-time 20.1 ms = 54.3 ms Prepare 0.09 ms · Generate 10.5 ms · Grind 19.5 ms · Share 0.10 ms · Kernel 3.77 ms · Instantiate 0.05 ms 1 VC · peak 1.31 GB 1.19× the fastest at this size 533 ms normalize-sym · hand-written-specs — ReaderState, complete proofs, n = 100 Total 533 ms; + one-time 27.5 ms = 560 ms Prepare 0.09 ms · Generate 12.2 ms · Grind 516 ms · Share 0.10 ms · Kernel 3.38 ms · Instantiate 0.06 ms 1 VC · peak 1.37 GB 1.01× the fastest at this size 43.5 s normalize-sym · hand-written-specs — PurePrecond, complete proofs, n = 2400 Total 43.5 s; + one-time 19.7 ms = 43.6 s Prepare 0.08 ms · Generate 166 ms · Grind 43.3 s · Share 0.11 ms · Kernel 49.4 ms · Instantiate 0.08 ms 1 VC · peak 7.37 GB 48.45× the fastest at this size × error normalize-sym · hand-written-specs — GetThrowSet, complete proofs, n = 200 error: `simp` failed: maximum number of steps exceeded 2.02 s normalize-sym · hand-written-specs — DiteSplit, complete proofs, n = 100 Total 2.02 s; + one-time 36.0 ms = 2.06 s Prepare 0.08 ms · Generate 31.2 ms · Grind 1.98 s · Share 0.12 ms · Kernel 11.1 ms · Instantiate 0.07 ms 1 VC · peak 1.36 GB 4.58× the fastest at this size 55.9 ms normalize-sym · hand-written-specs — MatchSplit, complete proofs, n = 100 Total 55.9 ms; + one-time 32.8 ms = 88.8 ms Prepare 0.09 ms · Generate 18.0 ms · Grind 34.3 ms · Share 0.11 ms · Kernel 3.25 ms · Instantiate 0.05 ms 1 VC · peak 1.31 GB 1.20× the fastest at this size 386 ms normalize-sym · hand-written-specs — ReaderState, generation only, n = 2600 Total 386 ms; + one-time 27.5 ms = 414 ms Prepare 0.09 ms · Generate 297 ms · Grind 0.08 ms · Share 5.60 ms · Kernel 82.7 ms · Instantiate 0.42 ms 1 VC · peak 1.31 GB 1.46× the fastest at this size 231 ms normalize-sym · hand-written-specs — GetThrowSet, generation only, n = 800 Total 231 ms; + one-time 35.1 ms = 267 ms Prepare 0.08 ms · Generate 164 ms · Grind 0.08 ms · Share 7.49 ms · Kernel 59.4 ms · Instantiate 0.07 ms 1 VC · peak 1.31 GB 1.99× the fastest at this size 334 ms normalize-sym · hand-written-specs — MatchSplit, generation only, n = 1500 Total 334 ms; + one-time 32.8 ms = 367 ms Prepare 0.08 ms · Generate 271 ms · Grind 0.09 ms · Share 10.6 ms · Kernel 51.2 ms · Instantiate 0.06 ms 1 VC · peak 1.31 GB 2.32× the fastest at this size library 686 ms normalize-sym · library — AddSubCancel, complete proofs, n = 2200 Total 686 ms; + one-time 26.2 ms = 713 ms Prepare 0.08 ms · Generate 218 ms · Grind 377 ms · Share 0.10 ms · Kernel 93.0 ms · Instantiate 0.07 ms 1 VC · peak 1.36 GB 1.27× the fastest at this size 358 ms normalize-sym · library — AddSubCancelDeep, complete proofs, n = 900 Total 358 ms; + one-time 42.6 ms = 400 ms Prepare 0.10 ms · Generate 163 ms · Grind 146 ms · Share 0.13 ms · Kernel 48.3 ms · Instantiate 0.07 ms 1 VC · peak 1.31 GB 1.63× the fastest at this size 35.4 ms normalize-sym · library — LetBinding, complete proofs, n = 100 Total 35.4 ms; + one-time 20.0 ms = 55.4 ms Prepare 0.08 ms · Generate 11.3 ms · Grind 19.7 ms · Share 0.10 ms · Kernel 3.88 ms · Instantiate 0.05 ms 1 VC · peak 1.31 GB 1.22× the fastest at this size 547 ms normalize-sym · library — ReaderState, complete proofs, n = 100 Total 547 ms; + one-time 28.3 ms = 575 ms Prepare 0.09 ms · Generate 21.9 ms · Grind 520 ms · Share 0.11 ms · Kernel 4.86 ms · Instantiate 0.06 ms 1 VC · peak 1.37 GB 1.03× the fastest at this size 43.8 s normalize-sym · library — PurePrecond, complete proofs, n = 2400 Total 43.8 s; + one-time 19.7 ms = 43.8 s Prepare 0.08 ms · Generate 167 ms · Grind 43.5 s · Share 0.11 ms · Kernel 50.5 ms · Instantiate 0.08 ms 1 VC · peak 7.37 GB 48.69× the fastest at this size × error normalize-sym · library — GetThrowSet, complete proofs, n = 200 error: `simp` failed: maximum number of steps exceeded 2.04 s normalize-sym · library — DiteSplit, complete proofs, n = 100 Total 2.04 s; + one-time 36.3 ms = 2.08 s Prepare 0.08 ms · Generate 34.2 ms · Grind 1.99 s · Share 0.12 ms · Kernel 11.0 ms · Instantiate 0.07 ms 1 VC · peak 1.36 GB 4.62× the fastest at this size 60.2 ms normalize-sym · library — MatchSplit, complete proofs, n = 100 Total 60.2 ms; + one-time 33.2 ms = 93.5 ms Prepare 0.09 ms · Generate 22.1 ms · Grind 34.5 ms · Share 0.11 ms · Kernel 3.26 ms · Instantiate 0.05 ms 1 VC · peak 1.31 GB 1.29× the fastest at this size 685 ms normalize-sym · library — ReaderState, generation only, n = 2600 Total 685 ms; + one-time 28.3 ms = 713 ms Prepare 0.09 ms · Generate 546 ms · Grind 0.08 ms · Share 5.48 ms · Kernel 132 ms · Instantiate 0.43 ms 1 VC · peak 1.31 GB 2.59× the fastest at this size 255 ms normalize-sym · library — GetThrowSet, generation only, n = 800 Total 255 ms; + one-time 35.5 ms = 290 ms Prepare 0.09 ms · Generate 183 ms · Grind 0.09 ms · Share 10.2 ms · Kernel 60.3 ms · Instantiate 0.07 ms 1 VC · peak 1.31 GB 2.19× the fastest at this size 412 ms normalize-sym · library — MatchSplit, generation only, n = 1500 Total 412 ms; + one-time 33.2 ms = 445 ms Prepare 0.08 ms · Generate 340 ms · Grind 0.09 ms · Share 19.5 ms · Kernel 52.0 ms · Instantiate 0.07 ms 1 VC · peak 1.31 GB 2.86× the fastest at this size dsimp custom-monad 1.38 s dsimp · custom-monad — AddSubCancel, complete proofs, n = 2200 Total 1.38 s; + one-time 23.9 ms = 1.40 s Prepare 0.07 ms · Generate 958 ms · Grind 365 ms · Share 0.10 ms · Kernel 52.1 ms · Instantiate 0.07 ms 1 VC · peak 1.32 GB 2.56× the fastest at this size 359 ms dsimp · custom-monad — AddSubCancelDeep, complete proofs, n = 900 Total 359 ms; + one-time 38.3 ms = 397 ms Prepare 0.08 ms · Generate 193 ms · Grind 143 ms · Share 0.10 ms · Kernel 22.6 ms · Instantiate 0.06 ms 1 VC · peak 1.31 GB 1.63× the fastest at this size 251 ms dsimp · custom-monad — LetBinding, complete proofs, n = 100 Total 251 ms; + one-time 18.4 ms = 269 ms Prepare 0.07 ms · Generate 228 ms · Grind 19.3 ms · Share 0.09 ms · Kernel 2.95 ms · Instantiate 0.05 ms 1 VC · peak 1.31 GB 8.67× the fastest at this size 530 ms dsimp · custom-monad — ReaderState, complete proofs, n = 100 Total 530 ms; + one-time 24.7 ms = 555 ms Prepare 0.07 ms · Generate 9.18 ms · Grind 518 ms · Share 0.10 ms · Kernel 2.36 ms · Instantiate 0.07 ms 1 VC · peak 1.36 GB 1.00× the fastest at this size × timeout dsimp · custom-monad — PurePrecond, complete proofs, n = 2400 timeout > 60 s (process killed after 90 s) 31.6 s dsimp · custom-monad — GetThrowSet, complete proofs, n = 200 Total 31.6 s; + one-time 31.1 ms = 31.7 s Prepare 0.07 ms · Generate 123 ms · Grind 31.5 s · Share 0.11 ms · Kernel 6.56 ms · Instantiate 0.07 ms 1 VC · peak 2.55 GB 118.91× the fastest at this size 2.29 s dsimp · custom-monad — DiteSplit, complete proofs, n = 100 Total 2.29 s; + one-time 32.1 ms = 2.32 s Prepare 0.07 ms · Generate 409 ms · Grind 1.88 s · Share 0.10 ms · Kernel 5.07 ms · Instantiate 0.08 ms 1 VC · peak 1.36 GB 5.17× the fastest at this size 485 ms dsimp · custom-monad — MatchSplit, complete proofs, n = 100 Total 485 ms; + one-time 28.6 ms = 514 ms Prepare 0.07 ms · Generate 377 ms · Grind 106 ms · Share 0.10 ms · Kernel 2.29 ms · Instantiate 0.05 ms 1 VC · peak 1.31 GB 10.38× the fastest at this size 1.41 s dsimp · custom-monad — ReaderState, generation only, n = 2600 Total 1.41 s; + one-time 24.7 ms = 1.44 s Prepare 0.07 ms · Generate 1.34 s · Grind 0.09 ms · Share 11.7 ms · Kernel 56.5 ms · Instantiate 0.46 ms 1 VC · peak 1.31 GB 5.34× the fastest at this size 1.02 s dsimp · custom-monad — GetThrowSet, generation only, n = 800 Total 1.02 s; + one-time 31.1 ms = 1.06 s Prepare 0.07 ms · Generate 985 ms · Grind 0.10 ms · Share 8.80 ms · Kernel 29.4 ms · Instantiate 0.07 ms 1 VC · peak 1.31 GB 8.81× the fastest at this size × timeout @1000 dsimp · custom-monad — MatchSplit, generation only, n = 1500 timeout: measured 69.4 s (limit 60 s), at n = 1000; larger sizes skipped hand-written-specs × memory dsimp · hand-written-specs — AddSubCancel, complete proofs, n = 2200 memory > 8 GB 17.0 s dsimp · hand-written-specs — AddSubCancelDeep, complete proofs, n = 900 Total 17.0 s; + one-time 41.7 ms = 17.0 s Prepare 0.08 ms · Generate 16.8 s · Grind 146 ms · Share 0.15 ms · Kernel 48.2 ms · Instantiate 0.06 ms 1 VC · peak 2.67 GB 77.15× the fastest at this size 270 ms dsimp · hand-written-specs — LetBinding, complete proofs, n = 100 Total 270 ms; + one-time 20.1 ms = 290 ms Prepare 0.08 ms · Generate 245 ms · Grind 19.4 ms · Share 0.11 ms · Kernel 4.79 ms · Instantiate 0.05 ms 1 VC · peak 1.31 GB 9.32× the fastest at this size 712 ms dsimp · hand-written-specs — ReaderState, complete proofs, n = 100 Total 712 ms; + one-time 27.5 ms = 739 ms Prepare 0.08 ms · Generate 192 ms · Grind 516 ms · Share 0.11 ms · Kernel 3.30 ms · Instantiate 0.06 ms 1 VC · peak 1.33 GB 1.34× the fastest at this size × timeout dsimp · hand-written-specs — PurePrecond, complete proofs, n = 2400 timeout > 60 s (process killed after 90 s) × error dsimp · hand-written-specs — GetThrowSet, complete proofs, n = 200 error: `simp` failed: maximum number of steps exceeded 2.91 s dsimp · hand-written-specs — DiteSplit, complete proofs, n = 100 Total 2.91 s; + one-time 36.0 ms = 2.95 s Prepare 0.07 ms · Generate 921 ms · Grind 1.99 s · Share 0.13 ms · Kernel 12.6 ms · Instantiate 0.07 ms 1 VC · peak 1.38 GB 6.60× the fastest at this size 593 ms dsimp · hand-written-specs — MatchSplit, complete proofs, n = 100 Total 593 ms; + one-time 32.8 ms = 626 ms Prepare 0.07 ms · Generate 555 ms · Grind 34.6 ms · Share 0.13 ms · Kernel 3.23 ms · Instantiate 0.05 ms 1 VC · peak 1.34 GB 12.70× the fastest at this size × memory dsimp · hand-written-specs — ReaderState, generation only, n = 2600 memory > 8 GB 44.0 s dsimp · hand-written-specs — GetThrowSet, generation only, n = 800 Total 44.0 s; + one-time 35.1 ms = 44.0 s Prepare 0.07 ms · Generate 43.9 s · Grind 0.11 ms · Share 12.0 ms · Kernel 84.0 ms · Instantiate 0.07 ms 1 VC · peak 3.01 GB 378.06× the fastest at this size × timeout @1000 dsimp · hand-written-specs — MatchSplit, generation only, n = 1500 timeout > 60 s (process killed after 90 s), at n = 1000; larger sizes skipped library × memory dsimp · library — AddSubCancel, complete proofs, n = 2200 memory > 8 GB 17.0 s dsimp · library — AddSubCancelDeep, complete proofs, n = 900 Total 17.0 s; + one-time 42.6 ms = 17.0 s Prepare 0.08 ms · Generate 16.8 s · Grind 149 ms · Share 0.14 ms · Kernel 58.2 ms · Instantiate 0.07 ms 1 VC · peak 2.66 GB 77.17× the fastest at this size 269 ms dsimp · library — LetBinding, complete proofs, n = 100 Total 269 ms; + one-time 20.0 ms = 289 ms Prepare 0.08 ms · Generate 244 ms · Grind 19.4 ms · Share 0.11 ms · Kernel 4.89 ms · Instantiate 0.06 ms 1 VC · peak 1.31 GB 9.29× the fastest at this size 711 ms dsimp · library — ReaderState, complete proofs, n = 100 Total 711 ms; + one-time 28.3 ms = 739 ms Prepare 0.08 ms · Generate 192 ms · Grind 516 ms · Share 0.11 ms · Kernel 4.87 ms · Instantiate 0.07 ms 1 VC · peak 1.33 GB 1.34× the fastest at this size × timeout dsimp · library — PurePrecond, complete proofs, n = 2400 timeout > 60 s (process killed after 90 s) × error dsimp · library — GetThrowSet, complete proofs, n = 200 error: `simp` failed: maximum number of steps exceeded 2.91 s dsimp · library — DiteSplit, complete proofs, n = 100 Total 2.91 s; + one-time 36.3 ms = 2.95 s Prepare 0.07 ms · Generate 910 ms · Grind 1.99 s · Share 0.13 ms · Kernel 13.1 ms · Instantiate 0.07 ms 1 VC · peak 1.38 GB 6.59× the fastest at this size 588 ms dsimp · library — MatchSplit, complete proofs, n = 100 Total 588 ms; + one-time 33.2 ms = 621 ms Prepare 0.07 ms · Generate 550 ms · Grind 34.1 ms · Share 0.12 ms · Kernel 3.28 ms · Instantiate 0.05 ms 1 VC · peak 1.34 GB 12.59× the fastest at this size × memory dsimp · library — ReaderState, generation only, n = 2600 memory > 8 GB 42.5 s dsimp · library — GetThrowSet, generation only, n = 800 Total 42.5 s; + one-time 35.5 ms = 42.6 s Prepare 0.08 ms · Generate 42.5 s · Grind 0.10 ms · Share 12.1 ms · Kernel 83.7 ms · Instantiate 0.08 ms 1 VC · peak 2.96 GB 365.93× the fastest at this size × timeout @1000 dsimp · library — MatchSplit, generation only, n = 1500 timeout > 60 s (process killed after 90 s), at n = 1000; larger sizes skipped sym-dsimp custom-monad × timeout sym-dsimp · custom-monad — AddSubCancel, complete proofs, n = 2200 timeout > 60 s (process killed after 90 s) 17.5 s sym-dsimp · custom-monad — AddSubCancelDeep, complete proofs, n = 900 Total 17.5 s; + one-time 38.3 ms = 17.5 s Prepare 0.08 ms · Generate 17.3 s · Grind 146 ms · Share 0.11 ms · Kernel 16.4 ms · Instantiate 0.06 ms 1 VC · peak 1.33 GB 79.47× the fastest at this size 388 ms sym-dsimp · custom-monad — LetBinding, complete proofs, n = 100 Total 388 ms; + one-time 18.4 ms = 406 ms Prepare 0.07 ms · Generate 366 ms · Grind 19.3 ms · Share 0.10 ms · Kernel 2.01 ms · Instantiate 0.05 ms 1 VC · peak 1.31 GB 13.41× the fastest at this size 827 ms sym-dsimp · custom-monad — ReaderState, complete proofs, n = 100 Total 827 ms; + one-time 24.7 ms = 852 ms Prepare 0.08 ms · Generate 307 ms · Grind 517 ms · Share 0.11 ms · Kernel 2.41 ms · Instantiate 0.07 ms 1 VC · peak 1.32 GB 1.56× the fastest at this size 44.1 s sym-dsimp · custom-monad — PurePrecond, complete proofs, n = 2400 Total 44.1 s; + one-time 19.0 ms = 44.1 s Prepare 0.06 ms · Generate 607 ms · Grind 43.4 s · Share 0.11 ms · Kernel 38.3 ms · Instantiate 0.07 ms 1 VC · peak 7.37 GB 49.05× the fastest at this size 32.2 s sym-dsimp · custom-monad — GetThrowSet, complete proofs, n = 200 Total 32.2 s; + one-time 31.1 ms = 32.3 s Prepare 0.07 ms · Generate 735 ms · Grind 31.5 s · Share 0.11 ms · Kernel 5.94 ms · Instantiate 0.07 ms 1 VC · peak 2.55 GB 121.06× the fastest at this size 1.97 s sym-dsimp · custom-monad — DiteSplit, complete proofs, n = 100 Total 1.97 s; + one-time 32.1 ms = 2.00 s Prepare 0.07 ms · Generate 95.9 ms · Grind 1.87 s · Share 0.10 ms · Kernel 4.08 ms · Instantiate 0.06 ms 1 VC · peak 1.36 GB 4.46× the fastest at this size 142 ms sym-dsimp · custom-monad — MatchSplit, complete proofs, n = 100 Total 142 ms; + one-time 28.6 ms = 171 ms Prepare 0.06 ms · Generate 34.4 ms · Grind 105 ms · Share 0.10 ms · Kernel 2.31 ms · Instantiate 0.05 ms 1 VC · peak 1.31 GB 3.05× the fastest at this size × timeout @1600 sym-dsimp · custom-monad — ReaderState, generation only, n = 2600 timeout: measured 65.6 s (limit 60 s), at n = 1600; larger sizes skipped 11.3 s sym-dsimp · custom-monad — GetThrowSet, generation only, n = 800 Total 11.3 s; + one-time 31.1 ms = 11.3 s Prepare 0.07 ms · Generate 11.2 s · Grind 0.10 ms · Share 4.48 ms · Kernel 27.7 ms · Instantiate 0.07 ms 1 VC · peak 1.32 GB 96.88× the fastest at this size 590 ms sym-dsimp · custom-monad — MatchSplit, generation only, n = 1500 Total 590 ms; + one-time 28.6 ms = 618 ms Prepare 0.07 ms · Generate 550 ms · Grind 0.10 ms · Share 3.74 ms · Kernel 35.8 ms · Instantiate 0.07 ms 1 VC · peak 1.33 GB 4.09× the fastest at this size hand-written-specs × timeout sym-dsimp · hand-written-specs — AddSubCancel, complete proofs, n = 2200 timeout: measured 65.8 s (limit 60 s) 11.4 s sym-dsimp · hand-written-specs — AddSubCancelDeep, complete proofs, n = 900 Total 11.4 s; + one-time 41.7 ms = 11.4 s Prepare 0.08 ms · Generate 11.2 s · Grind 150 ms · Share 0.13 ms · Kernel 87.7 ms · Instantiate 0.07 ms 1 VC · peak 1.34 GB 51.80× the fastest at this size 208 ms sym-dsimp · hand-written-specs — LetBinding, complete proofs, n = 100 Total 208 ms; + one-time 20.1 ms = 228 ms Prepare 0.07 ms · Generate 179 ms · Grind 19.3 ms · Share 0.10 ms · Kernel 9.03 ms · Instantiate 0.05 ms 1 VC · peak 1.31 GB 7.19× the fastest at this size 680 ms sym-dsimp · hand-written-specs — ReaderState, complete proofs, n = 100 Total 680 ms; + one-time 27.5 ms = 707 ms Prepare 0.07 ms · Generate 154 ms · Grind 518 ms · Share 0.11 ms · Kernel 8.08 ms · Instantiate 0.07 ms 1 VC · peak 1.34 GB 1.28× the fastest at this size 44.2 s sym-dsimp · hand-written-specs — PurePrecond, complete proofs, n = 2400 Total 44.2 s; + one-time 19.7 ms = 44.2 s Prepare 0.07 ms · Generate 461 ms · Grind 43.6 s · Share 0.11 ms · Kernel 117 ms · Instantiate 0.07 ms 1 VC · peak 7.37 GB 49.15× the fastest at this size × error sym-dsimp · hand-written-specs — GetThrowSet, complete proofs, n = 200 error: `simp` failed: maximum number of steps exceeded 2.07 s sym-dsimp · hand-written-specs — DiteSplit, complete proofs, n = 100 Total 2.07 s; + one-time 36.0 ms = 2.11 s Prepare 0.07 ms · Generate 81.0 ms · Grind 1.97 s · Share 0.13 ms · Kernel 20.1 ms · Instantiate 0.07 ms 1 VC · peak 1.38 GB 4.69× the fastest at this size 70.8 ms sym-dsimp · hand-written-specs — MatchSplit, complete proofs, n = 100 Total 70.8 ms; + one-time 32.8 ms = 104 ms Prepare 0.07 ms · Generate 30.3 ms · Grind 33.4 ms · Share 0.11 ms · Kernel 6.82 ms · Instantiate 0.05 ms 1 VC · peak 1.31 GB 1.52× the fastest at this size × timeout sym-dsimp · hand-written-specs — ReaderState, generation only, n = 2600 timeout: measured 85.9 s (limit 60 s) 7.77 s sym-dsimp · hand-written-specs — GetThrowSet, generation only, n = 800 Total 7.77 s; + one-time 35.1 ms = 7.81 s Prepare 0.07 ms · Generate 7.62 s · Grind 0.10 ms · Share 5.75 ms · Kernel 144 ms · Instantiate 0.07 ms 1 VC · peak 1.33 GB 66.85× the fastest at this size 588 ms sym-dsimp · hand-written-specs — MatchSplit, generation only, n = 1500 Total 588 ms; + one-time 32.8 ms = 621 ms Prepare 0.07 ms · Generate 470 ms · Grind 0.11 ms · Share 4.02 ms · Kernel 114 ms · Instantiate 0.08 ms 1 VC · peak 1.35 GB 4.08× the fastest at this size library 21.3 s sym-dsimp · library — AddSubCancel, complete proofs, n = 2200 Total 21.3 s; + one-time 26.2 ms = 21.3 s Prepare 0.07 ms · Generate 20.6 s · Grind 390 ms · Share 0.11 ms · Kernel 252 ms · Instantiate 0.07 ms 1 VC · peak 1.37 GB 39.39× the fastest at this size 3.99 s sym-dsimp · library — AddSubCancelDeep, complete proofs, n = 900 Total 3.99 s; + one-time 42.6 ms = 4.04 s Prepare 0.08 ms · Generate 3.70 s · Grind 150 ms · Share 0.14 ms · Kernel 142 ms · Instantiate 0.06 ms 1 VC · peak 1.34 GB 18.13× the fastest at this size 71.3 ms sym-dsimp · library — LetBinding, complete proofs, n = 100 Total 71.3 ms; + one-time 20.0 ms = 91.4 ms Prepare 0.07 ms · Generate 42.2 ms · Grind 19.4 ms · Share 0.10 ms · Kernel 9.38 ms · Instantiate 0.05 ms 1 VC · peak 1.31 GB 2.47× the fastest at this size 673 ms sym-dsimp · library — ReaderState, complete proofs, n = 100 Total 673 ms; + one-time 28.3 ms = 701 ms Prepare 0.07 ms · Generate 139 ms · Grind 520 ms · Share 0.11 ms · Kernel 11.8 ms · Instantiate 0.07 ms 1 VC · peak 1.34 GB 1.27× the fastest at this size 44.0 s sym-dsimp · library — PurePrecond, complete proofs, n = 2400 Total 44.0 s; + one-time 19.7 ms = 44.0 s Prepare 0.07 ms · Generate 461 ms · Grind 43.4 s · Share 0.11 ms · Kernel 117 ms · Instantiate 0.07 ms 1 VC · peak 7.37 GB 48.93× the fastest at this size × error sym-dsimp · library — GetThrowSet, complete proofs, n = 200 error: `simp` failed: maximum number of steps exceeded 2.06 s sym-dsimp · library — DiteSplit, complete proofs, n = 100 Total 2.06 s; + one-time 36.3 ms = 2.10 s Prepare 0.07 ms · Generate 61.2 ms · Grind 1.98 s · Share 0.12 ms · Kernel 19.7 ms · Instantiate 0.07 ms 1 VC · peak 1.36 GB 4.67× the fastest at this size 65.0 ms sym-dsimp · library — MatchSplit, complete proofs, n = 100 Total 65.0 ms; + one-time 33.2 ms = 98.2 ms Prepare 0.07 ms · Generate 24.5 ms · Grind 33.1 ms · Share 0.11 ms · Kernel 6.89 ms · Instantiate 0.05 ms 1 VC · peak 1.31 GB 1.39× the fastest at this size × timeout sym-dsimp · library — ReaderState, generation only, n = 2600 timeout: measured 74.2 s (limit 60 s) 5.26 s sym-dsimp · library — GetThrowSet, generation only, n = 800 Total 5.26 s; + one-time 35.5 ms = 5.29 s Prepare 0.08 ms · Generate 5.11 s · Grind 0.10 ms · Share 5.86 ms · Kernel 141 ms · Instantiate 0.08 ms 1 VC · peak 1.37 GB 45.22× the fastest at this size 494 ms sym-dsimp · library — MatchSplit, generation only, n = 1500 Total 494 ms; + one-time 33.2 ms = 527 ms Prepare 0.07 ms · Generate 377 ms · Grind 0.09 ms · Share 3.99 ms · Kernel 112 ms · Instantiate 0.07 ms 1 VC · peak 1.32 GB 3.43× the fastest at this size wp-simp – 6.75 s wp-simp — AddSubCancel, complete proofs, n = 2200 Total 6.75 s; + one-time 12.8 ms = 6.77 s Prepare 108 ms · Generate 5.87 s · Grind 358 ms · Share 180 ms · Kernel 242 ms · Instantiate 0.06 ms 1 VC · peak 1.43 GB 12.51× the fastest at this size 117 ms wp-simp — LetBinding, complete proofs, n = 100 Total 117 ms; + one-time 12.8 ms = 130 ms Prepare 12.2 ms · Generate 71.1 ms · Grind 18.7 ms · Share 4.64 ms · Kernel 9.49 ms · Instantiate 0.04 ms 1 VC · peak 1.31 GB 4.04× the fastest at this size 647 ms wp-simp — ReaderState, complete proofs, n = 100 Total 647 ms; + one-time 14.1 ms = 661 ms Prepare 8.92 ms · Generate 117 ms · Grind 506 ms · Share 4.10 ms · Kernel 11.1 ms · Instantiate 0.06 ms 1 VC · peak 1.35 GB 1.22× the fastest at this size 2.40 s wp-simp — PurePrecond, complete proofs, n = 2400 Total 2.40 s; + one-time 12.8 ms = 2.41 s Prepare 58.5 ms · Generate 1.73 s · Grind 81.6 ms · Share 196 ms · Kernel 338 ms · Instantiate 0.05 ms 1 VC · peak 1.42 GB 2.67× the fastest at this size 12.0 s wp-simp — GetThrowSet, complete proofs, n = 200 Total 12.0 s; + one-time 34.9 ms = 12.0 s Prepare 19.0 ms · Generate 378 ms · Grind 6.30 s · Share 58.9 ms · Kernel 5.22 s · Instantiate 0.06 ms 1 VC · peak 2.46 GB 45.00× the fastest at this size 6.58 s wp-simp — DiteSplit, complete proofs, n = 100 Total 6.58 s; + one-time 34.9 ms = 6.62 s Prepare 16.1 ms · Generate 2.00 s · Grind 4.11 s · Share 110 ms · Kernel 347 ms · Instantiate 0.06 ms 1 VC · peak 1.48 GB 14.90× the fastest at this size 11.1 s wp-simp — ReaderState, generation only, n = 2600 Total 11.1 s; + one-time 14.1 ms = 11.2 s Prepare 75.5 ms · Generate 10.6 s · Grind 0.53 ms · Share 139 ms · Kernel 359 ms · Instantiate 0.05 ms 1 VC · peak 1.44 GB 42.16× the fastest at this size × memory @500 wp-simp — GetThrowSet, generation only, n = 800 memory > 8 GB, at n = 500; larger sizes skipped wp-sym – 10.8 s wp-sym — AddSubCancel, complete proofs, n = 2200 Total 10.8 s; + one-time 12.8 ms = 10.8 s Prepare 109 ms · Generate 695 ms · Grind 387 ms · Share 849 ms · Kernel 8.77 s · Instantiate 0.06 ms 1 VC · peak 1.48 GB 20.03× the fastest at this size 115 ms wp-sym — LetBinding, complete proofs, n = 100 Total 115 ms; + one-time 12.8 ms = 128 ms Prepare 12.3 ms · Generate 34.3 ms · Grind 19.1 ms · Share 16.4 ms · Kernel 32.7 ms · Instantiate 0.04 ms 1 VC · peak 1.31 GB 3.99× the fastest at this size 615 ms wp-sym — ReaderState, complete proofs, n = 100 Total 615 ms; + one-time 14.1 ms = 629 ms Prepare 8.94 ms · Generate 52.1 ms · Grind 506 ms · Share 12.5 ms · Kernel 34.2 ms · Instantiate 0.06 ms 1 VC · peak 1.37 GB 1.16× the fastest at this size 4.98 s wp-sym — PurePrecond, complete proofs, n = 2400 Total 4.98 s; + one-time 12.8 ms = 5.00 s Prepare 58.9 ms · Generate 346 ms · Grind 85.4 ms · Share 594 ms · Kernel 3.90 s · Instantiate 0.05 ms 1 VC · peak 1.42 GB 5.54× the fastest at this size 6.50 s wp-sym — GetThrowSet, complete proofs, n = 200 Total 6.50 s; + one-time 34.9 ms = 6.53 s Prepare 19.1 ms · Generate 110 ms · Grind 6.21 s · Share 42.7 ms · Kernel 114 ms · Instantiate 0.06 ms 1 VC · peak 1.56 GB 24.41× the fastest at this size 4.85 s wp-sym — DiteSplit, complete proofs, n = 100 Total 4.85 s; + one-time 34.9 ms = 4.88 s Prepare 16.0 ms · Generate 417 ms · Grind 3.99 s · Share 68.7 ms · Kernel 352 ms · Instantiate 0.06 ms 1 VC · peak 1.47 GB 10.97× the fastest at this size 17.6 s wp-sym — ReaderState, generation only, n = 2600 Total 17.6 s; + one-time 14.1 ms = 17.6 s Prepare 75.4 ms · Generate 1.57 s · Grind 0.37 ms · Share 1.41 s · Kernel 14.5 s · Instantiate 0.05 ms 1 VC · peak 1.55 GB 66.51× the fastest at this size 2.30 s wp-sym — GetThrowSet, generation only, n = 800 Total 2.30 s; + one-time 34.9 ms = 2.33 s Prepare 59.0 ms · Generate 482 ms · Grind 0.31 ms · Share 357 ms · Kernel 1.40 s · Instantiate 0.05 ms 1 VC · peak 1.41 GB 19.75× the fastest at this size
How total time grows with n The exponent k of total time ∝ n^k between the two largest sizes that finished: 1 is linear, 2 quadratic. Fixed costs make small sizes look slower than linear. – : fewer than two sizes finished. Hover for every size's time or failure. exponent k < 1.25 1.25–1.75 1.75–2.25 (≈ n²) 2.25–2.75 ≥ 2.75 Complete proofs Generation only AddSubCancel n ≤ 2200 AddSubCancel Deep n ≤ 900 LetBinding n ≤ 100 ReaderState n ≤ 100 PurePrecond n ≤ 4400 GetThrowSet n ≤ 300 DiteSplit n ≤ 100 MatchSplit n ≤ 100 ReaderState n ≤ 2600 GetThrowSet n ≤ 800 MatchSplit n ≤ 1500 vcgen hand-written-specs 1.31 vcgen · hand-written-specs — AddSubCancel, complete proofs grows like n^1.31 between n = 1200 and 2200 n = 200: 111 ms n = 1200: 754 ms n = 2200: 1.67 s 1.06 vcgen · hand-written-specs — AddSubCancelDeep, complete proofs grows like n^1.06 between n = 500 and 900 n = 100: 105 ms n = 500: 399 ms n = 900: 746 ms 1.12 vcgen · hand-written-specs — LetBinding, complete proofs grows like n^1.12 between n = 50 and 100 n = 10: 23.6 ms n = 50: 54.5 ms n = 100: 119 ms 1.46 vcgen · hand-written-specs — ReaderState, complete proofs grows like n^1.46 between n = 50 and 100 n = 10: 55.1 ms n = 50: 210 ms n = 100: 578 ms 1.36 vcgen · hand-written-specs — PurePrecond, complete proofs grows like n^1.36 between n = 2400 and 4400 n = 400: 122 ms n = 2400: 899 ms n = 4400: 2.05 s 2.84 vcgen · hand-written-specs — GetThrowSet, complete proofs grows like n^2.84 between n = 100 and 200 n = 10: 71.6 ms n = 50: 863 ms n = 100: 4.91 s n = 200: 35.2 s n = 300: timeout > 60 s (process killed after 90 s) 1.78 vcgen · hand-written-specs — DiteSplit, complete proofs grows like n^1.78 between n = 50 and 100 n = 10: 82.1 ms n = 50: 663 ms n = 100: 2.27 s 2.72 vcgen · hand-written-specs — MatchSplit, complete proofs grows like n^2.72 between n = 50 and 100 n = 10: 107 ms n = 50: 1.57 s n = 100: 10.3 s 1.31 vcgen · hand-written-specs — ReaderState, generation only grows like n^1.31 between n = 1600 and 2600 n = 600: 274 ms n = 1600: 861 ms n = 2600: 1.63 s 2.31 vcgen · hand-written-specs — GetThrowSet, generation only grows like n^2.31 between n = 500 and 800 n = 200: 182 ms n = 500: 1.25 s n = 800: 3.69 s 1.28 vcgen · hand-written-specs — MatchSplit, generation only grows like n^1.28 between n = 1000 and 1500 n = 500: 188 ms n = 1000: 386 ms n = 1500: 648 ms library 1.22 vcgen · library — AddSubCancel, complete proofs grows like n^1.22 between n = 1200 and 2200 n = 200: 284 ms n = 1200: 1.95 s n = 2200: 4.08 s 1.13 vcgen · library — AddSubCancelDeep, complete proofs grows like n^1.13 between n = 500 and 900 n = 100: 1.17 s n = 500: 8.05 s n = 900: 15.6 s 1.06 vcgen · library — LetBinding, complete proofs grows like n^1.06 between n = 50 and 100 n = 10: 37.2 ms n = 50: 103 ms n = 100: 215 ms 1.31 vcgen · library — ReaderState, complete proofs grows like n^1.31 between n = 50 and 100 n = 10: 103 ms n = 50: 408 ms n = 100: 1.01 s 1.35 vcgen · library — PurePrecond, complete proofs grows like n^1.35 between n = 2400 and 4400 n = 400: 125 ms n = 2400: 900 ms n = 4400: 2.05 s 2.81 vcgen · library — GetThrowSet, complete proofs grows like n^2.81 between n = 100 and 200 n = 10: 101 ms n = 50: 958 ms n = 100: 5.11 s n = 200: 35.8 s n = 300: timeout > 60 s (process killed after 90 s) 1.65 vcgen · library — DiteSplit, complete proofs grows like n^1.65 between n = 50 and 100 n = 10: 126 ms n = 50: 861 ms n = 100: 2.70 s 2.65 vcgen · library — MatchSplit, complete proofs grows like n^2.65 between n = 50 and 100 n = 10: 135 ms n = 50: 1.68 s n = 100: 10.6 s 1.15 vcgen · library — ReaderState, generation only grows like n^1.15 between n = 1600 and 2600 n = 600: 3.56 s n = 1600: 11.4 s n = 2600: 20.0 s 1.73 vcgen · library — GetThrowSet, generation only grows like n^1.73 between n = 500 and 800 n = 200: 631 ms n = 500: 2.87 s n = 800: 6.46 s 1.21 vcgen · library — MatchSplit, generation only grows like n^1.21 between n = 1000 and 1500 n = 500: 1.39 s n = 1000: 3.34 s n = 1500: 5.46 s vcgen-finish hand-written-specs 1.47 vcgen-finish · hand-written-specs — AddSubCancel, complete proofs grows like n^1.47 between n = 1200 and 2200 n = 200: 113 ms n = 1200: 807 ms n = 2200: 1.97 s 1.12 vcgen-finish · hand-written-specs — AddSubCancelDeep, complete proofs grows like n^1.12 between n = 500 and 900 n = 100: 103 ms n = 500: 411 ms n = 900: 796 ms 1.19 vcgen-finish · hand-written-specs — LetBinding, complete proofs grows like n^1.19 between n = 50 and 100 n = 10: 23.2 ms n = 50: 55.6 ms n = 100: 127 ms – vcgen-finish · hand-written-specs — ReaderState, complete proofs fewer than two sizes finished n = 10: error: `finish` failed n = 50: error: `finish` failed, at n = 10; larger sizes skipped n = 100: error: `finish` failed, at n = 10; larger sizes skipped 1.33 vcgen-finish · hand-written-specs — PurePrecond, complete proofs grows like n^1.33 between n = 2400 and 4400 n = 400: 167 ms n = 2400: 1.26 s n = 4400: 2.81 s 2.02 vcgen-finish · hand-written-specs — GetThrowSet, complete proofs grows like n^2.02 between n = 200 and 300 n = 10: 41.0 ms n = 50: 134 ms n = 100: 349 ms n = 200: 1.18 s n = 300: 2.67 s 1.59 vcgen-finish · hand-written-specs — DiteSplit, complete proofs grows like n^1.59 between n = 50 and 100 n = 10: 46.6 ms n = 50: 146 ms n = 100: 442 ms 2.42 vcgen-finish · hand-written-specs — MatchSplit, complete proofs grows like n^2.42 between n = 50 and 100 n = 10: 63.8 ms n = 50: 852 ms n = 100: 4.56 s library 1.24 vcgen-finish · library — AddSubCancel, complete proofs grows like n^1.24 between n = 1200 and 2200 n = 200: 302 ms n = 1200: 2.10 s n = 2200: 4.46 s 1.13 vcgen-finish · library — AddSubCancelDeep, complete proofs grows like n^1.13 between n = 500 and 900 n = 100: 1.18 s n = 500: 8.08 s n = 900: 15.7 s 1.10 vcgen-finish · library — LetBinding, complete proofs grows like n^1.10 between n = 50 and 100 n = 10: 37.1 ms n = 50: 105 ms n = 100: 225 ms – vcgen-finish · library — ReaderState, complete proofs fewer than two sizes finished n = 10: error: `finish` failed n = 50: error: `finish` failed, at n = 10; larger sizes skipped n = 100: error: `finish` failed, at n = 10; larger sizes skipped 1.31 vcgen-finish · library — PurePrecond, complete proofs grows like n^1.31 between n = 2400 and 4400 n = 400: 171 ms n = 2400: 1.27 s n = 4400: 2.81 s 1.87 vcgen-finish · library — GetThrowSet, complete proofs grows like n^1.87 between n = 200 and 300 n = 10: 68.9 ms n = 50: 231 ms n = 100: 551 ms n = 200: 1.65 s n = 300: 3.53 s 1.46 vcgen-finish · library — DiteSplit, complete proofs grows like n^1.46 between n = 50 and 100 n = 10: 88.5 ms n = 50: 338 ms n = 100: 929 ms 2.30 vcgen-finish · library — MatchSplit, complete proofs grows like n^2.30 between n = 50 and 100 n = 10: 91.5 ms n = 50: 971 ms n = 100: 4.79 s vcgen-finish-simp hand-written-specs 1.03 vcgen-finish-simp · hand-written-specs — GetThrowSet, complete proofs grows like n^1.03 between n = 200 and 300 n = 10: 39.5 ms n = 50: 85.1 ms n = 100: 142 ms n = 200: 266 ms n = 300: 404 ms library 1.13 vcgen-finish-simp · library — GetThrowSet, complete proofs grows like n^1.13 between n = 200 and 300 n = 10: 67.8 ms n = 50: 179 ms n = 100: 337 ms n = 200: 688 ms n = 300: 1.09 s sym – 1.36 sym — AddSubCancel, complete proofs grows like n^1.36 between n = 1200 and 2200 n = 200: 182 ms n = 1200: 1.74 s n = 2200: 3.95 s 1.29 sym — AddSubCancelDeep, complete proofs grows like n^1.29 between n = 500 and 900 n = 100: 123 ms n = 500: 703 ms n = 900: 1.50 s normalize custom-monad 1.15 normalize · custom-monad — AddSubCancel, complete proofs grows like n^1.15 between n = 1200 and 2200 n = 200: 49.7 ms n = 1200: 286 ms n = 2200: 575 ms 0.99 normalize · custom-monad — AddSubCancelDeep, complete proofs grows like n^0.99 between n = 500 and 900 n = 100: 27.7 ms n = 500: 124 ms n = 900: 223 ms 0.87 normalize · custom-monad — LetBinding, complete proofs grows like n^0.87 between n = 50 and 100 n = 10: 5.56 ms n = 50: 16.2 ms n = 100: 29.5 ms 1.59 normalize · custom-monad — ReaderState, complete proofs grows like n^1.59 between n = 50 and 100 n = 10: 33.5 ms n = 50: 176 ms n = 100: 529 ms 2.22 normalize · custom-monad — PurePrecond, complete proofs grows like n^2.22 between n = 400 and 2400 n = 400: 814 ms n = 2400: 43.2 s n = 4400: memory > 8 GB 3.16 normalize · custom-monad — GetThrowSet, complete proofs grows like n^3.16 between n = 100 and 200 n = 10: 35.1 ms n = 50: 583 ms n = 100: 3.54 s n = 200: 31.7 s n = 300: error: `simp` failed: maximum number of steps exceeded 2.06 normalize · custom-monad — DiteSplit, complete proofs grows like n^2.06 between n = 50 and 100 n = 10: 41.8 ms n = 50: 454 ms n = 100: 1.89 s 1.48 normalize · custom-monad — MatchSplit, complete proofs grows like n^1.48 between n = 50 and 100 n = 10: 10.8 ms n = 50: 42.2 ms n = 100: 118 ms 1.02 normalize · custom-monad — ReaderState, generation only grows like n^1.02 between n = 1600 and 2600 n = 600: 64.6 ms n = 1600: 169 ms n = 2600: 277 ms 0.99 normalize · custom-monad — GetThrowSet, generation only grows like n^0.99 between n = 500 and 800 n = 200: 30.2 ms n = 500: 73.1 ms n = 800: 116 ms 1.00 normalize · custom-monad — MatchSplit, generation only grows like n^1.00 between n = 1000 and 1500 n = 500: 48.3 ms n = 1000: 95.9 ms n = 1500: 144 ms hand-written-specs 1.07 normalize · hand-written-specs — AddSubCancel, complete proofs grows like n^1.07 between n = 1200 and 2200 n = 200: 59.4 ms n = 1200: 344 ms n = 2200: 659 ms 1.00 normalize · hand-written-specs — AddSubCancelDeep, complete proofs grows like n^1.00 between n = 500 and 900 n = 100: 32.6 ms n = 500: 146 ms n = 900: 263 ms 0.85 normalize · hand-written-specs — LetBinding, complete proofs grows like n^0.85 between n = 50 and 100 n = 10: 6.22 ms n = 50: 18.9 ms n = 100: 34.2 ms 1.58 normalize · hand-written-specs — ReaderState, complete proofs grows like n^1.58 between n = 50 and 100 n = 10: 33.5 ms n = 50: 179 ms n = 100: 534 ms 2.22 normalize · hand-written-specs — PurePrecond, complete proofs grows like n^2.22 between n = 400 and 2400 n = 400: 815 ms n = 2400: 43.4 s n = 4400: memory > 8 GB 2.76 normalize · hand-written-specs — GetThrowSet, complete proofs grows like n^2.76 between n = 50 and 100 n = 10: 52.1 ms n = 50: 1.12 s n = 100: 7.58 s n = 200: error: `simp` failed: maximum number of steps exceeded n = 300: error: `simp` failed: maximum number of steps exceeded, at n = 200; larger sizes skipped 2.06 normalize · hand-written-specs — DiteSplit, complete proofs grows like n^2.06 between n = 50 and 100 n = 10: 44.1 ms n = 50: 484 ms n = 100: 2.01 s 0.79 normalize · hand-written-specs — MatchSplit, complete proofs grows like n^0.79 between n = 50 and 100 n = 10: 13.1 ms n = 50: 27.1 ms n = 100: 46.7 ms 0.99 normalize · hand-written-specs — ReaderState, generation only grows like n^0.99 between n = 1600 and 2600 n = 600: 91.7 ms n = 1600: 242 ms n = 2600: 391 ms 1.02 normalize · hand-written-specs — GetThrowSet, generation only grows like n^1.02 between n = 500 and 800 n = 200: 44.5 ms n = 500: 109 ms n = 800: 176 ms 1.03 normalize · hand-written-specs — MatchSplit, generation only grows like n^1.03 between n = 1000 and 1500 n = 500: 57.9 ms n = 1000: 114 ms n = 1500: 173 ms library 1.09 normalize · library — AddSubCancel, complete proofs grows like n^1.09 between n = 1200 and 2200 n = 200: 63.1 ms n = 1200: 359 ms n = 2200: 694 ms 0.99 normalize · library — AddSubCancelDeep, complete proofs grows like n^0.99 between n = 500 and 900 n = 100: 43.4 ms n = 500: 202 ms n = 900: 361 ms 0.86 normalize · library — LetBinding, complete proofs grows like n^0.86 between n = 50 and 100 n = 10: 6.43 ms n = 50: 19.6 ms n = 100: 35.6 ms 1.57 normalize · library — ReaderState, complete proofs grows like n^1.57 between n = 50 and 100 n = 10: 34.8 ms n = 50: 185 ms n = 100: 548 ms 2.21 normalize · library — PurePrecond, complete proofs grows like n^2.21 between n = 400 and 2400 n = 400: 823 ms n = 2400: 43.3 s n = 4400: memory > 8 GB 2.76 normalize · library — GetThrowSet, complete proofs grows like n^2.76 between n = 50 and 100 n = 10: 52.7 ms n = 50: 1.12 s n = 100: 7.59 s n = 200: error: `simp` failed: maximum number of steps exceeded n = 300: error: `simp` failed: maximum number of steps exceeded, at n = 200; larger sizes skipped 2.04 normalize · library — DiteSplit, complete proofs grows like n^2.04 between n = 50 and 100 n = 10: 44.1 ms n = 50: 487 ms n = 100: 2.01 s 0.82 normalize · library — MatchSplit, complete proofs grows like n^0.82 between n = 50 and 100 n = 10: 12.9 ms n = 50: 27.1 ms n = 100: 47.6 ms 1.07 normalize · library — ReaderState, generation only grows like n^1.07 between n = 1600 and 2600 n = 600: 156 ms n = 1600: 421 ms n = 2600: 707 ms 1.01 normalize · library — GetThrowSet, generation only grows like n^1.01 between n = 500 and 800 n = 200: 47.9 ms n = 500: 117 ms n = 800: 188 ms 1.00 normalize · library — MatchSplit, generation only grows like n^1.00 between n = 1000 and 1500 n = 500: 59.2 ms n = 1000: 118 ms n = 1500: 177 ms normalize-sym custom-monad 1.06 normalize-sym · custom-monad — AddSubCancel, complete proofs grows like n^1.06 between n = 1200 and 2200 n = 200: 49.2 ms n = 1200: 284 ms n = 2200: 540 ms 0.99 normalize-sym · custom-monad — AddSubCancelDeep, complete proofs grows like n^0.99 between n = 500 and 900 n = 100: 27.4 ms n = 500: 123 ms n = 900: 220 ms 0.88 normalize-sym · custom-monad — LetBinding, complete proofs grows like n^0.88 between n = 50 and 100 n = 10: 5.54 ms n = 50: 15.7 ms n = 100: 28.9 ms 1.59 normalize-sym · custom-monad — ReaderState, complete proofs grows like n^1.59 between n = 50 and 100 n = 10: 32.6 ms n = 50: 177 ms n = 100: 534 ms 2.22 normalize-sym · custom-monad — PurePrecond, complete proofs grows like n^2.22 between n = 400 and 2400 n = 400: 822 ms n = 2400: 43.5 s n = 4400: memory > 8 GB 3.16 normalize-sym · custom-monad — GetThrowSet, complete proofs grows like n^3.16 between n = 100 and 200 n = 10: 34.7 ms n = 50: 581 ms n = 100: 3.51 s n = 200: 31.4 s n = 300: error: `simp` failed: maximum number of steps exceeded 2.06 normalize-sym · custom-monad — DiteSplit, complete proofs grows like n^2.06 between n = 50 and 100 n = 10: 40.5 ms n = 50: 457 ms n = 100: 1.91 s 1.44 normalize-sym · custom-monad — MatchSplit, complete proofs grows like n^1.44 between n = 50 and 100 n = 10: 11.7 ms n = 50: 46.0 ms n = 100: 124 ms 0.96 normalize-sym · custom-monad — ReaderState, generation only grows like n^0.96 between n = 1600 and 2600 n = 600: 62.5 ms n = 1600: 166 ms n = 2600: 264 ms 1.00 normalize-sym · custom-monad — GetThrowSet, generation only grows like n^1.00 between n = 500 and 800 n = 200: 34.6 ms n = 500: 86.8 ms n = 800: 139 ms 1.08 normalize-sym · custom-monad — MatchSplit, generation only grows like n^1.08 between n = 1000 and 1500 n = 500: 89.2 ms n = 1000: 179 ms n = 1500: 278 ms hand-written-specs 1.06 normalize-sym · hand-written-specs — AddSubCancel, complete proofs grows like n^1.06 between n = 1200 and 2200 n = 200: 59.4 ms n = 1200: 346 ms n = 2200: 656 ms 1.05 normalize-sym · hand-written-specs — AddSubCancelDeep, complete proofs grows like n^1.05 between n = 500 and 900 n = 100: 32.3 ms n = 500: 145 ms n = 900: 269 ms 0.88 normalize-sym · hand-written-specs — LetBinding, complete proofs grows like n^0.88 between n = 50 and 100 n = 10: 6.11 ms n = 50: 18.7 ms n = 100: 34.3 ms 1.58 normalize-sym · hand-written-specs — ReaderState, complete proofs grows like n^1.58 between n = 50 and 100 n = 10: 33.4 ms n = 50: 178 ms n = 100: 533 ms 2.21 normalize-sym · hand-written-specs — PurePrecond, complete proofs grows like n^2.21 between n = 400 and 2400 n = 400: 837 ms n = 2400: 43.5 s n = 4400: memory > 8 GB 2.78 normalize-sym · hand-written-specs — GetThrowSet, complete proofs grows like n^2.78 between n = 50 and 100 n = 10: 52.8 ms n = 50: 1.12 s n = 100: 7.71 s n = 200: error: `simp` failed: maximum number of steps exceeded n = 300: error: `simp` failed: maximum number of steps exceeded, at n = 200; larger sizes skipped 2.04 normalize-sym · hand-written-specs — DiteSplit, complete proofs grows like n^2.04 between n = 50 and 100 n = 10: 44.7 ms n = 50: 491 ms n = 100: 2.02 s 0.82 normalize-sym · hand-written-specs — MatchSplit, complete proofs grows like n^0.82 between n = 50 and 100 n = 10: 13.8 ms n = 50: 31.7 ms n = 100: 55.9 ms 0.98 normalize-sym · hand-written-specs — ReaderState, generation only grows like n^0.98 between n = 1600 and 2600 n = 600: 89.2 ms n = 1600: 239 ms n = 2600: 386 ms 1.01 normalize-sym · hand-written-specs — GetThrowSet, generation only grows like n^1.01 between n = 500 and 800 n = 200: 58.1 ms n = 500: 144 ms n = 800: 231 ms 1.06 normalize-sym · hand-written-specs — MatchSplit, generation only grows like n^1.06 between n = 1000 and 1500 n = 500: 109 ms n = 1000: 218 ms n = 1500: 334 ms library 1.05 normalize-sym · library — AddSubCancel, complete proofs grows like n^1.05 between n = 1200 and 2200 n = 200: 61.3 ms n = 1200: 363 ms n = 2200: 686 ms 0.99 normalize-sym · library — AddSubCancelDeep, complete proofs grows like n^0.99 between n = 500 and 900 n = 100: 43.4 ms n = 500: 200 ms n = 900: 358 ms 0.88 normalize-sym · library — LetBinding, complete proofs grows like n^0.88 between n = 50 and 100 n = 10: 6.16 ms n = 50: 19.2 ms n = 100: 35.4 ms 1.57 normalize-sym · library — ReaderState, complete proofs grows like n^1.57 between n = 50 and 100 n = 10: 34.3 ms n = 50: 184 ms n = 100: 547 ms 2.21 normalize-sym · library — PurePrecond, complete proofs grows like n^2.21 between n = 400 and 2400 n = 400: 832 ms n = 2400: 43.8 s n = 4400: memory > 8 GB 2.75 normalize-sym · library — GetThrowSet, complete proofs grows like n^2.75 between n = 50 and 100 n = 10: 52.9 ms n = 50: 1.13 s n = 100: 7.61 s n = 200: error: `simp` failed: maximum number of steps exceeded n = 300: error: `simp` failed: maximum number of steps exceeded, at n = 200; larger sizes skipped 2.06 normalize-sym · library — DiteSplit, complete proofs grows like n^2.06 between n = 50 and 100 n = 10: 44.9 ms n = 50: 491 ms n = 100: 2.04 s 0.83 normalize-sym · library — MatchSplit, complete proofs grows like n^0.83 between n = 50 and 100 n = 10: 14.0 ms n = 50: 34.0 ms n = 100: 60.2 ms 1.01 normalize-sym · library — ReaderState, generation only grows like n^1.01 between n = 1600 and 2600 n = 600: 155 ms n = 1600: 419 ms n = 2600: 685 ms 1.03 normalize-sym · library — GetThrowSet, generation only grows like n^1.03 between n = 500 and 800 n = 200: 63.0 ms n = 500: 157 ms n = 800: 255 ms 1.07 normalize-sym · library — MatchSplit, generation only grows like n^1.07 between n = 1000 and 1500 n = 500: 133 ms n = 1000: 267 ms n = 1500: 412 ms dsimp custom-monad 1.58 dsimp · custom-monad — AddSubCancel, complete proofs grows like n^1.58 between n = 1200 and 2200 n = 200: 56.3 ms n = 1200: 531 ms n = 2200: 1.38 s 1.31 dsimp · custom-monad — AddSubCancelDeep, complete proofs grows like n^1.31 between n = 500 and 900 n = 100: 29.4 ms n = 500: 166 ms n = 900: 359 ms 1.61 dsimp · custom-monad — LetBinding, complete proofs grows like n^1.61 between n = 50 and 100 n = 10: 12.0 ms n = 50: 82.0 ms n = 100: 251 ms 1.59 dsimp · custom-monad — ReaderState, complete proofs grows like n^1.59 between n = 50 and 100 n = 10: 33.8 ms n = 50: 176 ms n = 100: 530 ms – dsimp · custom-monad — PurePrecond, complete proofs fewer than two sizes finished n = 400: 7.56 s n = 2400: timeout > 60 s (process killed after 90 s) n = 4400: timeout > 60 s (process killed after 90 s), at n = 2400; larger sizes skipped 3.15 dsimp · custom-monad — GetThrowSet, complete proofs grows like n^3.15 between n = 100 and 200 n = 10: 39.1 ms n = 50: 599 ms n = 100: 3.57 s n = 200: 31.6 s n = 300: error: `simp` failed: maximum number of steps exceeded 2.03 dsimp · custom-monad — DiteSplit, complete proofs grows like n^2.03 between n = 50 and 100 n = 10: 49.3 ms n = 50: 559 ms n = 100: 2.29 s 1.84 dsimp · custom-monad — MatchSplit, complete proofs grows like n^1.84 between n = 50 and 100 n = 10: 17.5 ms n = 50: 135 ms n = 100: 485 ms 1.79 dsimp · custom-monad — ReaderState, generation only grows like n^1.79 between n = 1600 and 2600 n = 600: 117 ms n = 1600: 593 ms n = 2600: 1.41 s 1.62 dsimp · custom-monad — GetThrowSet, generation only grows like n^1.62 between n = 500 and 800 n = 200: 133 ms n = 500: 479 ms n = 800: 1.02 s – dsimp · custom-monad — MatchSplit, generation only fewer than two sizes finished n = 500: 12.6 s n = 1000: timeout: measured 69.4 s (limit 60 s) n = 1500: timeout: measured 69.4 s (limit 60 s), at n = 1000; larger sizes skipped hand-written-specs 1.95 dsimp · hand-written-specs — AddSubCancel, complete proofs grows like n^1.95 between n = 200 and 1200 n = 200: 898 ms n = 1200: 29.4 s n = 2200: memory > 8 GB 1.96 dsimp · hand-written-specs — AddSubCancelDeep, complete proofs grows like n^1.96 between n = 500 and 900 n = 100: 278 ms n = 500: 5.38 s n = 900: 17.0 s 1.56 dsimp · hand-written-specs — LetBinding, complete proofs grows like n^1.56 between n = 50 and 100 n = 10: 14.6 ms n = 50: 91.7 ms n = 100: 270 ms 1.66 dsimp · hand-written-specs — ReaderState, complete proofs grows like n^1.66 between n = 50 and 100 n = 10: 37.5 ms n = 50: 226 ms n = 100: 712 ms – dsimp · hand-written-specs — PurePrecond, complete proofs fewer than two sizes finished n = 400: 1.68 s n = 2400: timeout > 60 s (process killed after 90 s) n = 4400: timeout > 60 s (process killed after 90 s), at n = 2400; larger sizes skipped 2.72 dsimp · hand-written-specs — GetThrowSet, complete proofs grows like n^2.72 between n = 50 and 100 n = 10: 60.8 ms n = 50: 1.22 s n = 100: 7.99 s n = 200: error: `simp` failed: maximum number of steps exceeded n = 300: error: `simp` failed: maximum number of steps exceeded, at n = 200; larger sizes skipped 2.05 dsimp · hand-written-specs — DiteSplit, complete proofs grows like n^2.05 between n = 50 and 100 n = 10: 61.8 ms n = 50: 706 ms n = 100: 2.91 s 1.95 dsimp · hand-written-specs — MatchSplit, complete proofs grows like n^1.95 between n = 50 and 100 n = 10: 19.8 ms n = 50: 153 ms n = 100: 593 ms 2.01 dsimp · hand-written-specs — ReaderState, generation only grows like n^2.01 between n = 600 and 1600 n = 600: 6.93 s n = 1600: 49.9 s n = 2600: memory > 8 GB 2.51 dsimp · hand-written-specs — GetThrowSet, generation only grows like n^2.51 between n = 500 and 800 n = 200: 1.65 s n = 500: 13.5 s n = 800: 44.0 s – dsimp · hand-written-specs — MatchSplit, generation only fewer than two sizes finished n = 500: 23.2 s n = 1000: timeout > 60 s (process killed after 90 s) n = 1500: timeout > 60 s (process killed after 90 s), at n = 1000; larger sizes skipped library 1.95 dsimp · library — AddSubCancel, complete proofs grows like n^1.95 between n = 200 and 1200 n = 200: 895 ms n = 1200: 29.4 s n = 2200: memory > 8 GB 1.95 dsimp · library — AddSubCancelDeep, complete proofs grows like n^1.95 between n = 500 and 900 n = 100: 283 ms n = 500: 5.40 s n = 900: 17.0 s 1.55 dsimp · library — LetBinding, complete proofs grows like n^1.55 between n = 50 and 100 n = 10: 15.2 ms n = 50: 91.5 ms n = 100: 269 ms 1.63 dsimp · library — ReaderState, complete proofs grows like n^1.63 between n = 50 and 100 n = 10: 38.6 ms n = 50: 229 ms n = 100: 711 ms – dsimp · library — PurePrecond, complete proofs fewer than two sizes finished n = 400: 1.68 s n = 2400: timeout > 60 s (process killed after 90 s) n = 4400: timeout > 60 s (process killed after 90 s), at n = 2400; larger sizes skipped 2.71 dsimp · library — GetThrowSet, complete proofs grows like n^2.71 between n = 50 and 100 n = 10: 61.1 ms n = 50: 1.21 s n = 100: 7.95 s n = 200: error: `simp` failed: maximum number of steps exceeded n = 300: error: `simp` failed: maximum number of steps exceeded, at n = 200; larger sizes skipped 2.03 dsimp · library — DiteSplit, complete proofs grows like n^2.03 between n = 50 and 100 n = 10: 60.5 ms n = 50: 711 ms n = 100: 2.91 s 1.92 dsimp · library — MatchSplit, complete proofs grows like n^1.92 between n = 50 and 100 n = 10: 20.8 ms n = 50: 155 ms n = 100: 588 ms 2.02 dsimp · library — ReaderState, generation only grows like n^2.02 between n = 600 and 1600 n = 600: 6.90 s n = 1600: 50.1 s n = 2600: memory > 8 GB 2.50 dsimp · library — GetThrowSet, generation only grows like n^2.50 between n = 500 and 800 n = 200: 1.57 s n = 500: 13.1 s n = 800: 42.5 s – dsimp · library — MatchSplit, generation only fewer than two sizes finished n = 500: 23.6 s n = 1000: timeout > 60 s (process killed after 90 s) n = 1500: timeout > 60 s (process killed after 90 s), at n = 1000; larger sizes skipped sym-dsimp custom-monad 1.97 sym-dsimp · custom-monad — AddSubCancel, complete proofs grows like n^1.97 between n = 200 and 1200 n = 200: 893 ms n = 1200: 30.6 s n = 2200: timeout > 60 s (process killed after 90 s) 1.99 sym-dsimp · custom-monad — AddSubCancelDeep, complete proofs grows like n^1.99 between n = 500 and 900 n = 100: 271 ms n = 500: 5.44 s n = 900: 17.5 s 1.70 sym-dsimp · custom-monad — LetBinding, complete proofs grows like n^1.70 between n = 50 and 100 n = 10: 14.0 ms n = 50: 119 ms n = 100: 388 ms 1.63 sym-dsimp · custom-monad — ReaderState, complete proofs grows like n^1.63 between n = 50 and 100 n = 10: 42.1 ms n = 50: 267 ms n = 100: 827 ms 2.17 sym-dsimp · custom-monad — PurePrecond, complete proofs grows like n^2.17 between n = 400 and 2400 n = 400: 902 ms n = 2400: 44.1 s n = 4400: memory > 8 GB 3.12 sym-dsimp · custom-monad — GetThrowSet, complete proofs grows like n^3.12 between n = 100 and 200 n = 10: 40.7 ms n = 50: 635 ms n = 100: 3.72 s n = 200: 32.2 s n = 300: error: `simp` failed: maximum number of steps exceeded 2.00 sym-dsimp · custom-monad — DiteSplit, complete proofs grows like n^2.00 between n = 50 and 100 n = 10: 47.5 ms n = 50: 491 ms n = 100: 1.97 s 1.36 sym-dsimp · custom-monad — MatchSplit, complete proofs grows like n^1.36 between n = 50 and 100 n = 10: 13.8 ms n = 50: 55.4 ms n = 100: 142 ms – sym-dsimp · custom-monad — ReaderState, generation only fewer than two sizes finished n = 600: 9.22 s n = 1600: timeout: measured 65.6 s (limit 60 s) n = 2600: timeout: measured 65.6 s (limit 60 s), at n = 1600; larger sizes skipped 1.99 sym-dsimp · custom-monad — GetThrowSet, generation only grows like n^1.99 between n = 500 and 800 n = 200: 747 ms n = 500: 4.41 s n = 800: 11.3 s 1.07 sym-dsimp · custom-monad — MatchSplit, generation only grows like n^1.07 between n = 1000 and 1500 n = 500: 187 ms n = 1000: 382 ms n = 1500: 590 ms hand-written-specs 1.94 sym-dsimp · hand-written-specs — AddSubCancel, complete proofs grows like n^1.94 between n = 200 and 1200 n = 200: 602 ms n = 1200: 19.5 s n = 2200: timeout: measured 65.8 s (limit 60 s) 1.93 sym-dsimp · hand-written-specs — AddSubCancelDeep, complete proofs grows like n^1.93 between n = 500 and 900 n = 100: 212 ms n = 500: 3.67 s n = 900: 11.4 s 1.57 sym-dsimp · hand-written-specs — LetBinding, complete proofs grows like n^1.57 between n = 50 and 100 n = 10: 10.6 ms n = 50: 70.2 ms n = 100: 208 ms 1.61 sym-dsimp · hand-written-specs — ReaderState, complete proofs grows like n^1.61 between n = 50 and 100 n = 10: 38.0 ms n = 50: 223 ms n = 100: 680 ms 2.18 sym-dsimp · hand-written-specs — PurePrecond, complete proofs grows like n^2.18 between n = 400 and 2400 n = 400: 887 ms n = 2400: 44.2 s n = 4400: memory > 8 GB 2.73 sym-dsimp · hand-written-specs — GetThrowSet, complete proofs grows like n^2.73 between n = 50 and 100 n = 10: 57.9 ms n = 50: 1.16 s n = 100: 7.73 s n = 200: error: `simp` failed: maximum number of steps exceeded n = 300: error: `simp` failed: maximum number of steps exceeded, at n = 200; larger sizes skipped 2.01 sym-dsimp · hand-written-specs — DiteSplit, complete proofs grows like n^2.01 between n = 50 and 100 n = 10: 51.6 ms n = 50: 515 ms n = 100: 2.07 s 0.83 sym-dsimp · hand-written-specs — MatchSplit, complete proofs grows like n^0.83 between n = 50 and 100 n = 10: 14.8 ms n = 50: 39.7 ms n = 100: 70.8 ms 1.98 sym-dsimp · hand-written-specs — ReaderState, generation only grows like n^1.98 between n = 600 and 1600 n = 600: 4.61 s n = 1600: 32.0 s n = 2600: timeout: measured 85.9 s (limit 60 s) 1.97 sym-dsimp · hand-written-specs — GetThrowSet, generation only grows like n^1.97 between n = 500 and 800 n = 200: 559 ms n = 500: 3.09 s n = 800: 7.77 s 1.09 sym-dsimp · hand-written-specs — MatchSplit, generation only grows like n^1.09 between n = 1000 and 1500 n = 500: 185 ms n = 1000: 378 ms n = 1500: 588 ms library 1.94 sym-dsimp · library — AddSubCancel, complete proofs grows like n^1.94 between n = 1200 and 2200 n = 200: 240 ms n = 1200: 6.55 s n = 2200: 21.3 s 1.85 sym-dsimp · library — AddSubCancelDeep, complete proofs grows like n^1.85 between n = 500 and 900 n = 100: 106 ms n = 500: 1.35 s n = 900: 3.99 s 1.21 sym-dsimp · library — LetBinding, complete proofs grows like n^1.21 between n = 50 and 100 n = 10: 7.40 ms n = 50: 30.9 ms n = 100: 71.3 ms 1.60 sym-dsimp · library — ReaderState, complete proofs grows like n^1.60 between n = 50 and 100 n = 10: 38.5 ms n = 50: 222 ms n = 100: 673 ms 2.18 sym-dsimp · library — PurePrecond, complete proofs grows like n^2.18 between n = 400 and 2400 n = 400: 886 ms n = 2400: 44.0 s n = 4400: memory > 8 GB 2.73 sym-dsimp · library — GetThrowSet, complete proofs grows like n^2.73 between n = 50 and 100 n = 10: 56.3 ms n = 50: 1.16 s n = 100: 7.70 s n = 200: error: `simp` failed: maximum number of steps exceeded n = 300: error: `simp` failed: maximum number of steps exceeded, at n = 200; larger sizes skipped 2.03 sym-dsimp · library — DiteSplit, complete proofs grows like n^2.03 between n = 50 and 100 n = 10: 48.6 ms n = 50: 505 ms n = 100: 2.06 s 0.84 sym-dsimp · library — MatchSplit, complete proofs grows like n^0.84 between n = 50 and 100 n = 10: 14.8 ms n = 50: 36.4 ms n = 100: 65.0 ms 1.97 sym-dsimp · library — ReaderState, generation only grows like n^1.97 between n = 600 and 1600 n = 600: 3.95 s n = 1600: 27.3 s n = 2600: timeout: measured 74.2 s (limit 60 s) 1.93 sym-dsimp · library — GetThrowSet, generation only grows like n^1.93 between n = 500 and 800 n = 200: 399 ms n = 500: 2.12 s n = 800: 5.26 s 1.09 sym-dsimp · library — MatchSplit, generation only grows like n^1.09 between n = 1000 and 1500 n = 500: 155 ms n = 1000: 318 ms n = 1500: 494 ms wp-simp – 1.69 wp-simp — AddSubCancel, complete proofs grows like n^1.69 between n = 1200 and 2200 n = 200: 222 ms n = 1200: 2.43 s n = 2200: 6.75 s 0.90 wp-simp — LetBinding, complete proofs grows like n^0.90 between n = 50 and 100 n = 10: 21.5 ms n = 50: 62.4 ms n = 100: 117 ms 1.44 wp-simp — ReaderState, complete proofs grows like n^1.44 between n = 50 and 100 n = 10: 52.9 ms n = 50: 239 ms n = 100: 647 ms 1.59 wp-simp — PurePrecond, complete proofs grows like n^1.59 between n = 2400 and 4400 n = 400: 252 ms n = 2400: 2.40 s n = 4400: 6.27 s 3.18 wp-simp — GetThrowSet, complete proofs grows like n^3.18 between n = 200 and 300 n = 10: 56.6 ms n = 50: 490 ms n = 100: 2.10 s n = 200: 12.0 s n = 300: 43.4 s 2.95 wp-simp — DiteSplit, complete proofs grows like n^2.95 between n = 50 and 100 n = 10: 71.0 ms n = 50: 850 ms n = 100: 6.58 s 1.74 wp-simp — ReaderState, generation only grows like n^1.74 between n = 1600 and 2600 n = 600: 1.12 s n = 1600: 4.79 s n = 2600: 11.1 s – wp-simp — GetThrowSet, generation only fewer than two sizes finished n = 200: 5.62 s n = 500: memory > 8 GB n = 800: memory > 8 GB, at n = 500; larger sizes skipped wp-sym – 1.89 wp-sym — AddSubCancel, complete proofs grows like n^1.89 between n = 1200 and 2200 n = 200: 203 ms n = 1200: 3.44 s n = 2200: 10.8 s 0.95 wp-sym — LetBinding, complete proofs grows like n^0.95 between n = 50 and 100 n = 10: 21.4 ms n = 50: 60.0 ms n = 100: 115 ms 1.47 wp-sym — ReaderState, complete proofs grows like n^1.47 between n = 50 and 100 n = 10: 49.9 ms n = 50: 222 ms n = 100: 615 ms 2.11 wp-sym — PurePrecond, complete proofs grows like n^2.11 between n = 2400 and 4400 n = 400: 228 ms n = 2400: 4.98 s n = 4400: 17.9 s 3.77 wp-sym — GetThrowSet, complete proofs grows like n^3.77 between n = 200 and 300 n = 10: 40.7 ms n = 50: 228 ms n = 100: 947 ms n = 200: 6.50 s n = 300: 30.0 s 3.05 wp-sym — DiteSplit, complete proofs grows like n^3.05 between n = 50 and 100 n = 10: 55.7 ms n = 50: 585 ms n = 100: 4.85 s 1.92 wp-sym — ReaderState, generation only grows like n^1.92 between n = 1600 and 2600 n = 600: 1.23 s n = 1600: 6.92 s n = 2600: 17.6 s 1.64 wp-sym — GetThrowSet, generation only grows like n^1.64 between n = 500 and 800 n = 200: 283 ms n = 500: 1.06 s n = 800: 2.30 s

Where the time goes · complete proofs

One bar per route·tier at each case's largest common size: the median of each phase (Prepare, Generate, Grind, Share, Kernel; Other is the rest of Total, mostly Instantiate) on the panel's own linear axis. Routes with a one-time cost add it, hatched. The strip on the right shows each phase's share of the total, which stays readable for fast routes. Other sizes are under each panel.

AddSubCancel · complete proofs · n = 2200 15 of 19 route·tier configurations finished at n = 2200, the largest size. Bars: median time of each phase over the runs, on this panel's linear axis. Strip: each phase's share of the total. Prepare Generate Grind Share Kernel Other (Total − these) one-time cost, not per run median time per run share of total 0 5 s 10 s 15 s 20 s 25 s 0% 50% 100% vcgen hand-written-specs 1.67 s vcgen · hand-written-specs — AddSubCancel, complete proofs, n = 2200 Total 1.67 s Prepare 106 ms · Generate 288 ms · Grind 363 ms · Share 522 ms · Kernel 351 ms · Instantiate 30.6 ms 1 VC · peak 1.48 GB library 4.08 s vcgen · library — AddSubCancel, complete proofs, n = 2200 Total 4.08 s Prepare 103 ms · Generate 2.49 s · Grind 435 ms · Share 658 ms · Kernel 389 ms · Instantiate 50.4 ms 1 VC · peak 1.56 GB vcgen-finish hand-written-specs 1.97 s vcgen-finish · hand-written-specs — AddSubCancel, complete proofs, n = 2200 Total 1.97 s Prepare 105 ms · Generate 515 ms · Grind 0.06 ms · Share 842 ms · Kernel 443 ms · Instantiate 33.5 ms 0 VCs · peak 1.47 GB library 4.46 s vcgen-finish · library — AddSubCancel, complete proofs, n = 2200 Total 4.46 s Prepare 110 ms · Generate 2.80 s · Grind 0.06 ms · Share 973 ms · Kernel 510 ms · Instantiate 55.0 ms 0 VCs · peak 1.57 GB sym – 3.95 s sym — AddSubCancel, complete proofs, n = 2200 Total 3.95 s Prepare 105 ms · Generate 1.26 s · Grind 0.06 ms · Share 1.94 s · Kernel 632 ms · Instantiate 28.5 ms 0 VCs · peak 1.57 GB normalize custom-monad 575 ms normalize · custom-monad — AddSubCancel, complete proofs, n = 2200 Total 575 ms; + one-time 23.9 ms = 599 ms Prepare 0.09 ms · Generate 131 ms · Grind 406 ms · Share 0.10 ms · Kernel 37.0 ms · Instantiate 0.07 ms 1 VC · peak 1.37 GB hand-written-specs 659 ms normalize · hand-written-specs — AddSubCancel, complete proofs, n = 2200 Total 659 ms; + one-time 26.1 ms = 686 ms Prepare 0.09 ms · Generate 196 ms · Grind 376 ms · Share 0.11 ms · Kernel 86.3 ms · Instantiate 0.07 ms 1 VC · peak 1.37 GB library 694 ms normalize · library — AddSubCancel, complete proofs, n = 2200 Total 694 ms; + one-time 26.2 ms = 720 ms Prepare 0.09 ms · Generate 222 ms · Grind 377 ms · Share 0.11 ms · Kernel 94.6 ms · Instantiate 0.07 ms 1 VC · peak 1.36 GB normalize-sym custom-monad 540 ms normalize-sym · custom-monad — AddSubCancel, complete proofs, n = 2200 Total 540 ms; + one-time 23.9 ms = 564 ms Prepare 0.08 ms · Generate 124 ms · Grind 380 ms · Share 0.11 ms · Kernel 37.0 ms · Instantiate 0.06 ms 1 VC · peak 1.37 GB hand-written-specs 656 ms normalize-sym · hand-written-specs — AddSubCancel, complete proofs, n = 2200 Total 656 ms; + one-time 26.1 ms = 682 ms Prepare 0.09 ms · Generate 191 ms · Grind 378 ms · Share 0.10 ms · Kernel 86.5 ms · Instantiate 0.07 ms 1 VC · peak 1.37 GB library 686 ms normalize-sym · library — AddSubCancel, complete proofs, n = 2200 Total 686 ms; + one-time 26.2 ms = 713 ms Prepare 0.08 ms · Generate 218 ms · Grind 377 ms · Share 0.10 ms · Kernel 93.0 ms · Instantiate 0.07 ms 1 VC · peak 1.36 GB dsimp custom-monad 1.38 s dsimp · custom-monad — AddSubCancel, complete proofs, n = 2200 Total 1.38 s; + one-time 23.9 ms = 1.40 s Prepare 0.07 ms · Generate 958 ms · Grind 365 ms · Share 0.10 ms · Kernel 52.1 ms · Instantiate 0.07 ms 1 VC · peak 1.32 GB hand-written-specs memory > 8 GB dsimp · hand-written-specs — AddSubCancel, complete proofs, n = 2200 memory > 8 GB library memory > 8 GB dsimp · library — AddSubCancel, complete proofs, n = 2200 memory > 8 GB sym-dsimp custom-monad timeout > 60 s (process killed after 90 s) sym-dsimp · custom-monad — AddSubCancel, complete proofs, n = 2200 timeout > 60 s (process killed after 90 s) hand-written-specs timeout: measured 65.8 s (limit 60 s) sym-dsimp · hand-written-specs — AddSubCancel, complete proofs, n = 2200 timeout: measured 65.8 s (limit 60 s) library 21.3 s sym-dsimp · library — AddSubCancel, complete proofs, n = 2200 Total 21.3 s; + one-time 26.2 ms = 21.3 s Prepare 0.07 ms · Generate 20.6 s · Grind 390 ms · Share 0.11 ms · Kernel 252 ms · Instantiate 0.07 ms 1 VC · peak 1.37 GB wp-simp – 6.75 s wp-simp — AddSubCancel, complete proofs, n = 2200 Total 6.75 s; + one-time 12.8 ms = 6.77 s Prepare 108 ms · Generate 5.87 s · Grind 358 ms · Share 180 ms · Kernel 242 ms · Instantiate 0.06 ms 1 VC · peak 1.43 GB wp-sym – 10.8 s wp-sym — AddSubCancel, complete proofs, n = 2200 Total 10.8 s; + one-time 12.8 ms = 10.8 s Prepare 109 ms · Generate 695 ms · Grind 387 ms · Share 849 ms · Kernel 8.77 s · Instantiate 0.06 ms 1 VC · peak 1.48 GB
AddSubCancel at the other sizes: n = 200, n = 1200
AddSubCancel · complete proofs · n = 200 19 of 19 route·tier configurations finished at n = 200. Bars: median time of each phase over the runs, on this panel's linear axis. Strip: each phase's share of the total. Prepare Generate Grind Share Kernel Other (Total − these) one-time cost, not per run median time per run share of total 0 200 ms 400 ms 600 ms 800 ms 1000 ms 0% 50% 100% vcgen hand-written-specs 111 ms vcgen · hand-written-specs — AddSubCancel, complete proofs, n = 200 Total 111 ms Prepare 9.41 ms · Generate 27.8 ms · Grind 31.6 ms · Share 15.7 ms · Kernel 24.8 ms · Instantiate 1.60 ms 1 VC · peak 1.31 GB library 284 ms vcgen · library — AddSubCancel, complete proofs, n = 200 Total 284 ms Prepare 9.40 ms · Generate 197 ms · Grind 32.4 ms · Share 16.5 ms · Kernel 26.6 ms · Instantiate 1.96 ms 1 VC · peak 1.31 GB vcgen-finish hand-written-specs 113 ms vcgen-finish · hand-written-specs — AddSubCancel, complete proofs, n = 200 Total 113 ms Prepare 9.32 ms · Generate 48.5 ms · Grind 0.05 ms · Share 22.0 ms · Kernel 31.1 ms · Instantiate 1.81 ms 0 VCs · peak 1.31 GB library 302 ms vcgen-finish · library — AddSubCancel, complete proofs, n = 200 Total 302 ms Prepare 9.70 ms · Generate 231 ms · Grind 0.05 ms · Share 23.8 ms · Kernel 34.3 ms · Instantiate 2.29 ms 0 VCs · peak 1.30 GB sym – 182 ms sym — AddSubCancel, complete proofs, n = 200 Total 182 ms Prepare 9.14 ms · Generate 94.3 ms · Grind 0.05 ms · Share 40.0 ms · Kernel 36.6 ms · Instantiate 1.34 ms 0 VCs · peak 1.31 GB normalize custom-monad 49.7 ms normalize · custom-monad — AddSubCancel, complete proofs, n = 200 Total 49.7 ms; + one-time 23.9 ms = 73.7 ms Prepare 0.08 ms · Generate 12.2 ms · Grind 33.6 ms · Share 0.09 ms · Kernel 3.44 ms · Instantiate 0.05 ms 1 VC · peak 1.31 GB hand-written-specs 59.4 ms normalize · hand-written-specs — AddSubCancel, complete proofs, n = 200 Total 59.4 ms; + one-time 26.1 ms = 85.6 ms Prepare 0.08 ms · Generate 18.2 ms · Grind 34.0 ms · Share 0.09 ms · Kernel 6.93 ms · Instantiate 0.06 ms 1 VC · peak 1.31 GB library 63.1 ms normalize · library — AddSubCancel, complete proofs, n = 200 Total 63.1 ms; + one-time 26.2 ms = 89.2 ms Prepare 0.09 ms · Generate 20.8 ms · Grind 34.6 ms · Share 0.11 ms · Kernel 7.21 ms · Instantiate 0.07 ms 1 VC · peak 1.31 GB normalize-sym custom-monad 49.2 ms normalize-sym · custom-monad — AddSubCancel, complete proofs, n = 200 Total 49.2 ms; + one-time 23.9 ms = 73.1 ms Prepare 0.08 ms · Generate 11.5 ms · Grind 33.7 ms · Share 0.08 ms · Kernel 3.42 ms · Instantiate 0.05 ms 1 VC · peak 1.31 GB hand-written-specs 59.4 ms normalize-sym · hand-written-specs — AddSubCancel, complete proofs, n = 200 Total 59.4 ms; + one-time 26.1 ms = 85.6 ms Prepare 0.09 ms · Generate 17.9 ms · Grind 34.0 ms · Share 0.10 ms · Kernel 6.99 ms · Instantiate 0.05 ms 1 VC · peak 1.31 GB library 61.3 ms normalize-sym · library — AddSubCancel, complete proofs, n = 200 Total 61.3 ms; + one-time 26.2 ms = 87.5 ms Prepare 0.08 ms · Generate 20.1 ms · Grind 33.5 ms · Share 0.10 ms · Kernel 7.16 ms · Instantiate 0.05 ms 1 VC · peak 1.31 GB dsimp custom-monad 56.3 ms dsimp · custom-monad — AddSubCancel, complete proofs, n = 200 Total 56.3 ms; + one-time 23.9 ms = 80.2 ms Prepare 0.07 ms · Generate 18.2 ms · Grind 32.8 ms · Share 0.09 ms · Kernel 4.75 ms · Instantiate 0.05 ms 1 VC · peak 1.31 GB hand-written-specs 898 ms dsimp · hand-written-specs — AddSubCancel, complete proofs, n = 200 Total 898 ms; + one-time 26.1 ms = 924 ms Prepare 0.07 ms · Generate 856 ms · Grind 32.8 ms · Share 0.11 ms · Kernel 8.48 ms · Instantiate 0.06 ms 1 VC · peak 1.36 GB library 895 ms dsimp · library — AddSubCancel, complete proofs, n = 200 Total 895 ms; + one-time 26.2 ms = 921 ms Prepare 0.07 ms · Generate 853 ms · Grind 32.6 ms · Share 0.11 ms · Kernel 8.70 ms · Instantiate 0.06 ms 1 VC · peak 1.36 GB sym-dsimp custom-monad 893 ms sym-dsimp · custom-monad — AddSubCancel, complete proofs, n = 200 Total 893 ms; + one-time 23.9 ms = 917 ms Prepare 0.07 ms · Generate 856 ms · Grind 33.3 ms · Share 0.10 ms · Kernel 3.43 ms · Instantiate 0.05 ms 1 VC · peak 1.31 GB hand-written-specs 602 ms sym-dsimp · hand-written-specs — AddSubCancel, complete proofs, n = 200 Total 602 ms; + one-time 26.1 ms = 628 ms Prepare 0.07 ms · Generate 551 ms · Grind 33.7 ms · Share 0.10 ms · Kernel 16.8 ms · Instantiate 0.05 ms 1 VC · peak 1.31 GB library 240 ms sym-dsimp · library — AddSubCancel, complete proofs, n = 200 Total 240 ms; + one-time 26.2 ms = 266 ms Prepare 0.08 ms · Generate 188 ms · Grind 33.6 ms · Share 0.10 ms · Kernel 17.4 ms · Instantiate 0.05 ms 1 VC · peak 1.31 GB wp-simp – 222 ms wp-simp — AddSubCancel, complete proofs, n = 200 Total 222 ms; + one-time 12.8 ms = 235 ms Prepare 9.69 ms · Generate 153 ms · Grind 31.3 ms · Share 9.24 ms · Kernel 17.8 ms · Instantiate 0.05 ms 1 VC · peak 1.31 GB wp-sym – 203 ms wp-sym — AddSubCancel, complete proofs, n = 200 Total 203 ms; + one-time 12.8 ms = 215 ms Prepare 9.61 ms · Generate 54.5 ms · Grind 32.3 ms · Share 22.2 ms · Kernel 82.9 ms · Instantiate 0.04 ms 1 VC · peak 1.31 GB
AddSubCancel · complete proofs · n = 1200 19 of 19 route·tier configurations finished at n = 1200. Bars: median time of each phase over the runs, on this panel's linear axis. Strip: each phase's share of the total. Prepare Generate Grind Share Kernel Other (Total − these) one-time cost, not per run median time per run share of total 0 10 s 20 s 30 s 40 s 0% 50% 100% vcgen hand-written-specs 754 ms vcgen · hand-written-specs — AddSubCancel, complete proofs, n = 1200 Total 754 ms Prepare 52.3 ms · Generate 151 ms · Grind 189 ms · Share 162 ms · Kernel 170 ms · Instantiate 13.4 ms 1 VC · peak 1.39 GB library 1.95 s vcgen · library — AddSubCancel, complete proofs, n = 1200 Total 1.95 s Prepare 53.2 ms · Generate 1.27 s · Grind 219 ms · Share 195 ms · Kernel 196 ms · Instantiate 22.1 ms 1 VC · peak 1.42 GB vcgen-finish hand-written-specs 807 ms vcgen-finish · hand-written-specs — AddSubCancel, complete proofs, n = 1200 Total 807 ms Prepare 54.6 ms · Generate 270 ms · Grind 0.07 ms · Share 251 ms · Kernel 217 ms · Instantiate 14.1 ms 0 VCs · peak 1.39 GB library 2.10 s vcgen-finish · library — AddSubCancel, complete proofs, n = 1200 Total 2.10 s Prepare 54.6 ms · Generate 1.43 s · Grind 0.06 ms · Share 329 ms · Kernel 261 ms · Instantiate 25.3 ms 0 VCs · peak 1.46 GB sym – 1.74 s sym — AddSubCancel, complete proofs, n = 1200 Total 1.74 s Prepare 54.6 ms · Generate 642 ms · Grind 0.06 ms · Share 718 ms · Kernel 304 ms · Instantiate 12.8 ms 0 VCs · peak 1.44 GB normalize custom-monad 286 ms normalize · custom-monad — AddSubCancel, complete proofs, n = 1200 Total 286 ms; + one-time 23.9 ms = 310 ms Prepare 0.09 ms · Generate 70.6 ms · Grind 196 ms · Share 0.09 ms · Kernel 19.4 ms · Instantiate 0.07 ms 1 VC · peak 1.31 GB hand-written-specs 344 ms normalize · hand-written-specs — AddSubCancel, complete proofs, n = 1200 Total 344 ms; + one-time 26.1 ms = 370 ms Prepare 0.08 ms · Generate 105 ms · Grind 195 ms · Share 0.10 ms · Kernel 43.2 ms · Instantiate 0.06 ms 1 VC · peak 1.31 GB library 359 ms normalize · library — AddSubCancel, complete proofs, n = 1200 Total 359 ms; + one-time 26.2 ms = 385 ms Prepare 0.08 ms · Generate 120 ms · Grind 195 ms · Share 0.10 ms · Kernel 44.5 ms · Instantiate 0.07 ms 1 VC · peak 1.31 GB normalize-sym custom-monad 284 ms normalize-sym · custom-monad — AddSubCancel, complete proofs, n = 1200 Total 284 ms; + one-time 23.9 ms = 308 ms Prepare 0.08 ms · Generate 67.4 ms · Grind 196 ms · Share 0.10 ms · Kernel 20.2 ms · Instantiate 0.06 ms 1 VC · peak 1.31 GB hand-written-specs 346 ms normalize-sym · hand-written-specs — AddSubCancel, complete proofs, n = 1200 Total 346 ms; + one-time 26.1 ms = 372 ms Prepare 0.08 ms · Generate 104 ms · Grind 198 ms · Share 0.10 ms · Kernel 43.2 ms · Instantiate 0.07 ms 1 VC · peak 1.31 GB library 363 ms normalize-sym · library — AddSubCancel, complete proofs, n = 1200 Total 363 ms; + one-time 26.2 ms = 389 ms Prepare 0.09 ms · Generate 118 ms · Grind 197 ms · Share 0.10 ms · Kernel 45.2 ms · Instantiate 0.06 ms 1 VC · peak 1.31 GB dsimp custom-monad 531 ms dsimp · custom-monad — AddSubCancel, complete proofs, n = 1200 Total 531 ms; + one-time 23.9 ms = 555 ms Prepare 0.07 ms · Generate 312 ms · Grind 190 ms · Share 0.09 ms · Kernel 28.0 ms · Instantiate 0.06 ms 1 VC · peak 1.34 GB hand-written-specs 29.4 s dsimp · hand-written-specs — AddSubCancel, complete proofs, n = 1200 Total 29.4 s; + one-time 26.1 ms = 29.5 s Prepare 0.07 ms · Generate 29.2 s · Grind 190 ms · Share 0.11 ms · Kernel 55.6 ms · Instantiate 0.06 ms 1 VC · peak 3.62 GB library 29.4 s dsimp · library — AddSubCancel, complete proofs, n = 1200 Total 29.4 s; + one-time 26.2 ms = 29.4 s Prepare 0.07 ms · Generate 29.1 s · Grind 191 ms · Share 0.10 ms · Kernel 56.7 ms · Instantiate 0.06 ms 1 VC · peak 3.61 GB sym-dsimp custom-monad 30.6 s sym-dsimp · custom-monad — AddSubCancel, complete proofs, n = 1200 Total 30.6 s; + one-time 23.9 ms = 30.6 s Prepare 0.07 ms · Generate 30.4 s · Grind 197 ms · Share 0.10 ms · Kernel 19.9 ms · Instantiate 0.06 ms 1 VC · peak 1.33 GB hand-written-specs 19.5 s sym-dsimp · hand-written-specs — AddSubCancel, complete proofs, n = 1200 Total 19.5 s; + one-time 26.1 ms = 19.6 s Prepare 0.07 ms · Generate 19.2 s · Grind 201 ms · Share 0.10 ms · Kernel 120 ms · Instantiate 0.07 ms 1 VC · peak 1.34 GB library 6.55 s sym-dsimp · library — AddSubCancel, complete proofs, n = 1200 Total 6.55 s; + one-time 26.2 ms = 6.58 s Prepare 0.08 ms · Generate 6.23 s · Grind 202 ms · Share 0.12 ms · Kernel 122 ms · Instantiate 0.07 ms 1 VC · peak 1.34 GB wp-simp – 2.43 s wp-simp — AddSubCancel, complete proofs, n = 1200 Total 2.43 s; + one-time 12.8 ms = 2.44 s Prepare 55.7 ms · Generate 1.99 s · Grind 187 ms · Share 69.6 ms · Kernel 120 ms · Instantiate 0.05 ms 1 VC · peak 1.34 GB wp-sym – 3.44 s wp-sym — AddSubCancel, complete proofs, n = 1200 Total 3.44 s; + one-time 12.8 ms = 3.45 s Prepare 55.9 ms · Generate 350 ms · Grind 199 ms · Share 285 ms · Kernel 2.54 s · Instantiate 0.05 ms 1 VC · peak 1.40 GB
AddSubCancelDeep · complete proofs · n = 900 17 of 17 route·tier configurations finished at n = 900, the largest size. Bars: median time of each phase over the runs, on this panel's linear axis. Strip: each phase's share of the total. Prepare Generate Grind Share Kernel Other (Total − these) one-time cost, not per run median time per run share of total 0 5 s 10 s 15 s 20 s 0% 50% 100% vcgen hand-written-specs 746 ms vcgen · hand-written-specs — AddSubCancelDeep, complete proofs, n = 900 Total 746 ms Prepare 87.8 ms · Generate 136 ms · Grind 146 ms · Share 117 ms · Kernel 245 ms · Instantiate 9.96 ms 1 VC · peak 1.38 GB library 15.6 s vcgen · library — AddSubCancelDeep, complete proofs, n = 900 Total 15.6 s Prepare 88.7 ms · Generate 7.86 s · Grind 259 ms · Share 6.33 s · Kernel 766 ms · Instantiate 342 ms 1 VC · peak 2.30 GB vcgen-finish hand-written-specs 796 ms vcgen-finish · hand-written-specs — AddSubCancelDeep, complete proofs, n = 900 Total 796 ms Prepare 88.8 ms · Generate 231 ms · Grind 0.05 ms · Share 185 ms · Kernel 277 ms · Instantiate 10.6 ms 0 VCs · peak 1.39 GB library 15.7 s vcgen-finish · library — AddSubCancelDeep, complete proofs, n = 900 Total 15.7 s Prepare 88.8 ms · Generate 7.98 s · Grind 0.06 ms · Share 6.45 s · Kernel 769 ms · Instantiate 347 ms 0 VCs · peak 2.33 GB sym – 1.50 s sym — AddSubCancelDeep, complete proofs, n = 900 Total 1.50 s Prepare 92.3 ms · Generate 587 ms · Grind 0.06 ms · Share 473 ms · Kernel 336 ms · Instantiate 9.79 ms 0 VCs · peak 1.41 GB normalize custom-monad 223 ms normalize · custom-monad — AddSubCancelDeep, complete proofs, n = 900 Total 223 ms; + one-time 38.3 ms = 261 ms Prepare 0.09 ms · Generate 58.3 ms · Grind 148 ms · Share 0.10 ms · Kernel 16.3 ms · Instantiate 0.07 ms 1 VC · peak 1.31 GB hand-written-specs 263 ms normalize · hand-written-specs — AddSubCancelDeep, complete proofs, n = 900 Total 263 ms; + one-time 41.7 ms = 305 ms Prepare 0.09 ms · Generate 83.4 ms · Grind 146 ms · Share 0.13 ms · Kernel 32.8 ms · Instantiate 0.07 ms 1 VC · peak 1.31 GB library 361 ms normalize · library — AddSubCancelDeep, complete proofs, n = 900 Total 361 ms; + one-time 42.6 ms = 404 ms Prepare 0.09 ms · Generate 166 ms · Grind 146 ms · Share 0.13 ms · Kernel 47.9 ms · Instantiate 0.06 ms 1 VC · peak 1.31 GB normalize-sym custom-monad 220 ms normalize-sym · custom-monad — AddSubCancelDeep, complete proofs, n = 900 Total 220 ms; + one-time 38.3 ms = 259 ms Prepare 0.09 ms · Generate 56.6 ms · Grind 147 ms · Share 0.09 ms · Kernel 16.2 ms · Instantiate 0.07 ms 1 VC · peak 1.31 GB hand-written-specs 269 ms normalize-sym · hand-written-specs — AddSubCancelDeep, complete proofs, n = 900 Total 269 ms; + one-time 41.7 ms = 311 ms Prepare 0.10 ms · Generate 82.5 ms · Grind 148 ms · Share 0.12 ms · Kernel 37.2 ms · Instantiate 0.06 ms 1 VC · peak 1.31 GB library 358 ms normalize-sym · library — AddSubCancelDeep, complete proofs, n = 900 Total 358 ms; + one-time 42.6 ms = 400 ms Prepare 0.10 ms · Generate 163 ms · Grind 146 ms · Share 0.13 ms · Kernel 48.3 ms · Instantiate 0.07 ms 1 VC · peak 1.31 GB dsimp custom-monad 359 ms dsimp · custom-monad — AddSubCancelDeep, complete proofs, n = 900 Total 359 ms; + one-time 38.3 ms = 397 ms Prepare 0.08 ms · Generate 193 ms · Grind 143 ms · Share 0.10 ms · Kernel 22.6 ms · Instantiate 0.06 ms 1 VC · peak 1.31 GB hand-written-specs 17.0 s dsimp · hand-written-specs — AddSubCancelDeep, complete proofs, n = 900 Total 17.0 s; + one-time 41.7 ms = 17.0 s Prepare 0.08 ms · Generate 16.8 s · Grind 146 ms · Share 0.15 ms · Kernel 48.2 ms · Instantiate 0.06 ms 1 VC · peak 2.67 GB library 17.0 s dsimp · library — AddSubCancelDeep, complete proofs, n = 900 Total 17.0 s; + one-time 42.6 ms = 17.0 s Prepare 0.08 ms · Generate 16.8 s · Grind 149 ms · Share 0.14 ms · Kernel 58.2 ms · Instantiate 0.07 ms 1 VC · peak 2.66 GB sym-dsimp custom-monad 17.5 s sym-dsimp · custom-monad — AddSubCancelDeep, complete proofs, n = 900 Total 17.5 s; + one-time 38.3 ms = 17.5 s Prepare 0.08 ms · Generate 17.3 s · Grind 146 ms · Share 0.11 ms · Kernel 16.4 ms · Instantiate 0.06 ms 1 VC · peak 1.33 GB hand-written-specs 11.4 s sym-dsimp · hand-written-specs — AddSubCancelDeep, complete proofs, n = 900 Total 11.4 s; + one-time 41.7 ms = 11.4 s Prepare 0.08 ms · Generate 11.2 s · Grind 150 ms · Share 0.13 ms · Kernel 87.7 ms · Instantiate 0.07 ms 1 VC · peak 1.34 GB library 3.99 s sym-dsimp · library — AddSubCancelDeep, complete proofs, n = 900 Total 3.99 s; + one-time 42.6 ms = 4.04 s Prepare 0.08 ms · Generate 3.70 s · Grind 150 ms · Share 0.14 ms · Kernel 142 ms · Instantiate 0.06 ms 1 VC · peak 1.34 GB
AddSubCancelDeep at the other sizes: n = 100, n = 500
AddSubCancelDeep · complete proofs · n = 100 17 of 17 route·tier configurations finished at n = 100. Bars: median time of each phase over the runs, on this panel's linear axis. Strip: each phase's share of the total. Prepare Generate Grind Share Kernel Other (Total − these) one-time cost, not per run median time per run share of total 0 250 ms 500 ms 750 ms 1000 ms 1250 ms 0% 50% 100% vcgen hand-written-specs 105 ms vcgen · hand-written-specs — AddSubCancelDeep, complete proofs, n = 100 Total 105 ms Prepare 16.4 ms · Generate 31.0 ms · Grind 17.7 ms · Share 9.85 ms · Kernel 28.9 ms · Instantiate 0.87 ms 1 VC · peak 1.31 GB library 1.17 s vcgen · library — AddSubCancelDeep, complete proofs, n = 100 Total 1.17 s Prepare 15.9 ms · Generate 721 ms · Grind 25.5 ms · Share 313 ms · Kernel 67.1 ms · Instantiate 26.9 ms 1 VC · peak 1.42 GB vcgen-finish hand-written-specs 103 ms vcgen-finish · hand-written-specs — AddSubCancelDeep, complete proofs, n = 100 Total 103 ms Prepare 15.8 ms · Generate 41.5 ms · Grind 0.05 ms · Share 12.8 ms · Kernel 31.2 ms · Instantiate 0.97 ms 0 VCs · peak 1.31 GB library 1.18 s vcgen-finish · library — AddSubCancelDeep, complete proofs, n = 100 Total 1.18 s Prepare 16.0 ms · Generate 753 ms · Grind 0.06 ms · Share 317 ms · Kernel 70.5 ms · Instantiate 27.3 ms 0 VCs · peak 1.42 GB sym – 123 ms sym — AddSubCancelDeep, complete proofs, n = 100 Total 123 ms Prepare 16.1 ms · Generate 57.6 ms · Grind 0.05 ms · Share 19.1 ms · Kernel 29.3 ms · Instantiate 0.75 ms 0 VCs · peak 1.31 GB normalize custom-monad 27.7 ms normalize · custom-monad — AddSubCancelDeep, complete proofs, n = 100 Total 27.7 ms; + one-time 38.3 ms = 66.1 ms Prepare 0.09 ms · Generate 7.23 ms · Grind 18.1 ms · Share 0.10 ms · Kernel 1.93 ms · Instantiate 0.05 ms 1 VC · peak 1.31 GB hand-written-specs 32.6 ms normalize · hand-written-specs — AddSubCancelDeep, complete proofs, n = 100 Total 32.6 ms; + one-time 41.7 ms = 74.3 ms Prepare 0.09 ms · Generate 9.99 ms · Grind 18.3 ms · Share 0.13 ms · Kernel 3.78 ms · Instantiate 0.05 ms 1 VC · peak 1.31 GB library 43.4 ms normalize · library — AddSubCancelDeep, complete proofs, n = 100 Total 43.4 ms; + one-time 42.6 ms = 86.0 ms Prepare 0.09 ms · Generate 19.4 ms · Grind 18.1 ms · Share 0.13 ms · Kernel 5.36 ms · Instantiate 0.05 ms 1 VC · peak 1.31 GB normalize-sym custom-monad 27.4 ms normalize-sym · custom-monad — AddSubCancelDeep, complete proofs, n = 100 Total 27.4 ms; + one-time 38.3 ms = 65.7 ms Prepare 0.09 ms · Generate 6.77 ms · Grind 18.2 ms · Share 0.09 ms · Kernel 1.94 ms · Instantiate 0.05 ms 1 VC · peak 1.31 GB hand-written-specs 32.3 ms normalize-sym · hand-written-specs — AddSubCancelDeep, complete proofs, n = 100 Total 32.3 ms; + one-time 41.7 ms = 74.1 ms Prepare 0.10 ms · Generate 9.70 ms · Grind 18.4 ms · Share 0.13 ms · Kernel 3.78 ms · Instantiate 0.05 ms 1 VC · peak 1.31 GB library 43.4 ms normalize-sym · library — AddSubCancelDeep, complete proofs, n = 100 Total 43.4 ms; + one-time 42.6 ms = 86.0 ms Prepare 0.10 ms · Generate 19.2 ms · Grind 18.3 ms · Share 0.13 ms · Kernel 5.38 ms · Instantiate 0.05 ms 1 VC · peak 1.31 GB dsimp custom-monad 29.4 ms dsimp · custom-monad — AddSubCancelDeep, complete proofs, n = 100 Total 29.4 ms; + one-time 38.3 ms = 67.7 ms Prepare 0.08 ms · Generate 8.59 ms · Grind 17.7 ms · Share 0.10 ms · Kernel 2.62 ms · Instantiate 0.05 ms 1 VC · peak 1.31 GB hand-written-specs 278 ms dsimp · hand-written-specs — AddSubCancelDeep, complete proofs, n = 100 Total 278 ms; + one-time 41.7 ms = 320 ms Prepare 0.08 ms · Generate 256 ms · Grind 17.5 ms · Share 0.13 ms · Kernel 4.54 ms · Instantiate 0.06 ms 1 VC · peak 1.31 GB library 283 ms dsimp · library — AddSubCancelDeep, complete proofs, n = 100 Total 283 ms; + one-time 42.6 ms = 325 ms Prepare 0.08 ms · Generate 259 ms · Grind 17.4 ms · Share 0.13 ms · Kernel 6.13 ms · Instantiate 0.06 ms 1 VC · peak 1.31 GB sym-dsimp custom-monad 271 ms sym-dsimp · custom-monad — AddSubCancelDeep, complete proofs, n = 100 Total 271 ms; + one-time 38.3 ms = 309 ms Prepare 0.07 ms · Generate 251 ms · Grind 18.0 ms · Share 0.10 ms · Kernel 1.92 ms · Instantiate 0.05 ms 1 VC · peak 1.31 GB hand-written-specs 212 ms sym-dsimp · hand-written-specs — AddSubCancelDeep, complete proofs, n = 100 Total 212 ms; + one-time 41.7 ms = 254 ms Prepare 0.08 ms · Generate 185 ms · Grind 17.9 ms · Share 0.13 ms · Kernel 8.77 ms · Instantiate 0.05 ms 1 VC · peak 1.31 GB library 106 ms sym-dsimp · library — AddSubCancelDeep, complete proofs, n = 100 Total 106 ms; + one-time 42.6 ms = 148 ms Prepare 0.08 ms · Generate 73.4 ms · Grind 18.1 ms · Share 0.13 ms · Kernel 13.5 ms · Instantiate 0.05 ms 1 VC · peak 1.31 GB
AddSubCancelDeep · complete proofs · n = 500 17 of 17 route·tier configurations finished at n = 500. Bars: median time of each phase over the runs, on this panel's linear axis. Strip: each phase's share of the total. Prepare Generate Grind Share Kernel Other (Total − these) one-time cost, not per run median time per run share of total 0 2 s 4 s 6 s 8 s 10 s 0% 50% 100% vcgen hand-written-specs 399 ms vcgen · hand-written-specs — AddSubCancelDeep, complete proofs, n = 500 Total 399 ms Prepare 52.0 ms · Generate 81.4 ms · Grind 80.0 ms · Share 52.9 ms · Kernel 128 ms · Instantiate 4.73 ms 1 VC · peak 1.32 GB library 8.05 s vcgen · library — AddSubCancelDeep, complete proofs, n = 500 Total 8.05 s Prepare 52.1 ms · Generate 4.08 s · Grind 137 ms · Share 3.23 s · Kernel 378 ms · Instantiate 174 ms 1 VC · peak 1.90 GB vcgen-finish hand-written-specs 411 ms vcgen-finish · hand-written-specs — AddSubCancelDeep, complete proofs, n = 500 Total 411 ms Prepare 51.3 ms · Generate 134 ms · Grind 0.05 ms · Share 72.9 ms · Kernel 146 ms · Instantiate 5.16 ms 0 VCs · peak 1.32 GB library 8.08 s vcgen-finish · library — AddSubCancelDeep, complete proofs, n = 500 Total 8.08 s Prepare 50.8 ms · Generate 4.17 s · Grind 0.05 ms · Share 3.29 s · Kernel 395 ms · Instantiate 174 ms 0 VCs · peak 1.90 GB sym – 703 ms sym — AddSubCancelDeep, complete proofs, n = 500 Total 703 ms Prepare 53.3 ms · Generate 309 ms · Grind 0.05 ms · Share 172 ms · Kernel 166 ms · Instantiate 4.22 ms 0 VCs · peak 1.37 GB normalize custom-monad 124 ms normalize · custom-monad — AddSubCancelDeep, complete proofs, n = 500 Total 124 ms; + one-time 38.3 ms = 163 ms Prepare 0.09 ms · Generate 33.0 ms · Grind 81.9 ms · Share 0.10 ms · Kernel 8.98 ms · Instantiate 0.06 ms 1 VC · peak 1.31 GB hand-written-specs 146 ms normalize · hand-written-specs — AddSubCancelDeep, complete proofs, n = 500 Total 146 ms; + one-time 41.7 ms = 188 ms Prepare 0.09 ms · Generate 46.0 ms · Grind 82.0 ms · Share 0.12 ms · Kernel 17.7 ms · Instantiate 0.06 ms 1 VC · peak 1.31 GB library 202 ms normalize · library — AddSubCancelDeep, complete proofs, n = 500 Total 202 ms; + one-time 42.6 ms = 245 ms Prepare 0.09 ms · Generate 94.7 ms · Grind 81.8 ms · Share 0.15 ms · Kernel 25.4 ms · Instantiate 0.06 ms 1 VC · peak 1.31 GB normalize-sym custom-monad 123 ms normalize-sym · custom-monad — AddSubCancelDeep, complete proofs, n = 500 Total 123 ms; + one-time 38.3 ms = 161 ms Prepare 0.09 ms · Generate 31.7 ms · Grind 81.4 ms · Share 0.10 ms · Kernel 9.01 ms · Instantiate 0.06 ms 1 VC · peak 1.31 GB hand-written-specs 145 ms normalize-sym · hand-written-specs — AddSubCancelDeep, complete proofs, n = 500 Total 145 ms; + one-time 41.7 ms = 187 ms Prepare 0.09 ms · Generate 45.5 ms · Grind 81.8 ms · Share 0.13 ms · Kernel 17.8 ms · Instantiate 0.06 ms 1 VC · peak 1.31 GB library 200 ms normalize-sym · library — AddSubCancelDeep, complete proofs, n = 500 Total 200 ms; + one-time 42.6 ms = 243 ms Prepare 0.10 ms · Generate 92.3 ms · Grind 81.9 ms · Share 0.13 ms · Kernel 25.4 ms · Instantiate 0.07 ms 1 VC · peak 1.31 GB dsimp custom-monad 166 ms dsimp · custom-monad — AddSubCancelDeep, complete proofs, n = 500 Total 166 ms; + one-time 38.3 ms = 204 ms Prepare 0.08 ms · Generate 73.0 ms · Grind 80.0 ms · Share 0.10 ms · Kernel 12.4 ms · Instantiate 0.06 ms 1 VC · peak 1.31 GB hand-written-specs 5.38 s dsimp · hand-written-specs — AddSubCancelDeep, complete proofs, n = 500 Total 5.38 s; + one-time 41.7 ms = 5.42 s Prepare 0.08 ms · Generate 5.28 s · Grind 80.0 ms · Share 0.13 ms · Kernel 22.6 ms · Instantiate 0.06 ms 1 VC · peak 1.75 GB library 5.40 s dsimp · library — AddSubCancelDeep, complete proofs, n = 500 Total 5.40 s; + one-time 42.6 ms = 5.45 s Prepare 0.08 ms · Generate 5.29 s · Grind 79.5 ms · Share 0.15 ms · Kernel 29.9 ms · Instantiate 0.06 ms 1 VC · peak 1.75 GB sym-dsimp custom-monad 5.44 s sym-dsimp · custom-monad — AddSubCancelDeep, complete proofs, n = 500 Total 5.44 s; + one-time 38.3 ms = 5.48 s Prepare 0.07 ms · Generate 5.35 s · Grind 80.3 ms · Share 0.10 ms · Kernel 8.94 ms · Instantiate 0.06 ms 1 VC · peak 1.32 GB hand-written-specs 3.67 s sym-dsimp · hand-written-specs — AddSubCancelDeep, complete proofs, n = 500 Total 3.67 s; + one-time 41.7 ms = 3.71 s Prepare 0.08 ms · Generate 3.54 s · Grind 81.9 ms · Share 0.14 ms · Kernel 45.7 ms · Instantiate 0.06 ms 1 VC · peak 1.33 GB library 1.35 s sym-dsimp · library — AddSubCancelDeep, complete proofs, n = 500 Total 1.35 s; + one-time 42.6 ms = 1.39 s Prepare 0.08 ms · Generate 1.20 s · Grind 80.8 ms · Share 0.13 ms · Kernel 70.4 ms · Instantiate 0.06 ms 1 VC · peak 1.33 GB
LetBinding · complete proofs · n = 100 18 of 18 route·tier configurations finished at n = 100, the largest size. Bars: median time of each phase over the runs, on this panel's linear axis. Strip: each phase's share of the total. Prepare Generate Grind Share Kernel Other (Total − these) one-time cost, not per run median time per run share of total 0 100 ms 200 ms 300 ms 400 ms 500 ms 0% 50% 100% vcgen hand-written-specs 119 ms vcgen · hand-written-specs — LetBinding, complete proofs, n = 100 Total 119 ms Prepare 12.2 ms · Generate 18.9 ms · Grind 18.9 ms · Share 17.1 ms · Kernel 48.8 ms · Instantiate 2.59 ms 1 VC · peak 1.31 GB library 215 ms vcgen · library — LetBinding, complete proofs, n = 100 Total 215 ms Prepare 12.1 ms · Generate 111 ms · Grind 19.1 ms · Share 17.8 ms · Kernel 51.9 ms · Instantiate 2.85 ms 1 VC · peak 1.31 GB vcgen-finish hand-written-specs 127 ms vcgen-finish · hand-written-specs — LetBinding, complete proofs, n = 100 Total 127 ms Prepare 12.1 ms · Generate 30.7 ms · Grind 0.05 ms · Share 21.4 ms · Kernel 59.7 ms · Instantiate 2.84 ms 0 VCs · peak 1.32 GB library 225 ms vcgen-finish · library — LetBinding, complete proofs, n = 100 Total 225 ms Prepare 12.2 ms · Generate 124 ms · Grind 0.06 ms · Share 22.2 ms · Kernel 63.0 ms · Instantiate 3.07 ms 0 VCs · peak 1.31 GB normalize custom-monad 29.5 ms normalize · custom-monad — LetBinding, complete proofs, n = 100 Total 29.5 ms; + one-time 18.4 ms = 48.0 ms Prepare 0.08 ms · Generate 7.56 ms · Grind 19.5 ms · Share 0.09 ms · Kernel 1.99 ms · Instantiate 0.05 ms 1 VC · peak 1.31 GB hand-written-specs 34.2 ms normalize · hand-written-specs — LetBinding, complete proofs, n = 100 Total 34.2 ms; + one-time 20.1 ms = 54.3 ms Prepare 0.09 ms · Generate 10.5 ms · Grind 19.5 ms · Share 0.10 ms · Kernel 3.76 ms · Instantiate 0.05 ms 1 VC · peak 1.31 GB library 35.6 ms normalize · library — LetBinding, complete proofs, n = 100 Total 35.6 ms; + one-time 20.0 ms = 55.7 ms Prepare 0.08 ms · Generate 11.7 ms · Grind 19.5 ms · Share 0.10 ms · Kernel 3.89 ms · Instantiate 0.05 ms 1 VC · peak 1.31 GB normalize-sym custom-monad 28.9 ms normalize-sym · custom-monad — LetBinding, complete proofs, n = 100 Total 28.9 ms; + one-time 18.4 ms = 47.4 ms Prepare 0.08 ms · Generate 7.03 ms · Grind 19.4 ms · Share 0.09 ms · Kernel 2.00 ms · Instantiate 0.05 ms 1 VC · peak 1.31 GB hand-written-specs 34.3 ms normalize-sym · hand-written-specs — LetBinding, complete proofs, n = 100 Total 34.3 ms; + one-time 20.1 ms = 54.3 ms Prepare 0.09 ms · Generate 10.5 ms · Grind 19.5 ms · Share 0.10 ms · Kernel 3.77 ms · Instantiate 0.05 ms 1 VC · peak 1.31 GB library 35.4 ms normalize-sym · library — LetBinding, complete proofs, n = 100 Total 35.4 ms; + one-time 20.0 ms = 55.4 ms Prepare 0.08 ms · Generate 11.3 ms · Grind 19.7 ms · Share 0.10 ms · Kernel 3.88 ms · Instantiate 0.05 ms 1 VC · peak 1.31 GB dsimp custom-monad 251 ms dsimp · custom-monad — LetBinding, complete proofs, n = 100 Total 251 ms; + one-time 18.4 ms = 269 ms Prepare 0.07 ms · Generate 228 ms · Grind 19.3 ms · Share 0.09 ms · Kernel 2.95 ms · Instantiate 0.05 ms 1 VC · peak 1.31 GB hand-written-specs 270 ms dsimp · hand-written-specs — LetBinding, complete proofs, n = 100 Total 270 ms; + one-time 20.1 ms = 290 ms Prepare 0.08 ms · Generate 245 ms · Grind 19.4 ms · Share 0.11 ms · Kernel 4.79 ms · Instantiate 0.05 ms 1 VC · peak 1.31 GB library 269 ms dsimp · library — LetBinding, complete proofs, n = 100 Total 269 ms; + one-time 20.0 ms = 289 ms Prepare 0.08 ms · Generate 244 ms · Grind 19.4 ms · Share 0.11 ms · Kernel 4.89 ms · Instantiate 0.06 ms 1 VC · peak 1.31 GB sym-dsimp custom-monad 388 ms sym-dsimp · custom-monad — LetBinding, complete proofs, n = 100 Total 388 ms; + one-time 18.4 ms = 406 ms Prepare 0.07 ms · Generate 366 ms · Grind 19.3 ms · Share 0.10 ms · Kernel 2.01 ms · Instantiate 0.05 ms 1 VC · peak 1.31 GB hand-written-specs 208 ms sym-dsimp · hand-written-specs — LetBinding, complete proofs, n = 100 Total 208 ms; + one-time 20.1 ms = 228 ms Prepare 0.07 ms · Generate 179 ms · Grind 19.3 ms · Share 0.10 ms · Kernel 9.03 ms · Instantiate 0.05 ms 1 VC · peak 1.31 GB library 71.3 ms sym-dsimp · library — LetBinding, complete proofs, n = 100 Total 71.3 ms; + one-time 20.0 ms = 91.4 ms Prepare 0.07 ms · Generate 42.2 ms · Grind 19.4 ms · Share 0.10 ms · Kernel 9.38 ms · Instantiate 0.05 ms 1 VC · peak 1.31 GB wp-simp – 117 ms wp-simp — LetBinding, complete proofs, n = 100 Total 117 ms; + one-time 12.8 ms = 130 ms Prepare 12.2 ms · Generate 71.1 ms · Grind 18.7 ms · Share 4.64 ms · Kernel 9.49 ms · Instantiate 0.04 ms 1 VC · peak 1.31 GB wp-sym – 115 ms wp-sym — LetBinding, complete proofs, n = 100 Total 115 ms; + one-time 12.8 ms = 128 ms Prepare 12.3 ms · Generate 34.3 ms · Grind 19.1 ms · Share 16.4 ms · Kernel 32.7 ms · Instantiate 0.04 ms 1 VC · peak 1.31 GB
LetBinding at the other sizes: n = 10, n = 50
LetBinding · complete proofs · n = 10 18 of 18 route·tier configurations finished at n = 10. Bars: median time of each phase over the runs, on this panel's linear axis. Strip: each phase's share of the total. Prepare Generate Grind Share Kernel Other (Total − these) one-time cost, not per run median time per run share of total 0 10 ms 20 ms 30 ms 40 ms 0% 50% 100% vcgen hand-written-specs 23.6 ms vcgen · hand-written-specs — LetBinding, complete proofs, n = 10 Total 23.6 ms Prepare 7.34 ms · Generate 8.19 ms · Grind 2.91 ms · Share 1.75 ms · Kernel 3.02 ms · Instantiate 0.17 ms 1 VC · peak 1.31 GB library 37.2 ms vcgen · library — LetBinding, complete proofs, n = 10 Total 37.2 ms Prepare 7.17 ms · Generate 21.6 ms · Grind 2.99 ms · Share 1.80 ms · Kernel 3.19 ms · Instantiate 0.20 ms 1 VC · peak 1.31 GB vcgen-finish hand-written-specs 23.2 ms vcgen-finish · hand-written-specs — LetBinding, complete proofs, n = 10 Total 23.2 ms Prepare 7.26 ms · Generate 9.98 ms · Grind 0.06 ms · Share 2.01 ms · Kernel 3.59 ms · Instantiate 0.21 ms 0 VCs · peak 1.31 GB library 37.1 ms vcgen-finish · library — LetBinding, complete proofs, n = 10 Total 37.1 ms Prepare 7.06 ms · Generate 23.5 ms · Grind 0.05 ms · Share 2.18 ms · Kernel 3.76 ms · Instantiate 0.21 ms 0 VCs · peak 1.31 GB normalize custom-monad 5.56 ms normalize · custom-monad — LetBinding, complete proofs, n = 10 Total 5.56 ms; + one-time 18.4 ms = 24.0 ms Prepare 0.09 ms · Generate 1.45 ms · Grind 3.37 ms · Share 0.08 ms · Kernel 0.31 ms · Instantiate 0.04 ms 1 VC · peak 1.26 GB hand-written-specs 6.22 ms normalize · hand-written-specs — LetBinding, complete proofs, n = 10 Total 6.22 ms; + one-time 20.1 ms = 26.3 ms Prepare 0.08 ms · Generate 1.83 ms · Grind 3.38 ms · Share 0.09 ms · Kernel 0.51 ms · Instantiate 0.04 ms 1 VC · peak 1.26 GB library 6.43 ms normalize · library — LetBinding, complete proofs, n = 10 Total 6.43 ms; + one-time 20.0 ms = 26.5 ms Prepare 0.08 ms · Generate 1.97 ms · Grind 3.42 ms · Share 0.09 ms · Kernel 0.55 ms · Instantiate 0.04 ms 1 VC · peak 1.26 GB normalize-sym custom-monad 5.54 ms normalize-sym · custom-monad — LetBinding, complete proofs, n = 10 Total 5.54 ms; + one-time 18.4 ms = 24.0 ms Prepare 0.08 ms · Generate 1.31 ms · Grind 3.47 ms · Share 0.08 ms · Kernel 0.31 ms · Instantiate 0.04 ms 1 VC · peak 1.26 GB hand-written-specs 6.11 ms normalize-sym · hand-written-specs — LetBinding, complete proofs, n = 10 Total 6.11 ms; + one-time 20.1 ms = 26.2 ms Prepare 0.09 ms · Generate 1.67 ms · Grind 3.46 ms · Share 0.09 ms · Kernel 0.52 ms · Instantiate 0.04 ms 1 VC · peak 1.26 GB library 6.16 ms normalize-sym · library — LetBinding, complete proofs, n = 10 Total 6.16 ms; + one-time 20.0 ms = 26.2 ms Prepare 0.08 ms · Generate 1.77 ms · Grind 3.42 ms · Share 0.09 ms · Kernel 0.52 ms · Instantiate 0.04 ms 1 VC · peak 1.26 GB dsimp custom-monad 12.0 ms dsimp · custom-monad — LetBinding, complete proofs, n = 10 Total 12.0 ms; + one-time 18.4 ms = 30.4 ms Prepare 0.07 ms · Generate 7.83 ms · Grind 3.27 ms · Share 0.09 ms · Kernel 0.44 ms · Instantiate 0.04 ms 1 VC · peak 1.26 GB hand-written-specs 14.6 ms dsimp · hand-written-specs — LetBinding, complete proofs, n = 10 Total 14.6 ms; + one-time 20.1 ms = 34.6 ms Prepare 0.07 ms · Generate 10.1 ms · Grind 3.35 ms · Share 0.10 ms · Kernel 0.66 ms · Instantiate 0.05 ms 1 VC · peak 1.31 GB library 15.2 ms dsimp · library — LetBinding, complete proofs, n = 10 Total 15.2 ms; + one-time 20.0 ms = 35.2 ms Prepare 0.07 ms · Generate 10.5 ms · Grind 3.39 ms · Share 0.11 ms · Kernel 0.67 ms · Instantiate 0.04 ms 1 VC · peak 1.31 GB sym-dsimp custom-monad 14.0 ms sym-dsimp · custom-monad — LetBinding, complete proofs, n = 10 Total 14.0 ms; + one-time 18.4 ms = 32.5 ms Prepare 0.07 ms · Generate 9.80 ms · Grind 3.43 ms · Share 0.09 ms · Kernel 0.34 ms · Instantiate 0.05 ms 1 VC · peak 1.31 GB hand-written-specs 10.6 ms sym-dsimp · hand-written-specs — LetBinding, complete proofs, n = 10 Total 10.6 ms; + one-time 20.1 ms = 30.6 ms Prepare 0.08 ms · Generate 5.59 ms · Grind 3.45 ms · Share 0.10 ms · Kernel 1.11 ms · Instantiate 0.04 ms 1 VC · peak 1.26 GB library 7.40 ms sym-dsimp · library — LetBinding, complete proofs, n = 10 Total 7.40 ms; + one-time 20.0 ms = 27.4 ms Prepare 0.07 ms · Generate 2.50 ms · Grind 3.36 ms · Share 0.09 ms · Kernel 1.11 ms · Instantiate 0.04 ms 1 VC · peak 1.26 GB wp-simp – 21.5 ms wp-simp — LetBinding, complete proofs, n = 10 Total 21.5 ms; + one-time 12.8 ms = 34.3 ms Prepare 7.06 ms · Generate 8.92 ms · Grind 2.88 ms · Share 0.82 ms · Kernel 1.57 ms · Instantiate 0.04 ms 1 VC · peak 1.31 GB wp-sym – 21.4 ms wp-sym — LetBinding, complete proofs, n = 10 Total 21.4 ms; + one-time 12.8 ms = 34.2 ms Prepare 7.09 ms · Generate 5.51 ms · Grind 3.21 ms · Share 2.18 ms · Kernel 3.03 ms · Instantiate 0.04 ms 1 VC · peak 1.31 GB
LetBinding · complete proofs · n = 50 18 of 18 route·tier configurations finished at n = 50. Bars: median time of each phase over the runs, on this panel's linear axis. Strip: each phase's share of the total. Prepare Generate Grind Share Kernel Other (Total − these) one-time cost, not per run median time per run share of total 0 50 ms 100 ms 150 ms 0% 50% 100% vcgen hand-written-specs 54.5 ms vcgen · hand-written-specs — LetBinding, complete proofs, n = 50 Total 54.5 ms Prepare 9.24 ms · Generate 13.1 ms · Grind 10.1 ms · Share 7.02 ms · Kernel 13.8 ms · Instantiate 0.90 ms 1 VC · peak 1.31 GB library 103 ms vcgen · library — LetBinding, complete proofs, n = 50 Total 103 ms Prepare 9.35 ms · Generate 60.5 ms · Grind 10.3 ms · Share 7.28 ms · Kernel 14.6 ms · Instantiate 1.00 ms 1 VC · peak 1.31 GB vcgen-finish hand-written-specs 55.6 ms vcgen-finish · hand-written-specs — LetBinding, complete proofs, n = 50 Total 55.6 ms Prepare 9.27 ms · Generate 19.2 ms · Grind 0.05 ms · Share 8.21 ms · Kernel 17.0 ms · Instantiate 1.02 ms 0 VCs · peak 1.31 GB library 105 ms vcgen-finish · library — LetBinding, complete proofs, n = 50 Total 105 ms Prepare 9.26 ms · Generate 67.5 ms · Grind 0.06 ms · Share 8.64 ms · Kernel 18.1 ms · Instantiate 1.11 ms 0 VCs · peak 1.31 GB normalize custom-monad 16.2 ms normalize · custom-monad — LetBinding, complete proofs, n = 50 Total 16.2 ms; + one-time 18.4 ms = 34.6 ms Prepare 0.08 ms · Generate 4.24 ms · Grind 10.4 ms · Share 0.09 ms · Kernel 1.10 ms · Instantiate 0.04 ms 1 VC · peak 1.26 GB hand-written-specs 18.9 ms normalize · hand-written-specs — LetBinding, complete proofs, n = 50 Total 18.9 ms; + one-time 20.1 ms = 39.0 ms Prepare 0.09 ms · Generate 5.69 ms · Grind 10.7 ms · Share 0.10 ms · Kernel 1.95 ms · Instantiate 0.05 ms 1 VC · peak 1.31 GB library 19.6 ms normalize · library — LetBinding, complete proofs, n = 50 Total 19.6 ms; + one-time 20.0 ms = 39.6 ms Prepare 0.09 ms · Generate 6.40 ms · Grind 10.6 ms · Share 0.09 ms · Kernel 2.03 ms · Instantiate 0.05 ms 1 VC · peak 1.31 GB normalize-sym custom-monad 15.7 ms normalize-sym · custom-monad — LetBinding, complete proofs, n = 50 Total 15.7 ms; + one-time 18.4 ms = 34.2 ms Prepare 0.08 ms · Generate 3.94 ms · Grind 10.4 ms · Share 0.08 ms · Kernel 1.07 ms · Instantiate 0.04 ms 1 VC · peak 1.26 GB hand-written-specs 18.7 ms normalize-sym · hand-written-specs — LetBinding, complete proofs, n = 50 Total 18.7 ms; + one-time 20.1 ms = 38.7 ms Prepare 0.09 ms · Generate 5.57 ms · Grind 10.7 ms · Share 0.09 ms · Kernel 1.96 ms · Instantiate 0.05 ms 1 VC · peak 1.31 GB library 19.2 ms normalize-sym · library — LetBinding, complete proofs, n = 50 Total 19.2 ms; + one-time 20.0 ms = 39.2 ms Prepare 0.08 ms · Generate 6.06 ms · Grind 10.6 ms · Share 0.10 ms · Kernel 2.03 ms · Instantiate 0.05 ms 1 VC · peak 1.31 GB dsimp custom-monad 82.0 ms dsimp · custom-monad — LetBinding, complete proofs, n = 50 Total 82.0 ms; + one-time 18.4 ms = 100 ms Prepare 0.07 ms · Generate 69.5 ms · Grind 10.5 ms · Share 0.09 ms · Kernel 1.55 ms · Instantiate 0.05 ms 1 VC · peak 1.31 GB hand-written-specs 91.7 ms dsimp · hand-written-specs — LetBinding, complete proofs, n = 50 Total 91.7 ms; + one-time 20.1 ms = 112 ms Prepare 0.07 ms · Generate 78.3 ms · Grind 10.4 ms · Share 0.10 ms · Kernel 2.45 ms · Instantiate 0.05 ms 1 VC · peak 1.31 GB library 91.5 ms dsimp · library — LetBinding, complete proofs, n = 50 Total 91.5 ms; + one-time 20.0 ms = 112 ms Prepare 0.07 ms · Generate 77.9 ms · Grind 10.6 ms · Share 0.10 ms · Kernel 2.53 ms · Instantiate 0.05 ms 1 VC · peak 1.31 GB sym-dsimp custom-monad 119 ms sym-dsimp · custom-monad — LetBinding, complete proofs, n = 50 Total 119 ms; + one-time 18.4 ms = 138 ms Prepare 0.07 ms · Generate 108 ms · Grind 10.5 ms · Share 0.09 ms · Kernel 1.08 ms · Instantiate 0.05 ms 1 VC · peak 1.31 GB hand-written-specs 70.2 ms sym-dsimp · hand-written-specs — LetBinding, complete proofs, n = 50 Total 70.2 ms; + one-time 20.1 ms = 90.3 ms Prepare 0.07 ms · Generate 54.6 ms · Grind 10.6 ms · Share 0.09 ms · Kernel 4.62 ms · Instantiate 0.05 ms 1 VC · peak 1.31 GB library 30.9 ms sym-dsimp · library — LetBinding, complete proofs, n = 50 Total 30.9 ms; + one-time 20.0 ms = 50.9 ms Prepare 0.07 ms · Generate 15.1 ms · Grind 10.6 ms · Share 0.10 ms · Kernel 4.78 ms · Instantiate 0.05 ms 1 VC · peak 1.31 GB wp-simp – 62.4 ms wp-simp — LetBinding, complete proofs, n = 50 Total 62.4 ms; + one-time 12.8 ms = 75.2 ms Prepare 9.64 ms · Generate 35.3 ms · Grind 9.95 ms · Share 2.55 ms · Kernel 5.11 ms · Instantiate 0.04 ms 1 VC · peak 1.31 GB wp-sym – 60.0 ms wp-sym — LetBinding, complete proofs, n = 50 Total 60.0 ms; + one-time 12.8 ms = 72.8 ms Prepare 9.30 ms · Generate 18.4 ms · Grind 10.2 ms · Share 8.22 ms · Kernel 13.5 ms · Instantiate 0.04 ms 1 VC · peak 1.31 GB
ReaderState · complete proofs · n = 100 16 of 18 route·tier configurations finished at n = 100, the largest size. Bars: median time of each phase over the runs, on this panel's linear axis. Strip: each phase's share of the total. Prepare Generate Grind Share Kernel Other (Total − these) one-time cost, not per run median time per run share of total 0 250 ms 500 ms 750 ms 1000 ms 1250 ms 0% 50% 100% vcgen hand-written-specs 578 ms vcgen · hand-written-specs — ReaderState, complete proofs, n = 100 Total 578 ms Prepare 9.06 ms · Generate 23.1 ms · Grind 518 ms · Share 8.76 ms · Kernel 17.5 ms · Instantiate 1.09 ms 1 VC · peak 1.37 GB library 1.01 s vcgen · library — ReaderState, complete proofs, n = 100 Total 1.01 s Prepare 8.92 ms · Generate 343 ms · Grind 541 ms · Share 75.0 ms · Kernel 31.8 ms · Instantiate 9.11 ms 1 VC · peak 1.35 GB vcgen-finish hand-written-specs error: `finish` failed, at n = 10; larger sizes skipped vcgen-finish · hand-written-specs — ReaderState, complete proofs, n = 100 error: `finish` failed, at n = 10; larger sizes skipped library error: `finish` failed, at n = 10; larger sizes skipped vcgen-finish · library — ReaderState, complete proofs, n = 100 error: `finish` failed, at n = 10; larger sizes skipped normalize custom-monad 529 ms normalize · custom-monad — ReaderState, complete proofs, n = 100 Total 529 ms; + one-time 24.7 ms = 554 ms Prepare 0.08 ms · Generate 8.72 ms · Grind 518 ms · Share 0.10 ms · Kernel 2.30 ms · Instantiate 0.07 ms 1 VC · peak 1.37 GB hand-written-specs 534 ms normalize · hand-written-specs — ReaderState, complete proofs, n = 100 Total 534 ms; + one-time 27.5 ms = 561 ms Prepare 0.09 ms · Generate 12.5 ms · Grind 517 ms · Share 0.10 ms · Kernel 3.36 ms · Instantiate 0.07 ms 1 VC · peak 1.37 GB library 548 ms normalize · library — ReaderState, complete proofs, n = 100 Total 548 ms; + one-time 28.3 ms = 576 ms Prepare 0.09 ms · Generate 21.9 ms · Grind 519 ms · Share 0.11 ms · Kernel 5.00 ms · Instantiate 0.07 ms 1 VC · peak 1.37 GB normalize-sym custom-monad 534 ms normalize-sym · custom-monad — ReaderState, complete proofs, n = 100 Total 534 ms; + one-time 24.7 ms = 559 ms Prepare 0.08 ms · Generate 8.47 ms · Grind 523 ms · Share 0.11 ms · Kernel 2.39 ms · Instantiate 0.07 ms 1 VC · peak 1.37 GB hand-written-specs 533 ms normalize-sym · hand-written-specs — ReaderState, complete proofs, n = 100 Total 533 ms; + one-time 27.5 ms = 560 ms Prepare 0.09 ms · Generate 12.2 ms · Grind 516 ms · Share 0.10 ms · Kernel 3.38 ms · Instantiate 0.06 ms 1 VC · peak 1.37 GB library 547 ms normalize-sym · library — ReaderState, complete proofs, n = 100 Total 547 ms; + one-time 28.3 ms = 575 ms Prepare 0.09 ms · Generate 21.9 ms · Grind 520 ms · Share 0.11 ms · Kernel 4.86 ms · Instantiate 0.06 ms 1 VC · peak 1.37 GB dsimp custom-monad 530 ms dsimp · custom-monad — ReaderState, complete proofs, n = 100 Total 530 ms; + one-time 24.7 ms = 555 ms Prepare 0.07 ms · Generate 9.18 ms · Grind 518 ms · Share 0.10 ms · Kernel 2.36 ms · Instantiate 0.07 ms 1 VC · peak 1.36 GB hand-written-specs 712 ms dsimp · hand-written-specs — ReaderState, complete proofs, n = 100 Total 712 ms; + one-time 27.5 ms = 739 ms Prepare 0.08 ms · Generate 192 ms · Grind 516 ms · Share 0.11 ms · Kernel 3.30 ms · Instantiate 0.06 ms 1 VC · peak 1.33 GB library 711 ms dsimp · library — ReaderState, complete proofs, n = 100 Total 711 ms; + one-time 28.3 ms = 739 ms Prepare 0.08 ms · Generate 192 ms · Grind 516 ms · Share 0.11 ms · Kernel 4.87 ms · Instantiate 0.07 ms 1 VC · peak 1.33 GB sym-dsimp custom-monad 827 ms sym-dsimp · custom-monad — ReaderState, complete proofs, n = 100 Total 827 ms; + one-time 24.7 ms = 852 ms Prepare 0.08 ms · Generate 307 ms · Grind 517 ms · Share 0.11 ms · Kernel 2.41 ms · Instantiate 0.07 ms 1 VC · peak 1.32 GB hand-written-specs 680 ms sym-dsimp · hand-written-specs — ReaderState, complete proofs, n = 100 Total 680 ms; + one-time 27.5 ms = 707 ms Prepare 0.07 ms · Generate 154 ms · Grind 518 ms · Share 0.11 ms · Kernel 8.08 ms · Instantiate 0.07 ms 1 VC · peak 1.34 GB library 673 ms sym-dsimp · library — ReaderState, complete proofs, n = 100 Total 673 ms; + one-time 28.3 ms = 701 ms Prepare 0.07 ms · Generate 139 ms · Grind 520 ms · Share 0.11 ms · Kernel 11.8 ms · Instantiate 0.07 ms 1 VC · peak 1.34 GB wp-simp – 647 ms wp-simp — ReaderState, complete proofs, n = 100 Total 647 ms; + one-time 14.1 ms = 661 ms Prepare 8.92 ms · Generate 117 ms · Grind 506 ms · Share 4.10 ms · Kernel 11.1 ms · Instantiate 0.06 ms 1 VC · peak 1.35 GB wp-sym – 615 ms wp-sym — ReaderState, complete proofs, n = 100 Total 615 ms; + one-time 14.1 ms = 629 ms Prepare 8.94 ms · Generate 52.1 ms · Grind 506 ms · Share 12.5 ms · Kernel 34.2 ms · Instantiate 0.06 ms 1 VC · peak 1.37 GB
ReaderState at the other sizes: n = 10, n = 50
ReaderState · complete proofs · n = 10 16 of 18 route·tier configurations finished at n = 10. Bars: median time of each phase over the runs, on this panel's linear axis. Strip: each phase's share of the total. Prepare Generate Grind Share Kernel Other (Total − these) one-time cost, not per run median time per run share of total 0 25 ms 50 ms 75 ms 100 ms 125 ms 0% 50% 100% vcgen hand-written-specs 55.1 ms vcgen · hand-written-specs — ReaderState, complete proofs, n = 10 Total 55.1 ms Prepare 7.12 ms · Generate 11.7 ms · Grind 30.1 ms · Share 1.79 ms · Kernel 3.67 ms · Instantiate 0.16 ms 1 VC · peak 1.31 GB library 103 ms vcgen · library — ReaderState, complete proofs, n = 10 Total 103 ms Prepare 6.72 ms · Generate 52.2 ms · Grind 30.4 ms · Share 7.17 ms · Kernel 5.50 ms · Instantiate 0.67 ms 1 VC · peak 1.31 GB vcgen-finish hand-written-specs error: `finish` failed vcgen-finish · hand-written-specs — ReaderState, complete proofs, n = 10 error: `finish` failed library error: `finish` failed vcgen-finish · library — ReaderState, complete proofs, n = 10 error: `finish` failed normalize custom-monad 33.5 ms normalize · custom-monad — ReaderState, complete proofs, n = 10 Total 33.5 ms; + one-time 24.7 ms = 58.2 ms Prepare 0.08 ms · Generate 1.66 ms · Grind 31.0 ms · Share 0.09 ms · Kernel 0.39 ms · Instantiate 0.06 ms 1 VC · peak 1.31 GB hand-written-specs 33.5 ms normalize · hand-written-specs — ReaderState, complete proofs, n = 10 Total 33.5 ms; + one-time 27.5 ms = 61.0 ms Prepare 0.09 ms · Generate 2.05 ms · Grind 30.5 ms · Share 0.10 ms · Kernel 0.50 ms · Instantiate 0.05 ms 1 VC · peak 1.31 GB library 34.8 ms normalize · library — ReaderState, complete proofs, n = 10 Total 34.8 ms; + one-time 28.3 ms = 63.0 ms Prepare 0.09 ms · Generate 3.14 ms · Grind 30.4 ms · Share 0.10 ms · Kernel 0.73 ms · Instantiate 0.06 ms 1 VC · peak 1.31 GB normalize-sym custom-monad 32.6 ms normalize-sym · custom-monad — ReaderState, complete proofs, n = 10 Total 32.6 ms; + one-time 24.7 ms = 57.3 ms Prepare 0.09 ms · Generate 1.44 ms · Grind 30.3 ms · Share 0.09 ms · Kernel 0.40 ms · Instantiate 0.06 ms 1 VC · peak 1.31 GB hand-written-specs 33.4 ms normalize-sym · hand-written-specs — ReaderState, complete proofs, n = 10 Total 33.4 ms; + one-time 27.5 ms = 60.9 ms Prepare 0.09 ms · Generate 1.86 ms · Grind 30.5 ms · Share 0.10 ms · Kernel 0.50 ms · Instantiate 0.05 ms 1 VC · peak 1.31 GB library 34.3 ms normalize-sym · library — ReaderState, complete proofs, n = 10 Total 34.3 ms; + one-time 28.3 ms = 62.6 ms Prepare 0.09 ms · Generate 2.84 ms · Grind 30.2 ms · Share 0.10 ms · Kernel 0.73 ms · Instantiate 0.05 ms 1 VC · peak 1.31 GB dsimp custom-monad 33.8 ms dsimp · custom-monad — ReaderState, complete proofs, n = 10 Total 33.8 ms; + one-time 24.7 ms = 58.4 ms Prepare 0.08 ms · Generate 2.55 ms · Grind 30.3 ms · Share 0.09 ms · Kernel 0.39 ms · Instantiate 0.05 ms 1 VC · peak 1.31 GB hand-written-specs 37.5 ms dsimp · hand-written-specs — ReaderState, complete proofs, n = 10 Total 37.5 ms; + one-time 27.5 ms = 65.1 ms Prepare 0.07 ms · Generate 6.29 ms · Grind 30.3 ms · Share 0.11 ms · Kernel 0.50 ms · Instantiate 0.05 ms 1 VC · peak 1.31 GB library 38.6 ms dsimp · library — ReaderState, complete proofs, n = 10 Total 38.6 ms; + one-time 28.3 ms = 66.9 ms Prepare 0.08 ms · Generate 7.15 ms · Grind 30.3 ms · Share 0.10 ms · Kernel 0.73 ms · Instantiate 0.05 ms 1 VC · peak 1.31 GB sym-dsimp custom-monad 42.1 ms sym-dsimp · custom-monad — ReaderState, complete proofs, n = 10 Total 42.1 ms; + one-time 24.7 ms = 66.8 ms Prepare 0.07 ms · Generate 10.5 ms · Grind 30.7 ms · Share 0.10 ms · Kernel 0.41 ms · Instantiate 0.05 ms 1 VC · peak 1.31 GB hand-written-specs 38.0 ms sym-dsimp · hand-written-specs — ReaderState, complete proofs, n = 10 Total 38.0 ms; + one-time 27.5 ms = 65.5 ms Prepare 0.07 ms · Generate 5.83 ms · Grind 30.5 ms · Share 0.10 ms · Kernel 1.03 ms · Instantiate 0.06 ms 1 VC · peak 1.31 GB library 38.5 ms sym-dsimp · library — ReaderState, complete proofs, n = 10 Total 38.5 ms; + one-time 28.3 ms = 66.8 ms Prepare 0.08 ms · Generate 6.15 ms · Grind 30.4 ms · Share 0.11 ms · Kernel 1.48 ms · Instantiate 0.05 ms 1 VC · peak 1.31 GB wp-simp – 52.9 ms wp-simp — ReaderState, complete proofs, n = 10 Total 52.9 ms; + one-time 14.1 ms = 67.0 ms Prepare 6.87 ms · Generate 13.7 ms · Grind 29.5 ms · Share 0.83 ms · Kernel 1.90 ms · Instantiate 0.04 ms 1 VC · peak 1.31 GB wp-sym – 49.9 ms wp-sym — ReaderState, complete proofs, n = 10 Total 49.9 ms; + one-time 14.1 ms = 64.1 ms Prepare 6.73 ms · Generate 7.64 ms · Grind 30.3 ms · Share 1.79 ms · Kernel 3.22 ms · Instantiate 0.04 ms 1 VC · peak 1.31 GB
ReaderState · complete proofs · n = 50 16 of 18 route·tier configurations finished at n = 50. Bars: median time of each phase over the runs, on this panel's linear axis. Strip: each phase's share of the total. Prepare Generate Grind Share Kernel Other (Total − these) one-time cost, not per run median time per run share of total 0 100 ms 200 ms 300 ms 400 ms 500 ms 0% 50% 100% vcgen hand-written-specs 210 ms vcgen · hand-written-specs — ReaderState, complete proofs, n = 50 Total 210 ms Prepare 7.63 ms · Generate 17.0 ms · Grind 170 ms · Share 4.82 ms · Kernel 9.59 ms · Instantiate 0.54 ms 1 VC · peak 1.31 GB library 408 ms vcgen · library — ReaderState, complete proofs, n = 50 Total 408 ms Prepare 7.65 ms · Generate 175 ms · Grind 173 ms · Share 31.7 ms · Kernel 16.7 ms · Instantiate 3.74 ms 1 VC · peak 1.31 GB vcgen-finish hand-written-specs error: `finish` failed, at n = 10; larger sizes skipped vcgen-finish · hand-written-specs — ReaderState, complete proofs, n = 50 error: `finish` failed, at n = 10; larger sizes skipped library error: `finish` failed, at n = 10; larger sizes skipped vcgen-finish · library — ReaderState, complete proofs, n = 50 error: `finish` failed, at n = 10; larger sizes skipped normalize custom-monad 176 ms normalize · custom-monad — ReaderState, complete proofs, n = 50 Total 176 ms; + one-time 24.7 ms = 201 ms Prepare 0.09 ms · Generate 4.77 ms · Grind 170 ms · Share 0.09 ms · Kernel 1.27 ms · Instantiate 0.06 ms 1 VC · peak 1.31 GB hand-written-specs 179 ms normalize · hand-written-specs — ReaderState, complete proofs, n = 50 Total 179 ms; + one-time 27.5 ms = 206 ms Prepare 0.09 ms · Generate 6.76 ms · Grind 170 ms · Share 0.10 ms · Kernel 1.76 ms · Instantiate 0.07 ms 1 VC · peak 1.31 GB library 185 ms normalize · library — ReaderState, complete proofs, n = 50 Total 185 ms; + one-time 28.3 ms = 213 ms Prepare 0.09 ms · Generate 11.4 ms · Grind 171 ms · Share 0.11 ms · Kernel 2.49 ms · Instantiate 0.07 ms 1 VC · peak 1.31 GB normalize-sym custom-monad 177 ms normalize-sym · custom-monad — ReaderState, complete proofs, n = 50 Total 177 ms; + one-time 24.7 ms = 202 ms Prepare 0.09 ms · Generate 4.59 ms · Grind 171 ms · Share 0.10 ms · Kernel 1.26 ms · Instantiate 0.06 ms 1 VC · peak 1.31 GB hand-written-specs 178 ms normalize-sym · hand-written-specs — ReaderState, complete proofs, n = 50 Total 178 ms; + one-time 27.5 ms = 205 ms Prepare 0.09 ms · Generate 6.42 ms · Grind 169 ms · Share 0.10 ms · Kernel 1.70 ms · Instantiate 0.06 ms 1 VC · peak 1.31 GB library 184 ms normalize-sym · library — ReaderState, complete proofs, n = 50 Total 184 ms; + one-time 28.3 ms = 213 ms Prepare 0.09 ms · Generate 11.2 ms · Grind 170 ms · Share 0.10 ms · Kernel 2.52 ms · Instantiate 0.07 ms 1 VC · peak 1.31 GB dsimp custom-monad 176 ms dsimp · custom-monad — ReaderState, complete proofs, n = 50 Total 176 ms; + one-time 24.7 ms = 201 ms Prepare 0.07 ms · Generate 5.05 ms · Grind 169 ms · Share 0.10 ms · Kernel 1.27 ms · Instantiate 0.06 ms 1 VC · peak 1.31 GB hand-written-specs 226 ms dsimp · hand-written-specs — ReaderState, complete proofs, n = 50 Total 226 ms; + one-time 27.5 ms = 253 ms Prepare 0.07 ms · Generate 54.2 ms · Grind 169 ms · Share 0.11 ms · Kernel 1.70 ms · Instantiate 0.06 ms 1 VC · peak 1.31 GB library 229 ms dsimp · library — ReaderState, complete proofs, n = 50 Total 229 ms; + one-time 28.3 ms = 257 ms Prepare 0.08 ms · Generate 55.5 ms · Grind 170 ms · Share 0.12 ms · Kernel 2.53 ms · Instantiate 0.06 ms 1 VC · peak 1.31 GB sym-dsimp custom-monad 267 ms sym-dsimp · custom-monad — ReaderState, complete proofs, n = 50 Total 267 ms; + one-time 24.7 ms = 292 ms Prepare 0.07 ms · Generate 95.6 ms · Grind 170 ms · Share 0.11 ms · Kernel 1.30 ms · Instantiate 0.06 ms 1 VC · peak 1.31 GB hand-written-specs 223 ms sym-dsimp · hand-written-specs — ReaderState, complete proofs, n = 50 Total 223 ms; + one-time 27.5 ms = 250 ms Prepare 0.08 ms · Generate 49.1 ms · Grind 169 ms · Share 0.10 ms · Kernel 4.06 ms · Instantiate 0.06 ms 1 VC · peak 1.31 GB library 222 ms sym-dsimp · library — ReaderState, complete proofs, n = 50 Total 222 ms; + one-time 28.3 ms = 251 ms Prepare 0.07 ms · Generate 46.7 ms · Grind 170 ms · Share 0.11 ms · Kernel 5.96 ms · Instantiate 0.06 ms 1 VC · peak 1.31 GB wp-simp – 239 ms wp-simp — ReaderState, complete proofs, n = 50 Total 239 ms; + one-time 14.1 ms = 253 ms Prepare 7.59 ms · Generate 57.2 ms · Grind 166 ms · Share 2.27 ms · Kernel 5.83 ms · Instantiate 0.05 ms 1 VC · peak 1.31 GB wp-sym – 222 ms wp-sym — ReaderState, complete proofs, n = 50 Total 222 ms; + one-time 14.1 ms = 236 ms Prepare 8.20 ms · Generate 27.3 ms · Grind 167 ms · Share 6.48 ms · Kernel 13.8 ms · Instantiate 0.05 ms 1 VC · peak 1.31 GB
PurePrecond · complete proofs · n = 2400 15 of 18 route·tier configurations finished at n = 2400, the largest size at which most finished. Bars: median time of each phase over the runs, on this panel's linear axis. Strip: each phase's share of the total. Prepare Generate Grind Share Kernel Other (Total − these) one-time cost, not per run median time per run share of total 0 10 s 20 s 30 s 40 s 50 s 0% 50% 100% vcgen hand-written-specs 899 ms vcgen · hand-written-specs — PurePrecond, complete proofs, n = 2400 Total 899 ms Prepare 57.6 ms · Generate 263 ms · Grind 0.06 ms · Share 296 ms · Kernel 237 ms · Instantiate 41.5 ms 0 VCs · peak 1.44 GB library 900 ms vcgen · library — PurePrecond, complete proofs, n = 2400 Total 900 ms Prepare 58.2 ms · Generate 267 ms · Grind 0.06 ms · Share 296 ms · Kernel 236 ms · Instantiate 41.5 ms 0 VCs · peak 1.44 GB vcgen-finish hand-written-specs 1.26 s vcgen-finish · hand-written-specs — PurePrecond, complete proofs, n = 2400 Total 1.26 s Prepare 59.9 ms · Generate 596 ms · Grind 0.06 ms · Share 308 ms · Kernel 241 ms · Instantiate 46.6 ms 0 VCs · peak 1.46 GB library 1.27 s vcgen-finish · library — PurePrecond, complete proofs, n = 2400 Total 1.27 s Prepare 58.8 ms · Generate 605 ms · Grind 0.06 ms · Share 311 ms · Kernel 241 ms · Instantiate 47.9 ms 0 VCs · peak 1.45 GB normalize custom-monad 43.2 s normalize · custom-monad — PurePrecond, complete proofs, n = 2400 Total 43.2 s; + one-time 19.0 ms = 43.3 s Prepare 0.08 ms · Generate 105 ms · Grind 43.1 s · Share 0.10 ms · Kernel 37.8 ms · Instantiate 0.07 ms 1 VC · peak 7.37 GB hand-written-specs 43.4 s normalize · hand-written-specs — PurePrecond, complete proofs, n = 2400 Total 43.4 s; + one-time 19.7 ms = 43.4 s Prepare 0.08 ms · Generate 137 ms · Grind 43.2 s · Share 0.11 ms · Kernel 50.3 ms · Instantiate 0.07 ms 1 VC · peak 7.37 GB library 43.3 s normalize · library — PurePrecond, complete proofs, n = 2400 Total 43.3 s; + one-time 19.7 ms = 43.3 s Prepare 0.08 ms · Generate 136 ms · Grind 43.1 s · Share 0.11 ms · Kernel 50.0 ms · Instantiate 0.07 ms 1 VC · peak 7.37 GB normalize-sym custom-monad 43.5 s normalize-sym · custom-monad — PurePrecond, complete proofs, n = 2400 Total 43.5 s; + one-time 19.0 ms = 43.5 s Prepare 0.08 ms · Generate 138 ms · Grind 43.3 s · Share 0.10 ms · Kernel 38.2 ms · Instantiate 0.07 ms 1 VC · peak 7.37 GB hand-written-specs 43.5 s normalize-sym · hand-written-specs — PurePrecond, complete proofs, n = 2400 Total 43.5 s; + one-time 19.7 ms = 43.6 s Prepare 0.08 ms · Generate 166 ms · Grind 43.3 s · Share 0.11 ms · Kernel 49.4 ms · Instantiate 0.08 ms 1 VC · peak 7.37 GB library 43.8 s normalize-sym · library — PurePrecond, complete proofs, n = 2400 Total 43.8 s; + one-time 19.7 ms = 43.8 s Prepare 0.08 ms · Generate 167 ms · Grind 43.5 s · Share 0.11 ms · Kernel 50.5 ms · Instantiate 0.08 ms 1 VC · peak 7.37 GB dsimp custom-monad timeout > 60 s (process killed after 90 s) dsimp · custom-monad — PurePrecond, complete proofs, n = 2400 timeout > 60 s (process killed after 90 s) hand-written-specs timeout > 60 s (process killed after 90 s) dsimp · hand-written-specs — PurePrecond, complete proofs, n = 2400 timeout > 60 s (process killed after 90 s) library timeout > 60 s (process killed after 90 s) dsimp · library — PurePrecond, complete proofs, n = 2400 timeout > 60 s (process killed after 90 s) sym-dsimp custom-monad 44.1 s sym-dsimp · custom-monad — PurePrecond, complete proofs, n = 2400 Total 44.1 s; + one-time 19.0 ms = 44.1 s Prepare 0.06 ms · Generate 607 ms · Grind 43.4 s · Share 0.11 ms · Kernel 38.3 ms · Instantiate 0.07 ms 1 VC · peak 7.37 GB hand-written-specs 44.2 s sym-dsimp · hand-written-specs — PurePrecond, complete proofs, n = 2400 Total 44.2 s; + one-time 19.7 ms = 44.2 s Prepare 0.07 ms · Generate 461 ms · Grind 43.6 s · Share 0.11 ms · Kernel 117 ms · Instantiate 0.07 ms 1 VC · peak 7.37 GB library 44.0 s sym-dsimp · library — PurePrecond, complete proofs, n = 2400 Total 44.0 s; + one-time 19.7 ms = 44.0 s Prepare 0.07 ms · Generate 461 ms · Grind 43.4 s · Share 0.11 ms · Kernel 117 ms · Instantiate 0.07 ms 1 VC · peak 7.37 GB wp-simp – 2.40 s wp-simp — PurePrecond, complete proofs, n = 2400 Total 2.40 s; + one-time 12.8 ms = 2.41 s Prepare 58.5 ms · Generate 1.73 s · Grind 81.6 ms · Share 196 ms · Kernel 338 ms · Instantiate 0.05 ms 1 VC · peak 1.42 GB wp-sym – 4.98 s wp-sym — PurePrecond, complete proofs, n = 2400 Total 4.98 s; + one-time 12.8 ms = 5.00 s Prepare 58.9 ms · Generate 346 ms · Grind 85.4 ms · Share 594 ms · Kernel 3.90 s · Instantiate 0.05 ms 1 VC · peak 1.42 GB
PurePrecond at the other sizes: n = 400, n = 4400
PurePrecond · complete proofs · n = 400 18 of 18 route·tier configurations finished at n = 400. Bars: median time of each phase over the runs, on this panel's linear axis. Strip: each phase's share of the total. Prepare Generate Grind Share Kernel Other (Total − these) one-time cost, not per run median time per run share of total 0 2 s 4 s 6 s 8 s 0% 50% 100% vcgen hand-written-specs 122 ms vcgen · hand-written-specs — PurePrecond, complete proofs, n = 400 Total 122 ms Prepare 14.4 ms · Generate 44.5 ms · Grind 0.05 ms · Share 26.3 ms · Kernel 31.6 ms · Instantiate 4.46 ms 0 VCs · peak 1.32 GB library 125 ms vcgen · library — PurePrecond, complete proofs, n = 400 Total 125 ms Prepare 14.4 ms · Generate 47.8 ms · Grind 0.06 ms · Share 26.3 ms · Kernel 31.7 ms · Instantiate 4.53 ms 0 VCs · peak 1.32 GB vcgen-finish hand-written-specs 167 ms vcgen-finish · hand-written-specs — PurePrecond, complete proofs, n = 400 Total 167 ms Prepare 14.4 ms · Generate 89.4 ms · Grind 0.05 ms · Share 26.6 ms · Kernel 31.5 ms · Instantiate 4.59 ms 0 VCs · peak 1.32 GB library 171 ms vcgen-finish · library — PurePrecond, complete proofs, n = 400 Total 171 ms Prepare 14.3 ms · Generate 93.5 ms · Grind 0.06 ms · Share 26.6 ms · Kernel 31.6 ms · Instantiate 4.67 ms 0 VCs · peak 1.32 GB normalize custom-monad 814 ms normalize · custom-monad — PurePrecond, complete proofs, n = 400 Total 814 ms; + one-time 19.0 ms = 834 ms Prepare 0.08 ms · Generate 18.7 ms · Grind 789 ms · Share 0.10 ms · Kernel 6.31 ms · Instantiate 0.07 ms 1 VC · peak 1.46 GB hand-written-specs 815 ms normalize · hand-written-specs — PurePrecond, complete proofs, n = 400 Total 815 ms; + one-time 19.7 ms = 835 ms Prepare 0.08 ms · Generate 23.5 ms · Grind 783 ms · Share 0.11 ms · Kernel 7.92 ms · Instantiate 0.07 ms 1 VC · peak 1.45 GB library 823 ms normalize · library — PurePrecond, complete proofs, n = 400 Total 823 ms; + one-time 19.7 ms = 843 ms Prepare 0.08 ms · Generate 23.7 ms · Grind 791 ms · Share 0.11 ms · Kernel 7.93 ms · Instantiate 0.08 ms 1 VC · peak 1.45 GB normalize-sym custom-monad 822 ms normalize-sym · custom-monad — PurePrecond, complete proofs, n = 400 Total 822 ms; + one-time 19.0 ms = 841 ms Prepare 0.08 ms · Generate 23.2 ms · Grind 792 ms · Share 0.10 ms · Kernel 6.31 ms · Instantiate 0.07 ms 1 VC · peak 1.45 GB hand-written-specs 837 ms normalize-sym · hand-written-specs — PurePrecond, complete proofs, n = 400 Total 837 ms; + one-time 19.7 ms = 857 ms Prepare 0.08 ms · Generate 28.8 ms · Grind 800 ms · Share 0.11 ms · Kernel 7.97 ms · Instantiate 0.07 ms 1 VC · peak 1.45 GB library 832 ms normalize-sym · library — PurePrecond, complete proofs, n = 400 Total 832 ms; + one-time 19.7 ms = 852 ms Prepare 0.08 ms · Generate 28.7 ms · Grind 795 ms · Share 0.11 ms · Kernel 7.92 ms · Instantiate 0.07 ms 1 VC · peak 1.45 GB dsimp custom-monad 7.56 s dsimp · custom-monad — PurePrecond, complete proofs, n = 400 Total 7.56 s; + one-time 19.0 ms = 7.58 s Prepare 0.06 ms · Generate 6.75 s · Grind 789 ms · Share 0.10 ms · Kernel 6.39 ms · Instantiate 0.08 ms 1 VC · peak 1.45 GB hand-written-specs 1.68 s dsimp · hand-written-specs — PurePrecond, complete proofs, n = 400 Total 1.68 s; + one-time 19.7 ms = 1.70 s Prepare 0.07 ms · Generate 872 ms · Grind 802 ms · Share 0.11 ms · Kernel 7.72 ms · Instantiate 0.07 ms 1 VC · peak 1.49 GB library 1.68 s dsimp · library — PurePrecond, complete proofs, n = 400 Total 1.68 s; + one-time 19.7 ms = 1.70 s Prepare 0.07 ms · Generate 869 ms · Grind 803 ms · Share 0.12 ms · Kernel 7.92 ms · Instantiate 0.07 ms 1 VC · peak 1.49 GB sym-dsimp custom-monad 902 ms sym-dsimp · custom-monad — PurePrecond, complete proofs, n = 400 Total 902 ms; + one-time 19.0 ms = 921 ms Prepare 0.07 ms · Generate 96.9 ms · Grind 799 ms · Share 0.10 ms · Kernel 6.43 ms · Instantiate 0.07 ms 1 VC · peak 1.44 GB hand-written-specs 887 ms sym-dsimp · hand-written-specs — PurePrecond, complete proofs, n = 400 Total 887 ms; + one-time 19.7 ms = 907 ms Prepare 0.07 ms · Generate 73.5 ms · Grind 796 ms · Share 0.11 ms · Kernel 17.3 ms · Instantiate 0.07 ms 1 VC · peak 1.44 GB library 886 ms sym-dsimp · library — PurePrecond, complete proofs, n = 400 Total 886 ms; + one-time 19.7 ms = 906 ms Prepare 0.07 ms · Generate 72.8 ms · Grind 796 ms · Share 0.11 ms · Kernel 17.2 ms · Instantiate 0.07 ms 1 VC · peak 1.44 GB wp-simp – 252 ms wp-simp — PurePrecond, complete proofs, n = 400 Total 252 ms; + one-time 12.8 ms = 265 ms Prepare 14.4 ms · Generate 162 ms · Grind 14.1 ms · Share 18.9 ms · Kernel 42.6 ms · Instantiate 0.04 ms 1 VC · peak 1.31 GB wp-sym – 228 ms wp-sym — PurePrecond, complete proofs, n = 400 Total 228 ms; + one-time 12.8 ms = 241 ms Prepare 14.3 ms · Generate 54.5 ms · Grind 14.7 ms · Share 37.4 ms · Kernel 106 ms · Instantiate 0.04 ms 1 VC · peak 1.31 GB
PurePrecond · complete proofs · n = 4400 6 of 18 route·tier configurations finished at n = 4400. Bars: median time of each phase over the runs, on this panel's linear axis. Strip: each phase's share of the total. Prepare Generate Grind Share Kernel Other (Total − these) one-time cost, not per run median time per run share of total 0 5 s 10 s 15 s 20 s 0% 50% 100% vcgen hand-written-specs 2.05 s vcgen · hand-written-specs — PurePrecond, complete proofs, n = 4400 Total 2.05 s Prepare 105 ms · Generate 513 ms · Grind 0.06 ms · Share 847 ms · Kernel 494 ms · Instantiate 96.6 ms 0 VCs · peak 1.60 GB library 2.05 s vcgen · library — PurePrecond, complete proofs, n = 4400 Total 2.05 s Prepare 105 ms · Generate 509 ms · Grind 0.06 ms · Share 836 ms · Kernel 504 ms · Instantiate 97.1 ms 0 VCs · peak 1.59 GB vcgen-finish hand-written-specs 2.81 s vcgen-finish · hand-written-specs — PurePrecond, complete proofs, n = 4400 Total 2.81 s Prepare 105 ms · Generate 1.20 s · Grind 0.06 ms · Share 886 ms · Kernel 503 ms · Instantiate 112 ms 0 VCs · peak 1.59 GB library 2.81 s vcgen-finish · library — PurePrecond, complete proofs, n = 4400 Total 2.81 s Prepare 106 ms · Generate 1.20 s · Grind 0.06 ms · Share 888 ms · Kernel 502 ms · Instantiate 113 ms 0 VCs · peak 1.59 GB normalize custom-monad memory > 8 GB normalize · custom-monad — PurePrecond, complete proofs, n = 4400 memory > 8 GB hand-written-specs memory > 8 GB normalize · hand-written-specs — PurePrecond, complete proofs, n = 4400 memory > 8 GB library memory > 8 GB normalize · library — PurePrecond, complete proofs, n = 4400 memory > 8 GB normalize-sym custom-monad memory > 8 GB normalize-sym · custom-monad — PurePrecond, complete proofs, n = 4400 memory > 8 GB hand-written-specs memory > 8 GB normalize-sym · hand-written-specs — PurePrecond, complete proofs, n = 4400 memory > 8 GB library memory > 8 GB normalize-sym · library — PurePrecond, complete proofs, n = 4400 memory > 8 GB dsimp custom-monad timeout > 60 s (process killed after 90 s), at n = 2400; larger sizes skipped dsimp · custom-monad — PurePrecond, complete proofs, n = 4400 timeout > 60 s (process killed after 90 s), at n = 2400; larger sizes skipped hand-written-specs timeout > 60 s (process killed after 90 s), at n = 2400; larger sizes skipped dsimp · hand-written-specs — PurePrecond, complete proofs, n = 4400 timeout > 60 s (process killed after 90 s), at n = 2400; larger sizes skipped library timeout > 60 s (process killed after 90 s), at n = 2400; larger sizes skipped dsimp · library — PurePrecond, complete proofs, n = 4400 timeout > 60 s (process killed after 90 s), at n = 2400; larger sizes skipped sym-dsimp custom-monad memory > 8 GB sym-dsimp · custom-monad — PurePrecond, complete proofs, n = 4400 memory > 8 GB hand-written-specs memory > 8 GB sym-dsimp · hand-written-specs — PurePrecond, complete proofs, n = 4400 memory > 8 GB library memory > 8 GB sym-dsimp · library — PurePrecond, complete proofs, n = 4400 memory > 8 GB wp-simp – 6.27 s wp-simp — PurePrecond, complete proofs, n = 4400 Total 6.27 s; + one-time 12.8 ms = 6.29 s Prepare 106 ms · Generate 4.79 s · Grind 157 ms · Share 541 ms · Kernel 723 ms · Instantiate 0.06 ms 1 VC · peak 1.60 GB wp-sym – 17.9 s wp-sym — PurePrecond, complete proofs, n = 4400 Total 17.9 s; + one-time 12.8 ms = 17.9 s Prepare 106 ms · Generate 683 ms · Grind 165 ms · Share 1.55 s · Kernel 15.4 s · Instantiate 0.06 ms 1 VC · peak 1.51 GB
GetThrowSet · complete proofs · n = 200 12 of 20 route·tier configurations finished at n = 200, the largest size at which most finished. Bars: median time of each phase over the runs, on this panel's linear axis. Strip: each phase's share of the total. Prepare Generate Grind Share Kernel Other (Total − these) one-time cost, not per run median time per run share of total 0 10 s 20 s 30 s 40 s 0% 50% 100% vcgen hand-written-specs 35.2 s vcgen · hand-written-specs — GetThrowSet, complete proofs, n = 200 Total 35.2 s Prepare 19.3 ms · Generate 41.0 ms · Grind 35.0 s · Share 65.3 ms · Kernel 56.3 ms · Instantiate 10.7 ms 201 VCs · peak 1.36 GB library 35.8 s vcgen · library — GetThrowSet, complete proofs, n = 200 Total 35.8 s Prepare 19.4 ms · Generate 345 ms · Grind 35.2 s · Share 185 ms · Kernel 70.6 ms · Instantiate 21.0 ms 201 VCs · peak 1.41 GB vcgen-finish hand-written-specs 1.18 s vcgen-finish · hand-written-specs — GetThrowSet, complete proofs, n = 200 Total 1.18 s Prepare 19.1 ms · Generate 560 ms · Grind 0.06 ms · Share 136 ms · Kernel 446 ms · Instantiate 14.2 ms 0 VCs · peak 1.37 GB library 1.65 s vcgen-finish · library — GetThrowSet, complete proofs, n = 200 Total 1.65 s Prepare 19.3 ms · Generate 885 ms · Grind 0.06 ms · Share 257 ms · Kernel 468 ms · Instantiate 22.9 ms 0 VCs · peak 1.41 GB vcgen-finish-simp hand-written-specs 266 ms vcgen-finish-simp · hand-written-specs — GetThrowSet, complete proofs, n = 200 Total 266 ms Prepare 19.4 ms · Generate 94.2 ms · Grind 0.06 ms · Share 35.5 ms · Kernel 113 ms · Instantiate 3.23 ms 0 VCs · peak 1.31 GB library 688 ms vcgen-finish-simp · library — GetThrowSet, complete proofs, n = 200 Total 688 ms Prepare 19.5 ms · Generate 413 ms · Grind 0.06 ms · Share 118 ms · Kernel 127 ms · Instantiate 10.7 ms 0 VCs · peak 1.37 GB normalize custom-monad 31.7 s normalize · custom-monad — GetThrowSet, complete proofs, n = 200 Total 31.7 s; + one-time 31.1 ms = 31.7 s Prepare 0.08 ms · Generate 21.0 ms · Grind 31.7 s · Share 0.10 ms · Kernel 5.96 ms · Instantiate 0.07 ms 1 VC · peak 2.55 GB hand-written-specs error: `simp` failed: maximum number of steps exceeded normalize · hand-written-specs — GetThrowSet, complete proofs, n = 200 error: `simp` failed: maximum number of steps exceeded library error: `simp` failed: maximum number of steps exceeded normalize · library — GetThrowSet, complete proofs, n = 200 error: `simp` failed: maximum number of steps exceeded normalize-sym custom-monad 31.4 s normalize-sym · custom-monad — GetThrowSet, complete proofs, n = 200 Total 31.4 s; + one-time 31.1 ms = 31.5 s Prepare 0.08 ms · Generate 25.9 ms · Grind 31.4 s · Share 0.10 ms · Kernel 6.03 ms · Instantiate 0.07 ms 1 VC · peak 2.55 GB hand-written-specs error: `simp` failed: maximum number of steps exceeded normalize-sym · hand-written-specs — GetThrowSet, complete proofs, n = 200 error: `simp` failed: maximum number of steps exceeded library error: `simp` failed: maximum number of steps exceeded normalize-sym · library — GetThrowSet, complete proofs, n = 200 error: `simp` failed: maximum number of steps exceeded dsimp custom-monad 31.6 s dsimp · custom-monad — GetThrowSet, complete proofs, n = 200 Total 31.6 s; + one-time 31.1 ms = 31.7 s Prepare 0.07 ms · Generate 123 ms · Grind 31.5 s · Share 0.11 ms · Kernel 6.56 ms · Instantiate 0.07 ms 1 VC · peak 2.55 GB hand-written-specs error: `simp` failed: maximum number of steps exceeded dsimp · hand-written-specs — GetThrowSet, complete proofs, n = 200 error: `simp` failed: maximum number of steps exceeded library error: `simp` failed: maximum number of steps exceeded dsimp · library — GetThrowSet, complete proofs, n = 200 error: `simp` failed: maximum number of steps exceeded sym-dsimp custom-monad 32.2 s sym-dsimp · custom-monad — GetThrowSet, complete proofs, n = 200 Total 32.2 s; + one-time 31.1 ms = 32.3 s Prepare 0.07 ms · Generate 735 ms · Grind 31.5 s · Share 0.11 ms · Kernel 5.94 ms · Instantiate 0.07 ms 1 VC · peak 2.55 GB hand-written-specs error: `simp` failed: maximum number of steps exceeded sym-dsimp · hand-written-specs — GetThrowSet, complete proofs, n = 200 error: `simp` failed: maximum number of steps exceeded library error: `simp` failed: maximum number of steps exceeded sym-dsimp · library — GetThrowSet, complete proofs, n = 200 error: `simp` failed: maximum number of steps exceeded wp-simp – 12.0 s wp-simp — GetThrowSet, complete proofs, n = 200 Total 12.0 s; + one-time 34.9 ms = 12.0 s Prepare 19.0 ms · Generate 378 ms · Grind 6.30 s · Share 58.9 ms · Kernel 5.22 s · Instantiate 0.06 ms 1 VC · peak 2.46 GB wp-sym – 6.50 s wp-sym — GetThrowSet, complete proofs, n = 200 Total 6.50 s; + one-time 34.9 ms = 6.53 s Prepare 19.1 ms · Generate 110 ms · Grind 6.21 s · Share 42.7 ms · Kernel 114 ms · Instantiate 0.06 ms 1 VC · peak 1.56 GB
GetThrowSet at the other sizes: n = 10, n = 50, n = 100, n = 300
GetThrowSet · complete proofs · n = 10 20 of 20 route·tier configurations finished at n = 10. Bars: median time of each phase over the runs, on this panel's linear axis. Strip: each phase's share of the total. Prepare Generate Grind Share Kernel Other (Total − these) one-time cost, not per run median time per run share of total 0 25 ms 50 ms 75 ms 100 ms 125 ms 0% 50% 100% vcgen hand-written-specs 71.6 ms vcgen · hand-written-specs — GetThrowSet, complete proofs, n = 10 Total 71.6 ms Prepare 7.47 ms · Generate 15.5 ms · Grind 41.8 ms · Share 2.03 ms · Kernel 4.32 ms · Instantiate 0.20 ms 11 VCs · peak 1.31 GB library 101 ms vcgen · library — GetThrowSet, complete proofs, n = 10 Total 101 ms Prepare 7.63 ms · Generate 39.9 ms · Grind 42.2 ms · Share 5.23 ms · Kernel 5.30 ms · Instantiate 0.48 ms 11 VCs · peak 1.31 GB vcgen-finish hand-written-specs 41.0 ms vcgen-finish · hand-written-specs — GetThrowSet, complete proofs, n = 10 Total 41.0 ms Prepare 7.69 ms · Generate 20.1 ms · Grind 0.06 ms · Share 3.09 ms · Kernel 9.66 ms · Instantiate 0.21 ms 0 VCs · peak 1.31 GB library 68.9 ms vcgen-finish · library — GetThrowSet, complete proofs, n = 10 Total 68.9 ms Prepare 7.55 ms · Generate 44.0 ms · Grind 0.05 ms · Share 5.98 ms · Kernel 10.6 ms · Instantiate 0.48 ms 0 VCs · peak 1.31 GB vcgen-finish-simp hand-written-specs 39.5 ms vcgen-finish-simp · hand-written-specs — GetThrowSet, complete proofs, n = 10 Total 39.5 ms Prepare 7.33 ms · Generate 19.6 ms · Grind 0.06 ms · Share 3.11 ms · Kernel 8.95 ms · Instantiate 0.21 ms 0 VCs · peak 1.32 GB library 67.8 ms vcgen-finish-simp · library — GetThrowSet, complete proofs, n = 10 Total 67.8 ms Prepare 7.35 ms · Generate 43.8 ms · Grind 0.06 ms · Share 5.96 ms · Kernel 9.84 ms · Instantiate 0.47 ms 0 VCs · peak 1.32 GB normalize custom-monad 35.1 ms normalize · custom-monad — GetThrowSet, complete proofs, n = 10 Total 35.1 ms; + one-time 31.1 ms = 66.2 ms Prepare 0.08 ms · Generate 1.84 ms · Grind 32.3 ms · Share 0.10 ms · Kernel 0.46 ms · Instantiate 0.05 ms 1 VC · peak 1.31 GB hand-written-specs 52.1 ms normalize · hand-written-specs — GetThrowSet, complete proofs, n = 10 Total 52.1 ms; + one-time 35.1 ms = 87.2 ms Prepare 0.08 ms · Generate 2.24 ms · Grind 48.2 ms · Share 0.12 ms · Kernel 1.14 ms · Instantiate 0.05 ms 1 VC · peak 1.31 GB library 52.7 ms normalize · library — GetThrowSet, complete proofs, n = 10 Total 52.7 ms; + one-time 35.5 ms = 88.2 ms Prepare 0.09 ms · Generate 2.48 ms · Grind 48.6 ms · Share 0.11 ms · Kernel 1.18 ms · Instantiate 0.05 ms 1 VC · peak 1.31 GB normalize-sym custom-monad 34.7 ms normalize-sym · custom-monad — GetThrowSet, complete proofs, n = 10 Total 34.7 ms; + one-time 31.1 ms = 65.8 ms Prepare 0.08 ms · Generate 1.89 ms · Grind 31.9 ms · Share 0.09 ms · Kernel 0.44 ms · Instantiate 0.05 ms 1 VC · peak 1.31 GB hand-written-specs 52.8 ms normalize-sym · hand-written-specs — GetThrowSet, complete proofs, n = 10 Total 52.8 ms; + one-time 35.1 ms = 87.9 ms Prepare 0.08 ms · Generate 2.72 ms · Grind 48.4 ms · Share 0.11 ms · Kernel 1.13 ms · Instantiate 0.05 ms 1 VC · peak 1.31 GB library 52.9 ms normalize-sym · library — GetThrowSet, complete proofs, n = 10 Total 52.9 ms; + one-time 35.5 ms = 88.4 ms Prepare 0.08 ms · Generate 2.93 ms · Grind 48.3 ms · Share 0.11 ms · Kernel 1.16 ms · Instantiate 0.05 ms 1 VC · peak 1.31 GB dsimp custom-monad 39.1 ms dsimp · custom-monad — GetThrowSet, complete proofs, n = 10 Total 39.1 ms; + one-time 31.1 ms = 70.2 ms Prepare 0.07 ms · Generate 6.12 ms · Grind 32.0 ms · Share 0.10 ms · Kernel 0.48 ms · Instantiate 0.05 ms 1 VC · peak 1.31 GB hand-written-specs 60.8 ms dsimp · hand-written-specs — GetThrowSet, complete proofs, n = 10 Total 60.8 ms; + one-time 35.1 ms = 96.0 ms Prepare 0.07 ms · Generate 10.9 ms · Grind 48.2 ms · Share 0.12 ms · Kernel 1.23 ms · Instantiate 0.05 ms 1 VC · peak 1.31 GB library 61.1 ms dsimp · library — GetThrowSet, complete proofs, n = 10 Total 61.1 ms; + one-time 35.5 ms = 96.6 ms Prepare 0.07 ms · Generate 11.2 ms · Grind 48.3 ms · Share 0.12 ms · Kernel 1.27 ms · Instantiate 0.05 ms 1 VC · peak 1.31 GB sym-dsimp custom-monad 40.7 ms sym-dsimp · custom-monad — GetThrowSet, complete proofs, n = 10 Total 40.7 ms; + one-time 31.1 ms = 71.8 ms Prepare 0.07 ms · Generate 7.50 ms · Grind 32.3 ms · Share 0.09 ms · Kernel 0.46 ms · Instantiate 0.05 ms 1 VC · peak 1.31 GB hand-written-specs 57.9 ms sym-dsimp · hand-written-specs — GetThrowSet, complete proofs, n = 10 Total 57.9 ms; + one-time 35.1 ms = 93.0 ms Prepare 0.07 ms · Generate 7.05 ms · Grind 48.4 ms · Share 0.12 ms · Kernel 1.89 ms · Instantiate 0.06 ms 1 VC · peak 1.31 GB library 56.3 ms sym-dsimp · library — GetThrowSet, complete proofs, n = 10 Total 56.3 ms; + one-time 35.5 ms = 91.8 ms Prepare 0.07 ms · Generate 5.94 ms · Grind 48.1 ms · Share 0.12 ms · Kernel 1.86 ms · Instantiate 0.05 ms 1 VC · peak 1.31 GB wp-simp – 56.6 ms wp-simp — GetThrowSet, complete proofs, n = 10 Total 56.6 ms; + one-time 34.9 ms = 91.5 ms Prepare 7.42 ms · Generate 15.8 ms · Grind 17.1 ms · Share 3.09 ms · Kernel 13.2 ms · Instantiate 0.04 ms 1 VC · peak 1.31 GB wp-sym – 40.7 ms wp-sym — GetThrowSet, complete proofs, n = 10 Total 40.7 ms; + one-time 34.9 ms = 75.6 ms Prepare 7.37 ms · Generate 9.00 ms · Grind 17.4 ms · Share 2.44 ms · Kernel 4.13 ms · Instantiate 0.05 ms 1 VC · peak 1.31 GB
GetThrowSet · complete proofs · n = 50 20 of 20 route·tier configurations finished at n = 50. Bars: median time of each phase over the runs, on this panel's linear axis. Strip: each phase's share of the total. Prepare Generate Grind Share Kernel Other (Total − these) one-time cost, not per run median time per run share of total 0 500 ms 1000 ms 1500 ms 0% 50% 100% vcgen hand-written-specs 863 ms vcgen · hand-written-specs — GetThrowSet, complete proofs, n = 50 Total 863 ms Prepare 9.88 ms · Generate 21.2 ms · Grind 811 ms · Share 7.44 ms · Kernel 11.7 ms · Instantiate 1.11 ms 51 VCs · peak 1.32 GB library 958 ms vcgen · library — GetThrowSet, complete proofs, n = 50 Total 958 ms Prepare 9.92 ms · Generate 98.5 ms · Grind 812 ms · Share 20.9 ms · Kernel 14.3 ms · Instantiate 3.03 ms 51 VCs · peak 1.33 GB vcgen-finish hand-written-specs 134 ms vcgen-finish · hand-written-specs — GetThrowSet, complete proofs, n = 50 Total 134 ms Prepare 9.82 ms · Generate 60.9 ms · Grind 0.06 ms · Share 12.6 ms · Kernel 49.2 ms · Instantiate 1.36 ms 0 VCs · peak 1.32 GB library 231 ms vcgen-finish · library — GetThrowSet, complete proofs, n = 50 Total 231 ms Prepare 9.80 ms · Generate 140 ms · Grind 0.06 ms · Share 25.4 ms · Kernel 52.5 ms · Instantiate 2.66 ms 0 VCs · peak 1.32 GB vcgen-finish-simp hand-written-specs 85.1 ms vcgen-finish-simp · hand-written-specs — GetThrowSet, complete proofs, n = 50 Total 85.1 ms Prepare 9.90 ms · Generate 35.2 ms · Grind 0.05 ms · Share 9.44 ms · Kernel 29.3 ms · Instantiate 0.79 ms 0 VCs · peak 1.32 GB library 179 ms vcgen-finish-simp · library — GetThrowSet, complete proofs, n = 50 Total 179 ms Prepare 9.91 ms · Generate 114 ms · Grind 0.05 ms · Share 20.9 ms · Kernel 31.7 ms · Instantiate 2.08 ms 0 VCs · peak 1.32 GB normalize custom-monad 583 ms normalize · custom-monad — GetThrowSet, complete proofs, n = 50 Total 583 ms; + one-time 31.1 ms = 614 ms Prepare 0.08 ms · Generate 5.79 ms · Grind 575 ms · Share 0.09 ms · Kernel 1.60 ms · Instantiate 0.06 ms 1 VC · peak 1.34 GB hand-written-specs 1.12 s normalize · hand-written-specs — GetThrowSet, complete proofs, n = 50 Total 1.12 s; + one-time 35.1 ms = 1.16 s Prepare 0.08 ms · Generate 7.22 ms · Grind 1.11 s · Share 0.12 ms · Kernel 4.69 ms · Instantiate 0.07 ms 1 VC · peak 1.39 GB library 1.12 s normalize · library — GetThrowSet, complete proofs, n = 50 Total 1.12 s; + one-time 35.5 ms = 1.15 s Prepare 0.08 ms · Generate 7.92 ms · Grind 1.11 s · Share 0.12 ms · Kernel 4.74 ms · Instantiate 0.07 ms 1 VC · peak 1.39 GB normalize-sym custom-monad 581 ms normalize-sym · custom-monad — GetThrowSet, complete proofs, n = 50 Total 581 ms; + one-time 31.1 ms = 612 ms Prepare 0.08 ms · Generate 7.02 ms · Grind 571 ms · Share 0.09 ms · Kernel 1.58 ms · Instantiate 0.06 ms 1 VC · peak 1.34 GB hand-written-specs 1.12 s normalize-sym · hand-written-specs — GetThrowSet, complete proofs, n = 50 Total 1.12 s; + one-time 35.1 ms = 1.16 s Prepare 0.08 ms · Generate 10.4 ms · Grind 1.11 s · Share 0.12 ms · Kernel 4.65 ms · Instantiate 0.07 ms 1 VC · peak 1.39 GB library 1.13 s normalize-sym · library — GetThrowSet, complete proofs, n = 50 Total 1.13 s; + one-time 35.5 ms = 1.16 s Prepare 0.09 ms · Generate 11.9 ms · Grind 1.11 s · Share 0.12 ms · Kernel 4.72 ms · Instantiate 0.07 ms 1 VC · peak 1.39 GB dsimp custom-monad 599 ms dsimp · custom-monad — GetThrowSet, complete proofs, n = 50 Total 599 ms; + one-time 31.1 ms = 630 ms Prepare 0.07 ms · Generate 25.0 ms · Grind 572 ms · Share 0.10 ms · Kernel 1.74 ms · Instantiate 0.06 ms 1 VC · peak 1.34 GB hand-written-specs 1.22 s dsimp · hand-written-specs — GetThrowSet, complete proofs, n = 50 Total 1.22 s; + one-time 35.1 ms = 1.25 s Prepare 0.07 ms · Generate 102 ms · Grind 1.11 s · Share 0.13 ms · Kernel 5.23 ms · Instantiate 0.06 ms 1 VC · peak 1.38 GB library 1.21 s dsimp · library — GetThrowSet, complete proofs, n = 50 Total 1.21 s; + one-time 35.5 ms = 1.25 s Prepare 0.07 ms · Generate 97.4 ms · Grind 1.11 s · Share 0.13 ms · Kernel 5.27 ms · Instantiate 0.07 ms 1 VC · peak 1.38 GB sym-dsimp custom-monad 635 ms sym-dsimp · custom-monad — GetThrowSet, complete proofs, n = 50 Total 635 ms; + one-time 31.1 ms = 666 ms Prepare 0.07 ms · Generate 65.4 ms · Grind 567 ms · Share 0.10 ms · Kernel 1.61 ms · Instantiate 0.06 ms 1 VC · peak 1.33 GB hand-written-specs 1.16 s sym-dsimp · hand-written-specs — GetThrowSet, complete proofs, n = 50 Total 1.16 s; + one-time 35.1 ms = 1.20 s Prepare 0.07 ms · Generate 53.3 ms · Grind 1.10 s · Share 0.13 ms · Kernel 8.32 ms · Instantiate 0.06 ms 1 VC · peak 1.38 GB library 1.16 s sym-dsimp · library — GetThrowSet, complete proofs, n = 50 Total 1.16 s; + one-time 35.5 ms = 1.19 s Prepare 0.08 ms · Generate 40.3 ms · Grind 1.11 s · Share 0.12 ms · Kernel 8.08 ms · Instantiate 0.07 ms 1 VC · peak 1.39 GB wp-simp – 490 ms wp-simp — GetThrowSet, complete proofs, n = 50 Total 490 ms; + one-time 34.9 ms = 525 ms Prepare 9.76 ms · Generate 70.0 ms · Grind 161 ms · Share 12.8 ms · Kernel 238 ms · Instantiate 0.05 ms 1 VC · peak 1.35 GB wp-sym – 228 ms wp-sym — GetThrowSet, complete proofs, n = 50 Total 228 ms; + one-time 34.9 ms = 263 ms Prepare 9.93 ms · Generate 29.5 ms · Grind 161 ms · Share 9.68 ms · Kernel 17.8 ms · Instantiate 0.05 ms 1 VC · peak 1.31 GB
GetThrowSet · complete proofs · n = 100 20 of 20 route·tier configurations finished at n = 100. Bars: median time of each phase over the runs, on this panel's linear axis. Strip: each phase's share of the total. Prepare Generate Grind Share Kernel Other (Total − these) one-time cost, not per run median time per run share of total 0 2 s 4 s 6 s 8 s 10 s 0% 50% 100% vcgen hand-written-specs 4.91 s vcgen · hand-written-specs — GetThrowSet, complete proofs, n = 100 Total 4.91 s Prepare 13.0 ms · Generate 27.7 ms · Grind 4.83 s · Share 16.9 ms · Kernel 22.8 ms · Instantiate 3.23 ms 101 VCs · peak 1.33 GB library 5.11 s vcgen · library — GetThrowSet, complete proofs, n = 100 Total 5.11 s Prepare 13.1 ms · Generate 177 ms · Grind 4.83 s · Share 52.4 ms · Kernel 29.1 ms · Instantiate 7.48 ms 101 VCs · peak 1.34 GB vcgen-finish hand-written-specs 349 ms vcgen-finish · hand-written-specs — GetThrowSet, complete proofs, n = 100 Total 349 ms Prepare 13.0 ms · Generate 163 ms · Grind 0.05 ms · Share 31.0 ms · Kernel 137 ms · Instantiate 4.05 ms 0 VCs · peak 1.32 GB library 551 ms vcgen-finish · library — GetThrowSet, complete proofs, n = 100 Total 551 ms Prepare 12.9 ms · Generate 318 ms · Grind 0.06 ms · Share 65.8 ms · Kernel 145 ms · Instantiate 7.15 ms 0 VCs · peak 1.36 GB vcgen-finish-simp hand-written-specs 142 ms vcgen-finish-simp · hand-written-specs — GetThrowSet, complete proofs, n = 100 Total 142 ms Prepare 13.2 ms · Generate 54.6 ms · Grind 0.06 ms · Share 17.3 ms · Kernel 55.4 ms · Instantiate 1.54 ms 0 VCs · peak 1.32 GB library 337 ms vcgen-finish-simp · library — GetThrowSet, complete proofs, n = 100 Total 337 ms Prepare 13.2 ms · Generate 214 ms · Grind 0.06 ms · Share 45.5 ms · Kernel 61.5 ms · Instantiate 4.63 ms 0 VCs · peak 1.32 GB normalize custom-monad 3.54 s normalize · custom-monad — GetThrowSet, complete proofs, n = 100 Total 3.54 s; + one-time 31.1 ms = 3.58 s Prepare 0.08 ms · Generate 10.9 ms · Grind 3.53 s · Share 0.10 ms · Kernel 3.09 ms · Instantiate 0.07 ms 1 VC · peak 1.49 GB hand-written-specs 7.58 s normalize · hand-written-specs — GetThrowSet, complete proofs, n = 100 Total 7.58 s; + one-time 35.1 ms = 7.62 s Prepare 0.08 ms · Generate 13.1 ms · Grind 7.56 s · Share 0.12 ms · Kernel 9.16 ms · Instantiate 0.07 ms 1 VC · peak 1.74 GB library 7.59 s normalize · library — GetThrowSet, complete proofs, n = 100 Total 7.59 s; + one-time 35.5 ms = 7.63 s Prepare 0.08 ms · Generate 15.0 ms · Grind 7.57 s · Share 0.12 ms · Kernel 9.12 ms · Instantiate 0.07 ms 1 VC · peak 1.76 GB normalize-sym custom-monad 3.51 s normalize-sym · custom-monad — GetThrowSet, complete proofs, n = 100 Total 3.51 s; + one-time 31.1 ms = 3.54 s Prepare 0.08 ms · Generate 13.5 ms · Grind 3.50 s · Share 0.10 ms · Kernel 3.05 ms · Instantiate 0.07 ms 1 VC · peak 1.50 GB hand-written-specs 7.71 s normalize-sym · hand-written-specs — GetThrowSet, complete proofs, n = 100 Total 7.71 s; + one-time 35.1 ms = 7.75 s Prepare 0.11 ms · Generate 20.8 ms · Grind 7.68 s · Share 0.12 ms · Kernel 9.20 ms · Instantiate 0.07 ms 1 VC · peak 1.75 GB library 7.61 s normalize-sym · library — GetThrowSet, complete proofs, n = 100 Total 7.61 s; + one-time 35.5 ms = 7.64 s Prepare 0.08 ms · Generate 22.8 ms · Grind 7.57 s · Share 0.12 ms · Kernel 9.20 ms · Instantiate 0.07 ms 1 VC · peak 1.75 GB dsimp custom-monad 3.57 s dsimp · custom-monad — GetThrowSet, complete proofs, n = 100 Total 3.57 s; + one-time 31.1 ms = 3.60 s Prepare 0.07 ms · Generate 53.3 ms · Grind 3.51 s · Share 0.11 ms · Kernel 3.39 ms · Instantiate 0.06 ms 1 VC · peak 1.49 GB hand-written-specs 7.99 s dsimp · hand-written-specs — GetThrowSet, complete proofs, n = 100 Total 7.99 s; + one-time 35.1 ms = 8.03 s Prepare 0.07 ms · Generate 367 ms · Grind 7.62 s · Share 0.13 ms · Kernel 10.2 ms · Instantiate 0.06 ms 1 VC · peak 1.76 GB library 7.95 s dsimp · library — GetThrowSet, complete proofs, n = 100 Total 7.95 s; + one-time 35.5 ms = 7.98 s Prepare 0.07 ms · Generate 350 ms · Grind 7.59 s · Share 0.13 ms · Kernel 10.2 ms · Instantiate 0.07 ms 1 VC · peak 1.77 GB sym-dsimp custom-monad 3.72 s sym-dsimp · custom-monad — GetThrowSet, complete proofs, n = 100 Total 3.72 s; + one-time 31.1 ms = 3.75 s Prepare 0.07 ms · Generate 208 ms · Grind 3.51 s · Share 0.11 ms · Kernel 3.12 ms · Instantiate 0.07 ms 1 VC · peak 1.49 GB hand-written-specs 7.73 s sym-dsimp · hand-written-specs — GetThrowSet, complete proofs, n = 100 Total 7.73 s; + one-time 35.1 ms = 7.76 s Prepare 0.07 ms · Generate 156 ms · Grind 7.55 s · Share 0.12 ms · Kernel 16.5 ms · Instantiate 0.07 ms 1 VC · peak 1.75 GB library 7.70 s sym-dsimp · library — GetThrowSet, complete proofs, n = 100 Total 7.70 s; + one-time 35.5 ms = 7.73 s Prepare 0.07 ms · Generate 114 ms · Grind 7.57 s · Share 0.12 ms · Kernel 15.9 ms · Instantiate 0.07 ms 1 VC · peak 1.74 GB wp-simp – 2.10 s wp-simp — GetThrowSet, complete proofs, n = 100 Total 2.10 s; + one-time 34.9 ms = 2.14 s Prepare 13.8 ms · Generate 156 ms · Grind 820 ms · Share 27.8 ms · Kernel 1.09 s · Instantiate 0.06 ms 1 VC · peak 1.61 GB wp-sym – 947 ms wp-sym — GetThrowSet, complete proofs, n = 100 Total 947 ms; + one-time 34.9 ms = 982 ms Prepare 13.2 ms · Generate 55.6 ms · Grind 816 ms · Share 19.8 ms · Kernel 41.8 ms · Instantiate 0.05 ms 1 VC · peak 1.34 GB
GetThrowSet · complete proofs · n = 300 6 of 20 route·tier configurations finished at n = 300. Bars: median time of each phase over the runs, on this panel's linear axis. Strip: each phase's share of the total. Prepare Generate Grind Share Kernel Other (Total − these) one-time cost, not per run median time per run share of total 0 10 s 20 s 30 s 40 s 50 s 0% 50% 100% vcgen hand-written-specs timeout > 60 s (process killed after 90 s) vcgen · hand-written-specs — GetThrowSet, complete proofs, n = 300 timeout > 60 s (process killed after 90 s) library timeout > 60 s (process killed after 90 s) vcgen · library — GetThrowSet, complete proofs, n = 300 timeout > 60 s (process killed after 90 s) vcgen-finish hand-written-specs 2.67 s vcgen-finish · hand-written-specs — GetThrowSet, complete proofs, n = 300 Total 2.67 s Prepare 25.4 ms · Generate 1.23 s · Grind 0.06 ms · Share 445 ms · Kernel 942 ms · Instantiate 32.2 ms 0 VCs · peak 1.43 GB library 3.53 s vcgen-finish · library — GetThrowSet, complete proofs, n = 300 Total 3.53 s Prepare 25.7 ms · Generate 1.75 s · Grind 0.06 ms · Share 730 ms · Kernel 981 ms · Instantiate 50.8 ms 0 VCs · peak 1.47 GB vcgen-finish-simp hand-written-specs 404 ms vcgen-finish-simp · hand-written-specs — GetThrowSet, complete proofs, n = 300 Total 404 ms Prepare 25.8 ms · Generate 135 ms · Grind 0.05 ms · Share 61.4 ms · Kernel 177 ms · Instantiate 4.95 ms 0 VCs · peak 1.33 GB library 1.09 s vcgen-finish-simp · library — GetThrowSet, complete proofs, n = 300 Total 1.09 s Prepare 26.8 ms · Generate 627 ms · Grind 0.06 ms · Share 217 ms · Kernel 199 ms · Instantiate 19.4 ms 0 VCs · peak 1.43 GB normalize custom-monad error: `simp` failed: maximum number of steps exceeded normalize · custom-monad — GetThrowSet, complete proofs, n = 300 error: `simp` failed: maximum number of steps exceeded hand-written-specs error: `simp` failed: maximum number of steps exceeded, at n = 200; larger sizes skipped normalize · hand-written-specs — GetThrowSet, complete proofs, n = 300 error: `simp` failed: maximum number of steps exceeded, at n = 200; larger sizes skipped library error: `simp` failed: maximum number of steps exceeded, at n = 200; larger sizes skipped normalize · library — GetThrowSet, complete proofs, n = 300 error: `simp` failed: maximum number of steps exceeded, at n = 200; larger sizes skipped normalize-sym custom-monad error: `simp` failed: maximum number of steps exceeded normalize-sym · custom-monad — GetThrowSet, complete proofs, n = 300 error: `simp` failed: maximum number of steps exceeded hand-written-specs error: `simp` failed: maximum number of steps exceeded, at n = 200; larger sizes skipped normalize-sym · hand-written-specs — GetThrowSet, complete proofs, n = 300 error: `simp` failed: maximum number of steps exceeded, at n = 200; larger sizes skipped library error: `simp` failed: maximum number of steps exceeded, at n = 200; larger sizes skipped normalize-sym · library — GetThrowSet, complete proofs, n = 300 error: `simp` failed: maximum number of steps exceeded, at n = 200; larger sizes skipped dsimp custom-monad error: `simp` failed: maximum number of steps exceeded dsimp · custom-monad — GetThrowSet, complete proofs, n = 300 error: `simp` failed: maximum number of steps exceeded hand-written-specs error: `simp` failed: maximum number of steps exceeded, at n = 200; larger sizes skipped dsimp · hand-written-specs — GetThrowSet, complete proofs, n = 300 error: `simp` failed: maximum number of steps exceeded, at n = 200; larger sizes skipped library error: `simp` failed: maximum number of steps exceeded, at n = 200; larger sizes skipped dsimp · library — GetThrowSet, complete proofs, n = 300 error: `simp` failed: maximum number of steps exceeded, at n = 200; larger sizes skipped sym-dsimp custom-monad error: `simp` failed: maximum number of steps exceeded sym-dsimp · custom-monad — GetThrowSet, complete proofs, n = 300 error: `simp` failed: maximum number of steps exceeded hand-written-specs error: `simp` failed: maximum number of steps exceeded, at n = 200; larger sizes skipped sym-dsimp · hand-written-specs — GetThrowSet, complete proofs, n = 300 error: `simp` failed: maximum number of steps exceeded, at n = 200; larger sizes skipped library error: `simp` failed: maximum number of steps exceeded, at n = 200; larger sizes skipped sym-dsimp · library — GetThrowSet, complete proofs, n = 300 error: `simp` failed: maximum number of steps exceeded, at n = 200; larger sizes skipped wp-simp – 43.4 s wp-simp — GetThrowSet, complete proofs, n = 300 Total 43.4 s; + one-time 34.9 ms = 43.5 s Prepare 25.7 ms · Generate 688 ms · Grind 30.0 s · Share 98.3 ms · Kernel 12.7 s · Instantiate 0.06 ms 1 VC · peak 3.85 GB wp-sym – 30.0 s wp-sym — GetThrowSet, complete proofs, n = 300 Total 30.0 s; + one-time 34.9 ms = 30.0 s Prepare 25.6 ms · Generate 166 ms · Grind 29.5 s · Share 76.1 ms · Kernel 220 ms · Instantiate 0.06 ms 1 VC · peak 1.85 GB
DiteSplit · complete proofs · n = 100 18 of 18 route·tier configurations finished at n = 100, the largest size. Bars: median time of each phase over the runs, on this panel's linear axis. Strip: each phase's share of the total. Prepare Generate Grind Share Kernel Other (Total − these) one-time cost, not per run median time per run share of total 0 2 s 4 s 6 s 8 s 0% 50% 100% vcgen hand-written-specs 2.27 s vcgen · hand-written-specs — DiteSplit, complete proofs, n = 100 Total 2.27 s Prepare 15.7 ms · Generate 34.5 ms · Grind 2.14 s · Share 30.1 ms · Kernel 39.7 ms · Instantiate 5.71 ms 101 VCs · peak 1.35 GB library 2.70 s vcgen · library — DiteSplit, complete proofs, n = 100 Total 2.70 s Prepare 15.7 ms · Generate 329 ms · Grind 2.18 s · Share 107 ms · Kernel 53.4 ms · Instantiate 14.3 ms 101 VCs · peak 1.39 GB vcgen-finish hand-written-specs 442 ms vcgen-finish · hand-written-specs — DiteSplit, complete proofs, n = 100 Total 442 ms Prepare 15.8 ms · Generate 100 ms · Grind 0.05 ms · Share 192 ms · Kernel 119 ms · Instantiate 14.0 ms 0 VCs · peak 1.32 GB library 929 ms vcgen-finish · library — DiteSplit, complete proofs, n = 100 Total 929 ms Prepare 15.7 ms · Generate 413 ms · Grind 0.06 ms · Share 345 ms · Kernel 133 ms · Instantiate 22.5 ms 0 VCs · peak 1.38 GB normalize custom-monad 1.89 s normalize · custom-monad — DiteSplit, complete proofs, n = 100 Total 1.89 s; + one-time 32.1 ms = 1.92 s Prepare 0.08 ms · Generate 16.1 ms · Grind 1.87 s · Share 0.10 ms · Kernel 4.01 ms · Instantiate 0.07 ms 1 VC · peak 1.36 GB hand-written-specs 2.01 s normalize · hand-written-specs — DiteSplit, complete proofs, n = 100 Total 2.01 s; + one-time 36.0 ms = 2.05 s Prepare 0.08 ms · Generate 20.0 ms · Grind 1.98 s · Share 0.12 ms · Kernel 10.9 ms · Instantiate 0.07 ms 1 VC · peak 1.36 GB library 2.01 s normalize · library — DiteSplit, complete proofs, n = 100 Total 2.01 s; + one-time 36.3 ms = 2.04 s Prepare 0.08 ms · Generate 22.6 ms · Grind 1.97 s · Share 0.12 ms · Kernel 10.9 ms · Instantiate 0.07 ms 1 VC · peak 1.36 GB normalize-sym custom-monad 1.91 s normalize-sym · custom-monad — DiteSplit, complete proofs, n = 100 Total 1.91 s; + one-time 32.1 ms = 1.94 s Prepare 0.08 ms · Generate 22.5 ms · Grind 1.88 s · Share 0.10 ms · Kernel 4.03 ms · Instantiate 0.07 ms 1 VC · peak 1.36 GB hand-written-specs 2.02 s normalize-sym · hand-written-specs — DiteSplit, complete proofs, n = 100 Total 2.02 s; + one-time 36.0 ms = 2.06 s Prepare 0.08 ms · Generate 31.2 ms · Grind 1.98 s · Share 0.12 ms · Kernel 11.1 ms · Instantiate 0.07 ms 1 VC · peak 1.36 GB library 2.04 s normalize-sym · library — DiteSplit, complete proofs, n = 100 Total 2.04 s; + one-time 36.3 ms = 2.08 s Prepare 0.08 ms · Generate 34.2 ms · Grind 1.99 s · Share 0.12 ms · Kernel 11.0 ms · Instantiate 0.07 ms 1 VC · peak 1.36 GB dsimp custom-monad 2.29 s dsimp · custom-monad — DiteSplit, complete proofs, n = 100 Total 2.29 s; + one-time 32.1 ms = 2.32 s Prepare 0.07 ms · Generate 409 ms · Grind 1.88 s · Share 0.10 ms · Kernel 5.07 ms · Instantiate 0.08 ms 1 VC · peak 1.36 GB hand-written-specs 2.91 s dsimp · hand-written-specs — DiteSplit, complete proofs, n = 100 Total 2.91 s; + one-time 36.0 ms = 2.95 s Prepare 0.07 ms · Generate 921 ms · Grind 1.99 s · Share 0.13 ms · Kernel 12.6 ms · Instantiate 0.07 ms 1 VC · peak 1.38 GB library 2.91 s dsimp · library — DiteSplit, complete proofs, n = 100 Total 2.91 s; + one-time 36.3 ms = 2.95 s Prepare 0.07 ms · Generate 910 ms · Grind 1.99 s · Share 0.13 ms · Kernel 13.1 ms · Instantiate 0.07 ms 1 VC · peak 1.38 GB sym-dsimp custom-monad 1.97 s sym-dsimp · custom-monad — DiteSplit, complete proofs, n = 100 Total 1.97 s; + one-time 32.1 ms = 2.00 s Prepare 0.07 ms · Generate 95.9 ms · Grind 1.87 s · Share 0.10 ms · Kernel 4.08 ms · Instantiate 0.06 ms 1 VC · peak 1.36 GB hand-written-specs 2.07 s sym-dsimp · hand-written-specs — DiteSplit, complete proofs, n = 100 Total 2.07 s; + one-time 36.0 ms = 2.11 s Prepare 0.07 ms · Generate 81.0 ms · Grind 1.97 s · Share 0.13 ms · Kernel 20.1 ms · Instantiate 0.07 ms 1 VC · peak 1.38 GB library 2.06 s sym-dsimp · library — DiteSplit, complete proofs, n = 100 Total 2.06 s; + one-time 36.3 ms = 2.10 s Prepare 0.07 ms · Generate 61.2 ms · Grind 1.98 s · Share 0.12 ms · Kernel 19.7 ms · Instantiate 0.07 ms 1 VC · peak 1.36 GB wp-simp – 6.58 s wp-simp — DiteSplit, complete proofs, n = 100 Total 6.58 s; + one-time 34.9 ms = 6.62 s Prepare 16.1 ms · Generate 2.00 s · Grind 4.11 s · Share 110 ms · Kernel 347 ms · Instantiate 0.06 ms 1 VC · peak 1.48 GB wp-sym – 4.85 s wp-sym — DiteSplit, complete proofs, n = 100 Total 4.85 s; + one-time 34.9 ms = 4.88 s Prepare 16.0 ms · Generate 417 ms · Grind 3.99 s · Share 68.7 ms · Kernel 352 ms · Instantiate 0.06 ms 1 VC · peak 1.47 GB
DiteSplit at the other sizes: n = 10, n = 50
DiteSplit · complete proofs · n = 10 18 of 18 route·tier configurations finished at n = 10. Bars: median time of each phase over the runs, on this panel's linear axis. Strip: each phase's share of the total. Prepare Generate Grind Share Kernel Other (Total − these) one-time cost, not per run median time per run share of total 0 50 ms 100 ms 150 ms 0% 50% 100% vcgen hand-written-specs 82.1 ms vcgen · hand-written-specs — DiteSplit, complete proofs, n = 10 Total 82.1 ms Prepare 7.73 ms · Generate 16.7 ms · Grind 49.5 ms · Share 2.42 ms · Kernel 5.26 ms · Instantiate 0.26 ms 11 VCs · peak 1.31 GB library 126 ms vcgen · library — DiteSplit, complete proofs, n = 10 Total 126 ms Prepare 7.66 ms · Generate 52.5 ms · Grind 50.0 ms · Share 7.86 ms · Kernel 6.45 ms · Instantiate 0.79 ms 11 VCs · peak 1.31 GB vcgen-finish hand-written-specs 46.6 ms vcgen-finish · hand-written-specs — DiteSplit, complete proofs, n = 10 Total 46.6 ms Prepare 7.79 ms · Generate 22.5 ms · Grind 0.05 ms · Share 3.90 ms · Kernel 11.6 ms · Instantiate 0.31 ms 0 VCs · peak 1.31 GB library 88.5 ms vcgen-finish · library — DiteSplit, complete proofs, n = 10 Total 88.5 ms Prepare 7.68 ms · Generate 58.7 ms · Grind 0.05 ms · Share 8.73 ms · Kernel 12.8 ms · Instantiate 0.83 ms 0 VCs · peak 1.32 GB normalize custom-monad 41.8 ms normalize · custom-monad — DiteSplit, complete proofs, n = 10 Total 41.8 ms; + one-time 32.1 ms = 73.9 ms Prepare 0.09 ms · Generate 2.59 ms · Grind 38.1 ms · Share 0.09 ms · Kernel 0.57 ms · Instantiate 0.06 ms 1 VC · peak 1.30 GB hand-written-specs 44.1 ms normalize · hand-written-specs — DiteSplit, complete proofs, n = 10 Total 44.1 ms; + one-time 36.0 ms = 80.1 ms Prepare 0.08 ms · Generate 2.99 ms · Grind 39.4 ms · Share 0.11 ms · Kernel 1.28 ms · Instantiate 0.06 ms 1 VC · peak 1.31 GB library 44.1 ms normalize · library — DiteSplit, complete proofs, n = 10 Total 44.1 ms; + one-time 36.3 ms = 80.5 ms Prepare 0.08 ms · Generate 3.30 ms · Grind 38.9 ms · Share 0.12 ms · Kernel 1.32 ms · Instantiate 0.05 ms 1 VC · peak 1.31 GB normalize-sym custom-monad 40.5 ms normalize-sym · custom-monad — DiteSplit, complete proofs, n = 10 Total 40.5 ms; + one-time 32.1 ms = 72.6 ms Prepare 0.08 ms · Generate 2.77 ms · Grind 36.8 ms · Share 0.09 ms · Kernel 0.54 ms · Instantiate 0.05 ms 1 VC · peak 1.31 GB hand-written-specs 44.7 ms normalize-sym · hand-written-specs — DiteSplit, complete proofs, n = 10 Total 44.7 ms; + one-time 36.0 ms = 80.6 ms Prepare 0.08 ms · Generate 3.77 ms · Grind 39.2 ms · Share 0.12 ms · Kernel 1.28 ms · Instantiate 0.05 ms 1 VC · peak 1.31 GB library 44.9 ms normalize-sym · library — DiteSplit, complete proofs, n = 10 Total 44.9 ms; + one-time 36.3 ms = 81.2 ms Prepare 0.08 ms · Generate 4.10 ms · Grind 38.9 ms · Share 0.12 ms · Kernel 1.32 ms · Instantiate 0.05 ms 1 VC · peak 1.31 GB dsimp custom-monad 49.3 ms dsimp · custom-monad — DiteSplit, complete proofs, n = 10 Total 49.3 ms; + one-time 32.1 ms = 81.3 ms Prepare 0.07 ms · Generate 11.4 ms · Grind 36.7 ms · Share 0.09 ms · Kernel 0.67 ms · Instantiate 0.05 ms 1 VC · peak 1.31 GB hand-written-specs 61.8 ms dsimp · hand-written-specs — DiteSplit, complete proofs, n = 10 Total 61.8 ms; + one-time 36.0 ms = 97.7 ms Prepare 0.08 ms · Generate 20.1 ms · Grind 39.9 ms · Share 0.13 ms · Kernel 1.54 ms · Instantiate 0.06 ms 1 VC · peak 1.31 GB library 60.5 ms dsimp · library — DiteSplit, complete proofs, n = 10 Total 60.5 ms; + one-time 36.3 ms = 96.8 ms Prepare 0.07 ms · Generate 19.4 ms · Grind 38.9 ms · Share 0.11 ms · Kernel 1.52 ms · Instantiate 0.05 ms 1 VC · peak 1.31 GB sym-dsimp custom-monad 47.5 ms sym-dsimp · custom-monad — DiteSplit, complete proofs, n = 10 Total 47.5 ms; + one-time 32.1 ms = 79.6 ms Prepare 0.07 ms · Generate 10.2 ms · Grind 36.4 ms · Share 0.10 ms · Kernel 0.56 ms · Instantiate 0.05 ms 1 VC · peak 1.31 GB hand-written-specs 51.6 ms sym-dsimp · hand-written-specs — DiteSplit, complete proofs, n = 10 Total 51.6 ms; + one-time 36.0 ms = 87.5 ms Prepare 0.07 ms · Generate 8.90 ms · Grind 39.3 ms · Share 0.12 ms · Kernel 2.18 ms · Instantiate 0.06 ms 1 VC · peak 1.31 GB library 48.6 ms sym-dsimp · library — DiteSplit, complete proofs, n = 10 Total 48.6 ms; + one-time 36.3 ms = 84.9 ms Prepare 0.07 ms · Generate 6.92 ms · Grind 39.0 ms · Share 0.12 ms · Kernel 2.16 ms · Instantiate 0.05 ms 1 VC · peak 1.31 GB wp-simp – 71.0 ms wp-simp — DiteSplit, complete proofs, n = 10 Total 71.0 ms; + one-time 34.9 ms = 106 ms Prepare 7.72 ms · Generate 25.4 ms · Grind 20.3 ms · Share 5.00 ms · Kernel 12.0 ms · Instantiate 0.04 ms 1 VC · peak 1.30 GB wp-sym – 55.7 ms wp-sym — DiteSplit, complete proofs, n = 10 Total 55.7 ms; + one-time 34.9 ms = 90.5 ms Prepare 7.67 ms · Generate 14.2 ms · Grind 20.9 ms · Share 4.36 ms · Kernel 8.26 ms · Instantiate 0.05 ms 1 VC · peak 1.31 GB
DiteSplit · complete proofs · n = 50 18 of 18 route·tier configurations finished at n = 50. Bars: median time of each phase over the runs, on this panel's linear axis. Strip: each phase's share of the total. Prepare Generate Grind Share Kernel Other (Total − these) one-time cost, not per run median time per run share of total 0 200 ms 400 ms 600 ms 800 ms 1000 ms 0% 50% 100% vcgen hand-written-specs 663 ms vcgen · hand-written-specs — DiteSplit, complete proofs, n = 50 Total 663 ms Prepare 11.2 ms · Generate 24.5 ms · Grind 596 ms · Share 10.9 ms · Kernel 17.5 ms · Instantiate 1.82 ms 51 VCs · peak 1.33 GB library 861 ms vcgen · library — DiteSplit, complete proofs, n = 50 Total 861 ms Prepare 11.4 ms · Generate 169 ms · Grind 612 ms · Share 37.6 ms · Kernel 22.9 ms · Instantiate 5.59 ms 51 VCs · peak 1.33 GB vcgen-finish hand-written-specs 146 ms vcgen-finish · hand-written-specs — DiteSplit, complete proofs, n = 50 Total 146 ms Prepare 11.4 ms · Generate 50.6 ms · Grind 0.05 ms · Share 33.2 ms · Kernel 47.5 ms · Instantiate 3.72 ms 0 VCs · peak 1.32 GB library 338 ms vcgen-finish · library — DiteSplit, complete proofs, n = 50 Total 338 ms Prepare 11.3 ms · Generate 200 ms · Grind 0.07 ms · Share 65.8 ms · Kernel 53.5 ms · Instantiate 6.51 ms 0 VCs · peak 1.31 GB normalize custom-monad 454 ms normalize · custom-monad — DiteSplit, complete proofs, n = 50 Total 454 ms; + one-time 32.1 ms = 486 ms Prepare 0.08 ms · Generate 8.41 ms · Grind 443 ms · Share 0.10 ms · Kernel 2.07 ms · Instantiate 0.06 ms 1 VC · peak 1.31 GB hand-written-specs 484 ms normalize · hand-written-specs — DiteSplit, complete proofs, n = 50 Total 484 ms; + one-time 36.0 ms = 520 ms Prepare 0.09 ms · Generate 10.4 ms · Grind 468 ms · Share 0.11 ms · Kernel 5.29 ms · Instantiate 0.06 ms 1 VC · peak 1.31 GB library 487 ms normalize · library — DiteSplit, complete proofs, n = 50 Total 487 ms; + one-time 36.3 ms = 523 ms Prepare 0.08 ms · Generate 11.8 ms · Grind 469 ms · Share 0.12 ms · Kernel 5.33 ms · Instantiate 0.06 ms 1 VC · peak 1.31 GB normalize-sym custom-monad 457 ms normalize-sym · custom-monad — DiteSplit, complete proofs, n = 50 Total 457 ms; + one-time 32.1 ms = 489 ms Prepare 0.08 ms · Generate 11.4 ms · Grind 443 ms · Share 0.10 ms · Kernel 2.04 ms · Instantiate 0.06 ms 1 VC · peak 1.31 GB hand-written-specs 491 ms normalize-sym · hand-written-specs — DiteSplit, complete proofs, n = 50 Total 491 ms; + one-time 36.0 ms = 526 ms Prepare 0.08 ms · Generate 16.0 ms · Grind 469 ms · Share 0.12 ms · Kernel 5.26 ms · Instantiate 0.07 ms 1 VC · peak 1.31 GB library 491 ms normalize-sym · library — DiteSplit, complete proofs, n = 50 Total 491 ms; + one-time 36.3 ms = 527 ms Prepare 0.08 ms · Generate 17.4 ms · Grind 467 ms · Share 0.11 ms · Kernel 5.32 ms · Instantiate 0.06 ms 1 VC · peak 1.31 GB dsimp custom-monad 559 ms dsimp · custom-monad — DiteSplit, complete proofs, n = 50 Total 559 ms; + one-time 32.1 ms = 591 ms Prepare 0.07 ms · Generate 111 ms · Grind 445 ms · Share 0.10 ms · Kernel 2.56 ms · Instantiate 0.06 ms 1 VC · peak 1.33 GB hand-written-specs 706 ms dsimp · hand-written-specs — DiteSplit, complete proofs, n = 50 Total 706 ms; + one-time 36.0 ms = 742 ms Prepare 0.07 ms · Generate 232 ms · Grind 466 ms · Share 0.13 ms · Kernel 6.10 ms · Instantiate 0.06 ms 1 VC · peak 1.33 GB library 711 ms dsimp · library — DiteSplit, complete proofs, n = 50 Total 711 ms; + one-time 36.3 ms = 747 ms Prepare 0.07 ms · Generate 233 ms · Grind 471 ms · Share 0.12 ms · Kernel 6.20 ms · Instantiate 0.06 ms 1 VC · peak 1.33 GB sym-dsimp custom-monad 491 ms sym-dsimp · custom-monad — DiteSplit, complete proofs, n = 50 Total 491 ms; + one-time 32.1 ms = 523 ms Prepare 0.07 ms · Generate 48.2 ms · Grind 440 ms · Share 0.10 ms · Kernel 2.04 ms · Instantiate 0.06 ms 1 VC · peak 1.31 GB hand-written-specs 515 ms sym-dsimp · hand-written-specs — DiteSplit, complete proofs, n = 50 Total 515 ms; + one-time 36.0 ms = 551 ms Prepare 0.07 ms · Generate 40.6 ms · Grind 464 ms · Share 0.12 ms · Kernel 9.36 ms · Instantiate 0.06 ms 1 VC · peak 1.31 GB library 505 ms sym-dsimp · library — DiteSplit, complete proofs, n = 50 Total 505 ms; + one-time 36.3 ms = 542 ms Prepare 0.07 ms · Generate 30.7 ms · Grind 465 ms · Share 0.12 ms · Kernel 9.18 ms · Instantiate 0.06 ms 1 VC · peak 1.31 GB wp-simp – 850 ms wp-simp — DiteSplit, complete proofs, n = 50 Total 850 ms; + one-time 34.9 ms = 885 ms Prepare 11.4 ms · Generate 323 ms · Grind 382 ms · Share 33.3 ms · Kernel 98.4 ms · Instantiate 0.05 ms 1 VC · peak 1.33 GB wp-sym – 585 ms wp-sym — DiteSplit, complete proofs, n = 50 Total 585 ms; + one-time 34.9 ms = 620 ms Prepare 11.2 ms · Generate 102 ms · Grind 367 ms · Share 24.1 ms · Kernel 79.7 ms · Instantiate 0.05 ms 1 VC · peak 1.35 GB
MatchSplit · complete proofs · n = 100 16 of 16 route·tier configurations finished at n = 100, the largest size. Bars: median time of each phase over the runs, on this panel's linear axis. Strip: each phase's share of the total. Prepare Generate Grind Share Kernel Other (Total − these) one-time cost, not per run median time per run share of total 0 2.5 s 5 s 7.5 s 10 s 12.5 s 0% 50% 100% vcgen hand-written-specs 10.3 s vcgen · hand-written-specs — MatchSplit, complete proofs, n = 100 Total 10.3 s Prepare 9.04 ms · Generate 27.2 ms · Grind 10.2 s · Share 13.2 ms · Kernel 43.1 ms · Instantiate 2.24 ms 101 VCs · peak 1.40 GB library 10.6 s vcgen · library — MatchSplit, complete proofs, n = 100 Total 10.6 s Prepare 8.90 ms · Generate 177 ms · Grind 10.3 s · Share 45.9 ms · Kernel 51.5 ms · Instantiate 6.68 ms 101 VCs · peak 1.41 GB vcgen-finish hand-written-specs 4.56 s vcgen-finish · hand-written-specs — MatchSplit, complete proofs, n = 100 Total 4.56 s Prepare 8.88 ms · Generate 370 ms · Grind 0.05 ms · Share 1.34 s · Kernel 2.82 s · Instantiate 11.3 ms 0 VCs · peak 1.79 GB library 4.79 s vcgen-finish · library — MatchSplit, complete proofs, n = 100 Total 4.79 s Prepare 9.16 ms · Generate 538 ms · Grind 0.06 ms · Share 1.44 s · Kernel 2.77 s · Instantiate 16.6 ms 0 VCs · peak 1.82 GB normalize custom-monad 118 ms normalize · custom-monad — MatchSplit, complete proofs, n = 100 Total 118 ms; + one-time 28.6 ms = 146 ms Prepare 0.08 ms · Generate 7.34 ms · Grind 108 ms · Share 0.09 ms · Kernel 2.28 ms · Instantiate 0.05 ms 1 VC · peak 1.31 GB hand-written-specs 46.7 ms normalize · hand-written-specs — MatchSplit, complete proofs, n = 100 Total 46.7 ms; + one-time 32.8 ms = 79.5 ms Prepare 0.09 ms · Generate 8.35 ms · Grind 34.5 ms · Share 0.11 ms · Kernel 3.22 ms · Instantiate 0.06 ms 1 VC · peak 1.31 GB library 47.6 ms normalize · library — MatchSplit, complete proofs, n = 100 Total 47.6 ms; + one-time 33.2 ms = 80.9 ms Prepare 0.08 ms · Generate 8.83 ms · Grind 35.0 ms · Share 0.11 ms · Kernel 3.30 ms · Instantiate 0.06 ms 1 VC · peak 1.31 GB normalize-sym custom-monad 124 ms normalize-sym · custom-monad — MatchSplit, complete proofs, n = 100 Total 124 ms; + one-time 28.6 ms = 153 ms Prepare 0.08 ms · Generate 14.7 ms · Grind 107 ms · Share 0.09 ms · Kernel 2.27 ms · Instantiate 0.05 ms 1 VC · peak 1.31 GB hand-written-specs 55.9 ms normalize-sym · hand-written-specs — MatchSplit, complete proofs, n = 100 Total 55.9 ms; + one-time 32.8 ms = 88.8 ms Prepare 0.09 ms · Generate 18.0 ms · Grind 34.3 ms · Share 0.11 ms · Kernel 3.25 ms · Instantiate 0.05 ms 1 VC · peak 1.31 GB library 60.2 ms normalize-sym · library — MatchSplit, complete proofs, n = 100 Total 60.2 ms; + one-time 33.2 ms = 93.5 ms Prepare 0.09 ms · Generate 22.1 ms · Grind 34.5 ms · Share 0.11 ms · Kernel 3.26 ms · Instantiate 0.05 ms 1 VC · peak 1.31 GB dsimp custom-monad 485 ms dsimp · custom-monad — MatchSplit, complete proofs, n = 100 Total 485 ms; + one-time 28.6 ms = 514 ms Prepare 0.07 ms · Generate 377 ms · Grind 106 ms · Share 0.10 ms · Kernel 2.29 ms · Instantiate 0.05 ms 1 VC · peak 1.31 GB hand-written-specs 593 ms dsimp · hand-written-specs — MatchSplit, complete proofs, n = 100 Total 593 ms; + one-time 32.8 ms = 626 ms Prepare 0.07 ms · Generate 555 ms · Grind 34.6 ms · Share 0.13 ms · Kernel 3.23 ms · Instantiate 0.05 ms 1 VC · peak 1.34 GB library 588 ms dsimp · library — MatchSplit, complete proofs, n = 100 Total 588 ms; + one-time 33.2 ms = 621 ms Prepare 0.07 ms · Generate 550 ms · Grind 34.1 ms · Share 0.12 ms · Kernel 3.28 ms · Instantiate 0.05 ms 1 VC · peak 1.34 GB sym-dsimp custom-monad 142 ms sym-dsimp · custom-monad — MatchSplit, complete proofs, n = 100 Total 142 ms; + one-time 28.6 ms = 171 ms Prepare 0.06 ms · Generate 34.4 ms · Grind 105 ms · Share 0.10 ms · Kernel 2.31 ms · Instantiate 0.05 ms 1 VC · peak 1.31 GB hand-written-specs 70.8 ms sym-dsimp · hand-written-specs — MatchSplit, complete proofs, n = 100 Total 70.8 ms; + one-time 32.8 ms = 104 ms Prepare 0.07 ms · Generate 30.3 ms · Grind 33.4 ms · Share 0.11 ms · Kernel 6.82 ms · Instantiate 0.05 ms 1 VC · peak 1.31 GB library 65.0 ms sym-dsimp · library — MatchSplit, complete proofs, n = 100 Total 65.0 ms; + one-time 33.2 ms = 98.2 ms Prepare 0.07 ms · Generate 24.5 ms · Grind 33.1 ms · Share 0.11 ms · Kernel 6.89 ms · Instantiate 0.05 ms 1 VC · peak 1.31 GB
MatchSplit at the other sizes: n = 10, n = 50
MatchSplit · complete proofs · n = 10 16 of 16 route·tier configurations finished at n = 10. Bars: median time of each phase over the runs, on this panel's linear axis. Strip: each phase's share of the total. Prepare Generate Grind Share Kernel Other (Total − these) one-time cost, not per run median time per run share of total 0 50 ms 100 ms 150 ms 0% 50% 100% vcgen hand-written-specs 107 ms vcgen · hand-written-specs — MatchSplit, complete proofs, n = 10 Total 107 ms Prepare 6.81 ms · Generate 17.8 ms · Grind 76.0 ms · Share 1.91 ms · Kernel 3.84 ms · Instantiate 0.16 ms 11 VCs · peak 1.31 GB library 135 ms vcgen · library — MatchSplit, complete proofs, n = 10 Total 135 ms Prepare 6.82 ms · Generate 41.7 ms · Grind 76.2 ms · Share 4.89 ms · Kernel 4.71 ms · Instantiate 0.43 ms 11 VCs · peak 1.31 GB vcgen-finish hand-written-specs 63.8 ms vcgen-finish · hand-written-specs — MatchSplit, complete proofs, n = 10 Total 63.8 ms Prepare 6.90 ms · Generate 22.9 ms · Grind 0.05 ms · Share 6.47 ms · Kernel 26.9 ms · Instantiate 0.23 ms 0 VCs · peak 1.32 GB library 91.5 ms vcgen-finish · library — MatchSplit, complete proofs, n = 10 Total 91.5 ms Prepare 6.79 ms · Generate 46.7 ms · Grind 0.06 ms · Share 9.05 ms · Kernel 28.2 ms · Instantiate 0.48 ms 0 VCs · peak 1.32 GB normalize custom-monad 10.8 ms normalize · custom-monad — MatchSplit, complete proofs, n = 10 Total 10.8 ms; + one-time 28.6 ms = 39.4 ms Prepare 0.08 ms · Generate 1.47 ms · Grind 8.48 ms · Share 0.09 ms · Kernel 0.36 ms · Instantiate 0.05 ms 1 VC · peak 1.26 GB hand-written-specs 13.1 ms normalize · hand-written-specs — MatchSplit, complete proofs, n = 10 Total 13.1 ms; + one-time 32.8 ms = 46.0 ms Prepare 0.08 ms · Generate 1.85 ms · Grind 10.2 ms · Share 0.11 ms · Kernel 0.54 ms · Instantiate 0.05 ms 1 VC · peak 1.31 GB library 12.9 ms normalize · library — MatchSplit, complete proofs, n = 10 Total 12.9 ms; + one-time 33.2 ms = 46.1 ms Prepare 0.08 ms · Generate 1.84 ms · Grind 9.98 ms · Share 0.11 ms · Kernel 0.58 ms · Instantiate 0.05 ms 1 VC · peak 1.31 GB normalize-sym custom-monad 11.7 ms normalize-sym · custom-monad — MatchSplit, complete proofs, n = 10 Total 11.7 ms; + one-time 28.6 ms = 40.4 ms Prepare 0.08 ms · Generate 2.08 ms · Grind 8.83 ms · Share 0.08 ms · Kernel 0.36 ms · Instantiate 0.04 ms 1 VC · peak 1.26 GB hand-written-specs 13.8 ms normalize-sym · hand-written-specs — MatchSplit, complete proofs, n = 10 Total 13.8 ms; + one-time 32.8 ms = 46.6 ms Prepare 0.08 ms · Generate 2.49 ms · Grind 10.1 ms · Share 0.11 ms · Kernel 0.55 ms · Instantiate 0.05 ms 1 VC · peak 1.26 GB library 14.0 ms normalize-sym · library — MatchSplit, complete proofs, n = 10 Total 14.0 ms; + one-time 33.2 ms = 47.2 ms Prepare 0.08 ms · Generate 2.87 ms · Grind 10.1 ms · Share 0.11 ms · Kernel 0.59 ms · Instantiate 0.05 ms 1 VC · peak 1.26 GB dsimp custom-monad 17.5 ms dsimp · custom-monad — MatchSplit, complete proofs, n = 10 Total 17.5 ms; + one-time 28.6 ms = 46.2 ms Prepare 0.07 ms · Generate 8.10 ms · Grind 8.68 ms · Share 0.09 ms · Kernel 0.37 ms · Instantiate 0.05 ms 1 VC · peak 1.31 GB hand-written-specs 19.8 ms dsimp · hand-written-specs — MatchSplit, complete proofs, n = 10 Total 19.8 ms; + one-time 32.8 ms = 52.6 ms Prepare 0.07 ms · Generate 8.97 ms · Grind 9.82 ms · Share 0.11 ms · Kernel 0.52 ms · Instantiate 0.05 ms 1 VC · peak 1.32 GB library 20.8 ms dsimp · library — MatchSplit, complete proofs, n = 10 Total 20.8 ms; + one-time 33.2 ms = 54.1 ms Prepare 0.07 ms · Generate 9.51 ms · Grind 10.2 ms · Share 0.12 ms · Kernel 0.59 ms · Instantiate 0.05 ms 1 VC · peak 1.31 GB sym-dsimp custom-monad 13.8 ms sym-dsimp · custom-monad — MatchSplit, complete proofs, n = 10 Total 13.8 ms; + one-time 28.6 ms = 42.4 ms Prepare 0.07 ms · Generate 4.13 ms · Grind 8.82 ms · Share 0.09 ms · Kernel 0.38 ms · Instantiate 0.05 ms 1 VC · peak 1.26 GB hand-written-specs 14.8 ms sym-dsimp · hand-written-specs — MatchSplit, complete proofs, n = 10 Total 14.8 ms; + one-time 32.8 ms = 47.7 ms Prepare 0.07 ms · Generate 3.72 ms · Grind 9.75 ms · Share 0.11 ms · Kernel 0.94 ms · Instantiate 0.05 ms 1 VC · peak 1.26 GB library 14.8 ms sym-dsimp · library — MatchSplit, complete proofs, n = 10 Total 14.8 ms; + one-time 33.2 ms = 48.0 ms Prepare 0.07 ms · Generate 3.30 ms · Grind 10.1 ms · Share 0.11 ms · Kernel 1.00 ms · Instantiate 0.05 ms 1 VC · peak 1.32 GB
MatchSplit · complete proofs · n = 50 16 of 16 route·tier configurations finished at n = 50. Bars: median time of each phase over the runs, on this panel's linear axis. Strip: each phase's share of the total. Prepare Generate Grind Share Kernel Other (Total − these) one-time cost, not per run median time per run share of total 0 0.5 s 1 s 1.5 s 2 s 0% 50% 100% vcgen hand-written-specs 1.57 s vcgen · hand-written-specs — MatchSplit, complete proofs, n = 50 Total 1.57 s Prepare 7.72 ms · Generate 22.1 ms · Grind 1.53 s · Share 6.03 ms · Kernel 12.4 ms · Instantiate 0.86 ms 51 VCs · peak 1.35 GB library 1.68 s vcgen · library — MatchSplit, complete proofs, n = 50 Total 1.68 s Prepare 7.74 ms · Generate 99.1 ms · Grind 1.54 s · Share 19.2 ms · Kernel 15.6 ms · Instantiate 2.58 ms 51 VCs · peak 1.35 GB vcgen-finish hand-written-specs 852 ms vcgen-finish · hand-written-specs — MatchSplit, complete proofs, n = 50 Total 852 ms Prepare 7.77 ms · Generate 81.1 ms · Grind 0.06 ms · Share 153 ms · Kernel 609 ms · Instantiate 2.50 ms 0 VCs · peak 1.40 GB library 971 ms vcgen-finish · library — MatchSplit, complete proofs, n = 50 Total 971 ms Prepare 7.78 ms · Generate 163 ms · Grind 0.06 ms · Share 188 ms · Kernel 606 ms · Instantiate 4.06 ms 0 VCs · peak 1.38 GB normalize custom-monad 42.2 ms normalize · custom-monad — MatchSplit, complete proofs, n = 50 Total 42.2 ms; + one-time 28.6 ms = 70.9 ms Prepare 0.08 ms · Generate 4.07 ms · Grind 36.4 ms · Share 0.10 ms · Kernel 1.22 ms · Instantiate 0.05 ms 1 VC · peak 1.31 GB hand-written-specs 27.1 ms normalize · hand-written-specs — MatchSplit, complete proofs, n = 50 Total 27.1 ms; + one-time 32.8 ms = 59.9 ms Prepare 0.08 ms · Generate 4.76 ms · Grind 20.2 ms · Share 0.11 ms · Kernel 1.73 ms · Instantiate 0.05 ms 1 VC · peak 1.31 GB library 27.1 ms normalize · library — MatchSplit, complete proofs, n = 50 Total 27.1 ms; + one-time 33.2 ms = 60.3 ms Prepare 0.08 ms · Generate 4.92 ms · Grind 19.9 ms · Share 0.11 ms · Kernel 1.77 ms · Instantiate 0.05 ms 1 VC · peak 1.32 GB normalize-sym custom-monad 46.0 ms normalize-sym · custom-monad — MatchSplit, complete proofs, n = 50 Total 46.0 ms; + one-time 28.6 ms = 74.6 ms Prepare 0.08 ms · Generate 7.81 ms · Grind 36.5 ms · Share 0.09 ms · Kernel 1.21 ms · Instantiate 0.06 ms 1 VC · peak 1.31 GB hand-written-specs 31.7 ms normalize-sym · hand-written-specs — MatchSplit, complete proofs, n = 50 Total 31.7 ms; + one-time 32.8 ms = 64.5 ms Prepare 0.08 ms · Generate 9.22 ms · Grind 20.2 ms · Share 0.11 ms · Kernel 1.74 ms · Instantiate 0.05 ms 1 VC · peak 1.31 GB library 34.0 ms normalize-sym · library — MatchSplit, complete proofs, n = 50 Total 34.0 ms; + one-time 33.2 ms = 67.2 ms Prepare 0.08 ms · Generate 11.2 ms · Grind 20.4 ms · Share 0.11 ms · Kernel 1.79 ms · Instantiate 0.06 ms 1 VC · peak 1.31 GB dsimp custom-monad 135 ms dsimp · custom-monad — MatchSplit, complete proofs, n = 50 Total 135 ms; + one-time 28.6 ms = 164 ms Prepare 0.07 ms · Generate 97.1 ms · Grind 36.1 ms · Share 0.09 ms · Kernel 1.22 ms · Instantiate 0.05 ms 1 VC · peak 1.31 GB hand-written-specs 153 ms dsimp · hand-written-specs — MatchSplit, complete proofs, n = 50 Total 153 ms; + one-time 32.8 ms = 186 ms Prepare 0.08 ms · Generate 132 ms · Grind 19.6 ms · Share 0.11 ms · Kernel 1.73 ms · Instantiate 0.05 ms 1 VC · peak 1.31 GB library 155 ms dsimp · library — MatchSplit, complete proofs, n = 50 Total 155 ms; + one-time 33.2 ms = 188 ms Prepare 0.07 ms · Generate 133 ms · Grind 19.8 ms · Share 0.11 ms · Kernel 1.77 ms · Instantiate 0.05 ms 1 VC · peak 1.31 GB sym-dsimp custom-monad 55.4 ms sym-dsimp · custom-monad — MatchSplit, complete proofs, n = 50 Total 55.4 ms; + one-time 28.6 ms = 84.0 ms Prepare 0.07 ms · Generate 17.4 ms · Grind 36.3 ms · Share 0.09 ms · Kernel 1.25 ms · Instantiate 0.05 ms 1 VC · peak 1.31 GB hand-written-specs 39.7 ms sym-dsimp · hand-written-specs — MatchSplit, complete proofs, n = 50 Total 39.7 ms; + one-time 32.8 ms = 72.6 ms Prepare 0.07 ms · Generate 15.5 ms · Grind 20.3 ms · Share 0.12 ms · Kernel 3.65 ms · Instantiate 0.05 ms 1 VC · peak 1.31 GB library 36.4 ms sym-dsimp · library — MatchSplit, complete proofs, n = 50 Total 36.4 ms; + one-time 33.2 ms = 69.6 ms Prepare 0.07 ms · Generate 12.4 ms · Grind 19.8 ms · Share 0.12 ms · Kernel 3.61 ms · Instantiate 0.05 ms 1 VC · peak 1.32 GB

Where the time goes · generation only

One bar per route·tier at each case's largest common size: the median of each phase (Prepare, Generate, Grind, Share, Kernel; Other is the rest of Total, mostly Instantiate) on the panel's own linear axis. Routes with a one-time cost add it, hatched. The strip on the right shows each phase's share of the total, which stays readable for fast routes. Other sizes are under each panel.

ReaderState · generation only · n = 2600 11 of 16 route·tier configurations finished at n = 2600, the largest size. Bars: median time of each phase over the runs, on this panel's linear axis. Strip: each phase's share of the total. Prepare Generate Grind Share Kernel Other (Total − these) one-time cost, not per run median time per run share of total 0 5 s 10 s 15 s 20 s 25 s 0% 50% 100% vcgen hand-written-specs 1.63 s vcgen · hand-written-specs — ReaderState, generation only, n = 2600 Total 1.63 s Prepare 75.5 ms · Generate 402 ms · Grind 0.11 ms · Share 588 ms · Kernel 508 ms · Instantiate 45.0 ms 1 VC · peak 1.53 GB library 20.0 s vcgen · library — ReaderState, generation only, n = 2600 Total 20.0 s Prepare 75.7 ms · Generate 11.2 s · Grind 0.12 ms · Share 7.19 s · Kernel 1.08 s · Instantiate 435 ms 1 VC · peak 2.60 GB normalize custom-monad 277 ms normalize · custom-monad — ReaderState, generation only, n = 2600 Total 277 ms; + one-time 24.7 ms = 301 ms Prepare 0.08 ms · Generate 208 ms · Grind 0.22 ms · Share 9.03 ms · Kernel 57.8 ms · Instantiate 0.41 ms 1 VC · peak 1.31 GB hand-written-specs 391 ms normalize · hand-written-specs — ReaderState, generation only, n = 2600 Total 391 ms; + one-time 27.5 ms = 419 ms Prepare 0.09 ms · Generate 298 ms · Grind 0.21 ms · Share 8.76 ms · Kernel 83.1 ms · Instantiate 0.41 ms 1 VC · peak 1.31 GB library 707 ms normalize · library — ReaderState, generation only, n = 2600 Total 707 ms; + one-time 28.3 ms = 735 ms Prepare 0.09 ms · Generate 563 ms · Grind 0.20 ms · Share 8.84 ms · Kernel 132 ms · Instantiate 0.42 ms 1 VC · peak 1.32 GB normalize-sym custom-monad 264 ms normalize-sym · custom-monad — ReaderState, generation only, n = 2600 Total 264 ms; + one-time 24.7 ms = 289 ms Prepare 0.09 ms · Generate 201 ms · Grind 0.08 ms · Share 5.64 ms · Kernel 56.5 ms · Instantiate 0.42 ms 1 VC · peak 1.31 GB hand-written-specs 386 ms normalize-sym · hand-written-specs — ReaderState, generation only, n = 2600 Total 386 ms; + one-time 27.5 ms = 414 ms Prepare 0.09 ms · Generate 297 ms · Grind 0.08 ms · Share 5.60 ms · Kernel 82.7 ms · Instantiate 0.42 ms 1 VC · peak 1.31 GB library 685 ms normalize-sym · library — ReaderState, generation only, n = 2600 Total 685 ms; + one-time 28.3 ms = 713 ms Prepare 0.09 ms · Generate 546 ms · Grind 0.08 ms · Share 5.48 ms · Kernel 132 ms · Instantiate 0.43 ms 1 VC · peak 1.31 GB dsimp custom-monad 1.41 s dsimp · custom-monad — ReaderState, generation only, n = 2600 Total 1.41 s; + one-time 24.7 ms = 1.44 s Prepare 0.07 ms · Generate 1.34 s · Grind 0.09 ms · Share 11.7 ms · Kernel 56.5 ms · Instantiate 0.46 ms 1 VC · peak 1.31 GB hand-written-specs memory > 8 GB dsimp · hand-written-specs — ReaderState, generation only, n = 2600 memory > 8 GB library memory > 8 GB dsimp · library — ReaderState, generation only, n = 2600 memory > 8 GB sym-dsimp custom-monad timeout: measured 65.6 s (limit 60 s), at n = 1600; larger sizes skipped sym-dsimp · custom-monad — ReaderState, generation only, n = 2600 timeout: measured 65.6 s (limit 60 s), at n = 1600; larger sizes skipped hand-written-specs timeout: measured 85.9 s (limit 60 s) sym-dsimp · hand-written-specs — ReaderState, generation only, n = 2600 timeout: measured 85.9 s (limit 60 s) library timeout: measured 74.2 s (limit 60 s) sym-dsimp · library — ReaderState, generation only, n = 2600 timeout: measured 74.2 s (limit 60 s) wp-simp – 11.1 s wp-simp — ReaderState, generation only, n = 2600 Total 11.1 s; + one-time 14.1 ms = 11.2 s Prepare 75.5 ms · Generate 10.6 s · Grind 0.53 ms · Share 139 ms · Kernel 359 ms · Instantiate 0.05 ms 1 VC · peak 1.44 GB wp-sym – 17.6 s wp-sym — ReaderState, generation only, n = 2600 Total 17.6 s; + one-time 14.1 ms = 17.6 s Prepare 75.4 ms · Generate 1.57 s · Grind 0.37 ms · Share 1.41 s · Kernel 14.5 s · Instantiate 0.05 ms 1 VC · peak 1.55 GB
ReaderState at the other sizes: n = 600, n = 1600
ReaderState · generation only · n = 600 16 of 16 route·tier configurations finished at n = 600. Bars: median time of each phase over the runs, on this panel's linear axis. Strip: each phase's share of the total. Prepare Generate Grind Share Kernel Other (Total − these) one-time cost, not per run median time per run share of total 0 2 s 4 s 6 s 8 s 10 s 0% 50% 100% vcgen hand-written-specs 274 ms vcgen · hand-written-specs — ReaderState, generation only, n = 600 Total 274 ms Prepare 21.6 ms · Generate 90.7 ms · Grind 0.09 ms · Share 55.4 ms · Kernel 99.0 ms · Instantiate 6.66 ms 1 VC · peak 1.31 GB library 3.56 s vcgen · library — ReaderState, generation only, n = 600 Total 3.56 s Prepare 21.8 ms · Generate 2.19 s · Grind 0.11 ms · Share 1.07 s · Kernel 204 ms · Instantiate 79.6 ms 1 VC · peak 1.58 GB normalize custom-monad 64.6 ms normalize · custom-monad — ReaderState, generation only, n = 600 Total 64.6 ms; + one-time 24.7 ms = 89.3 ms Prepare 0.08 ms · Generate 48.6 ms · Grind 0.11 ms · Share 2.24 ms · Kernel 13.2 ms · Instantiate 0.15 ms 1 VC · peak 1.31 GB hand-written-specs 91.7 ms normalize · hand-written-specs — ReaderState, generation only, n = 600 Total 91.7 ms; + one-time 27.5 ms = 119 ms Prepare 0.09 ms · Generate 70.5 ms · Grind 0.11 ms · Share 2.26 ms · Kernel 18.3 ms · Instantiate 0.14 ms 1 VC · peak 1.31 GB library 156 ms normalize · library — ReaderState, generation only, n = 600 Total 156 ms; + one-time 28.3 ms = 185 ms Prepare 0.09 ms · Generate 126 ms · Grind 0.11 ms · Share 2.29 ms · Kernel 27.3 ms · Instantiate 0.14 ms 1 VC · peak 1.31 GB normalize-sym custom-monad 62.5 ms normalize-sym · custom-monad — ReaderState, generation only, n = 600 Total 62.5 ms; + one-time 24.7 ms = 87.2 ms Prepare 0.09 ms · Generate 47.3 ms · Grind 0.08 ms · Share 1.43 ms · Kernel 13.2 ms · Instantiate 0.15 ms 1 VC · peak 1.31 GB hand-written-specs 89.2 ms normalize-sym · hand-written-specs — ReaderState, generation only, n = 600 Total 89.2 ms; + one-time 27.5 ms = 117 ms Prepare 0.09 ms · Generate 69.3 ms · Grind 0.08 ms · Share 1.42 ms · Kernel 18.0 ms · Instantiate 0.14 ms 1 VC · peak 1.31 GB library 155 ms normalize-sym · library — ReaderState, generation only, n = 600 Total 155 ms; + one-time 28.3 ms = 184 ms Prepare 0.09 ms · Generate 126 ms · Grind 0.08 ms · Share 1.45 ms · Kernel 27.2 ms · Instantiate 0.17 ms 1 VC · peak 1.31 GB dsimp custom-monad 117 ms dsimp · custom-monad — ReaderState, generation only, n = 600 Total 117 ms; + one-time 24.7 ms = 142 ms Prepare 0.07 ms · Generate 100 ms · Grind 0.08 ms · Share 2.98 ms · Kernel 13.2 ms · Instantiate 0.15 ms 1 VC · peak 1.31 GB hand-written-specs 6.93 s dsimp · hand-written-specs — ReaderState, generation only, n = 600 Total 6.93 s; + one-time 27.5 ms = 6.96 s Prepare 0.08 ms · Generate 6.91 s · Grind 0.11 ms · Share 2.31 ms · Kernel 18.1 ms · Instantiate 0.17 ms 1 VC · peak 1.89 GB library 6.90 s dsimp · library — ReaderState, generation only, n = 600 Total 6.90 s; + one-time 28.3 ms = 6.93 s Prepare 0.07 ms · Generate 6.87 s · Grind 0.10 ms · Share 2.26 ms · Kernel 27.4 ms · Instantiate 0.16 ms 1 VC · peak 1.89 GB sym-dsimp custom-monad 9.22 s sym-dsimp · custom-monad — ReaderState, generation only, n = 600 Total 9.22 s; + one-time 24.7 ms = 9.25 s Prepare 0.07 ms · Generate 9.21 s · Grind 0.09 ms · Share 1.39 ms · Kernel 13.3 ms · Instantiate 0.15 ms 1 VC · peak 1.32 GB hand-written-specs 4.61 s sym-dsimp · hand-written-specs — ReaderState, generation only, n = 600 Total 4.61 s; + one-time 27.5 ms = 4.63 s Prepare 0.07 ms · Generate 4.56 s · Grind 0.08 ms · Share 1.49 ms · Kernel 46.1 ms · Instantiate 0.15 ms 1 VC · peak 1.32 GB library 3.95 s sym-dsimp · library — ReaderState, generation only, n = 600 Total 3.95 s; + one-time 28.3 ms = 3.98 s Prepare 0.08 ms · Generate 3.88 s · Grind 0.09 ms · Share 1.45 ms · Kernel 69.7 ms · Instantiate 0.16 ms 1 VC · peak 1.33 GB wp-simp – 1.12 s wp-simp — ReaderState, generation only, n = 600 Total 1.12 s; + one-time 14.1 ms = 1.13 s Prepare 22.4 ms · Generate 1.01 s · Grind 0.12 ms · Share 21.9 ms · Kernel 66.4 ms · Instantiate 0.04 ms 1 VC · peak 1.33 GB wp-sym – 1.23 s wp-sym — ReaderState, generation only, n = 600 Total 1.23 s; + one-time 14.1 ms = 1.25 s Prepare 21.8 ms · Generate 319 ms · Grind 0.13 ms · Share 97.4 ms · Kernel 795 ms · Instantiate 0.04 ms 1 VC · peak 1.37 GB
ReaderState · generation only · n = 1600 15 of 16 route·tier configurations finished at n = 1600. Bars: median time of each phase over the runs, on this panel's linear axis. Strip: each phase's share of the total. Prepare Generate Grind Share Kernel Other (Total − these) one-time cost, not per run median time per run share of total 0 20 s 40 s 60 s 0% 50% 100% vcgen hand-written-specs 861 ms vcgen · hand-written-specs — ReaderState, generation only, n = 1600 Total 861 ms Prepare 48.0 ms · Generate 242 ms · Grind 0.11 ms · Share 251 ms · Kernel 299 ms · Instantiate 22.0 ms 1 VC · peak 1.41 GB library 11.4 s vcgen · library — ReaderState, generation only, n = 1600 Total 11.4 s Prepare 48.4 ms · Generate 6.60 s · Grind 0.11 ms · Share 3.89 s · Kernel 653 ms · Instantiate 253 ms 1 VC · peak 2.09 GB normalize custom-monad 169 ms normalize · custom-monad — ReaderState, generation only, n = 1600 Total 169 ms; + one-time 24.7 ms = 193 ms Prepare 0.09 ms · Generate 127 ms · Grind 0.15 ms · Share 6.06 ms · Kernel 34.9 ms · Instantiate 0.28 ms 1 VC · peak 1.31 GB hand-written-specs 242 ms normalize · hand-written-specs — ReaderState, generation only, n = 1600 Total 242 ms; + one-time 27.5 ms = 270 ms Prepare 0.09 ms · Generate 186 ms · Grind 0.16 ms · Share 6.01 ms · Kernel 49.6 ms · Instantiate 0.28 ms 1 VC · peak 1.31 GB library 421 ms normalize · library — ReaderState, generation only, n = 1600 Total 421 ms; + one-time 28.3 ms = 449 ms Prepare 0.09 ms · Generate 338 ms · Grind 0.16 ms · Share 6.00 ms · Kernel 76.0 ms · Instantiate 0.28 ms 1 VC · peak 1.31 GB normalize-sym custom-monad 166 ms normalize-sym · custom-monad — ReaderState, generation only, n = 1600 Total 166 ms; + one-time 24.7 ms = 190 ms Prepare 0.08 ms · Generate 125 ms · Grind 0.09 ms · Share 3.65 ms · Kernel 35.8 ms · Instantiate 0.29 ms 1 VC · peak 1.31 GB hand-written-specs 239 ms normalize-sym · hand-written-specs — ReaderState, generation only, n = 1600 Total 239 ms; + one-time 27.5 ms = 267 ms Prepare 0.09 ms · Generate 186 ms · Grind 0.08 ms · Share 3.52 ms · Kernel 49.7 ms · Instantiate 0.30 ms 1 VC · peak 1.31 GB library 419 ms normalize-sym · library — ReaderState, generation only, n = 1600 Total 419 ms; + one-time 28.3 ms = 447 ms Prepare 0.09 ms · Generate 338 ms · Grind 0.09 ms · Share 3.60 ms · Kernel 76.7 ms · Instantiate 0.29 ms 1 VC · peak 1.31 GB dsimp custom-monad 593 ms dsimp · custom-monad — ReaderState, generation only, n = 1600 Total 593 ms; + one-time 24.7 ms = 618 ms Prepare 0.08 ms · Generate 551 ms · Grind 0.09 ms · Share 7.25 ms · Kernel 34.9 ms · Instantiate 0.30 ms 1 VC · peak 1.31 GB hand-written-specs 49.9 s dsimp · hand-written-specs — ReaderState, generation only, n = 1600 Total 49.9 s; + one-time 27.5 ms = 49.9 s Prepare 0.08 ms · Generate 49.9 s · Grind 0.10 ms · Share 5.96 ms · Kernel 49.7 ms · Instantiate 0.30 ms 1 VC · peak 5.31 GB library 50.1 s dsimp · library — ReaderState, generation only, n = 1600 Total 50.1 s; + one-time 28.3 ms = 50.1 s Prepare 0.07 ms · Generate 50.0 s · Grind 0.10 ms · Share 6.03 ms · Kernel 76.0 ms · Instantiate 0.30 ms 1 VC · peak 5.31 GB sym-dsimp custom-monad timeout: measured 65.6 s (limit 60 s) sym-dsimp · custom-monad — ReaderState, generation only, n = 1600 timeout: measured 65.6 s (limit 60 s) hand-written-specs 32.0 s sym-dsimp · hand-written-specs — ReaderState, generation only, n = 1600 Total 32.0 s; + one-time 27.5 ms = 32.1 s Prepare 0.08 ms · Generate 31.9 s · Grind 0.10 ms · Share 3.52 ms · Kernel 141 ms · Instantiate 0.30 ms 1 VC · peak 1.35 GB library 27.3 s sym-dsimp · library — ReaderState, generation only, n = 1600 Total 27.3 s; + one-time 28.3 ms = 27.3 s Prepare 0.08 ms · Generate 27.1 s · Grind 0.11 ms · Share 3.62 ms · Kernel 230 ms · Instantiate 0.31 ms 1 VC · peak 1.36 GB wp-simp – 4.79 s wp-simp — ReaderState, generation only, n = 1600 Total 4.79 s; + one-time 14.1 ms = 4.81 s Prepare 48.6 ms · Generate 4.47 s · Grind 0.26 ms · Share 67.0 ms · Kernel 217 ms · Instantiate 0.05 ms 1 VC · peak 1.41 GB wp-sym – 6.92 s wp-sym — ReaderState, generation only, n = 1600 Total 6.92 s; + one-time 14.1 ms = 6.93 s Prepare 48.4 ms · Generate 913 ms · Grind 0.22 ms · Share 596 ms · Kernel 5.36 s · Instantiate 0.04 ms 1 VC · peak 1.47 GB
GetThrowSet · generation only · n = 800 15 of 16 route·tier configurations finished at n = 800, the largest size. Bars: median time of each phase over the runs, on this panel's linear axis. Strip: each phase's share of the total. Prepare Generate Grind Share Kernel Other (Total − these) one-time cost, not per run median time per run share of total 0 10 s 20 s 30 s 40 s 50 s 0% 50% 100% vcgen hand-written-specs 3.69 s vcgen · hand-written-specs — GetThrowSet, generation only, n = 800 Total 3.69 s Prepare 58.5 ms · Generate 129 ms · Grind 1.42 ms · Share 2.85 s · Kernel 453 ms · Instantiate 205 ms 801 VCs · peak 1.65 GB library 6.46 s vcgen · library — GetThrowSet, generation only, n = 800 Total 6.46 s Prepare 58.7 ms · Generate 1.52 s · Grind 2.54 ms · Share 3.98 s · Kernel 627 ms · Instantiate 269 ms 801 VCs · peak 1.82 GB normalize custom-monad 116 ms normalize · custom-monad — GetThrowSet, generation only, n = 800 Total 116 ms; + one-time 31.1 ms = 147 ms Prepare 0.08 ms · Generate 81.7 ms · Grind 0.08 ms · Share 8.11 ms · Kernel 25.9 ms · Instantiate 0.07 ms 1 VC · peak 1.31 GB hand-written-specs 176 ms normalize · hand-written-specs — GetThrowSet, generation only, n = 800 Total 176 ms; + one-time 35.1 ms = 211 ms Prepare 0.08 ms · Generate 102 ms · Grind 0.08 ms · Share 12.9 ms · Kernel 60.5 ms · Instantiate 0.06 ms 1 VC · peak 1.31 GB library 188 ms normalize · library — GetThrowSet, generation only, n = 800 Total 188 ms; + one-time 35.5 ms = 223 ms Prepare 0.08 ms · Generate 114 ms · Grind 0.08 ms · Share 12.6 ms · Kernel 60.9 ms · Instantiate 0.06 ms 1 VC · peak 1.31 GB normalize-sym custom-monad 139 ms normalize-sym · custom-monad — GetThrowSet, generation only, n = 800 Total 139 ms; + one-time 31.1 ms = 170 ms Prepare 0.08 ms · Generate 107 ms · Grind 0.09 ms · Share 5.63 ms · Kernel 25.7 ms · Instantiate 0.06 ms 1 VC · peak 1.31 GB hand-written-specs 231 ms normalize-sym · hand-written-specs — GetThrowSet, generation only, n = 800 Total 231 ms; + one-time 35.1 ms = 267 ms Prepare 0.08 ms · Generate 164 ms · Grind 0.08 ms · Share 7.49 ms · Kernel 59.4 ms · Instantiate 0.07 ms 1 VC · peak 1.31 GB library 255 ms normalize-sym · library — GetThrowSet, generation only, n = 800 Total 255 ms; + one-time 35.5 ms = 290 ms Prepare 0.09 ms · Generate 183 ms · Grind 0.09 ms · Share 10.2 ms · Kernel 60.3 ms · Instantiate 0.07 ms 1 VC · peak 1.31 GB dsimp custom-monad 1.02 s dsimp · custom-monad — GetThrowSet, generation only, n = 800 Total 1.02 s; + one-time 31.1 ms = 1.06 s Prepare 0.07 ms · Generate 985 ms · Grind 0.10 ms · Share 8.80 ms · Kernel 29.4 ms · Instantiate 0.07 ms 1 VC · peak 1.31 GB hand-written-specs 44.0 s dsimp · hand-written-specs — GetThrowSet, generation only, n = 800 Total 44.0 s; + one-time 35.1 ms = 44.0 s Prepare 0.07 ms · Generate 43.9 s · Grind 0.11 ms · Share 12.0 ms · Kernel 84.0 ms · Instantiate 0.07 ms 1 VC · peak 3.01 GB library 42.5 s dsimp · library — GetThrowSet, generation only, n = 800 Total 42.5 s; + one-time 35.5 ms = 42.6 s Prepare 0.08 ms · Generate 42.5 s · Grind 0.10 ms · Share 12.1 ms · Kernel 83.7 ms · Instantiate 0.08 ms 1 VC · peak 2.96 GB sym-dsimp custom-monad 11.3 s sym-dsimp · custom-monad — GetThrowSet, generation only, n = 800 Total 11.3 s; + one-time 31.1 ms = 11.3 s Prepare 0.07 ms · Generate 11.2 s · Grind 0.10 ms · Share 4.48 ms · Kernel 27.7 ms · Instantiate 0.07 ms 1 VC · peak 1.32 GB hand-written-specs 7.77 s sym-dsimp · hand-written-specs — GetThrowSet, generation only, n = 800 Total 7.77 s; + one-time 35.1 ms = 7.81 s Prepare 0.07 ms · Generate 7.62 s · Grind 0.10 ms · Share 5.75 ms · Kernel 144 ms · Instantiate 0.07 ms 1 VC · peak 1.33 GB library 5.26 s sym-dsimp · library — GetThrowSet, generation only, n = 800 Total 5.26 s; + one-time 35.5 ms = 5.29 s Prepare 0.08 ms · Generate 5.11 s · Grind 0.10 ms · Share 5.86 ms · Kernel 141 ms · Instantiate 0.08 ms 1 VC · peak 1.37 GB wp-simp – memory > 8 GB, at n = 500; larger sizes skipped wp-simp — GetThrowSet, generation only, n = 800 memory > 8 GB, at n = 500; larger sizes skipped wp-sym – 2.30 s wp-sym — GetThrowSet, generation only, n = 800 Total 2.30 s; + one-time 34.9 ms = 2.33 s Prepare 59.0 ms · Generate 482 ms · Grind 0.31 ms · Share 357 ms · Kernel 1.40 s · Instantiate 0.05 ms 1 VC · peak 1.41 GB
GetThrowSet at the other sizes: n = 200, n = 500
GetThrowSet · generation only · n = 200 16 of 16 route·tier configurations finished at n = 200. Bars: median time of each phase over the runs, on this panel's linear axis. Strip: each phase's share of the total. Prepare Generate Grind Share Kernel Other (Total − these) one-time cost, not per run median time per run share of total 0 2 s 4 s 6 s 0% 50% 100% vcgen hand-written-specs 182 ms vcgen · hand-written-specs — GetThrowSet, generation only, n = 200 Total 182 ms Prepare 19.2 ms · Generate 40.9 ms · Grind 0.41 ms · Share 62.0 ms · Kernel 48.3 ms · Instantiate 10.2 ms 201 VCs · peak 1.31 GB library 631 ms vcgen · library — GetThrowSet, generation only, n = 200 Total 631 ms Prepare 19.2 ms · Generate 342 ms · Grind 0.51 ms · Share 187 ms · Kernel 64.2 ms · Instantiate 18.1 ms 201 VCs · peak 1.39 GB normalize custom-monad 30.2 ms normalize · custom-monad — GetThrowSet, generation only, n = 200 Total 30.2 ms; + one-time 31.1 ms = 61.3 ms Prepare 0.08 ms · Generate 20.8 ms · Grind 0.07 ms · Share 2.14 ms · Kernel 6.67 ms · Instantiate 0.05 ms 1 VC · peak 1.31 GB hand-written-specs 44.5 ms normalize · hand-written-specs — GetThrowSet, generation only, n = 200 Total 44.5 ms; + one-time 35.1 ms = 79.7 ms Prepare 0.08 ms · Generate 26.0 ms · Grind 0.08 ms · Share 3.33 ms · Kernel 14.8 ms · Instantiate 0.06 ms 1 VC · peak 1.31 GB library 47.9 ms normalize · library — GetThrowSet, generation only, n = 200 Total 47.9 ms; + one-time 35.5 ms = 83.4 ms Prepare 0.08 ms · Generate 29.2 ms · Grind 0.08 ms · Share 3.36 ms · Kernel 14.9 ms · Instantiate 0.06 ms 1 VC · peak 1.31 GB normalize-sym custom-monad 34.6 ms normalize-sym · custom-monad — GetThrowSet, generation only, n = 200 Total 34.6 ms; + one-time 31.1 ms = 65.8 ms Prepare 0.08 ms · Generate 26.2 ms · Grind 0.09 ms · Share 1.47 ms · Kernel 6.53 ms · Instantiate 0.06 ms 1 VC · peak 1.31 GB hand-written-specs 58.1 ms normalize-sym · hand-written-specs — GetThrowSet, generation only, n = 200 Total 58.1 ms; + one-time 35.1 ms = 93.3 ms Prepare 0.09 ms · Generate 41.0 ms · Grind 0.08 ms · Share 2.03 ms · Kernel 14.6 ms · Instantiate 0.06 ms 1 VC · peak 1.31 GB library 63.0 ms normalize-sym · library — GetThrowSet, generation only, n = 200 Total 63.0 ms; + one-time 35.5 ms = 98.5 ms Prepare 0.08 ms · Generate 45.2 ms · Grind 0.09 ms · Share 2.65 ms · Kernel 14.7 ms · Instantiate 0.06 ms 1 VC · peak 1.31 GB dsimp custom-monad 133 ms dsimp · custom-monad — GetThrowSet, generation only, n = 200 Total 133 ms; + one-time 31.1 ms = 164 ms Prepare 0.07 ms · Generate 123 ms · Grind 0.09 ms · Share 2.24 ms · Kernel 7.23 ms · Instantiate 0.06 ms 1 VC · peak 1.31 GB hand-written-specs 1.65 s dsimp · hand-written-specs — GetThrowSet, generation only, n = 200 Total 1.65 s; + one-time 35.1 ms = 1.69 s Prepare 0.07 ms · Generate 1.63 s · Grind 0.10 ms · Share 3.04 ms · Kernel 19.6 ms · Instantiate 0.07 ms 1 VC · peak 1.42 GB library 1.57 s dsimp · library — GetThrowSet, generation only, n = 200 Total 1.57 s; + one-time 35.5 ms = 1.60 s Prepare 0.07 ms · Generate 1.54 s · Grind 0.11 ms · Share 3.12 ms · Kernel 20.4 ms · Instantiate 0.07 ms 1 VC · peak 1.39 GB sym-dsimp custom-monad 747 ms sym-dsimp · custom-monad — GetThrowSet, generation only, n = 200 Total 747 ms; + one-time 31.1 ms = 779 ms Prepare 0.07 ms · Generate 739 ms · Grind 0.10 ms · Share 1.39 ms · Kernel 7.03 ms · Instantiate 0.07 ms 1 VC · peak 1.31 GB hand-written-specs 559 ms sym-dsimp · hand-written-specs — GetThrowSet, generation only, n = 200 Total 559 ms; + one-time 35.1 ms = 595 ms Prepare 0.07 ms · Generate 525 ms · Grind 0.09 ms · Share 1.53 ms · Kernel 32.2 ms · Instantiate 0.06 ms 1 VC · peak 1.32 GB library 399 ms sym-dsimp · library — GetThrowSet, generation only, n = 200 Total 399 ms; + one-time 35.5 ms = 435 ms Prepare 0.07 ms · Generate 367 ms · Grind 0.08 ms · Share 1.50 ms · Kernel 30.5 ms · Instantiate 0.06 ms 1 VC · peak 1.31 GB wp-simp – 5.62 s wp-simp — GetThrowSet, generation only, n = 200 Total 5.62 s; + one-time 34.9 ms = 5.66 s Prepare 19.0 ms · Generate 379 ms · Grind 0.15 ms · Share 57.2 ms · Kernel 5.17 s · Instantiate 0.04 ms 1 VC · peak 2.40 GB wp-sym – 283 ms wp-sym — GetThrowSet, generation only, n = 200 Total 283 ms; + one-time 34.9 ms = 318 ms Prepare 19.1 ms · Generate 109 ms · Grind 0.13 ms · Share 41.4 ms · Kernel 113 ms · Instantiate 0.04 ms 1 VC · peak 1.31 GB
GetThrowSet · generation only · n = 500 15 of 16 route·tier configurations finished at n = 500. Bars: median time of each phase over the runs, on this panel's linear axis. Strip: each phase's share of the total. Prepare Generate Grind Share Kernel Other (Total − these) one-time cost, not per run median time per run share of total 0 5 s 10 s 15 s 0% 50% 100% vcgen hand-written-specs 1.25 s vcgen · hand-written-specs — GetThrowSet, generation only, n = 500 Total 1.25 s Prepare 38.3 ms · Generate 83.2 ms · Grind 0.91 ms · Share 852 ms · Kernel 200 ms · Instantiate 69.6 ms 501 VCs · peak 1.46 GB library 2.87 s vcgen · library — GetThrowSet, generation only, n = 500 Total 2.87 s Prepare 37.9 ms · Generate 892 ms · Grind 1.48 ms · Share 1.55 s · Kernel 271 ms · Instantiate 104 ms 501 VCs · peak 1.57 GB normalize custom-monad 73.1 ms normalize · custom-monad — GetThrowSet, generation only, n = 500 Total 73.1 ms; + one-time 31.1 ms = 104 ms Prepare 0.08 ms · Generate 51.4 ms · Grind 0.08 ms · Share 5.05 ms · Kernel 16.2 ms · Instantiate 0.07 ms 1 VC · peak 1.31 GB hand-written-specs 109 ms normalize · hand-written-specs — GetThrowSet, generation only, n = 500 Total 109 ms; + one-time 35.1 ms = 144 ms Prepare 0.08 ms · Generate 63.2 ms · Grind 0.08 ms · Share 7.76 ms · Kernel 37.2 ms · Instantiate 0.06 ms 1 VC · peak 1.31 GB library 117 ms normalize · library — GetThrowSet, generation only, n = 500 Total 117 ms; + one-time 35.5 ms = 152 ms Prepare 0.09 ms · Generate 71.0 ms · Grind 0.08 ms · Share 7.84 ms · Kernel 37.1 ms · Instantiate 0.06 ms 1 VC · peak 1.31 GB normalize-sym custom-monad 86.8 ms normalize-sym · custom-monad — GetThrowSet, generation only, n = 500 Total 86.8 ms; + one-time 31.1 ms = 118 ms Prepare 0.08 ms · Generate 66.6 ms · Grind 0.08 ms · Share 3.52 ms · Kernel 16.1 ms · Instantiate 0.06 ms 1 VC · peak 1.31 GB hand-written-specs 144 ms normalize-sym · hand-written-specs — GetThrowSet, generation only, n = 500 Total 144 ms; + one-time 35.1 ms = 179 ms Prepare 0.08 ms · Generate 102 ms · Grind 0.09 ms · Share 4.63 ms · Kernel 36.5 ms · Instantiate 0.07 ms 1 VC · peak 1.31 GB library 157 ms normalize-sym · library — GetThrowSet, generation only, n = 500 Total 157 ms; + one-time 35.5 ms = 193 ms Prepare 0.08 ms · Generate 113 ms · Grind 0.08 ms · Share 6.76 ms · Kernel 36.9 ms · Instantiate 0.07 ms 1 VC · peak 1.31 GB dsimp custom-monad 479 ms dsimp · custom-monad — GetThrowSet, generation only, n = 500 Total 479 ms; + one-time 31.1 ms = 510 ms Prepare 0.07 ms · Generate 454 ms · Grind 0.09 ms · Share 5.75 ms · Kernel 17.9 ms · Instantiate 0.06 ms 1 VC · peak 1.31 GB hand-written-specs 13.5 s dsimp · hand-written-specs — GetThrowSet, generation only, n = 500 Total 13.5 s; + one-time 35.1 ms = 13.5 s Prepare 0.07 ms · Generate 13.4 s · Grind 0.10 ms · Share 7.19 ms · Kernel 49.9 ms · Instantiate 0.07 ms 1 VC · peak 1.96 GB library 13.1 s dsimp · library — GetThrowSet, generation only, n = 500 Total 13.1 s; + one-time 35.5 ms = 13.2 s Prepare 0.07 ms · Generate 13.1 s · Grind 0.10 ms · Share 7.40 ms · Kernel 51.5 ms · Instantiate 0.07 ms 1 VC · peak 1.95 GB sym-dsimp custom-monad 4.41 s sym-dsimp · custom-monad — GetThrowSet, generation only, n = 500 Total 4.41 s; + one-time 31.1 ms = 4.44 s Prepare 0.07 ms · Generate 4.39 s · Grind 0.10 ms · Share 3.12 ms · Kernel 17.4 ms · Instantiate 0.08 ms 1 VC · peak 1.32 GB hand-written-specs 3.09 s sym-dsimp · hand-written-specs — GetThrowSet, generation only, n = 500 Total 3.09 s; + one-time 35.1 ms = 3.12 s Prepare 0.07 ms · Generate 3.00 s · Grind 0.10 ms · Share 3.39 ms · Kernel 84.8 ms · Instantiate 0.07 ms 1 VC · peak 1.32 GB library 2.12 s sym-dsimp · library — GetThrowSet, generation only, n = 500 Total 2.12 s; + one-time 35.5 ms = 2.16 s Prepare 0.07 ms · Generate 2.04 s · Grind 0.09 ms · Share 3.41 ms · Kernel 83.8 ms · Instantiate 0.08 ms 1 VC · peak 1.34 GB wp-simp – memory > 8 GB wp-simp — GetThrowSet, generation only, n = 500 memory > 8 GB wp-sym – 1.06 s wp-sym — GetThrowSet, generation only, n = 500 Total 1.06 s; + one-time 34.9 ms = 1.10 s Prepare 38.3 ms · Generate 285 ms · Grind 0.22 ms · Share 163 ms · Kernel 575 ms · Instantiate 0.05 ms 1 VC · peak 1.37 GB
MatchSplit · generation only · n = 1500 11 of 14 route·tier configurations finished at n = 1500, the largest size. Bars: median time of each phase over the runs, on this panel's linear axis. Strip: each phase's share of the total. Prepare Generate Grind Share Kernel Other (Total − these) one-time cost, not per run median time per run share of total 0 2 s 4 s 6 s 0% 50% 100% vcgen hand-written-specs 648 ms vcgen · hand-written-specs — MatchSplit, generation only, n = 1500 Total 648 ms Prepare 45.3 ms · Generate 188 ms · Grind 2.91 ms · Share 217 ms · Kernel 172 ms · Instantiate 17.3 ms 1501 VCs · peak 1.40 GB library 5.46 s vcgen · library — MatchSplit, generation only, n = 1500 Total 5.46 s Prepare 45.4 ms · Generate 3.10 s · Grind 5.37 ms · Share 1.94 s · Kernel 252 ms · Instantiate 115 ms 1501 VCs · peak 1.68 GB normalize custom-monad 144 ms normalize · custom-monad — MatchSplit, generation only, n = 1500 Total 144 ms; + one-time 28.6 ms = 173 ms Prepare 0.08 ms · Generate 102 ms · Grind 0.09 ms · Share 5.09 ms · Kernel 36.5 ms · Instantiate 0.07 ms 1 VC · peak 1.31 GB hand-written-specs 173 ms normalize · hand-written-specs — MatchSplit, generation only, n = 1500 Total 173 ms; + one-time 32.8 ms = 206 ms Prepare 0.08 ms · Generate 115 ms · Grind 0.09 ms · Share 7.25 ms · Kernel 50.8 ms · Instantiate 0.07 ms 1 VC · peak 1.31 GB library 177 ms normalize · library — MatchSplit, generation only, n = 1500 Total 177 ms; + one-time 33.2 ms = 210 ms Prepare 0.09 ms · Generate 118 ms · Grind 0.09 ms · Share 7.25 ms · Kernel 50.8 ms · Instantiate 0.07 ms 1 VC · peak 1.31 GB normalize-sym custom-monad 278 ms normalize-sym · custom-monad — MatchSplit, generation only, n = 1500 Total 278 ms; + one-time 28.6 ms = 307 ms Prepare 0.08 ms · Generate 234 ms · Grind 0.09 ms · Share 7.53 ms · Kernel 36.5 ms · Instantiate 0.07 ms 1 VC · peak 1.31 GB hand-written-specs 334 ms normalize-sym · hand-written-specs — MatchSplit, generation only, n = 1500 Total 334 ms; + one-time 32.8 ms = 367 ms Prepare 0.08 ms · Generate 271 ms · Grind 0.09 ms · Share 10.6 ms · Kernel 51.2 ms · Instantiate 0.06 ms 1 VC · peak 1.31 GB library 412 ms normalize-sym · library — MatchSplit, generation only, n = 1500 Total 412 ms; + one-time 33.2 ms = 445 ms Prepare 0.08 ms · Generate 340 ms · Grind 0.09 ms · Share 19.5 ms · Kernel 52.0 ms · Instantiate 0.07 ms 1 VC · peak 1.31 GB dsimp custom-monad timeout: measured 69.4 s (limit 60 s), at n = 1000; larger sizes skipped dsimp · custom-monad — MatchSplit, generation only, n = 1500 timeout: measured 69.4 s (limit 60 s), at n = 1000; larger sizes skipped hand-written-specs timeout > 60 s (process killed after 90 s), at n = 1000; larger sizes skipped dsimp · hand-written-specs — MatchSplit, generation only, n = 1500 timeout > 60 s (process killed after 90 s), at n = 1000; larger sizes skipped library timeout > 60 s (process killed after 90 s), at n = 1000; larger sizes skipped dsimp · library — MatchSplit, generation only, n = 1500 timeout > 60 s (process killed after 90 s), at n = 1000; larger sizes skipped sym-dsimp custom-monad 590 ms sym-dsimp · custom-monad — MatchSplit, generation only, n = 1500 Total 590 ms; + one-time 28.6 ms = 618 ms Prepare 0.07 ms · Generate 550 ms · Grind 0.10 ms · Share 3.74 ms · Kernel 35.8 ms · Instantiate 0.07 ms 1 VC · peak 1.33 GB hand-written-specs 588 ms sym-dsimp · hand-written-specs — MatchSplit, generation only, n = 1500 Total 588 ms; + one-time 32.8 ms = 621 ms Prepare 0.07 ms · Generate 470 ms · Grind 0.11 ms · Share 4.02 ms · Kernel 114 ms · Instantiate 0.08 ms 1 VC · peak 1.35 GB library 494 ms sym-dsimp · library — MatchSplit, generation only, n = 1500 Total 494 ms; + one-time 33.2 ms = 527 ms Prepare 0.07 ms · Generate 377 ms · Grind 0.09 ms · Share 3.99 ms · Kernel 112 ms · Instantiate 0.07 ms 1 VC · peak 1.32 GB
MatchSplit at the other sizes: n = 500, n = 1000
MatchSplit · generation only · n = 500 14 of 14 route·tier configurations finished at n = 500. Bars: median time of each phase over the runs, on this panel's linear axis. Strip: each phase's share of the total. Prepare Generate Grind Share Kernel Other (Total − these) one-time cost, not per run median time per run share of total 0 5 s 10 s 15 s 20 s 25 s 0% 50% 100% vcgen hand-written-specs 188 ms vcgen · hand-written-specs — MatchSplit, generation only, n = 500 Total 188 ms Prepare 18.9 ms · Generate 70.0 ms · Grind 0.89 ms · Share 42.3 ms · Kernel 50.1 ms · Instantiate 4.65 ms 501 VCs · peak 1.32 GB library 1.39 s vcgen · library — MatchSplit, generation only, n = 500 Total 1.39 s Prepare 19.3 ms · Generate 884 ms · Grind 1.53 ms · Share 378 ms · Kernel 75.3 ms · Instantiate 31.5 ms 501 VCs · peak 1.42 GB normalize custom-monad 48.3 ms normalize · custom-monad — MatchSplit, generation only, n = 500 Total 48.3 ms; + one-time 28.6 ms = 77.0 ms Prepare 0.08 ms · Generate 33.8 ms · Grind 0.08 ms · Share 1.81 ms · Kernel 12.2 ms · Instantiate 0.07 ms 1 VC · peak 1.31 GB hand-written-specs 57.9 ms normalize · hand-written-specs — MatchSplit, generation only, n = 500 Total 57.9 ms; + one-time 32.8 ms = 90.8 ms Prepare 0.09 ms · Generate 38.8 ms · Grind 0.07 ms · Share 2.51 ms · Kernel 16.3 ms · Instantiate 0.06 ms 1 VC · peak 1.31 GB library 59.2 ms normalize · library — MatchSplit, generation only, n = 500 Total 59.2 ms; + one-time 33.2 ms = 92.4 ms Prepare 0.08 ms · Generate 40.0 ms · Grind 0.08 ms · Share 2.45 ms · Kernel 16.4 ms · Instantiate 0.06 ms 1 VC · peak 1.31 GB normalize-sym custom-monad 89.2 ms normalize-sym · custom-monad — MatchSplit, generation only, n = 500 Total 89.2 ms; + one-time 28.6 ms = 118 ms Prepare 0.08 ms · Generate 74.2 ms · Grind 0.09 ms · Share 2.40 ms · Kernel 12.2 ms · Instantiate 0.06 ms 1 VC · peak 1.31 GB hand-written-specs 109 ms normalize-sym · hand-written-specs — MatchSplit, generation only, n = 500 Total 109 ms; + one-time 32.8 ms = 142 ms Prepare 0.08 ms · Generate 88.6 ms · Grind 0.09 ms · Share 3.75 ms · Kernel 16.4 ms · Instantiate 0.06 ms 1 VC · peak 1.31 GB library 133 ms normalize-sym · library — MatchSplit, generation only, n = 500 Total 133 ms; + one-time 33.2 ms = 166 ms Prepare 0.08 ms · Generate 109 ms · Grind 0.08 ms · Share 6.67 ms · Kernel 16.4 ms · Instantiate 0.06 ms 1 VC · peak 1.31 GB dsimp custom-monad 12.6 s dsimp · custom-monad — MatchSplit, generation only, n = 500 Total 12.6 s; + one-time 28.6 ms = 12.6 s Prepare 0.07 ms · Generate 12.6 s · Grind 0.11 ms · Share 1.74 ms · Kernel 12.2 ms · Instantiate 0.07 ms 1 VC · peak 1.58 GB hand-written-specs 23.2 s dsimp · hand-written-specs — MatchSplit, generation only, n = 500 Total 23.2 s; + one-time 32.8 ms = 23.3 s Prepare 0.07 ms · Generate 23.2 s · Grind 0.11 ms · Share 2.41 ms · Kernel 16.4 ms · Instantiate 0.07 ms 1 VC · peak 1.97 GB library 23.6 s dsimp · library — MatchSplit, generation only, n = 500 Total 23.6 s; + one-time 33.2 ms = 23.7 s Prepare 0.07 ms · Generate 23.6 s · Grind 0.12 ms · Share 2.38 ms · Kernel 16.5 ms · Instantiate 0.08 ms 1 VC · peak 1.97 GB sym-dsimp custom-monad 187 ms sym-dsimp · custom-monad — MatchSplit, generation only, n = 500 Total 187 ms; + one-time 28.6 ms = 215 ms Prepare 0.07 ms · Generate 173 ms · Grind 0.08 ms · Share 1.21 ms · Kernel 11.8 ms · Instantiate 0.07 ms 1 VC · peak 1.29 GB hand-written-specs 185 ms sym-dsimp · hand-written-specs — MatchSplit, generation only, n = 500 Total 185 ms; + one-time 32.8 ms = 218 ms Prepare 0.07 ms · Generate 150 ms · Grind 0.09 ms · Share 1.30 ms · Kernel 33.1 ms · Instantiate 0.07 ms 1 VC · peak 1.31 GB library 155 ms sym-dsimp · library — MatchSplit, generation only, n = 500 Total 155 ms; + one-time 33.2 ms = 188 ms Prepare 0.08 ms · Generate 120 ms · Grind 0.09 ms · Share 1.30 ms · Kernel 33.2 ms · Instantiate 0.06 ms 1 VC · peak 1.31 GB
MatchSplit · generation only · n = 1000 11 of 14 route·tier configurations finished at n = 1000. Bars: median time of each phase over the runs, on this panel's linear axis. Strip: each phase's share of the total. Prepare Generate Grind Share Kernel Other (Total − these) one-time cost, not per run median time per run share of total 0 1 s 2 s 3 s 4 s 0% 50% 100% vcgen hand-written-specs 386 ms vcgen · hand-written-specs — MatchSplit, generation only, n = 1000 Total 386 ms Prepare 32.4 ms · Generate 127 ms · Grind 1.76 ms · Share 108 ms · Kernel 106 ms · Instantiate 10.1 ms 1001 VCs · peak 1.32 GB library 3.34 s vcgen · library — MatchSplit, generation only, n = 1000 Total 3.34 s Prepare 32.0 ms · Generate 1.92 s · Grind 3.27 ms · Share 1.15 s · Kernel 157 ms · Instantiate 73.5 ms 1001 VCs · peak 1.54 GB normalize custom-monad 95.9 ms normalize · custom-monad — MatchSplit, generation only, n = 1000 Total 95.9 ms; + one-time 28.6 ms = 125 ms Prepare 0.08 ms · Generate 67.6 ms · Grind 0.08 ms · Share 3.51 ms · Kernel 24.3 ms · Instantiate 0.07 ms 1 VC · peak 1.31 GB hand-written-specs 114 ms normalize · hand-written-specs — MatchSplit, generation only, n = 1000 Total 114 ms; + one-time 32.8 ms = 147 ms Prepare 0.08 ms · Generate 76.1 ms · Grind 0.08 ms · Share 4.67 ms · Kernel 32.9 ms · Instantiate 0.07 ms 1 VC · peak 1.31 GB library 118 ms normalize · library — MatchSplit, generation only, n = 1000 Total 118 ms; + one-time 33.2 ms = 151 ms Prepare 0.08 ms · Generate 79.3 ms · Grind 0.08 ms · Share 4.77 ms · Kernel 33.3 ms · Instantiate 0.06 ms 1 VC · peak 1.31 GB normalize-sym custom-monad 179 ms normalize-sym · custom-monad — MatchSplit, generation only, n = 1000 Total 179 ms; + one-time 28.6 ms = 208 ms Prepare 0.08 ms · Generate 150 ms · Grind 0.10 ms · Share 4.68 ms · Kernel 24.4 ms · Instantiate 0.06 ms 1 VC · peak 1.31 GB hand-written-specs 218 ms normalize-sym · hand-written-specs — MatchSplit, generation only, n = 1000 Total 218 ms; + one-time 32.8 ms = 251 ms Prepare 0.08 ms · Generate 177 ms · Grind 0.10 ms · Share 7.34 ms · Kernel 32.9 ms · Instantiate 0.07 ms 1 VC · peak 1.31 GB library 267 ms normalize-sym · library — MatchSplit, generation only, n = 1000 Total 267 ms; + one-time 33.2 ms = 300 ms Prepare 0.08 ms · Generate 221 ms · Grind 0.10 ms · Share 12.1 ms · Kernel 33.1 ms · Instantiate 0.07 ms 1 VC · peak 1.31 GB dsimp custom-monad timeout: measured 69.4 s (limit 60 s) dsimp · custom-monad — MatchSplit, generation only, n = 1000 timeout: measured 69.4 s (limit 60 s) hand-written-specs timeout > 60 s (process killed after 90 s) dsimp · hand-written-specs — MatchSplit, generation only, n = 1000 timeout > 60 s (process killed after 90 s) library timeout > 60 s (process killed after 90 s) dsimp · library — MatchSplit, generation only, n = 1000 timeout > 60 s (process killed after 90 s) sym-dsimp custom-monad 382 ms sym-dsimp · custom-monad — MatchSplit, generation only, n = 1000 Total 382 ms; + one-time 28.6 ms = 410 ms Prepare 0.07 ms · Generate 355 ms · Grind 0.10 ms · Share 2.33 ms · Kernel 23.7 ms · Instantiate 0.07 ms 1 VC · peak 1.31 GB hand-written-specs 378 ms sym-dsimp · hand-written-specs — MatchSplit, generation only, n = 1000 Total 378 ms; + one-time 32.8 ms = 411 ms Prepare 0.07 ms · Generate 306 ms · Grind 0.09 ms · Share 2.50 ms · Kernel 70.2 ms · Instantiate 0.07 ms 1 VC · peak 1.31 GB library 318 ms sym-dsimp · library — MatchSplit, generation only, n = 1000 Total 318 ms; + one-time 33.2 ms = 351 ms Prepare 0.07 ms · Generate 245 ms · Grind 0.09 ms · Share 2.57 ms · Kernel 69.6 ms · Instantiate 0.07 ms 1 VC · peak 1.31 GB

Scaling with n

Total time against n, one row per case and one column per route. Straight lines on log–log axes are power laws; their slope is the exponent of the scoreboard above.

Complete proofs

Total time against n · complete proofs Median total time per run on log–log axes, shared within each row (case). Colored: the column's route by tier; gray: the case's other routes. Slope 1 is linear growth and 2 quadratic, as in the guide at the right of each row. Failures are marked above the plot at the size where they happened. custom-monad hand-written-specs library no tier (sym, wp-simp, wp-sym) other routes 60 s time limit timeout over memory error AddSubCancel slopes n n² failed 100 ms 1 s 10 s vcgen vcgen · hand-written-specs — AddSubCancel n = 200: 111 ms n = 1200: 754 ms n = 2200: 1.67 s grows like n^1.31 between n = 1200 and 2200 vcgen · library — AddSubCancel n = 200: 284 ms n = 1200: 1.95 s n = 2200: 4.08 s grows like n^1.22 between n = 1200 and 2200 200 2200 vcgen-finish vcgen-finish · hand-written-specs — AddSubCancel n = 200: 113 ms n = 1200: 807 ms n = 2200: 1.97 s grows like n^1.47 between n = 1200 and 2200 vcgen-finish · library — AddSubCancel n = 200: 302 ms n = 1200: 2.10 s n = 2200: 4.46 s grows like n^1.24 between n = 1200 and 2200 200 2200 sym sym — AddSubCancel n = 200: 182 ms n = 1200: 1.74 s n = 2200: 3.95 s grows like n^1.36 between n = 1200 and 2200 200 2200 normalize normalize · custom-monad — AddSubCancel n = 200: 49.7 ms n = 1200: 286 ms n = 2200: 575 ms grows like n^1.15 between n = 1200 and 2200 normalize · hand-written-specs — AddSubCancel n = 200: 59.4 ms n = 1200: 344 ms n = 2200: 659 ms grows like n^1.07 between n = 1200 and 2200 normalize · library — AddSubCancel n = 200: 63.1 ms n = 1200: 359 ms n = 2200: 694 ms grows like n^1.09 between n = 1200 and 2200 200 2200 normalize-sym normalize-sym · custom-monad — AddSubCancel n = 200: 49.2 ms n = 1200: 284 ms n = 2200: 540 ms grows like n^1.06 between n = 1200 and 2200 normalize-sym · hand-written-specs — AddSubCancel n = 200: 59.4 ms n = 1200: 346 ms n = 2200: 656 ms grows like n^1.06 between n = 1200 and 2200 normalize-sym · library — AddSubCancel n = 200: 61.3 ms n = 1200: 363 ms n = 2200: 686 ms grows like n^1.05 between n = 1200 and 2200 200 2200 dsimp dsimp · custom-monad — AddSubCancel n = 200: 56.3 ms n = 1200: 531 ms n = 2200: 1.38 s grows like n^1.58 between n = 1200 and 2200 dsimp · hand-written-specs — AddSubCancel n = 200: 898 ms n = 1200: 29.4 s n = 2200: memory > 8 GB grows like n^1.95 between n = 200 and 1200 dsimp · library — AddSubCancel n = 200: 895 ms n = 1200: 29.4 s n = 2200: memory > 8 GB grows like n^1.95 between n = 200 and 1200 200 2200 sym-dsimp sym-dsimp · custom-monad — AddSubCancel n = 200: 893 ms n = 1200: 30.6 s n = 2200: timeout > 60 s (process killed after 90 s) grows like n^1.97 between n = 200 and 1200 sym-dsimp · hand-written-specs — AddSubCancel n = 200: 602 ms n = 1200: 19.5 s n = 2200: timeout: measured 65.8 s (limit 60 s) grows like n^1.94 between n = 200 and 1200 sym-dsimp · library — AddSubCancel n = 200: 240 ms n = 1200: 6.55 s n = 2200: 21.3 s grows like n^1.94 between n = 1200 and 2200 200 2200 wp-simp wp-simp — AddSubCancel n = 200: 222 ms n = 1200: 2.43 s n = 2200: 6.75 s grows like n^1.69 between n = 1200 and 2200 200 2200 wp-sym wp-sym — AddSubCancel n = 200: 203 ms n = 1200: 3.44 s n = 2200: 10.8 s grows like n^1.89 between n = 1200 and 2200 200 2200 AddSubCancelDeep slopes n n² 100 ms 1 s 10 s vcgen vcgen · hand-written-specs — AddSubCancelDeep n = 100: 105 ms n = 500: 399 ms n = 900: 746 ms grows like n^1.06 between n = 500 and 900 vcgen · library — AddSubCancelDeep n = 100: 1.17 s n = 500: 8.05 s n = 900: 15.6 s grows like n^1.13 between n = 500 and 900 100 500 900 vcgen-finish vcgen-finish · hand-written-specs — AddSubCancelDeep n = 100: 103 ms n = 500: 411 ms n = 900: 796 ms grows like n^1.12 between n = 500 and 900 vcgen-finish · library — AddSubCancelDeep n = 100: 1.18 s n = 500: 8.08 s n = 900: 15.7 s grows like n^1.13 between n = 500 and 900 100 500 900 sym sym — AddSubCancelDeep n = 100: 123 ms n = 500: 703 ms n = 900: 1.50 s grows like n^1.29 between n = 500 and 900 100 500 900 normalize normalize · custom-monad — AddSubCancelDeep n = 100: 27.7 ms n = 500: 124 ms n = 900: 223 ms grows like n^0.99 between n = 500 and 900 normalize · hand-written-specs — AddSubCancelDeep n = 100: 32.6 ms n = 500: 146 ms n = 900: 263 ms grows like n^1.00 between n = 500 and 900 normalize · library — AddSubCancelDeep n = 100: 43.4 ms n = 500: 202 ms n = 900: 361 ms grows like n^0.99 between n = 500 and 900 100 500 900 normalize-sym normalize-sym · custom-monad — AddSubCancelDeep n = 100: 27.4 ms n = 500: 123 ms n = 900: 220 ms grows like n^0.99 between n = 500 and 900 normalize-sym · hand-written-specs — AddSubCancelDeep n = 100: 32.3 ms n = 500: 145 ms n = 900: 269 ms grows like n^1.05 between n = 500 and 900 normalize-sym · library — AddSubCancelDeep n = 100: 43.4 ms n = 500: 200 ms n = 900: 358 ms grows like n^0.99 between n = 500 and 900 100 500 900 dsimp dsimp · custom-monad — AddSubCancelDeep n = 100: 29.4 ms n = 500: 166 ms n = 900: 359 ms grows like n^1.31 between n = 500 and 900 dsimp · hand-written-specs — AddSubCancelDeep n = 100: 278 ms n = 500: 5.38 s n = 900: 17.0 s grows like n^1.96 between n = 500 and 900 dsimp · library — AddSubCancelDeep n = 100: 283 ms n = 500: 5.40 s n = 900: 17.0 s grows like n^1.95 between n = 500 and 900 100 500 900 sym-dsimp sym-dsimp · custom-monad — AddSubCancelDeep n = 100: 271 ms n = 500: 5.44 s n = 900: 17.5 s grows like n^1.99 between n = 500 and 900 sym-dsimp · hand-written-specs — AddSubCancelDeep n = 100: 212 ms n = 500: 3.67 s n = 900: 11.4 s grows like n^1.93 between n = 500 and 900 sym-dsimp · library — AddSubCancelDeep n = 100: 106 ms n = 500: 1.35 s n = 900: 3.99 s grows like n^1.85 between n = 500 and 900 100 500 900 LetBinding slopes n n² 5 ms 10 ms 20 ms 50 ms 100 ms 200 ms 500 ms vcgen vcgen · hand-written-specs — LetBinding n = 10: 23.6 ms n = 50: 54.5 ms n = 100: 119 ms grows like n^1.12 between n = 50 and 100 vcgen · library — LetBinding n = 10: 37.2 ms n = 50: 103 ms n = 100: 215 ms grows like n^1.06 between n = 50 and 100 10 50 100 vcgen-finish vcgen-finish · hand-written-specs — LetBinding n = 10: 23.2 ms n = 50: 55.6 ms n = 100: 127 ms grows like n^1.19 between n = 50 and 100 vcgen-finish · library — LetBinding n = 10: 37.1 ms n = 50: 105 ms n = 100: 225 ms grows like n^1.10 between n = 50 and 100 10 50 100 normalize normalize · custom-monad — LetBinding n = 10: 5.56 ms n = 50: 16.2 ms n = 100: 29.5 ms grows like n^0.87 between n = 50 and 100 normalize · hand-written-specs — LetBinding n = 10: 6.22 ms n = 50: 18.9 ms n = 100: 34.2 ms grows like n^0.85 between n = 50 and 100 normalize · library — LetBinding n = 10: 6.43 ms n = 50: 19.6 ms n = 100: 35.6 ms grows like n^0.86 between n = 50 and 100 10 50 100 normalize-sym normalize-sym · custom-monad — LetBinding n = 10: 5.54 ms n = 50: 15.7 ms n = 100: 28.9 ms grows like n^0.88 between n = 50 and 100 normalize-sym · hand-written-specs — LetBinding n = 10: 6.11 ms n = 50: 18.7 ms n = 100: 34.3 ms grows like n^0.88 between n = 50 and 100 normalize-sym · library — LetBinding n = 10: 6.16 ms n = 50: 19.2 ms n = 100: 35.4 ms grows like n^0.88 between n = 50 and 100 10 50 100 dsimp dsimp · custom-monad — LetBinding n = 10: 12.0 ms n = 50: 82.0 ms n = 100: 251 ms grows like n^1.61 between n = 50 and 100 dsimp · hand-written-specs — LetBinding n = 10: 14.6 ms n = 50: 91.7 ms n = 100: 270 ms grows like n^1.56 between n = 50 and 100 dsimp · library — LetBinding n = 10: 15.2 ms n = 50: 91.5 ms n = 100: 269 ms grows like n^1.55 between n = 50 and 100 10 50 100 sym-dsimp sym-dsimp · custom-monad — LetBinding n = 10: 14.0 ms n = 50: 119 ms n = 100: 388 ms grows like n^1.70 between n = 50 and 100 sym-dsimp · hand-written-specs — LetBinding n = 10: 10.6 ms n = 50: 70.2 ms n = 100: 208 ms grows like n^1.57 between n = 50 and 100 sym-dsimp · library — LetBinding n = 10: 7.40 ms n = 50: 30.9 ms n = 100: 71.3 ms grows like n^1.21 between n = 50 and 100 10 50 100 wp-simp wp-simp — LetBinding n = 10: 21.5 ms n = 50: 62.4 ms n = 100: 117 ms grows like n^0.90 between n = 50 and 100 10 50 100 wp-sym wp-sym — LetBinding n = 10: 21.4 ms n = 50: 60.0 ms n = 100: 115 ms grows like n^0.95 between n = 50 and 100 10 50 100 ReaderState slopes n n² failed 50 ms 100 ms 200 ms 500 ms 1 s vcgen vcgen · hand-written-specs — ReaderState n = 10: 55.1 ms n = 50: 210 ms n = 100: 578 ms grows like n^1.46 between n = 50 and 100 vcgen · library — ReaderState n = 10: 103 ms n = 50: 408 ms n = 100: 1.01 s grows like n^1.31 between n = 50 and 100 10 50 100 vcgen-finish vcgen-finish · hand-written-specs — ReaderState n = 10: error: `finish` failed vcgen-finish · library — ReaderState n = 10: error: `finish` failed 10 50 100 normalize normalize · custom-monad — ReaderState n = 10: 33.5 ms n = 50: 176 ms n = 100: 529 ms grows like n^1.59 between n = 50 and 100 normalize · hand-written-specs — ReaderState n = 10: 33.5 ms n = 50: 179 ms n = 100: 534 ms grows like n^1.58 between n = 50 and 100 normalize · library — ReaderState n = 10: 34.8 ms n = 50: 185 ms n = 100: 548 ms grows like n^1.57 between n = 50 and 100 10 50 100 normalize-sym normalize-sym · custom-monad — ReaderState n = 10: 32.6 ms n = 50: 177 ms n = 100: 534 ms grows like n^1.59 between n = 50 and 100 normalize-sym · hand-written-specs — ReaderState n = 10: 33.4 ms n = 50: 178 ms n = 100: 533 ms grows like n^1.58 between n = 50 and 100 normalize-sym · library — ReaderState n = 10: 34.3 ms n = 50: 184 ms n = 100: 547 ms grows like n^1.57 between n = 50 and 100 10 50 100 dsimp dsimp · custom-monad — ReaderState n = 10: 33.8 ms n = 50: 176 ms n = 100: 530 ms grows like n^1.59 between n = 50 and 100 dsimp · hand-written-specs — ReaderState n = 10: 37.5 ms n = 50: 226 ms n = 100: 712 ms grows like n^1.66 between n = 50 and 100 dsimp · library — ReaderState n = 10: 38.6 ms n = 50: 229 ms n = 100: 711 ms grows like n^1.63 between n = 50 and 100 10 50 100 sym-dsimp sym-dsimp · custom-monad — ReaderState n = 10: 42.1 ms n = 50: 267 ms n = 100: 827 ms grows like n^1.63 between n = 50 and 100 sym-dsimp · hand-written-specs — ReaderState n = 10: 38.0 ms n = 50: 223 ms n = 100: 680 ms grows like n^1.61 between n = 50 and 100 sym-dsimp · library — ReaderState n = 10: 38.5 ms n = 50: 222 ms n = 100: 673 ms grows like n^1.60 between n = 50 and 100 10 50 100 wp-simp wp-simp — ReaderState n = 10: 52.9 ms n = 50: 239 ms n = 100: 647 ms grows like n^1.44 between n = 50 and 100 10 50 100 wp-sym wp-sym — ReaderState n = 10: 49.9 ms n = 50: 222 ms n = 100: 615 ms grows like n^1.47 between n = 50 and 100 10 50 100 PurePrecond slopes n n² failed 100 ms 1 s 10 s vcgen vcgen · hand-written-specs — PurePrecond n = 400: 122 ms n = 2400: 899 ms n = 4400: 2.05 s grows like n^1.36 between n = 2400 and 4400 vcgen · library — PurePrecond n = 400: 125 ms n = 2400: 900 ms n = 4400: 2.05 s grows like n^1.35 between n = 2400 and 4400 400 4400 vcgen-finish vcgen-finish · hand-written-specs — PurePrecond n = 400: 167 ms n = 2400: 1.26 s n = 4400: 2.81 s grows like n^1.33 between n = 2400 and 4400 vcgen-finish · library — PurePrecond n = 400: 171 ms n = 2400: 1.27 s n = 4400: 2.81 s grows like n^1.31 between n = 2400 and 4400 400 4400 normalize normalize · custom-monad — PurePrecond n = 400: 814 ms n = 2400: 43.2 s n = 4400: memory > 8 GB grows like n^2.22 between n = 400 and 2400 normalize · hand-written-specs — PurePrecond n = 400: 815 ms n = 2400: 43.4 s n = 4400: memory > 8 GB grows like n^2.22 between n = 400 and 2400 normalize · library — PurePrecond n = 400: 823 ms n = 2400: 43.3 s n = 4400: memory > 8 GB grows like n^2.21 between n = 400 and 2400 400 4400 normalize-sym normalize-sym · custom-monad — PurePrecond n = 400: 822 ms n = 2400: 43.5 s n = 4400: memory > 8 GB grows like n^2.22 between n = 400 and 2400 normalize-sym · hand-written-specs — PurePrecond n = 400: 837 ms n = 2400: 43.5 s n = 4400: memory > 8 GB grows like n^2.21 between n = 400 and 2400 normalize-sym · library — PurePrecond n = 400: 832 ms n = 2400: 43.8 s n = 4400: memory > 8 GB grows like n^2.21 between n = 400 and 2400 400 4400 dsimp dsimp · custom-monad — PurePrecond n = 400: 7.56 s n = 2400: timeout > 60 s (process killed after 90 s) dsimp · hand-written-specs — PurePrecond n = 400: 1.68 s n = 2400: timeout > 60 s (process killed after 90 s) dsimp · library — PurePrecond n = 400: 1.68 s n = 2400: timeout > 60 s (process killed after 90 s) 400 4400 sym-dsimp sym-dsimp · custom-monad — PurePrecond n = 400: 902 ms n = 2400: 44.1 s n = 4400: memory > 8 GB grows like n^2.17 between n = 400 and 2400 sym-dsimp · hand-written-specs — PurePrecond n = 400: 887 ms n = 2400: 44.2 s n = 4400: memory > 8 GB grows like n^2.18 between n = 400 and 2400 sym-dsimp · library — PurePrecond n = 400: 886 ms n = 2400: 44.0 s n = 4400: memory > 8 GB grows like n^2.18 between n = 400 and 2400 400 4400 wp-simp wp-simp — PurePrecond n = 400: 252 ms n = 2400: 2.40 s n = 4400: 6.27 s grows like n^1.59 between n = 2400 and 4400 400 4400 wp-sym wp-sym — PurePrecond n = 400: 228 ms n = 2400: 4.98 s n = 4400: 17.9 s grows like n^2.11 between n = 2400 and 4400 400 4400 GetThrowSet slopes n n² failed 100 ms 1 s 10 s vcgen vcgen · hand-written-specs — GetThrowSet n = 10: 71.6 ms n = 50: 863 ms n = 100: 4.91 s n = 200: 35.2 s n = 300: timeout > 60 s (process killed after 90 s) grows like n^2.84 between n = 100 and 200 vcgen · library — GetThrowSet n = 10: 101 ms n = 50: 958 ms n = 100: 5.11 s n = 200: 35.8 s n = 300: timeout > 60 s (process killed after 90 s) grows like n^2.81 between n = 100 and 200 10 50 100 300 vcgen-finish vcgen-finish · hand-written-specs — GetThrowSet n = 10: 41.0 ms n = 50: 134 ms n = 100: 349 ms n = 200: 1.18 s n = 300: 2.67 s grows like n^2.02 between n = 200 and 300 vcgen-finish · library — GetThrowSet n = 10: 68.9 ms n = 50: 231 ms n = 100: 551 ms n = 200: 1.65 s n = 300: 3.53 s grows like n^1.87 between n = 200 and 300 10 50 100 300 vcgen-finish-simp vcgen-finish-simp · hand-written-specs — GetThrowSet n = 10: 39.5 ms n = 50: 85.1 ms n = 100: 142 ms n = 200: 266 ms n = 300: 404 ms grows like n^1.03 between n = 200 and 300 vcgen-finish-simp · library — GetThrowSet n = 10: 67.8 ms n = 50: 179 ms n = 100: 337 ms n = 200: 688 ms n = 300: 1.09 s grows like n^1.13 between n = 200 and 300 10 50 100 300 normalize normalize · custom-monad — GetThrowSet n = 10: 35.1 ms n = 50: 583 ms n = 100: 3.54 s n = 200: 31.7 s n = 300: error: `simp` failed: maximum number of steps exceeded grows like n^3.16 between n = 100 and 200 normalize · hand-written-specs — GetThrowSet n = 10: 52.1 ms n = 50: 1.12 s n = 100: 7.58 s n = 200: error: `simp` failed: maximum number of steps exceeded grows like n^2.76 between n = 50 and 100 normalize · library — GetThrowSet n = 10: 52.7 ms n = 50: 1.12 s n = 100: 7.59 s n = 200: error: `simp` failed: maximum number of steps exceeded grows like n^2.76 between n = 50 and 100 10 50 100 300 normalize-sym normalize-sym · custom-monad — GetThrowSet n = 10: 34.7 ms n = 50: 581 ms n = 100: 3.51 s n = 200: 31.4 s n = 300: error: `simp` failed: maximum number of steps exceeded grows like n^3.16 between n = 100 and 200 normalize-sym · hand-written-specs — GetThrowSet n = 10: 52.8 ms n = 50: 1.12 s n = 100: 7.71 s n = 200: error: `simp` failed: maximum number of steps exceeded grows like n^2.78 between n = 50 and 100 normalize-sym · library — GetThrowSet n = 10: 52.9 ms n = 50: 1.13 s n = 100: 7.61 s n = 200: error: `simp` failed: maximum number of steps exceeded grows like n^2.75 between n = 50 and 100 10 50 100 300 dsimp dsimp · custom-monad — GetThrowSet n = 10: 39.1 ms n = 50: 599 ms n = 100: 3.57 s n = 200: 31.6 s n = 300: error: `simp` failed: maximum number of steps exceeded grows like n^3.15 between n = 100 and 200 dsimp · hand-written-specs — GetThrowSet n = 10: 60.8 ms n = 50: 1.22 s n = 100: 7.99 s n = 200: error: `simp` failed: maximum number of steps exceeded grows like n^2.72 between n = 50 and 100 dsimp · library — GetThrowSet n = 10: 61.1 ms n = 50: 1.21 s n = 100: 7.95 s n = 200: error: `simp` failed: maximum number of steps exceeded grows like n^2.71 between n = 50 and 100 10 50 100 300 sym-dsimp sym-dsimp · custom-monad — GetThrowSet n = 10: 40.7 ms n = 50: 635 ms n = 100: 3.72 s n = 200: 32.2 s n = 300: error: `simp` failed: maximum number of steps exceeded grows like n^3.12 between n = 100 and 200 sym-dsimp · hand-written-specs — GetThrowSet n = 10: 57.9 ms n = 50: 1.16 s n = 100: 7.73 s n = 200: error: `simp` failed: maximum number of steps exceeded grows like n^2.73 between n = 50 and 100 sym-dsimp · library — GetThrowSet n = 10: 56.3 ms n = 50: 1.16 s n = 100: 7.70 s n = 200: error: `simp` failed: maximum number of steps exceeded grows like n^2.73 between n = 50 and 100 10 50 100 300 wp-simp wp-simp — GetThrowSet n = 10: 56.6 ms n = 50: 490 ms n = 100: 2.10 s n = 200: 12.0 s n = 300: 43.4 s grows like n^3.18 between n = 200 and 300 10 50 100 300 wp-sym wp-sym — GetThrowSet n = 10: 40.7 ms n = 50: 228 ms n = 100: 947 ms n = 200: 6.50 s n = 300: 30.0 s grows like n^3.77 between n = 200 and 300 10 50 100 300 DiteSplit slopes n n² 50 ms 100 ms 200 ms 500 ms 1 s 2 s 5 s vcgen vcgen · hand-written-specs — DiteSplit n = 10: 82.1 ms n = 50: 663 ms n = 100: 2.27 s grows like n^1.78 between n = 50 and 100 vcgen · library — DiteSplit n = 10: 126 ms n = 50: 861 ms n = 100: 2.70 s grows like n^1.65 between n = 50 and 100 10 50 100 vcgen-finish vcgen-finish · hand-written-specs — DiteSplit n = 10: 46.6 ms n = 50: 146 ms n = 100: 442 ms grows like n^1.59 between n = 50 and 100 vcgen-finish · library — DiteSplit n = 10: 88.5 ms n = 50: 338 ms n = 100: 929 ms grows like n^1.46 between n = 50 and 100 10 50 100 normalize normalize · custom-monad — DiteSplit n = 10: 41.8 ms n = 50: 454 ms n = 100: 1.89 s grows like n^2.06 between n = 50 and 100 normalize · hand-written-specs — DiteSplit n = 10: 44.1 ms n = 50: 484 ms n = 100: 2.01 s grows like n^2.06 between n = 50 and 100 normalize · library — DiteSplit n = 10: 44.1 ms n = 50: 487 ms n = 100: 2.01 s grows like n^2.04 between n = 50 and 100 10 50 100 normalize-sym normalize-sym · custom-monad — DiteSplit n = 10: 40.5 ms n = 50: 457 ms n = 100: 1.91 s grows like n^2.06 between n = 50 and 100 normalize-sym · hand-written-specs — DiteSplit n = 10: 44.7 ms n = 50: 491 ms n = 100: 2.02 s grows like n^2.04 between n = 50 and 100 normalize-sym · library — DiteSplit n = 10: 44.9 ms n = 50: 491 ms n = 100: 2.04 s grows like n^2.06 between n = 50 and 100 10 50 100 dsimp dsimp · custom-monad — DiteSplit n = 10: 49.3 ms n = 50: 559 ms n = 100: 2.29 s grows like n^2.03 between n = 50 and 100 dsimp · hand-written-specs — DiteSplit n = 10: 61.8 ms n = 50: 706 ms n = 100: 2.91 s grows like n^2.05 between n = 50 and 100 dsimp · library — DiteSplit n = 10: 60.5 ms n = 50: 711 ms n = 100: 2.91 s grows like n^2.03 between n = 50 and 100 10 50 100 sym-dsimp sym-dsimp · custom-monad — DiteSplit n = 10: 47.5 ms n = 50: 491 ms n = 100: 1.97 s grows like n^2.00 between n = 50 and 100 sym-dsimp · hand-written-specs — DiteSplit n = 10: 51.6 ms n = 50: 515 ms n = 100: 2.07 s grows like n^2.01 between n = 50 and 100 sym-dsimp · library — DiteSplit n = 10: 48.6 ms n = 50: 505 ms n = 100: 2.06 s grows like n^2.03 between n = 50 and 100 10 50 100 wp-simp wp-simp — DiteSplit n = 10: 71.0 ms n = 50: 850 ms n = 100: 6.58 s grows like n^2.95 between n = 50 and 100 10 50 100 wp-sym wp-sym — DiteSplit n = 10: 55.7 ms n = 50: 585 ms n = 100: 4.85 s grows like n^3.05 between n = 50 and 100 10 50 100 MatchSplit slopes n n² 10 ms 100 ms 1 s 10 s vcgen vcgen · hand-written-specs — MatchSplit n = 10: 107 ms n = 50: 1.57 s n = 100: 10.3 s grows like n^2.72 between n = 50 and 100 vcgen · library — MatchSplit n = 10: 135 ms n = 50: 1.68 s n = 100: 10.6 s grows like n^2.65 between n = 50 and 100 10 50 100 vcgen-finish vcgen-finish · hand-written-specs — MatchSplit n = 10: 63.8 ms n = 50: 852 ms n = 100: 4.56 s grows like n^2.42 between n = 50 and 100 vcgen-finish · library — MatchSplit n = 10: 91.5 ms n = 50: 971 ms n = 100: 4.79 s grows like n^2.30 between n = 50 and 100 10 50 100 normalize normalize · custom-monad — MatchSplit n = 10: 10.8 ms n = 50: 42.2 ms n = 100: 118 ms grows like n^1.48 between n = 50 and 100 normalize · hand-written-specs — MatchSplit n = 10: 13.1 ms n = 50: 27.1 ms n = 100: 46.7 ms grows like n^0.79 between n = 50 and 100 normalize · library — MatchSplit n = 10: 12.9 ms n = 50: 27.1 ms n = 100: 47.6 ms grows like n^0.82 between n = 50 and 100 10 50 100 normalize-sym normalize-sym · custom-monad — MatchSplit n = 10: 11.7 ms n = 50: 46.0 ms n = 100: 124 ms grows like n^1.44 between n = 50 and 100 normalize-sym · hand-written-specs — MatchSplit n = 10: 13.8 ms n = 50: 31.7 ms n = 100: 55.9 ms grows like n^0.82 between n = 50 and 100 normalize-sym · library — MatchSplit n = 10: 14.0 ms n = 50: 34.0 ms n = 100: 60.2 ms grows like n^0.83 between n = 50 and 100 10 50 100 dsimp dsimp · custom-monad — MatchSplit n = 10: 17.5 ms n = 50: 135 ms n = 100: 485 ms grows like n^1.84 between n = 50 and 100 dsimp · hand-written-specs — MatchSplit n = 10: 19.8 ms n = 50: 153 ms n = 100: 593 ms grows like n^1.95 between n = 50 and 100 dsimp · library — MatchSplit n = 10: 20.8 ms n = 50: 155 ms n = 100: 588 ms grows like n^1.92 between n = 50 and 100 10 50 100 sym-dsimp sym-dsimp · custom-monad — MatchSplit n = 10: 13.8 ms n = 50: 55.4 ms n = 100: 142 ms grows like n^1.36 between n = 50 and 100 sym-dsimp · hand-written-specs — MatchSplit n = 10: 14.8 ms n = 50: 39.7 ms n = 100: 70.8 ms grows like n^0.83 between n = 50 and 100 sym-dsimp · library — MatchSplit n = 10: 14.8 ms n = 50: 36.4 ms n = 100: 65.0 ms grows like n^0.84 between n = 50 and 100 10 50 100

Generation only

Total time against n · generation only Median total time per run on log–log axes, shared within each row (case). Colored: the column's route by tier; gray: the case's other routes. Slope 1 is linear growth and 2 quadratic, as in the guide at the right of each row. Failures are marked above the plot at the size where they happened. custom-monad hand-written-specs library no tier (wp-simp, wp-sym) other routes 60 s time limit timeout over memory ReaderState slopes n n² failed 100 ms 1 s 10 s vcgen vcgen · hand-written-specs — ReaderState n = 600: 274 ms n = 1600: 861 ms n = 2600: 1.63 s grows like n^1.31 between n = 1600 and 2600 vcgen · library — ReaderState n = 600: 3.56 s n = 1600: 11.4 s n = 2600: 20.0 s grows like n^1.15 between n = 1600 and 2600 600 1600 2600 normalize normalize · custom-monad — ReaderState n = 600: 64.6 ms n = 1600: 169 ms n = 2600: 277 ms grows like n^1.02 between n = 1600 and 2600 normalize · hand-written-specs — ReaderState n = 600: 91.7 ms n = 1600: 242 ms n = 2600: 391 ms grows like n^0.99 between n = 1600 and 2600 normalize · library — ReaderState n = 600: 156 ms n = 1600: 421 ms n = 2600: 707 ms grows like n^1.07 between n = 1600 and 2600 600 1600 2600 normalize-sym normalize-sym · custom-monad — ReaderState n = 600: 62.5 ms n = 1600: 166 ms n = 2600: 264 ms grows like n^0.96 between n = 1600 and 2600 normalize-sym · hand-written-specs — ReaderState n = 600: 89.2 ms n = 1600: 239 ms n = 2600: 386 ms grows like n^0.98 between n = 1600 and 2600 normalize-sym · library — ReaderState n = 600: 155 ms n = 1600: 419 ms n = 2600: 685 ms grows like n^1.01 between n = 1600 and 2600 600 1600 2600 dsimp dsimp · custom-monad — ReaderState n = 600: 117 ms n = 1600: 593 ms n = 2600: 1.41 s grows like n^1.79 between n = 1600 and 2600 dsimp · hand-written-specs — ReaderState n = 600: 6.93 s n = 1600: 49.9 s n = 2600: memory > 8 GB grows like n^2.01 between n = 600 and 1600 dsimp · library — ReaderState n = 600: 6.90 s n = 1600: 50.1 s n = 2600: memory > 8 GB grows like n^2.02 between n = 600 and 1600 600 1600 2600 sym-dsimp sym-dsimp · custom-monad — ReaderState n = 600: 9.22 s n = 1600: timeout: measured 65.6 s (limit 60 s) sym-dsimp · hand-written-specs — ReaderState n = 600: 4.61 s n = 1600: 32.0 s n = 2600: timeout: measured 85.9 s (limit 60 s) grows like n^1.98 between n = 600 and 1600 sym-dsimp · library — ReaderState n = 600: 3.95 s n = 1600: 27.3 s n = 2600: timeout: measured 74.2 s (limit 60 s) grows like n^1.97 between n = 600 and 1600 600 1600 2600 wp-simp wp-simp — ReaderState n = 600: 1.12 s n = 1600: 4.79 s n = 2600: 11.1 s grows like n^1.74 between n = 1600 and 2600 600 1600 2600 wp-sym wp-sym — ReaderState n = 600: 1.23 s n = 1600: 6.92 s n = 2600: 17.6 s grows like n^1.92 between n = 1600 and 2600 600 1600 2600 GetThrowSet slopes n n² failed 100 ms 1 s 10 s vcgen vcgen · hand-written-specs — GetThrowSet n = 200: 182 ms n = 500: 1.25 s n = 800: 3.69 s grows like n^2.31 between n = 500 and 800 vcgen · library — GetThrowSet n = 200: 631 ms n = 500: 2.87 s n = 800: 6.46 s grows like n^1.73 between n = 500 and 800 200 500 800 normalize normalize · custom-monad — GetThrowSet n = 200: 30.2 ms n = 500: 73.1 ms n = 800: 116 ms grows like n^0.99 between n = 500 and 800 normalize · hand-written-specs — GetThrowSet n = 200: 44.5 ms n = 500: 109 ms n = 800: 176 ms grows like n^1.02 between n = 500 and 800 normalize · library — GetThrowSet n = 200: 47.9 ms n = 500: 117 ms n = 800: 188 ms grows like n^1.01 between n = 500 and 800 200 500 800 normalize-sym normalize-sym · custom-monad — GetThrowSet n = 200: 34.6 ms n = 500: 86.8 ms n = 800: 139 ms grows like n^1.00 between n = 500 and 800 normalize-sym · hand-written-specs — GetThrowSet n = 200: 58.1 ms n = 500: 144 ms n = 800: 231 ms grows like n^1.01 between n = 500 and 800 normalize-sym · library — GetThrowSet n = 200: 63.0 ms n = 500: 157 ms n = 800: 255 ms grows like n^1.03 between n = 500 and 800 200 500 800 dsimp dsimp · custom-monad — GetThrowSet n = 200: 133 ms n = 500: 479 ms n = 800: 1.02 s grows like n^1.62 between n = 500 and 800 dsimp · hand-written-specs — GetThrowSet n = 200: 1.65 s n = 500: 13.5 s n = 800: 44.0 s grows like n^2.51 between n = 500 and 800 dsimp · library — GetThrowSet n = 200: 1.57 s n = 500: 13.1 s n = 800: 42.5 s grows like n^2.50 between n = 500 and 800 200 500 800 sym-dsimp sym-dsimp · custom-monad — GetThrowSet n = 200: 747 ms n = 500: 4.41 s n = 800: 11.3 s grows like n^1.99 between n = 500 and 800 sym-dsimp · hand-written-specs — GetThrowSet n = 200: 559 ms n = 500: 3.09 s n = 800: 7.77 s grows like n^1.97 between n = 500 and 800 sym-dsimp · library — GetThrowSet n = 200: 399 ms n = 500: 2.12 s n = 800: 5.26 s grows like n^1.93 between n = 500 and 800 200 500 800 wp-simp wp-simp — GetThrowSet n = 200: 5.62 s n = 500: memory > 8 GB 200 500 800 wp-sym wp-sym — GetThrowSet n = 200: 283 ms n = 500: 1.06 s n = 800: 2.30 s grows like n^1.64 between n = 500 and 800 200 500 800 MatchSplit slopes n n² failed 100 ms 1 s 10 s vcgen vcgen · hand-written-specs — MatchSplit n = 500: 188 ms n = 1000: 386 ms n = 1500: 648 ms grows like n^1.28 between n = 1000 and 1500 vcgen · library — MatchSplit n = 500: 1.39 s n = 1000: 3.34 s n = 1500: 5.46 s grows like n^1.21 between n = 1000 and 1500 500 1000 1500 normalize normalize · custom-monad — MatchSplit n = 500: 48.3 ms n = 1000: 95.9 ms n = 1500: 144 ms grows like n^1.00 between n = 1000 and 1500 normalize · hand-written-specs — MatchSplit n = 500: 57.9 ms n = 1000: 114 ms n = 1500: 173 ms grows like n^1.03 between n = 1000 and 1500 normalize · library — MatchSplit n = 500: 59.2 ms n = 1000: 118 ms n = 1500: 177 ms grows like n^1.00 between n = 1000 and 1500 500 1000 1500 normalize-sym normalize-sym · custom-monad — MatchSplit n = 500: 89.2 ms n = 1000: 179 ms n = 1500: 278 ms grows like n^1.08 between n = 1000 and 1500 normalize-sym · hand-written-specs — MatchSplit n = 500: 109 ms n = 1000: 218 ms n = 1500: 334 ms grows like n^1.06 between n = 1000 and 1500 normalize-sym · library — MatchSplit n = 500: 133 ms n = 1000: 267 ms n = 1500: 412 ms grows like n^1.07 between n = 1000 and 1500 500 1000 1500 dsimp dsimp · custom-monad — MatchSplit n = 500: 12.6 s n = 1000: timeout: measured 69.4 s (limit 60 s) dsimp · hand-written-specs — MatchSplit n = 500: 23.2 s n = 1000: timeout > 60 s (process killed after 90 s) dsimp · library — MatchSplit n = 500: 23.6 s n = 1000: timeout > 60 s (process killed after 90 s) 500 1000 1500 sym-dsimp sym-dsimp · custom-monad — MatchSplit n = 500: 187 ms n = 1000: 382 ms n = 1500: 590 ms grows like n^1.07 between n = 1000 and 1500 sym-dsimp · hand-written-specs — MatchSplit n = 500: 185 ms n = 1000: 378 ms n = 1500: 588 ms grows like n^1.09 between n = 1000 and 1500 sym-dsimp · library — MatchSplit n = 500: 155 ms n = 1000: 318 ms n = 1500: 494 ms grows like n^1.09 between n = 1000 and 1500 500 1000 1500

Peak memory

Peak resident memory against n; the dark line is the import-only baseline. Only runs that record peak memory are drawn.

Complete proofs

Peak memory against n · complete proofs Median peak resident memory of the Lean process, imports and the audits after the timers included, on a linear axis shared within each row (case). Colored: the column's route by tier; gray: the case's other routes. custom-monad hand-written-specs library no tier (sym, wp-simp, wp-sym) other routes 8.00 GB memory limit a process that only imports the benchmark (1.24 GB) timeout over memory error AddSubCancel failed 1 GB 2 GB 3 GB 4 GB vcgen vcgen · hand-written-specs — AddSubCancel n = 200: 1.31 GB n = 1200: 1.39 GB n = 2200: 1.48 GB vcgen · library — AddSubCancel n = 200: 1.31 GB n = 1200: 1.42 GB n = 2200: 1.56 GB 200 2200 vcgen-finish vcgen-finish · hand-written-specs — AddSubCancel n = 200: 1.31 GB n = 1200: 1.39 GB n = 2200: 1.47 GB vcgen-finish · library — AddSubCancel n = 200: 1.30 GB n = 1200: 1.46 GB n = 2200: 1.57 GB 200 2200 sym sym — AddSubCancel n = 200: 1.31 GB n = 1200: 1.44 GB n = 2200: 1.57 GB 200 2200 normalize normalize · custom-monad — AddSubCancel n = 200: 1.31 GB n = 1200: 1.31 GB n = 2200: 1.37 GB normalize · hand-written-specs — AddSubCancel n = 200: 1.31 GB n = 1200: 1.31 GB n = 2200: 1.37 GB normalize · library — AddSubCancel n = 200: 1.31 GB n = 1200: 1.31 GB n = 2200: 1.36 GB 200 2200 normalize-sym normalize-sym · custom-monad — AddSubCancel n = 200: 1.31 GB n = 1200: 1.31 GB n = 2200: 1.37 GB normalize-sym · hand-written-specs — AddSubCancel n = 200: 1.31 GB n = 1200: 1.31 GB n = 2200: 1.37 GB normalize-sym · library — AddSubCancel n = 200: 1.31 GB n = 1200: 1.31 GB n = 2200: 1.36 GB 200 2200 dsimp dsimp · custom-monad — AddSubCancel n = 200: 1.31 GB n = 1200: 1.34 GB n = 2200: 1.32 GB dsimp · hand-written-specs — AddSubCancel n = 200: 1.36 GB n = 1200: 3.62 GB n = 2200: memory > 8 GB dsimp · library — AddSubCancel n = 200: 1.36 GB n = 1200: 3.61 GB n = 2200: memory > 8 GB 200 2200 sym-dsimp sym-dsimp · custom-monad — AddSubCancel n = 200: 1.31 GB n = 1200: 1.33 GB n = 2200: timeout > 60 s (process killed after 90 s) sym-dsimp · hand-written-specs — AddSubCancel n = 200: 1.31 GB n = 1200: 1.34 GB n = 2200: timeout: measured 65.8 s (limit 60 s) sym-dsimp · library — AddSubCancel n = 200: 1.31 GB n = 1200: 1.34 GB n = 2200: 1.37 GB 200 2200 wp-simp wp-simp — AddSubCancel n = 200: 1.31 GB n = 1200: 1.34 GB n = 2200: 1.43 GB 200 2200 wp-sym wp-sym — AddSubCancel n = 200: 1.31 GB n = 1200: 1.40 GB n = 2200: 1.48 GB 200 2200 AddSubCancelDeep 1.0 GB 1.5 GB 2.0 GB 2.5 GB 3.0 GB vcgen vcgen · hand-written-specs — AddSubCancelDeep n = 100: 1.31 GB n = 500: 1.32 GB n = 900: 1.38 GB vcgen · library — AddSubCancelDeep n = 100: 1.42 GB n = 500: 1.90 GB n = 900: 2.30 GB 100 500 900 vcgen-finish vcgen-finish · hand-written-specs — AddSubCancelDeep n = 100: 1.31 GB n = 500: 1.32 GB n = 900: 1.39 GB vcgen-finish · library — AddSubCancelDeep n = 100: 1.42 GB n = 500: 1.90 GB n = 900: 2.33 GB 100 500 900 sym sym — AddSubCancelDeep n = 100: 1.31 GB n = 500: 1.37 GB n = 900: 1.41 GB 100 500 900 normalize normalize · custom-monad — AddSubCancelDeep n = 100: 1.31 GB n = 500: 1.31 GB n = 900: 1.31 GB normalize · hand-written-specs — AddSubCancelDeep n = 100: 1.31 GB n = 500: 1.31 GB n = 900: 1.31 GB normalize · library — AddSubCancelDeep n = 100: 1.31 GB n = 500: 1.31 GB n = 900: 1.31 GB 100 500 900 normalize-sym normalize-sym · custom-monad — AddSubCancelDeep n = 100: 1.31 GB n = 500: 1.31 GB n = 900: 1.31 GB normalize-sym · hand-written-specs — AddSubCancelDeep n = 100: 1.31 GB n = 500: 1.31 GB n = 900: 1.31 GB normalize-sym · library — AddSubCancelDeep n = 100: 1.31 GB n = 500: 1.31 GB n = 900: 1.31 GB 100 500 900 dsimp dsimp · custom-monad — AddSubCancelDeep n = 100: 1.31 GB n = 500: 1.31 GB n = 900: 1.31 GB dsimp · hand-written-specs — AddSubCancelDeep n = 100: 1.31 GB n = 500: 1.75 GB n = 900: 2.67 GB dsimp · library — AddSubCancelDeep n = 100: 1.31 GB n = 500: 1.75 GB n = 900: 2.66 GB 100 500 900 sym-dsimp sym-dsimp · custom-monad — AddSubCancelDeep n = 100: 1.31 GB n = 500: 1.32 GB n = 900: 1.33 GB sym-dsimp · hand-written-specs — AddSubCancelDeep n = 100: 1.31 GB n = 500: 1.33 GB n = 900: 1.34 GB sym-dsimp · library — AddSubCancelDeep n = 100: 1.31 GB n = 500: 1.33 GB n = 900: 1.34 GB 100 500 900 LetBinding 1.20 GB 1.25 GB 1.30 GB 1.35 GB vcgen vcgen · hand-written-specs — LetBinding n = 10: 1.31 GB n = 50: 1.31 GB n = 100: 1.31 GB vcgen · library — LetBinding n = 10: 1.31 GB n = 50: 1.31 GB n = 100: 1.31 GB 10 50 100 vcgen-finish vcgen-finish · hand-written-specs — LetBinding n = 10: 1.31 GB n = 50: 1.31 GB n = 100: 1.32 GB vcgen-finish · library — LetBinding n = 10: 1.31 GB n = 50: 1.31 GB n = 100: 1.31 GB 10 50 100 normalize normalize · custom-monad — LetBinding n = 10: 1.26 GB n = 50: 1.26 GB n = 100: 1.31 GB normalize · hand-written-specs — LetBinding n = 10: 1.26 GB n = 50: 1.31 GB n = 100: 1.31 GB normalize · library — LetBinding n = 10: 1.26 GB n = 50: 1.31 GB n = 100: 1.31 GB 10 50 100 normalize-sym normalize-sym · custom-monad — LetBinding n = 10: 1.26 GB n = 50: 1.26 GB n = 100: 1.31 GB normalize-sym · hand-written-specs — LetBinding n = 10: 1.26 GB n = 50: 1.31 GB n = 100: 1.31 GB normalize-sym · library — LetBinding n = 10: 1.26 GB n = 50: 1.31 GB n = 100: 1.31 GB 10 50 100 dsimp dsimp · custom-monad — LetBinding n = 10: 1.26 GB n = 50: 1.31 GB n = 100: 1.31 GB dsimp · hand-written-specs — LetBinding n = 10: 1.31 GB n = 50: 1.31 GB n = 100: 1.31 GB dsimp · library — LetBinding n = 10: 1.31 GB n = 50: 1.31 GB n = 100: 1.31 GB 10 50 100 sym-dsimp sym-dsimp · custom-monad — LetBinding n = 10: 1.31 GB n = 50: 1.31 GB n = 100: 1.31 GB sym-dsimp · hand-written-specs — LetBinding n = 10: 1.26 GB n = 50: 1.31 GB n = 100: 1.31 GB sym-dsimp · library — LetBinding n = 10: 1.26 GB n = 50: 1.31 GB n = 100: 1.31 GB 10 50 100 wp-simp wp-simp — LetBinding n = 10: 1.31 GB n = 50: 1.31 GB n = 100: 1.31 GB 10 50 100 wp-sym wp-sym — LetBinding n = 10: 1.31 GB n = 50: 1.31 GB n = 100: 1.31 GB 10 50 100 ReaderState 1.20 GB 1.25 GB 1.30 GB 1.35 GB 1.40 GB vcgen vcgen · hand-written-specs — ReaderState n = 10: 1.31 GB n = 50: 1.31 GB n = 100: 1.37 GB vcgen · library — ReaderState n = 10: 1.31 GB n = 50: 1.31 GB n = 100: 1.35 GB 10 50 100 normalize normalize · custom-monad — ReaderState n = 10: 1.31 GB n = 50: 1.31 GB n = 100: 1.37 GB normalize · hand-written-specs — ReaderState n = 10: 1.31 GB n = 50: 1.31 GB n = 100: 1.37 GB normalize · library — ReaderState n = 10: 1.31 GB n = 50: 1.31 GB n = 100: 1.37 GB 10 50 100 normalize-sym normalize-sym · custom-monad — ReaderState n = 10: 1.31 GB n = 50: 1.31 GB n = 100: 1.37 GB normalize-sym · hand-written-specs — ReaderState n = 10: 1.31 GB n = 50: 1.31 GB n = 100: 1.37 GB normalize-sym · library — ReaderState n = 10: 1.31 GB n = 50: 1.31 GB n = 100: 1.37 GB 10 50 100 dsimp dsimp · custom-monad — ReaderState n = 10: 1.31 GB n = 50: 1.31 GB n = 100: 1.36 GB dsimp · hand-written-specs — ReaderState n = 10: 1.31 GB n = 50: 1.31 GB n = 100: 1.33 GB dsimp · library — ReaderState n = 10: 1.31 GB n = 50: 1.31 GB n = 100: 1.33 GB 10 50 100 sym-dsimp sym-dsimp · custom-monad — ReaderState n = 10: 1.31 GB n = 50: 1.31 GB n = 100: 1.32 GB sym-dsimp · hand-written-specs — ReaderState n = 10: 1.31 GB n = 50: 1.31 GB n = 100: 1.34 GB sym-dsimp · library — ReaderState n = 10: 1.31 GB n = 50: 1.31 GB n = 100: 1.34 GB 10 50 100 wp-simp wp-simp — ReaderState n = 10: 1.31 GB n = 50: 1.31 GB n = 100: 1.35 GB 10 50 100 wp-sym wp-sym — ReaderState n = 10: 1.31 GB n = 50: 1.31 GB n = 100: 1.37 GB 10 50 100 PurePrecond failed 0 GB 2 GB 4 GB 6 GB 8 GB vcgen vcgen · hand-written-specs — PurePrecond n = 400: 1.32 GB n = 2400: 1.44 GB n = 4400: 1.60 GB vcgen · library — PurePrecond n = 400: 1.32 GB n = 2400: 1.44 GB n = 4400: 1.59 GB 400 4400 vcgen-finish vcgen-finish · hand-written-specs — PurePrecond n = 400: 1.32 GB n = 2400: 1.46 GB n = 4400: 1.59 GB vcgen-finish · library — PurePrecond n = 400: 1.32 GB n = 2400: 1.45 GB n = 4400: 1.59 GB 400 4400 normalize normalize · custom-monad — PurePrecond n = 400: 1.46 GB n = 2400: 7.37 GB n = 4400: memory > 8 GB normalize · hand-written-specs — PurePrecond n = 400: 1.45 GB n = 2400: 7.37 GB n = 4400: memory > 8 GB normalize · library — PurePrecond n = 400: 1.45 GB n = 2400: 7.37 GB n = 4400: memory > 8 GB 400 4400 normalize-sym normalize-sym · custom-monad — PurePrecond n = 400: 1.45 GB n = 2400: 7.37 GB n = 4400: memory > 8 GB normalize-sym · hand-written-specs — PurePrecond n = 400: 1.45 GB n = 2400: 7.37 GB n = 4400: memory > 8 GB normalize-sym · library — PurePrecond n = 400: 1.45 GB n = 2400: 7.37 GB n = 4400: memory > 8 GB 400 4400 dsimp dsimp · custom-monad — PurePrecond n = 400: 1.45 GB n = 2400: timeout > 60 s (process killed after 90 s) dsimp · hand-written-specs — PurePrecond n = 400: 1.49 GB n = 2400: timeout > 60 s (process killed after 90 s) dsimp · library — PurePrecond n = 400: 1.49 GB n = 2400: timeout > 60 s (process killed after 90 s) 400 4400 sym-dsimp sym-dsimp · custom-monad — PurePrecond n = 400: 1.44 GB n = 2400: 7.37 GB n = 4400: memory > 8 GB sym-dsimp · hand-written-specs — PurePrecond n = 400: 1.44 GB n = 2400: 7.37 GB n = 4400: memory > 8 GB sym-dsimp · library — PurePrecond n = 400: 1.44 GB n = 2400: 7.37 GB n = 4400: memory > 8 GB 400 4400 wp-simp wp-simp — PurePrecond n = 400: 1.31 GB n = 2400: 1.42 GB n = 4400: 1.60 GB 400 4400 wp-sym wp-sym — PurePrecond n = 400: 1.31 GB n = 2400: 1.42 GB n = 4400: 1.51 GB 400 4400 GetThrowSet failed 1 GB 2 GB 3 GB 4 GB 5 GB vcgen vcgen · hand-written-specs — GetThrowSet n = 10: 1.31 GB n = 50: 1.32 GB n = 100: 1.33 GB n = 200: 1.36 GB n = 300: timeout > 60 s (process killed after 90 s) vcgen · library — GetThrowSet n = 10: 1.31 GB n = 50: 1.33 GB n = 100: 1.34 GB n = 200: 1.41 GB n = 300: timeout > 60 s (process killed after 90 s) 10 50 100 300 vcgen-finish vcgen-finish · hand-written-specs — GetThrowSet n = 10: 1.31 GB n = 50: 1.32 GB n = 100: 1.32 GB n = 200: 1.37 GB n = 300: 1.43 GB vcgen-finish · library — GetThrowSet n = 10: 1.31 GB n = 50: 1.32 GB n = 100: 1.36 GB n = 200: 1.41 GB n = 300: 1.47 GB 10 50 100 300 vcgen-finish-simp vcgen-finish-simp · hand-written-specs — GetThrowSet n = 10: 1.32 GB n = 50: 1.32 GB n = 100: 1.32 GB n = 200: 1.31 GB n = 300: 1.33 GB vcgen-finish-simp · library — GetThrowSet n = 10: 1.32 GB n = 50: 1.32 GB n = 100: 1.32 GB n = 200: 1.37 GB n = 300: 1.43 GB 10 50 100 300 normalize normalize · custom-monad — GetThrowSet n = 10: 1.31 GB n = 50: 1.34 GB n = 100: 1.49 GB n = 200: 2.55 GB n = 300: error: `simp` failed: maximum number of steps exceeded normalize · hand-written-specs — GetThrowSet n = 10: 1.31 GB n = 50: 1.39 GB n = 100: 1.74 GB n = 200: error: `simp` failed: maximum number of steps exceeded normalize · library — GetThrowSet n = 10: 1.31 GB n = 50: 1.39 GB n = 100: 1.76 GB n = 200: error: `simp` failed: maximum number of steps exceeded 10 50 100 300 normalize-sym normalize-sym · custom-monad — GetThrowSet n = 10: 1.31 GB n = 50: 1.34 GB n = 100: 1.50 GB n = 200: 2.55 GB n = 300: error: `simp` failed: maximum number of steps exceeded normalize-sym · hand-written-specs — GetThrowSet n = 10: 1.31 GB n = 50: 1.39 GB n = 100: 1.75 GB n = 200: error: `simp` failed: maximum number of steps exceeded normalize-sym · library — GetThrowSet n = 10: 1.31 GB n = 50: 1.39 GB n = 100: 1.75 GB n = 200: error: `simp` failed: maximum number of steps exceeded 10 50 100 300 dsimp dsimp · custom-monad — GetThrowSet n = 10: 1.31 GB n = 50: 1.34 GB n = 100: 1.49 GB n = 200: 2.55 GB n = 300: error: `simp` failed: maximum number of steps exceeded dsimp · hand-written-specs — GetThrowSet n = 10: 1.31 GB n = 50: 1.38 GB n = 100: 1.76 GB n = 200: error: `simp` failed: maximum number of steps exceeded dsimp · library — GetThrowSet n = 10: 1.31 GB n = 50: 1.38 GB n = 100: 1.77 GB n = 200: error: `simp` failed: maximum number of steps exceeded 10 50 100 300 sym-dsimp sym-dsimp · custom-monad — GetThrowSet n = 10: 1.31 GB n = 50: 1.33 GB n = 100: 1.49 GB n = 200: 2.55 GB n = 300: error: `simp` failed: maximum number of steps exceeded sym-dsimp · hand-written-specs — GetThrowSet n = 10: 1.31 GB n = 50: 1.38 GB n = 100: 1.75 GB n = 200: error: `simp` failed: maximum number of steps exceeded sym-dsimp · library — GetThrowSet n = 10: 1.31 GB n = 50: 1.39 GB n = 100: 1.74 GB n = 200: error: `simp` failed: maximum number of steps exceeded 10 50 100 300 wp-simp wp-simp — GetThrowSet n = 10: 1.31 GB n = 50: 1.35 GB n = 100: 1.61 GB n = 200: 2.46 GB n = 300: 3.85 GB 10 50 100 300 wp-sym wp-sym — GetThrowSet n = 10: 1.31 GB n = 50: 1.31 GB n = 100: 1.34 GB n = 200: 1.56 GB n = 300: 1.85 GB 10 50 100 300 DiteSplit 1.2 GB 1.3 GB 1.4 GB 1.5 GB vcgen vcgen · hand-written-specs — DiteSplit n = 10: 1.31 GB n = 50: 1.33 GB n = 100: 1.35 GB vcgen · library — DiteSplit n = 10: 1.31 GB n = 50: 1.33 GB n = 100: 1.39 GB 10 50 100 vcgen-finish vcgen-finish · hand-written-specs — DiteSplit n = 10: 1.31 GB n = 50: 1.32 GB n = 100: 1.32 GB vcgen-finish · library — DiteSplit n = 10: 1.32 GB n = 50: 1.31 GB n = 100: 1.38 GB 10 50 100 normalize normalize · custom-monad — DiteSplit n = 10: 1.30 GB n = 50: 1.31 GB n = 100: 1.36 GB normalize · hand-written-specs — DiteSplit n = 10: 1.31 GB n = 50: 1.31 GB n = 100: 1.36 GB normalize · library — DiteSplit n = 10: 1.31 GB n = 50: 1.31 GB n = 100: 1.36 GB 10 50 100 normalize-sym normalize-sym · custom-monad — DiteSplit n = 10: 1.31 GB n = 50: 1.31 GB n = 100: 1.36 GB normalize-sym · hand-written-specs — DiteSplit n = 10: 1.31 GB n = 50: 1.31 GB n = 100: 1.36 GB normalize-sym · library — DiteSplit n = 10: 1.31 GB n = 50: 1.31 GB n = 100: 1.36 GB 10 50 100 dsimp dsimp · custom-monad — DiteSplit n = 10: 1.31 GB n = 50: 1.33 GB n = 100: 1.36 GB dsimp · hand-written-specs — DiteSplit n = 10: 1.31 GB n = 50: 1.33 GB n = 100: 1.38 GB dsimp · library — DiteSplit n = 10: 1.31 GB n = 50: 1.33 GB n = 100: 1.38 GB 10 50 100 sym-dsimp sym-dsimp · custom-monad — DiteSplit n = 10: 1.31 GB n = 50: 1.31 GB n = 100: 1.36 GB sym-dsimp · hand-written-specs — DiteSplit n = 10: 1.31 GB n = 50: 1.31 GB n = 100: 1.38 GB sym-dsimp · library — DiteSplit n = 10: 1.31 GB n = 50: 1.31 GB n = 100: 1.36 GB 10 50 100 wp-simp wp-simp — DiteSplit n = 10: 1.30 GB n = 50: 1.33 GB n = 100: 1.48 GB 10 50 100 wp-sym wp-sym — DiteSplit n = 10: 1.31 GB n = 50: 1.35 GB n = 100: 1.47 GB 10 50 100 MatchSplit 1.2 GB 1.4 GB 1.6 GB 1.8 GB 2.0 GB vcgen vcgen · hand-written-specs — MatchSplit n = 10: 1.31 GB n = 50: 1.35 GB n = 100: 1.40 GB vcgen · library — MatchSplit n = 10: 1.31 GB n = 50: 1.35 GB n = 100: 1.41 GB 10 50 100 vcgen-finish vcgen-finish · hand-written-specs — MatchSplit n = 10: 1.32 GB n = 50: 1.40 GB n = 100: 1.79 GB vcgen-finish · library — MatchSplit n = 10: 1.32 GB n = 50: 1.38 GB n = 100: 1.82 GB 10 50 100 normalize normalize · custom-monad — MatchSplit n = 10: 1.26 GB n = 50: 1.31 GB n = 100: 1.31 GB normalize · hand-written-specs — MatchSplit n = 10: 1.31 GB n = 50: 1.31 GB n = 100: 1.31 GB normalize · library — MatchSplit n = 10: 1.31 GB n = 50: 1.32 GB n = 100: 1.31 GB 10 50 100 normalize-sym normalize-sym · custom-monad — MatchSplit n = 10: 1.26 GB n = 50: 1.31 GB n = 100: 1.31 GB normalize-sym · hand-written-specs — MatchSplit n = 10: 1.26 GB n = 50: 1.31 GB n = 100: 1.31 GB normalize-sym · library — MatchSplit n = 10: 1.26 GB n = 50: 1.31 GB n = 100: 1.31 GB 10 50 100 dsimp dsimp · custom-monad — MatchSplit n = 10: 1.31 GB n = 50: 1.31 GB n = 100: 1.31 GB dsimp · hand-written-specs — MatchSplit n = 10: 1.32 GB n = 50: 1.31 GB n = 100: 1.34 GB dsimp · library — MatchSplit n = 10: 1.31 GB n = 50: 1.31 GB n = 100: 1.34 GB 10 50 100 sym-dsimp sym-dsimp · custom-monad — MatchSplit n = 10: 1.26 GB n = 50: 1.31 GB n = 100: 1.31 GB sym-dsimp · hand-written-specs — MatchSplit n = 10: 1.26 GB n = 50: 1.31 GB n = 100: 1.31 GB sym-dsimp · library — MatchSplit n = 10: 1.32 GB n = 50: 1.32 GB n = 100: 1.31 GB 10 50 100

Generation only

Peak memory against n · generation only Median peak resident memory of the Lean process, imports and the audits after the timers included, on a linear axis shared within each row (case). Colored: the column's route by tier; gray: the case's other routes. custom-monad hand-written-specs library no tier (wp-simp, wp-sym) other routes a process that only imports the benchmark (1.24 GB) timeout over memory ReaderState failed 0 GB 2 GB 4 GB 6 GB vcgen vcgen · hand-written-specs — ReaderState n = 600: 1.31 GB n = 1600: 1.41 GB n = 2600: 1.53 GB vcgen · library — ReaderState n = 600: 1.58 GB n = 1600: 2.09 GB n = 2600: 2.60 GB 600 1600 2600 normalize normalize · custom-monad — ReaderState n = 600: 1.31 GB n = 1600: 1.31 GB n = 2600: 1.31 GB normalize · hand-written-specs — ReaderState n = 600: 1.31 GB n = 1600: 1.31 GB n = 2600: 1.31 GB normalize · library — ReaderState n = 600: 1.31 GB n = 1600: 1.31 GB n = 2600: 1.32 GB 600 1600 2600 normalize-sym normalize-sym · custom-monad — ReaderState n = 600: 1.31 GB n = 1600: 1.31 GB n = 2600: 1.31 GB normalize-sym · hand-written-specs — ReaderState n = 600: 1.31 GB n = 1600: 1.31 GB n = 2600: 1.31 GB normalize-sym · library — ReaderState n = 600: 1.31 GB n = 1600: 1.31 GB n = 2600: 1.31 GB 600 1600 2600 dsimp dsimp · custom-monad — ReaderState n = 600: 1.31 GB n = 1600: 1.31 GB n = 2600: 1.31 GB dsimp · hand-written-specs — ReaderState n = 600: 1.89 GB n = 1600: 5.31 GB n = 2600: memory > 8 GB dsimp · library — ReaderState n = 600: 1.89 GB n = 1600: 5.31 GB n = 2600: memory > 8 GB 600 1600 2600 sym-dsimp sym-dsimp · custom-monad — ReaderState n = 600: 1.32 GB n = 1600: timeout: measured 65.6 s (limit 60 s) sym-dsimp · hand-written-specs — ReaderState n = 600: 1.32 GB n = 1600: 1.35 GB n = 2600: timeout: measured 85.9 s (limit 60 s) sym-dsimp · library — ReaderState n = 600: 1.33 GB n = 1600: 1.36 GB n = 2600: timeout: measured 74.2 s (limit 60 s) 600 1600 2600 wp-simp wp-simp — ReaderState n = 600: 1.33 GB n = 1600: 1.41 GB n = 2600: 1.44 GB 600 1600 2600 wp-sym wp-sym — ReaderState n = 600: 1.37 GB n = 1600: 1.47 GB n = 2600: 1.55 GB 600 1600 2600 GetThrowSet failed 1.0 GB 1.5 GB 2.0 GB 2.5 GB 3.0 GB 3.5 GB vcgen vcgen · hand-written-specs — GetThrowSet n = 200: 1.31 GB n = 500: 1.46 GB n = 800: 1.65 GB vcgen · library — GetThrowSet n = 200: 1.39 GB n = 500: 1.57 GB n = 800: 1.82 GB 200 500 800 normalize normalize · custom-monad — GetThrowSet n = 200: 1.31 GB n = 500: 1.31 GB n = 800: 1.31 GB normalize · hand-written-specs — GetThrowSet n = 200: 1.31 GB n = 500: 1.31 GB n = 800: 1.31 GB normalize · library — GetThrowSet n = 200: 1.31 GB n = 500: 1.31 GB n = 800: 1.31 GB 200 500 800 normalize-sym normalize-sym · custom-monad — GetThrowSet n = 200: 1.31 GB n = 500: 1.31 GB n = 800: 1.31 GB normalize-sym · hand-written-specs — GetThrowSet n = 200: 1.31 GB n = 500: 1.31 GB n = 800: 1.31 GB normalize-sym · library — GetThrowSet n = 200: 1.31 GB n = 500: 1.31 GB n = 800: 1.31 GB 200 500 800 dsimp dsimp · custom-monad — GetThrowSet n = 200: 1.31 GB n = 500: 1.31 GB n = 800: 1.31 GB dsimp · hand-written-specs — GetThrowSet n = 200: 1.42 GB n = 500: 1.96 GB n = 800: 3.01 GB dsimp · library — GetThrowSet n = 200: 1.39 GB n = 500: 1.95 GB n = 800: 2.96 GB 200 500 800 sym-dsimp sym-dsimp · custom-monad — GetThrowSet n = 200: 1.31 GB n = 500: 1.32 GB n = 800: 1.32 GB sym-dsimp · hand-written-specs — GetThrowSet n = 200: 1.32 GB n = 500: 1.32 GB n = 800: 1.33 GB sym-dsimp · library — GetThrowSet n = 200: 1.31 GB n = 500: 1.34 GB n = 800: 1.37 GB 200 500 800 wp-simp wp-simp — GetThrowSet n = 200: 2.40 GB n = 500: memory > 8 GB 200 500 800 wp-sym wp-sym — GetThrowSet n = 200: 1.31 GB n = 500: 1.37 GB n = 800: 1.41 GB 200 500 800 MatchSplit failed 1.00 GB 1.25 GB 1.50 GB 1.75 GB 2.00 GB 2.25 GB vcgen vcgen · hand-written-specs — MatchSplit n = 500: 1.32 GB n = 1000: 1.32 GB n = 1500: 1.40 GB vcgen · library — MatchSplit n = 500: 1.42 GB n = 1000: 1.54 GB n = 1500: 1.68 GB 500 1000 1500 normalize normalize · custom-monad — MatchSplit n = 500: 1.31 GB n = 1000: 1.31 GB n = 1500: 1.31 GB normalize · hand-written-specs — MatchSplit n = 500: 1.31 GB n = 1000: 1.31 GB n = 1500: 1.31 GB normalize · library — MatchSplit n = 500: 1.31 GB n = 1000: 1.31 GB n = 1500: 1.31 GB 500 1000 1500 normalize-sym normalize-sym · custom-monad — MatchSplit n = 500: 1.31 GB n = 1000: 1.31 GB n = 1500: 1.31 GB normalize-sym · hand-written-specs — MatchSplit n = 500: 1.31 GB n = 1000: 1.31 GB n = 1500: 1.31 GB normalize-sym · library — MatchSplit n = 500: 1.31 GB n = 1000: 1.31 GB n = 1500: 1.31 GB 500 1000 1500 dsimp dsimp · custom-monad — MatchSplit n = 500: 1.58 GB n = 1000: timeout: measured 69.4 s (limit 60 s) dsimp · hand-written-specs — MatchSplit n = 500: 1.97 GB n = 1000: timeout > 60 s (process killed after 90 s) dsimp · library — MatchSplit n = 500: 1.97 GB n = 1000: timeout > 60 s (process killed after 90 s) 500 1000 1500 sym-dsimp sym-dsimp · custom-monad — MatchSplit n = 500: 1.29 GB n = 1000: 1.31 GB n = 1500: 1.33 GB sym-dsimp · hand-written-specs — MatchSplit n = 500: 1.31 GB n = 1000: 1.31 GB n = 1500: 1.35 GB sym-dsimp · library — MatchSplit n = 500: 1.31 GB n = 1000: 1.31 GB n = 1500: 1.32 GB 500 1000 1500