
Time bar (total: 2.7s)
| 1× | search |
| Probability | Valid | Unknown | Precondition | Infinite | Domain | Can't | Iter |
|---|---|---|---|---|---|---|---|
| 0% | 0% | 99.9% | 0.1% | 0% | 0% | 0% | 0 |
| 100% | 99.9% | 0% | 0.1% | 0% | 0% | 0% | 1 |
Compiled 23 to 12 computations (47.8% saved)
| 1.2s | 8 256× | 0 | valid |
ival-sinu: 452.0ms (45.2% of total)ival-cosu: 212.0ms (21.2% of total)ival-pow2: 174.0ms (17.4% of total)ival-mult: 116.0ms (11.6% of total)ival-add: 36.0ms (3.6% of total)ival-true: 6.0ms (0.6% of total)ival-assert: 3.0ms (0.3% of total)| Ground Truth | Overpredictions | Example | Underpredictions | Example | Subexpression |
|---|---|---|---|---|---|
| 123 | 0 | - | 0 | - | (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) |
| 123 | 0 | - | 0 | - | (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) |
| 1 | 0 | - | 1 | (-6.6236670837266825e+255 4.188184698450465e+249 2.860005577086827e-308) | (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) |
| 0 | 0 | - | 0 | - | (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64)) (pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) |
| 0 | 0 | - | 0 | - | (pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64)) |
| 0 | 0 | - | 0 | - | (/.f64 angle #s(literal 180 binary64)) |
| 0 | 0 | - | 0 | - | (pow.f64 (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64)) |
| 0 | 0 | - | 0 | - | a |
| 0 | 0 | - | 0 | - | #s(literal 180 binary64) |
| 0 | 0 | - | 0 | - | angle |
| 0 | 0 | - | 0 | - | (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))) |
| 0 | 0 | - | 0 | - | #s(literal 2 binary64) |
| 0 | 0 | - | 0 | - | b |
| 0 | 0 | - | 0 | - | (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) |
| 0 | 0 | - | 0 | - | (PI.f64) |
| Operator | Subexpression | Explanation | Count | |
|---|---|---|---|---|
cos.f64 | (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) | sensitivity | 123 | 1 |
sin.f64 | (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) | sensitivity | 123 | 1 |
| Predicted + | Predicted - | |
|---|---|---|
| + | 58 | 0 |
| - | 65 | 133 |
| Predicted + | Predicted Maybe | Predicted - | |
|---|---|---|---|
| + | 58 | 0 | 0 |
| - | 65 | 1 | 132 |
| number | freq |
|---|---|
| 0 | 133 |
| 2 | 123 |
| Predicted + | Predicted Maybe | Predicted - | |
|---|---|---|---|
| + | 1 | 0 | 0 |
| - | 0 | 0 | 0 |
| 84.0ms | 512× | 0 | valid |
Compiled 274 to 64 computations (76.6% saved)
ival-pow2: 15.0ms (24.3% of total)ival-cosu: 13.0ms (21% of total)ival-sinu: 13.0ms (21% of total)ival-mult: 11.0ms (17.8% of total)ival-div: 5.0ms (8.1% of total)ival-pi: 2.0ms (3.2% of total)ival-add: 2.0ms (3.2% of total)ival-true: 1.0ms (1.6% of total)exact: 1.0ms (1.6% of total)ival-assert: 0.0ms (0% of total)| 1× | egg-herbie |
| Inputs |
|---|
(+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64)) (pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) |
| Outputs |
|---|
(+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64)) (pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) |
Compiled 21 to 15 computations (28.6% saved)
Compiled 0 to 3 computations (-∞% saved)
| Status | Accuracy | Program |
|---|---|---|
| ▶ | 81.5% | (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64)) (pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) |
Compiled 21 to 15 computations (28.6% saved)
| 1× | egg-herbie |
Found 4 expressions of interest:
| New | Metric | Score | Program |
|---|---|---|---|
| cost-diff | 0 | (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) | |
| cost-diff | 0 | (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) | |
| cost-diff | 0 | (pow.f64 (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64)) | |
| cost-diff | 0 | (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64)) (pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) |
| Inputs |
|---|
(+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64)) (pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) |
(pow.f64 (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64)) |
(*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) |
a |
(cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) |
(*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))) |
(PI.f64) |
(/.f64 angle #s(literal 180 binary64)) |
angle |
#s(literal 180 binary64) |
#s(literal 2 binary64) |
(pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64)) |
(*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) |
b |
(sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) |
| Outputs |
|---|
(+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64)) (pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) |
(pow.f64 (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64)) |
(*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) |
a |
(cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) |
(*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))) |
(PI.f64) |
(/.f64 angle #s(literal 180 binary64)) |
angle |
#s(literal 180 binary64) |
#s(literal 2 binary64) |
(pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64)) |
(*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) |
b |
(sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) |
Found 4 expressions of interest:
| New | Metric | Score | Program |
|---|---|---|---|
| accuracy | 0.192374716849389 | (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) | |
| accuracy | 0.3046875 | (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))) | |
| accuracy | 27.049848645940852 | (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) | |
| accuracy | 27.37181816252783 | (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) |
| 43.0ms | 256× | 0 | valid |
Compiled 168 to 32 computations (81% saved)
ival-sinu: 12.0ms (36.9% of total)ival-cosu: 6.0ms (18.4% of total)ival-mult: 5.0ms (15.4% of total)ival-pow2: 5.0ms (15.4% of total)ival-div: 2.0ms (6.1% of total)ival-pi: 1.0ms (3.1% of total)ival-add: 1.0ms (3.1% of total)ival-assert: 0.0ms (0% of total)ival-true: 0.0ms (0% of total)exact: 0.0ms (0% of total)| Inputs |
|---|
(+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64)) (pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) |
(pow.f64 (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64)) |
(*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) |
(cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) |
(sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) |
(*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))) |
(*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) |
| Outputs |
|---|
(* (pow b 2) (pow (sin (* 1/180 (* angle (PI)))) 2)) |
(+ (* (pow a 2) (pow (cos (* 1/180 (* angle (PI)))) 2)) (* (pow b 2) (pow (sin (* 1/180 (* angle (PI)))) 2))) |
(* (pow a 2) (pow (cos (* 1/180 (* angle (PI)))) 2)) |
(* a (cos (* 1/180 (* angle (PI))))) |
(* (pow a 2) (+ (/ (* (pow b 2) (pow (sin (* 1/180 (* angle (PI)))) 2)) (pow a 2)) (pow (cos (* 1/180 (* angle (PI)))) 2))) |
(* b (sin (* 1/180 (* angle (PI))))) |
(* (pow b 2) (+ (/ (* (pow a 2) (pow (cos (* 1/180 (* angle (PI)))) 2)) (pow b 2)) (pow (sin (* 1/180 (* angle (PI)))) 2))) |
(pow a 2) |
(+ (* (pow angle 2) (+ (* -1/32400 (* (pow a 2) (pow (PI) 2))) (* 1/32400 (* (pow b 2) (pow (PI) 2))))) (pow a 2)) |
(+ (* (pow angle 2) (+ (* -1/32400 (* (pow a 2) (pow (PI) 2))) (+ (* 1/32400 (* (pow b 2) (pow (PI) 2))) (* (pow angle 2) (+ (* -1/3149280000 (* (pow b 2) (pow (PI) 4))) (* (pow a 2) (+ (* 1/12597120000 (pow (PI) 4)) (* 1/4199040000 (pow (PI) 4))))))))) (pow a 2)) |
(+ (* (pow angle 2) (+ (* -1/32400 (* (pow a 2) (pow (PI) 2))) (+ (* 1/32400 (* (pow b 2) (pow (PI) 2))) (* (pow angle 2) (+ (* -1/3149280000 (* (pow b 2) (pow (PI) 4))) (+ (* (pow a 2) (+ (* 1/12597120000 (pow (PI) 4)) (* 1/4199040000 (pow (PI) 4)))) (* (pow angle 2) (+ (* (pow a 2) (+ (* -1/816293376000000 (pow (PI) 6)) (* -1/12244400640000000 (pow (PI) 6)))) (* (pow b 2) (+ (* 1/2040733440000000 (pow (PI) 6)) (* 1/1224440064000000 (pow (PI) 6)))))))))))) (pow a 2)) |
(+ (* -1/32400 (* (pow a 2) (* (pow angle 2) (pow (PI) 2)))) (pow a 2)) |
(+ (* (pow angle 2) (+ (* -1/32400 (* (pow a 2) (pow (PI) 2))) (* (pow a 2) (* (pow angle 2) (+ (* 1/12597120000 (pow (PI) 4)) (* 1/4199040000 (pow (PI) 4))))))) (pow a 2)) |
(+ (* (pow angle 2) (+ (* -1/32400 (* (pow a 2) (pow (PI) 2))) (* (pow angle 2) (+ (* (pow a 2) (* (pow angle 2) (+ (* -1/816293376000000 (pow (PI) 6)) (* -1/12244400640000000 (pow (PI) 6))))) (* (pow a 2) (+ (* 1/12597120000 (pow (PI) 4)) (* 1/4199040000 (pow (PI) 4)))))))) (pow a 2)) |
a |
(+ a (* -1/64800 (* a (* (pow angle 2) (pow (PI) 2))))) |
(+ a (* (pow angle 2) (+ (* -1/64800 (* a (pow (PI) 2))) (* 1/25194240000 (* a (* (pow angle 2) (pow (PI) 4))))))) |
(+ a (* (pow angle 2) (+ (* -1/64800 (* a (pow (PI) 2))) (* (pow angle 2) (+ (* -1/24488801280000000 (* a (* (pow angle 2) (pow (PI) 6)))) (* 1/25194240000 (* a (pow (PI) 4)))))))) |
1 |
(+ 1 (* -1/64800 (* (pow angle 2) (pow (PI) 2)))) |
(+ 1 (* (pow angle 2) (+ (* -1/64800 (pow (PI) 2)) (* 1/25194240000 (* (pow angle 2) (pow (PI) 4)))))) |
(+ 1 (* (pow angle 2) (+ (* -1/64800 (pow (PI) 2)) (* (pow angle 2) (+ (* -1/24488801280000000 (* (pow angle 2) (pow (PI) 6))) (* 1/25194240000 (pow (PI) 4))))))) |
(* 1/180 (* angle (PI))) |
(* angle (+ (* -1/34992000 (* (pow angle 2) (pow (PI) 3))) (* 1/180 (PI)))) |
(* angle (+ (* 1/180 (PI)) (* (pow angle 2) (+ (* -1/34992000 (pow (PI) 3)) (* 1/22674816000000 (* (pow angle 2) (pow (PI) 5))))))) |
(* angle (+ (* 1/180 (PI)) (* (pow angle 2) (+ (* -1/34992000 (pow (PI) 3)) (* (pow angle 2) (+ (* -1/30855889612800000000 (* (pow angle 2) (pow (PI) 7))) (* 1/22674816000000 (pow (PI) 5)))))))) |
(* 1/180 (* angle (* b (PI)))) |
(* angle (+ (* -1/34992000 (* (pow angle 2) (* b (pow (PI) 3)))) (* 1/180 (* b (PI))))) |
(* angle (+ (* 1/180 (* b (PI))) (* (pow angle 2) (+ (* -1/34992000 (* b (pow (PI) 3))) (* 1/22674816000000 (* (pow angle 2) (* b (pow (PI) 5)))))))) |
(* angle (+ (* 1/180 (* b (PI))) (* (pow angle 2) (+ (* -1/34992000 (* b (pow (PI) 3))) (* (pow angle 2) (+ (* -1/30855889612800000000 (* (pow angle 2) (* b (pow (PI) 7)))) (* 1/22674816000000 (* b (pow (PI) 5))))))))) |
(cos (* 1/180 (* angle (PI)))) |
(sin (* 1/180 (* angle (PI)))) |
9 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 7.0ms | angle | @ | -inf | ((+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (pow (* a (cos (* (PI) (/ angle 180)))) 2) (* a (cos (* (PI) (/ angle 180)))) (cos (* (PI) (/ angle 180))) (sin (* (PI) (/ angle 180))) (* (PI) (/ angle 180)) (* b (sin (* (PI) (/ angle 180))))) |
| 4.0ms | angle | @ | 0 | ((+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (pow (* a (cos (* (PI) (/ angle 180)))) 2) (* a (cos (* (PI) (/ angle 180)))) (cos (* (PI) (/ angle 180))) (sin (* (PI) (/ angle 180))) (* (PI) (/ angle 180)) (* b (sin (* (PI) (/ angle 180))))) |
| 3.0ms | a | @ | 0 | ((+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (pow (* a (cos (* (PI) (/ angle 180)))) 2) (* a (cos (* (PI) (/ angle 180)))) (cos (* (PI) (/ angle 180))) (sin (* (PI) (/ angle 180))) (* (PI) (/ angle 180)) (* b (sin (* (PI) (/ angle 180))))) |
| 2.0ms | a | @ | inf | ((+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (pow (* a (cos (* (PI) (/ angle 180)))) 2) (* a (cos (* (PI) (/ angle 180)))) (cos (* (PI) (/ angle 180))) (sin (* (PI) (/ angle 180))) (* (PI) (/ angle 180)) (* b (sin (* (PI) (/ angle 180))))) |
| 2.0ms | angle | @ | inf | ((+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (pow (* a (cos (* (PI) (/ angle 180)))) 2) (* a (cos (* (PI) (/ angle 180)))) (cos (* (PI) (/ angle 180))) (sin (* (PI) (/ angle 180))) (* (PI) (/ angle 180)) (* b (sin (* (PI) (/ angle 180))))) |
| 1× | egg-herbie |
| Inputs |
|---|
(* (pow b 2) (pow (sin (* 1/180 (* angle (PI)))) 2)) |
(+ (* (pow a 2) (pow (cos (* 1/180 (* angle (PI)))) 2)) (* (pow b 2) (pow (sin (* 1/180 (* angle (PI)))) 2))) |
(* (pow a 2) (pow (cos (* 1/180 (* angle (PI)))) 2)) |
(* a (cos (* 1/180 (* angle (PI))))) |
(* (pow a 2) (+ (/ (* (pow b 2) (pow (sin (* 1/180 (* angle (PI)))) 2)) (pow a 2)) (pow (cos (* 1/180 (* angle (PI)))) 2))) |
(* b (sin (* 1/180 (* angle (PI))))) |
(* (pow b 2) (+ (/ (* (pow a 2) (pow (cos (* 1/180 (* angle (PI)))) 2)) (pow b 2)) (pow (sin (* 1/180 (* angle (PI)))) 2))) |
(pow a 2) |
(+ (* (pow angle 2) (+ (* -1/32400 (* (pow a 2) (pow (PI) 2))) (* 1/32400 (* (pow b 2) (pow (PI) 2))))) (pow a 2)) |
(+ (* (pow angle 2) (+ (* -1/32400 (* (pow a 2) (pow (PI) 2))) (+ (* 1/32400 (* (pow b 2) (pow (PI) 2))) (* (pow angle 2) (+ (* -1/3149280000 (* (pow b 2) (pow (PI) 4))) (* (pow a 2) (+ (* 1/12597120000 (pow (PI) 4)) (* 1/4199040000 (pow (PI) 4))))))))) (pow a 2)) |
(+ (* (pow angle 2) (+ (* -1/32400 (* (pow a 2) (pow (PI) 2))) (+ (* 1/32400 (* (pow b 2) (pow (PI) 2))) (* (pow angle 2) (+ (* -1/3149280000 (* (pow b 2) (pow (PI) 4))) (+ (* (pow a 2) (+ (* 1/12597120000 (pow (PI) 4)) (* 1/4199040000 (pow (PI) 4)))) (* (pow angle 2) (+ (* (pow a 2) (+ (* -1/816293376000000 (pow (PI) 6)) (* -1/12244400640000000 (pow (PI) 6)))) (* (pow b 2) (+ (* 1/2040733440000000 (pow (PI) 6)) (* 1/1224440064000000 (pow (PI) 6)))))))))))) (pow a 2)) |
(+ (* -1/32400 (* (pow a 2) (* (pow angle 2) (pow (PI) 2)))) (pow a 2)) |
(+ (* (pow angle 2) (+ (* -1/32400 (* (pow a 2) (pow (PI) 2))) (* (pow a 2) (* (pow angle 2) (+ (* 1/12597120000 (pow (PI) 4)) (* 1/4199040000 (pow (PI) 4))))))) (pow a 2)) |
(+ (* (pow angle 2) (+ (* -1/32400 (* (pow a 2) (pow (PI) 2))) (* (pow angle 2) (+ (* (pow a 2) (* (pow angle 2) (+ (* -1/816293376000000 (pow (PI) 6)) (* -1/12244400640000000 (pow (PI) 6))))) (* (pow a 2) (+ (* 1/12597120000 (pow (PI) 4)) (* 1/4199040000 (pow (PI) 4)))))))) (pow a 2)) |
a |
(+ a (* -1/64800 (* a (* (pow angle 2) (pow (PI) 2))))) |
(+ a (* (pow angle 2) (+ (* -1/64800 (* a (pow (PI) 2))) (* 1/25194240000 (* a (* (pow angle 2) (pow (PI) 4))))))) |
(+ a (* (pow angle 2) (+ (* -1/64800 (* a (pow (PI) 2))) (* (pow angle 2) (+ (* -1/24488801280000000 (* a (* (pow angle 2) (pow (PI) 6)))) (* 1/25194240000 (* a (pow (PI) 4)))))))) |
1 |
(+ 1 (* -1/64800 (* (pow angle 2) (pow (PI) 2)))) |
(+ 1 (* (pow angle 2) (+ (* -1/64800 (pow (PI) 2)) (* 1/25194240000 (* (pow angle 2) (pow (PI) 4)))))) |
(+ 1 (* (pow angle 2) (+ (* -1/64800 (pow (PI) 2)) (* (pow angle 2) (+ (* -1/24488801280000000 (* (pow angle 2) (pow (PI) 6))) (* 1/25194240000 (pow (PI) 4))))))) |
(* 1/180 (* angle (PI))) |
(* angle (+ (* -1/34992000 (* (pow angle 2) (pow (PI) 3))) (* 1/180 (PI)))) |
(* angle (+ (* 1/180 (PI)) (* (pow angle 2) (+ (* -1/34992000 (pow (PI) 3)) (* 1/22674816000000 (* (pow angle 2) (pow (PI) 5))))))) |
(* angle (+ (* 1/180 (PI)) (* (pow angle 2) (+ (* -1/34992000 (pow (PI) 3)) (* (pow angle 2) (+ (* -1/30855889612800000000 (* (pow angle 2) (pow (PI) 7))) (* 1/22674816000000 (pow (PI) 5)))))))) |
(* 1/180 (* angle (* b (PI)))) |
(* angle (+ (* -1/34992000 (* (pow angle 2) (* b (pow (PI) 3)))) (* 1/180 (* b (PI))))) |
(* angle (+ (* 1/180 (* b (PI))) (* (pow angle 2) (+ (* -1/34992000 (* b (pow (PI) 3))) (* 1/22674816000000 (* (pow angle 2) (* b (pow (PI) 5)))))))) |
(* angle (+ (* 1/180 (* b (PI))) (* (pow angle 2) (+ (* -1/34992000 (* b (pow (PI) 3))) (* (pow angle 2) (+ (* -1/30855889612800000000 (* (pow angle 2) (* b (pow (PI) 7)))) (* 1/22674816000000 (* b (pow (PI) 5))))))))) |
(cos (* 1/180 (* angle (PI)))) |
(sin (* 1/180 (* angle (PI)))) |
| Outputs |
|---|
(* (pow b 2) (pow (sin (* 1/180 (* angle (PI)))) 2)) |
(+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64)) (pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) |
(+ (* (pow a 2) (pow (cos (* 1/180 (* angle (PI)))) 2)) (* (pow b 2) (pow (sin (* 1/180 (* angle (PI)))) 2))) |
(pow.f64 (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64)) |
(* (pow a 2) (pow (cos (* 1/180 (* angle (PI)))) 2)) |
(*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) |
(* a (cos (* 1/180 (* angle (PI))))) |
(cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) |
(* (pow a 2) (+ (/ (* (pow b 2) (pow (sin (* 1/180 (* angle (PI)))) 2)) (pow a 2)) (pow (cos (* 1/180 (* angle (PI)))) 2))) |
(sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) |
(* b (sin (* 1/180 (* angle (PI))))) |
(*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))) |
(* (pow b 2) (+ (/ (* (pow a 2) (pow (cos (* 1/180 (* angle (PI)))) 2)) (pow b 2)) (pow (sin (* 1/180 (* angle (PI)))) 2))) |
(*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) |
| Inputs |
|---|
(+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64)) (pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) |
(pow.f64 (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64)) |
(*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) |
(cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) |
(sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) |
(*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))) |
(*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) |
| Outputs |
|---|
(+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64)) (pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) |
(pow.f64 (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64)) |
(*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) |
(cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) |
(sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) |
(*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))) |
(*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) |
Compiled 386 to 39 computations (89.9% saved)
6 alts after pruning (5 fresh and 1 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 10 | 5 | 15 |
| Fresh | 0 | 0 | 0 |
| Picked | 0 | 1 | 1 |
| Done | 0 | 0 | 0 |
| Total | 10 | 6 | 16 |
| Status | Accuracy | Program |
|---|---|---|
| ✓ | 81.5% | (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64)) (pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) |
| ▶ | 56.4% | (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64)) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64))) |
| ▶ | 27.8% | (+.f64 #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))))) (pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) |
| ▶ | 59.7% | #s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (pow.f64 (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) |
| ▶ | 5.7% | #s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))))) |
| ▶ | 2.8% | #s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) |
Compiled 315 to 235 computations (25.4% saved)
| 1× | egg-herbie |
Found 20 expressions of interest:
| New | Metric | Score | Program |
|---|---|---|---|
| cost-diff | 0 | (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) | |
| cost-diff | 0 | (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) | |
| cost-diff | 0 | #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))))) | |
| cost-diff | 0 | (+.f64 #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))))) (pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) | |
| cost-diff | 0 | (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) | |
| cost-diff | 0 | (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) | |
| cost-diff | 0 | (pow.f64 (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64)) | |
| cost-diff | 0 | (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64)) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64))) | |
| cost-diff | 0 | (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))) | |
| cost-diff | 0 | (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) | |
| cost-diff | 0 | (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) | |
| cost-diff | 0 | #s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))))) | |
| cost-diff | 0 | (PI.f64) | |
| cost-diff | 0 | (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))) | |
| cost-diff | 0 | (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) | |
| cost-diff | 0 | #s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) | |
| cost-diff | 0 | (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) | |
| cost-diff | 0 | (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) | |
| cost-diff | 0 | (pow.f64 (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64)) | |
| cost-diff | 0 | #s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (pow.f64 (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) |
| Inputs |
|---|
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (pow.f64 (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) |
(pow.f64 (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64)) |
(*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) |
a |
(cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) |
(*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))) |
(PI.f64) |
(/.f64 angle #s(literal 180 binary64)) |
angle |
#s(literal 180 binary64) |
#s(literal 2 binary64) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) |
(sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) |
(*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))) |
(PI.f64) |
(/.f64 angle #s(literal 180 binary64)) |
angle |
#s(literal 180 binary64) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))))) |
(*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) |
b |
(sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) |
(*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))) |
(PI.f64) |
(/.f64 angle #s(literal 180 binary64)) |
angle |
#s(literal 180 binary64) |
(+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64)) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64))) |
(pow.f64 (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64)) |
(*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) |
a |
(cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) |
(*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))) |
(PI.f64) |
(/.f64 angle #s(literal 180 binary64)) |
angle |
#s(literal 180 binary64) |
#s(literal 2 binary64) |
(pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64)) |
#s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) |
(+.f64 #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))))) (pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) |
#s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))))) |
(*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) |
a |
(cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) |
(*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))) |
(PI.f64) |
(/.f64 angle #s(literal 180 binary64)) |
angle |
#s(literal 180 binary64) |
(pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64)) |
(*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) |
b |
(sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) |
#s(literal 2 binary64) |
| Outputs |
|---|
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (pow.f64 (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) |
(pow.f64 (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64)) |
(*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) |
a |
(cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) |
(*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))) |
(PI.f64) |
(/.f64 angle #s(literal 180 binary64)) |
angle |
#s(literal 180 binary64) |
#s(literal 2 binary64) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) |
(sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) |
(*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))) |
(PI.f64) |
(/.f64 angle #s(literal 180 binary64)) |
angle |
#s(literal 180 binary64) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))))) |
(*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) |
b |
(sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) |
(*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))) |
(PI.f64) |
(/.f64 angle #s(literal 180 binary64)) |
angle |
#s(literal 180 binary64) |
(+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64)) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64))) |
(pow.f64 (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64)) |
(*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) |
a |
(cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) |
(*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))) |
(PI.f64) |
(/.f64 angle #s(literal 180 binary64)) |
angle |
#s(literal 180 binary64) |
#s(literal 2 binary64) |
(pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64)) |
#s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) |
(+.f64 #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))))) (pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) |
#s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))))) |
(*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) |
a |
(cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) |
(*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))) |
(PI.f64) |
(/.f64 angle #s(literal 180 binary64)) |
angle |
#s(literal 180 binary64) |
(pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64)) |
(*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) |
b |
(sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) |
#s(literal 2 binary64) |
Found 20 expressions of interest:
| New | Metric | Score | Program |
|---|---|---|---|
| accuracy | 0.3046875 | (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))) | |
| accuracy | 27.049848645940852 | (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) | |
| accuracy | 27.37181816252783 | (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) | |
| accuracy | 61.02718818756744 | #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))))) | |
| accuracy | 0.16082001953688402 | (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64)) | |
| accuracy | 0.3046875 | (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))) | |
| accuracy | 27.37181816252783 | (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) | |
| accuracy | 61.659503682653934 | #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) | |
| accuracy | 0.192374716849389 | (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) | |
| accuracy | 0.3046875 | (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))) | |
| accuracy | 27.049848645940852 | (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) | |
| accuracy | 60.251469577649154 | #s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))))) | |
| accuracy | 0.0 | (PI.f64) | |
| accuracy | 0.3046875 | (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))) | |
| accuracy | 27.049848645940852 | (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) | |
| accuracy | 62.1299835061619 | #s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) | |
| accuracy | 0.140625 | (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) | |
| accuracy | 0.3046875 | (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))) | |
| accuracy | 20.676825297838235 | #s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (pow.f64 (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) | |
| accuracy | 27.37181816252783 | (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) |
| 46.0ms | 256× | 0 | valid |
Compiled 669 to 51 computations (92.4% saved)
ival-cosu: 7.0ms (26.3% of total)ival-sinu: 6.0ms (22.6% of total)ival-mult: 5.0ms (18.8% of total)ival-pow2: 5.0ms (18.8% of total)ival-div: 2.0ms (7.5% of total)ival-pi: 1.0ms (3.8% of total)ival-add: 1.0ms (3.8% of total)ival-assert: 0.0ms (0% of total)ival-true: 0.0ms (0% of total)exact: 0.0ms (0% of total)| Inputs |
|---|
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (pow.f64 (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) |
(pow.f64 (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64)) |
(*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) |
(cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) |
(sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) |
(*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))) |
(PI.f64) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))))) |
(*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) |
(+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64)) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64))) |
(+.f64 #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))))) (pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) |
#s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))))) |
#s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) |
(pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64)) |
| Outputs |
|---|
(* (pow b 2) (pow (sin (* 1/180 (* angle (PI)))) 2)) |
(+ (* (pow a 2) (pow (cos (* 1/180 (* angle (PI)))) 2)) (* (pow b 2) (pow (sin (* 1/180 (* angle (PI)))) 2))) |
(* (pow a 2) (pow (cos (* 1/180 (* angle (PI)))) 2)) |
(* a (cos (* 1/180 (* angle (PI))))) |
(* (pow a 2) (+ (/ (* (pow b 2) (pow (sin (* 1/180 (* angle (PI)))) 2)) (pow a 2)) (pow (cos (* 1/180 (* angle (PI)))) 2))) |
(* b (sin (* 1/180 (* angle (PI))))) |
(* (pow b 2) (+ (/ (* (pow a 2) (pow (cos (* 1/180 (* angle (PI)))) 2)) (pow b 2)) (pow (sin (* 1/180 (* angle (PI)))) 2))) |
(pow a 2) |
(+ (* (pow angle 2) (+ (* -1/32400 (* (pow a 2) (pow (PI) 2))) (* 1/32400 (* (pow b 2) (pow (PI) 2))))) (pow a 2)) |
(+ (* (pow angle 2) (+ (* -1/32400 (* (pow a 2) (pow (PI) 2))) (+ (* 1/32400 (* (pow b 2) (pow (PI) 2))) (* (pow angle 2) (+ (* -1/3149280000 (* (pow b 2) (pow (PI) 4))) (* (pow a 2) (+ (* 1/12597120000 (pow (PI) 4)) (* 1/4199040000 (pow (PI) 4))))))))) (pow a 2)) |
(+ (* (pow angle 2) (+ (* -1/32400 (* (pow a 2) (pow (PI) 2))) (+ (* 1/32400 (* (pow b 2) (pow (PI) 2))) (* (pow angle 2) (+ (* -1/3149280000 (* (pow b 2) (pow (PI) 4))) (+ (* (pow a 2) (+ (* 1/12597120000 (pow (PI) 4)) (* 1/4199040000 (pow (PI) 4)))) (* (pow angle 2) (+ (* (pow a 2) (+ (* -1/816293376000000 (pow (PI) 6)) (* -1/12244400640000000 (pow (PI) 6)))) (* (pow b 2) (+ (* 1/2040733440000000 (pow (PI) 6)) (* 1/1224440064000000 (pow (PI) 6)))))))))))) (pow a 2)) |
(+ (* -1/32400 (* (pow a 2) (* (pow angle 2) (pow (PI) 2)))) (pow a 2)) |
(+ (* (pow angle 2) (+ (* -1/32400 (* (pow a 2) (pow (PI) 2))) (* (pow a 2) (* (pow angle 2) (+ (* 1/12597120000 (pow (PI) 4)) (* 1/4199040000 (pow (PI) 4))))))) (pow a 2)) |
(+ (* (pow angle 2) (+ (* -1/32400 (* (pow a 2) (pow (PI) 2))) (* (pow angle 2) (+ (* (pow a 2) (* (pow angle 2) (+ (* -1/816293376000000 (pow (PI) 6)) (* -1/12244400640000000 (pow (PI) 6))))) (* (pow a 2) (+ (* 1/12597120000 (pow (PI) 4)) (* 1/4199040000 (pow (PI) 4)))))))) (pow a 2)) |
a |
(+ a (* -1/64800 (* a (* (pow angle 2) (pow (PI) 2))))) |
(+ a (* (pow angle 2) (+ (* -1/64800 (* a (pow (PI) 2))) (* 1/25194240000 (* a (* (pow angle 2) (pow (PI) 4))))))) |
(+ a (* (pow angle 2) (+ (* -1/64800 (* a (pow (PI) 2))) (* (pow angle 2) (+ (* -1/24488801280000000 (* a (* (pow angle 2) (pow (PI) 6)))) (* 1/25194240000 (* a (pow (PI) 4)))))))) |
1 |
(+ 1 (* -1/64800 (* (pow angle 2) (pow (PI) 2)))) |
(+ 1 (* (pow angle 2) (+ (* -1/64800 (pow (PI) 2)) (* 1/25194240000 (* (pow angle 2) (pow (PI) 4)))))) |
(+ 1 (* (pow angle 2) (+ (* -1/64800 (pow (PI) 2)) (* (pow angle 2) (+ (* -1/24488801280000000 (* (pow angle 2) (pow (PI) 6))) (* 1/25194240000 (pow (PI) 4))))))) |
(* 1/180 (* angle (PI))) |
(* angle (+ (* -1/34992000 (* (pow angle 2) (pow (PI) 3))) (* 1/180 (PI)))) |
(* angle (+ (* 1/180 (PI)) (* (pow angle 2) (+ (* -1/34992000 (pow (PI) 3)) (* 1/22674816000000 (* (pow angle 2) (pow (PI) 5))))))) |
(* angle (+ (* 1/180 (PI)) (* (pow angle 2) (+ (* -1/34992000 (pow (PI) 3)) (* (pow angle 2) (+ (* -1/30855889612800000000 (* (pow angle 2) (pow (PI) 7))) (* 1/22674816000000 (pow (PI) 5)))))))) |
(* 1/180 (* angle (* b (PI)))) |
(* angle (+ (* -1/34992000 (* (pow angle 2) (* b (pow (PI) 3)))) (* 1/180 (* b (PI))))) |
(* angle (+ (* 1/180 (* b (PI))) (* (pow angle 2) (+ (* -1/34992000 (* b (pow (PI) 3))) (* 1/22674816000000 (* (pow angle 2) (* b (pow (PI) 5)))))))) |
(* angle (+ (* 1/180 (* b (PI))) (* (pow angle 2) (+ (* -1/34992000 (* b (pow (PI) 3))) (* (pow angle 2) (+ (* -1/30855889612800000000 (* (pow angle 2) (* b (pow (PI) 7)))) (* 1/22674816000000 (* b (pow (PI) 5))))))))) |
(* 1/32400 (* (pow angle 2) (* (pow b 2) (pow (PI) 2)))) |
(* (pow angle 2) (+ (* -1/3149280000 (* (pow angle 2) (* (pow b 2) (pow (PI) 4)))) (* 1/32400 (* (pow b 2) (pow (PI) 2))))) |
(* (pow angle 2) (+ (* 1/32400 (* (pow b 2) (pow (PI) 2))) (* (pow angle 2) (+ (* -1/3149280000 (* (pow b 2) (pow (PI) 4))) (* (pow angle 2) (* (pow b 2) (+ (* 1/2040733440000000 (pow (PI) 6)) (* 1/1224440064000000 (pow (PI) 6))))))))) |
(* (pow angle 2) (+ (* 1/32400 (* (pow b 2) (pow (PI) 2))) (* (pow angle 2) (+ (* -1/3149280000 (* (pow b 2) (pow (PI) 4))) (* (pow angle 2) (+ (* (pow angle 2) (* (pow b 2) (+ (* -1/396718580736000000000 (pow (PI) 8)) (* -1/2777030065152000000000 (pow (PI) 8))))) (* (pow b 2) (+ (* 1/2040733440000000 (pow (PI) 6)) (* 1/1224440064000000 (pow (PI) 6)))))))))) |
(cos (* 1/180 (* angle (PI)))) |
(sin (* 1/180 (* angle (PI)))) |
9 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 12.0ms | a | @ | inf | ((+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (pow (* a (cos (* (PI) (/ angle 180)))) 2) (* a (cos (* (PI) (/ angle 180)))) (cos (* (PI) (/ angle 180))) (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (sin (* (PI) (/ angle 180))) (* (PI) (/ angle 180)) (PI) (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (* b (sin (* (PI) (/ angle 180)))) (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (pow (* a (cos (* (PI) (/ angle 180)))) 2) (* b (sin (* (PI) (/ angle 180)))) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) |
| 2.0ms | a | @ | -inf | ((+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (pow (* a (cos (* (PI) (/ angle 180)))) 2) (* a (cos (* (PI) (/ angle 180)))) (cos (* (PI) (/ angle 180))) (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (sin (* (PI) (/ angle 180))) (* (PI) (/ angle 180)) (PI) (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (* b (sin (* (PI) (/ angle 180)))) (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (pow (* a (cos (* (PI) (/ angle 180)))) 2) (* b (sin (* (PI) (/ angle 180)))) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) |
| 2.0ms | a | @ | 0 | ((+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (pow (* a (cos (* (PI) (/ angle 180)))) 2) (* a (cos (* (PI) (/ angle 180)))) (cos (* (PI) (/ angle 180))) (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (sin (* (PI) (/ angle 180))) (* (PI) (/ angle 180)) (PI) (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (* b (sin (* (PI) (/ angle 180)))) (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (pow (* a (cos (* (PI) (/ angle 180)))) 2) (* b (sin (* (PI) (/ angle 180)))) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) |
| 2.0ms | b | @ | 0 | ((+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (pow (* a (cos (* (PI) (/ angle 180)))) 2) (* a (cos (* (PI) (/ angle 180)))) (cos (* (PI) (/ angle 180))) (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (sin (* (PI) (/ angle 180))) (* (PI) (/ angle 180)) (PI) (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (* b (sin (* (PI) (/ angle 180)))) (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (pow (* a (cos (* (PI) (/ angle 180)))) 2) (* b (sin (* (PI) (/ angle 180)))) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) |
| 2.0ms | b | @ | -inf | ((+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (pow (* a (cos (* (PI) (/ angle 180)))) 2) (* a (cos (* (PI) (/ angle 180)))) (cos (* (PI) (/ angle 180))) (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (sin (* (PI) (/ angle 180))) (* (PI) (/ angle 180)) (PI) (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (* b (sin (* (PI) (/ angle 180)))) (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (pow (* a (cos (* (PI) (/ angle 180)))) 2) (* b (sin (* (PI) (/ angle 180)))) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) |
| 1× | egg-herbie |
| Inputs |
|---|
(* (pow b 2) (pow (sin (* 1/180 (* angle (PI)))) 2)) |
(+ (* (pow a 2) (pow (cos (* 1/180 (* angle (PI)))) 2)) (* (pow b 2) (pow (sin (* 1/180 (* angle (PI)))) 2))) |
(* (pow a 2) (pow (cos (* 1/180 (* angle (PI)))) 2)) |
(* a (cos (* 1/180 (* angle (PI))))) |
(* (pow a 2) (+ (/ (* (pow b 2) (pow (sin (* 1/180 (* angle (PI)))) 2)) (pow a 2)) (pow (cos (* 1/180 (* angle (PI)))) 2))) |
(* b (sin (* 1/180 (* angle (PI))))) |
(* (pow b 2) (+ (/ (* (pow a 2) (pow (cos (* 1/180 (* angle (PI)))) 2)) (pow b 2)) (pow (sin (* 1/180 (* angle (PI)))) 2))) |
(pow a 2) |
(+ (* (pow angle 2) (+ (* -1/32400 (* (pow a 2) (pow (PI) 2))) (* 1/32400 (* (pow b 2) (pow (PI) 2))))) (pow a 2)) |
(+ (* (pow angle 2) (+ (* -1/32400 (* (pow a 2) (pow (PI) 2))) (+ (* 1/32400 (* (pow b 2) (pow (PI) 2))) (* (pow angle 2) (+ (* -1/3149280000 (* (pow b 2) (pow (PI) 4))) (* (pow a 2) (+ (* 1/12597120000 (pow (PI) 4)) (* 1/4199040000 (pow (PI) 4))))))))) (pow a 2)) |
(+ (* (pow angle 2) (+ (* -1/32400 (* (pow a 2) (pow (PI) 2))) (+ (* 1/32400 (* (pow b 2) (pow (PI) 2))) (* (pow angle 2) (+ (* -1/3149280000 (* (pow b 2) (pow (PI) 4))) (+ (* (pow a 2) (+ (* 1/12597120000 (pow (PI) 4)) (* 1/4199040000 (pow (PI) 4)))) (* (pow angle 2) (+ (* (pow a 2) (+ (* -1/816293376000000 (pow (PI) 6)) (* -1/12244400640000000 (pow (PI) 6)))) (* (pow b 2) (+ (* 1/2040733440000000 (pow (PI) 6)) (* 1/1224440064000000 (pow (PI) 6)))))))))))) (pow a 2)) |
(+ (* -1/32400 (* (pow a 2) (* (pow angle 2) (pow (PI) 2)))) (pow a 2)) |
(+ (* (pow angle 2) (+ (* -1/32400 (* (pow a 2) (pow (PI) 2))) (* (pow a 2) (* (pow angle 2) (+ (* 1/12597120000 (pow (PI) 4)) (* 1/4199040000 (pow (PI) 4))))))) (pow a 2)) |
(+ (* (pow angle 2) (+ (* -1/32400 (* (pow a 2) (pow (PI) 2))) (* (pow angle 2) (+ (* (pow a 2) (* (pow angle 2) (+ (* -1/816293376000000 (pow (PI) 6)) (* -1/12244400640000000 (pow (PI) 6))))) (* (pow a 2) (+ (* 1/12597120000 (pow (PI) 4)) (* 1/4199040000 (pow (PI) 4)))))))) (pow a 2)) |
a |
(+ a (* -1/64800 (* a (* (pow angle 2) (pow (PI) 2))))) |
(+ a (* (pow angle 2) (+ (* -1/64800 (* a (pow (PI) 2))) (* 1/25194240000 (* a (* (pow angle 2) (pow (PI) 4))))))) |
(+ a (* (pow angle 2) (+ (* -1/64800 (* a (pow (PI) 2))) (* (pow angle 2) (+ (* -1/24488801280000000 (* a (* (pow angle 2) (pow (PI) 6)))) (* 1/25194240000 (* a (pow (PI) 4)))))))) |
1 |
(+ 1 (* -1/64800 (* (pow angle 2) (pow (PI) 2)))) |
(+ 1 (* (pow angle 2) (+ (* -1/64800 (pow (PI) 2)) (* 1/25194240000 (* (pow angle 2) (pow (PI) 4)))))) |
(+ 1 (* (pow angle 2) (+ (* -1/64800 (pow (PI) 2)) (* (pow angle 2) (+ (* -1/24488801280000000 (* (pow angle 2) (pow (PI) 6))) (* 1/25194240000 (pow (PI) 4))))))) |
(* 1/180 (* angle (PI))) |
(* angle (+ (* -1/34992000 (* (pow angle 2) (pow (PI) 3))) (* 1/180 (PI)))) |
(* angle (+ (* 1/180 (PI)) (* (pow angle 2) (+ (* -1/34992000 (pow (PI) 3)) (* 1/22674816000000 (* (pow angle 2) (pow (PI) 5))))))) |
(* angle (+ (* 1/180 (PI)) (* (pow angle 2) (+ (* -1/34992000 (pow (PI) 3)) (* (pow angle 2) (+ (* -1/30855889612800000000 (* (pow angle 2) (pow (PI) 7))) (* 1/22674816000000 (pow (PI) 5)))))))) |
(* 1/180 (* angle (* b (PI)))) |
(* angle (+ (* -1/34992000 (* (pow angle 2) (* b (pow (PI) 3)))) (* 1/180 (* b (PI))))) |
(* angle (+ (* 1/180 (* b (PI))) (* (pow angle 2) (+ (* -1/34992000 (* b (pow (PI) 3))) (* 1/22674816000000 (* (pow angle 2) (* b (pow (PI) 5)))))))) |
(* angle (+ (* 1/180 (* b (PI))) (* (pow angle 2) (+ (* -1/34992000 (* b (pow (PI) 3))) (* (pow angle 2) (+ (* -1/30855889612800000000 (* (pow angle 2) (* b (pow (PI) 7)))) (* 1/22674816000000 (* b (pow (PI) 5))))))))) |
(* 1/32400 (* (pow angle 2) (* (pow b 2) (pow (PI) 2)))) |
(* (pow angle 2) (+ (* -1/3149280000 (* (pow angle 2) (* (pow b 2) (pow (PI) 4)))) (* 1/32400 (* (pow b 2) (pow (PI) 2))))) |
(* (pow angle 2) (+ (* 1/32400 (* (pow b 2) (pow (PI) 2))) (* (pow angle 2) (+ (* -1/3149280000 (* (pow b 2) (pow (PI) 4))) (* (pow angle 2) (* (pow b 2) (+ (* 1/2040733440000000 (pow (PI) 6)) (* 1/1224440064000000 (pow (PI) 6))))))))) |
(* (pow angle 2) (+ (* 1/32400 (* (pow b 2) (pow (PI) 2))) (* (pow angle 2) (+ (* -1/3149280000 (* (pow b 2) (pow (PI) 4))) (* (pow angle 2) (+ (* (pow angle 2) (* (pow b 2) (+ (* -1/396718580736000000000 (pow (PI) 8)) (* -1/2777030065152000000000 (pow (PI) 8))))) (* (pow b 2) (+ (* 1/2040733440000000 (pow (PI) 6)) (* 1/1224440064000000 (pow (PI) 6)))))))))) |
(cos (* 1/180 (* angle (PI)))) |
(sin (* 1/180 (* angle (PI)))) |
| Outputs |
|---|
(* (pow b 2) (pow (sin (* 1/180 (* angle (PI)))) 2)) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (pow.f64 (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) |
(+ (* (pow a 2) (pow (cos (* 1/180 (* angle (PI)))) 2)) (* (pow b 2) (pow (sin (* 1/180 (* angle (PI)))) 2))) |
(pow.f64 (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64)) |
(* (pow a 2) (pow (cos (* 1/180 (* angle (PI)))) 2)) |
(*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) |
(* a (cos (* 1/180 (* angle (PI))))) |
(cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) |
(* (pow a 2) (+ (/ (* (pow b 2) (pow (sin (* 1/180 (* angle (PI)))) 2)) (pow a 2)) (pow (cos (* 1/180 (* angle (PI)))) 2))) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) |
(* b (sin (* 1/180 (* angle (PI))))) |
(sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) |
(* (pow b 2) (+ (/ (* (pow a 2) (pow (cos (* 1/180 (* angle (PI)))) 2)) (pow b 2)) (pow (sin (* 1/180 (* angle (PI)))) 2))) |
(*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))) |
(pow a 2) |
(PI.f64) |
(+ (* (pow angle 2) (+ (* -1/32400 (* (pow a 2) (pow (PI) 2))) (* 1/32400 (* (pow b 2) (pow (PI) 2))))) (pow a 2)) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))))) |
(+ (* (pow angle 2) (+ (* -1/32400 (* (pow a 2) (pow (PI) 2))) (+ (* 1/32400 (* (pow b 2) (pow (PI) 2))) (* (pow angle 2) (+ (* -1/3149280000 (* (pow b 2) (pow (PI) 4))) (* (pow a 2) (+ (* 1/12597120000 (pow (PI) 4)) (* 1/4199040000 (pow (PI) 4))))))))) (pow a 2)) |
(*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) |
(+ (* (pow angle 2) (+ (* -1/32400 (* (pow a 2) (pow (PI) 2))) (+ (* 1/32400 (* (pow b 2) (pow (PI) 2))) (* (pow angle 2) (+ (* -1/3149280000 (* (pow b 2) (pow (PI) 4))) (+ (* (pow a 2) (+ (* 1/12597120000 (pow (PI) 4)) (* 1/4199040000 (pow (PI) 4)))) (* (pow angle 2) (+ (* (pow a 2) (+ (* -1/816293376000000 (pow (PI) 6)) (* -1/12244400640000000 (pow (PI) 6)))) (* (pow b 2) (+ (* 1/2040733440000000 (pow (PI) 6)) (* 1/1224440064000000 (pow (PI) 6)))))))))))) (pow a 2)) |
(+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64)) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64))) |
(+ (* -1/32400 (* (pow a 2) (* (pow angle 2) (pow (PI) 2)))) (pow a 2)) |
(+.f64 #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))))) (pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) |
(+ (* (pow angle 2) (+ (* -1/32400 (* (pow a 2) (pow (PI) 2))) (* (pow a 2) (* (pow angle 2) (+ (* 1/12597120000 (pow (PI) 4)) (* 1/4199040000 (pow (PI) 4))))))) (pow a 2)) |
#s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))))) |
(+ (* (pow angle 2) (+ (* -1/32400 (* (pow a 2) (pow (PI) 2))) (* (pow angle 2) (+ (* (pow a 2) (* (pow angle 2) (+ (* -1/816293376000000 (pow (PI) 6)) (* -1/12244400640000000 (pow (PI) 6))))) (* (pow a 2) (+ (* 1/12597120000 (pow (PI) 4)) (* 1/4199040000 (pow (PI) 4)))))))) (pow a 2)) |
#s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) |
a |
(pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64)) |
| Inputs |
|---|
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (pow.f64 (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) |
(pow.f64 (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64)) |
(*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) |
(cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) |
(sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) |
(*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))) |
(PI.f64) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))))) |
(*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) |
(+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64)) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64))) |
(+.f64 #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))))) (pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) |
#s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))))) |
#s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) |
(pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64)) |
| Outputs |
|---|
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (pow.f64 (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) |
(pow.f64 (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64)) |
(*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) |
(cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) |
(sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) |
(*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))) |
(PI.f64) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))))) |
(*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) |
(+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64)) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64))) |
(+.f64 #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))))) (pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) |
#s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))))) |
#s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) |
(pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64)) |
Compiled 1 959 to 67 computations (96.6% saved)
15 alts after pruning (10 fresh and 5 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 46 | 10 | 56 |
| Fresh | 0 | 0 | 0 |
| Picked | 1 | 4 | 5 |
| Done | 0 | 1 | 1 |
| Total | 47 | 15 | 62 |
| Status | Accuracy | Program |
|---|---|---|
| ✓ | 81.5% | (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64)) (pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) |
| ▶ | 23.0% | (+.f64 (pow.f64 #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64))) #s(literal 2 binary64)) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64))) |
| ✓ | 27.8% | (+.f64 #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))))) (pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) |
| 3.8% | (+.f64 #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) | |
| 14.8% | (+.f64 #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64))) | |
| ▶ | 34.3% | (+.f64 #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64)))) (pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) |
| 24.3% | (+.f64 #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* a (cos (* (PI) (/ angle 180)))) (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))))) (pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) | |
| ✓ | 59.7% | #s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (pow.f64 (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) |
| 24.3% | #s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (pow.f64 #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64))) #s(literal 2 binary64))) | |
| ▶ | 4.3% | #s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (pow.f64 #s(approx (* a (cos (* (PI) (/ angle 180)))) (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) |
| 3.1% | #s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) | |
| ✓ | 5.7% | #s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))))) |
| ✓ | 2.8% | #s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) |
| ▶ | 4.3% | #s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (PI.f64)) |
| ▶ | 3.7% | #s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))))) |
Compiled 913 to 557 computations (39% saved)
| 1× | egg-herbie |
Found 18 expressions of interest:
| New | Metric | Score | Program |
|---|---|---|---|
| cost-diff | 0 | (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64)) | |
| cost-diff | 0 | #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64))) | |
| cost-diff | 0 | (pow.f64 #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64))) #s(literal 2 binary64)) | |
| cost-diff | 0 | (+.f64 (pow.f64 #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64))) #s(literal 2 binary64)) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64))) | |
| cost-diff | 0 | (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) | |
| cost-diff | 0 | #s(approx (* a (cos (* (PI) (/ angle 180)))) (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) | |
| cost-diff | 0 | (pow.f64 #s(approx (* a (cos (* (PI) (/ angle 180)))) (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64)) | |
| cost-diff | 0 | #s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (pow.f64 #s(approx (* a (cos (* (PI) (/ angle 180)))) (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) | |
| cost-diff | 0 | (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) | |
| cost-diff | 0 | (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) | |
| cost-diff | 0 | #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))))) | |
| cost-diff | 0 | #s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))))) | |
| cost-diff | 0 | (PI.f64) | |
| cost-diff | 0 | #s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (PI.f64)) | |
| cost-diff | 0 | (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64)) | |
| cost-diff | 0 | #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64))) | |
| cost-diff | 0 | #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64)))) | |
| cost-diff | 0 | (+.f64 #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64)))) (pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) |
| Inputs |
|---|
(+.f64 #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64)))) (pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) |
#s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64)))) |
#s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64))) |
(pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64)) |
#s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) |
(*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))) |
(PI.f64) |
(/.f64 angle #s(literal 180 binary64)) |
angle |
#s(literal 180 binary64) |
#s(literal 2 binary64) |
(pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64)) |
(*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) |
b |
(sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (PI.f64)) |
(PI.f64) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))))) |
#s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))))) |
(*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) |
a |
(cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) |
(*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))) |
(PI.f64) |
(/.f64 angle #s(literal 180 binary64)) |
angle |
#s(literal 180 binary64) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (pow.f64 #s(approx (* a (cos (* (PI) (/ angle 180)))) (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) |
(pow.f64 #s(approx (* a (cos (* (PI) (/ angle 180)))) (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64)) |
#s(approx (* a (cos (* (PI) (/ angle 180)))) (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) |
(cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) |
(*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))) |
(PI.f64) |
(/.f64 angle #s(literal 180 binary64)) |
angle |
#s(literal 180 binary64) |
#s(literal 2 binary64) |
(+.f64 (pow.f64 #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64))) #s(literal 2 binary64)) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64))) |
(pow.f64 #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64))) #s(literal 2 binary64)) |
#s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64))) |
(pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64)) |
#s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) |
(*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))) |
(PI.f64) |
(/.f64 angle #s(literal 180 binary64)) |
angle |
#s(literal 180 binary64) |
#s(literal 2 binary64) |
| Outputs |
|---|
(+.f64 #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64)))) (pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) |
#s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64)))) |
#s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64))) |
(pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64)) |
#s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) |
(*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))) |
(PI.f64) |
(/.f64 angle #s(literal 180 binary64)) |
angle |
#s(literal 180 binary64) |
#s(literal 2 binary64) |
(pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64)) |
(*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) |
b |
(sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (PI.f64)) |
(PI.f64) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))))) |
#s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))))) |
(*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) |
a |
(cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) |
(*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))) |
(PI.f64) |
(/.f64 angle #s(literal 180 binary64)) |
angle |
#s(literal 180 binary64) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (pow.f64 #s(approx (* a (cos (* (PI) (/ angle 180)))) (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) |
(pow.f64 #s(approx (* a (cos (* (PI) (/ angle 180)))) (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64)) |
#s(approx (* a (cos (* (PI) (/ angle 180)))) (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) |
(cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) |
(*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))) |
(PI.f64) |
(/.f64 angle #s(literal 180 binary64)) |
angle |
#s(literal 180 binary64) |
#s(literal 2 binary64) |
(+.f64 (pow.f64 #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64))) #s(literal 2 binary64)) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64))) |
(pow.f64 #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64))) #s(literal 2 binary64)) |
#s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64))) |
(pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64)) |
#s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) |
(*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))) |
(PI.f64) |
(/.f64 angle #s(literal 180 binary64)) |
angle |
#s(literal 180 binary64) |
#s(literal 2 binary64) |
Found 18 expressions of interest:
| New | Metric | Score | Program |
|---|---|---|---|
| accuracy | 0.16082001953688402 | (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64)) | |
| accuracy | 0.3046875 | (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))) | |
| accuracy | 61.659503682653934 | #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) | |
| accuracy | 61.90399229008133 | #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64))) | |
| accuracy | 0.3046875 | (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))) | |
| accuracy | 20.676825297838235 | #s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (pow.f64 #s(approx (* a (cos (* (PI) (/ angle 180)))) (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) | |
| accuracy | 27.37181816252783 | (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) | |
| accuracy | 61.88596317683398 | #s(approx (* a (cos (* (PI) (/ angle 180)))) (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) | |
| accuracy | 0.3046875 | (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))) | |
| accuracy | 20.676825297838235 | #s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))))) | |
| accuracy | 27.37181816252783 | (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) | |
| accuracy | 61.02718818756744 | #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))))) | |
| accuracy | 0.0 | (PI.f64) | |
| accuracy | 61.27087827285218 | #s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (PI.f64)) | |
| accuracy | 27.049848645940852 | (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) | |
| accuracy | 61.02718818756744 | #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64)))) | |
| accuracy | 61.659503682653934 | #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) | |
| accuracy | 61.90399229008133 | #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64))) |
| 55.0ms | 256× | 0 | valid |
Compiled 813 to 55 computations (93.2% saved)
ival-cosu: 8.0ms (25.5% of total)ival-sinu: 7.0ms (22.3% of total)ival-mult: 6.0ms (19.1% of total)ival-pow2: 6.0ms (19.1% of total)ival-div: 2.0ms (6.4% of total)ival-pi: 1.0ms (3.2% of total)ival-add: 1.0ms (3.2% of total)ival-assert: 0.0ms (0% of total)ival-true: 0.0ms (0% of total)exact: 0.0ms (0% of total)| Inputs |
|---|
(+.f64 #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64)))) (pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) |
#s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64)))) |
#s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64))) |
(pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64)) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (PI.f64)) |
(PI.f64) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))))) |
#s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))))) |
(*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) |
(cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (pow.f64 #s(approx (* a (cos (* (PI) (/ angle 180)))) (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) |
(pow.f64 #s(approx (* a (cos (* (PI) (/ angle 180)))) (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64)) |
#s(approx (* a (cos (* (PI) (/ angle 180)))) (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) |
(+.f64 (pow.f64 #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64))) #s(literal 2 binary64)) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64))) |
(pow.f64 #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64))) #s(literal 2 binary64)) |
#s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) |
(sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) |
(*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))) |
| Outputs |
|---|
(* (pow b 2) (pow (sin (* 1/180 (* angle (PI)))) 2)) |
(+ (* (pow a 2) (pow (cos (* 1/180 (* angle (PI)))) 2)) (* (pow b 2) (pow (sin (* 1/180 (* angle (PI)))) 2))) |
(* (pow a 2) (pow (cos (* 1/180 (* angle (PI)))) 2)) |
(* a (cos (* 1/180 (* angle (PI))))) |
(* (pow a 2) (+ (/ (* (pow b 2) (pow (sin (* 1/180 (* angle (PI)))) 2)) (pow a 2)) (pow (cos (* 1/180 (* angle (PI)))) 2))) |
(* b (sin (* 1/180 (* angle (PI))))) |
(* (pow b 2) (+ (/ (* (pow a 2) (pow (cos (* 1/180 (* angle (PI)))) 2)) (pow b 2)) (pow (sin (* 1/180 (* angle (PI)))) 2))) |
(pow a 2) |
(+ (* (pow angle 2) (+ (* -1/32400 (* (pow a 2) (pow (PI) 2))) (* 1/32400 (* (pow b 2) (pow (PI) 2))))) (pow a 2)) |
(+ (* (pow angle 2) (+ (* -1/32400 (* (pow a 2) (pow (PI) 2))) (+ (* 1/32400 (* (pow b 2) (pow (PI) 2))) (* (pow angle 2) (+ (* -1/3149280000 (* (pow b 2) (pow (PI) 4))) (* (pow a 2) (+ (* 1/12597120000 (pow (PI) 4)) (* 1/4199040000 (pow (PI) 4))))))))) (pow a 2)) |
(+ (* (pow angle 2) (+ (* -1/32400 (* (pow a 2) (pow (PI) 2))) (+ (* 1/32400 (* (pow b 2) (pow (PI) 2))) (* (pow angle 2) (+ (* -1/3149280000 (* (pow b 2) (pow (PI) 4))) (+ (* (pow a 2) (+ (* 1/12597120000 (pow (PI) 4)) (* 1/4199040000 (pow (PI) 4)))) (* (pow angle 2) (+ (* (pow a 2) (+ (* -1/816293376000000 (pow (PI) 6)) (* -1/12244400640000000 (pow (PI) 6)))) (* (pow b 2) (+ (* 1/2040733440000000 (pow (PI) 6)) (* 1/1224440064000000 (pow (PI) 6)))))))))))) (pow a 2)) |
(+ (* -1/32400 (* (pow a 2) (* (pow angle 2) (pow (PI) 2)))) (pow a 2)) |
(+ (* (pow angle 2) (+ (* -1/32400 (* (pow a 2) (pow (PI) 2))) (* (pow a 2) (* (pow angle 2) (+ (* 1/12597120000 (pow (PI) 4)) (* 1/4199040000 (pow (PI) 4))))))) (pow a 2)) |
(+ (* (pow angle 2) (+ (* -1/32400 (* (pow a 2) (pow (PI) 2))) (* (pow angle 2) (+ (* (pow a 2) (* (pow angle 2) (+ (* -1/816293376000000 (pow (PI) 6)) (* -1/12244400640000000 (pow (PI) 6))))) (* (pow a 2) (+ (* 1/12597120000 (pow (PI) 4)) (* 1/4199040000 (pow (PI) 4)))))))) (pow a 2)) |
a |
(+ a (* -1/64800 (* a (* (pow angle 2) (pow (PI) 2))))) |
(+ a (* (pow angle 2) (+ (* -1/64800 (* a (pow (PI) 2))) (* 1/25194240000 (* a (* (pow angle 2) (pow (PI) 4))))))) |
(+ a (* (pow angle 2) (+ (* -1/64800 (* a (pow (PI) 2))) (* (pow angle 2) (+ (* -1/24488801280000000 (* a (* (pow angle 2) (pow (PI) 6)))) (* 1/25194240000 (* a (pow (PI) 4)))))))) |
(* 1/32400 (* (pow angle 2) (* (pow b 2) (pow (PI) 2)))) |
(* (pow angle 2) (+ (* -1/3149280000 (* (pow angle 2) (* (pow b 2) (pow (PI) 4)))) (* 1/32400 (* (pow b 2) (pow (PI) 2))))) |
(* (pow angle 2) (+ (* 1/32400 (* (pow b 2) (pow (PI) 2))) (* (pow angle 2) (+ (* -1/3149280000 (* (pow b 2) (pow (PI) 4))) (* (pow angle 2) (* (pow b 2) (+ (* 1/2040733440000000 (pow (PI) 6)) (* 1/1224440064000000 (pow (PI) 6))))))))) |
(* (pow angle 2) (+ (* 1/32400 (* (pow b 2) (pow (PI) 2))) (* (pow angle 2) (+ (* -1/3149280000 (* (pow b 2) (pow (PI) 4))) (* (pow angle 2) (+ (* (pow angle 2) (* (pow b 2) (+ (* -1/396718580736000000000 (pow (PI) 8)) (* -1/2777030065152000000000 (pow (PI) 8))))) (* (pow b 2) (+ (* 1/2040733440000000 (pow (PI) 6)) (* 1/1224440064000000 (pow (PI) 6)))))))))) |
1 |
(+ 1 (* -1/64800 (* (pow angle 2) (pow (PI) 2)))) |
(+ 1 (* (pow angle 2) (+ (* -1/64800 (pow (PI) 2)) (* 1/25194240000 (* (pow angle 2) (pow (PI) 4)))))) |
(+ 1 (* (pow angle 2) (+ (* -1/64800 (pow (PI) 2)) (* (pow angle 2) (+ (* -1/24488801280000000 (* (pow angle 2) (pow (PI) 6))) (* 1/25194240000 (pow (PI) 4))))))) |
(* 1/180 (* angle (* b (PI)))) |
(* angle (+ (* -1/34992000 (* (pow angle 2) (* b (pow (PI) 3)))) (* 1/180 (* b (PI))))) |
(* angle (+ (* 1/180 (* b (PI))) (* (pow angle 2) (+ (* -1/34992000 (* b (pow (PI) 3))) (* 1/22674816000000 (* (pow angle 2) (* b (pow (PI) 5)))))))) |
(* angle (+ (* 1/180 (* b (PI))) (* (pow angle 2) (+ (* -1/34992000 (* b (pow (PI) 3))) (* (pow angle 2) (+ (* -1/30855889612800000000 (* (pow angle 2) (* b (pow (PI) 7)))) (* 1/22674816000000 (* b (pow (PI) 5))))))))) |
(* 1/180 (* angle (PI))) |
(* angle (+ (* -1/34992000 (* (pow angle 2) (pow (PI) 3))) (* 1/180 (PI)))) |
(* angle (+ (* 1/180 (PI)) (* (pow angle 2) (+ (* -1/34992000 (pow (PI) 3)) (* 1/22674816000000 (* (pow angle 2) (pow (PI) 5))))))) |
(* angle (+ (* 1/180 (PI)) (* (pow angle 2) (+ (* -1/34992000 (pow (PI) 3)) (* (pow angle 2) (+ (* -1/30855889612800000000 (* (pow angle 2) (pow (PI) 7))) (* 1/22674816000000 (pow (PI) 5)))))))) |
(cos (* 1/180 (* angle (PI)))) |
(sin (* 1/180 (* angle (PI)))) |
9 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 5.0ms | b | @ | -inf | ((+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (pow (* a (cos (* (PI) (/ angle 180)))) 2) (* a (cos (* (PI) (/ angle 180)))) (pow (* b (sin (* (PI) (/ angle 180)))) 2) (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (PI) (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (pow (* a (cos (* (PI) (/ angle 180)))) 2) (* a (cos (* (PI) (/ angle 180)))) (cos (* (PI) (/ angle 180))) (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (pow (* a (cos (* (PI) (/ angle 180)))) 2) (* a (cos (* (PI) (/ angle 180)))) (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (pow (* a (cos (* (PI) (/ angle 180)))) 2) (* b (sin (* (PI) (/ angle 180)))) (sin (* (PI) (/ angle 180))) (* (PI) (/ angle 180))) |
| 2.0ms | a | @ | 0 | ((+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (pow (* a (cos (* (PI) (/ angle 180)))) 2) (* a (cos (* (PI) (/ angle 180)))) (pow (* b (sin (* (PI) (/ angle 180)))) 2) (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (PI) (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (pow (* a (cos (* (PI) (/ angle 180)))) 2) (* a (cos (* (PI) (/ angle 180)))) (cos (* (PI) (/ angle 180))) (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (pow (* a (cos (* (PI) (/ angle 180)))) 2) (* a (cos (* (PI) (/ angle 180)))) (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (pow (* a (cos (* (PI) (/ angle 180)))) 2) (* b (sin (* (PI) (/ angle 180)))) (sin (* (PI) (/ angle 180))) (* (PI) (/ angle 180))) |
| 2.0ms | a | @ | -inf | ((+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (pow (* a (cos (* (PI) (/ angle 180)))) 2) (* a (cos (* (PI) (/ angle 180)))) (pow (* b (sin (* (PI) (/ angle 180)))) 2) (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (PI) (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (pow (* a (cos (* (PI) (/ angle 180)))) 2) (* a (cos (* (PI) (/ angle 180)))) (cos (* (PI) (/ angle 180))) (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (pow (* a (cos (* (PI) (/ angle 180)))) 2) (* a (cos (* (PI) (/ angle 180)))) (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (pow (* a (cos (* (PI) (/ angle 180)))) 2) (* b (sin (* (PI) (/ angle 180)))) (sin (* (PI) (/ angle 180))) (* (PI) (/ angle 180))) |
| 2.0ms | a | @ | inf | ((+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (pow (* a (cos (* (PI) (/ angle 180)))) 2) (* a (cos (* (PI) (/ angle 180)))) (pow (* b (sin (* (PI) (/ angle 180)))) 2) (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (PI) (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (pow (* a (cos (* (PI) (/ angle 180)))) 2) (* a (cos (* (PI) (/ angle 180)))) (cos (* (PI) (/ angle 180))) (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (pow (* a (cos (* (PI) (/ angle 180)))) 2) (* a (cos (* (PI) (/ angle 180)))) (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (pow (* a (cos (* (PI) (/ angle 180)))) 2) (* b (sin (* (PI) (/ angle 180)))) (sin (* (PI) (/ angle 180))) (* (PI) (/ angle 180))) |
| 2.0ms | b | @ | 0 | ((+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (pow (* a (cos (* (PI) (/ angle 180)))) 2) (* a (cos (* (PI) (/ angle 180)))) (pow (* b (sin (* (PI) (/ angle 180)))) 2) (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (PI) (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (pow (* a (cos (* (PI) (/ angle 180)))) 2) (* a (cos (* (PI) (/ angle 180)))) (cos (* (PI) (/ angle 180))) (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (pow (* a (cos (* (PI) (/ angle 180)))) 2) (* a (cos (* (PI) (/ angle 180)))) (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (pow (* a (cos (* (PI) (/ angle 180)))) 2) (* b (sin (* (PI) (/ angle 180)))) (sin (* (PI) (/ angle 180))) (* (PI) (/ angle 180))) |
| 1× | egg-herbie |
| Inputs |
|---|
(* (pow b 2) (pow (sin (* 1/180 (* angle (PI)))) 2)) |
(+ (* (pow a 2) (pow (cos (* 1/180 (* angle (PI)))) 2)) (* (pow b 2) (pow (sin (* 1/180 (* angle (PI)))) 2))) |
(* (pow a 2) (pow (cos (* 1/180 (* angle (PI)))) 2)) |
(* a (cos (* 1/180 (* angle (PI))))) |
(* (pow a 2) (+ (/ (* (pow b 2) (pow (sin (* 1/180 (* angle (PI)))) 2)) (pow a 2)) (pow (cos (* 1/180 (* angle (PI)))) 2))) |
(* b (sin (* 1/180 (* angle (PI))))) |
(* (pow b 2) (+ (/ (* (pow a 2) (pow (cos (* 1/180 (* angle (PI)))) 2)) (pow b 2)) (pow (sin (* 1/180 (* angle (PI)))) 2))) |
(pow a 2) |
(+ (* (pow angle 2) (+ (* -1/32400 (* (pow a 2) (pow (PI) 2))) (* 1/32400 (* (pow b 2) (pow (PI) 2))))) (pow a 2)) |
(+ (* (pow angle 2) (+ (* -1/32400 (* (pow a 2) (pow (PI) 2))) (+ (* 1/32400 (* (pow b 2) (pow (PI) 2))) (* (pow angle 2) (+ (* -1/3149280000 (* (pow b 2) (pow (PI) 4))) (* (pow a 2) (+ (* 1/12597120000 (pow (PI) 4)) (* 1/4199040000 (pow (PI) 4))))))))) (pow a 2)) |
(+ (* (pow angle 2) (+ (* -1/32400 (* (pow a 2) (pow (PI) 2))) (+ (* 1/32400 (* (pow b 2) (pow (PI) 2))) (* (pow angle 2) (+ (* -1/3149280000 (* (pow b 2) (pow (PI) 4))) (+ (* (pow a 2) (+ (* 1/12597120000 (pow (PI) 4)) (* 1/4199040000 (pow (PI) 4)))) (* (pow angle 2) (+ (* (pow a 2) (+ (* -1/816293376000000 (pow (PI) 6)) (* -1/12244400640000000 (pow (PI) 6)))) (* (pow b 2) (+ (* 1/2040733440000000 (pow (PI) 6)) (* 1/1224440064000000 (pow (PI) 6)))))))))))) (pow a 2)) |
(+ (* -1/32400 (* (pow a 2) (* (pow angle 2) (pow (PI) 2)))) (pow a 2)) |
(+ (* (pow angle 2) (+ (* -1/32400 (* (pow a 2) (pow (PI) 2))) (* (pow a 2) (* (pow angle 2) (+ (* 1/12597120000 (pow (PI) 4)) (* 1/4199040000 (pow (PI) 4))))))) (pow a 2)) |
(+ (* (pow angle 2) (+ (* -1/32400 (* (pow a 2) (pow (PI) 2))) (* (pow angle 2) (+ (* (pow a 2) (* (pow angle 2) (+ (* -1/816293376000000 (pow (PI) 6)) (* -1/12244400640000000 (pow (PI) 6))))) (* (pow a 2) (+ (* 1/12597120000 (pow (PI) 4)) (* 1/4199040000 (pow (PI) 4)))))))) (pow a 2)) |
a |
(+ a (* -1/64800 (* a (* (pow angle 2) (pow (PI) 2))))) |
(+ a (* (pow angle 2) (+ (* -1/64800 (* a (pow (PI) 2))) (* 1/25194240000 (* a (* (pow angle 2) (pow (PI) 4))))))) |
(+ a (* (pow angle 2) (+ (* -1/64800 (* a (pow (PI) 2))) (* (pow angle 2) (+ (* -1/24488801280000000 (* a (* (pow angle 2) (pow (PI) 6)))) (* 1/25194240000 (* a (pow (PI) 4)))))))) |
(* 1/32400 (* (pow angle 2) (* (pow b 2) (pow (PI) 2)))) |
(* (pow angle 2) (+ (* -1/3149280000 (* (pow angle 2) (* (pow b 2) (pow (PI) 4)))) (* 1/32400 (* (pow b 2) (pow (PI) 2))))) |
(* (pow angle 2) (+ (* 1/32400 (* (pow b 2) (pow (PI) 2))) (* (pow angle 2) (+ (* -1/3149280000 (* (pow b 2) (pow (PI) 4))) (* (pow angle 2) (* (pow b 2) (+ (* 1/2040733440000000 (pow (PI) 6)) (* 1/1224440064000000 (pow (PI) 6))))))))) |
(* (pow angle 2) (+ (* 1/32400 (* (pow b 2) (pow (PI) 2))) (* (pow angle 2) (+ (* -1/3149280000 (* (pow b 2) (pow (PI) 4))) (* (pow angle 2) (+ (* (pow angle 2) (* (pow b 2) (+ (* -1/396718580736000000000 (pow (PI) 8)) (* -1/2777030065152000000000 (pow (PI) 8))))) (* (pow b 2) (+ (* 1/2040733440000000 (pow (PI) 6)) (* 1/1224440064000000 (pow (PI) 6)))))))))) |
1 |
(+ 1 (* -1/64800 (* (pow angle 2) (pow (PI) 2)))) |
(+ 1 (* (pow angle 2) (+ (* -1/64800 (pow (PI) 2)) (* 1/25194240000 (* (pow angle 2) (pow (PI) 4)))))) |
(+ 1 (* (pow angle 2) (+ (* -1/64800 (pow (PI) 2)) (* (pow angle 2) (+ (* -1/24488801280000000 (* (pow angle 2) (pow (PI) 6))) (* 1/25194240000 (pow (PI) 4))))))) |
(* 1/180 (* angle (* b (PI)))) |
(* angle (+ (* -1/34992000 (* (pow angle 2) (* b (pow (PI) 3)))) (* 1/180 (* b (PI))))) |
(* angle (+ (* 1/180 (* b (PI))) (* (pow angle 2) (+ (* -1/34992000 (* b (pow (PI) 3))) (* 1/22674816000000 (* (pow angle 2) (* b (pow (PI) 5)))))))) |
(* angle (+ (* 1/180 (* b (PI))) (* (pow angle 2) (+ (* -1/34992000 (* b (pow (PI) 3))) (* (pow angle 2) (+ (* -1/30855889612800000000 (* (pow angle 2) (* b (pow (PI) 7)))) (* 1/22674816000000 (* b (pow (PI) 5))))))))) |
(* 1/180 (* angle (PI))) |
(* angle (+ (* -1/34992000 (* (pow angle 2) (pow (PI) 3))) (* 1/180 (PI)))) |
(* angle (+ (* 1/180 (PI)) (* (pow angle 2) (+ (* -1/34992000 (pow (PI) 3)) (* 1/22674816000000 (* (pow angle 2) (pow (PI) 5))))))) |
(* angle (+ (* 1/180 (PI)) (* (pow angle 2) (+ (* -1/34992000 (pow (PI) 3)) (* (pow angle 2) (+ (* -1/30855889612800000000 (* (pow angle 2) (pow (PI) 7))) (* 1/22674816000000 (pow (PI) 5)))))))) |
(cos (* 1/180 (* angle (PI)))) |
(sin (* 1/180 (* angle (PI)))) |
| Outputs |
|---|
(* (pow b 2) (pow (sin (* 1/180 (* angle (PI)))) 2)) |
(+.f64 #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64)))) (pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) |
(+ (* (pow a 2) (pow (cos (* 1/180 (* angle (PI)))) 2)) (* (pow b 2) (pow (sin (* 1/180 (* angle (PI)))) 2))) |
#s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64)))) |
(* (pow a 2) (pow (cos (* 1/180 (* angle (PI)))) 2)) |
#s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64))) |
(* a (cos (* 1/180 (* angle (PI))))) |
(pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64)) |
(* (pow a 2) (+ (/ (* (pow b 2) (pow (sin (* 1/180 (* angle (PI)))) 2)) (pow a 2)) (pow (cos (* 1/180 (* angle (PI)))) 2))) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (PI.f64)) |
(* b (sin (* 1/180 (* angle (PI))))) |
(PI.f64) |
(* (pow b 2) (+ (/ (* (pow a 2) (pow (cos (* 1/180 (* angle (PI)))) 2)) (pow b 2)) (pow (sin (* 1/180 (* angle (PI)))) 2))) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))))) |
(pow a 2) |
#s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))))) |
(+ (* (pow angle 2) (+ (* -1/32400 (* (pow a 2) (pow (PI) 2))) (* 1/32400 (* (pow b 2) (pow (PI) 2))))) (pow a 2)) |
(*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) |
(+ (* (pow angle 2) (+ (* -1/32400 (* (pow a 2) (pow (PI) 2))) (+ (* 1/32400 (* (pow b 2) (pow (PI) 2))) (* (pow angle 2) (+ (* -1/3149280000 (* (pow b 2) (pow (PI) 4))) (* (pow a 2) (+ (* 1/12597120000 (pow (PI) 4)) (* 1/4199040000 (pow (PI) 4))))))))) (pow a 2)) |
(cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) |
(+ (* (pow angle 2) (+ (* -1/32400 (* (pow a 2) (pow (PI) 2))) (+ (* 1/32400 (* (pow b 2) (pow (PI) 2))) (* (pow angle 2) (+ (* -1/3149280000 (* (pow b 2) (pow (PI) 4))) (+ (* (pow a 2) (+ (* 1/12597120000 (pow (PI) 4)) (* 1/4199040000 (pow (PI) 4)))) (* (pow angle 2) (+ (* (pow a 2) (+ (* -1/816293376000000 (pow (PI) 6)) (* -1/12244400640000000 (pow (PI) 6)))) (* (pow b 2) (+ (* 1/2040733440000000 (pow (PI) 6)) (* 1/1224440064000000 (pow (PI) 6)))))))))))) (pow a 2)) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (pow.f64 #s(approx (* a (cos (* (PI) (/ angle 180)))) (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) |
(+ (* -1/32400 (* (pow a 2) (* (pow angle 2) (pow (PI) 2)))) (pow a 2)) |
(pow.f64 #s(approx (* a (cos (* (PI) (/ angle 180)))) (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64)) |
(+ (* (pow angle 2) (+ (* -1/32400 (* (pow a 2) (pow (PI) 2))) (* (pow a 2) (* (pow angle 2) (+ (* 1/12597120000 (pow (PI) 4)) (* 1/4199040000 (pow (PI) 4))))))) (pow a 2)) |
#s(approx (* a (cos (* (PI) (/ angle 180)))) (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) |
(+ (* (pow angle 2) (+ (* -1/32400 (* (pow a 2) (pow (PI) 2))) (* (pow angle 2) (+ (* (pow a 2) (* (pow angle 2) (+ (* -1/816293376000000 (pow (PI) 6)) (* -1/12244400640000000 (pow (PI) 6))))) (* (pow a 2) (+ (* 1/12597120000 (pow (PI) 4)) (* 1/4199040000 (pow (PI) 4)))))))) (pow a 2)) |
(+.f64 (pow.f64 #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64))) #s(literal 2 binary64)) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64))) |
a |
(pow.f64 #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64))) #s(literal 2 binary64)) |
(+ a (* -1/64800 (* a (* (pow angle 2) (pow (PI) 2))))) |
#s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) |
(+ a (* (pow angle 2) (+ (* -1/64800 (* a (pow (PI) 2))) (* 1/25194240000 (* a (* (pow angle 2) (pow (PI) 4))))))) |
(sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) |
(+ a (* (pow angle 2) (+ (* -1/64800 (* a (pow (PI) 2))) (* (pow angle 2) (+ (* -1/24488801280000000 (* a (* (pow angle 2) (pow (PI) 6)))) (* 1/25194240000 (* a (pow (PI) 4)))))))) |
(*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))) |
| Inputs |
|---|
(+.f64 #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64)))) (pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) |
#s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64)))) |
#s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64))) |
(pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64)) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (PI.f64)) |
(PI.f64) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))))) |
#s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))))) |
(*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) |
(cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (pow.f64 #s(approx (* a (cos (* (PI) (/ angle 180)))) (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) |
(pow.f64 #s(approx (* a (cos (* (PI) (/ angle 180)))) (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64)) |
#s(approx (* a (cos (* (PI) (/ angle 180)))) (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) |
(+.f64 (pow.f64 #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64))) #s(literal 2 binary64)) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64))) |
(pow.f64 #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64))) #s(literal 2 binary64)) |
#s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) |
(sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) |
(*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))) |
| Outputs |
|---|
(+.f64 #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64)))) (pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) |
#s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64)))) |
#s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64))) |
(pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64)) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (PI.f64)) |
(PI.f64) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))))) |
#s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))))) |
(*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) |
(cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (pow.f64 #s(approx (* a (cos (* (PI) (/ angle 180)))) (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) |
(pow.f64 #s(approx (* a (cos (* (PI) (/ angle 180)))) (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64)) |
#s(approx (* a (cos (* (PI) (/ angle 180)))) (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) |
(+.f64 (pow.f64 #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64))) #s(literal 2 binary64)) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64))) |
(pow.f64 #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64))) #s(literal 2 binary64)) |
#s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) |
(sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) |
(*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))) |
Compiled 2 439 to 79 computations (96.8% saved)
18 alts after pruning (9 fresh and 9 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 51 | 5 | 56 |
| Fresh | 1 | 4 | 5 |
| Picked | 1 | 4 | 5 |
| Done | 0 | 5 | 5 |
| Total | 53 | 18 | 71 |
| Status | Accuracy | Program |
|---|---|---|
| ✓ | 81.5% | (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64)) (pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) |
| 17.9% | (+.f64 (pow.f64 #s(approx (* a (cos (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64)) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64))) | |
| ✓ | 27.8% | (+.f64 #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))))) (pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) |
| 3.8% | (+.f64 #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) | |
| 14.8% | (+.f64 #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64))) | |
| ✓ | 34.3% | (+.f64 #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64)))) (pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) |
| ▶ | 24.5% | (+.f64 #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (PI.f64)) #s(literal 2 binary64)))) (pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) |
| ▶ | 25.7% | (+.f64 #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* a (cos (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) (pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) |
| ✓ | 59.7% | #s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (pow.f64 (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) |
| ▶ | 24.3% | #s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (pow.f64 #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64))) #s(literal 2 binary64))) |
| ✓ | 4.3% | #s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (pow.f64 #s(approx (* a (cos (* (PI) (/ angle 180)))) (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) |
| ▶ | 3.1% | #s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) |
| ✓ | 5.7% | #s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))))) |
| ✓ | 2.8% | #s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) |
| 3.7% | #s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) | |
| ✓ | 4.3% | #s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (PI.f64)) |
| ✓ | 3.7% | #s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))))) |
| ▶ | 17.9% | #s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64))))) |
Compiled 997 to 609 computations (38.9% saved)
| 1× | egg-herbie |
Found 20 expressions of interest:
| New | Metric | Score | Program |
|---|---|---|---|
| cost-diff | 0 | (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (PI.f64)) #s(literal 2 binary64)) | |
| cost-diff | 0 | #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (PI.f64)) #s(literal 2 binary64))) | |
| cost-diff | 0 | #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (PI.f64)) #s(literal 2 binary64)))) | |
| cost-diff | 0 | (+.f64 #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (PI.f64)) #s(literal 2 binary64)))) (pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) | |
| cost-diff | 0 | (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64)) | |
| cost-diff | 0 | #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64))) | |
| cost-diff | 0 | (pow.f64 #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64))) #s(literal 2 binary64)) | |
| cost-diff | 0 | #s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (pow.f64 #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64))) #s(literal 2 binary64))) | |
| cost-diff | 0 | (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64)) | |
| cost-diff | 0 | #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64))) | |
| cost-diff | 0 | #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64)))) | |
| cost-diff | 0 | #s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64))))) | |
| cost-diff | 0 | (/.f64 angle #s(literal 180 binary64)) | |
| cost-diff | 0 | (PI.f64) | |
| cost-diff | 0 | (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))) | |
| cost-diff | 0 | #s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) | |
| cost-diff | 0 | (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))) | |
| cost-diff | 0 | #s(approx (* a (cos (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) | |
| cost-diff | 0 | #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* a (cos (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) | |
| cost-diff | 0 | (+.f64 #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* a (cos (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) (pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) |
| Inputs |
|---|
(+.f64 #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* a (cos (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) (pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) |
#s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* a (cos (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) |
#s(approx (* a (cos (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) |
(*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))) |
(PI.f64) |
(/.f64 angle #s(literal 180 binary64)) |
angle |
#s(literal 180 binary64) |
(pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64)) |
(*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) |
b |
(sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) |
#s(literal 2 binary64) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) |
(*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))) |
(PI.f64) |
(/.f64 angle #s(literal 180 binary64)) |
angle |
#s(literal 180 binary64) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64))))) |
#s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64)))) |
#s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64))) |
(pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64)) |
#s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) |
(*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))) |
(PI.f64) |
(/.f64 angle #s(literal 180 binary64)) |
angle |
#s(literal 180 binary64) |
#s(literal 2 binary64) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (pow.f64 #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64))) #s(literal 2 binary64))) |
(pow.f64 #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64))) #s(literal 2 binary64)) |
#s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64))) |
(pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64)) |
#s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) |
(*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))) |
(PI.f64) |
(/.f64 angle #s(literal 180 binary64)) |
angle |
#s(literal 180 binary64) |
#s(literal 2 binary64) |
(+.f64 #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (PI.f64)) #s(literal 2 binary64)))) (pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) |
#s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (PI.f64)) #s(literal 2 binary64)))) |
#s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (PI.f64)) #s(literal 2 binary64))) |
(pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (PI.f64)) #s(literal 2 binary64)) |
#s(approx (* b (sin (* (PI) (/ angle 180)))) (PI.f64)) |
(PI.f64) |
#s(literal 2 binary64) |
(pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64)) |
(*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) |
b |
(sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) |
(*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))) |
(/.f64 angle #s(literal 180 binary64)) |
angle |
#s(literal 180 binary64) |
| Outputs |
|---|
(+.f64 #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* a (cos (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) (pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) |
#s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* a (cos (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) |
#s(approx (* a (cos (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) |
(*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))) |
(PI.f64) |
(/.f64 angle #s(literal 180 binary64)) |
angle |
#s(literal 180 binary64) |
(pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64)) |
(*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) |
b |
(sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) |
#s(literal 2 binary64) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) |
(*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))) |
(PI.f64) |
(/.f64 angle #s(literal 180 binary64)) |
angle |
#s(literal 180 binary64) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64))))) |
#s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64)))) |
#s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64))) |
(pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64)) |
#s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) |
(*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))) |
(PI.f64) |
(/.f64 angle #s(literal 180 binary64)) |
angle |
#s(literal 180 binary64) |
#s(literal 2 binary64) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (pow.f64 #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64))) #s(literal 2 binary64))) |
(pow.f64 #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64))) #s(literal 2 binary64)) |
#s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64))) |
(pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64)) |
#s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) |
(*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))) |
(PI.f64) |
(/.f64 angle #s(literal 180 binary64)) |
angle |
#s(literal 180 binary64) |
#s(literal 2 binary64) |
(+.f64 #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (PI.f64)) #s(literal 2 binary64)))) (pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) |
#s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (PI.f64)) #s(literal 2 binary64)))) |
#s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (PI.f64)) #s(literal 2 binary64))) |
(pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (PI.f64)) #s(literal 2 binary64)) |
#s(approx (* b (sin (* (PI) (/ angle 180)))) (PI.f64)) |
(PI.f64) |
#s(literal 2 binary64) |
(pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64)) |
(*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) |
b |
(sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) |
(*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))) |
(/.f64 angle #s(literal 180 binary64)) |
angle |
#s(literal 180 binary64) |
Found 20 expressions of interest:
| New | Metric | Score | Program |
|---|---|---|---|
| accuracy | 27.049848645940852 | (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) | |
| accuracy | 61.02718818756744 | #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (PI.f64)) #s(literal 2 binary64)))) | |
| accuracy | 61.7628011175073 | #s(approx (* b (sin (* (PI) (/ angle 180)))) (PI.f64)) | |
| accuracy | 61.90399229008133 | #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (PI.f64)) #s(literal 2 binary64))) | |
| accuracy | 0.3046875 | (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))) | |
| accuracy | 20.676825297838235 | #s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (pow.f64 #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64))) #s(literal 2 binary64))) | |
| accuracy | 61.659503682653934 | #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) | |
| accuracy | 61.90399229008133 | #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64))) | |
| accuracy | 20.676825297838235 | #s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64))))) | |
| accuracy | 61.02718818756744 | #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64)))) | |
| accuracy | 61.659503682653934 | #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) | |
| accuracy | 61.90399229008133 | #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64))) | |
| accuracy | 0.0 | (/.f64 angle #s(literal 180 binary64)) | |
| accuracy | 0.0 | (PI.f64) | |
| accuracy | 0.3046875 | (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))) | |
| accuracy | 62.0345172639434 | #s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) | |
| accuracy | 0.3046875 | (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))) | |
| accuracy | 27.049848645940852 | (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) | |
| accuracy | 61.02718818756744 | #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* a (cos (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) | |
| accuracy | 61.86685557265276 | #s(approx (* a (cos (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) |
| 48.0ms | 256× | 0 | valid |
Compiled 951 to 56 computations (94.1% saved)
ival-cosu: 7.0ms (24.2% of total)ival-sinu: 6.0ms (20.7% of total)ival-mult: 5.0ms (17.3% of total)ival-pow2: 5.0ms (17.3% of total)ival-pi: 3.0ms (10.4% of total)ival-div: 2.0ms (6.9% of total)ival-add: 1.0ms (3.5% of total)ival-assert: 0.0ms (0% of total)ival-true: 0.0ms (0% of total)exact: 0.0ms (0% of total)| Inputs |
|---|
(+.f64 #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* a (cos (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) (pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) |
#s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* a (cos (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) |
#s(approx (* a (cos (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) |
(*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) |
(PI.f64) |
(/.f64 angle #s(literal 180 binary64)) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64))))) |
#s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64)))) |
#s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64))) |
(pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64)) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (pow.f64 #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64))) #s(literal 2 binary64))) |
(pow.f64 #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64))) #s(literal 2 binary64)) |
(+.f64 #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (PI.f64)) #s(literal 2 binary64)))) (pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) |
#s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (PI.f64)) #s(literal 2 binary64)))) |
#s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (PI.f64)) #s(literal 2 binary64))) |
(pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (PI.f64)) #s(literal 2 binary64)) |
(sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) |
#s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) |
#s(approx (* b (sin (* (PI) (/ angle 180)))) (PI.f64)) |
| Outputs |
|---|
(* (pow b 2) (pow (sin (* 1/180 (* angle (PI)))) 2)) |
(+ (* (pow a 2) (pow (cos (* 1/180 (* angle (PI)))) 2)) (* (pow b 2) (pow (sin (* 1/180 (* angle (PI)))) 2))) |
(* (pow a 2) (pow (cos (* 1/180 (* angle (PI)))) 2)) |
(* a (cos (* 1/180 (* angle (PI))))) |
(* (pow a 2) (+ (/ (* (pow b 2) (pow (sin (* 1/180 (* angle (PI)))) 2)) (pow a 2)) (pow (cos (* 1/180 (* angle (PI)))) 2))) |
(* b (sin (* 1/180 (* angle (PI))))) |
(* (pow b 2) (+ (/ (* (pow a 2) (pow (cos (* 1/180 (* angle (PI)))) 2)) (pow b 2)) (pow (sin (* 1/180 (* angle (PI)))) 2))) |
(pow a 2) |
(+ (* (pow angle 2) (+ (* -1/32400 (* (pow a 2) (pow (PI) 2))) (* 1/32400 (* (pow b 2) (pow (PI) 2))))) (pow a 2)) |
(+ (* (pow angle 2) (+ (* -1/32400 (* (pow a 2) (pow (PI) 2))) (+ (* 1/32400 (* (pow b 2) (pow (PI) 2))) (* (pow angle 2) (+ (* -1/3149280000 (* (pow b 2) (pow (PI) 4))) (* (pow a 2) (+ (* 1/12597120000 (pow (PI) 4)) (* 1/4199040000 (pow (PI) 4))))))))) (pow a 2)) |
(+ (* (pow angle 2) (+ (* -1/32400 (* (pow a 2) (pow (PI) 2))) (+ (* 1/32400 (* (pow b 2) (pow (PI) 2))) (* (pow angle 2) (+ (* -1/3149280000 (* (pow b 2) (pow (PI) 4))) (+ (* (pow a 2) (+ (* 1/12597120000 (pow (PI) 4)) (* 1/4199040000 (pow (PI) 4)))) (* (pow angle 2) (+ (* (pow a 2) (+ (* -1/816293376000000 (pow (PI) 6)) (* -1/12244400640000000 (pow (PI) 6)))) (* (pow b 2) (+ (* 1/2040733440000000 (pow (PI) 6)) (* 1/1224440064000000 (pow (PI) 6)))))))))))) (pow a 2)) |
(+ (* -1/32400 (* (pow a 2) (* (pow angle 2) (pow (PI) 2)))) (pow a 2)) |
(+ (* (pow angle 2) (+ (* -1/32400 (* (pow a 2) (pow (PI) 2))) (* (pow a 2) (* (pow angle 2) (+ (* 1/12597120000 (pow (PI) 4)) (* 1/4199040000 (pow (PI) 4))))))) (pow a 2)) |
(+ (* (pow angle 2) (+ (* -1/32400 (* (pow a 2) (pow (PI) 2))) (* (pow angle 2) (+ (* (pow a 2) (* (pow angle 2) (+ (* -1/816293376000000 (pow (PI) 6)) (* -1/12244400640000000 (pow (PI) 6))))) (* (pow a 2) (+ (* 1/12597120000 (pow (PI) 4)) (* 1/4199040000 (pow (PI) 4)))))))) (pow a 2)) |
a |
(+ a (* -1/64800 (* a (* (pow angle 2) (pow (PI) 2))))) |
(+ a (* (pow angle 2) (+ (* -1/64800 (* a (pow (PI) 2))) (* 1/25194240000 (* a (* (pow angle 2) (pow (PI) 4))))))) |
(+ a (* (pow angle 2) (+ (* -1/64800 (* a (pow (PI) 2))) (* (pow angle 2) (+ (* -1/24488801280000000 (* a (* (pow angle 2) (pow (PI) 6)))) (* 1/25194240000 (* a (pow (PI) 4)))))))) |
(* 1/180 (* angle (PI))) |
(* 1/180 angle) |
(* 1/32400 (* (pow angle 2) (* (pow b 2) (pow (PI) 2)))) |
(* (pow angle 2) (+ (* -1/3149280000 (* (pow angle 2) (* (pow b 2) (pow (PI) 4)))) (* 1/32400 (* (pow b 2) (pow (PI) 2))))) |
(* (pow angle 2) (+ (* 1/32400 (* (pow b 2) (pow (PI) 2))) (* (pow angle 2) (+ (* -1/3149280000 (* (pow b 2) (pow (PI) 4))) (* (pow angle 2) (* (pow b 2) (+ (* 1/2040733440000000 (pow (PI) 6)) (* 1/1224440064000000 (pow (PI) 6))))))))) |
(* (pow angle 2) (+ (* 1/32400 (* (pow b 2) (pow (PI) 2))) (* (pow angle 2) (+ (* -1/3149280000 (* (pow b 2) (pow (PI) 4))) (* (pow angle 2) (+ (* (pow angle 2) (* (pow b 2) (+ (* -1/396718580736000000000 (pow (PI) 8)) (* -1/2777030065152000000000 (pow (PI) 8))))) (* (pow b 2) (+ (* 1/2040733440000000 (pow (PI) 6)) (* 1/1224440064000000 (pow (PI) 6)))))))))) |
(* angle (+ (* -1/34992000 (* (pow angle 2) (pow (PI) 3))) (* 1/180 (PI)))) |
(* angle (+ (* 1/180 (PI)) (* (pow angle 2) (+ (* -1/34992000 (pow (PI) 3)) (* 1/22674816000000 (* (pow angle 2) (pow (PI) 5))))))) |
(* angle (+ (* 1/180 (PI)) (* (pow angle 2) (+ (* -1/34992000 (pow (PI) 3)) (* (pow angle 2) (+ (* -1/30855889612800000000 (* (pow angle 2) (pow (PI) 7))) (* 1/22674816000000 (pow (PI) 5)))))))) |
(* 1/180 (* angle (* b (PI)))) |
(* angle (+ (* -1/34992000 (* (pow angle 2) (* b (pow (PI) 3)))) (* 1/180 (* b (PI))))) |
(* angle (+ (* 1/180 (* b (PI))) (* (pow angle 2) (+ (* -1/34992000 (* b (pow (PI) 3))) (* 1/22674816000000 (* (pow angle 2) (* b (pow (PI) 5)))))))) |
(* angle (+ (* 1/180 (* b (PI))) (* (pow angle 2) (+ (* -1/34992000 (* b (pow (PI) 3))) (* (pow angle 2) (+ (* -1/30855889612800000000 (* (pow angle 2) (* b (pow (PI) 7)))) (* 1/22674816000000 (* b (pow (PI) 5))))))))) |
(sin (* 1/180 (* angle (PI)))) |
9 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 2.0ms | a | @ | 0 | ((+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (pow (* a (cos (* (PI) (/ angle 180)))) 2) (* a (cos (* (PI) (/ angle 180)))) (* (PI) (/ angle 180)) (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (PI) (/ angle 180) (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (pow (* a (cos (* (PI) (/ angle 180)))) 2) (* a (cos (* (PI) (/ angle 180)))) (pow (* b (sin (* (PI) (/ angle 180)))) 2) (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (pow (* a (cos (* (PI) (/ angle 180)))) 2) (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (pow (* a (cos (* (PI) (/ angle 180)))) 2) (* a (cos (* (PI) (/ angle 180)))) (pow (* b (sin (* (PI) (/ angle 180)))) 2) (sin (* (PI) (/ angle 180))) (* b (sin (* (PI) (/ angle 180)))) (* b (sin (* (PI) (/ angle 180))))) |
| 2.0ms | angle | @ | -inf | ((+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (pow (* a (cos (* (PI) (/ angle 180)))) 2) (* a (cos (* (PI) (/ angle 180)))) (* (PI) (/ angle 180)) (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (PI) (/ angle 180) (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (pow (* a (cos (* (PI) (/ angle 180)))) 2) (* a (cos (* (PI) (/ angle 180)))) (pow (* b (sin (* (PI) (/ angle 180)))) 2) (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (pow (* a (cos (* (PI) (/ angle 180)))) 2) (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (pow (* a (cos (* (PI) (/ angle 180)))) 2) (* a (cos (* (PI) (/ angle 180)))) (pow (* b (sin (* (PI) (/ angle 180)))) 2) (sin (* (PI) (/ angle 180))) (* b (sin (* (PI) (/ angle 180)))) (* b (sin (* (PI) (/ angle 180))))) |
| 2.0ms | angle | @ | inf | ((+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (pow (* a (cos (* (PI) (/ angle 180)))) 2) (* a (cos (* (PI) (/ angle 180)))) (* (PI) (/ angle 180)) (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (PI) (/ angle 180) (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (pow (* a (cos (* (PI) (/ angle 180)))) 2) (* a (cos (* (PI) (/ angle 180)))) (pow (* b (sin (* (PI) (/ angle 180)))) 2) (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (pow (* a (cos (* (PI) (/ angle 180)))) 2) (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (pow (* a (cos (* (PI) (/ angle 180)))) 2) (* a (cos (* (PI) (/ angle 180)))) (pow (* b (sin (* (PI) (/ angle 180)))) 2) (sin (* (PI) (/ angle 180))) (* b (sin (* (PI) (/ angle 180)))) (* b (sin (* (PI) (/ angle 180))))) |
| 2.0ms | a | @ | -inf | ((+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (pow (* a (cos (* (PI) (/ angle 180)))) 2) (* a (cos (* (PI) (/ angle 180)))) (* (PI) (/ angle 180)) (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (PI) (/ angle 180) (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (pow (* a (cos (* (PI) (/ angle 180)))) 2) (* a (cos (* (PI) (/ angle 180)))) (pow (* b (sin (* (PI) (/ angle 180)))) 2) (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (pow (* a (cos (* (PI) (/ angle 180)))) 2) (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (pow (* a (cos (* (PI) (/ angle 180)))) 2) (* a (cos (* (PI) (/ angle 180)))) (pow (* b (sin (* (PI) (/ angle 180)))) 2) (sin (* (PI) (/ angle 180))) (* b (sin (* (PI) (/ angle 180)))) (* b (sin (* (PI) (/ angle 180))))) |
| 2.0ms | b | @ | 0 | ((+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (pow (* a (cos (* (PI) (/ angle 180)))) 2) (* a (cos (* (PI) (/ angle 180)))) (* (PI) (/ angle 180)) (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (PI) (/ angle 180) (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (pow (* a (cos (* (PI) (/ angle 180)))) 2) (* a (cos (* (PI) (/ angle 180)))) (pow (* b (sin (* (PI) (/ angle 180)))) 2) (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (pow (* a (cos (* (PI) (/ angle 180)))) 2) (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (pow (* a (cos (* (PI) (/ angle 180)))) 2) (* a (cos (* (PI) (/ angle 180)))) (pow (* b (sin (* (PI) (/ angle 180)))) 2) (sin (* (PI) (/ angle 180))) (* b (sin (* (PI) (/ angle 180)))) (* b (sin (* (PI) (/ angle 180))))) |
| 1× | egg-herbie |
| Inputs |
|---|
(* (pow b 2) (pow (sin (* 1/180 (* angle (PI)))) 2)) |
(+ (* (pow a 2) (pow (cos (* 1/180 (* angle (PI)))) 2)) (* (pow b 2) (pow (sin (* 1/180 (* angle (PI)))) 2))) |
(* (pow a 2) (pow (cos (* 1/180 (* angle (PI)))) 2)) |
(* a (cos (* 1/180 (* angle (PI))))) |
(* (pow a 2) (+ (/ (* (pow b 2) (pow (sin (* 1/180 (* angle (PI)))) 2)) (pow a 2)) (pow (cos (* 1/180 (* angle (PI)))) 2))) |
(* b (sin (* 1/180 (* angle (PI))))) |
(* (pow b 2) (+ (/ (* (pow a 2) (pow (cos (* 1/180 (* angle (PI)))) 2)) (pow b 2)) (pow (sin (* 1/180 (* angle (PI)))) 2))) |
(pow a 2) |
(+ (* (pow angle 2) (+ (* -1/32400 (* (pow a 2) (pow (PI) 2))) (* 1/32400 (* (pow b 2) (pow (PI) 2))))) (pow a 2)) |
(+ (* (pow angle 2) (+ (* -1/32400 (* (pow a 2) (pow (PI) 2))) (+ (* 1/32400 (* (pow b 2) (pow (PI) 2))) (* (pow angle 2) (+ (* -1/3149280000 (* (pow b 2) (pow (PI) 4))) (* (pow a 2) (+ (* 1/12597120000 (pow (PI) 4)) (* 1/4199040000 (pow (PI) 4))))))))) (pow a 2)) |
(+ (* (pow angle 2) (+ (* -1/32400 (* (pow a 2) (pow (PI) 2))) (+ (* 1/32400 (* (pow b 2) (pow (PI) 2))) (* (pow angle 2) (+ (* -1/3149280000 (* (pow b 2) (pow (PI) 4))) (+ (* (pow a 2) (+ (* 1/12597120000 (pow (PI) 4)) (* 1/4199040000 (pow (PI) 4)))) (* (pow angle 2) (+ (* (pow a 2) (+ (* -1/816293376000000 (pow (PI) 6)) (* -1/12244400640000000 (pow (PI) 6)))) (* (pow b 2) (+ (* 1/2040733440000000 (pow (PI) 6)) (* 1/1224440064000000 (pow (PI) 6)))))))))))) (pow a 2)) |
(+ (* -1/32400 (* (pow a 2) (* (pow angle 2) (pow (PI) 2)))) (pow a 2)) |
(+ (* (pow angle 2) (+ (* -1/32400 (* (pow a 2) (pow (PI) 2))) (* (pow a 2) (* (pow angle 2) (+ (* 1/12597120000 (pow (PI) 4)) (* 1/4199040000 (pow (PI) 4))))))) (pow a 2)) |
(+ (* (pow angle 2) (+ (* -1/32400 (* (pow a 2) (pow (PI) 2))) (* (pow angle 2) (+ (* (pow a 2) (* (pow angle 2) (+ (* -1/816293376000000 (pow (PI) 6)) (* -1/12244400640000000 (pow (PI) 6))))) (* (pow a 2) (+ (* 1/12597120000 (pow (PI) 4)) (* 1/4199040000 (pow (PI) 4)))))))) (pow a 2)) |
a |
(+ a (* -1/64800 (* a (* (pow angle 2) (pow (PI) 2))))) |
(+ a (* (pow angle 2) (+ (* -1/64800 (* a (pow (PI) 2))) (* 1/25194240000 (* a (* (pow angle 2) (pow (PI) 4))))))) |
(+ a (* (pow angle 2) (+ (* -1/64800 (* a (pow (PI) 2))) (* (pow angle 2) (+ (* -1/24488801280000000 (* a (* (pow angle 2) (pow (PI) 6)))) (* 1/25194240000 (* a (pow (PI) 4)))))))) |
(* 1/180 (* angle (PI))) |
(* 1/180 angle) |
(* 1/32400 (* (pow angle 2) (* (pow b 2) (pow (PI) 2)))) |
(* (pow angle 2) (+ (* -1/3149280000 (* (pow angle 2) (* (pow b 2) (pow (PI) 4)))) (* 1/32400 (* (pow b 2) (pow (PI) 2))))) |
(* (pow angle 2) (+ (* 1/32400 (* (pow b 2) (pow (PI) 2))) (* (pow angle 2) (+ (* -1/3149280000 (* (pow b 2) (pow (PI) 4))) (* (pow angle 2) (* (pow b 2) (+ (* 1/2040733440000000 (pow (PI) 6)) (* 1/1224440064000000 (pow (PI) 6))))))))) |
(* (pow angle 2) (+ (* 1/32400 (* (pow b 2) (pow (PI) 2))) (* (pow angle 2) (+ (* -1/3149280000 (* (pow b 2) (pow (PI) 4))) (* (pow angle 2) (+ (* (pow angle 2) (* (pow b 2) (+ (* -1/396718580736000000000 (pow (PI) 8)) (* -1/2777030065152000000000 (pow (PI) 8))))) (* (pow b 2) (+ (* 1/2040733440000000 (pow (PI) 6)) (* 1/1224440064000000 (pow (PI) 6)))))))))) |
(* angle (+ (* -1/34992000 (* (pow angle 2) (pow (PI) 3))) (* 1/180 (PI)))) |
(* angle (+ (* 1/180 (PI)) (* (pow angle 2) (+ (* -1/34992000 (pow (PI) 3)) (* 1/22674816000000 (* (pow angle 2) (pow (PI) 5))))))) |
(* angle (+ (* 1/180 (PI)) (* (pow angle 2) (+ (* -1/34992000 (pow (PI) 3)) (* (pow angle 2) (+ (* -1/30855889612800000000 (* (pow angle 2) (pow (PI) 7))) (* 1/22674816000000 (pow (PI) 5)))))))) |
(* 1/180 (* angle (* b (PI)))) |
(* angle (+ (* -1/34992000 (* (pow angle 2) (* b (pow (PI) 3)))) (* 1/180 (* b (PI))))) |
(* angle (+ (* 1/180 (* b (PI))) (* (pow angle 2) (+ (* -1/34992000 (* b (pow (PI) 3))) (* 1/22674816000000 (* (pow angle 2) (* b (pow (PI) 5)))))))) |
(* angle (+ (* 1/180 (* b (PI))) (* (pow angle 2) (+ (* -1/34992000 (* b (pow (PI) 3))) (* (pow angle 2) (+ (* -1/30855889612800000000 (* (pow angle 2) (* b (pow (PI) 7)))) (* 1/22674816000000 (* b (pow (PI) 5))))))))) |
(sin (* 1/180 (* angle (PI)))) |
| Outputs |
|---|
(* (pow b 2) (pow (sin (* 1/180 (* angle (PI)))) 2)) |
(+.f64 #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* a (cos (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) (pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) |
(+ (* (pow a 2) (pow (cos (* 1/180 (* angle (PI)))) 2)) (* (pow b 2) (pow (sin (* 1/180 (* angle (PI)))) 2))) |
#s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* a (cos (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) |
(* (pow a 2) (pow (cos (* 1/180 (* angle (PI)))) 2)) |
#s(approx (* a (cos (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) |
(* a (cos (* 1/180 (* angle (PI))))) |
(*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))) |
(* (pow a 2) (+ (/ (* (pow b 2) (pow (sin (* 1/180 (* angle (PI)))) 2)) (pow a 2)) (pow (cos (* 1/180 (* angle (PI)))) 2))) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) |
(* b (sin (* 1/180 (* angle (PI))))) |
(PI.f64) |
(* (pow b 2) (+ (/ (* (pow a 2) (pow (cos (* 1/180 (* angle (PI)))) 2)) (pow b 2)) (pow (sin (* 1/180 (* angle (PI)))) 2))) |
(/.f64 angle #s(literal 180 binary64)) |
(pow a 2) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64))))) |
(+ (* (pow angle 2) (+ (* -1/32400 (* (pow a 2) (pow (PI) 2))) (* 1/32400 (* (pow b 2) (pow (PI) 2))))) (pow a 2)) |
#s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64)))) |
(+ (* (pow angle 2) (+ (* -1/32400 (* (pow a 2) (pow (PI) 2))) (+ (* 1/32400 (* (pow b 2) (pow (PI) 2))) (* (pow angle 2) (+ (* -1/3149280000 (* (pow b 2) (pow (PI) 4))) (* (pow a 2) (+ (* 1/12597120000 (pow (PI) 4)) (* 1/4199040000 (pow (PI) 4))))))))) (pow a 2)) |
#s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64))) |
(+ (* (pow angle 2) (+ (* -1/32400 (* (pow a 2) (pow (PI) 2))) (+ (* 1/32400 (* (pow b 2) (pow (PI) 2))) (* (pow angle 2) (+ (* -1/3149280000 (* (pow b 2) (pow (PI) 4))) (+ (* (pow a 2) (+ (* 1/12597120000 (pow (PI) 4)) (* 1/4199040000 (pow (PI) 4)))) (* (pow angle 2) (+ (* (pow a 2) (+ (* -1/816293376000000 (pow (PI) 6)) (* -1/12244400640000000 (pow (PI) 6)))) (* (pow b 2) (+ (* 1/2040733440000000 (pow (PI) 6)) (* 1/1224440064000000 (pow (PI) 6)))))))))))) (pow a 2)) |
(pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64)) |
(+ (* -1/32400 (* (pow a 2) (* (pow angle 2) (pow (PI) 2)))) (pow a 2)) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (pow.f64 #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64))) #s(literal 2 binary64))) |
(+ (* (pow angle 2) (+ (* -1/32400 (* (pow a 2) (pow (PI) 2))) (* (pow a 2) (* (pow angle 2) (+ (* 1/12597120000 (pow (PI) 4)) (* 1/4199040000 (pow (PI) 4))))))) (pow a 2)) |
(pow.f64 #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64))) #s(literal 2 binary64)) |
(+ (* (pow angle 2) (+ (* -1/32400 (* (pow a 2) (pow (PI) 2))) (* (pow angle 2) (+ (* (pow a 2) (* (pow angle 2) (+ (* -1/816293376000000 (pow (PI) 6)) (* -1/12244400640000000 (pow (PI) 6))))) (* (pow a 2) (+ (* 1/12597120000 (pow (PI) 4)) (* 1/4199040000 (pow (PI) 4)))))))) (pow a 2)) |
(+.f64 #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (PI.f64)) #s(literal 2 binary64)))) (pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) |
a |
#s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (PI.f64)) #s(literal 2 binary64)))) |
(+ a (* -1/64800 (* a (* (pow angle 2) (pow (PI) 2))))) |
#s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (PI.f64)) #s(literal 2 binary64))) |
(+ a (* (pow angle 2) (+ (* -1/64800 (* a (pow (PI) 2))) (* 1/25194240000 (* a (* (pow angle 2) (pow (PI) 4))))))) |
(pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (PI.f64)) #s(literal 2 binary64)) |
(+ a (* (pow angle 2) (+ (* -1/64800 (* a (pow (PI) 2))) (* (pow angle 2) (+ (* -1/24488801280000000 (* a (* (pow angle 2) (pow (PI) 6)))) (* 1/25194240000 (* a (pow (PI) 4)))))))) |
(sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) |
(* 1/180 (* angle (PI))) |
#s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) |
(* 1/180 angle) |
#s(approx (* b (sin (* (PI) (/ angle 180)))) (PI.f64)) |
| Inputs |
|---|
(+.f64 #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* a (cos (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) (pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) |
#s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* a (cos (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) |
#s(approx (* a (cos (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) |
(*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) |
(PI.f64) |
(/.f64 angle #s(literal 180 binary64)) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64))))) |
#s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64)))) |
#s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64))) |
(pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64)) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (pow.f64 #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64))) #s(literal 2 binary64))) |
(pow.f64 #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64))) #s(literal 2 binary64)) |
(+.f64 #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (PI.f64)) #s(literal 2 binary64)))) (pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) |
#s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (PI.f64)) #s(literal 2 binary64)))) |
#s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (PI.f64)) #s(literal 2 binary64))) |
(pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (PI.f64)) #s(literal 2 binary64)) |
(sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) |
#s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) |
#s(approx (* b (sin (* (PI) (/ angle 180)))) (PI.f64)) |
| Outputs |
|---|
(+.f64 #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* a (cos (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) (pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) |
#s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* a (cos (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) |
#s(approx (* a (cos (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) |
(*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) |
(PI.f64) |
(/.f64 angle #s(literal 180 binary64)) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64))))) |
#s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64)))) |
#s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64))) |
(pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64)) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (pow.f64 #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64))) #s(literal 2 binary64))) |
(pow.f64 #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64))) #s(literal 2 binary64)) |
(+.f64 #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (PI.f64)) #s(literal 2 binary64)))) (pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) |
#s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (PI.f64)) #s(literal 2 binary64)))) |
#s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (PI.f64)) #s(literal 2 binary64))) |
(pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (PI.f64)) #s(literal 2 binary64)) |
(sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) |
#s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) |
#s(approx (* b (sin (* (PI) (/ angle 180)))) (PI.f64)) |
Compiled 3 145 to 99 computations (96.9% saved)
25 alts after pruning (12 fresh and 13 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 58 | 8 | 66 |
| Fresh | 0 | 4 | 4 |
| Picked | 1 | 4 | 5 |
| Done | 0 | 9 | 9 |
| Total | 59 | 25 | 84 |
| Status | Accuracy | Program |
|---|---|---|
| ✓ | 81.5% | (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64)) (pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) |
| 17.9% | (+.f64 (pow.f64 #s(approx (* a (cos (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64)) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64))) | |
| 19.8% | (+.f64 #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) (+.f64 #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (PI.f64)) #s(literal 2 binary64)))) (pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64)))) (pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) | |
| ✓ | 27.8% | (+.f64 #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))))) (pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) |
| 3.8% | (+.f64 #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) | |
| 14.8% | (+.f64 #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64))) | |
| ✓ | 34.3% | (+.f64 #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64)))) (pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) |
| 21.3% | (+.f64 #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (PI.f64)) #s(literal 2 binary64)))) (pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) #s(approx (/ angle 180) #s(approx (* b (sin (* (PI) (/ angle 180)))) (PI.f64)))))) #s(literal 2 binary64))) | |
| ✓ | 25.7% | (+.f64 #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* a (cos (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) (pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) |
| 20.2% | (+.f64 #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* a (cos (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) (pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) #s(approx (/ angle 180) #s(approx (* b (sin (* (PI) (/ angle 180)))) (PI.f64)))))) #s(literal 2 binary64))) | |
| 24.5% | (+.f64 #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* a (cos (* (PI) (/ angle 180)))) (*.f64 (PI.f64) #s(approx (/ angle 180) #s(approx (* b (sin (* (PI) (/ angle 180)))) (PI.f64)))))) (pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) | |
| ✓ | 59.7% | #s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (pow.f64 (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) |
| ✓ | 24.3% | #s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (pow.f64 #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64))) #s(literal 2 binary64))) |
| 4.3% | #s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (pow.f64 #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) #s(approx (/ angle 180) #s(approx (* b (sin (* (PI) (/ angle 180)))) (PI.f64))))) #s(literal 2 binary64))) #s(literal 2 binary64))) | |
| ✓ | 4.3% | #s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (pow.f64 #s(approx (* a (cos (* (PI) (/ angle 180)))) (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) |
| 3.1% | #s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (/.f64 angle #s(literal 180 binary64))) | |
| ✓ | 3.1% | #s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) |
| 4.3% | #s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (*.f64 (PI.f64) #s(approx (/ angle 180) #s(approx (* b (sin (* (PI) (/ angle 180)))) (PI.f64))))) | |
| ✓ | 5.7% | #s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))))) |
| ✓ | 2.8% | #s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) |
| 3.7% | #s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) | |
| ✓ | 4.3% | #s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (PI.f64)) |
| ✓ | 3.7% | #s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))))) |
| ✓ | 17.9% | #s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64))))) |
| 4.3% | #s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) #s(approx (/ angle 180) #s(approx (* b (sin (* (PI) (/ angle 180)))) (PI.f64))))) #s(literal 2 binary64))))) |
Compiled 2 163 to 658 computations (69.6% saved)
| Inputs |
|---|
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (PI.f64)) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (*.f64 (PI.f64) #s(approx (/ angle 180) #s(approx (* b (sin (* (PI) (/ angle 180)))) (PI.f64))))) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (/.f64 angle #s(literal 180 binary64))) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) #s(approx (/ angle 180) #s(approx (* b (sin (* (PI) (/ angle 180)))) (PI.f64))))) #s(literal 2 binary64))))) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64))))) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))))) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))))) |
(+.f64 #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64))) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (pow.f64 #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) #s(approx (/ angle 180) #s(approx (* b (sin (* (PI) (/ angle 180)))) (PI.f64))))) #s(literal 2 binary64))) #s(literal 2 binary64))) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (pow.f64 #s(approx (* a (cos (* (PI) (/ angle 180)))) (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (pow.f64 #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64))) #s(literal 2 binary64))) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (pow.f64 (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) |
(+.f64 #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* a (cos (* (PI) (/ angle 180)))) (*.f64 (PI.f64) #s(approx (/ angle 180) #s(approx (* b (sin (* (PI) (/ angle 180)))) (PI.f64)))))) (pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) |
(+.f64 #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* a (cos (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) (pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) #s(approx (/ angle 180) #s(approx (* b (sin (* (PI) (/ angle 180)))) (PI.f64)))))) #s(literal 2 binary64))) |
(+.f64 (pow.f64 #s(approx (* a (cos (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64)) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64))) |
(+.f64 #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* a (cos (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) (pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) |
(+.f64 #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (PI.f64)) #s(literal 2 binary64)))) (pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) #s(approx (/ angle 180) #s(approx (* b (sin (* (PI) (/ angle 180)))) (PI.f64)))))) #s(literal 2 binary64))) |
(+.f64 #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (PI.f64)) #s(literal 2 binary64)))) (pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) |
(+.f64 (pow.f64 #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64))) #s(literal 2 binary64)) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64))) |
(+.f64 #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* a (cos (* (PI) (/ angle 180)))) (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))))) (pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) |
(+.f64 #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) |
(+.f64 #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64)))) (pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) |
(+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64)) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64))) |
(+.f64 #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))))) (pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) |
(+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64)) (pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) |
(+.f64 #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) (+.f64 #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (PI.f64)) #s(literal 2 binary64)))) (pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64)))) (pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) |
| Outputs |
|---|
(+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64)) (pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) |
6 calls:
| 9.0ms | angle |
| 8.0ms | (/.f64 angle #s(literal 180 binary64)) |
| 8.0ms | b |
| 8.0ms | a |
| 8.0ms | (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))) |
| Accuracy | Segments | Branch |
|---|---|---|
| 81.5% | 1 | a |
| 81.5% | 1 | b |
| 81.5% | 1 | angle |
| 81.5% | 1 | (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64)) (pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) |
| 81.5% | 1 | (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))) |
| 81.5% | 1 | (/.f64 angle #s(literal 180 binary64)) |
Compiled 32 to 36 computations (-12.5% saved)
| Inputs |
|---|
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (PI.f64)) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (*.f64 (PI.f64) #s(approx (/ angle 180) #s(approx (* b (sin (* (PI) (/ angle 180)))) (PI.f64))))) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (/.f64 angle #s(literal 180 binary64))) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) #s(approx (/ angle 180) #s(approx (* b (sin (* (PI) (/ angle 180)))) (PI.f64))))) #s(literal 2 binary64))))) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64))))) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))))) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))))) |
(+.f64 #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64))) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (pow.f64 #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) #s(approx (/ angle 180) #s(approx (* b (sin (* (PI) (/ angle 180)))) (PI.f64))))) #s(literal 2 binary64))) #s(literal 2 binary64))) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (pow.f64 #s(approx (* a (cos (* (PI) (/ angle 180)))) (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (pow.f64 #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64))) #s(literal 2 binary64))) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (pow.f64 (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) |
(+.f64 #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* a (cos (* (PI) (/ angle 180)))) (*.f64 (PI.f64) #s(approx (/ angle 180) #s(approx (* b (sin (* (PI) (/ angle 180)))) (PI.f64)))))) (pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) |
(+.f64 #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* a (cos (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) (pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) #s(approx (/ angle 180) #s(approx (* b (sin (* (PI) (/ angle 180)))) (PI.f64)))))) #s(literal 2 binary64))) |
(+.f64 (pow.f64 #s(approx (* a (cos (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64)) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64))) |
(+.f64 #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* a (cos (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) (pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) |
(+.f64 #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (PI.f64)) #s(literal 2 binary64)))) (pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) #s(approx (/ angle 180) #s(approx (* b (sin (* (PI) (/ angle 180)))) (PI.f64)))))) #s(literal 2 binary64))) |
(+.f64 #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (PI.f64)) #s(literal 2 binary64)))) (pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) |
(+.f64 (pow.f64 #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64))) #s(literal 2 binary64)) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64))) |
(+.f64 #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* a (cos (* (PI) (/ angle 180)))) (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))))) (pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) |
(+.f64 #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) |
(+.f64 #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64)))) (pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) |
(+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64)) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64))) |
(+.f64 #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))))) (pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) |
| Outputs |
|---|
(+.f64 #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* a (cos (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) (pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (pow.f64 (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) |
(+.f64 #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64)))) (pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) |
6 calls:
| 11.0ms | (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))) |
| 9.0ms | b |
| 8.0ms | a |
| 8.0ms | (/.f64 angle #s(literal 180 binary64)) |
| 8.0ms | angle |
| Accuracy | Segments | Branch |
|---|---|---|
| 73.7% | 3 | b |
| 62.3% | 2 | angle |
| 65.4% | 2 | (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64)) (pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) |
| 62.3% | 2 | (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))) |
| 62.3% | 2 | (/.f64 angle #s(literal 180 binary64)) |
| 65.4% | 4 | a |
Compiled 32 to 36 computations (-12.5% saved)
| Inputs |
|---|
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (PI.f64)) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (*.f64 (PI.f64) #s(approx (/ angle 180) #s(approx (* b (sin (* (PI) (/ angle 180)))) (PI.f64))))) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (/.f64 angle #s(literal 180 binary64))) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) #s(approx (/ angle 180) #s(approx (* b (sin (* (PI) (/ angle 180)))) (PI.f64))))) #s(literal 2 binary64))))) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64))))) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))))) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))))) |
(+.f64 #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64))) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (pow.f64 #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) #s(approx (/ angle 180) #s(approx (* b (sin (* (PI) (/ angle 180)))) (PI.f64))))) #s(literal 2 binary64))) #s(literal 2 binary64))) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (pow.f64 #s(approx (* a (cos (* (PI) (/ angle 180)))) (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (pow.f64 #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64))) #s(literal 2 binary64))) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (pow.f64 (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) |
(+.f64 #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* a (cos (* (PI) (/ angle 180)))) (*.f64 (PI.f64) #s(approx (/ angle 180) #s(approx (* b (sin (* (PI) (/ angle 180)))) (PI.f64)))))) (pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) |
(+.f64 #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* a (cos (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) (pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) #s(approx (/ angle 180) #s(approx (* b (sin (* (PI) (/ angle 180)))) (PI.f64)))))) #s(literal 2 binary64))) |
(+.f64 (pow.f64 #s(approx (* a (cos (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64)) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64))) |
(+.f64 #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* a (cos (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) (pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) |
(+.f64 #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (PI.f64)) #s(literal 2 binary64)))) (pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) #s(approx (/ angle 180) #s(approx (* b (sin (* (PI) (/ angle 180)))) (PI.f64)))))) #s(literal 2 binary64))) |
(+.f64 #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (PI.f64)) #s(literal 2 binary64)))) (pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) |
(+.f64 (pow.f64 #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64))) #s(literal 2 binary64)) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64))) |
(+.f64 #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* a (cos (* (PI) (/ angle 180)))) (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))))) (pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) |
(+.f64 #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) |
| Outputs |
|---|
(+.f64 #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* a (cos (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) (pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (pow.f64 (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) |
(+.f64 #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* a (cos (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) (pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) |
1 calls:
| 7.0ms | b |
| Accuracy | Segments | Branch |
|---|---|---|
| 73.7% | 3 | b |
Compiled 1 to 3 computations (-200% saved)
| Inputs |
|---|
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (PI.f64)) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (*.f64 (PI.f64) #s(approx (/ angle 180) #s(approx (* b (sin (* (PI) (/ angle 180)))) (PI.f64))))) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (/.f64 angle #s(literal 180 binary64))) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) #s(approx (/ angle 180) #s(approx (* b (sin (* (PI) (/ angle 180)))) (PI.f64))))) #s(literal 2 binary64))))) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64))))) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))))) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))))) |
(+.f64 #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64))) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (pow.f64 #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) #s(approx (/ angle 180) #s(approx (* b (sin (* (PI) (/ angle 180)))) (PI.f64))))) #s(literal 2 binary64))) #s(literal 2 binary64))) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (pow.f64 #s(approx (* a (cos (* (PI) (/ angle 180)))) (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (pow.f64 #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64))) #s(literal 2 binary64))) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (pow.f64 (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) |
(+.f64 #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* a (cos (* (PI) (/ angle 180)))) (*.f64 (PI.f64) #s(approx (/ angle 180) #s(approx (* b (sin (* (PI) (/ angle 180)))) (PI.f64)))))) (pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) |
(+.f64 #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* a (cos (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) (pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) #s(approx (/ angle 180) #s(approx (* b (sin (* (PI) (/ angle 180)))) (PI.f64)))))) #s(literal 2 binary64))) |
(+.f64 (pow.f64 #s(approx (* a (cos (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64)) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64))) |
| Outputs |
|---|
(+.f64 #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* a (cos (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) (pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) #s(approx (/ angle 180) #s(approx (* b (sin (* (PI) (/ angle 180)))) (PI.f64)))))) #s(literal 2 binary64))) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (pow.f64 (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) |
(+.f64 #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* a (cos (* (PI) (/ angle 180)))) (*.f64 (PI.f64) #s(approx (/ angle 180) #s(approx (* b (sin (* (PI) (/ angle 180)))) (PI.f64)))))) (pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) |
1 calls:
| 6.0ms | b |
| Accuracy | Segments | Branch |
|---|---|---|
| 71.8% | 3 | b |
Compiled 1 to 3 computations (-200% saved)
| Inputs |
|---|
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (PI.f64)) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (*.f64 (PI.f64) #s(approx (/ angle 180) #s(approx (* b (sin (* (PI) (/ angle 180)))) (PI.f64))))) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (/.f64 angle #s(literal 180 binary64))) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) #s(approx (/ angle 180) #s(approx (* b (sin (* (PI) (/ angle 180)))) (PI.f64))))) #s(literal 2 binary64))))) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64))))) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))))) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))))) |
(+.f64 #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64))) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (pow.f64 #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) #s(approx (/ angle 180) #s(approx (* b (sin (* (PI) (/ angle 180)))) (PI.f64))))) #s(literal 2 binary64))) #s(literal 2 binary64))) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (pow.f64 #s(approx (* a (cos (* (PI) (/ angle 180)))) (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (pow.f64 #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64))) #s(literal 2 binary64))) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (pow.f64 (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) |
(+.f64 #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* a (cos (* (PI) (/ angle 180)))) (*.f64 (PI.f64) #s(approx (/ angle 180) #s(approx (* b (sin (* (PI) (/ angle 180)))) (PI.f64)))))) (pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) |
| Outputs |
|---|
(+.f64 #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* a (cos (* (PI) (/ angle 180)))) (*.f64 (PI.f64) #s(approx (/ angle 180) #s(approx (* b (sin (* (PI) (/ angle 180)))) (PI.f64)))))) (pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (pow.f64 (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) |
(+.f64 #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* a (cos (* (PI) (/ angle 180)))) (*.f64 (PI.f64) #s(approx (/ angle 180) #s(approx (* b (sin (* (PI) (/ angle 180)))) (PI.f64)))))) (pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) |
1 calls:
| 5.0ms | b |
| Accuracy | Segments | Branch |
|---|---|---|
| 71.8% | 3 | b |
Compiled 1 to 3 computations (-200% saved)
| Inputs |
|---|
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (PI.f64)) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (*.f64 (PI.f64) #s(approx (/ angle 180) #s(approx (* b (sin (* (PI) (/ angle 180)))) (PI.f64))))) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (/.f64 angle #s(literal 180 binary64))) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) #s(approx (/ angle 180) #s(approx (* b (sin (* (PI) (/ angle 180)))) (PI.f64))))) #s(literal 2 binary64))))) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64))))) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))))) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))))) |
(+.f64 #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64))) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (pow.f64 #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) #s(approx (/ angle 180) #s(approx (* b (sin (* (PI) (/ angle 180)))) (PI.f64))))) #s(literal 2 binary64))) #s(literal 2 binary64))) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (pow.f64 #s(approx (* a (cos (* (PI) (/ angle 180)))) (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (pow.f64 #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64))) #s(literal 2 binary64))) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (pow.f64 (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) |
| Outputs |
|---|
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (pow.f64 #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64))) #s(literal 2 binary64))) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (pow.f64 (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) |
5 calls:
| 6.0ms | (/.f64 angle #s(literal 180 binary64)) |
| 5.0ms | (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))) |
| 5.0ms | angle |
| 5.0ms | b |
| 5.0ms | (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64)) (pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) |
| Accuracy | Segments | Branch |
|---|---|---|
| 62.3% | 2 | angle |
| 62.3% | 2 | (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))) |
| 62.3% | 2 | (/.f64 angle #s(literal 180 binary64)) |
| 59.7% | 1 | (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64)) (pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) |
| 61.9% | 2 | b |
Compiled 31 to 33 computations (-6.5% saved)
| Inputs |
|---|
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (PI.f64)) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (*.f64 (PI.f64) #s(approx (/ angle 180) #s(approx (* b (sin (* (PI) (/ angle 180)))) (PI.f64))))) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (/.f64 angle #s(literal 180 binary64))) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) #s(approx (/ angle 180) #s(approx (* b (sin (* (PI) (/ angle 180)))) (PI.f64))))) #s(literal 2 binary64))))) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64))))) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))))) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))))) |
(+.f64 #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64))) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (pow.f64 #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) #s(approx (/ angle 180) #s(approx (* b (sin (* (PI) (/ angle 180)))) (PI.f64))))) #s(literal 2 binary64))) #s(literal 2 binary64))) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (pow.f64 #s(approx (* a (cos (* (PI) (/ angle 180)))) (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (pow.f64 #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64))) #s(literal 2 binary64))) |
| Outputs |
|---|
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (pow.f64 #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64))) #s(literal 2 binary64))) |
6 calls:
| 12.0ms | (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))) |
| 5.0ms | (/.f64 angle #s(literal 180 binary64)) |
| 4.0ms | b |
| 4.0ms | angle |
| 4.0ms | a |
| Accuracy | Segments | Branch |
|---|---|---|
| 24.3% | 1 | (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64)) (pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) |
| 24.3% | 1 | b |
| 24.3% | 1 | a |
| 24.3% | 1 | angle |
| 24.3% | 1 | (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))) |
| 24.3% | 1 | (/.f64 angle #s(literal 180 binary64)) |
Compiled 32 to 36 computations (-12.5% saved)
| Inputs |
|---|
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (PI.f64)) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (*.f64 (PI.f64) #s(approx (/ angle 180) #s(approx (* b (sin (* (PI) (/ angle 180)))) (PI.f64))))) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (/.f64 angle #s(literal 180 binary64))) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) #s(approx (/ angle 180) #s(approx (* b (sin (* (PI) (/ angle 180)))) (PI.f64))))) #s(literal 2 binary64))))) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64))))) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))))) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))))) |
(+.f64 #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64))) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (pow.f64 #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) #s(approx (/ angle 180) #s(approx (* b (sin (* (PI) (/ angle 180)))) (PI.f64))))) #s(literal 2 binary64))) #s(literal 2 binary64))) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (pow.f64 #s(approx (* a (cos (* (PI) (/ angle 180)))) (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) |
| Outputs |
|---|
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64))))) |
6 calls:
| 7.0ms | (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))) |
| 4.0ms | (/.f64 angle #s(literal 180 binary64)) |
| 4.0ms | angle |
| 4.0ms | a |
| 4.0ms | b |
| Accuracy | Segments | Branch |
|---|---|---|
| 17.9% | 1 | (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64)) (pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) |
| 17.9% | 1 | a |
| 17.9% | 1 | b |
| 17.9% | 1 | angle |
| 17.9% | 1 | (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))) |
| 17.9% | 1 | (/.f64 angle #s(literal 180 binary64)) |
Compiled 32 to 36 computations (-12.5% saved)
| Inputs |
|---|
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (PI.f64)) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (*.f64 (PI.f64) #s(approx (/ angle 180) #s(approx (* b (sin (* (PI) (/ angle 180)))) (PI.f64))))) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (/.f64 angle #s(literal 180 binary64))) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) #s(approx (/ angle 180) #s(approx (* b (sin (* (PI) (/ angle 180)))) (PI.f64))))) #s(literal 2 binary64))))) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) |
| Outputs |
|---|
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) #s(approx (/ angle 180) #s(approx (* b (sin (* (PI) (/ angle 180)))) (PI.f64))))) #s(literal 2 binary64))))) |
6 calls:
| 5.0ms | angle |
| 3.0ms | (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64)) (pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) |
| 3.0ms | (/.f64 angle #s(literal 180 binary64)) |
| 3.0ms | (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))) |
| 3.0ms | a |
| Accuracy | Segments | Branch |
|---|---|---|
| 4.3% | 1 | (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64)) (pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) |
| 4.3% | 1 | a |
| 4.3% | 1 | angle |
| 4.3% | 1 | (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))) |
| 4.3% | 1 | (/.f64 angle #s(literal 180 binary64)) |
| 4.3% | 1 | b |
Compiled 32 to 36 computations (-12.5% saved)
| Inputs |
|---|
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (PI.f64)) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (*.f64 (PI.f64) #s(approx (/ angle 180) #s(approx (* b (sin (* (PI) (/ angle 180)))) (PI.f64))))) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (/.f64 angle #s(literal 180 binary64))) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) |
| Outputs |
|---|
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (*.f64 (PI.f64) #s(approx (/ angle 180) #s(approx (* b (sin (* (PI) (/ angle 180)))) (PI.f64))))) |
6 calls:
| 2.0ms | (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64)) (pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) |
| 2.0ms | (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))) |
| 2.0ms | (/.f64 angle #s(literal 180 binary64)) |
| 2.0ms | angle |
| 2.0ms | b |
| Accuracy | Segments | Branch |
|---|---|---|
| 4.3% | 1 | (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64)) (pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) |
| 4.3% | 1 | a |
| 4.3% | 1 | angle |
| 4.3% | 1 | (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))) |
| 4.3% | 1 | (/.f64 angle #s(literal 180 binary64)) |
| 4.3% | 1 | b |
Compiled 32 to 36 computations (-12.5% saved)
Total -0.0b remaining (-0%)
Threshold costs -0b (-0%)
| Inputs |
|---|
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (PI.f64)) |
| Outputs |
|---|
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (PI.f64)) |
6 calls:
| 3.0ms | (/.f64 angle #s(literal 180 binary64)) |
| 1.0ms | (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64)) (pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) |
| 1.0ms | (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))) |
| 1.0ms | a |
| 1.0ms | b |
| Accuracy | Segments | Branch |
|---|---|---|
| 4.3% | 1 | b |
| 4.3% | 1 | angle |
| 4.3% | 1 | (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))) |
| 4.3% | 1 | (/.f64 angle #s(literal 180 binary64)) |
| 4.3% | 1 | a |
| 4.3% | 1 | (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64)) (pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) |
Compiled 32 to 36 computations (-12.5% saved)
| 2× | binary-search |
| 1× | narrow-enough |
| 1× | narrow-enough |
| Time | Left | Right |
|---|---|---|
| 22.0ms | 8.220856577283062e+106 | 2.6115950657263854e+108 |
| 15.0ms | -5.108363519195522e+144 | -5.973823654312332e+143 |
| 29.0ms | 208× | 0 | valid |
Compiled 985 to 668 computations (32.2% saved)
ival-sinu: 9.0ms (38.7% of total)ival-cosu: 6.0ms (25.8% of total)ival-pow2: 4.0ms (17.2% of total)ival-mult: 3.0ms (12.9% of total)ival-add: 1.0ms (4.3% of total)ival-true: 0.0ms (0% of total)ival-assert: 0.0ms (0% of total)| 2× | binary-search |
| 1× | narrow-enough |
| 1× | narrow-enough |
| Time | Left | Right |
|---|---|---|
| 13.0ms | 8.220856577283062e+106 | 2.6115950657263854e+108 |
| 1.0ms | -5.108363519195522e+144 | -5.973823654312332e+143 |
| 9.0ms | 80× | 0 | valid |
Compiled 908 to 640 computations (29.5% saved)
ival-cosu: 2.0ms (29% of total)ival-sinu: 2.0ms (29% of total)ival-mult: 1.0ms (14.5% of total)ival-pow2: 1.0ms (14.5% of total)ival-true: 0.0ms (0% of total)ival-add: 0.0ms (0% of total)ival-assert: 0.0ms (0% of total)| 2× | binary-search |
| 1× | narrow-enough |
| 1× | narrow-enough |
| Time | Left | Right |
|---|---|---|
| 18.0ms | 1.1593514798472118e+155 | 1.2860807417702964e+157 |
| 21.0ms | -5.369785376989533e+168 | -2.2996035785648221e+167 |
| 29.0ms | 224× | 0 | valid |
Compiled 1 130 to 758 computations (32.9% saved)
ival-pow2: 8.0ms (33.7% of total)ival-cosu: 6.0ms (25.3% of total)ival-sinu: 5.0ms (21.1% of total)ival-mult: 3.0ms (12.6% of total)ival-add: 1.0ms (4.2% of total)ival-true: 0.0ms (0% of total)ival-assert: 0.0ms (0% of total)| 2× | binary-search |
| 1× | narrow-enough |
| 1× | narrow-enough |
| Time | Left | Right |
|---|---|---|
| 1.0ms | 1.1593514798472118e+155 | 1.2860807417702964e+157 |
| 26.0ms | -8.868484487292293e+160 | -1.1680601685319353e+152 |
| 19.0ms | 144× | 0 | valid |
Compiled 1 288 to 864 computations (32.9% saved)
ival-sinu: 7.0ms (44.8% of total)ival-cosu: 4.0ms (25.6% of total)ival-pow2: 3.0ms (19.2% of total)ival-mult: 2.0ms (12.8% of total)ival-add: 1.0ms (6.4% of total)ival-true: 0.0ms (0% of total)ival-assert: 0.0ms (0% of total)| 1× | binary-search |
| 1× | narrow-enough |
| Time | Left | Right |
|---|---|---|
| 17.0ms | -2.049082163404882e+131 | -1.3463383601920967e+130 |
| 12.0ms | 96× | 0 | valid |
Compiled 484 to 300 computations (38% saved)
ival-cosu: 3.0ms (32.1% of total)ival-sinu: 3.0ms (32.1% of total)ival-pow2: 2.0ms (21.4% of total)ival-mult: 1.0ms (10.7% of total)ival-true: 0.0ms (0% of total)ival-add: 0.0ms (0% of total)ival-assert: 0.0ms (0% of total)| 1× | egg-herbie |
| Inputs |
|---|
(+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64)) (pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) |
(if (<=.f64 b #s(literal -1600000000000000037992691773841768571853852684525891499957543981872379887267232916109084205145733270606953550614144185721269461071824130517499904 binary64)) (+.f64 #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* a (cos (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) (pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) (if (<=.f64 b #s(literal 1000000000000000033998991713002824594943974719712898047713430714837875271723200833292741616380733445921308672 binary64)) #s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (pow.f64 (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) (+.f64 #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64)))) (pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))))) |
(if (<=.f64 b #s(literal -1600000000000000037992691773841768571853852684525891499957543981872379887267232916109084205145733270606953550614144185721269461071824130517499904 binary64)) (+.f64 #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* a (cos (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) (pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) (if (<=.f64 b #s(literal 2600000000000000244841741436295875372270963141093777692807692492122379755335908676977612024414165994280321024 binary64)) #s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (pow.f64 (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) (+.f64 #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* a (cos (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) (pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))))) |
(if (<=.f64 b #s(literal -229999999999999987930368795571180344558210658733471435408665713332113346644868552326197704045532140537249636190798650804225274349549975111302841740292834913219095035904 binary64)) (+.f64 #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* a (cos (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) (pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) #s(approx (/ angle 180) #s(approx (* b (sin (* (PI) (/ angle 180)))) (PI.f64)))))) #s(literal 2 binary64))) (if (<=.f64 b #s(literal 124999999999999997919897527898965214320046534377183817045875951807558552187626569316434734618242342718904673543045388133441813418520571716683188796290760704 binary64)) #s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (pow.f64 (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) (+.f64 #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* a (cos (* (PI) (/ angle 180)))) (*.f64 (PI.f64) #s(approx (/ angle 180) #s(approx (* b (sin (* (PI) (/ angle 180)))) (PI.f64)))))) (pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))))) |
(if (<=.f64 b #s(literal -19500000000000001390331709227966727879384722017778221341565296186125884491148445779449368489233072375938370257494605722061697068866577721679028936205402112 binary64)) (+.f64 #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* a (cos (* (PI) (/ angle 180)))) (*.f64 (PI.f64) #s(approx (/ angle 180) #s(approx (* b (sin (* (PI) (/ angle 180)))) (PI.f64)))))) (pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) (if (<=.f64 b #s(literal 124999999999999997919897527898965214320046534377183817045875951807558552187626569316434734618242342718904673543045388133441813418520571716683188796290760704 binary64)) #s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (pow.f64 (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) (+.f64 #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* a (cos (* (PI) (/ angle 180)))) (*.f64 (PI.f64) #s(approx (/ angle 180) #s(approx (* b (sin (* (PI) (/ angle 180)))) (PI.f64)))))) (pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))))) |
(if (<=.f64 (/.f64 angle #s(literal 180 binary64)) #s(literal -199999999999999982405111001914463627825705729939051460364922737117355163153802565541919878198424069508213948681199740222346696327168 binary64)) #s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (pow.f64 #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64))) #s(literal 2 binary64))) #s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (pow.f64 (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64)))) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (pow.f64 #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64))) #s(literal 2 binary64))) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64))))) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) #s(approx (/ angle 180) #s(approx (* b (sin (* (PI) (/ angle 180)))) (PI.f64))))) #s(literal 2 binary64))))) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (*.f64 (PI.f64) #s(approx (/ angle 180) #s(approx (* b (sin (* (PI) (/ angle 180)))) (PI.f64))))) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (PI.f64)) |
| Outputs |
|---|
(+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64)) (pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) |
(if (<=.f64 b #s(literal -1600000000000000037992691773841768571853852684525891499957543981872379887267232916109084205145733270606953550614144185721269461071824130517499904 binary64)) (+.f64 #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* a (cos (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) (pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) (if (<=.f64 b #s(literal 1000000000000000033998991713002824594943974719712898047713430714837875271723200833292741616380733445921308672 binary64)) #s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (pow.f64 (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) (+.f64 #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64)))) (pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))))) |
(if (<=.f64 b #s(literal -1600000000000000037992691773841768571853852684525891499957543981872379887267232916109084205145733270606953550614144185721269461071824130517499904 binary64)) (+.f64 #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* a (cos (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) (pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) (if (<=.f64 b #s(literal 2600000000000000244841741436295875372270963141093777692807692492122379755335908676977612024414165994280321024 binary64)) #s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (pow.f64 (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) (+.f64 #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* a (cos (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) (pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))))) |
(if (<=.f64 b #s(literal -229999999999999987930368795571180344558210658733471435408665713332113346644868552326197704045532140537249636190798650804225274349549975111302841740292834913219095035904 binary64)) (+.f64 #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* a (cos (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) (pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) #s(approx (/ angle 180) #s(approx (* b (sin (* (PI) (/ angle 180)))) (PI.f64)))))) #s(literal 2 binary64))) (if (<=.f64 b #s(literal 124999999999999997919897527898965214320046534377183817045875951807558552187626569316434734618242342718904673543045388133441813418520571716683188796290760704 binary64)) #s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (pow.f64 (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) (+.f64 #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* a (cos (* (PI) (/ angle 180)))) (*.f64 (PI.f64) #s(approx (/ angle 180) #s(approx (* b (sin (* (PI) (/ angle 180)))) (PI.f64)))))) (pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))))) |
(if (<=.f64 b #s(literal -19500000000000001390331709227966727879384722017778221341565296186125884491148445779449368489233072375938370257494605722061697068866577721679028936205402112 binary64)) (+.f64 #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* a (cos (* (PI) (/ angle 180)))) (*.f64 (PI.f64) #s(approx (/ angle 180) #s(approx (* b (sin (* (PI) (/ angle 180)))) (PI.f64)))))) (pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) (if (<=.f64 b #s(literal 124999999999999997919897527898965214320046534377183817045875951807558552187626569316434734618242342718904673543045388133441813418520571716683188796290760704 binary64)) #s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (pow.f64 (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))) (+.f64 #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* a (cos (* (PI) (/ angle 180)))) (*.f64 (PI.f64) #s(approx (/ angle 180) #s(approx (* b (sin (* (PI) (/ angle 180)))) (PI.f64)))))) (pow.f64 (*.f64 b (sin.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64))))) |
(if (<=.f64 (/.f64 angle #s(literal 180 binary64)) #s(literal -199999999999999982405111001914463627825705729939051460364922737117355163153802565541919878198424069508213948681199740222346696327168 binary64)) #s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (pow.f64 #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64))) #s(literal 2 binary64))) #s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (pow.f64 (*.f64 a (cos.f64 (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64))))) #s(literal 2 binary64)))) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (pow.f64 #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64))) #s(literal 2 binary64))) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) (/.f64 angle #s(literal 180 binary64)))) #s(literal 2 binary64))))) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) #s(approx (pow (* a (cos (* (PI) (/ angle 180)))) 2) #s(approx (* a (cos (* (PI) (/ angle 180)))) (pow.f64 #s(approx (* b (sin (* (PI) (/ angle 180)))) (*.f64 (PI.f64) #s(approx (/ angle 180) #s(approx (* b (sin (* (PI) (/ angle 180)))) (PI.f64))))) #s(literal 2 binary64))))) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (*.f64 (PI.f64) #s(approx (/ angle 180) #s(approx (* b (sin (* (PI) (/ angle 180)))) (PI.f64))))) |
#s(approx (+ (pow (* a (cos (* (PI) (/ angle 180)))) 2) (pow (* b (sin (* (PI) (/ angle 180)))) 2)) (PI.f64)) |
| 1× | fuel |
Compiled 848 to 78 computations (90.8% saved)
Compiled 1 738 to 186 computations (89.3% saved)
Loading profile data...