Toniolo and Linder, Equation (7)

Time bar (total: 5.4s)

analyze853.0ms (15.7%)

Algorithm
search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%99.9%0.1%0%0%0%0
0%0%99.9%0.1%0%0%0%1
0%0%99.9%0.1%0%0%0%2
0%0%99.9%0.1%0%0%0%3
0%0%99.9%0.1%0%0%0%4
0%0%99.9%0.1%0%0%0%5
0%0%99.9%0.1%0%0%0%6
0%0%99.9%0.1%0%0%0%7
0%0%74.9%0.1%0%25%0%8
4.2%3.1%71.8%0.1%0%25%0%9
6.3%4.7%70.2%0.1%0%25%0%10
11.3%7%55.4%0.1%0%37.4%0%11
16.9%10.5%51.9%0.1%0%37.4%0%12
Compiler

Compiled 31 to 19 computations (38.7% saved)

Precisions
Click to see histograms. Total time spent on operations: 675.0ms
ival-sqrt: 274.0ms (40.6% of total)
ival-add: 249.0ms (36.9% of total)
ival-mult: 101.0ms (15% of total)
ival-sub: 24.0ms (3.6% of total)
ival-div: 23.0ms (3.4% of total)
const: 4.0ms (0.6% of total)
backward-pass: 1.0ms (0.1% of total)

sample3.9s (71.4%)

Results
811.0ms5302×0valid
699.0ms2216×1valid
480.0ms2678×0invalid
306.0ms1151×1invalid
265.0ms738×2valid
189.0ms489×2invalid
Precisions
Click to see histograms. Total time spent on operations: 2.0s
ival-mult: 865.0ms (44% of total)
ival-sqrt: 300.0ms (15.3% of total)
ival-div: 238.0ms (12.1% of total)
ival-add: 213.0ms (10.8% of total)
ival-sub: 200.0ms (10.2% of total)
backward-pass: 123.0ms (6.3% of total)
const: 28.0ms (1.4% of total)
Bogosity

preprocess131.0ms (2.4%)

