sqrtexp (problem 3.4.4)

Time bar (total: 10.1s)

analyze125.0ms (1.2%)

Memory
-14.1MiB live, 49.5MiB allocated
Algorithm
search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%100%0%0%0%0%0
0%0%100%0%0%0%0%1
0%0%100%0%0%0%0%2
50%50%50%0%0%0%0%3
50%50%50%0%0%0%0%4
50%50%50%0%0%0%0%5
50%50%50%0%0%0%0%6
53.1%53.1%46.9%0%0%0%0%7
53.1%53.1%46.9%0%0%0%0%8
53.9%53.9%46.1%0%0%0%0%9
54.1%54.1%45.9%0%0%0%0%10
54.2%54.2%45.8%0%0%0%0%11
54.2%54.2%45.7%0%0%0%0%12
Compiler

Compiled 28 to 23 computations (17.9% saved)

sample9.9s (97.7%)

Memory
21.4MiB live, 2 334.0MiB allocated
Samples
1.3s2 625×1168valid-baseline
907.0ms2 625×1168valid-rival
511.0ms1 561×584valid-baseline
277.0ms1 561×584valid-rival
222.0ms2 878×73valid-baseline
193.0ms2 878×73valid-rival
173.0ms771×292valid-baseline
166.0ms2 878×73valid-sollya
141.0ms2 625×1168valid-sollya
111.0ms771×292valid-rival
82.0ms1 561×584valid-sollya
61.0ms399×146valid-baseline
52.0ms399×146valid-rival
46.0ms771×292valid-sollya
25.0ms399×146valid-sollya
2.0ms22×73valid-rival+baseline-inf
Precisions
Click to see Rival histograms. Total time spent on operations: 1.5s
ival-exp: 838.0ms (57.2% of total)
ival-sub: 172.0ms (11.7% of total)
ival-mult: 123.0ms (8.4% of total)
ival-sqrt: 122.0ms (8.3% of total)
ival-div: 95.0ms (6.5% of total)
adjust: 85.0ms (5.8% of total)
...in/eval/compile.rkt:110:19: 14.0ms (1% of total)
ival-true: 11.0ms (0.8% of total)
ival-assert: 5.0ms (0.3% of total)
Precisions
Click to see Base histograms. Total time spent on operations: 1.8s
ival-exp: 886.0ms (50.4% of total)
ival-sub: 302.0ms (17.2% of total)
ival-mult: 199.0ms (11.3% of total)
ival-sqrt: 188.0ms (10.7% of total)
ival-div: 132.0ms (7.5% of total)
const: 50.0ms (2.8% of total)
Bogosity

preprocess87.0ms (0.9%)

Memory
-12.9MiB live, 19.5MiB allocated
Algorithm
egg-herbie
Rules
612×div-sub
326×associate--r+
307×associate-+l-
283×fma-define
258×associate--l+
Iterations

Useful iterations: 5 (0.0ms)

