Jmat.Real.erf

Time bar (total: 7.2s)

analyze20.0ms (0.3%)

Memory
-9.9MiB live, 6.0MiB allocated
Algorithm
search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%100%0%0%0%0%0
100%100%0%0%0%0%0%1
Compiler

Compiled 132 to 55 computations (58.3% saved)

sample7.1s (97.8%)

Memory
99.3MiB live, 2 120.7MiB allocated
Samples
1.6s4 088×146valid-baseline
1.4s4 088×146valid-rival
811.0ms4 167×73valid-baseline
775.0ms4 088×146valid-sollya
706.0ms4 167×73valid-rival
697.0ms4 167×73valid-sollya
0.0ms73valid-rival+sollya-real
Precisions
Click to see Rival histograms. Total time spent on operations: 1.9s
...in/eval/compile.rkt:111:19: 739.0ms (39.6% of total)
ival-mult: 452.0ms (24.2% of total)
ival-add: 246.0ms (13.2% of total)
adjust: 113.0ms (6.1% of total)
ival-div: 83.0ms (4.4% of total)
ival-exp: 80.0ms (4.3% of total)
ival-sub: 53.0ms (2.8% of total)
ival-fabs: 50.0ms (2.7% of total)
ival-neg: 34.0ms (1.8% of total)
ival-true: 7.0ms (0.4% of total)
...in/eval/compile.rkt:110:19: 4.0ms (0.2% of total)
ival-assert: 3.0ms (0.2% of total)
Precisions
Click to see Base histograms. Total time spent on operations: 2.1s
...ms/src/baseline.rkt:166:19: 885.0ms (42.4% of total)
ival-mult: 513.0ms (24.6% of total)
ival-add: 261.0ms (12.5% of total)
ival-div: 110.0ms (5.3% of total)
ival-neg: 90.0ms (4.3% of total)
ival-exp: 85.0ms (4.1% of total)
ival-fabs: 70.0ms (3.4% of total)
ival-sub: 60.0ms (2.9% of total)
const: 16.0ms (0.8% of total)
Bogosity

preprocess97.0ms (1.3%)

