Herbie run

Date:Thursday, May 23rd, 2024
Commit:5df82454 on zane-demo-clean-up
Hostname:nightly with Racket 8.11.1
Seed:2024144
Parameters:256 points for 4 iterations
Flags:
localize:costslocalize:errorsreduce:regimesreduce:avg-errorreduce:binary-searchreduce:branch-expressionssetup:simplifysetup:searchrules:arithmeticrules:polynomialsrules:fractionsrules:exponentsrules:trigonometryrules:hyperbolicrules:numericsrules:specialrules:boolsrules:branchesgenerate:rrgenerate:taylorgenerate:simplifygenerate:proofs
default

Time bar (total: 10.7min)

simplify2.4min (22.3%)

Algorithm
268×egg-herbie
Rules
215708×fma-define
120276×times-frac
120022×distribute-lft-in
118514×*-commutative
113718×fma-neg
Stop Event
65×saturated
203×node limit
Counts
102538 → 73426

soundness1.5min (14.1%)

Rules
107976×fma-define
70784×times-frac
69616×*-commutative
65470×associate-*r*
56456×distribute-lft-in
Stop Event
saturated
164×node limit
29×fuel
done
Compiler

Compiled 62999 to 12855 computations (79.6% saved)

sample1.5min (13.8%)

Results
1.2min247632×0valid
1.2s8365×0invalid
672.0ms2120×0precondition
12.0ms48×1valid
Precisions
Click to see histograms. Total time spent on operations: 58.1s
ival-mult: 12.4s (21.4% of total)
ival-<=: 10.1s (17.4% of total)
...c/correct-round.rkt:121:19: 8.5s (14.6% of total)
ival-div: 4.9s (8.4% of total)
ival-sub: 2.6s (4.5% of total)
ival-fabs: 2.6s (4.5% of total)
ival-add: 2.2s (3.8% of total)
ival-sqrt: 2.1s (3.6% of total)
ival-log: 1.9s (3.2% of total)
ival-sin: 1.7s (2.8% of total)
ival-and: 1.6s (2.7% of total)
ival-exp: 1.2s (2% of total)
ival-neg: 795.0ms (1.4% of total)
ival-cos: 775.0ms (1.3% of total)
ival-floor: 705.0ms (1.2% of total)
ival-<: 692.0ms (1.2% of total)
ival-pi: 600.0ms (1% of total)
const: 456.0ms (0.8% of total)
ival-fmax: 367.0ms (0.6% of total)
ival-tan: 319.0ms (0.5% of total)
ival->: 290.0ms (0.5% of total)
ival-if: 285.0ms (0.5% of total)
ival-log2: 273.0ms (0.5% of total)
ival-atan: 177.0ms (0.3% of total)
ival-==: 168.0ms (0.3% of total)
ival-asin: 165.0ms (0.3% of total)
ival->=: 116.0ms (0.2% of total)
ival-sinh: 89.0ms (0.2% of total)
backward-pass: 72.0ms (0.1% of total)
Bogosity

prune57.0s (8.9%)

Counts
152282 → 4062
Compiler

Compiled 362196 to 132286 computations (63.5% saved)

end44.1s (6.9%)

localize43.6s (6.8%)

Results
17.4s26010×0valid
7.7s784×5exit
1.9s1993×0invalid
1.1s518×1valid
578.0ms1159×0unsamplable
Compiler

Compiled 103174 to 5501 computations (94.7% saved)

Precisions
Click to see histograms. Total time spent on operations: 18.0s
ival-mult: 4.1s (22.5% of total)
ival-div: 2.0s (11% of total)
ival-pow: 1.8s (10.1% of total)
ival-expm1: 1.7s (9.7% of total)
backward-pass: 1.0s (5.8% of total)
ival-add: 1.0s (5.8% of total)
ival-sin: 782.0ms (4.3% of total)
ival-sqrt: 602.0ms (3.3% of total)
...c/correct-round.rkt:121:19: 553.0ms (3.1% of total)
ival-sub: 511.0ms (2.8% of total)
ival-tan: 489.0ms (2.7% of total)
ival-neg: 437.0ms (2.4% of total)
ival-log: 418.0ms (2.3% of total)
ival-fma: 385.0ms (2.1% of total)
ival-cos: 334.0ms (1.9% of total)
ival-exp: 308.0ms (1.7% of total)
ival-log1p: 249.0ms (1.4% of total)
ival-hypot: 226.0ms (1.3% of total)
ival-fmax: 161.0ms (0.9% of total)
ival-if: 155.0ms (0.9% of total)
ival-atan: 146.0ms (0.8% of total)
ival-floor: 100.0ms (0.6% of total)
const: 99.0ms (0.5% of total)
ival-log2: 95.0ms (0.5% of total)
ival-pi: 69.0ms (0.4% of total)
ival->=: 51.0ms (0.3% of total)
ival-cbrt: 48.0ms (0.3% of total)
ival-asin: 43.0ms (0.2% of total)
ival-fabs: 40.0ms (0.2% of total)
ival->: 34.0ms (0.2% of total)
ival-<: 13.0ms (0.1% of total)
ival-sinh: 12.0ms (0.1% of total)
ival-e: 2.0ms (0% of total)

