Herbie run

Date:Wednesday, July 17th, 2024
Commit:c34c16ee on main
Hostname:nightly with Racket 8.11.1
Seed:2024199
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: 19.3min)

soundness3.8min (19.8%)

Memory
76.6MiB live, 43 209.2MiB allocated
Rules
2 126 860×accelerator-lowering-fma.f32
2 126 860×accelerator-lowering-fma.f64
1 078 294×*-lowering-*.f32
1 078 294×*-lowering-*.f64
618 678×+-lowering-+.f32
Stop Event
250×iter limit
231×node limit
35×fuel
20×done
unsound
saturated
Compiler

Compiled 35 424 to 15 786 computations (55.4% saved)

simplify3.3min (17%)

Memory
-520.6MiB live, 198 908.3MiB allocated
Algorithm
445×egg-herbie
Rules
3 699 348×accelerator-lowering-fma.f32
3 699 348×accelerator-lowering-fma.f64
1 335 440×*-lowering-*.f32
1 335 440×*-lowering-*.f64
916 420×+-lowering-+.f32
Stop Event
390×iter limit
274×node limit
171×saturated
Counts
48 072 → 48 072

localize2.7min (14.2%)

Memory
-82.2MiB live, 54 006.6MiB allocated
Samples
57.4s4 105×1valid
30.3s1 846×2valid
10.5s39 260×0valid
1.3s3 923×0invalid
783.0ms355×3valid
672.0ms125×4exit
623.0ms91×5exit
219.0ms254×2exit
63.0ms42×1exit
55.0ms134×0exit
37.0ms41×4valid
Compiler

Compiled 67 017 to 5 868 computations (91.2% saved)

Precisions
Click to see histograms. Total time spent on operations: 1.4min
ival-mult: 15.8s (19.3% of total)
const: 15.6s (19% of total)
adjust: 15.3s (18.7% of total)
ival-add: 15.3s (18.6% of total)
ival-exp: 13.8s (16.8% of total)
ival-div: 1.6s (1.9% of total)
ival-log: 823.0ms (1% of total)
ival-asin: 617.0ms (0.8% of total)
ival-pow: 495.0ms (0.6% of total)
ival-acos: 405.0ms (0.5% of total)
ival-sqrt: 376.0ms (0.5% of total)
ival-sub: 337.0ms (0.4% of total)
ival-hypot: 246.0ms (0.3% of total)
ival-neg: 214.0ms (0.3% of total)
ival-cos: 192.0ms (0.2% of total)
ival-sin: 191.0ms (0.2% of total)
ival-copysign: 150.0ms (0.2% of total)
ival-cbrt: 94.0ms (0.1% of total)
ival-atan2: 93.0ms (0.1% of total)
ival-pow2: 75.0ms (0.1% of total)
exact: 75.0ms (0.1% of total)
ival-log1p: 74.0ms (0.1% of total)
ival-fabs: 69.0ms (0.1% of total)
ival-true: 42.0ms (0.1% of total)
ival-pi: 40.0ms (0% of total)
ival-assert: 21.0ms (0% of total)
ival-cosh: 11.0ms (0% of total)

series2.2min (11.6%)

Memory
-157.0MiB live, 26 744.5MiB allocated
Counts
2 625 → 48 408
Calls

9102 calls:

TimeVariablePointExpression
1.9min
x
@0
(/ (- (pow (+ (* (/ (+ 31853699/125000000 (/ (+ -8890523/31250000 (/ (+ 1421413741/1000000000 (/ (+ -1453152027/1000000000 (/ 1061405429/1000000000 (+ (* 3275911/10000000 (fabs x)) 1))) (+ (* 3275911/10000000 (fabs x)) 1))) (+ (* 3275911/10000000 (fabs x)) 1))) (+ (* 3275911/10000000 (fabs x)) 1))) (* (+ (* 3275911/10000000 (fabs x)) 1) (exp (* x x)))) (+ 1 (/ (+ 31853699/125000000 (/ (+ -8890523/31250000 (/ (+ 1421413741/1000000000 (/ (+ -1453152027/1000000000 (/ 1061405429/1000000000 (+ (* 3275911/10000000 (fabs x)) 1))) (+ (* 3275911/10000000 (fabs x)) 1))) (+ (* 3275911/10000000 (fabs x)) 1))) (+ (* 3275911/10000000 (fabs x)) 1))) (* (+ (* 3275911/10000000 (fabs x)) 1) (exp (* x x)))))) 1) -2) (* (/ (pow (/ (+ 31853699/125000000 (/ (+ -8890523/31250000 (/ (+ 1421413741/1000000000 (/ (+ -1453152027/1000000000 (/ 1061405429/1000000000 (+ (* 3275911/10000000 (fabs x)) 1))) (+ (* 3275911/10000000 (fabs x)) 1))) (+ (* 3275911/10000000 (fabs x)) 1))) (+ (* 3275911/10000000 (fabs x)) 1))) (* (+ (* 3275911/10000000 (fabs x)) 1) (exp (* x x)))) 3) (+ (* (/ (+ 31853699/125000000 (/ (+ -8890523/31250000 (/ (+ 1421413741/1000000000 (/ (+ -1453152027/1000000000 (/ 1061405429/1000000000 (+ (* 3275911/10000000 (fabs x)) 1))) (+ (* 3275911/10000000 (fabs x)) 1))) (+ (* 3275911/10000000 (fabs x)) 1))) (+ (* 3275911/10000000 (fabs x)) 1))) (* (+ (* 3275911/10000000 (fabs x)) 1) (exp (* x x)))) (+ 1 (/ (+ 31853699/125000000 (/ (+ -8890523/31250000 (/ (+ 1421413741/1000000000 (/ (+ -1453152027/1000000000 (/ 1061405429/1000000000 (+ (* 3275911/10000000 (fabs x)) 1))) (+ (* 3275911/10000000 (fabs x)) 1))) (+ (* 3275911/10000000 (fabs x)) 1))) (+ (* 3275911/10000000 (fabs x)) 1))) (* (+ (* 3275911/10000000 (fabs x)) 1) (exp (* x x)))))) 1)) (/ (pow (/ (+ 31853699/125000000 (/ (+ -8890523/31250000 (/ (+ 1421413741/1000000000 (/ (+ -1453152027/1000000000 (/ 1061405429/1000000000 (+ (* 3275911/10000000 (fabs x)) 1))) (+ (* 3275911/10000000 (fabs x)) 1))) (+ (* 3275911/10000000 (fabs x)) 1))) (+ (* 3275911/10000000 (fabs x)) 1))) (* (+ (* 3275911/10000000 (fabs x)) 1) (exp (* x x)))) 3) (+ (* (/ (+ 31853699/125000000 (/ (+ -8890523/31250000 (/ (+ 1421413741/1000000000 (/ (+ -1453152027/1000000000 (/ 1061405429/1000000000 (+ (* 3275911/10000000 (fabs x)) 1))) (+ (* 3275911/10000000 (fabs x)) 1))) (+ (* 3275911/10000000 (fabs x)) 1))) (+ (* 3275911/10000000 (fabs x)) 1))) (* (+ (* 3275911/10000000 (fabs x)) 1) (exp (* x x)))) (+ 1 (/ (+ 31853699/125000000 (/ (+ -8890523/31250000 (/ (+ 1421413741/1000000000 (/ (+ -1453152027/1000000000 (/ 1061405429/1000000000 (+ (* 3275911/10000000 (fabs x)) 1))) (+ (* 3275911/10000000 (fabs x)) 1))) (+ (* 3275911/10000000 (fabs x)) 1))) (+ (* 3275911/10000000 (fabs x)) 1))) (* (+ (* 3275911/10000000 (fabs x)) 1) (exp (* x x)))))) 1)))) (+ (/ 1 (+ (* (/ (+ 31853699/125000000 (/ (+ -8890523/31250000 (/ (+ 1421413741/1000000000 (/ (+ -1453152027/1000000000 (/ 1061405429/1000000000 (+ (* 3275911/10000000 (fabs x)) 1))) (+ (* 3275911/10000000 (fabs x)) 1))) (+ (* 3275911/10000000 (fabs x)) 1))) (+ (* 3275911/10000000 (fabs x)) 1))) (* (+ (* 3275911/10000000 (fabs x)) 1) (exp (* x x)))) (+ 1 (/ (+ 31853699/125000000 (/ (+ -8890523/31250000 (/ (+ 1421413741/1000000000 (/ (+ -1453152027/1000000000 (/ 1061405429/1000000000 (+ (* 3275911/10000000 (fabs x)) 1))) (+ (* 3275911/10000000 (fabs x)) 1))) (+ (* 3275911/10000000 (fabs x)) 1))) (+ (* 3275911/10000000 (fabs x)) 1))) (* (+ (* 3275911/10000000 (fabs x)) 1) (exp (* x x)))))) 1)) (/ (pow (/ (+ 31853699/125000000 (/ (+ -8890523/31250000 (/ (- (/ 2020417023103615081/1000000000000000000 (- 1421413741/1000000000 (/ (+ -1453152027/1000000000 (/ 1061405429/1000000000 (+ (* 3275911/10000000 (fabs x)) 1))) (+ (* 3275911/10000000 (fabs x)) 1)))) (/ (/ (* (+ -1453152027/1000000000 (/ 1061405429/1000000000 (+ (* 3275911/10000000 (fabs x)) 1))) (+ -1453152027/1000000000 (/ 1061405429/1000000000 (+ (* 3275911/10000000 (fabs x)) 1)))) (* (+ (* 3275911/10000000 (fabs x)) 1) (+ (* 3275911/10000000 (fabs x)) 1))) (- 1421413741/1000000000 (/ (+ -1453152027/1000000000 (/ 1061405429/1000000000 (+ (* 3275911/10000000 (fabs x)) 1))) (+ (* 3275911/10000000 (fabs x)) 1))))) (+ (* 3275911/10000000 (fabs x)) 1))) (+ (* 3275911/10000000 (fabs x)) 1))) (* (+ (* 3275911/10000000 (fabs x)) 1) (exp (* x x)))) 3) (+ (* (/ (+ 31853699/125000000 (/ (+ -8890523/31250000 (/ (+ 1421413741/1000000000 (/ (+ -1453152027/1000000000 (/ 1061405429/1000000000 (+ (* 3275911/10000000 (fabs x)) 1))) (+ (* 3275911/10000000 (fabs x)) 1))) (+ (* 3275911/10000000 (fabs x)) 1))) (+ (* 3275911/10000000 (fabs x)) 1))) (* (+ (* 3275911/10000000 (fabs x)) 1) (exp (* x x)))) (+ 1 (/ (+ 31853699/125000000 (/ (+ -8890523/31250000 (/ (+ 1421413741/1000000000 (/ (+ -1453152027/1000000000 (/ 1061405429/1000000000 (+ (* 3275911/10000000 (fabs x)) 1))) (+ (* 3275911/10000000 (fabs x)) 1))) (+ (* 3275911/10000000 (fabs x)) 1))) (+ (* 3275911/10000000 (fabs x)) 1))) (* (+ (* 3275911/10000000 (fabs x)) 1) (exp (* x x)))))) 1))))
3.6s
x
@0
(/ (- (pow (+ (* (/ (+ 31853699/125000000 (/ (+ -8890523/31250000 (/ (+ 1421413741/1000000000 (/ (+ -1453152027/1000000000 (/ 1061405429/1000000000 (+ (* 3275911/10000000 (fabs x)) 1))) (+ (* 3275911/10000000 (fabs x)) 1))) (+ (* 3275911/10000000 (fabs x)) 1))) (+ (* 3275911/10000000 (fabs x)) 1))) (* (+ (* 3275911/10000000 (fabs x)) 1) (exp (* x x)))) (+ 1 (/ (+ 31853699/125000000 (/ (+ -8890523/31250000 (/ (+ 1421413741/1000000000 (/ (+ -1453152027/1000000000 (/ 1061405429/1000000000 (+ (* 3275911/10000000 (fabs x)) 1))) (+ (* 3275911/10000000 (fabs x)) 1))) (+ (* 3275911/10000000 (fabs x)) 1))) (+ (* 3275911/10000000 (fabs x)) 1))) (* (+ (* 3275911/10000000 (fabs x)) 1) (exp (* x x)))))) 1) -2) (* (/ (pow (/ (+ 31853699/125000000 (/ (+ -8890523/31250000 (/ (+ 1421413741/1000000000 (/ (+ -1453152027/1000000000 (/ 1061405429/1000000000 (+ (* 3275911/10000000 (fabs x)) 1))) (+ (* 3275911/10000000 (fabs x)) 1))) (+ (* 3275911/10000000 (fabs x)) 1))) (+ (* 3275911/10000000 (fabs x)) 1))) (* (+ (* 3275911/10000000 (fabs x)) 1) (exp (* x x)))) 3) (+ (* (/ (+ 31853699/125000000 (/ (+ -8890523/31250000 (/ (+ 1421413741/1000000000 (/ (+ -1453152027/1000000000 (/ 1061405429/1000000000 (+ (* 3275911/10000000 (fabs x)) 1))) (+ (* 3275911/10000000 (fabs x)) 1))) (+ (* 3275911/10000000 (fabs x)) 1))) (+ (* 3275911/10000000 (fabs x)) 1))) (* (+ (* 3275911/10000000 (fabs x)) 1) (exp (* x x)))) (+ 1 (/ (+ 31853699/125000000 (/ (+ -8890523/31250000 (/ (+ 1421413741/1000000000 (/ (+ -1453152027/1000000000 (/ 1061405429/1000000000 (+ (* 3275911/10000000 (fabs x)) 1))) (+ (* 3275911/10000000 (fabs x)) 1))) (+ (* 3275911/10000000 (fabs x)) 1))) (+ (* 3275911/10000000 (fabs x)) 1))) (* (+ (* 3275911/10000000 (fabs x)) 1) (exp (* x x)))))) 1)) (/ (pow (/ (+ 31853699/125000000 (/ (+ -8890523/31250000 (/ (+ 1421413741/1000000000 (/ (+ -1453152027/1000000000 (/ 1061405429/1000000000 (+ (* 3275911/10000000 (fabs x)) 1))) (+ (* 3275911/10000000 (fabs x)) 1))) (+ (* 3275911/10000000 (fabs x)) 1))) (+ (* 3275911/10000000 (fabs x)) 1))) (* (+ (* 3275911/10000000 (fabs x)) 1) (exp (* x x)))) 3) (+ (* (/ (+ 31853699/125000000 (/ (+ -8890523/31250000 (/ (+ 1421413741/1000000000 (/ (+ -1453152027/1000000000 (/ 1061405429/1000000000 (+ (* 3275911/10000000 (fabs x)) 1))) (+ (* 3275911/10000000 (fabs x)) 1))) (+ (* 3275911/10000000 (fabs x)) 1))) (+ (* 3275911/10000000 (fabs x)) 1))) (* (+ (* 3275911/10000000 (fabs x)) 1) (exp (* x x)))) (+ 1 (/ (+ 31853699/125000000 (/ (+ -8890523/31250000 (/ (+ 1421413741/1000000000 (/ (+ -1453152027/1000000000 (/ 1061405429/1000000000 (+ (* 3275911/10000000 (fabs x)) 1))) (+ (* 3275911/10000000 (fabs x)) 1))) (+ (* 3275911/10000000 (fabs x)) 1))) (+ (* 3275911/10000000 (fabs x)) 1))) (* (+ (* 3275911/10000000 (fabs x)) 1) (exp (* x x)))))) 1)))) (+ (/ 1 (+ (* (/ (+ 31853699/125000000 (/ (+ -8890523/31250000 (/ (+ 1421413741/1000000000 (/ (+ -1453152027/1000000000 (/ 1061405429/1000000000 (+ (* 3275911/10000000 (fabs x)) 1))) (+ (* 3275911/10000000 (fabs x)) 1))) (+ (* 3275911/10000000 (fabs x)) 1))) (+ (* 3275911/10000000 (fabs x)) 1))) (* (+ (* 3275911/10000000 (fabs x)) 1) (exp (* x x)))) (+ 1 (/ (+ 31853699/125000000 (/ (+ -8890523/31250000 (/ (+ 1421413741/1000000000 (/ (+ -1453152027/1000000000 (/ 1061405429/1000000000 (+ (* 3275911/10000000 (fabs x)) 1))) (+ (* 3275911/10000000 (fabs x)) 1))) (+ (* 3275911/10000000 (fabs x)) 1))) (+ (* 3275911/10000000 (fabs x)) 1))) (* (+ (* 3275911/10000000 (fabs x)) 1) (exp (* x x)))))) 1)) (/ (pow (/ (+ 31853699/125000000 (/ (+ -8890523/31250000 (/ (+ 1421413741/1000000000 (/ (+ -1453152027/1000000000 (/ 1061405429/1000000000 (+ (* 3275911/10000000 (fabs x)) 1))) (+ (* 3275911/10000000 (fabs x)) 1))) (+ (* 3275911/10000000 (fabs x)) 1))) (+ (* 3275911/10000000 (fabs x)) 1))) (* (+ (* 3275911/10000000 (fabs x)) 1) (exp (* x x)))) 3) (+ (* (/ (+ 31853699/125000000 (/ (+ -8890523/31250000 (/ (+ 1421413741/1000000000 (/ (+ -1453152027/1000000000 (/ 1061405429/1000000000 (+ (* 3275911/10000000 (fabs x)) 1))) (+ (* 3275911/10000000 (fabs x)) 1))) (+ (* 3275911/10000000 (fabs x)) 1))) (+ (* 3275911/10000000 (fabs x)) 1))) (* (+ (* 3275911/10000000 (fabs x)) 1) (exp (* x x)))) (+ 1 (/ (+ 31853699/125000000 (/ (+ -8890523/31250000 (/ (+ 1421413741/1000000000 (/ (+ -1453152027/1000000000 (/ 1061405429/1000000000 (+ (* 3275911/10000000 (fabs x)) 1))) (+ (* 3275911/10000000 (fabs x)) 1))) (+ (* 3275911/10000000 (fabs x)) 1))) (+ (* 3275911/10000000 (fabs x)) 1))) (* (+ (* 3275911/10000000 (fabs x)) 1) (exp (* x x)))))) 1))))
1.3s
x
@0
(+ (* (/ 1 (+ (pow (* (/ (+ 31853699/125000000 (/ (+ -8890523/31250000 (/ (+ 1421413741/1000000000 (/ (+ -1453152027/1000000000 (/ 1061405429/1000000000 (+ (* 3275911/10000000 (fabs x)) 1))) (+ (* 3275911/10000000 (fabs x)) 1))) (+ (* 3275911/10000000 (fabs x)) 1))) (+ (* 3275911/10000000 (fabs x)) 1))) (* (+ (* 3275911/10000000 (fabs x)) 1) (exp (* x x)))) (+ 1 (/ (+ 31853699/125000000 (/ (+ -8890523/31250000 (/ (+ 1421413741/1000000000 (/ (+ -1453152027/1000000000 (/ 1061405429/1000000000 (+ (* 3275911/10000000 (fabs x)) 1))) (+ (* 3275911/10000000 (fabs x)) 1))) (+ (* 3275911/10000000 (fabs x)) 1))) (+ (* 3275911/10000000 (fabs x)) 1))) (* (+ (* 3275911/10000000 (fabs x)) 1) (exp (* x x)))))) 2) -1)) (+ (* (/ (+ 31853699/125000000 (/ (+ -8890523/31250000 (/ (+ 1421413741/1000000000 (/ (+ -1453152027/1000000000 (/ 1061405429/1000000000 (+ (* 3275911/10000000 (fabs x)) 1))) (+ (* 3275911/10000000 (fabs x)) 1))) (+ (* 3275911/10000000 (fabs x)) 1))) (+ (* 3275911/10000000 (fabs x)) 1))) (* (+ (* 3275911/10000000 (fabs x)) 1) (exp (* x x)))) (+ 1 (/ (+ 31853699/125000000 (/ (+ -8890523/31250000 (/ (+ 1421413741/1000000000 (/ (+ -1453152027/1000000000 (/ 1061405429/1000000000 (+ (* 3275911/10000000 (fabs x)) 1))) (+ (* 3275911/10000000 (fabs x)) 1))) (+ (* 3275911/10000000 (fabs x)) 1))) (+ (* 3275911/10000000 (fabs x)) 1))) (* (+ (* 3275911/10000000 (fabs x)) 1) (exp (* x x)))))) -1)) (neg (/ (pow (/ (+ 31853699/125000000 (/ (+ -8890523/31250000 (/ (+ 1421413741/1000000000 (/ (+ -1453152027/1000000000 (/ 1061405429/1000000000 (+ (* 3275911/10000000 (fabs x)) 1))) (+ (* 3275911/10000000 (fabs x)) 1))) (+ (* 3275911/10000000 (fabs x)) 1))) (+ (* 3275911/10000000 (fabs x)) 1))) (* (+ (* 3275911/10000000 (fabs x)) 1) (exp (* x x)))) 3) (+ (* (/ (+ 31853699/125000000 (/ (+ -8890523/31250000 (/ (+ 1421413741/1000000000 (/ (+ -1453152027/1000000000 (/ 1061405429/1000000000 (+ (* 3275911/10000000 (fabs x)) 1))) (+ (* 3275911/10000000 (fabs x)) 1))) (+ (* 3275911/10000000 (fabs x)) 1))) (+ (* 3275911/10000000 (fabs x)) 1))) (* (+ (* 3275911/10000000 (fabs x)) 1) (exp (* x x)))) (+ 1 (/ (+ 31853699/125000000 (/ (+ -8890523/31250000 (/ (+ 1421413741/1000000000 (/ (+ -1453152027/1000000000 (/ 1061405429/1000000000 (+ (* 3275911/10000000 (fabs x)) 1))) (+ (* 3275911/10000000 (fabs x)) 1))) (+ (* 3275911/10000000 (fabs x)) 1))) (+ (* 3275911/10000000 (fabs x)) 1))) (* (+ (* 3275911/10000000 (fabs x)) 1) (exp (* x x)))))) 1))))
912.0ms
x
@0
(- (pow (+ (* (/ (+ 31853699/125000000 (/ (+ -8890523/31250000 (/ (+ 1421413741/1000000000 (/ (+ -1453152027/1000000000 (/ 1061405429/1000000000 (+ (* 3275911/10000000 (fabs x)) 1))) (+ (* 3275911/10000000 (fabs x)) 1))) (+ (* 3275911/10000000 (fabs x)) 1))) (+ (* 3275911/10000000 (fabs x)) 1))) (* (+ (* 3275911/10000000 (fabs x)) 1) (exp (* x x)))) (+ 1 (/ (+ 31853699/125000000 (/ (+ -8890523/31250000 (/ (+ 1421413741/1000000000 (/ (+ -1453152027/1000000000 (/ 1061405429/1000000000 (+ (* 3275911/10000000 (fabs x)) 1))) (+ (* 3275911/10000000 (fabs x)) 1))) (+ (* 3275911/10000000 (fabs x)) 1))) (+ (* 3275911/10000000 (fabs x)) 1))) (* (+ (* 3275911/10000000 (fabs x)) 1) (exp (* x x)))))) 1) -2) (* (/ (pow (/ (+ 31853699/125000000 (/ (+ -8890523/31250000 (/ (+ 1421413741/1000000000 (/ (+ -1453152027/1000000000 (/ 1061405429/1000000000 (+ (* 3275911/10000000 (fabs x)) 1))) (+ (* 3275911/10000000 (fabs x)) 1))) (+ (* 3275911/10000000 (fabs x)) 1))) (+ (* 3275911/10000000 (fabs x)) 1))) (* (+ (* 3275911/10000000 (fabs x)) 1) (exp (* x x)))) 3) (+ (* (/ (+ 31853699/125000000 (/ (+ -8890523/31250000 (/ (+ 1421413741/1000000000 (/ (+ -1453152027/1000000000 (/ 1061405429/1000000000 (+ (* 3275911/10000000 (fabs x)) 1))) (+ (* 3275911/10000000 (fabs x)) 1))) (+ (* 3275911/10000000 (fabs x)) 1))) (+ (* 3275911/10000000 (fabs x)) 1))) (* (+ (* 3275911/10000000 (fabs x)) 1) (exp (* x x)))) (+ 1 (/ (+ 31853699/125000000 (/ (+ -8890523/31250000 (/ (+ 1421413741/1000000000 (/ (+ -1453152027/1000000000 (/ 1061405429/1000000000 (+ (* 3275911/10000000 (fabs x)) 1))) (+ (* 3275911/10000000 (fabs x)) 1))) (+ (* 3275911/10000000 (fabs x)) 1))) (+ (* 3275911/10000000 (fabs x)) 1))) (* (+ (* 3275911/10000000 (fabs x)) 1) (exp (* x x)))))) 1)) (/ (pow (/ (+ 31853699/125000000 (/ (+ -8890523/31250000 (/ (+ 1421413741/1000000000 (/ (+ -1453152027/1000000000 (/ 1061405429/1000000000 (+ (* 3275911/10000000 (fabs x)) 1))) (+ (* 3275911/10000000 (fabs x)) 1))) (+ (* 3275911/10000000 (fabs x)) 1))) (+ (* 3275911/10000000 (fabs x)) 1))) (* (+ (* 3275911/10000000 (fabs x)) 1) (exp (* x x)))) 3) (+ (* (/ (+ 31853699/125000000 (/ (+ -8890523/31250000 (/ (+ 1421413741/1000000000 (/ (+ -1453152027/1000000000 (/ 1061405429/1000000000 (+ (* 3275911/10000000 (fabs x)) 1))) (+ (* 3275911/10000000 (fabs x)) 1))) (+ (* 3275911/10000000 (fabs x)) 1))) (+ (* 3275911/10000000 (fabs x)) 1))) (* (+ (* 3275911/10000000 (fabs x)) 1) (exp (* x x)))) (+ 1 (/ (+ 31853699/125000000 (/ (+ -8890523/31250000 (/ (+ 1421413741/1000000000 (/ (+ -1453152027/1000000000 (/ 1061405429/1000000000 (+ (* 3275911/10000000 (fabs x)) 1))) (+ (* 3275911/10000000 (fabs x)) 1))) (+ (* 3275911/10000000 (fabs x)) 1))) (+ (* 3275911/10000000 (fabs x)) 1))) (* (+ (* 3275911/10000000 (fabs x)) 1) (exp (* x x)))))) 1))))
610.0ms
x
@0
(/ (- (* 1 (+ (* (/ (+ 31853699/125000000 (/ (+ -8890523/31250000 (/ (+ 1421413741/1000000000 (/ (+ -1453152027/1000000000 (/ 1061405429/1000000000 (+ (* 3275911/10000000 (fabs x)) 1))) (+ (* 3275911/10000000 (fabs x)) 1))) (+ (* 3275911/10000000 (fabs x)) 1))) (+ (* 3275911/10000000 (fabs x)) 1))) (* (+ (* 3275911/10000000 (fabs x)) 1) (exp (* x x)))) (+ 1 (/ (+ 31853699/125000000 (/ (+ -8890523/31250000 (/ (+ 1421413741/1000000000 (/ (+ -1453152027/1000000000 (/ 1061405429/1000000000 (+ (* 3275911/10000000 (fabs x)) 1))) (+ (* 3275911/10000000 (fabs x)) 1))) (+ (* 3275911/10000000 (fabs x)) 1))) (+ (* 3275911/10000000 (fabs x)) 1))) (* (+ (* 3275911/10000000 (fabs x)) 1) (exp (* x x)))))) 1)) (* (+ (* (/ (+ 31853699/125000000 (/ (+ -8890523/31250000 (/ (+ 1421413741/1000000000 (/ (+ -1453152027/1000000000 (/ 1061405429/1000000000 (+ (* 3275911/10000000 (fabs x)) 1))) (+ (* 3275911/10000000 (fabs x)) 1))) (+ (* 3275911/10000000 (fabs x)) 1))) (+ (* 3275911/10000000 (fabs x)) 1))) (* (+ (* 3275911/10000000 (fabs x)) 1) (exp (* x x)))) (+ 1 (/ (+ 31853699/125000000 (/ (+ -8890523/31250000 (/ (+ 1421413741/1000000000 (/ (+ -1453152027/1000000000 (/ 1061405429/1000000000 (+ (* 3275911/10000000 (fabs x)) 1))) (+ (* 3275911/10000000 (fabs x)) 1))) (+ (* 3275911/10000000 (fabs x)) 1))) (+ (* 3275911/10000000 (fabs x)) 1))) (* (+ (* 3275911/10000000 (fabs x)) 1) (exp (* x x)))))) 1) (pow (/ (+ 31853699/125000000 (/ (+ -8890523/31250000 (/ (+ 1421413741/1000000000 (/ (+ -1453152027/1000000000 (/ 1061405429/1000000000 (+ (* 3275911/10000000 (fabs x)) 1))) (+ (* 3275911/10000000 (fabs x)) 1))) (+ (* 3275911/10000000 (fabs x)) 1))) (+ (* 3275911/10000000 (fabs x)) 1))) (* (+ (* 3275911/10000000 (fabs x)) 1) (exp (* x x)))) 3))) (* (+ (* (/ (+ 31853699/125000000 (/ (+ -8890523/31250000 (/ (+ 1421413741/1000000000 (/ (+ -1453152027/1000000000 (/ 1061405429/1000000000 (+ (* 3275911/10000000 (fabs x)) 1))) (+ (* 3275911/10000000 (fabs x)) 1))) (+ (* 3275911/10000000 (fabs x)) 1))) (+ (* 3275911/10000000 (fabs x)) 1))) (* (+ (* 3275911/10000000 (fabs x)) 1) (exp (* x x)))) (+ 1 (/ (+ 31853699/125000000 (/ (+ -8890523/31250000 (/ (+ 1421413741/1000000000 (/ (+ -1453152027/1000000000 (/ 1061405429/1000000000 (+ (* 3275911/10000000 (fabs x)) 1))) (+ (* 3275911/10000000 (fabs x)) 1))) (+ (* 3275911/10000000 (fabs x)) 1))) (+ (* 3275911/10000000 (fabs x)) 1))) (* (+ (* 3275911/10000000 (fabs x)) 1) (exp (* x x)))))) 1) (+ (* (/ (+ 31853699/125000000 (/ (+ -8890523/31250000 (/ (+ 1421413741/1000000000 (/ (+ -1453152027/1000000000 (/ 1061405429/1000000000 (+ (* 3275911/10000000 (fabs x)) 1))) (+ (* 3275911/10000000 (fabs x)) 1))) (+ (* 3275911/10000000 (fabs x)) 1))) (+ (* 3275911/10000000 (fabs x)) 1))) (* (+ (* 3275911/10000000 (fabs x)) 1) (exp (* x x)))) (+ 1 (/ (+ 31853699/125000000 (/ (+ -8890523/31250000 (/ (+ 1421413741/1000000000 (/ (+ -1453152027/1000000000 (/ 1061405429/1000000000 (+ (* 3275911/10000000 (fabs x)) 1))) (+ (* 3275911/10000000 (fabs x)) 1))) (+ (* 3275911/10000000 (fabs x)) 1))) (+ (* 3275911/10000000 (fabs x)) 1))) (* (+ (* 3275911/10000000 (fabs x)) 1) (exp (* x x)))))) 1)))

