ab-angle->ABCF C

Time bar (total: 4.2s)

analyze1.0ms (0%)

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

Compiled 25 to 20 computations (20% saved)

sample3.8s (90.8%)

Results
1.0s1081×body1024valid
849.0ms853×body1024infinite
788.0ms3599×body256valid
330.0ms524×body512valid
328.0ms1693×body256infinite
309.0ms396×body512infinite
168.0ms108×body2048valid
10.0msbody4096valid
Bogosity

preprocess388.0ms (9.2%)

Algorithm
egg-herbie
Rules
2200×fma-def
976×unswap-sqr
782×unsub-neg
692×fma-neg
652×distribute-lft-neg-in
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
066893
1161881
2448881
31582881
43073881
55714881
Stop Event
node limit
Calls
Call 1
Inputs
(+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle 180)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle 180)))) 2))
(+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle 180)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle 180)))) 2))
(+.f64 (pow.f64 (*.f64 (neg.f64 a) (cos.f64 (*.f64 (PI.f64) (/.f64 angle 180)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle 180)))) 2))
(+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle 180)))) 2) (pow.f64 (*.f64 (neg.f64 b) (sin.f64 (*.f64 (PI.f64) (/.f64 angle 180)))) 2))
(+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 (neg.f64 angle) 180)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 (neg.f64 angle) 180)))) 2))
(neg.f64 (+.f64 (pow.f64 (*.f64 (neg.f64 a) (cos.f64 (*.f64 (PI.f64) (/.f64 angle 180)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle 180)))) 2)))
(neg.f64 (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle 180)))) 2) (pow.f64 (*.f64 (neg.f64 b) (sin.f64 (*.f64 (PI.f64) (/.f64 angle 180)))) 2)))
(neg.f64 (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 (neg.f64 angle) 180)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 (neg.f64 angle) 180)))) 2)))
(+.f64 (pow.f64 (*.f64 b (cos.f64 (*.f64 (PI.f64) (/.f64 angle 180)))) 2) (pow.f64 (*.f64 a (sin.f64 (*.f64 (PI.f64) (/.f64 angle 180)))) 2))
(+.f64 (pow.f64 (*.f64 angle (cos.f64 (*.f64 (PI.f64) (/.f64 a 180)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 a 180)))) 2))
(+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 b 180)))) 2) (pow.f64 (*.f64 angle (sin.f64 (*.f64 (PI.f64) (/.f64 b 180)))) 2))
Outputs
(+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle 180)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle 180)))) 2))
(+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 (PI.f64) -180) angle))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 (PI.f64) -180) angle))) 2))
(+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 angle (/.f64 (PI.f64) -180)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 angle (/.f64 (PI.f64) -180)))) 2))
(+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle 180)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle 180)))) 2))
(+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 (PI.f64) -180) angle))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 (PI.f64) -180) angle))) 2))
(+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 angle (/.f64 (PI.f64) -180)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 angle (/.f64 (PI.f64) -180)))) 2))
(+.f64 (pow.f64 (*.f64 (neg.f64 a) (cos.f64 (*.f64 (PI.f64) (/.f64 angle 180)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle 180)))) 2))
(+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle 180)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle 180)))) 2))
(+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 (PI.f64) -180) angle))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 (PI.f64) -180) angle))) 2))
(+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 angle (/.f64 (PI.f64) -180)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 angle (/.f64 (PI.f64) -180)))) 2))
(+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle 180)))) 2) (pow.f64 (*.f64 (neg.f64 b) (sin.f64 (*.f64 (PI.f64) (/.f64 angle 180)))) 2))
(+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle 180)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle 180)))) 2))
(+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 (PI.f64) -180) angle))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 (PI.f64) -180) angle))) 2))
(+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 angle (/.f64 (PI.f64) -180)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 angle (/.f64 (PI.f64) -180)))) 2))
(+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 (neg.f64 angle) 180)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 (neg.f64 angle) 180)))) 2))
(+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle 180)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle 180)))) 2))
(+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 (PI.f64) -180) angle))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 (PI.f64) -180) angle))) 2))
(+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 angle (/.f64 (PI.f64) -180)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 angle (/.f64 (PI.f64) -180)))) 2))
(neg.f64 (+.f64 (pow.f64 (*.f64 (neg.f64 a) (cos.f64 (*.f64 (PI.f64) (/.f64 angle 180)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle 180)))) 2)))
(neg.f64 (+.f64 (pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle 180)))) 2) (pow.f64 (*.f64 (cos.f64 (*.f64 (PI.f64) (/.f64 angle 180))) (neg.f64 a)) 2)))
(-.f64 (neg.f64 (pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle 180)))) 2)) (pow.f64 (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle 180)))) 2))
(-.f64 (neg.f64 (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 (PI.f64) -180) angle))) 2)) (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 (PI.f64) -180) angle))) 2))
(-.f64 (neg.f64 (pow.f64 (*.f64 b (sin.f64 (*.f64 angle (/.f64 (PI.f64) -180)))) 2)) (pow.f64 (*.f64 a (cos.f64 (*.f64 angle (/.f64 (PI.f64) -180)))) 2))
(neg.f64 (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle 180)))) 2) (pow.f64 (*.f64 (neg.f64 b) (sin.f64 (*.f64 (PI.f64) (/.f64 angle 180)))) 2)))
(neg.f64 (+.f64 (pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle 180)))) 2) (pow.f64 (*.f64 (cos.f64 (*.f64 (PI.f64) (/.f64 angle 180))) (neg.f64 a)) 2)))
(-.f64 (neg.f64 (pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle 180)))) 2)) (pow.f64 (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle 180)))) 2))
(-.f64 (neg.f64 (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 (PI.f64) -180) angle))) 2)) (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 (PI.f64) -180) angle))) 2))
(-.f64 (neg.f64 (pow.f64 (*.f64 b (sin.f64 (*.f64 angle (/.f64 (PI.f64) -180)))) 2)) (pow.f64 (*.f64 a (cos.f64 (*.f64 angle (/.f64 (PI.f64) -180)))) 2))
(neg.f64 (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 (neg.f64 angle) 180)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 (neg.f64 angle) 180)))) 2)))
(neg.f64 (+.f64 (pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle 180)))) 2) (pow.f64 (*.f64 (cos.f64 (*.f64 (PI.f64) (/.f64 angle 180))) (neg.f64 a)) 2)))
(-.f64 (neg.f64 (pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle 180)))) 2)) (pow.f64 (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle 180)))) 2))
(-.f64 (neg.f64 (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 (PI.f64) -180) angle))) 2)) (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 (PI.f64) -180) angle))) 2))
(-.f64 (neg.f64 (pow.f64 (*.f64 b (sin.f64 (*.f64 angle (/.f64 (PI.f64) -180)))) 2)) (pow.f64 (*.f64 a (cos.f64 (*.f64 angle (/.f64 (PI.f64) -180)))) 2))
(+.f64 (pow.f64 (*.f64 b (cos.f64 (*.f64 (PI.f64) (/.f64 angle 180)))) 2) (pow.f64 (*.f64 a (sin.f64 (*.f64 (PI.f64) (/.f64 angle 180)))) 2))
(+.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 (PI.f64) (/.f64 angle 180))) b) 2) (pow.f64 (*.f64 a (sin.f64 (*.f64 (PI.f64) (/.f64 angle 180)))) 2))
(+.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 (/.f64 (PI.f64) -180) angle)) b) 2) (pow.f64 (*.f64 a (sin.f64 (*.f64 (PI.f64) (/.f64 angle 180)))) 2))
(+.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 angle (/.f64 (PI.f64) -180))) b) 2) (pow.f64 (*.f64 a (sin.f64 (*.f64 (PI.f64) (/.f64 angle 180)))) 2))
(+.f64 (pow.f64 (*.f64 angle (cos.f64 (*.f64 (PI.f64) (/.f64 a 180)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 a 180)))) 2))
(+.f64 (pow.f64 (*.f64 angle (cos.f64 (/.f64 a (/.f64 180 (PI.f64))))) 2) (pow.f64 (*.f64 b (sin.f64 (/.f64 a (/.f64 180 (PI.f64))))) 2))
(+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 b 180)))) 2) (pow.f64 (*.f64 angle (sin.f64 (*.f64 (PI.f64) (/.f64 b 180)))) 2))
(+.f64 (pow.f64 (*.f64 a (cos.f64 (/.f64 (*.f64 (PI.f64) b) 180))) 2) (pow.f64 (*.f64 angle (sin.f64 (/.f64 (*.f64 (PI.f64) b) 180))) 2))
(+.f64 (pow.f64 (*.f64 a (cos.f64 (/.f64 b (/.f64 180 (PI.f64))))) 2) (pow.f64 (*.f64 angle (sin.f64 (/.f64 b (/.f64 180 (PI.f64))))) 2))
Symmetry

(abs a)

(abs b)

(abs angle)

Compiler

Compiled 174 to 118 computations (32.2% saved)

end0.0ms (0%)

Profiling

Loading profile data...