eval36.6s (5.7%)

Compiler

Compiled 17062972 to 625865 computations (96.3% saved)

analyze32.7s (5.1%)

Algorithm
30×search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%2.6%97.4%0%0%0%0
0%0%2.6%97.4%0%0%0%1
7.8%0.2%2.4%97.4%0%0%0%2
8.5%0.2%2.4%97.4%0%0%0%3
12.8%0.3%2.3%97.4%0%0%0%4
47%1.2%1.4%97.4%0%0%0%5
51.8%1.3%1.2%97.4%0%0%0%6
69.5%1.8%0.8%97.4%0%0%0%7
71.6%1.8%0.7%97.4%0%0.1%0%8
81.1%2.1%0.5%97.4%0%0.1%0%9
82.6%2.1%0.4%97.4%0%0.1%0%10
88.3%2.2%0.3%97.4%0%0.1%0%11
89.1%2.2%0.3%97.4%0%0.1%0%12
Compiler

Compiled 2668 to 1046 computations (60.8% saved)

Precisions
Click to see histograms. Total time spent on operations: 22.0s
ival-mult: 5.3s (24.1% of total)
ival-<=: 4.2s (19.3% of total)
...c/correct-round.rkt:121:19: 2.4s (11% of total)
ival-fabs: 1.7s (7.9% of total)
ival-div: 1.2s (5.3% of total)
ival-add: 1.1s (4.8% of total)
ival-floor: 898.0ms (4.1% of total)
ival-and: 667.0ms (3% of total)
ival-sqrt: 635.0ms (2.9% of total)
ival-sub: 584.0ms (2.7% of total)
ival-if: 435.0ms (2% of total)
ival-sin: 434.0ms (2% of total)
ival-cos: 345.0ms (1.6% of total)
ival-fmax: 306.0ms (1.4% of total)
ival-log2: 266.0ms (1.2% of total)
ival-==: 251.0ms (1.1% of total)
ival-log: 190.0ms (0.9% of total)
ival->: 174.0ms (0.8% of total)
ival->=: 155.0ms (0.7% of total)
ival-pi: 142.0ms (0.6% of total)
const: 132.0ms (0.6% of total)
ival-tan: 128.0ms (0.6% of total)
ival-neg: 97.0ms (0.4% of total)
ival-exp: 82.0ms (0.4% of total)
ival-<: 61.0ms (0.3% of total)
ival-atan: 36.0ms (0.2% of total)
ival-sinh: 29.0ms (0.1% of total)
backward-pass: 22.0ms (0.1% of total)
ival-asin: 17.0ms (0.1% of total)

rewrite32.5s (5.1%)

Algorithm
119×batch-egg-rewrite
Rules
60454×log1p-expm1-u
48868×expm1-log1p-u
37013×pow1
36414×log-prod
35796×add-exp-log
Stop Event
119×node limit
Counts
2012 → 46024

regimes28.5s (4.4%)

Counts
9655 → 401
Calls

145 calls:

