Given's Rotation SVD example, simplified

Time bar (total: 25.1s)

analyze1.0ms (0%)

Algorithm
search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%100%0%0%0%0%0
100%100%0%0%0%0%0%1
Compiler

Compiled 14 to 10 computations (28.6% saved)

sample24.5s (97.8%)

Results
1.9s4237×0valid-rival
472.0ms4227×0valid-sollya
4.4s4019×1valid-rival
1.2s3998×1valid-sollya
105.0ms21×1exit-sollya
50.0ms10×0exit-sollya
Bogosity

preprocess385.0ms (1.5%)

Algorithm
egg-herbie
Rules
43×fma-define
34×fma-neg
13×neg-mul-1
12×associate--r+
12×associate-+l-
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
022160
157128
295128
3158128
4242128
5300128
6328128
7338128
8342128
Stop Event
saturated
Calls
Call 1
Inputs
(-.f64 #s(literal 1 binary64) (sqrt.f64 (*.f64 #s(literal 1/2 binary64) (+.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (hypot.f64 #s(literal 1 binary64) x))))))
(-.f64 #s(literal 1 binary64) (sqrt.f64 (*.f64 #s(literal 1/2 binary64) (+.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (hypot.f64 #s(literal 1 binary64) x))))))
(-.f64 #s(literal 1 binary64) (sqrt.f64 (*.f64 #s(literal 1/2 binary64) (+.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (hypot.f64 #s(literal 1 binary64) (neg.f64 x)))))))
(neg.f64 (-.f64 #s(literal 1 binary64) (sqrt.f64 (*.f64 #s(literal 1/2 binary64) (+.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (hypot.f64 #s(literal 1 binary64) (neg.f64 x))))))))
Outputs
(-.f64 #s(literal 1 binary64) (sqrt.f64 (*.f64 #s(literal 1/2 binary64) (+.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (hypot.f64 #s(literal 1 binary64) x))))))
(-.f64 #s(literal 1 binary64) (sqrt.f64 (+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (/.f64 #s(literal 1 binary64) (hypot.f64 #s(literal 1 binary64) x))))))
(-.f64 #s(literal 1 binary64) (sqrt.f64 (+.f64 #s(literal 1/2 binary64) (/.f64 #s(literal 1/2 binary64) (hypot.f64 #s(literal 1 binary64) x)))))
(-.f64 #s(literal 1 binary64) (sqrt.f64 (*.f64 #s(literal 1/2 binary64) (+.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (hypot.f64 #s(literal 1 binary64) x))))))
(-.f64 #s(literal 1 binary64) (sqrt.f64 (+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (/.f64 #s(literal 1 binary64) (hypot.f64 #s(literal 1 binary64) x))))))
(-.f64 #s(literal 1 binary64) (sqrt.f64 (+.f64 #s(literal 1/2 binary64) (/.f64 #s(literal 1/2 binary64) (hypot.f64 #s(literal 1 binary64) x)))))
(-.f64 #s(literal 1 binary64) (sqrt.f64 (*.f64 #s(literal 1/2 binary64) (+.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (hypot.f64 #s(literal 1 binary64) (neg.f64 x)))))))
(-.f64 #s(literal 1 binary64) (sqrt.f64 (+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (/.f64 #s(literal 1 binary64) (hypot.f64 #s(literal 1 binary64) x))))))
(-.f64 #s(literal 1 binary64) (sqrt.f64 (+.f64 #s(literal 1/2 binary64) (/.f64 #s(literal 1/2 binary64) (hypot.f64 #s(literal 1 binary64) x)))))
(neg.f64 (-.f64 #s(literal 1 binary64) (sqrt.f64 (*.f64 #s(literal 1/2 binary64) (+.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (hypot.f64 #s(literal 1 binary64) (neg.f64 x))))))))
(neg.f64 (-.f64 #s(literal 1 binary64) (sqrt.f64 (+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (/.f64 #s(literal 1 binary64) (hypot.f64 #s(literal 1 binary64) (neg.f64 x))))))))
(+.f64 #s(literal -1 binary64) (sqrt.f64 (+.f64 #s(literal 1/2 binary64) (/.f64 #s(literal 1/2 binary64) (hypot.f64 #s(literal 1 binary64) x)))))
(+.f64 (sqrt.f64 (+.f64 #s(literal 1/2 binary64) (/.f64 #s(literal 1/2 binary64) (hypot.f64 #s(literal 1 binary64) x)))) #s(literal -1 binary64))
Symmetry

(abs x)

Compiler

Compiled 13 to 9 computations (30.8% saved)

eval0.0ms (0%)

Compiler

Compiled 1 to 1 computations (0% saved)

prune3.0ms (0%)

Alt Table
Click to see full alt table
StatusAccuracyProgram
80.3%
(-.f64 #s(literal 1 binary64) (sqrt.f64 (*.f64 #s(literal 1/2 binary64) (+.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (hypot.f64 #s(literal 1 binary64) x))))))
Compiler

Compiled 26 to 18 computations (30.8% saved)

simplify6.0ms (0%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
01438
12338
22738
32938
43038
Stop Event
saturated
Calls
Call 1
Inputs
(-.f64 #s(literal 1 binary64) (sqrt.f64 (*.f64 #s(literal 1/2 binary64) (+.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (hypot.f64 #s(literal 1 binary64) x))))))
Outputs
(-.f64 #s(literal 1 binary64) (sqrt.f64 (*.f64 #s(literal 1/2 binary64) (+.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (hypot.f64 #s(literal 1 binary64) x))))))

soundness1.0ms (0%)

Stop Event
fuel
Compiler

Compiled 13 to 9 computations (30.8% saved)

preprocess166.0ms (0.7%)

Remove

(abs x)

Compiler

Compiled 104 to 72 computations (30.8% saved)

end0.0ms (0%)

Profiling

Loading profile data...