Algorithm
egg-herbie
Rules
502×distribute-lft-in
493×fmm-def
435×distribute-rgt-in
310×div-sub
309×distribute-lft-neg-out
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
0781172
12561160
27401156
325661156
478271156
Stop Event
node limit
Calls
Call 1
Inputs
(/.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) t) (sqrt.f64 (-.f64 (*.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (-.f64 x #s(literal 1 binary64))) (+.f64 (*.f64 l l) (*.f64 #s(literal 2 binary64) (*.f64 t t)))) (*.f64 l l))))
(/.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) t) (sqrt.f64 (-.f64 (*.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (-.f64 x #s(literal 1 binary64))) (+.f64 (*.f64 l l) (*.f64 #s(literal 2 binary64) (*.f64 t t)))) (*.f64 l l))))
(/.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) t) (sqrt.f64 (-.f64 (*.f64 (/.f64 (+.f64 (neg.f64 x) #s(literal 1 binary64)) (-.f64 (neg.f64 x) #s(literal 1 binary64))) (+.f64 (*.f64 l l) (*.f64 #s(literal 2 binary64) (*.f64 t t)))) (*.f64 l l))))
(/.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) t) (sqrt.f64 (-.f64 (*.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (-.f64 x #s(literal 1 binary64))) (+.f64 (*.f64 (neg.f64 l) (neg.f64 l)) (*.f64 #s(literal 2 binary64) (*.f64 t t)))) (*.f64 (neg.f64 l) (neg.f64 l)))))
(/.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (neg.f64 t)) (sqrt.f64 (-.f64 (*.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (-.f64 x #s(literal 1 binary64))) (+.f64 (*.f64 l l) (*.f64 #s(literal 2 binary64) (*.f64 (neg.f64 t) (neg.f64 t))))) (*.f64 l l))))
(neg.f64 (/.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) t) (sqrt.f64 (-.f64 (*.f64 (/.f64 (+.f64 (neg.f64 x) #s(literal 1 binary64)) (-.f64 (neg.f64 x) #s(literal 1 binary64))) (+.f64 (*.f64 l l) (*.f64 #s(literal 2 binary64) (*.f64 t t)))) (*.f64 l l)))))
(neg.f64 (/.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) t) (sqrt.f64 (-.f64 (*.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (-.f64 x #s(literal 1 binary64))) (+.f64 (*.f64 (neg.f64 l) (neg.f64 l)) (*.f64 #s(literal 2 binary64) (*.f64 t t)))) (*.f64 (neg.f64 l) (neg.f64 l))))))
(neg.f64 (/.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (neg.f64 t)) (sqrt.f64 (-.f64 (*.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (-.f64 x #s(literal 1 binary64))) (+.f64 (*.f64 l l) (*.f64 #s(literal 2 binary64) (*.f64 (neg.f64 t) (neg.f64 t))))) (*.f64 l l)))))
(/.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) t) (sqrt.f64 (-.f64 (*.f64 (/.f64 (+.f64 l #s(literal 1 binary64)) (-.f64 l #s(literal 1 binary64))) (+.f64 (*.f64 x x) (*.f64 #s(literal 2 binary64) (*.f64 t t)))) (*.f64 x x))))
(/.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) x) (sqrt.f64 (-.f64 (*.f64 (/.f64 (+.f64 t #s(literal 1 binary64)) (-.f64 t #s(literal 1 binary64))) (+.f64 (*.f64 l l) (*.f64 #s(literal 2 binary64) (*.f64 x x)))) (*.f64 l l))))
(/.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) l) (sqrt.f64 (-.f64 (*.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (-.f64 x #s(literal 1 binary64))) (+.f64 (*.f64 t t) (*.f64 #s(literal 2 binary64) (*.f64 l l)))) (*.f64 t t))))
Outputs
(/.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) t) (sqrt.f64 (-.f64 (*.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (-.f64 x #s(literal 1 binary64))) (+.f64 (*.f64 l l) (*.f64 #s(literal 2 binary64) (*.f64 t t)))) (*.f64 l l))))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (/.f64 t (sqrt.f64 (-.f64 (*.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (+.f64 x #s(literal -1 binary64))) (fma.f64 l l (*.f64 #s(literal 2 binary64) (*.f64 t t)))) (*.f64 l l)))))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (/.f64 t (sqrt.f64 (-.f64 (*.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (+.f64 x #s(literal -1 binary64))) (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l))) (*.f64 l l)))))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (/.f64 t (sqrt.f64 (fma.f64 (+.f64 x #s(literal 1 binary64)) (/.f64 (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l)) (+.f64 x #s(literal -1 binary64))) (neg.f64 (*.f64 l l))))))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (/.f64 t (sqrt.f64 (fma.f64 (+.f64 x #s(literal 1 binary64)) (/.f64 (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l)) (+.f64 x #s(literal -1 binary64))) (*.f64 l (neg.f64 l))))))
(/.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) t) (sqrt.f64 (-.f64 (*.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (-.f64 x #s(literal 1 binary64))) (+.f64 (*.f64 l l) (*.f64 #s(literal 2 binary64) (*.f64 t t)))) (*.f64 l l))))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (/.f64 t (sqrt.f64 (-.f64 (*.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (+.f64 x #s(literal -1 binary64))) (fma.f64 l l (*.f64 #s(literal 2 binary64) (*.f64 t t)))) (*.f64 l l)))))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (/.f64 t (sqrt.f64 (-.f64 (*.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (+.f64 x #s(literal -1 binary64))) (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l))) (*.f64 l l)))))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (/.f64 t (sqrt.f64 (fma.f64 (+.f64 x #s(literal 1 binary64)) (/.f64 (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l)) (+.f64 x #s(literal -1 binary64))) (neg.f64 (*.f64 l l))))))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (/.f64 t (sqrt.f64 (fma.f64 (+.f64 x #s(literal 1 binary64)) (/.f64 (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l)) (+.f64 x #s(literal -1 binary64))) (*.f64 l (neg.f64 l))))))
(/.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) t) (sqrt.f64 (-.f64 (*.f64 (/.f64 (+.f64 (neg.f64 x) #s(literal 1 binary64)) (-.f64 (neg.f64 x) #s(literal 1 binary64))) (+.f64 (*.f64 l l) (*.f64 #s(literal 2 binary64) (*.f64 t t)))) (*.f64 l l))))
(/.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) t) (sqrt.f64 (fma.f64 (/.f64 (+.f64 #s(literal 1 binary64) (neg.f64 x)) (+.f64 (neg.f64 x) #s(literal -1 binary64))) (fma.f64 l l (*.f64 #s(literal 2 binary64) (*.f64 t t))) (neg.f64 (*.f64 l l)))))
(/.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) t) (sqrt.f64 (-.f64 (*.f64 (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l)) (/.f64 (-.f64 #s(literal 1 binary64) x) (fma.f64 #s(literal -1 binary64) x #s(literal -1 binary64)))) (*.f64 l l))))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (/.f64 t (sqrt.f64 (fma.f64 (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l)) (/.f64 (-.f64 #s(literal 1 binary64) x) (-.f64 #s(literal -1 binary64) x)) (neg.f64 (*.f64 l l))))))
(*.f64 t (/.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 (fma.f64 (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l)) (/.f64 (-.f64 #s(literal 1 binary64) x) (-.f64 #s(literal -1 binary64) x)) (*.f64 l (neg.f64 l))))))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (/.f64 t (sqrt.f64 (fma.f64 (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l)) (/.f64 (-.f64 #s(literal 1 binary64) x) (-.f64 #s(literal -1 binary64) x)) (*.f64 l (neg.f64 l))))))
(/.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) t) (sqrt.f64 (-.f64 (*.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (-.f64 x #s(literal 1 binary64))) (+.f64 (*.f64 (neg.f64 l) (neg.f64 l)) (*.f64 #s(literal 2 binary64) (*.f64 t t)))) (*.f64 (neg.f64 l) (neg.f64 l)))))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (/.f64 t (sqrt.f64 (-.f64 (*.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (+.f64 x #s(literal -1 binary64))) (fma.f64 l l (*.f64 #s(literal 2 binary64) (*.f64 t t)))) (*.f64 l l)))))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (/.f64 t (sqrt.f64 (-.f64 (*.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (+.f64 x #s(literal -1 binary64))) (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l))) (*.f64 l l)))))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (/.f64 t (sqrt.f64 (fma.f64 (+.f64 x #s(literal 1 binary64)) (/.f64 (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l)) (+.f64 x #s(literal -1 binary64))) (neg.f64 (*.f64 l l))))))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (/.f64 t (sqrt.f64 (fma.f64 (+.f64 x #s(literal 1 binary64)) (/.f64 (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l)) (+.f64 x #s(literal -1 binary64))) (*.f64 l (neg.f64 l))))))
(/.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (neg.f64 t)) (sqrt.f64 (-.f64 (*.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (-.f64 x #s(literal 1 binary64))) (+.f64 (*.f64 l l) (*.f64 #s(literal 2 binary64) (*.f64 (neg.f64 t) (neg.f64 t))))) (*.f64 l l))))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (/.f64 (neg.f64 t) (sqrt.f64 (-.f64 (*.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (+.f64 x #s(literal -1 binary64))) (fma.f64 l l (*.f64 #s(literal 2 binary64) (*.f64 t t)))) (*.f64 l l)))))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (/.f64 (neg.f64 t) (sqrt.f64 (-.f64 (*.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (+.f64 x #s(literal -1 binary64))) (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l))) (*.f64 l l)))))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (/.f64 (neg.f64 t) (sqrt.f64 (fma.f64 (+.f64 x #s(literal 1 binary64)) (/.f64 (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l)) (+.f64 x #s(literal -1 binary64))) (neg.f64 (*.f64 l l))))))
(*.f64 t (/.f64 (neg.f64 (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (-.f64 (*.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (+.f64 x #s(literal -1 binary64))) (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l))) (*.f64 l l)))))
(*.f64 t (/.f64 (sqrt.f64 #s(literal 2 binary64)) (neg.f64 (sqrt.f64 (fma.f64 (+.f64 x #s(literal 1 binary64)) (/.f64 (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l)) (+.f64 x #s(literal -1 binary64))) (*.f64 l (neg.f64 l)))))))
(neg.f64 (/.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) t) (sqrt.f64 (-.f64 (*.f64 (/.f64 (+.f64 (neg.f64 x) #s(literal 1 binary64)) (-.f64 (neg.f64 x) #s(literal 1 binary64))) (+.f64 (*.f64 l l) (*.f64 #s(literal 2 binary64) (*.f64 t t)))) (*.f64 l l)))))
(/.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) t) (neg.f64 (sqrt.f64 (fma.f64 (/.f64 (+.f64 #s(literal 1 binary64) (neg.f64 x)) (+.f64 (neg.f64 x) #s(literal -1 binary64))) (fma.f64 l l (*.f64 #s(literal 2 binary64) (*.f64 t t))) (neg.f64 (*.f64 l l))))))
(/.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (neg.f64 t)) (sqrt.f64 (-.f64 (*.f64 (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l)) (/.f64 (-.f64 #s(literal 1 binary64) x) (fma.f64 #s(literal -1 binary64) x #s(literal -1 binary64)))) (*.f64 l l))))
(*.f64 t (/.f64 (neg.f64 (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (fma.f64 (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l)) (/.f64 (-.f64 #s(literal 1 binary64) x) (-.f64 #s(literal -1 binary64) x)) (neg.f64 (*.f64 l l))))))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (/.f64 (neg.f64 t) (sqrt.f64 (fma.f64 (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l)) (/.f64 (-.f64 #s(literal 1 binary64) x) (-.f64 #s(literal -1 binary64) x)) (*.f64 l (neg.f64 l))))))
(neg.f64 (/.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) t) (sqrt.f64 (-.f64 (*.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (-.f64 x #s(literal 1 binary64))) (+.f64 (*.f64 (neg.f64 l) (neg.f64 l)) (*.f64 #s(literal 2 binary64) (*.f64 t t)))) (*.f64 (neg.f64 l) (neg.f64 l))))))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (/.f64 (neg.f64 t) (sqrt.f64 (-.f64 (*.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (+.f64 x #s(literal -1 binary64))) (fma.f64 l l (*.f64 #s(literal 2 binary64) (*.f64 t t)))) (*.f64 l l)))))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (/.f64 (neg.f64 t) (sqrt.f64 (-.f64 (*.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (+.f64 x #s(literal -1 binary64))) (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l))) (*.f64 l l)))))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (/.f64 (neg.f64 t) (sqrt.f64 (fma.f64 (+.f64 x #s(literal 1 binary64)) (/.f64 (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l)) (+.f64 x #s(literal -1 binary64))) (neg.f64 (*.f64 l l))))))
(*.f64 t (/.f64 (neg.f64 (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (-.f64 (*.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (+.f64 x #s(literal -1 binary64))) (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l))) (*.f64 l l)))))
(*.f64 t (/.f64 (sqrt.f64 #s(literal 2 binary64)) (neg.f64 (sqrt.f64 (fma.f64 (+.f64 x #s(literal 1 binary64)) (/.f64 (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l)) (+.f64 x #s(literal -1 binary64))) (*.f64 l (neg.f64 l)))))))
(neg.f64 (/.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (neg.f64 t)) (sqrt.f64 (-.f64 (*.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (-.f64 x #s(literal 1 binary64))) (+.f64 (*.f64 l l) (*.f64 #s(literal 2 binary64) (*.f64 (neg.f64 t) (neg.f64 t))))) (*.f64 l l)))))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (/.f64 t (sqrt.f64 (-.f64 (*.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (+.f64 x #s(literal -1 binary64))) (fma.f64 l l (*.f64 #s(literal 2 binary64) (*.f64 t t)))) (*.f64 l l)))))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (/.f64 t (sqrt.f64 (-.f64 (*.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (+.f64 x #s(literal -1 binary64))) (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l))) (*.f64 l l)))))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (/.f64 t (sqrt.f64 (fma.f64 (+.f64 x #s(literal 1 binary64)) (/.f64 (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l)) (+.f64 x #s(literal -1 binary64))) (neg.f64 (*.f64 l l))))))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (/.f64 t (sqrt.f64 (fma.f64 (+.f64 x #s(literal 1 binary64)) (/.f64 (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l)) (+.f64 x #s(literal -1 binary64))) (*.f64 l (neg.f64 l))))))
(/.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) t) (sqrt.f64 (-.f64 (*.f64 (/.f64 (+.f64 l #s(literal 1 binary64)) (-.f64 l #s(literal 1 binary64))) (+.f64 (*.f64 x x) (*.f64 #s(literal 2 binary64) (*.f64 t t)))) (*.f64 x x))))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (/.f64 t (sqrt.f64 (-.f64 (*.f64 (/.f64 (+.f64 #s(literal 1 binary64) l) (+.f64 l #s(literal -1 binary64))) (fma.f64 x x (*.f64 #s(literal 2 binary64) (*.f64 t t)))) (*.f64 x x)))))
(/.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) t) (sqrt.f64 (-.f64 (/.f64 (*.f64 (+.f64 #s(literal 1 binary64) l) (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 x x))) (+.f64 l #s(literal -1 binary64))) (*.f64 x x))))
(*.f64 t (/.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 (fma.f64 (+.f64 #s(literal 1 binary64) l) (/.f64 (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 x x)) (+.f64 l #s(literal -1 binary64))) (neg.f64 (*.f64 x x))))))
(*.f64 t (/.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 (fma.f64 (+.f64 #s(literal 1 binary64) l) (/.f64 (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 x x)) (+.f64 l #s(literal -1 binary64))) (*.f64 x (neg.f64 x))))))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (/.f64 t (sqrt.f64 (fma.f64 (+.f64 #s(literal 1 binary64) l) (/.f64 (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 x x)) (+.f64 l #s(literal -1 binary64))) (*.f64 x (neg.f64 x))))))
(/.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) x) (sqrt.f64 (-.f64 (*.f64 (/.f64 (+.f64 t #s(literal 1 binary64)) (-.f64 t #s(literal 1 binary64))) (+.f64 (*.f64 l l) (*.f64 #s(literal 2 binary64) (*.f64 x x)))) (*.f64 l l))))
(/.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) x) (sqrt.f64 (fma.f64 (/.f64 (+.f64 t #s(literal 1 binary64)) (+.f64 t #s(literal -1 binary64))) (fma.f64 l l (*.f64 #s(literal 2 binary64) (*.f64 x x))) (neg.f64 (*.f64 l l)))))
(*.f64 x (/.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 (-.f64 (/.f64 (*.f64 (+.f64 t #s(literal 1 binary64)) (fma.f64 #s(literal 2 binary64) (*.f64 x x) (*.f64 l l))) (+.f64 t #s(literal -1 binary64))) (*.f64 l l)))))
(*.f64 x (/.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 (fma.f64 (/.f64 (+.f64 t #s(literal 1 binary64)) (+.f64 t #s(literal -1 binary64))) (fma.f64 #s(literal 2 binary64) (*.f64 x x) (*.f64 l l)) (neg.f64 (*.f64 l l))))))
(/.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) x) (sqrt.f64 (fma.f64 (+.f64 t #s(literal 1 binary64)) (/.f64 (fma.f64 #s(literal 2 binary64) (*.f64 x x) (*.f64 l l)) (+.f64 t #s(literal -1 binary64))) (*.f64 l (neg.f64 l)))))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (/.f64 x (sqrt.f64 (fma.f64 (+.f64 t #s(literal 1 binary64)) (/.f64 (fma.f64 #s(literal 2 binary64) (*.f64 x x) (*.f64 l l)) (+.f64 t #s(literal -1 binary64))) (*.f64 l (neg.f64 l))))))
(/.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) l) (sqrt.f64 (-.f64 (*.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (-.f64 x #s(literal 1 binary64))) (+.f64 (*.f64 t t) (*.f64 #s(literal 2 binary64) (*.f64 l l)))) (*.f64 t t))))
(/.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) l) (sqrt.f64 (fma.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (+.f64 x #s(literal -1 binary64))) (fma.f64 t t (*.f64 #s(literal 2 binary64) (*.f64 l l))) (neg.f64 (*.f64 t t)))))
(/.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) l) (sqrt.f64 (-.f64 (*.f64 (+.f64 x #s(literal 1 binary64)) (/.f64 (fma.f64 #s(literal 2 binary64) (*.f64 l l) (*.f64 t t)) (+.f64 x #s(literal -1 binary64)))) (*.f64 t t))))
(*.f64 l (/.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 (-.f64 (*.f64 (+.f64 x #s(literal 1 binary64)) (/.f64 (fma.f64 #s(literal 2 binary64) (*.f64 l l) (*.f64 t t)) (+.f64 x #s(literal -1 binary64)))) (*.f64 t t)))))
Symmetry

(abs l)

(negabs t)

explain456.0ms (8.4%)

FPErrors
Click to see full error table
Ground TruthOverpredictionsExampleUnderpredictionsExampleSubexpression
1090-1(8.614495655071873e+114 5.263820820664219e-213 1.7531240514599621e-158)(sqrt.f64 (-.f64 (*.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (-.f64 x #s(literal 1 binary64))) (+.f64 (*.f64 l l) (*.f64 #s(literal 2 binary64) (*.f64 t t)))) (*.f64 l l)))
871(-5.407139609765837e+210 1.8390598577386036e-11 1.0749910013634695e-12)0-(-.f64 (*.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (-.f64 x #s(literal 1 binary64))) (+.f64 (*.f64 l l) (*.f64 #s(literal 2 binary64) (*.f64 t t)))) (*.f64 l l))
10-1(2.99329313766704e+296 2.4344154946018244e-29 5.7672927877359e-310)(/.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) t) (sqrt.f64 (-.f64 (*.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (-.f64 x #s(literal 1 binary64))) (+.f64 (*.f64 l l) (*.f64 #s(literal 2 binary64) (*.f64 t t)))) (*.f64 l l))))
00-0-x
00-0-(+.f64 (*.f64 l l) (*.f64 #s(literal 2 binary64) (*.f64 t t)))
00-0-l
00-0-(-.f64 x #s(literal 1 binary64))
00-0-#s(literal 2 binary64)
00-0-(*.f64 t t)
00-0-(sqrt.f64 #s(literal 2 binary64))
00-0-(*.f64 l l)
00-0-(+.f64 x #s(literal 1 binary64))
00-0-(*.f64 (sqrt.f64 #s(literal 2 binary64)) t)
00-0-(*.f64 #s(literal 2 binary64) (*.f64 t t))
00-0-#s(literal 1 binary64)
00-0-t
00-0-(*.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (-.f64 x #s(literal 1 binary64))) (+.f64 (*.f64 l l) (*.f64 #s(literal 2 binary64) (*.f64 t t))))
00-0-(/.f64 (+.f64 x #s(literal 1 binary64)) (-.f64 x #s(literal 1 binary64)))
Results
250.0ms158×1valid
76.0ms326×0valid
13.0ms28×2valid
Compiler

Compiled 300 to 56 computations (81.3% saved)

Precisions
Click to see histograms. Total time spent on operations: 286.0ms
ival-mult: 216.0ms (75.5% of total)
ival-sqrt: 37.0ms (12.9% of total)
ival-div: 9.0ms (3.1% of total)
ival-sub: 7.0ms (2.4% of total)
backward-pass: 7.0ms (2.4% of total)
ival-add: 7.0ms (2.4% of total)
const: 1.0ms (0.3% of total)

eval1.0ms (0%)

Compiler

Compiled 107 to 37 computations (65.4% saved)

prune2.0ms (0%)

Alt Table
Click to see full alt table
StatusAccuracyProgram
36.2%
(/.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) t) (sqrt.f64 (-.f64 (*.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (-.f64 x #s(literal 1 binary64))) (+.f64 (*.f64 l l) (*.f64 #s(literal 2 binary64) (*.f64 t t)))) (*.f64 l l))))
31.2%
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (/.f64 t (sqrt.f64 (fma.f64 (+.f64 x #s(literal 1 binary64)) (/.f64 (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l)) (+.f64 x #s(literal -1 binary64))) (*.f64 l (neg.f64 l))))))
36.2%
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (/.f64 t (sqrt.f64 (-.f64 (*.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (+.f64 x #s(literal -1 binary64))) (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l))) (*.f64 l l)))))
Compiler

Compiled 88 to 55 computations (37.5% saved)

simplify108.0ms (2%)

Algorithm
egg-herbie
Localize:

Found 12 expressions of interest:

NewMetricScoreProgram
cost-diff0
(+.f64 x #s(literal 1 binary64))
cost-diff0
(/.f64 (+.f64 x #s(literal 1 binary64)) (-.f64 x #s(literal 1 binary64)))
cost-diff0
(sqrt.f64 #s(literal 2 binary64))
cost-diff0
(*.f64 (sqrt.f64 #s(literal 2 binary64)) t)
cost-diff0
(sqrt.f64 (fma.f64 (+.f64 x #s(literal 1 binary64)) (/.f64 (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l)) (+.f64 x #s(literal -1 binary64))) (*.f64 l (neg.f64 l))))
cost-diff0
(/.f64 t (sqrt.f64 (fma.f64 (+.f64 x #s(literal 1 binary64)) (/.f64 (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l)) (+.f64 x #s(literal -1 binary64))) (*.f64 l (neg.f64 l)))))
cost-diff0
(sqrt.f64 #s(literal 2 binary64))
cost-diff0
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (/.f64 t (sqrt.f64 (fma.f64 (+.f64 x #s(literal 1 binary64)) (/.f64 (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l)) (+.f64 x #s(literal -1 binary64))) (*.f64 l (neg.f64 l))))))
cost-diff0
(+.f64 x #s(literal 1 binary64))
cost-diff0
(/.f64 (+.f64 x #s(literal 1 binary64)) (+.f64 x #s(literal -1 binary64)))
cost-diff0
(*.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (+.f64 x #s(literal -1 binary64))) (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l)))
cost-diff0
(sqrt.f64 #s(literal 2 binary64))
Rules
840×fma-define
729×fmm-def
379×sub-neg
331×distribute-rgt-neg-in
325×distribute-lft-neg-in
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0421576
1911576
21561576
33141576
46941576
515631576
634691576
759891576
Stop Event
node limit
Calls
Call 1
Inputs
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (/.f64 t (sqrt.f64 (-.f64 (*.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (+.f64 x #s(literal -1 binary64))) (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l))) (*.f64 l l)))))
(sqrt.f64 #s(literal 2 binary64))
#s(literal 2 binary64)
(/.f64 t (sqrt.f64 (-.f64 (*.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (+.f64 x #s(literal -1 binary64))) (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l))) (*.f64 l l))))
t
(sqrt.f64 (-.f64 (*.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (+.f64 x #s(literal -1 binary64))) (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l))) (*.f64 l l)))
(-.f64 (*.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (+.f64 x #s(literal -1 binary64))) (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l))) (*.f64 l l))
(*.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (+.f64 x #s(literal -1 binary64))) (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l)))
(/.f64 (+.f64 x #s(literal 1 binary64)) (+.f64 x #s(literal -1 binary64)))
(+.f64 x #s(literal 1 binary64))
x
#s(literal 1 binary64)
(+.f64 x #s(literal -1 binary64))
#s(literal -1 binary64)
(fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l))
(*.f64 t t)
(*.f64 l l)
l
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (/.f64 t (sqrt.f64 (fma.f64 (+.f64 x #s(literal 1 binary64)) (/.f64 (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l)) (+.f64 x #s(literal -1 binary64))) (*.f64 l (neg.f64 l))))))
(sqrt.f64 #s(literal 2 binary64))
#s(literal 2 binary64)
(/.f64 t (sqrt.f64 (fma.f64 (+.f64 x #s(literal 1 binary64)) (/.f64 (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l)) (+.f64 x #s(literal -1 binary64))) (*.f64 l (neg.f64 l)))))
t
(sqrt.f64 (fma.f64 (+.f64 x #s(literal 1 binary64)) (/.f64 (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l)) (+.f64 x #s(literal -1 binary64))) (*.f64 l (neg.f64 l))))
(fma.f64 (+.f64 x #s(literal 1 binary64)) (/.f64 (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l)) (+.f64 x #s(literal -1 binary64))) (*.f64 l (neg.f64 l)))
(+.f64 x #s(literal 1 binary64))
x
#s(literal 1 binary64)
(/.f64 (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l)) (+.f64 x #s(literal -1 binary64)))
(fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l))
(*.f64 t t)
(*.f64 l l)
l
(+.f64 x #s(literal -1 binary64))
#s(literal -1 binary64)
(*.f64 l (neg.f64 l))
(neg.f64 l)
(/.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) t) (sqrt.f64 (-.f64 (*.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (-.f64 x #s(literal 1 binary64))) (+.f64 (*.f64 l l) (*.f64 #s(literal 2 binary64) (*.f64 t t)))) (*.f64 l l))))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) t)
(sqrt.f64 #s(literal 2 binary64))
#s(literal 2 binary64)
t
(sqrt.f64 (-.f64 (*.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (-.f64 x #s(literal 1 binary64))) (+.f64 (*.f64 l l) (*.f64 #s(literal 2 binary64) (*.f64 t t)))) (*.f64 l l)))
(-.f64 (*.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (-.f64 x #s(literal 1 binary64))) (+.f64 (*.f64 l l) (*.f64 #s(literal 2 binary64) (*.f64 t t)))) (*.f64 l l))
(*.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (-.f64 x #s(literal 1 binary64))) (+.f64 (*.f64 l l) (*.f64 #s(literal 2 binary64) (*.f64 t t))))
(/.f64 (+.f64 x #s(literal 1 binary64)) (-.f64 x #s(literal 1 binary64)))
(+.f64 x #s(literal 1 binary64))
x
#s(literal 1 binary64)
(-.f64 x #s(literal 1 binary64))
(+.f64 (*.f64 l l) (*.f64 #s(literal 2 binary64) (*.f64 t t)))
(*.f64 l l)
l
(*.f64 #s(literal 2 binary64) (*.f64 t t))
(*.f64 t t)
Outputs
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (/.f64 t (sqrt.f64 (-.f64 (*.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (+.f64 x #s(literal -1 binary64))) (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l))) (*.f64 l l)))))
(/.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) t) (sqrt.f64 (-.f64 (*.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (+.f64 x #s(literal -1 binary64))) (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l))) (*.f64 l l))))
(/.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) t) (sqrt.f64 (fma.f64 (+.f64 x #s(literal 1 binary64)) (/.f64 (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l)) (+.f64 x #s(literal -1 binary64))) (*.f64 l (neg.f64 l)))))
(/.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) t) (sqrt.f64 (fma.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (+.f64 x #s(literal -1 binary64))) (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l)) (*.f64 l (neg.f64 l)))))
(sqrt.f64 #s(literal 2 binary64))
#s(literal 2 binary64)
(/.f64 t (sqrt.f64 (-.f64 (*.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (+.f64 x #s(literal -1 binary64))) (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l))) (*.f64 l l))))
(/.f64 t (sqrt.f64 (fma.f64 (+.f64 x #s(literal 1 binary64)) (/.f64 (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l)) (+.f64 x #s(literal -1 binary64))) (*.f64 l (neg.f64 l)))))
(/.f64 t (sqrt.f64 (fma.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (+.f64 x #s(literal -1 binary64))) (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l)) (*.f64 l (neg.f64 l)))))
t
(sqrt.f64 (-.f64 (*.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (+.f64 x #s(literal -1 binary64))) (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l))) (*.f64 l l)))
(sqrt.f64 (fma.f64 (+.f64 x #s(literal 1 binary64)) (/.f64 (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l)) (+.f64 x #s(literal -1 binary64))) (*.f64 l (neg.f64 l))))
(sqrt.f64 (fma.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (+.f64 x #s(literal -1 binary64))) (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l)) (*.f64 l (neg.f64 l))))
(-.f64 (*.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (+.f64 x #s(literal -1 binary64))) (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l))) (*.f64 l l))
(fma.f64 (+.f64 x #s(literal 1 binary64)) (/.f64 (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l)) (+.f64 x #s(literal -1 binary64))) (*.f64 l (neg.f64 l)))
(fma.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (+.f64 x #s(literal -1 binary64))) (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l)) (*.f64 l (neg.f64 l)))
(*.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (+.f64 x #s(literal -1 binary64))) (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l)))
(*.f64 (+.f64 x #s(literal 1 binary64)) (/.f64 (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l)) (+.f64 x #s(literal -1 binary64))))
(/.f64 (+.f64 x #s(literal 1 binary64)) (+.f64 x #s(literal -1 binary64)))
(+.f64 x #s(literal 1 binary64))
x
#s(literal 1 binary64)
(+.f64 x #s(literal -1 binary64))
#s(literal -1 binary64)
(fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l))
(*.f64 t t)
(*.f64 l l)
l
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (/.f64 t (sqrt.f64 (fma.f64 (+.f64 x #s(literal 1 binary64)) (/.f64 (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l)) (+.f64 x #s(literal -1 binary64))) (*.f64 l (neg.f64 l))))))
(/.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) t) (sqrt.f64 (-.f64 (*.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (+.f64 x #s(literal -1 binary64))) (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l))) (*.f64 l l))))
(/.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) t) (sqrt.f64 (fma.f64 (+.f64 x #s(literal 1 binary64)) (/.f64 (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l)) (+.f64 x #s(literal -1 binary64))) (*.f64 l (neg.f64 l)))))
(/.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) t) (sqrt.f64 (fma.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (+.f64 x #s(literal -1 binary64))) (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l)) (*.f64 l (neg.f64 l)))))
(sqrt.f64 #s(literal 2 binary64))
#s(literal 2 binary64)
(/.f64 t (sqrt.f64 (fma.f64 (+.f64 x #s(literal 1 binary64)) (/.f64 (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l)) (+.f64 x #s(literal -1 binary64))) (*.f64 l (neg.f64 l)))))
(/.f64 t (sqrt.f64 (-.f64 (*.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (+.f64 x #s(literal -1 binary64))) (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l))) (*.f64 l l))))
(/.f64 t (sqrt.f64 (fma.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (+.f64 x #s(literal -1 binary64))) (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l)) (*.f64 l (neg.f64 l)))))
t
(sqrt.f64 (fma.f64 (+.f64 x #s(literal 1 binary64)) (/.f64 (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l)) (+.f64 x #s(literal -1 binary64))) (*.f64 l (neg.f64 l))))
(sqrt.f64 (-.f64 (*.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (+.f64 x #s(literal -1 binary64))) (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l))) (*.f64 l l)))
(sqrt.f64 (fma.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (+.f64 x #s(literal -1 binary64))) (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l)) (*.f64 l (neg.f64 l))))
(fma.f64 (+.f64 x #s(literal 1 binary64)) (/.f64 (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l)) (+.f64 x #s(literal -1 binary64))) (*.f64 l (neg.f64 l)))
(-.f64 (*.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (+.f64 x #s(literal -1 binary64))) (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l))) (*.f64 l l))
(fma.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (+.f64 x #s(literal -1 binary64))) (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l)) (*.f64 l (neg.f64 l)))
(+.f64 x #s(literal 1 binary64))
x
#s(literal 1 binary64)
(/.f64 (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l)) (+.f64 x #s(literal -1 binary64)))
(fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l))
(*.f64 t t)
(*.f64 l l)
l
(+.f64 x #s(literal -1 binary64))
#s(literal -1 binary64)
(*.f64 l (neg.f64 l))
(neg.f64 l)
(/.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) t) (sqrt.f64 (-.f64 (*.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (-.f64 x #s(literal 1 binary64))) (+.f64 (*.f64 l l) (*.f64 #s(literal 2 binary64) (*.f64 t t)))) (*.f64 l l))))
(/.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) t) (sqrt.f64 (-.f64 (*.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (+.f64 x #s(literal -1 binary64))) (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l))) (*.f64 l l))))
(/.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) t) (sqrt.f64 (fma.f64 (+.f64 x #s(literal 1 binary64)) (/.f64 (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l)) (+.f64 x #s(literal -1 binary64))) (*.f64 l (neg.f64 l)))))
(/.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) t) (sqrt.f64 (fma.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (+.f64 x #s(literal -1 binary64))) (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l)) (*.f64 l (neg.f64 l)))))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) t)
(sqrt.f64 #s(literal 2 binary64))
#s(literal 2 binary64)
t
(sqrt.f64 (-.f64 (*.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (-.f64 x #s(literal 1 binary64))) (+.f64 (*.f64 l l) (*.f64 #s(literal 2 binary64) (*.f64 t t)))) (*.f64 l l)))
(sqrt.f64 (-.f64 (*.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (+.f64 x #s(literal -1 binary64))) (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l))) (*.f64 l l)))
(sqrt.f64 (fma.f64 (+.f64 x #s(literal 1 binary64)) (/.f64 (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l)) (+.f64 x #s(literal -1 binary64))) (*.f64 l (neg.f64 l))))
(sqrt.f64 (fma.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (+.f64 x #s(literal -1 binary64))) (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l)) (*.f64 l (neg.f64 l))))
(-.f64 (*.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (-.f64 x #s(literal 1 binary64))) (+.f64 (*.f64 l l) (*.f64 #s(literal 2 binary64) (*.f64 t t)))) (*.f64 l l))
(-.f64 (*.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (+.f64 x #s(literal -1 binary64))) (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l))) (*.f64 l l))
(fma.f64 (+.f64 x #s(literal 1 binary64)) (/.f64 (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l)) (+.f64 x #s(literal -1 binary64))) (*.f64 l (neg.f64 l)))
(fma.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (+.f64 x #s(literal -1 binary64))) (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l)) (*.f64 l (neg.f64 l)))
(*.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (-.f64 x #s(literal 1 binary64))) (+.f64 (*.f64 l l) (*.f64 #s(literal 2 binary64) (*.f64 t t))))
(*.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (+.f64 x #s(literal -1 binary64))) (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l)))
(*.f64 (+.f64 x #s(literal 1 binary64)) (/.f64 (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l)) (+.f64 x #s(literal -1 binary64))))
(/.f64 (+.f64 x #s(literal 1 binary64)) (-.f64 x #s(literal 1 binary64)))
(/.f64 (+.f64 x #s(literal 1 binary64)) (+.f64 x #s(literal -1 binary64)))
(+.f64 x #s(literal 1 binary64))
x
#s(literal 1 binary64)
(-.f64 x #s(literal 1 binary64))
(+.f64 x #s(literal -1 binary64))
(+.f64 (*.f64 l l) (*.f64 #s(literal 2 binary64) (*.f64 t t)))
(fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l))
(*.f64 l l)
l
(*.f64 #s(literal 2 binary64) (*.f64 t t))
(*.f64 t (*.f64 #s(literal 2 binary64) t))
(*.f64 t t)

localize1.0ms (0%)

Results
0.0ms0valid
Compiler

Compiled 412 to 35 computations (91.5% saved)

Precisions
Click to see histograms. Total time spent on operations: 1.0ms
ival-div: 0.0ms (0% of total)
ival-add: 0.0ms (0% of total)
ival-mult: 0.0ms (0% of total)
const: 0.0ms (0% of total)
ival-sub: 0.0ms (0% of total)
ival-sqrt: 0.0ms (0% of total)
backward-pass: 0.0ms (0% of total)
ival-neg: 0.0ms (0% of total)
compiled-spec: 0.0ms (0% of total)

end0.0ms (0%)

Precisions
Click to see histograms. Total time spent on operations: 0.0ms
backward-pass: 0.0ms (0% of total)
compiled-spec: 0.0ms (0% of total)

Profiling

Loading profile data...