Memory
-10.2MiB live, 23.0MiB allocated
Algorithm
egg-herbie
Rules
439×fma-define
418×distribute-lft-in
402×distribute-rgt-in
382×fmm-def
368×distribute-lft-neg-in
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
051828
1210632
2508632
31294632
44776632
Stop Event
node limit
Calls
Call 1
Inputs
(-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 3275911/10000000 binary64) (fabs.f64 x)))) (+.f64 #s(literal 31853699/125000000 binary64) (*.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 3275911/10000000 binary64) (fabs.f64 x)))) (+.f64 #s(literal -8890523/31250000 binary64) (*.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 3275911/10000000 binary64) (fabs.f64 x)))) (+.f64 #s(literal 1421413741/1000000000 binary64) (*.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 3275911/10000000 binary64) (fabs.f64 x)))) (+.f64 #s(literal -1453152027/1000000000 binary64) (*.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 3275911/10000000 binary64) (fabs.f64 x)))) #s(literal 1061405429/1000000000 binary64)))))))))) (exp.f64 (neg.f64 (*.f64 (fabs.f64 x) (fabs.f64 x))))))
(-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 3275911/10000000 binary64) (fabs.f64 x)))) (+.f64 #s(literal 31853699/125000000 binary64) (*.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 3275911/10000000 binary64) (fabs.f64 x)))) (+.f64 #s(literal -8890523/31250000 binary64) (*.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 3275911/10000000 binary64) (fabs.f64 x)))) (+.f64 #s(literal 1421413741/1000000000 binary64) (*.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 3275911/10000000 binary64) (fabs.f64 x)))) (+.f64 #s(literal -1453152027/1000000000 binary64) (*.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 3275911/10000000 binary64) (fabs.f64 x)))) #s(literal 1061405429/1000000000 binary64)))))))))) (exp.f64 (neg.f64 (*.f64 (fabs.f64 x) (fabs.f64 x))))))
(-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 3275911/10000000 binary64) (fabs.f64 (neg.f64 x))))) (+.f64 #s(literal 31853699/125000000 binary64) (*.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 3275911/10000000 binary64) (fabs.f64 (neg.f64 x))))) (+.f64 #s(literal -8890523/31250000 binary64) (*.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 3275911/10000000 binary64) (fabs.f64 (neg.f64 x))))) (+.f64 #s(literal 1421413741/1000000000 binary64) (*.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 3275911/10000000 binary64) (fabs.f64 (neg.f64 x))))) (+.f64 #s(literal -1453152027/1000000000 binary64) (*.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 3275911/10000000 binary64) (fabs.f64 (neg.f64 x))))) #s(literal 1061405429/1000000000 binary64)))))))))) (exp.f64 (neg.f64 (*.f64 (fabs.f64 (neg.f64 x)) (fabs.f64 (neg.f64 x)))))))
(neg.f64 (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 3275911/10000000 binary64) (fabs.f64 (neg.f64 x))))) (+.f64 #s(literal 31853699/125000000 binary64) (*.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 3275911/10000000 binary64) (fabs.f64 (neg.f64 x))))) (+.f64 #s(literal -8890523/31250000 binary64) (*.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 3275911/10000000 binary64) (fabs.f64 (neg.f64 x))))) (+.f64 #s(literal 1421413741/1000000000 binary64) (*.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 3275911/10000000 binary64) (fabs.f64 (neg.f64 x))))) (+.f64 #s(literal -1453152027/1000000000 binary64) (*.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 3275911/10000000 binary64) (fabs.f64 (neg.f64 x))))) #s(literal 1061405429/1000000000 binary64)))))))))) (exp.f64 (neg.f64 (*.f64 (fabs.f64 (neg.f64 x)) (fabs.f64 (neg.f64 x))))))))
Outputs
(-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 3275911/10000000 binary64) (fabs.f64 x)))) (+.f64 #s(literal 31853699/125000000 binary64) (*.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 3275911/10000000 binary64) (fabs.f64 x)))) (+.f64 #s(literal -8890523/31250000 binary64) (*.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 3275911/10000000 binary64) (fabs.f64 x)))) (+.f64 #s(literal 1421413741/1000000000 binary64) (*.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 3275911/10000000 binary64) (fabs.f64 x)))) (+.f64 #s(literal -1453152027/1000000000 binary64) (*.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 3275911/10000000 binary64) (fabs.f64 x)))) #s(literal 1061405429/1000000000 binary64)))))))))) (exp.f64 (neg.f64 (*.f64 (fabs.f64 x) (fabs.f64 x))))))
(-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 3275911/10000000 binary64) (fabs.f64 x)))) (+.f64 #s(literal 31853699/125000000 binary64) (*.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 3275911/10000000 binary64) (fabs.f64 x)))) (+.f64 #s(literal -8890523/31250000 binary64) (*.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 3275911/10000000 binary64) (fabs.f64 x)))) (+.f64 #s(literal 1421413741/1000000000 binary64) (*.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 3275911/10000000 binary64) (fabs.f64 x)))) (+.f64 #s(literal -1453152027/1000000000 binary64) (/.f64 #s(literal 1061405429/1000000000 binary64) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 3275911/10000000 binary64) (fabs.f64 x)))))))))))) (exp.f64 (neg.f64 (*.f64 x x)))))
(-.f64 #s(literal 1 binary64) (/.f64 (/.f64 (+.f64 #s(literal 31853699/125000000 binary64) (/.f64 (+.f64 #s(literal -8890523/31250000 binary64) (/.f64 (+.f64 #s(literal 1421413741/1000000000 binary64) (/.f64 (+.f64 #s(literal -1453152027/1000000000 binary64) (/.f64 #s(literal 1061405429/1000000000 binary64) (fma.f64 #s(literal 3275911/10000000 binary64) (fabs.f64 x) #s(literal 1 binary64)))) (fma.f64 #s(literal 3275911/10000000 binary64) (fabs.f64 x) #s(literal 1 binary64)))) (fma.f64 #s(literal 3275911/10000000 binary64) (fabs.f64 x) #s(literal 1 binary64)))) (fma.f64 #s(literal 3275911/10000000 binary64) (fabs.f64 x) #s(literal 1 binary64)))) (fma.f64 #s(literal 3275911/10000000 binary64) (fabs.f64 x) #s(literal 1 binary64))) (pow.f64 (exp.f64 x) x)))
(-.f64 #s(literal 1 binary64) (/.f64 (+.f64 #s(literal 31853699/125000000 binary64) (/.f64 (+.f64 #s(literal -8890523/31250000 binary64) (/.f64 (+.f64 #s(literal 1421413741/1000000000 binary64) (/.f64 (+.f64 #s(literal -1453152027/1000000000 binary64) (/.f64 #s(literal 1061405429/1000000000 binary64) (fma.f64 #s(literal 3275911/10000000 binary64) (fabs.f64 x) #s(literal 1 binary64)))) (fma.f64 #s(literal 3275911/10000000 binary64) (fabs.f64 x) #s(literal 1 binary64)))) (fma.f64 #s(literal 3275911/10000000 binary64) (fabs.f64 x) #s(literal 1 binary64)))) (fma.f64 #s(literal 3275911/10000000 binary64) (fabs.f64 x) #s(literal 1 binary64)))) (*.f64 (pow.f64 (exp.f64 x) x) (fma.f64 #s(literal 3275911/10000000 binary64) (fabs.f64 x) #s(literal 1 binary64)))))
(fma.f64 (-.f64 #s(literal -31853699/125000000 binary64) (/.f64 (+.f64 #s(literal -8890523/31250000 binary64) (/.f64 (+.f64 #s(literal 1421413741/1000000000 binary64) (/.f64 (+.f64 #s(literal -1453152027/1000000000 binary64) (/.f64 #s(literal 1061405429/1000000000 binary64) (fma.f64 #s(literal 3275911/10000000 binary64) (fabs.f64 x) #s(literal 1 binary64)))) (fma.f64 #s(literal 3275911/10000000 binary64) (fabs.f64 x) #s(literal 1 binary64)))) (fma.f64 #s(literal 3275911/10000000 binary64) (fabs.f64 x) #s(literal 1 binary64)))) (fma.f64 #s(literal 3275911/10000000 binary64) (fabs.f64 x) #s(literal 1 binary64)))) (/.f64 (pow.f64 (exp.f64 x) (neg.f64 x)) (fma.f64 #s(literal 3275911/10000000 binary64) (fabs.f64 x) #s(literal 1 binary64))) #s(literal 1 binary64))
(-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 3275911/10000000 binary64) (fabs.f64 x)))) (+.f64 #s(literal 31853699/125000000 binary64) (*.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 3275911/10000000 binary64) (fabs.f64 x)))) (+.f64 #s(literal -8890523/31250000 binary64) (*.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 3275911/10000000 binary64) (fabs.f64 x)))) (+.f64 #s(literal 1421413741/1000000000 binary64) (*.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 3275911/10000000 binary64) (fabs.f64 x)))) (+.f64 #s(literal -1453152027/1000000000 binary64) (*.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 3275911/10000000 binary64) (fabs.f64 x)))) #s(literal 1061405429/1000000000 binary64)))))))))) (exp.f64 (neg.f64 (*.f64 (fabs.f64 x) (fabs.f64 x))))))
(-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 3275911/10000000 binary64) (fabs.f64 x)))) (+.f64 #s(literal 31853699/125000000 binary64) (*.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 3275911/10000000 binary64) (fabs.f64 x)))) (+.f64 #s(literal -8890523/31250000 binary64) (*.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 3275911/10000000 binary64) (fabs.f64 x)))) (+.f64 #s(literal 1421413741/1000000000 binary64) (*.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 3275911/10000000 binary64) (fabs.f64 x)))) (+.f64 #s(literal -1453152027/1000000000 binary64) (/.f64 #s(literal 1061405429/1000000000 binary64) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 3275911/10000000 binary64) (fabs.f64 x)))))))))))) (exp.f64 (neg.f64 (*.f64 x x)))))
(-.f64 #s(literal 1 binary64) (/.f64 (/.f64 (+.f64 #s(literal 31853699/125000000 binary64) (/.f64 (+.f64 #s(literal -8890523/31250000 binary64) (/.f64 (+.f64 #s(literal 1421413741/1000000000 binary64) (/.f64 (+.f64 #s(literal -1453152027/1000000000 binary64) (/.f64 #s(literal 1061405429/1000000000 binary64) (fma.f64 #s(literal 3275911/10000000 binary64) (fabs.f64 x) #s(literal 1 binary64)))) (fma.f64 #s(literal 3275911/10000000 binary64) (fabs.f64 x) #s(literal 1 binary64)))) (fma.f64 #s(literal 3275911/10000000 binary64) (fabs.f64 x) #s(literal 1 binary64)))) (fma.f64 #s(literal 3275911/10000000 binary64) (fabs.f64 x) #s(literal 1 binary64)))) (fma.f64 #s(literal 3275911/10000000 binary64) (fabs.f64 x) #s(literal 1 binary64))) (pow.f64 (exp.f64 x) x)))
(-.f64 #s(literal 1 binary64) (/.f64 (+.f64 #s(literal 31853699/125000000 binary64) (/.f64 (+.f64 #s(literal -8890523/31250000 binary64) (/.f64 (+.f64 #s(literal 1421413741/1000000000 binary64) (/.f64 (+.f64 #s(literal -1453152027/1000000000 binary64) (/.f64 #s(literal 1061405429/1000000000 binary64) (fma.f64 #s(literal 3275911/10000000 binary64) (fabs.f64 x) #s(literal 1 binary64)))) (fma.f64 #s(literal 3275911/10000000 binary64) (fabs.f64 x) #s(literal 1 binary64)))) (fma.f64 #s(literal 3275911/10000000 binary64) (fabs.f64 x) #s(literal 1 binary64)))) (fma.f64 #s(literal 3275911/10000000 binary64) (fabs.f64 x) #s(literal 1 binary64)))) (*.f64 (pow.f64 (exp.f64 x) x) (fma.f64 #s(literal 3275911/10000000 binary64) (fabs.f64 x) #s(literal 1 binary64)))))
(fma.f64 (-.f64 #s(literal -31853699/125000000 binary64) (/.f64 (+.f64 #s(literal -8890523/31250000 binary64) (/.f64 (+.f64 #s(literal 1421413741/1000000000 binary64) (/.f64 (+.f64 #s(literal -1453152027/1000000000 binary64) (/.f64 #s(literal 1061405429/1000000000 binary64) (fma.f64 #s(literal 3275911/10000000 binary64) (fabs.f64 x) #s(literal 1 binary64)))) (fma.f64 #s(literal 3275911/10000000 binary64) (fabs.f64 x) #s(literal 1 binary64)))) (fma.f64 #s(literal 3275911/10000000 binary64) (fabs.f64 x) #s(literal 1 binary64)))) (fma.f64 #s(literal 3275911/10000000 binary64) (fabs.f64 x) #s(literal 1 binary64)))) (/.f64 (pow.f64 (exp.f64 x) (neg.f64 x)) (fma.f64 #s(literal 3275911/10000000 binary64) (fabs.f64 x) #s(literal 1 binary64))) #s(literal 1 binary64))
(-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 3275911/10000000 binary64) (fabs.f64 (neg.f64 x))))) (+.f64 #s(literal 31853699/125000000 binary64) (*.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 3275911/10000000 binary64) (fabs.f64 (neg.f64 x))))) (+.f64 #s(literal -8890523/31250000 binary64) (*.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 3275911/10000000 binary64) (fabs.f64 (neg.f64 x))))) (+.f64 #s(literal 1421413741/1000000000 binary64) (*.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 3275911/10000000 binary64) (fabs.f64 (neg.f64 x))))) (+.f64 #s(literal -1453152027/1000000000 binary64) (*.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 3275911/10000000 binary64) (fabs.f64 (neg.f64 x))))) #s(literal 1061405429/1000000000 binary64)))))))))) (exp.f64 (neg.f64 (*.f64 (fabs.f64 (neg.f64 x)) (fabs.f64 (neg.f64 x)))))))
(-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 3275911/10000000 binary64) (fabs.f64 x)))) (+.f64 #s(literal 31853699/125000000 binary64) (*.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 3275911/10000000 binary64) (fabs.f64 x)))) (+.f64 #s(literal -8890523/31250000 binary64) (*.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 3275911/10000000 binary64) (fabs.f64 x)))) (+.f64 #s(literal 1421413741/1000000000 binary64) (*.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 3275911/10000000 binary64) (fabs.f64 x)))) (+.f64 #s(literal -1453152027/1000000000 binary64) (/.f64 #s(literal 1061405429/1000000000 binary64) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 3275911/10000000 binary64) (fabs.f64 x)))))))))))) (exp.f64 (neg.f64 (*.f64 x x)))))
(-.f64 #s(literal 1 binary64) (/.f64 (/.f64 (+.f64 #s(literal 31853699/125000000 binary64) (/.f64 (+.f64 #s(literal -8890523/31250000 binary64) (/.f64 (+.f64 #s(literal 1421413741/1000000000 binary64) (/.f64 (+.f64 #s(literal -1453152027/1000000000 binary64) (/.f64 #s(literal 1061405429/1000000000 binary64) (fma.f64 #s(literal 3275911/10000000 binary64) (fabs.f64 x) #s(literal 1 binary64)))) (fma.f64 #s(literal 3275911/10000000 binary64) (fabs.f64 x) #s(literal 1 binary64)))) (fma.f64 #s(literal 3275911/10000000 binary64) (fabs.f64 x) #s(literal 1 binary64)))) (fma.f64 #s(literal 3275911/10000000 binary64) (fabs.f64 x) #s(literal 1 binary64)))) (fma.f64 #s(literal 3275911/10000000 binary64) (fabs.f64 x) #s(literal 1 binary64))) (pow.f64 (exp.f64 x) x)))
(-.f64 #s(literal 1 binary64) (/.f64 (+.f64 #s(literal 31853699/125000000 binary64) (/.f64 (+.f64 #s(literal -8890523/31250000 binary64) (/.f64 (+.f64 #s(literal 1421413741/1000000000 binary64) (/.f64 (+.f64 #s(literal -1453152027/1000000000 binary64) (/.f64 #s(literal 1061405429/1000000000 binary64) (fma.f64 #s(literal 3275911/10000000 binary64) (fabs.f64 x) #s(literal 1 binary64)))) (fma.f64 #s(literal 3275911/10000000 binary64) (fabs.f64 x) #s(literal 1 binary64)))) (fma.f64 #s(literal 3275911/10000000 binary64) (fabs.f64 x) #s(literal 1 binary64)))) (fma.f64 #s(literal 3275911/10000000 binary64) (fabs.f64 x) #s(literal 1 binary64)))) (*.f64 (pow.f64 (exp.f64 x) x) (fma.f64 #s(literal 3275911/10000000 binary64) (fabs.f64 x) #s(literal 1 binary64)))))
(fma.f64 (-.f64 #s(literal -31853699/125000000 binary64) (/.f64 (+.f64 #s(literal -8890523/31250000 binary64) (/.f64 (+.f64 #s(literal 1421413741/1000000000 binary64) (/.f64 (+.f64 #s(literal -1453152027/1000000000 binary64) (/.f64 #s(literal 1061405429/1000000000 binary64) (fma.f64 #s(literal 3275911/10000000 binary64) (fabs.f64 x) #s(literal 1 binary64)))) (fma.f64 #s(literal 3275911/10000000 binary64) (fabs.f64 x) #s(literal 1 binary64)))) (fma.f64 #s(literal 3275911/10000000 binary64) (fabs.f64 x) #s(literal 1 binary64)))) (fma.f64 #s(literal 3275911/10000000 binary64) (fabs.f64 x) #s(literal 1 binary64)))) (/.f64 (pow.f64 (exp.f64 x) (neg.f64 x)) (fma.f64 #s(literal 3275911/10000000 binary64) (fabs.f64 x) #s(literal 1 binary64))) #s(literal 1 binary64))
(neg.f64 (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 3275911/10000000 binary64) (fabs.f64 (neg.f64 x))))) (+.f64 #s(literal 31853699/125000000 binary64) (*.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 3275911/10000000 binary64) (fabs.f64 (neg.f64 x))))) (+.f64 #s(literal -8890523/31250000 binary64) (*.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 3275911/10000000 binary64) (fabs.f64 (neg.f64 x))))) (+.f64 #s(literal 1421413741/1000000000 binary64) (*.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 3275911/10000000 binary64) (fabs.f64 (neg.f64 x))))) (+.f64 #s(literal -1453152027/1000000000 binary64) (*.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 3275911/10000000 binary64) (fabs.f64 (neg.f64 x))))) #s(literal 1061405429/1000000000 binary64)))))))))) (exp.f64 (neg.f64 (*.f64 (fabs.f64 (neg.f64 x)) (fabs.f64 (neg.f64 x))))))))
(neg.f64 (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 3275911/10000000 binary64) (fabs.f64 x)))) (+.f64 #s(literal 31853699/125000000 binary64) (*.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 3275911/10000000 binary64) (fabs.f64 x)))) (+.f64 #s(literal -8890523/31250000 binary64) (*.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 3275911/10000000 binary64) (fabs.f64 x)))) (+.f64 #s(literal 1421413741/1000000000 binary64) (*.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 3275911/10000000 binary64) (fabs.f64 x)))) (+.f64 #s(literal -1453152027/1000000000 binary64) (/.f64 #s(literal 1061405429/1000000000 binary64) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 3275911/10000000 binary64) (fabs.f64 x)))))))))))) (exp.f64 (neg.f64 (*.f64 x x))))))
(+.f64 #s(literal -1 binary64) (/.f64 (/.f64 (+.f64 #s(literal 31853699/125000000 binary64) (/.f64 (+.f64 #s(literal -8890523/31250000 binary64) (/.f64 (+.f64 #s(literal 1421413741/1000000000 binary64) (/.f64 (+.f64 #s(literal -1453152027/1000000000 binary64) (/.f64 #s(literal 1061405429/1000000000 binary64) (fma.f64 #s(literal 3275911/10000000 binary64) (fabs.f64 x) #s(literal 1 binary64)))) (fma.f64 #s(literal 3275911/10000000 binary64) (fabs.f64 x) #s(literal 1 binary64)))) (fma.f64 #s(literal 3275911/10000000 binary64) (fabs.f64 x) #s(literal 1 binary64)))) (fma.f64 #s(literal 3275911/10000000 binary64) (fabs.f64 x) #s(literal 1 binary64)))) (fma.f64 #s(literal 3275911/10000000 binary64) (fabs.f64 x) #s(literal 1 binary64))) (pow.f64 (exp.f64 x) x)))
(+.f64 (/.f64 (+.f64 #s(literal 31853699/125000000 binary64) (/.f64 (+.f64 #s(literal -8890523/31250000 binary64) (/.f64 (+.f64 #s(literal 1421413741/1000000000 binary64) (/.f64 (+.f64 #s(literal -1453152027/1000000000 binary64) (/.f64 #s(literal 1061405429/1000000000 binary64) (fma.f64 #s(literal 3275911/10000000 binary64) (fabs.f64 x) #s(literal 1 binary64)))) (fma.f64 #s(literal 3275911/10000000 binary64) (fabs.f64 x) #s(literal 1 binary64)))) (fma.f64 #s(literal 3275911/10000000 binary64) (fabs.f64 x) #s(literal 1 binary64)))) (fma.f64 #s(literal 3275911/10000000 binary64) (fabs.f64 x) #s(literal 1 binary64)))) (*.f64 (pow.f64 (exp.f64 x) x) (fma.f64 #s(literal 3275911/10000000 binary64) (fabs.f64 x) #s(literal 1 binary64)))) #s(literal -1 binary64))
(-.f64 #s(literal -1 binary64) (/.f64 (-.f64 #s(literal -31853699/125000000 binary64) (/.f64 (+.f64 #s(literal -8890523/31250000 binary64) (/.f64 (+.f64 #s(literal 1421413741/1000000000 binary64) (/.f64 (+.f64 #s(literal -1453152027/1000000000 binary64) (/.f64 #s(literal 1061405429/1000000000 binary64) (fma.f64 #s(literal 3275911/10000000 binary64) (fabs.f64 x) #s(literal 1 binary64)))) (fma.f64 #s(literal 3275911/10000000 binary64) (fabs.f64 x) #s(literal 1 binary64)))) (fma.f64 #s(literal 3275911/10000000 binary64) (fabs.f64 x) #s(literal 1 binary64)))) (fma.f64 #s(literal 3275911/10000000 binary64) (fabs.f64 x) #s(literal 1 binary64)))) (*.f64 (fma.f64 #s(literal 3275911/10000000 binary64) (fabs.f64 x) #s(literal 1 binary64)) (pow.f64 (exp.f64 x) x))))
(-.f64 #s(literal -1 binary64) (/.f64 (+.f64 #s(literal 31853699/125000000 binary64) (/.f64 (+.f64 #s(literal -8890523/31250000 binary64) (/.f64 (+.f64 #s(literal 1421413741/1000000000 binary64) (/.f64 (+.f64 #s(literal -1453152027/1000000000 binary64) (/.f64 #s(literal 1061405429/1000000000 binary64) (fma.f64 #s(literal 3275911/10000000 binary64) (fabs.f64 x) #s(literal 1 binary64)))) (fma.f64 #s(literal 3275911/10000000 binary64) (fabs.f64 x) #s(literal 1 binary64)))) (fma.f64 #s(literal 3275911/10000000 binary64) (fabs.f64 x) #s(literal 1 binary64)))) (fma.f64 #s(literal 3275911/10000000 binary64) (fabs.f64 x) #s(literal 1 binary64)))) (*.f64 (pow.f64 (exp.f64 x) x) (fma.f64 (fabs.f64 x) #s(literal -3275911/10000000 binary64) #s(literal -1 binary64)))))
Symmetry

(abs x)

Compiler

Compiled 65 to 26 computations (60% saved)

eval0.0ms (0%)

Memory
0.2MiB live, 0.2MiB allocated
Compiler

Compiled 1 to 1 computations (0% saved)

prune1.0ms (0%)

Memory
1.1MiB live, 1.1MiB allocated
Alt Table
Click to see full alt table
StatusAccuracyProgram
77.3%
(-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 3275911/10000000 binary64) (fabs.f64 x)))) (+.f64 #s(literal 31853699/125000000 binary64) (*.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 3275911/10000000 binary64) (fabs.f64 x)))) (+.f64 #s(literal -8890523/31250000 binary64) (*.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 3275911/10000000 binary64) (fabs.f64 x)))) (+.f64 #s(literal 1421413741/1000000000 binary64) (*.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 3275911/10000000 binary64) (fabs.f64 x)))) (+.f64 #s(literal -1453152027/1000000000 binary64) (*.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 3275911/10000000 binary64) (fabs.f64 x)))) #s(literal 1061405429/1000000000 binary64)))))))))) (exp.f64 (neg.f64 (*.f64 (fabs.f64 x) (fabs.f64 x))))))
Compiler

Compiled 130 to 52 computations (60% saved)

simplify18.0ms (0.3%)

Memory
3.9MiB live, 3.9MiB allocated
Algorithm
egg-herbie
Rules
61×neg-mul-1
60×unsub-neg
50×*-commutative
42×distribute-rgt-neg-in
37×distribute-lft-neg-in
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
031212
160212
284212
3107212
4136212
5168212
6239212
7345212
8388212
9420212
10453212
11477212
12503212
13515212
14516212
Stop Event
saturated
Calls
Call 1
Inputs
(-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 3275911/10000000 binary64) (fabs.f64 x)))) (+.f64 #s(literal 31853699/125000000 binary64) (*.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 3275911/10000000 binary64) (fabs.f64 x)))) (+.f64 #s(literal -8890523/31250000 binary64) (*.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 3275911/10000000 binary64) (fabs.f64 x)))) (+.f64 #s(literal 1421413741/1000000000 binary64) (*.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 3275911/10000000 binary64) (fabs.f64 x)))) (+.f64 #s(literal -1453152027/1000000000 binary64) (*.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 3275911/10000000 binary64) (fabs.f64 x)))) #s(literal 1061405429/1000000000 binary64)))))))))) (exp.f64 (neg.f64 (*.f64 (fabs.f64 x) (fabs.f64 x))))))
Outputs
(-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 3275911/10000000 binary64) (fabs.f64 x)))) (+.f64 #s(literal 31853699/125000000 binary64) (*.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 3275911/10000000 binary64) (fabs.f64 x)))) (+.f64 #s(literal -8890523/31250000 binary64) (*.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 3275911/10000000 binary64) (fabs.f64 x)))) (+.f64 #s(literal 1421413741/1000000000 binary64) (*.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 3275911/10000000 binary64) (fabs.f64 x)))) (+.f64 #s(literal -1453152027/1000000000 binary64) (*.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 3275911/10000000 binary64) (fabs.f64 x)))) #s(literal 1061405429/1000000000 binary64)))))))))) (exp.f64 (neg.f64 (*.f64 (fabs.f64 x) (fabs.f64 x))))))
(-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 3275911/10000000 binary64) (fabs.f64 x)))) (+.f64 #s(literal 31853699/125000000 binary64) (*.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 3275911/10000000 binary64) (fabs.f64 x)))) (+.f64 #s(literal -8890523/31250000 binary64) (*.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 3275911/10000000 binary64) (fabs.f64 x)))) (+.f64 #s(literal 1421413741/1000000000 binary64) (*.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 3275911/10000000 binary64) (fabs.f64 x)))) (+.f64 #s(literal -1453152027/1000000000 binary64) (*.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 3275911/10000000 binary64) (fabs.f64 x)))) #s(literal 1061405429/1000000000 binary64)))))))))) (exp.f64 (neg.f64 (*.f64 x x)))))
(-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 3275911/10000000 binary64) (fabs.f64 x)))) (+.f64 #s(literal 31853699/125000000 binary64) (*.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 3275911/10000000 binary64) (fabs.f64 x)))) (+.f64 #s(literal -8890523/31250000 binary64) (*.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 3275911/10000000 binary64) (fabs.f64 x)))) (+.f64 #s(literal 1421413741/1000000000 binary64) (*.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 3275911/10000000 binary64) (fabs.f64 x)))) (+.f64 #s(literal -1453152027/1000000000 binary64) (*.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 3275911/10000000 binary64) (fabs.f64 x)))) #s(literal 1061405429/1000000000 binary64)))))))))) (exp.f64 (*.f64 x (neg.f64 x)))))

soundness0.0ms (0%)

Memory
0.4MiB live, 0.4MiB allocated
Stop Event
fuel
Compiler

Compiled 63 to 26 computations (58.7% saved)

preprocess24.0ms (0.3%)

Memory
-4.8MiB live, 26.5MiB allocated
Remove

(abs x)

Compiler

Compiled 508 to 208 computations (59.1% saved)

end0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated

Profiling

Loading profile data...