Herbie run

Date:Wednesday, August 2nd, 2023
Commit:f4cd8b9a on main
Hostname:nightly with Racket 8.6
Seed:2023214
Parameters:256 points for 4 iterations
Flags:
reduce: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: 23.1min)

localize7.5min (32.7%)

Results
Compiler

Compiled 88285 to 41435 computations (53.1% saved)

sample7.5min (32.6%)

Results
2.7min16975×body8192exit
1.1min64821×body1024valid
57.7s8208×body4096valid
51.7s268926×body256valid
31.7s13526×body2048valid
27.5s1551×body8192valid
17.0s32229×body512valid
7.2s4238×body1024infinite
5.6s27498×body256unsamplable
5.5s27434×body256infinite
4.2s588×body4096infinite
3.7s21481×body256invalid
3.4s820×body2048infinite
2.1s2168×body512infinite
2.1s5360×body2048invalid
1.6s3790×body1024invalid
744.0ms2263×body512invalid
450.0ms26×body8192infinite
77.0ms905×body256precondition
6.0msbody1024unsamplable
5.0msbody512unsamplable
3.0ms11×body4096invalid
Bogosity

eval1.9min (8.3%)

Compiler

Compiled 6396656 to 3392911 computations (47% saved)

soundness1.4min (6.2%)

Rules
331602×fma-def
195584×associate-*r*
165912×log-prod
158614×associate-*l*
154354×times-frac
Stop Event
unsound
14×saturated
454×node limit
Compiler

Compiled 62326 to 34417 computations (44.8% saved)

regimes1.3min (5.5%)

Counts
18463 → 896
Calls

137 calls:

7.1s
phi2
5.9s
phi1
5.4s
B
4.4s
lambda1
4.3s
lambda2
Compiler

Compiled 432095 to 200926 computations (53.5% saved)

simplify51.2s (3.7%)

Algorithm
272×egg-herbie
Rules
204894×fma-def
115978×associate-*r*
96556×times-frac
95644×associate-*l*
92670×fma-neg
Stop Event
unsound
65×saturated
done
44×fuel
206×node limit
Counts
81740 → 65506
Results
Compiler

Compiled 17683 to 11325 computations (36% saved)

prune45.5s (3.3%)

Counts
138226 → 6608
Compiler

Compiled 677097 to 451460 computations (33.3% saved)

analyze33.9s (2.4%)

Algorithm
53×search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%79.4%20.6%0%0%0%0
19.6%15.5%63.8%20.6%0%0%0%1
27.1%21.4%57.6%21%0%0%0%2
36.8%28.5%48.9%21.2%0%1.4%0%3
42.3%32.2%43.9%21.2%0%2.8%0%4
47.2%35.4%39.6%21.2%0%3.8%0%5
50.2%37.2%36.9%21.2%0%4.6%0%6
53.6%39.3%34%21.2%0%5.4%0.1%7
55.3%40.3%32.5%21.3%0%5.8%0.1%8
58.3%42%30.1%21.3%0%6.4%0.2%9
59.6%42.8%29%21.3%0%6.7%0.2%10
61.9%44.2%27.2%21.3%0%7.1%0.3%11
63.3%45%26%21.3%0%7.4%0.3%12
Compiler

Compiled 1919 to 1338 computations (30.3% saved)

bsearch27.1s (2%)

Algorithm
386×binary-search
47×left-value
Stop Event
365×narrow-enough
21×predicate-same
Results
12.2s10649×body1024valid
5.7s27135×body256valid
2.7s4196×body512valid
2.2s1885×body2048valid
996.0ms4999×body256invalid
775.0ms750×body4096valid
381.0ms226×body1024infinite
302.0ms522×body1024invalid
292.0ms371×body2048invalid
240.0ms1688×body256infinite
139.0ms348×body512infinite
87.0ms221×body512invalid
42.0ms12×body2048infinite
42.0msbody4096infinite
0.0msbody256unsamplable
Compiler

Compiled 130850 to 94478 computations (27.8% saved)

rewrite21.1s (1.5%)

Algorithm
173×batch-egg-rewrite
Rules
118672×pow1
112448×add-exp-log
112398×log1p-expm1-u
112348×expm1-log1p-u
108806×add-log-exp
Stop Event
unsound
170×node limit
Counts
1748 → 43104

preprocess13.0s (0.9%)

Algorithm
51×egg-herbie
Rules
66624×fma-def
26490×fma-neg
25742×div-sub
23584×sub-neg
22428×distribute-lft-neg-in
Stop Event
10×saturated
41×node limit
Compiler

Compiled 39238 to 19908 computations (49.3% saved)

series12.9s (0.9%)

Counts
1748 → 39587
Calls

10452 calls:

TimeVariablePointExpression
151.0ms
x-scale
@inf
(*.f64 (/.f64 (pow.f64 (*.f64 x-scale y-scale) 2) (*.f64 a (*.f64 (neg.f64 a) (*.f64 b b)))) (/.f64 (sqrt.f64 (*.f64 b (*.f64 (*.f64 (*.f64 b (neg.f64 a)) (/.f64 (*.f64 8 a) (/.f64 (pow.f64 (*.f64 x-scale y-scale) 2) (*.f64 a (*.f64 (neg.f64 a) (*.f64 b b)))))) (+.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) (*.f64 y-scale y-scale)) (+.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) (*.f64 x-scale x-scale)) (hypot.f64 (-.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) (*.f64 x-scale x-scale)) (/.f64 (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) (*.f64 y-scale y-scale))) (/.f64 (*.f64 (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64))) (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) (/.f64 (*.f64 x-scale y-scale) (*.f64 2 (fma.f64 a (neg.f64 a) (*.f64 b b))))))))))) -4))
106.0ms
phi2
@-inf
(log.f64 (+.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (cos.f64 phi1)))
90.0ms
b
@inf
(log.f64 (sqrt.f64 (+.f64 (exp.f64 b) (exp.f64 a))))
83.0ms
a
@inf
(log.f64 (+.f64 (exp.f64 a) (exp.f64 b)))
60.0ms
angle
@0
(/.f64 (neg.f64 (sqrt.f64 (*.f64 (*.f64 (*.f64 2 (/.f64 (*.f64 4 (*.f64 (*.f64 b a) (*.f64 b (neg.f64 a)))) (pow.f64 (*.f64 x-scale y-scale) 2))) (*.f64 (*.f64 b a) (*.f64 b (neg.f64 a)))) (+.f64 (+.f64 (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) x-scale) x-scale) (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) y-scale) y-scale)) (sqrt.f64 (+.f64 (pow.f64 (-.f64 (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) x-scale) x-scale) (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) y-scale) y-scale)) 2) (pow.f64 (/.f64 (/.f64 (*.f64 (*.f64 (*.f64 2 (-.f64 (pow.f64 b 2) (pow.f64 a 2))) (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) x-scale) y-scale) 2))))))) (/.f64 (*.f64 4 (*.f64 (*.f64 b a) (*.f64 b (neg.f64 a)))) (pow.f64 (*.f64 x-scale y-scale) 2)))

end29.0ms (0%)

Profiling

Loading profile data...