Eccentricity of an ellipse

Time bar (total: 7.7s)

analyze19.0ms (0.3%)

Algorithm
search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%37.5%62.5%0%0%0%0
0%0%37.5%62.5%0%0%0%1
50%18.7%18.7%62.5%0%0%0%2
50%18.7%18.7%62.5%0%0%0%3
75%28.1%9.4%62.5%0%0%0%4
75%28.1%9.4%62.5%0%0%0%5
87.5%32.8%4.7%62.5%0%0%0%6
87.5%32.8%4.7%62.5%0%0%0%7
93.8%35.1%2.3%62.5%0%0%0%8
93.8%35.1%2.3%62.5%0%0%0%9
96.9%36.3%1.2%62.5%0%0%0%10
96.9%36.3%1.2%62.5%0%0%0%11
98.4%36.9%0.6%62.5%0%0%0%12
Compiler

Compiled 16 to 9 computations (43.8% saved)

sample7.4s (96%)

Results
595.0ms8253×0valid-sollya
1.1s8253×0valid-rival
Bogosity

preprocess185.0ms (2.4%)

Algorithm
egg-herbie
Rules
707×times-frac
477×div-sub
450×fma-neg
318×fabs-mul
295×associate-*l/
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
032407
1106323
2390295
32599295
47059295
Stop Event
node limit
Calls
Call 1
Inputs
(sqrt.f64 (fabs.f64 (/.f64 (-.f64 (*.f64 a a) (*.f64 b b)) (*.f64 a a))))
(sqrt.f64 (fabs.f64 (/.f64 (-.f64 (*.f64 a a) (*.f64 b b)) (*.f64 a a))))
(sqrt.f64 (fabs.f64 (/.f64 (-.f64 (*.f64 (neg.f64 a) (neg.f64 a)) (*.f64 b b)) (*.f64 (neg.f64 a) (neg.f64 a)))))
(sqrt.f64 (fabs.f64 (/.f64 (-.f64 (*.f64 a a) (*.f64 (neg.f64 b) (neg.f64 b))) (*.f64 a a))))
(neg.f64 (sqrt.f64 (fabs.f64 (/.f64 (-.f64 (*.f64 (neg.f64 a) (neg.f64 a)) (*.f64 b b)) (*.f64 (neg.f64 a) (neg.f64 a))))))
(neg.f64 (sqrt.f64 (fabs.f64 (/.f64 (-.f64 (*.f64 a a) (*.f64 (neg.f64 b) (neg.f64 b))) (*.f64 a a)))))
(sqrt.f64 (fabs.f64 (/.f64 (-.f64 (*.f64 b b) (*.f64 a a)) (*.f64 b b))))
Outputs
(sqrt.f64 (fabs.f64 (/.f64 (-.f64 (*.f64 a a) (*.f64 b b)) (*.f64 a a))))
(sqrt.f64 (fabs.f64 (-.f64 #s(literal 1 binary64) (*.f64 b (/.f64 b (*.f64 a a))))))
(sqrt.f64 (fabs.f64 (fma.f64 (/.f64 b a) (/.f64 b a) #s(literal -1 binary64))))
(sqrt.f64 (fabs.f64 (/.f64 (-.f64 (*.f64 a a) (*.f64 b b)) (*.f64 a a))))
(sqrt.f64 (fabs.f64 (-.f64 #s(literal 1 binary64) (*.f64 b (/.f64 b (*.f64 a a))))))
(sqrt.f64 (fabs.f64 (fma.f64 (/.f64 b a) (/.f64 b a) #s(literal -1 binary64))))
(sqrt.f64 (fabs.f64 (/.f64 (-.f64 (*.f64 (neg.f64 a) (neg.f64 a)) (*.f64 b b)) (*.f64 (neg.f64 a) (neg.f64 a)))))
(sqrt.f64 (fabs.f64 (/.f64 (-.f64 (*.f64 a a) (*.f64 b b)) (*.f64 a a))))
(sqrt.f64 (fabs.f64 (-.f64 #s(literal 1 binary64) (*.f64 b (/.f64 b (*.f64 a a))))))
(sqrt.f64 (fabs.f64 (fma.f64 (/.f64 b a) (/.f64 b a) #s(literal -1 binary64))))
(sqrt.f64 (fabs.f64 (/.f64 (-.f64 (*.f64 a a) (*.f64 (neg.f64 b) (neg.f64 b))) (*.f64 a a))))
(sqrt.f64 (fabs.f64 (/.f64 (-.f64 (*.f64 a a) (*.f64 b b)) (*.f64 a a))))
(sqrt.f64 (fabs.f64 (-.f64 #s(literal 1 binary64) (*.f64 b (/.f64 b (*.f64 a a))))))
(sqrt.f64 (fabs.f64 (fma.f64 (/.f64 b a) (/.f64 b a) #s(literal -1 binary64))))
(neg.f64 (sqrt.f64 (fabs.f64 (/.f64 (-.f64 (*.f64 (neg.f64 a) (neg.f64 a)) (*.f64 b b)) (*.f64 (neg.f64 a) (neg.f64 a))))))
(neg.f64 (sqrt.f64 (fabs.f64 (/.f64 (-.f64 (*.f64 a a) (*.f64 b b)) (*.f64 a a)))))
(neg.f64 (sqrt.f64 (fabs.f64 (-.f64 #s(literal 1 binary64) (*.f64 b (/.f64 b (*.f64 a a)))))))
(neg.f64 (sqrt.f64 (fabs.f64 (fma.f64 (/.f64 b a) (/.f64 b a) #s(literal -1 binary64)))))
(neg.f64 (sqrt.f64 (fabs.f64 (/.f64 (-.f64 (*.f64 a a) (*.f64 (neg.f64 b) (neg.f64 b))) (*.f64 a a)))))
(neg.f64 (sqrt.f64 (fabs.f64 (/.f64 (-.f64 (*.f64 a a) (*.f64 b b)) (*.f64 a a)))))
(neg.f64 (sqrt.f64 (fabs.f64 (-.f64 #s(literal 1 binary64) (*.f64 b (/.f64 b (*.f64 a a)))))))
(neg.f64 (sqrt.f64 (fabs.f64 (fma.f64 (/.f64 b a) (/.f64 b a) #s(literal -1 binary64)))))
(sqrt.f64 (fabs.f64 (/.f64 (-.f64 (*.f64 b b) (*.f64 a a)) (*.f64 b b))))
(sqrt.f64 (fabs.f64 (-.f64 #s(literal 1 binary64) (*.f64 (/.f64 a b) (/.f64 a b)))))
(sqrt.f64 (fabs.f64 (fma.f64 (/.f64 a b) (/.f64 a b) #s(literal -1 binary64))))
(sqrt.f64 (fabs.f64 (fma.f64 a (/.f64 a (*.f64 b b)) #s(literal -1 binary64))))
Symmetry

(abs a)

(abs b)

Compiler

Compiled 15 to 8 computations (46.7% saved)

eval0.0ms (0%)

Compiler

Compiled 2 to 2 computations (0% saved)

prune1.0ms (0%)

Alt Table
Click to see full alt table
StatusAccuracyProgram
54.6%
(sqrt.f64 (fabs.f64 (/.f64 (-.f64 (*.f64 a a) (*.f64 b b)) (*.f64 a a))))
Compiler

Compiled 30 to 16 computations (46.7% saved)

simplify10.0ms (0.1%)

Algorithm
egg-herbie
Rules
sub-neg
+-commutative
*-commutative
neg-sub0
neg-mul-1
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01457
12257
23557
34957
46057
56657
66957
Stop Event
saturated
Calls
Call 1
Inputs
(sqrt.f64 (fabs.f64 (/.f64 (-.f64 (*.f64 a a) (*.f64 b b)) (*.f64 a a))))
Outputs
(sqrt.f64 (fabs.f64 (/.f64 (-.f64 (*.f64 a a) (*.f64 b b)) (*.f64 a a))))
(sqrt.f64 (/.f64 (fabs.f64 (-.f64 (*.f64 a a) (*.f64 b b))) (*.f64 a a)))

soundness0.0ms (0%)

Stop Event
fuel
Compiler

Compiled 15 to 8 computations (46.7% saved)

preprocess89.0ms (1.2%)

Remove

(abs b)

(abs a)

Compiler

Compiled 180 to 96 computations (46.7% saved)

end0.0ms (0%)

Profiling

Loading profile data...