2isqrt (example 3.6)

Time bar (total: 4.9s)

analyze15.0ms (0.3%)

Memory
4.5MiB live, 4.5MiB allocated
Algorithm
search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%25%75%0%0%0%0
100%25%0%75%0%0%0%1
Compiler

Compiled 26 to 19 computations (26.9% saved)

sample4.8s (97.4%)

Memory
53.1MiB live, 1 564.2MiB allocated
Samples
1.5s6 475×1valid-baseline
734.0ms6 475×1valid-rival
634.0ms6 475×1valid-sollya
479.0ms1 630×2valid-baseline
269.0ms1 630×2valid-rival
194.0ms1 630×2valid-sollya
11.0ms150×0valid-baseline
9.0ms150×0valid-rival
8.0ms150×0valid-sollya
Precisions
Click to see Rival histograms. Total time spent on operations: 807.0ms
ival-sqrt: 269.0ms (33.4% of total)
ival-div: 237.0ms (29.4% of total)
adjust: 104.0ms (12.9% of total)
ival-sub: 98.0ms (12.2% of total)
ival-add: 81.0ms (10% of total)
...in/eval/compile.rkt:76:19: 7.0ms (0.9% of total)
ival-true: 7.0ms (0.9% of total)
ival-assert: 3.0ms (0.4% of total)
Precisions
Click to see Base histograms. Total time spent on operations: 1.3s
ival-sqrt: 483.0ms (37.4% of total)
ival-div: 453.0ms (35.1% of total)
ival-add: 170.0ms (13.2% of total)
ival-sub: 148.0ms (11.5% of total)
const: 36.0ms (2.8% of total)
Bogosity

preprocess67.0ms (1.4%)