872.0ms
s
822.0ms
maxCos
738.0ms
h
665.0ms
(*.f32 (*.f32 uy #s(literal 2 binary32)) (PI.f32))
661.0ms
ux
Compiler

Compiled 14799 to 10226 computations (30.9% saved)

series26.8s (4.2%)

Counts
2012 → 56514
Calls

14022 calls:

TimeVariablePointExpression
365.0ms
dX.v
@-inf
(if (< (if (> (/ (fmax (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor h) dX.v) (* (floor h) dX.v))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor h) dY.v) (* (floor h) dY.v)))) (fabs (- (* (* (floor w) dX.u) (* (floor h) dY.v)) (* (* (floor h) dX.v) (* (floor w) dY.u))))) (floor maxAniso)) (/ (sqrt (fmax (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor h) dX.v) (* (floor h) dX.v))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor h) dY.v) (* (floor h) dY.v))))) (floor maxAniso)) (/ (fabs (* (* dX.u dY.v) (* (floor h) (floor w)))) (sqrt (fmax (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor h) dX.v) (* (floor h) dX.v))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor h) dY.v) (* (floor h) dY.v))))))) 1) (fmax 1 (* (if (> (/ (fmax (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor h) dX.v) (* (floor h) dX.v))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor h) dY.v) (* (floor h) dY.v)))) (fabs (- (* (* (floor w) dX.u) (* (floor h) dY.v)) (* (* (floor h) dX.v) (* (floor w) dY.u))))) (floor maxAniso)) (floor maxAniso) (/ (fmax (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor h) dX.v) (* (floor h) dX.v))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor h) dY.v) (* (floor h) dY.v)))) (fabs (- (* (* (floor w) dX.u) (* (floor h) dY.v)) (* (* (floor h) dX.v) (* (floor w) dY.u)))))) (if (> (/ (fmax (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor h) dX.v) (* (floor h) dX.v))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor h) dY.v) (* (floor h) dY.v)))) (fabs (- (* (* (floor w) dX.u) (* (floor h) dY.v)) (* (* (floor h) dX.v) (* (floor w) dY.u))))) (floor maxAniso)) (/ (sqrt (fmax (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor h) dX.v) (* (floor h) dX.v))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor h) dY.v) (* (floor h) dY.v))))) (floor maxAniso)) (/ (fabs (- (* (* (floor w) dX.u) (* (floor h) dY.v)) (* (* (floor h) dX.v) (* (floor w) dY.u)))) (sqrt (fmax (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor h) dX.v) (* (floor h) dX.v))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor h) dY.v) (* (floor h) dY.v))))))))) (if (> (/ (fmax (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor h) dX.v) (* (floor h) dX.v))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor h) dY.v) (* (floor h) dY.v)))) (fabs (- (* (* (floor w) dX.u) (* (floor h) dY.v)) (* (* (floor h) dX.v) (* (floor w) dY.u))))) (floor maxAniso)) (floor maxAniso) (/ (fmax (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor h) dX.v) (* (floor h) dX.v))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor h) dY.v) (* (floor h) dY.v)))) (fabs (- (* (* (floor w) dX.u) (* (floor h) dY.v)) (* (* (floor h) dX.v) (* (floor w) dY.u)))))))
287.0ms
eta
@inf
(log (asin (/ h eta)))
229.0ms
u2
@inf
(* (sqrt (neg (log (- 1 u1)))) (cos (* (* 2 (PI)) u2)))
139.0ms
u
@inf
(* u (+ 4 (* u (+ 8 (* u (+ 64/3 (* u 64)))))))
123.0ms
u1
@0
(* (pow (pow (log (+ 1 u1)) 1/4) 2) (sin (* (* 2 (PI)) u2)))

preprocess9.7s (1.5%)

Algorithm
30×egg-herbie
Rules
30630×fma-define
21782×fma-neg
15892×unsub-neg
14706×distribute-lft-neg-in
11858×distribute-rgt-neg-in
Stop Event
11×saturated
19×node limit
Compiler

Compiled 51400 to 15380 computations (70.1% saved)

explain7.0s (1.1%)

Results
3.9s15286×0valid
125.0ms74×1valid
Compiler

Compiled 16652 to 1662 computations (90% saved)

Precisions
Click to see histograms. Total time spent on operations: 1.9s
ival-mult: 635.0ms (33.4% of total)
ival-div: 218.0ms (11.5% of total)
ival-sub: 196.0ms (10.3% of total)
ival-add: 192.0ms (10.1% of total)
ival-log: 90.0ms (4.7% of total)
ival-sin: 77.0ms (4.1% of total)
ival-sqrt: 75.0ms (3.9% of total)
ival-cos: 68.0ms (3.6% of total)
ival-floor: 51.0ms (2.7% of total)
ival-exp: 40.0ms (2.1% of total)
ival-pi: 39.0ms (2.1% of total)
ival-neg: 31.0ms (1.6% of total)
const: 28.0ms (1.5% of total)
...c/correct-round.rkt:121:19: 27.0ms (1.4% of total)
ival-if: 23.0ms (1.2% of total)
ival-tan: 23.0ms (1.2% of total)
ival-fmax: 21.0ms (1.1% of total)
ival-log2: 16.0ms (0.8% of total)
ival-fabs: 10.0ms (0.5% of total)
backward-pass: 7.0ms (0.4% of total)
ival-atan: 7.0ms (0.4% of total)
ival->=: 6.0ms (0.3% of total)
ival->: 5.0ms (0.3% of total)
ival-asin: 5.0ms (0.3% of total)
ival-sinh: 5.0ms (0.3% of total)
ival-<: 4.0ms (0.2% of total)

bsearch90.0ms (0%)

Algorithm
70×binary-search
12×left-value
Stop Event
70×narrow-enough
Compiler

Compiled 3881 to 1847 computations (52.4% saved)

Profiling

Loading profile data...