sample2.2min (11.2%)

Memory
905.1MiB live, 142 960.5MiB allocated
Samples
1.2min438 548×0valid
22.9s4 017×5exit
7.3s22 402×1valid
3.7s8 222×2valid
919.0ms8 555×0exit
477.0ms1 277×3valid
104.0ms155×4valid
73.0ms514×0invalid
Precisions
Click to see histograms. Total time spent on operations: 1.3min
ival-mult: 22.9s (30.4% of total)
ival-sin: 20.3s (26.9% of total)
ival-add: 5.1s (6.8% of total)
ival-div: 3.8s (5% of total)
const: 3.8s (5% of total)
ival-exp: 3.0s (4% of total)
ival-hypot: 2.6s (3.5% of total)
ival-sub: 2.2s (2.9% of total)
ival-log: 2.1s (2.8% of total)
ival-cos: 1.4s (1.9% of total)
adjust: 1.3s (1.7% of total)
ival-asin: 1.2s (1.6% of total)
ival-sqrt: 1.0s (1.3% of total)
ival-atan2: 874.0ms (1.2% of total)
ival-pi: 606.0ms (0.8% of total)
ival-<=: 398.0ms (0.5% of total)
exact: 357.0ms (0.5% of total)
ival-pow: 345.0ms (0.5% of total)
ival->: 338.0ms (0.4% of total)
ival-atanh: 302.0ms (0.4% of total)
ival-acosh: 275.0ms (0.4% of total)
ival-true: 262.0ms (0.3% of total)
ival-neg: 224.0ms (0.3% of total)
ival-asinh: 218.0ms (0.3% of total)
ival-assert: 186.0ms (0.2% of total)
ival-fabs: 184.0ms (0.2% of total)
ival->=: 80.0ms (0.1% of total)
ival-and: 74.0ms (0.1% of total)
Bogosity

