Henrywood and Agarwal, Equation (9a)

Time bar (total: 5.0s)

analyze486.0ms (9.8%)

Memory
-2.8MiB live, 205.0MiB allocated
Algorithm
search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%99.7%0.3%0%0%0%0
0%0%99.7%0.3%0%0%0%1
0%0%99.7%0.3%0%0%0%2
0%0%99.7%0.3%0%0%0%3
0%0%99.7%0.3%0%0%0%4
0%0%99.7%0.3%0%0%0%5
0%0%99.7%0.3%0%0%0%6
12.5%12.5%87.2%0.3%0%0%0%7
12.5%12.5%87.2%0.3%0%0%0%8
12.5%12.5%87.2%0.3%0%0%0%9
12.5%12.5%87.2%0.3%0%0%0%10
12.5%12.5%87.2%0.3%0%0%0%11
18.8%18.7%81%0.3%0%0%0%12
Compiler

Compiled 45 to 37 computations (17.8% saved)

sample4.3s (87.4%)

Memory
8.5MiB live, 1 363.9MiB allocated
Samples
908.0ms8 256×0valid-sollya
800.0ms8 256×0valid-baseline
747.0ms8 256×0valid-rival
Bogosity

preprocess104.0ms (2.1%)

Memory
-4.1MiB live, 28.7MiB allocated
Algorithm
egg-herbie
Rules
472×cancel-sign-sub-inv
406×*-commutative
384×neg-mul-1
383×neg-sub0
368×fma-define
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01782099
15332083
215832067
345552067
Stop Event
node limit
Calls
Call 1
Inputs
(*.f64 w0 (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (/.f64 (*.f64 M D) (*.f64 #s(literal 2 binary64) d)) #s(literal 2 binary64)) (/.f64 h l)))))
(*.f64 w0 (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (/.f64 (*.f64 M D) (*.f64 #s(literal 2 binary64) d)) #s(literal 2 binary64)) (/.f64 h l)))))
(*.f64 (neg.f64 w0) (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (/.f64 (*.f64 M D) (*.f64 #s(literal 2 binary64) d)) #s(literal 2 binary64)) (/.f64 h l)))))
(*.f64 w0 (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (/.f64 (*.f64 (neg.f64 M) D) (*.f64 #s(literal 2 binary64) d)) #s(literal 2 binary64)) (/.f64 h l)))))
(*.f64 w0 (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (/.f64 (*.f64 M (neg.f64 D)) (*.f64 #s(literal 2 binary64) d)) #s(literal 2 binary64)) (/.f64 h l)))))
(*.f64 w0 (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (/.f64 (*.f64 M D) (*.f64 #s(literal 2 binary64) d)) #s(literal 2 binary64)) (/.f64 (neg.f64 h) l)))))
(*.f64 w0 (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (/.f64 (*.f64 M D) (*.f64 #s(literal 2 binary64) d)) #s(literal 2 binary64)) (/.f64 h (neg.f64 l))))))
(*.f64 w0 (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (/.f64 (*.f64 M D) (*.f64 #s(literal 2 binary64) (neg.f64 d))) #s(literal 2 binary64)) (/.f64 h l)))))
(neg.f64 (*.f64 (neg.f64 w0) (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (/.f64 (*.f64 M D) (*.f64 #s(literal 2 binary64) d)) #s(literal 2 binary64)) (/.f64 h l))))))
(neg.f64 (*.f64 w0 (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (/.f64 (*.f64 (neg.f64 M) D) (*.f64 #s(literal 2 binary64) d)) #s(literal 2 binary64)) (/.f64 h l))))))
(neg.f64 (*.f64 w0 (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (/.f64 (*.f64 M (neg.f64 D)) (*.f64 #s(literal 2 binary64) d)) #s(literal 2 binary64)) (/.f64 h l))))))
(neg.f64 (*.f64 w0 (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (/.f64 (*.f64 M D) (*.f64 #s(literal 2 binary64) d)) #s(literal 2 binary64)) (/.f64 (neg.f64 h) l))))))
(neg.f64 (*.f64 w0 (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (/.f64 (*.f64 M D) (*.f64 #s(literal 2 binary64) d)) #s(literal 2 binary64)) (/.f64 h (neg.f64 l)))))))
(neg.f64 (*.f64 w0 (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (/.f64 (*.f64 M D) (*.f64 #s(literal 2 binary64) (neg.f64 d))) #s(literal 2 binary64)) (/.f64 h l))))))
(*.f64 M (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (/.f64 (*.f64 w0 D) (*.f64 #s(literal 2 binary64) d)) #s(literal 2 binary64)) (/.f64 h l)))))
(*.f64 D (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (/.f64 (*.f64 M w0) (*.f64 #s(literal 2 binary64) d)) #s(literal 2 binary64)) (/.f64 h l)))))
(*.f64 h (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (/.f64 (*.f64 M D) (*.f64 #s(literal 2 binary64) d)) #s(literal 2 binary64)) (/.f64 w0 l)))))
(*.f64 l (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (/.f64 (*.f64 M D) (*.f64 #s(literal 2 binary64) d)) #s(literal 2 binary64)) (/.f64 h w0)))))
(*.f64 d (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (/.f64 (*.f64 M D) (*.f64 #s(literal 2 binary64) w0)) #s(literal 2 binary64)) (/.f64 h l)))))
(*.f64 w0 (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (/.f64 (*.f64 D M) (*.f64 #s(literal 2 binary64) d)) #s(literal 2 binary64)) (/.f64 h l)))))
(*.f64 w0 (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (/.f64 (*.f64 h D) (*.f64 #s(literal 2 binary64) d)) #s(literal 2 binary64)) (/.f64 M l)))))
(*.f64 w0 (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (/.f64 (*.f64 l D) (*.f64 #s(literal 2 binary64) d)) #s(literal 2 binary64)) (/.f64 h M)))))
(*.f64 w0 (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (/.f64 (*.f64 d D) (*.f64 #s(literal 2 binary64) M)) #s(literal 2 binary64)) (/.f64 h l)))))
(*.f64 w0 (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (/.f64 (*.f64 M h) (*.f64 #s(literal 2 binary64) d)) #s(literal 2 binary64)) (/.f64 D l)))))
(*.f64 w0 (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (/.f64 (*.f64 M l) (*.f64 #s(literal 2 binary64) d)) #s(literal 2 binary64)) (/.f64 h D)))))
(*.f64 w0 (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (/.f64 (*.f64 M d) (*.f64 #s(literal 2 binary64) D)) #s(literal 2 binary64)) (/.f64 h l)))))
(*.f64 w0 (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (/.f64 (*.f64 M D) (*.f64 #s(literal 2 binary64) d)) #s(literal 2 binary64)) (/.f64 l h)))))
(*.f64 w0 (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (/.f64 (*.f64 M D) (*.f64 #s(literal 2 binary64) h)) #s(literal 2 binary64)) (/.f64 d l)))))
(*.f64 w0 (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (/.f64 (*.f64 M D) (*.f64 #s(literal 2 binary64) l)) #s(literal 2 binary64)) (/.f64 h d)))))
Outputs
(*.f64 w0 (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (/.f64 (*.f64 M D) (*.f64 #s(literal 2 binary64) d)) #s(literal 2 binary64)) (/.f64 h l)))))
(*.f64 w0 (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (*.f64 M (/.f64 D (*.f64 #s(literal 2 binary64) d))) #s(literal 2 binary64)) (/.f64 h l)))))
(*.f64 w0 (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (*.f64 D (/.f64 (/.f64 M #s(literal 2 binary64)) d)) #s(literal 2 binary64)) (/.f64 h l)))))
(*.f64 w0 (sqrt.f64 (fma.f64 (pow.f64 (*.f64 (/.f64 D #s(literal 2 binary64)) (/.f64 M d)) #s(literal 2 binary64)) (/.f64 h (neg.f64 l)) #s(literal 1 binary64))))
(*.f64 w0 (sqrt.f64 (fma.f64 (pow.f64 (*.f64 D (*.f64 (/.f64 M d) #s(literal -1/2 binary64))) #s(literal 2 binary64)) (/.f64 h (neg.f64 l)) #s(literal 1 binary64))))
(*.f64 w0 (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (/.f64 (*.f64 M D) (*.f64 #s(literal 2 binary64) d)) #s(literal 2 binary64)) (/.f64 h l)))))
(*.f64 w0 (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (*.f64 M (/.f64 D (*.f64 #s(literal 2 binary64) d))) #s(literal 2 binary64)) (/.f64 h l)))))
(*.f64 w0 (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (*.f64 D (/.f64 (/.f64 M #s(literal 2 binary64)) d)) #s(literal 2 binary64)) (/.f64 h l)))))
(*.f64 w0 (sqrt.f64 (fma.f64 (pow.f64 (*.f64 (/.f64 D #s(literal 2 binary64)) (/.f64 M d)) #s(literal 2 binary64)) (/.f64 h (neg.f64 l)) #s(literal 1 binary64))))
(*.f64 w0 (sqrt.f64 (fma.f64 (pow.f64 (*.f64 D (*.f64 (/.f64 M d) #s(literal -1/2 binary64))) #s(literal 2 binary64)) (/.f64 h (neg.f64 l)) #s(literal 1 binary64))))
(*.f64 (neg.f64 w0) (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (/.f64 (*.f64 M D) (*.f64 #s(literal 2 binary64) d)) #s(literal 2 binary64)) (/.f64 h l)))))
(*.f64 (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (*.f64 M (/.f64 D (*.f64 #s(literal 2 binary64) d))) #s(literal 2 binary64)) (/.f64 h l)))) (neg.f64 w0))
(*.f64 w0 (neg.f64 (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (*.f64 D (/.f64 (/.f64 M #s(literal 2 binary64)) d)) #s(literal 2 binary64)) (/.f64 h l))))))
(*.f64 (neg.f64 w0) (sqrt.f64 (fma.f64 (pow.f64 (*.f64 (/.f64 D #s(literal 2 binary64)) (/.f64 M d)) #s(literal 2 binary64)) (/.f64 h (neg.f64 l)) #s(literal 1 binary64))))
(*.f64 (neg.f64 w0) (sqrt.f64 (fma.f64 (pow.f64 (*.f64 D (*.f64 (/.f64 M d) #s(literal -1/2 binary64))) #s(literal 2 binary64)) (/.f64 h (neg.f64 l)) #s(literal 1 binary64))))
(*.f64 w0 (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (/.f64 (*.f64 (neg.f64 M) D) (*.f64 #s(literal 2 binary64) d)) #s(literal 2 binary64)) (/.f64 h l)))))
(*.f64 w0 (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (*.f64 M (/.f64 D (*.f64 #s(literal 2 binary64) d))) #s(literal 2 binary64)) (/.f64 h l)))))
(*.f64 w0 (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (*.f64 D (/.f64 (/.f64 M #s(literal 2 binary64)) d)) #s(literal 2 binary64)) (/.f64 h l)))))
(*.f64 w0 (sqrt.f64 (fma.f64 (pow.f64 (*.f64 (/.f64 D #s(literal 2 binary64)) (/.f64 M d)) #s(literal 2 binary64)) (/.f64 h (neg.f64 l)) #s(literal 1 binary64))))
(*.f64 w0 (sqrt.f64 (fma.f64 (pow.f64 (*.f64 D (*.f64 (/.f64 M d) #s(literal -1/2 binary64))) #s(literal 2 binary64)) (/.f64 h (neg.f64 l)) #s(literal 1 binary64))))
(*.f64 w0 (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (/.f64 (*.f64 M (neg.f64 D)) (*.f64 #s(literal 2 binary64) d)) #s(literal 2 binary64)) (/.f64 h l)))))
(*.f64 w0 (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (*.f64 M (/.f64 D (*.f64 #s(literal 2 binary64) d))) #s(literal 2 binary64)) (/.f64 h l)))))
(*.f64 w0 (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (*.f64 D (/.f64 (/.f64 M #s(literal 2 binary64)) d)) #s(literal 2 binary64)) (/.f64 h l)))))
(*.f64 w0 (sqrt.f64 (fma.f64 (pow.f64 (*.f64 (/.f64 D #s(literal 2 binary64)) (/.f64 M d)) #s(literal 2 binary64)) (/.f64 h (neg.f64 l)) #s(literal 1 binary64))))
(*.f64 w0 (sqrt.f64 (fma.f64 (pow.f64 (*.f64 D (*.f64 (/.f64 M d) #s(literal -1/2 binary64))) #s(literal 2 binary64)) (/.f64 h (neg.f64 l)) #s(literal 1 binary64))))
(*.f64 w0 (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (/.f64 (*.f64 M D) (*.f64 #s(literal 2 binary64) d)) #s(literal 2 binary64)) (/.f64 (neg.f64 h) l)))))
(*.f64 w0 (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (*.f64 M (/.f64 D (*.f64 #s(literal 2 binary64) d))) #s(literal 2 binary64)) (/.f64 h (neg.f64 l))))))
(*.f64 w0 (sqrt.f64 (+.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (*.f64 D (/.f64 (/.f64 M #s(literal 2 binary64)) d)) #s(literal 2 binary64)) (/.f64 h l)))))
(*.f64 w0 (sqrt.f64 (fma.f64 (pow.f64 (*.f64 (/.f64 D #s(literal 2 binary64)) (/.f64 M d)) #s(literal 2 binary64)) (/.f64 h l) #s(literal 1 binary64))))
(*.f64 w0 (sqrt.f64 (fma.f64 (pow.f64 (*.f64 D (*.f64 (/.f64 M d) #s(literal -1/2 binary64))) #s(literal 2 binary64)) (/.f64 h l) #s(literal 1 binary64))))
(*.f64 w0 (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (/.f64 (*.f64 M D) (*.f64 #s(literal 2 binary64) d)) #s(literal 2 binary64)) (/.f64 h (neg.f64 l))))))
(*.f64 w0 (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (*.f64 M (/.f64 D (*.f64 #s(literal 2 binary64) d))) #s(literal 2 binary64)) (/.f64 h (neg.f64 l))))))
(*.f64 w0 (sqrt.f64 (+.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (*.f64 D (/.f64 (/.f64 M #s(literal 2 binary64)) d)) #s(literal 2 binary64)) (/.f64 h l)))))
(*.f64 w0 (sqrt.f64 (fma.f64 (pow.f64 (*.f64 (/.f64 D #s(literal 2 binary64)) (/.f64 M d)) #s(literal 2 binary64)) (/.f64 h l) #s(literal 1 binary64))))
(*.f64 w0 (sqrt.f64 (fma.f64 (pow.f64 (*.f64 D (*.f64 (/.f64 M d) #s(literal -1/2 binary64))) #s(literal 2 binary64)) (/.f64 h l) #s(literal 1 binary64))))
(*.f64 w0 (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (/.f64 (*.f64 M D) (*.f64 #s(literal 2 binary64) (neg.f64 d))) #s(literal 2 binary64)) (/.f64 h l)))))
(*.f64 w0 (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (*.f64 M (/.f64 D (*.f64 #s(literal 2 binary64) d))) #s(literal 2 binary64)) (/.f64 h l)))))
(*.f64 w0 (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (*.f64 D (/.f64 (/.f64 M #s(literal 2 binary64)) d)) #s(literal 2 binary64)) (/.f64 h l)))))
(*.f64 w0 (sqrt.f64 (fma.f64 (pow.f64 (*.f64 (/.f64 D #s(literal 2 binary64)) (/.f64 M d)) #s(literal 2 binary64)) (/.f64 h (neg.f64 l)) #s(literal 1 binary64))))
(*.f64 w0 (sqrt.f64 (fma.f64 (pow.f64 (*.f64 D (*.f64 (/.f64 M d) #s(literal -1/2 binary64))) #s(literal 2 binary64)) (/.f64 h (neg.f64 l)) #s(literal 1 binary64))))
(neg.f64 (*.f64 (neg.f64 w0) (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (/.f64 (*.f64 M D) (*.f64 #s(literal 2 binary64) d)) #s(literal 2 binary64)) (/.f64 h l))))))
(*.f64 w0 (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (*.f64 M (/.f64 D (*.f64 #s(literal 2 binary64) d))) #s(literal 2 binary64)) (/.f64 h l)))))
(*.f64 w0 (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (*.f64 D (/.f64 (/.f64 M #s(literal 2 binary64)) d)) #s(literal 2 binary64)) (/.f64 h l)))))
(*.f64 w0 (sqrt.f64 (fma.f64 (pow.f64 (*.f64 (/.f64 D #s(literal 2 binary64)) (/.f64 M d)) #s(literal 2 binary64)) (/.f64 h (neg.f64 l)) #s(literal 1 binary64))))
(*.f64 w0 (sqrt.f64 (fma.f64 (pow.f64 (*.f64 D (*.f64 (/.f64 M d) #s(literal -1/2 binary64))) #s(literal 2 binary64)) (/.f64 h (neg.f64 l)) #s(literal 1 binary64))))
(neg.f64 (*.f64 w0 (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (/.f64 (*.f64 (neg.f64 M) D) (*.f64 #s(literal 2 binary64) d)) #s(literal 2 binary64)) (/.f64 h l))))))
(*.f64 (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (*.f64 M (/.f64 D (*.f64 #s(literal 2 binary64) d))) #s(literal 2 binary64)) (/.f64 h l)))) (neg.f64 w0))
(*.f64 w0 (neg.f64 (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (*.f64 D (/.f64 (/.f64 M #s(literal 2 binary64)) d)) #s(literal 2 binary64)) (/.f64 h l))))))
(*.f64 (neg.f64 w0) (sqrt.f64 (fma.f64 (pow.f64 (*.f64 (/.f64 D #s(literal 2 binary64)) (/.f64 M d)) #s(literal 2 binary64)) (/.f64 h (neg.f64 l)) #s(literal 1 binary64))))
(*.f64 (neg.f64 w0) (sqrt.f64 (fma.f64 (pow.f64 (*.f64 D (*.f64 (/.f64 M d) #s(literal -1/2 binary64))) #s(literal 2 binary64)) (/.f64 h (neg.f64 l)) #s(literal 1 binary64))))
(neg.f64 (*.f64 w0 (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (/.f64 (*.f64 M (neg.f64 D)) (*.f64 #s(literal 2 binary64) d)) #s(literal 2 binary64)) (/.f64 h l))))))
(*.f64 (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (*.f64 M (/.f64 D (*.f64 #s(literal 2 binary64) d))) #s(literal 2 binary64)) (/.f64 h l)))) (neg.f64 w0))
(*.f64 w0 (neg.f64 (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (*.f64 D (/.f64 (/.f64 M #s(literal 2 binary64)) d)) #s(literal 2 binary64)) (/.f64 h l))))))
(*.f64 (neg.f64 w0) (sqrt.f64 (fma.f64 (pow.f64 (*.f64 (/.f64 D #s(literal 2 binary64)) (/.f64 M d)) #s(literal 2 binary64)) (/.f64 h (neg.f64 l)) #s(literal 1 binary64))))
(*.f64 (neg.f64 w0) (sqrt.f64 (fma.f64 (pow.f64 (*.f64 D (*.f64 (/.f64 M d) #s(literal -1/2 binary64))) #s(literal 2 binary64)) (/.f64 h (neg.f64 l)) #s(literal 1 binary64))))
(neg.f64 (*.f64 w0 (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (/.f64 (*.f64 M D) (*.f64 #s(literal 2 binary64) d)) #s(literal 2 binary64)) (/.f64 (neg.f64 h) l))))))
(*.f64 (neg.f64 w0) (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (*.f64 M (/.f64 D (*.f64 #s(literal 2 binary64) d))) #s(literal 2 binary64)) (/.f64 h (neg.f64 l))))))
(*.f64 (neg.f64 w0) (sqrt.f64 (+.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (*.f64 D (/.f64 (/.f64 M #s(literal 2 binary64)) d)) #s(literal 2 binary64)) (/.f64 h l)))))
(*.f64 (neg.f64 w0) (sqrt.f64 (fma.f64 (pow.f64 (*.f64 (/.f64 D #s(literal 2 binary64)) (/.f64 M d)) #s(literal 2 binary64)) (/.f64 h l) #s(literal 1 binary64))))
(*.f64 (neg.f64 w0) (sqrt.f64 (fma.f64 (pow.f64 (*.f64 D (*.f64 (/.f64 M d) #s(literal -1/2 binary64))) #s(literal 2 binary64)) (/.f64 h l) #s(literal 1 binary64))))
(neg.f64 (*.f64 w0 (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (/.f64 (*.f64 M D) (*.f64 #s(literal 2 binary64) d)) #s(literal 2 binary64)) (/.f64 h (neg.f64 l)))))))
(*.f64 (neg.f64 w0) (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (*.f64 M (/.f64 D (*.f64 #s(literal 2 binary64) d))) #s(literal 2 binary64)) (/.f64 h (neg.f64 l))))))
(*.f64 (neg.f64 w0) (sqrt.f64 (+.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (*.f64 D (/.f64 (/.f64 M #s(literal 2 binary64)) d)) #s(literal 2 binary64)) (/.f64 h l)))))
(*.f64 (neg.f64 w0) (sqrt.f64 (fma.f64 (pow.f64 (*.f64 (/.f64 D #s(literal 2 binary64)) (/.f64 M d)) #s(literal 2 binary64)) (/.f64 h l) #s(literal 1 binary64))))
(*.f64 (neg.f64 w0) (sqrt.f64 (fma.f64 (pow.f64 (*.f64 D (*.f64 (/.f64 M d) #s(literal -1/2 binary64))) #s(literal 2 binary64)) (/.f64 h l) #s(literal 1 binary64))))
(neg.f64 (*.f64 w0 (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (/.f64 (*.f64 M D) (*.f64 #s(literal 2 binary64) (neg.f64 d))) #s(literal 2 binary64)) (/.f64 h l))))))
(*.f64 (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (*.f64 M (/.f64 D (*.f64 #s(literal 2 binary64) d))) #s(literal 2 binary64)) (/.f64 h l)))) (neg.f64 w0))
(*.f64 w0 (neg.f64 (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (*.f64 D (/.f64 (/.f64 M #s(literal 2 binary64)) d)) #s(literal 2 binary64)) (/.f64 h l))))))
(*.f64 (neg.f64 w0) (sqrt.f64 (fma.f64 (pow.f64 (*.f64 (/.f64 D #s(literal 2 binary64)) (/.f64 M d)) #s(literal 2 binary64)) (/.f64 h (neg.f64 l)) #s(literal 1 binary64))))
(*.f64 (neg.f64 w0) (sqrt.f64 (fma.f64 (pow.f64 (*.f64 D (*.f64 (/.f64 M d) #s(literal -1/2 binary64))) #s(literal 2 binary64)) (/.f64 h (neg.f64 l)) #s(literal 1 binary64))))
(*.f64 M (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (/.f64 (*.f64 w0 D) (*.f64 #s(literal 2 binary64) d)) #s(literal 2 binary64)) (/.f64 h l)))))
(*.f64 M (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 (/.f64 h l) (pow.f64 (*.f64 (/.f64 w0 #s(literal 2 binary64)) (/.f64 D d)) #s(literal 2 binary64))))))
(*.f64 M (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 (/.f64 h l) (pow.f64 (*.f64 D (/.f64 w0 (*.f64 #s(literal 2 binary64) d))) #s(literal 2 binary64))))))
(*.f64 M (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 h (/.f64 (pow.f64 (*.f64 D (/.f64 w0 (*.f64 #s(literal 2 binary64) d))) #s(literal 2 binary64)) l)))))
(*.f64 M (sqrt.f64 (fma.f64 (/.f64 h (neg.f64 l)) (pow.f64 (*.f64 D (*.f64 #s(literal 1/2 binary64) (/.f64 w0 d))) #s(literal 2 binary64)) #s(literal 1 binary64))))
(*.f64 D (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (/.f64 (*.f64 M w0) (*.f64 #s(literal 2 binary64) d)) #s(literal 2 binary64)) (/.f64 h l)))))
(*.f64 D (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 (/.f64 h l) (pow.f64 (/.f64 (*.f64 w0 M) (*.f64 #s(literal 2 binary64) d)) #s(literal 2 binary64))))))
(*.f64 D (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 (/.f64 h l) (pow.f64 (*.f64 w0 (/.f64 (/.f64 M #s(literal 2 binary64)) d)) #s(literal 2 binary64))))))
(*.f64 D (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 h (/.f64 (pow.f64 (*.f64 M (/.f64 w0 (*.f64 #s(literal 2 binary64) d))) #s(literal 2 binary64)) l)))))
(*.f64 D (sqrt.f64 (neg.f64 (fma.f64 h (/.f64 (pow.f64 (*.f64 w0 (/.f64 (/.f64 M #s(literal 2 binary64)) d)) #s(literal 2 binary64)) l) #s(literal -1 binary64)))))
(*.f64 h (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (/.f64 (*.f64 M D) (*.f64 #s(literal 2 binary64) d)) #s(literal 2 binary64)) (/.f64 w0 l)))))
(*.f64 h (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (*.f64 M (/.f64 D (*.f64 #s(literal 2 binary64) d))) #s(literal 2 binary64)) (/.f64 w0 l)))))
(*.f64 h (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (*.f64 D (/.f64 (/.f64 M #s(literal 2 binary64)) d)) #s(literal 2 binary64)) (/.f64 w0 l)))))
(*.f64 h (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 w0 (/.f64 (pow.f64 (*.f64 (/.f64 D #s(literal 2 binary64)) (/.f64 M d)) #s(literal 2 binary64)) l)))))
(*.f64 h (sqrt.f64 (fma.f64 (pow.f64 (*.f64 D (*.f64 (/.f64 M d) #s(literal -1/2 binary64))) #s(literal 2 binary64)) (/.f64 w0 (neg.f64 l)) #s(literal 1 binary64))))
(*.f64 l (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (/.f64 (*.f64 M D) (*.f64 #s(literal 2 binary64) d)) #s(literal 2 binary64)) (/.f64 h w0)))))
(*.f64 l (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (*.f64 M (/.f64 D (*.f64 #s(literal 2 binary64) d))) #s(literal 2 binary64)) (/.f64 h w0)))))
(*.f64 l (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (*.f64 D (/.f64 (/.f64 M #s(literal 2 binary64)) d)) #s(literal 2 binary64)) (/.f64 h w0)))))
(*.f64 l (sqrt.f64 (fma.f64 (pow.f64 (*.f64 (/.f64 D #s(literal 2 binary64)) (/.f64 M d)) #s(literal 2 binary64)) (/.f64 h (neg.f64 w0)) #s(literal 1 binary64))))
(*.f64 l (sqrt.f64 (fma.f64 (pow.f64 (*.f64 D (*.f64 (/.f64 M d) #s(literal -1/2 binary64))) #s(literal 2 binary64)) (/.f64 h (neg.f64 w0)) #s(literal 1 binary64))))
(*.f64 d (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (/.f64 (*.f64 M D) (*.f64 #s(literal 2 binary64) w0)) #s(literal 2 binary64)) (/.f64 h l)))))
(*.f64 d (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 (/.f64 h l) (pow.f64 (*.f64 M (/.f64 D (*.f64 w0 #s(literal 2 binary64)))) #s(literal 2 binary64))))))
(*.f64 d (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 (/.f64 h l) (pow.f64 (/.f64 (*.f64 (/.f64 M #s(literal 2 binary64)) D) w0) #s(literal 2 binary64))))))
(*.f64 d (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 h (/.f64 (pow.f64 (*.f64 M (/.f64 D (*.f64 w0 #s(literal 2 binary64)))) #s(literal 2 binary64)) l)))))
(*.f64 d (sqrt.f64 (neg.f64 (fma.f64 (/.f64 h l) (pow.f64 (*.f64 M (/.f64 D (*.f64 w0 #s(literal 2 binary64)))) #s(literal 2 binary64)) #s(literal -1 binary64)))))
(*.f64 w0 (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (/.f64 (*.f64 D M) (*.f64 #s(literal 2 binary64) d)) #s(literal 2 binary64)) (/.f64 h l)))))
(*.f64 w0 (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (*.f64 M (/.f64 D (*.f64 #s(literal 2 binary64) d))) #s(literal 2 binary64)) (/.f64 h l)))))
(*.f64 w0 (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (*.f64 D (/.f64 (/.f64 M #s(literal 2 binary64)) d)) #s(literal 2 binary64)) (/.f64 h l)))))
(*.f64 w0 (sqrt.f64 (fma.f64 (pow.f64 (*.f64 (/.f64 D #s(literal 2 binary64)) (/.f64 M d)) #s(literal 2 binary64)) (/.f64 h (neg.f64 l)) #s(literal 1 binary64))))
(*.f64 w0 (sqrt.f64 (fma.f64 (pow.f64 (*.f64 D (*.f64 (/.f64 M d) #s(literal -1/2 binary64))) #s(literal 2 binary64)) (/.f64 h (neg.f64 l)) #s(literal 1 binary64))))
(*.f64 w0 (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (/.f64 (*.f64 h D) (*.f64 #s(literal 2 binary64) d)) #s(literal 2 binary64)) (/.f64 M l)))))
(*.f64 w0 (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (*.f64 h (/.f64 D (*.f64 #s(literal 2 binary64) d))) #s(literal 2 binary64)) (/.f64 M l)))))
(*.f64 w0 (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (/.f64 (*.f64 D (/.f64 h #s(literal 2 binary64))) d) #s(literal 2 binary64)) (/.f64 M l)))))
(*.f64 w0 (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 M (/.f64 (pow.f64 (*.f64 h (/.f64 D (*.f64 #s(literal 2 binary64) d))) #s(literal 2 binary64)) l)))))
(*.f64 w0 (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (/.f64 (*.f64 l D) (*.f64 #s(literal 2 binary64) d)) #s(literal 2 binary64)) (/.f64 h M)))))
(*.f64 w0 (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (*.f64 l (/.f64 D (*.f64 #s(literal 2 binary64) d))) #s(literal 2 binary64)) (/.f64 h M)))))
(*.f64 w0 (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (*.f64 D (/.f64 l (*.f64 #s(literal 2 binary64) d))) #s(literal 2 binary64)) (/.f64 h M)))))
(*.f64 w0 (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (*.f64 D (/.f64 (/.f64 l #s(literal 2 binary64)) d)) #s(literal 2 binary64)) (/.f64 h M)))))
(*.f64 w0 (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (*.f64 (/.f64 l d) (/.f64 D #s(literal 2 binary64))) #s(literal 2 binary64)) (/.f64 h M)))))
(*.f64 w0 (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (/.f64 (*.f64 d D) (*.f64 #s(literal 2 binary64) M)) #s(literal 2 binary64)) (/.f64 h l)))))
(*.f64 w0 (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 (/.f64 h l) (pow.f64 (/.f64 (*.f64 D d) (*.f64 M #s(literal 2 binary64))) #s(literal 2 binary64))))))
(*.f64 w0 (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 (/.f64 h l) (pow.f64 (*.f64 D (/.f64 d (*.f64 M #s(literal 2 binary64)))) #s(literal 2 binary64))))))
(*.f64 w0 (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 h (/.f64 (pow.f64 (*.f64 (/.f64 D #s(literal 2 binary64)) (/.f64 d M)) #s(literal 2 binary64)) l)))))
(*.f64 w0 (sqrt.f64 (fma.f64 (/.f64 h l) (neg.f64 (pow.f64 (*.f64 (/.f64 D #s(literal 2 binary64)) (/.f64 d M)) #s(literal 2 binary64))) #s(literal 1 binary64))))
(*.f64 w0 (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (/.f64 (*.f64 M h) (*.f64 #s(literal 2 binary64) d)) #s(literal 2 binary64)) (/.f64 D l)))))
(*.f64 w0 (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (*.f64 M (/.f64 h (*.f64 #s(literal 2 binary64) d))) #s(literal 2 binary64)) (/.f64 D l)))))
(*.f64 w0 (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (*.f64 (/.f64 h d) (/.f64 M #s(literal 2 binary64))) #s(literal 2 binary64)) (/.f64 D l)))))
(*.f64 w0 (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (*.f64 h (/.f64 (/.f64 M #s(literal 2 binary64)) d)) #s(literal 2 binary64)) (/.f64 D l)))))
(*.f64 w0 (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (/.f64 (*.f64 M l) (*.f64 #s(literal 2 binary64) d)) #s(literal 2 binary64)) (/.f64 h D)))))
(*.f64 w0 (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (*.f64 M (/.f64 l (*.f64 #s(literal 2 binary64) d))) #s(literal 2 binary64)) (/.f64 h D)))))
(*.f64 w0 (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (*.f64 l (/.f64 (/.f64 M #s(literal 2 binary64)) d)) #s(literal 2 binary64)) (/.f64 h D)))))
(*.f64 w0 (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 h (/.f64 (pow.f64 (*.f64 M (/.f64 (/.f64 l #s(literal 2 binary64)) d)) #s(literal 2 binary64)) D)))))
(*.f64 w0 (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (/.f64 (*.f64 M d) (*.f64 #s(literal 2 binary64) D)) #s(literal 2 binary64)) (/.f64 h l)))))
(*.f64 w0 (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 (/.f64 h l) (pow.f64 (*.f64 (/.f64 M #s(literal 2 binary64)) (/.f64 d D)) #s(literal 2 binary64))))))
(*.f64 w0 (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 (/.f64 h l) (pow.f64 (/.f64 (*.f64 M (/.f64 d #s(literal 2 binary64))) D) #s(literal 2 binary64))))))
(*.f64 w0 (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 h (/.f64 (pow.f64 (*.f64 M (/.f64 d (*.f64 D #s(literal 2 binary64)))) #s(literal 2 binary64)) l)))))
(*.f64 w0 (sqrt.f64 (fma.f64 (/.f64 h l) (neg.f64 (pow.f64 (*.f64 M (/.f64 d (*.f64 D #s(literal 2 binary64)))) #s(literal 2 binary64))) #s(literal 1 binary64))))
(*.f64 w0 (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (/.f64 (*.f64 M D) (*.f64 #s(literal 2 binary64) d)) #s(literal 2 binary64)) (/.f64 l h)))))
(*.f64 w0 (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (*.f64 M (/.f64 D (*.f64 #s(literal 2 binary64) d))) #s(literal 2 binary64)) (/.f64 l h)))))
(*.f64 w0 (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (*.f64 D (/.f64 (/.f64 M #s(literal 2 binary64)) d)) #s(literal 2 binary64)) (/.f64 l h)))))
(*.f64 w0 (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (*.f64 (/.f64 D #s(literal 2 binary64)) (/.f64 M d)) #s(literal 2 binary64)) (/.f64 l h)))))
(*.f64 w0 (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (*.f64 D (*.f64 (/.f64 M d) #s(literal -1/2 binary64))) #s(literal 2 binary64)) (/.f64 l h)))))
(*.f64 w0 (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (/.f64 (*.f64 M D) (*.f64 #s(literal 2 binary64) h)) #s(literal 2 binary64)) (/.f64 d l)))))
(*.f64 w0 (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (*.f64 M (/.f64 D (*.f64 #s(literal 2 binary64) h))) #s(literal 2 binary64)) (/.f64 d l)))))
(*.f64 w0 (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 d (/.f64 (pow.f64 (*.f64 M (/.f64 D (*.f64 #s(literal 2 binary64) h))) #s(literal 2 binary64)) l)))))
(*.f64 w0 (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 d (/.f64 (pow.f64 (/.f64 (*.f64 D (/.f64 M #s(literal 2 binary64))) h) #s(literal 2 binary64)) l)))))
(*.f64 w0 (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (/.f64 (*.f64 M D) (*.f64 #s(literal 2 binary64) l)) #s(literal 2 binary64)) (/.f64 h d)))))
(*.f64 w0 (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (*.f64 M (/.f64 D (*.f64 #s(literal 2 binary64) l))) #s(literal 2 binary64)) (/.f64 h d)))))
Symmetry

(abs M)

(abs D)

(abs d)

(negabs w0)

(sort M D)

Compiler

Compiled 24 to 17 computations (29.2% saved)

eval0.0ms (0%)

Memory
0.3MiB live, 0.3MiB allocated
Compiler

Compiled 6 to 6 computations (0% saved)

prune1.0ms (0%)

Memory
1.0MiB live, 1.0MiB allocated
Alt Table
Click to see full alt table
StatusAccuracyProgram
78.7%
(*.f64 w0 (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (/.f64 (*.f64 M D) (*.f64 #s(literal 2 binary64) d)) #s(literal 2 binary64)) (/.f64 h l)))))
Compiler

Compiled 48 to 34 computations (29.2% saved)

simplify3.0ms (0.1%)

Memory
0.7MiB live, 0.7MiB allocated
Algorithm
egg-herbie
Rules
*-commutative
sub-neg
+-commutative
neg-sub0
neg-mul-1
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02771
14171
25271
36271
47071
57571
67771
Stop Event
saturated
Calls
Call 1
Inputs
(*.f64 w0 (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (/.f64 (*.f64 M D) (*.f64 #s(literal 2 binary64) d)) #s(literal 2 binary64)) (/.f64 h l)))))
Outputs
(*.f64 w0 (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (/.f64 (*.f64 M D) (*.f64 #s(literal 2 binary64) d)) #s(literal 2 binary64)) (/.f64 h l)))))

soundness0.0ms (0%)

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

Compiled 24 to 17 computations (29.2% saved)

preprocess32.0ms (0.6%)

Memory
5.2MiB live, 36.6MiB allocated
Remove

(sort M D)

(negabs w0)

(abs d)

(abs D)

(abs M)

Compiler

Compiled 576 to 408 computations (29.2% saved)

end0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated

Profiling

Loading profile data...