Eccentricity of an ellipse

Time bar (total: 21.0s)

analyze123.0ms (0.6%)

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
0%0%18.7%81.3%0%0%0%2
0%0%9.4%90.6%0%0%0%3
0%0%9.4%90.6%0%0%0%4
0%0%7%93%0%0%0%5
20%1.2%4.7%94.1%0%0%0%6
25%1.2%3.5%95.3%0%0%0%7
40%1.8%2.6%95.6%0%0%0%8
51.9%2%1.9%96%0%0%0%9
64.7%2.4%1.3%96.3%0%0%0%10
72.9%2.6%1%96.5%0%0%0%11
80.2%2.7%0.7%96.6%0%0%0%12
Compiler

Compiled 26 to 15 computations (42.3% saved)

sample20.3s (96.4%)

Results
3.2s8256×0valid-rival
532.0ms8206×0valid-sollya
250.0ms50×0exit-sollya
Bogosity

preprocess390.0ms (1.9%)

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)

eval1.0ms (0%)

Compiler

Compiled 2 to 2 computations (0% saved)

prune3.0ms (0%)

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

Compiled 30 to 16 computations (46.7% saved)

simplify38.0ms (0.2%)

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)))

soundness1.0ms (0%)

Stop Event
fuel
Compiler

Compiled 15 to 8 computations (46.7% saved)

preprocess191.0ms (0.9%)

Remove

(abs b)

(abs a)

Compiler

Compiled 180 to 96 computations (46.7% saved)

end0.0ms (0%)

Profiling

Loading profile data...