rewrite1.4min (7.4%)

Memory
259.2MiB live, 127 757.1MiB allocated
Algorithm
195×batch-egg-rewrite
Rules
983 130×accelerator-lowering-fma.f32
983 130×accelerator-lowering-fma.f64
759 106×*-lowering-*.f32
759 106×*-lowering-*.f64
596 270×/-lowering-/.f64
Stop Event
219×iter limit
185×node limit
saturated
unsound
Counts
2 597 → 138 247

eval1.1min (5.8%)

Memory
1 310.4MiB live, 78 451.2MiB allocated
Compiler

Compiled 13 173 081 to 562 515 computations (95.7% saved)

prune1.1min (5.8%)

Memory
-599.5MiB live, 65 071.0MiB allocated
Counts
237 631 → 3 554
Compiler

Compiled 193 781 to 83 344 computations (57% saved)

bsearch28.1s (2.4%)

Memory
127.2MiB live, 9 291.2MiB allocated
Algorithm
297×left-value
229×binary-search
Stop Event
220×narrow-enough
predicate-same
Samples
15.1s25 115×0valid
880.0ms2 446×1valid
94.0ms363×2valid
53.0ms108×3valid
Compiler

Compiled 59 345 to 38 298 computations (35.5% saved)

Precisions
Click to see histograms. Total time spent on operations: 3.3s
ival-mult: 1.4s (42.5% of total)
ival-hypot: 352.0ms (10.6% of total)
ival-add: 326.0ms (9.8% of total)
const: 200.0ms (6% of total)
ival-log: 199.0ms (6% of total)
ival-sub: 165.0ms (5% of total)
ival-sin: 158.0ms (4.8% of total)
ival-div: 136.0ms (4.1% of total)
ival-exp: 98.0ms (3% of total)
ival-atan2: 83.0ms (2.5% of total)
adjust: 78.0ms (2.4% of total)
ival-sqrt: 40.0ms (1.2% of total)
ival-cos: 28.0ms (0.8% of total)
ival-true: 19.0ms (0.6% of total)
ival-assert: 10.0ms (0.3% of total)
exact: 10.0ms (0.3% of total)
ival-copysign: 1.0ms (0% of total)
ival-fabs: 1.0ms (0% of total)
ival-neg: 0.0ms (0% of total)