IterNodesCost
024144
156136
282136
3128136
422196
540184
680384
7296184
Stop Event
node limit
Calls
Call 1
Inputs
(sqrt.f64 (/.f64 (-.f64 (exp.f64 (*.f64 #s(literal 2 binary64) x)) #s(literal 1 binary64)) (-.f64 (exp.f64 x) #s(literal 1 binary64))))
(sqrt.f64 (/.f64 (-.f64 (exp.f64 (*.f64 #s(literal 2 binary64) x)) #s(literal 1 binary64)) (-.f64 (exp.f64 x) #s(literal 1 binary64))))
(sqrt.f64 (/.f64 (-.f64 (exp.f64 (*.f64 #s(literal 2 binary64) (neg.f64 x))) #s(literal 1 binary64)) (-.f64 (exp.f64 (neg.f64 x)) #s(literal 1 binary64))))
(neg.f64 (sqrt.f64 (/.f64 (-.f64 (exp.f64 (*.f64 #s(literal 2 binary64) (neg.f64 x))) #s(literal 1 binary64)) (-.f64 (exp.f64 (neg.f64 x)) #s(literal 1 binary64)))))
Outputs
(sqrt.f64 (/.f64 (-.f64 (exp.f64 (*.f64 #s(literal 2 binary64) x)) #s(literal 1 binary64)) (-.f64 (exp.f64 x) #s(literal 1 binary64))))
(sqrt.f64 (/.f64 (expm1.f64 (*.f64 #s(literal 2 binary64) x)) (expm1.f64 x)))
(sqrt.f64 (*.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (exp.f64 x))))
(sqrt.f64 (+.f64 #s(literal 1 binary64) (exp.f64 x)))
(sqrt.f64 (/.f64 (-.f64 (exp.f64 (*.f64 #s(literal 2 binary64) x)) #s(literal 1 binary64)) (-.f64 (exp.f64 x) #s(literal 1 binary64))))
(sqrt.f64 (/.f64 (expm1.f64 (*.f64 #s(literal 2 binary64) x)) (expm1.f64 x)))
(sqrt.f64 (*.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (exp.f64 x))))
(sqrt.f64 (+.f64 #s(literal 1 binary64) (exp.f64 x)))
(sqrt.f64 (/.f64 (-.f64 (exp.f64 (*.f64 #s(literal 2 binary64) (neg.f64 x))) #s(literal 1 binary64)) (-.f64 (exp.f64 (neg.f64 x)) #s(literal 1 binary64))))
(sqrt.f64 (/.f64 (expm1.f64 (*.f64 #s(literal 2 binary64) (neg.f64 x))) (expm1.f64 (neg.f64 x))))
(sqrt.f64 (/.f64 (expm1.f64 (*.f64 x #s(literal -2 binary64))) (expm1.f64 (neg.f64 x))))
(sqrt.f64 (+.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 x))))
(neg.f64 (sqrt.f64 (/.f64 (-.f64 (exp.f64 (*.f64 #s(literal 2 binary64) (neg.f64 x))) #s(literal 1 binary64)) (-.f64 (exp.f64 (neg.f64 x)) #s(literal 1 binary64)))))
(neg.f64 (sqrt.f64 (/.f64 (expm1.f64 (*.f64 #s(literal 2 binary64) (neg.f64 x))) (expm1.f64 (neg.f64 x)))))
(neg.f64 (sqrt.f64 (/.f64 (expm1.f64 (*.f64 x #s(literal -2 binary64))) (expm1.f64 (neg.f64 x)))))
(neg.f64 (sqrt.f64 (+.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 x)))))
Compiler

Compiled 13 to 10 computations (23.1% saved)

eval0.0ms (0%)

Memory
0.3MiB live, 0.3MiB allocated
Compiler

Compiled 1 to 1 computations (0% saved)

prune3.0ms (0%)

Memory
0.9MiB live, 0.9MiB allocated
Alt Table
Click to see full alt table
StatusAccuracyProgram
35.5%
(sqrt.f64 (/.f64 (-.f64 (exp.f64 (*.f64 #s(literal 2 binary64) x)) #s(literal 1 binary64)) (-.f64 (exp.f64 x) #s(literal 1 binary64))))
Compiler

Compiled 26 to 20 computations (23.1% saved)

simplify2.0ms (0%)

Memory
0.5MiB live, 0.5MiB allocated
Algorithm
egg-herbie
Rules
unsub-neg
sub-neg
1-exp
+-commutative
*-commutative
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01543
12443
22943
33243
43543
53943
Stop Event
saturated
Calls
Call 1
Inputs
(sqrt.f64 (/.f64 (-.f64 (exp.f64 (*.f64 #s(literal 2 binary64) x)) #s(literal 1 binary64)) (-.f64 (exp.f64 x) #s(literal 1 binary64))))
Outputs
(sqrt.f64 (/.f64 (-.f64 (exp.f64 (*.f64 #s(literal 2 binary64) x)) #s(literal 1 binary64)) (-.f64 (exp.f64 x) #s(literal 1 binary64))))
(sqrt.f64 (/.f64 (+.f64 (exp.f64 (*.f64 #s(literal 2 binary64) x)) #s(literal -1 binary64)) (+.f64 (exp.f64 x) #s(literal -1 binary64))))

soundness0.0ms (0%)

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

Compiled 13 to 10 computations (23.1% saved)

preprocess16.0ms (0.2%)

Memory
5.1MiB live, 20.5MiB allocated
Compiler

Compiled 52 to 40 computations (23.1% saved)

end0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated

Profiling

Loading profile data...