Memory
5.4MiB live, 20.7MiB allocated
Algorithm
egg-herbie
Rules
97×fma-define
86×fmm-def
41×sub-neg
28×associate--r+
28×neg-mul-1
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
021176
137168
272164
3129164
4204164
5316164
6419164
7509164
8586164
9640164
10683164
11691164
12693164
Stop Event
saturated
Calls
Call 1
Inputs
(-.f64 (/.f64 #s(literal 1 binary64) (sqrt.f64 x)) (/.f64 #s(literal 1 binary64) (sqrt.f64 (+.f64 x #s(literal 1 binary64)))))
(-.f64 (/.f64 #s(literal 1 binary64) (sqrt.f64 x)) (/.f64 #s(literal 1 binary64) (sqrt.f64 (+.f64 x #s(literal 1 binary64)))))
(-.f64 (/.f64 #s(literal 1 binary64) (sqrt.f64 (neg.f64 x))) (/.f64 #s(literal 1 binary64) (sqrt.f64 (+.f64 (neg.f64 x) #s(literal 1 binary64)))))
(neg.f64 (-.f64 (/.f64 #s(literal 1 binary64) (sqrt.f64 (neg.f64 x))) (/.f64 #s(literal 1 binary64) (sqrt.f64 (+.f64 (neg.f64 x) #s(literal 1 binary64))))))
Outputs
(-.f64 (/.f64 #s(literal 1 binary64) (sqrt.f64 x)) (/.f64 #s(literal 1 binary64) (sqrt.f64 (+.f64 x #s(literal 1 binary64)))))
(-.f64 (/.f64 #s(literal 1 binary64) (sqrt.f64 x)) (/.f64 #s(literal 1 binary64) (sqrt.f64 (+.f64 #s(literal 1 binary64) x))))
(+.f64 (/.f64 #s(literal 1 binary64) (sqrt.f64 x)) (/.f64 #s(literal -1 binary64) (sqrt.f64 (+.f64 #s(literal 1 binary64) x))))
(-.f64 (/.f64 #s(literal 1 binary64) (sqrt.f64 x)) (/.f64 #s(literal 1 binary64) (sqrt.f64 (+.f64 x #s(literal 1 binary64)))))
(-.f64 (/.f64 #s(literal 1 binary64) (sqrt.f64 x)) (/.f64 #s(literal 1 binary64) (sqrt.f64 (+.f64 #s(literal 1 binary64) x))))
(+.f64 (/.f64 #s(literal 1 binary64) (sqrt.f64 x)) (/.f64 #s(literal -1 binary64) (sqrt.f64 (+.f64 #s(literal 1 binary64) x))))
(-.f64 (/.f64 #s(literal 1 binary64) (sqrt.f64 (neg.f64 x))) (/.f64 #s(literal 1 binary64) (sqrt.f64 (+.f64 (neg.f64 x) #s(literal 1 binary64)))))
(-.f64 (/.f64 #s(literal 1 binary64) (sqrt.f64 (neg.f64 x))) (/.f64 #s(literal 1 binary64) (sqrt.f64 (+.f64 #s(literal 1 binary64) (neg.f64 x)))))
(+.f64 (/.f64 #s(literal 1 binary64) (sqrt.f64 (neg.f64 x))) (/.f64 #s(literal -1 binary64) (sqrt.f64 (-.f64 #s(literal 1 binary64) x))))
(-.f64 (/.f64 #s(literal 1 binary64) (sqrt.f64 (neg.f64 x))) (/.f64 #s(literal 1 binary64) (sqrt.f64 (-.f64 #s(literal 1 binary64) x))))
(neg.f64 (-.f64 (/.f64 #s(literal 1 binary64) (sqrt.f64 (neg.f64 x))) (/.f64 #s(literal 1 binary64) (sqrt.f64 (+.f64 (neg.f64 x) #s(literal 1 binary64))))))
(neg.f64 (-.f64 (/.f64 #s(literal 1 binary64) (sqrt.f64 (neg.f64 x))) (/.f64 #s(literal 1 binary64) (sqrt.f64 (+.f64 #s(literal 1 binary64) (neg.f64 x))))))
(neg.f64 (+.f64 (/.f64 #s(literal 1 binary64) (sqrt.f64 (neg.f64 x))) (/.f64 #s(literal -1 binary64) (sqrt.f64 (-.f64 #s(literal 1 binary64) x)))))
(+.f64 (/.f64 #s(literal 1 binary64) (sqrt.f64 (-.f64 #s(literal 1 binary64) x))) (/.f64 #s(literal -1 binary64) (sqrt.f64 (neg.f64 x))))
Compiler

Compiled 12 to 8 computations (33.3% saved)

eval0.0ms (0%)

Memory
0.3MiB live, 0.3MiB allocated
Compiler

Compiled 1 to 1 computations (0% saved)

prune1.0ms (0%)

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

Compiled 24 to 16 computations (33.3% saved)

simplify3.0ms (0.1%)

Memory
0.6MiB live, 0.6MiB allocated
Algorithm
egg-herbie
Rules
neg-mul-1
unsub-neg
+-commutative
sub-neg
*-rgt-identity
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01339
12139
22939
33539
44239
55439
67039
Stop Event
saturated
Calls
Call 1
Inputs
(-.f64 (/.f64 #s(literal 1 binary64) (sqrt.f64 x)) (/.f64 #s(literal 1 binary64) (sqrt.f64 (+.f64 x #s(literal 1 binary64)))))
Outputs
(-.f64 (/.f64 #s(literal 1 binary64) (sqrt.f64 x)) (/.f64 #s(literal 1 binary64) (sqrt.f64 (+.f64 x #s(literal 1 binary64)))))
(-.f64 (/.f64 #s(literal 1 binary64) (sqrt.f64 x)) (/.f64 #s(literal 1 binary64) (sqrt.f64 (+.f64 #s(literal 1 binary64) x))))
(+.f64 (/.f64 #s(literal 1 binary64) (sqrt.f64 x)) (/.f64 #s(literal -1 binary64) (sqrt.f64 (+.f64 #s(literal 1 binary64) x))))

soundness0.0ms (0%)

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

Compiled 12 to 9 computations (25% saved)

preprocess40.0ms (0.8%)

Memory
-7.5MiB live, 41.8MiB allocated
Compiler

Compiled 100 to 66 computations (34% saved)

end0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated

Profiling

Loading profile data...