preprocess21.3s (1.8%)

Memory
39.7MiB live, 24 727.9MiB allocated
Algorithm
114×egg-herbie
Rules
299 290×accelerator-lowering-fma.f32
299 290×accelerator-lowering-fma.f64
81 926×*-lowering-*.f32
81 926×*-lowering-*.f64
55 342×+-lowering-+.f32
Stop Event
77×saturated
57×iter limit
37×node limit
Compiler

Compiled 40 332 to 11 028 computations (72.7% saved)

regimes15.6s (1.4%)

Memory
-272.7MiB live, 24 192.2MiB allocated
Counts
11 469 → 1 021
Calls

128 calls:

1.0s
im
920.0ms
re
823.0ms
x
803.0ms
y.re
508.0ms
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (-.f64 (exp.f64 (-.f64 #s(literal 0 binary64) im)) (exp.f64 im)))
Compiler

Compiled 17 151 to 10 036 computations (41.5% saved)

explain15.6s (1.4%)

Memory
-459.5MiB live, 21 797.6MiB allocated
Explanations
Click to see full explanations table
OperatorSubexpressionExplanationCount
sqrt.f64#foflow-rescue11450
-.f64#fcancellation7332
/.f64#fo/o6170
/.f64#fo/n2090
sin.f64#fsensitivity1950
sqrt.f32#foflow-rescue1930
cos.f64(cos.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.im) (*.f64 (atan2.f64 x.im x.re) y.re)))sensitivity1891
+.f64#fcancellation1630
sqrt.f64#fuflow-rescue1520
log.f64(log.f64 (+.f64 (fabs.f64 x) (sqrt.f64 (+.f64 (*.f64 x x) #s(literal 1 binary64)))))sensitivity1220
log.f32(log.f32 (+.f32 (fabs.f32 x) (sqrt.f32 (+.f32 (*.f32 x x) #s(literal 1 binary32)))))sensitivity1130
/.f64#fn/o1030
-.f64#fnan-rescue870
/.f64#fu/u670
+.f64#fnan-rescue640
*.f64#fn*u610
/.f64#fu/n370
*.f64#fn*o280
/.f64#fn/u90
exp.f64#fsensitivity60
*.f64(*.f64 (*.f64 (sqrt.f64 (*.f64 (PI.f64) #s(literal 2 binary64))) (pow.f64 (+.f64 (+.f64 (-.f64 (-.f64 #s(literal 1 binary64) z) #s(literal 1 binary64)) #s(literal 7 binary64)) #s(literal 1/2 binary64)) (+.f64 (-.f64 (-.f64 #s(literal 1 binary64) z) #s(literal 1 binary64)) #s(literal 1/2 binary64)))) (exp.f64 (neg.f64 (+.f64 (+.f64 (-.f64 (-.f64 #s(literal 1 binary64) z) #s(literal 1 binary64)) #s(literal 7 binary64)) #s(literal 1/2 binary64)))))o*u40
(*.f64 (sqrt.f64 (*.f64 (PI.f64) #s(literal 2 binary64))) (pow.f64 (+.f64 (+.f64 (-.f64 (-.f64 #s(literal 1 binary64) z) #s(literal 1 binary64)) #s(literal 7 binary64)) #s(literal 1/2 binary64)) (+.f64 (-.f64 (-.f64 #s(literal 1 binary64) z) #s(literal 1 binary64)) #s(literal 1/2 binary64))))overflow5
(pow.f64 (+.f64 (+.f64 (-.f64 (-.f64 #s(literal 1 binary64) z) #s(literal 1 binary64)) #s(literal 7 binary64)) #s(literal 1/2 binary64)) (+.f64 (-.f64 (-.f64 #s(literal 1 binary64) z) #s(literal 1 binary64)) #s(literal 1/2 binary64)))overflow5
(exp.f64 (neg.f64 (+.f64 (+.f64 (-.f64 (-.f64 #s(literal 1 binary64) z) #s(literal 1 binary64)) #s(literal 7 binary64)) #s(literal 1/2 binary64))))underflow4
log.f32#foflow-rescue20
cos.f64(cos.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.im) (*.f64 (atan2.f64 x.im x.re) y.re)))oflow-rescue10
(+.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))overflow1
(*.f64 x.re x.re)overflow58
(+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))overflow103
(*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.im)overflow1
(*.f64 x.im x.im)overflow59
sin.f64(sin.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.im) (*.f64 (atan2.f64 x.im x.re) y.re)))oflow-rescue10
(+.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))overflow1
(*.f64 x.re x.re)overflow58
(+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))overflow103
(*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.im)overflow1
(*.f64 x.im x.im)overflow59
sin.f64(sin.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.im) (*.f64 (atan2.f64 x.im x.re) y.re)))cancellation10
Confusion
Predicted +Predicted -
+351019
-22510838
Precision
0.9397590361445783
Recall
0.9946160385378294
Confusion?
Predicted +Predicted MaybePredicted -
+3510217
-225010838
Precision?
0.9397912764249398
Recall?
0.995182771323321
Freqs
test
numberfreq
010857
13173
2557
35
Total Confusion?
Predicted +Predicted MaybePredicted -
+3500
-2020
Precision?
0.9459459459459459
Recall?
1.0
Samples
3.2s25 826×0valid
1.3s2 414×1valid
794.0ms816×2valid
59.0ms106×3valid
14.0ms20×4valid
1.0ms5exit
Compiler

Compiled 15 052 to 2 968 computations (80.3% saved)

Precisions
Click to see histograms. Total time spent on operations: 4.0s
ival-mult: 912.0ms (22.7% of total)
ival-add: 481.0ms (12% of total)
ival-exp: 476.0ms (11.8% of total)
adjust: 467.0ms (11.6% of total)
ival-div: 375.0ms (9.3% of total)
const: 231.0ms (5.7% of total)
ival-log: 202.0ms (5% of total)
ival-hypot: 152.0ms (3.8% of total)
ival-sub: 118.0ms (2.9% of total)
ival-sin: 91.0ms (2.3% of total)
ival-atan2: 90.0ms (2.2% of total)
ival-asin: 78.0ms (1.9% of total)
ival-sqrt: 62.0ms (1.5% of total)
ival-cos: 55.0ms (1.4% of total)
ival-copysign: 50.0ms (1.2% of total)
ival-fabs: 45.0ms (1.1% of total)
ival-pow: 28.0ms (0.7% of total)
ival-true: 25.0ms (0.6% of total)
ival-neg: 24.0ms (0.6% of total)
exact: 21.0ms (0.5% of total)
ival-pi: 17.0ms (0.4% of total)
ival-assert: 12.0ms (0.3% of total)
ival-log1p: 7.0ms (0.2% of total)

analyze2.4s (0.2%)

Memory
88.7MiB live, 3 937.1MiB allocated
Algorithm
58×search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%86.3%13.7%0%0%0%0
55.4%47.8%38.5%13.7%0%0%0%1
65.9%55.7%28.9%13.7%0%1.7%0%2
71.2%58.4%23.6%13.7%0%4.3%0%3
77.4%62%18.1%13.7%0%6.2%0%4
83.5%66.8%13.2%13.7%0%6.3%0%5
85.8%68.3%11.3%13.7%0%6.6%0%6
88.3%70.3%9.4%13.7%0%6.6%0%7
89.9%71.5%8%13.7%0%6.8%0%8
91.1%72.5%7.1%13.7%0%6.8%0%9
92.6%73.6%5.9%13.7%0%6.8%0%10
94%74.7%4.8%13.7%0%6.8%0%11
94.5%75.1%4.4%13.7%0%6.9%0%12
Compiler

Compiled 1 498 to 821 computations (45.2% saved)

end0.0ms (0%)

Memory
1.2MiB live, 1.2MiB allocated

Profiling

Loading profile data...