ab-angle->ABCF C

Time bar (total: 3.9s)

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.5s (89%)

Results
971.0ms1048×body1024valid
836.0ms884×body1024infinite
669.0ms3535×body256valid
327.0ms1723×body256infinite
266.0ms498×body512valid
261.0ms454×body512infinite
155.0ms111×body2048valid
14.0msbody4096valid
Bogosity

preprocess434.0ms (11%)

Algorithm
egg-herbie
Rules
765×distribute-lft-neg-in
679×fma-def
531×distribute-rgt-neg-in
476×associate-+r+
458×distribute-lft-in
Problems
113×No Errors
74×(sin.f64 (*.f64 (PI.f64) (/.f64 angle 180)))
67×(cos.f64 (*.f64 (PI.f64) (/.f64 angle 180)))
(pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle 180)))) 2)
(*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle 180))))
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
066893
1161881
2481881
31630881
43097881
56078881
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 (PI.f64) (/.f64 -180 angle)))) 2) (pow.f64 (*.f64 b (sin.f64 (/.f64 (PI.f64) (/.f64 -180 angle)))) 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 (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 -180 angle)))) 2) (pow.f64 (*.f64 b (sin.f64 (/.f64 (PI.f64) (/.f64 -180 angle)))) 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 (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 (PI.f64) (/.f64 -180 angle)))) 2) (pow.f64 (*.f64 b (sin.f64 (/.f64 (PI.f64) (/.f64 -180 angle)))) 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 (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 (PI.f64) (/.f64 -180 angle)))) 2) (pow.f64 (*.f64 b (sin.f64 (/.f64 (PI.f64) (/.f64 -180 angle)))) 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 (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 (PI.f64) (/.f64 -180 angle)))) 2) (pow.f64 (*.f64 b (sin.f64 (/.f64 (PI.f64) (/.f64 -180 angle)))) 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))
(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 (PI.f64) (/.f64 -180 angle)))) 2)) (pow.f64 (*.f64 a (cos.f64 (/.f64 (PI.f64) (/.f64 -180 angle)))) 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 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 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 (PI.f64) (/.f64 -180 angle)))) 2)) (pow.f64 (*.f64 a (cos.f64 (/.f64 (PI.f64) (/.f64 -180 angle)))) 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 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 (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 (PI.f64) (/.f64 -180 angle)))) 2)) (pow.f64 (*.f64 a (cos.f64 (/.f64 (PI.f64) (/.f64 -180 angle)))) 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 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 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 (PI.f64) (/.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 (/.f64 (PI.f64) -180) angle)) 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 (/.f64 (PI.f64) 180) a))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 (PI.f64) 180) a))) 2))
(+.f64 (pow.f64 (*.f64 angle (cos.f64 (*.f64 a (/.f64 (PI.f64) 180)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 a (/.f64 (PI.f64) 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))
(+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 (PI.f64) 180) b))) 2) (pow.f64 (*.f64 angle (sin.f64 (*.f64 (/.f64 (PI.f64) 180) b))) 2))
(+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 b (/.f64 (PI.f64) 180)))) 2) (pow.f64 (*.f64 angle (sin.f64 (*.f64 b (/.f64 (PI.f64) 180)))) 2))
Symmetry

(abs a)

(abs b)

(abs angle)

Compiler

Compiled 87 to 59 computations (32.2% saved)

end0.0ms (0%)

Profiling

Loading profile data...