
Time bar (total: 9.5s)
| 1× | search |
| Probability | Valid | Unknown | Precondition | Infinite | Domain | Can't | Iter |
|---|---|---|---|---|---|---|---|
| 0% | 0% | 49.6% | 50.4% | 0% | 0% | 0% | 0 |
| 0% | 0% | 49.6% | 50.4% | 0% | 0% | 0% | 1 |
| 0% | 0% | 49.6% | 50.4% | 0% | 0% | 0% | 2 |
| 50% | 24.8% | 24.8% | 50.4% | 0% | 0% | 0% | 3 |
| 75% | 37.2% | 12.4% | 50.4% | 0% | 0% | 0% | 4 |
| 87.5% | 43.4% | 6.2% | 50.4% | 0% | 0% | 0% | 5 |
| 93.8% | 46.5% | 3.1% | 50.4% | 0% | 0% | 0% | 6 |
| 96.9% | 48.1% | 1.6% | 50.4% | 0% | 0% | 0% | 7 |
| 98.4% | 48.8% | 0.8% | 50.4% | 0% | 0% | 0% | 8 |
| 99.2% | 49.2% | 0.4% | 50.4% | 0% | 0% | 0% | 9 |
| 99.6% | 49.4% | 0.2% | 50.4% | 0% | 0% | 0% | 10 |
| 99.8% | 49.5% | 0.1% | 50.4% | 0% | 0% | 0% | 11 |
| 99.9% | 49.6% | 0% | 50.4% | 0% | 0% | 0% | 12 |
Compiled 12 to 10 computations (16.7% saved)
| 2.2s | 5 708× | 2 | valid |
| 437.0ms | 2 475× | 1 | valid |
| 5.0ms | 73× | 0 | valid |
ival-cos: 1.4s (57.8% of total)adjust: 289.0ms (12.3% of total)const: 278.0ms (11.8% of total)ival-sub: 275.0ms (11.7% of total)ival-<=: 129.0ms (5.5% of total)ival-and: 11.0ms (0.5% of total)exact: 5.0ms (0.2% of total)ival-assert: 4.0ms (0.2% of total)| Ground Truth | Overpredictions | Example | Underpredictions | Example | Subexpression |
|---|---|---|---|---|---|
| 134 | 1 | (2.682744773283621e-162) | 0 | - | (-.f64 #s(literal 1 binary64) (cos.f64 x)) |
| 0 | 0 | - | 0 | - | #s(literal 1 binary64) |
| 0 | 0 | - | 0 | - | (cos.f64 x) |
| 0 | 0 | - | 0 | - | x |
| Operator | Subexpression | Explanation | Count | |
|---|---|---|---|---|
-.f64 | (-.f64 #s(literal 1 binary64) (cos.f64 x)) | cancellation | 135 | 0 |
| Predicted + | Predicted - | |
|---|---|---|
| + | 134 | 0 |
| - | 1 | 121 |
| Predicted + | Predicted Maybe | Predicted - | |
|---|---|---|---|
| + | 134 | 0 | 0 |
| - | 1 | 0 | 121 |
| number | freq |
|---|---|
| 0 | 121 |
| 1 | 135 |
| Predicted + | Predicted Maybe | Predicted - | |
|---|---|---|---|
| + | 1 | 0 | 0 |
| - | 0 | 0 | 0 |
| 83.0ms | 348× | 2 | valid |
| 23.0ms | 162× | 1 | valid |
| 0.0ms | 2× | 0 | valid |
Compiled 24 to 16 computations (33.3% saved)
ival-cos: 68.0ms (79.5% of total)adjust: 9.0ms (10.5% of total)ival-sub: 7.0ms (8.2% of total)ival-assert: 0.0ms (0% of total)ival-true: 0.0ms (0% of total)exact: 0.0ms (0% of total)| 1× | egg-herbie |
| 24× | lower-+.f64 |
| 24× | lower-+.f32 |
| 20× | sub-neg |
| 18× | lower--.f32 |
| 16× | sub-neg |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 6 | 9 |
| 1 | 16 | 8 |
| 2 | 35 | 8 |
| 3 | 55 | 8 |
| 4 | 87 | 8 |
| 5 | 101 | 8 |
| 6 | 107 | 8 |
| 0 | 4 | 4 |
| 0 | 6 | 4 |
| 1 | 10 | 4 |
| 2 | 14 | 4 |
| 3 | 19 | 4 |
| 4 | 25 | 4 |
| 5 | 33 | 4 |
| 6 | 43 | 4 |
| 7 | 54 | 4 |
| 8 | 57 | 4 |
| 0 | 57 | 4 |
| 1× | iter limit |
| 1× | saturated |
| 1× | iter limit |
| 1× | saturated |
| Inputs |
|---|
(-.f64 #s(literal 1 binary64) (cos.f64 x)) |
| Outputs |
|---|
(-.f64 #s(literal 1 binary64) (cos.f64 x)) |
(abs x)
Compiled 4 to 4 computations (0% saved)
Compiled 0 to 1 computations (-∞% saved)
| Status | Accuracy | Program |
|---|---|---|
| ▶ | 51.5% | (-.f64 #s(literal 1 binary64) (cos.f64 x)) |
Compiled 4 to 4 computations (0% saved)
| 1× | egg-herbie |
Found 2 expressions of interest:
| New | Metric | Score | Program |
|---|---|---|---|
| cost-diff | 0 | (cos.f64 x) | |
| cost-diff | 0 | (-.f64 #s(literal 1 binary64) (cos.f64 x)) |
| 24× | lower-+.f64 |
| 24× | lower-+.f32 |
| 18× | lower--.f32 |
| 16× | sub-neg |
| 16× | lower--.f64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 4 | 8 |
| 0 | 6 | 8 |
| 1 | 10 | 8 |
| 2 | 14 | 8 |
| 3 | 19 | 8 |
| 4 | 25 | 8 |
| 5 | 33 | 8 |
| 6 | 43 | 8 |
| 7 | 54 | 8 |
| 8 | 57 | 8 |
| 0 | 57 | 8 |
| 1× | iter limit |
| 1× | saturated |
| 1× | iter limit |
| Inputs |
|---|
(-.f64 #s(literal 1 binary64) (cos.f64 x)) |
#s(literal 1 binary64) |
(cos.f64 x) |
x |
| Outputs |
|---|
(-.f64 #s(literal 1 binary64) (cos.f64 x)) |
#s(literal 1 binary64) |
(cos.f64 x) |
x |
Found 2 expressions of interest:
| New | Metric | Score | Program |
|---|---|---|---|
| accuracy | 0 | (cos.f64 x) | |
| accuracy | 31.042093126159422 | (-.f64 #s(literal 1 binary64) (cos.f64 x)) |
| 65.0ms | 174× | 2 | valid |
| 18.0ms | 81× | 1 | valid |
| 0.0ms | 1× | 0 | valid |
Compiled 10 to 6 computations (40% saved)
ival-cos: 53.0ms (83.8% of total)adjust: 6.0ms (9.5% of total)ival-sub: 4.0ms (6.3% of total)ival-assert: 0.0ms (0% of total)ival-true: 0.0ms (0% of total)exact: 0.0ms (0% of total)| Inputs |
|---|
#s(alt (-.f64 #s(literal 1 binary64) (cos.f64 x)) (patch (-.f64 #s(literal 1 binary64) (cos.f64 x)) #<representation binary64>) () ()) |
#s(alt (cos.f64 x) (patch (cos.f64 x) #<representation binary64>) () ()) |
| Outputs |
|---|
#s(alt (* 1/2 (pow x 2)) (taylor 0 x) (#s(alt (-.f64 #s(literal 1 binary64) (cos.f64 x)) (patch (-.f64 #s(literal 1 binary64) (cos.f64 x)) #<representation binary64>) () ())) ()) |
#s(alt (* (pow x 2) (+ 1/2 (* -1/24 (pow x 2)))) (taylor 0 x) (#s(alt (-.f64 #s(literal 1 binary64) (cos.f64 x)) (patch (-.f64 #s(literal 1 binary64) (cos.f64 x)) #<representation binary64>) () ())) ()) |
#s(alt (* (pow x 2) (+ 1/2 (* (pow x 2) (- (* 1/720 (pow x 2)) 1/24)))) (taylor 0 x) (#s(alt (-.f64 #s(literal 1 binary64) (cos.f64 x)) (patch (-.f64 #s(literal 1 binary64) (cos.f64 x)) #<representation binary64>) () ())) ()) |
#s(alt (* (pow x 2) (+ 1/2 (* (pow x 2) (- (* (pow x 2) (+ 1/720 (* -1/40320 (pow x 2)))) 1/24)))) (taylor 0 x) (#s(alt (-.f64 #s(literal 1 binary64) (cos.f64 x)) (patch (-.f64 #s(literal 1 binary64) (cos.f64 x)) #<representation binary64>) () ())) ()) |
#s(alt 1 (taylor 0 x) (#s(alt (cos.f64 x) (patch (cos.f64 x) #<representation binary64>) () ())) ()) |
#s(alt (+ 1 (* -1/2 (pow x 2))) (taylor 0 x) (#s(alt (cos.f64 x) (patch (cos.f64 x) #<representation binary64>) () ())) ()) |
#s(alt (+ 1 (* (pow x 2) (- (* 1/24 (pow x 2)) 1/2))) (taylor 0 x) (#s(alt (cos.f64 x) (patch (cos.f64 x) #<representation binary64>) () ())) ()) |
#s(alt (+ 1 (* (pow x 2) (- (* (pow x 2) (+ 1/24 (* -1/720 (pow x 2)))) 1/2))) (taylor 0 x) (#s(alt (cos.f64 x) (patch (cos.f64 x) #<representation binary64>) () ())) ()) |
#s(alt (- 1 (cos x)) (taylor inf x) (#s(alt (-.f64 #s(literal 1 binary64) (cos.f64 x)) (patch (-.f64 #s(literal 1 binary64) (cos.f64 x)) #<representation binary64>) () ())) ()) |
#s(alt (- 1 (cos x)) (taylor inf x) (#s(alt (-.f64 #s(literal 1 binary64) (cos.f64 x)) (patch (-.f64 #s(literal 1 binary64) (cos.f64 x)) #<representation binary64>) () ())) ()) |
#s(alt (- 1 (cos x)) (taylor inf x) (#s(alt (-.f64 #s(literal 1 binary64) (cos.f64 x)) (patch (-.f64 #s(literal 1 binary64) (cos.f64 x)) #<representation binary64>) () ())) ()) |
#s(alt (- 1 (cos x)) (taylor inf x) (#s(alt (-.f64 #s(literal 1 binary64) (cos.f64 x)) (patch (-.f64 #s(literal 1 binary64) (cos.f64 x)) #<representation binary64>) () ())) ()) |
#s(alt (cos x) (taylor inf x) (#s(alt (cos.f64 x) (patch (cos.f64 x) #<representation binary64>) () ())) ()) |
#s(alt (cos x) (taylor inf x) (#s(alt (cos.f64 x) (patch (cos.f64 x) #<representation binary64>) () ())) ()) |
#s(alt (cos x) (taylor inf x) (#s(alt (cos.f64 x) (patch (cos.f64 x) #<representation binary64>) () ())) ()) |
#s(alt (cos x) (taylor inf x) (#s(alt (cos.f64 x) (patch (cos.f64 x) #<representation binary64>) () ())) ()) |
#s(alt (- 1 (cos x)) (taylor -inf x) (#s(alt (-.f64 #s(literal 1 binary64) (cos.f64 x)) (patch (-.f64 #s(literal 1 binary64) (cos.f64 x)) #<representation binary64>) () ())) ()) |
#s(alt (- 1 (cos x)) (taylor -inf x) (#s(alt (-.f64 #s(literal 1 binary64) (cos.f64 x)) (patch (-.f64 #s(literal 1 binary64) (cos.f64 x)) #<representation binary64>) () ())) ()) |
#s(alt (- 1 (cos x)) (taylor -inf x) (#s(alt (-.f64 #s(literal 1 binary64) (cos.f64 x)) (patch (-.f64 #s(literal 1 binary64) (cos.f64 x)) #<representation binary64>) () ())) ()) |
#s(alt (- 1 (cos x)) (taylor -inf x) (#s(alt (-.f64 #s(literal 1 binary64) (cos.f64 x)) (patch (-.f64 #s(literal 1 binary64) (cos.f64 x)) #<representation binary64>) () ())) ()) |
#s(alt (cos x) (taylor -inf x) (#s(alt (cos.f64 x) (patch (cos.f64 x) #<representation binary64>) () ())) ()) |
#s(alt (cos x) (taylor -inf x) (#s(alt (cos.f64 x) (patch (cos.f64 x) #<representation binary64>) () ())) ()) |
#s(alt (cos x) (taylor -inf x) (#s(alt (cos.f64 x) (patch (cos.f64 x) #<representation binary64>) () ())) ()) |
#s(alt (cos x) (taylor -inf x) (#s(alt (cos.f64 x) (patch (cos.f64 x) #<representation binary64>) () ())) ()) |
3 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 0.0ms | x | @ | 0 | ((- 1 (cos x)) (cos x)) |
| 0.0ms | x | @ | inf | ((- 1 (cos x)) (cos x)) |
| 0.0ms | x | @ | -inf | ((- 1 (cos x)) (cos x)) |
| 1× | egg-herbie |
| 32 720× | lower-fma.f64 |
| 32 720× | lower-fma.f32 |
| 3 926× | lower-*.f64 |
| 3 926× | lower-*.f32 |
| 3 120× | lower-+.f64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 41 | 144 |
| 1 | 101 | 144 |
| 2 | 246 | 144 |
| 3 | 588 | 144 |
| 4 | 1237 | 144 |
| 5 | 1916 | 144 |
| 6 | 2187 | 144 |
| 7 | 2836 | 144 |
| 8 | 4071 | 144 |
| 9 | 5644 | 144 |
| 10 | 6543 | 144 |
| 11 | 6823 | 144 |
| 12 | 6862 | 144 |
| 13 | 6862 | 144 |
| 14 | 7274 | 144 |
| 15 | 7556 | 144 |
| 16 | 7597 | 144 |
| 17 | 7599 | 144 |
| 18 | 7599 | 144 |
| 19 | 7599 | 144 |
| 20 | 7599 | 144 |
| 21 | 7609 | 144 |
| 22 | 7609 | 144 |
| 23 | 7609 | 144 |
| 0 | 8514 | 132 |
| 1× | iter limit |
| 1× | node limit |
| Inputs |
|---|
(* 1/2 (pow x 2)) |
(* (pow x 2) (+ 1/2 (* -1/24 (pow x 2)))) |
(* (pow x 2) (+ 1/2 (* (pow x 2) (- (* 1/720 (pow x 2)) 1/24)))) |
(* (pow x 2) (+ 1/2 (* (pow x 2) (- (* (pow x 2) (+ 1/720 (* -1/40320 (pow x 2)))) 1/24)))) |
1 |
(+ 1 (* -1/2 (pow x 2))) |
(+ 1 (* (pow x 2) (- (* 1/24 (pow x 2)) 1/2))) |
(+ 1 (* (pow x 2) (- (* (pow x 2) (+ 1/24 (* -1/720 (pow x 2)))) 1/2))) |
(- 1 (cos x)) |
(- 1 (cos x)) |
(- 1 (cos x)) |
(- 1 (cos x)) |
(cos x) |
(cos x) |
(cos x) |
(cos x) |
(- 1 (cos x)) |
(- 1 (cos x)) |
(- 1 (cos x)) |
(- 1 (cos x)) |
(cos x) |
(cos x) |
(cos x) |
(cos x) |
| Outputs |
|---|
(* 1/2 (pow x 2)) |
(*.f64 (*.f64 x x) #s(literal 1/2 binary64)) |
(* (pow x 2) (+ 1/2 (* -1/24 (pow x 2)))) |
(*.f64 (*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) x) |
(* (pow x 2) (+ 1/2 (* (pow x 2) (- (* 1/720 (pow x 2)) 1/24)))) |
(*.f64 (*.f64 (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 x x) #s(literal -1/24 binary64)) (*.f64 x x) #s(literal 1/2 binary64)) x) x) |
(* (pow x 2) (+ 1/2 (* (pow x 2) (- (* (pow x 2) (+ 1/720 (* -1/40320 (pow x 2)))) 1/24)))) |
(*.f64 (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal -1/40320 binary64) (*.f64 x x) #s(literal 1/720 binary64)) (*.f64 x x) #s(literal -1/24 binary64)) (*.f64 x x) #s(literal 1/2 binary64)) x) x) |
1 |
#s(literal 1 binary64) |
(+ 1 (* -1/2 (pow x 2))) |
(fma.f64 #s(literal -1/2 binary64) (*.f64 x x) #s(literal 1 binary64)) |
(+ 1 (* (pow x 2) (- (* 1/24 (pow x 2)) 1/2))) |
(fma.f64 (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64)) (*.f64 x x) #s(literal 1 binary64)) |
(+ 1 (* (pow x 2) (- (* (pow x 2) (+ 1/24 (* -1/720 (pow x 2)))) 1/2))) |
(fma.f64 (pow.f64 x #s(literal 6 binary64)) #s(literal -1/720 binary64) (fma.f64 (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))) |
(- 1 (cos x)) |
(-.f64 #s(literal 1 binary64) (cos.f64 x)) |
(- 1 (cos x)) |
(-.f64 #s(literal 1 binary64) (cos.f64 x)) |
(- 1 (cos x)) |
(-.f64 #s(literal 1 binary64) (cos.f64 x)) |
(- 1 (cos x)) |
(-.f64 #s(literal 1 binary64) (cos.f64 x)) |
(cos x) |
(cos.f64 x) |
(cos x) |
(cos.f64 x) |
(cos x) |
(cos.f64 x) |
(cos x) |
(cos.f64 x) |
(- 1 (cos x)) |
(-.f64 #s(literal 1 binary64) (cos.f64 x)) |
(- 1 (cos x)) |
(-.f64 #s(literal 1 binary64) (cos.f64 x)) |
(- 1 (cos x)) |
(-.f64 #s(literal 1 binary64) (cos.f64 x)) |
(- 1 (cos x)) |
(-.f64 #s(literal 1 binary64) (cos.f64 x)) |
(cos x) |
(cos.f64 x) |
(cos x) |
(cos.f64 x) |
(cos x) |
(cos.f64 x) |
(cos x) |
(cos.f64 x) |
| 4 830× | lower-*.f64 |
| 4 830× | lower-*.f32 |
| 4 620× | lower-/.f64 |
| 4 620× | lower-/.f32 |
| 3 866× | lower-fma.f64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 4 | 6 |
| 0 | 6 | 6 |
| 1 | 23 | 6 |
| 2 | 142 | 6 |
| 3 | 1153 | 6 |
| 0 | 9240 | 6 |
| 1× | iter limit |
| 1× | node limit |
| 1× | iter limit |
| Inputs |
|---|
(-.f64 #s(literal 1 binary64) (cos.f64 x)) |
(cos.f64 x) |
| Outputs |
|---|
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
Compiled 9 533 to 916 computations (90.4% saved)
4 alts after pruning (4 fresh and 0 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 334 | 4 | 338 |
| Fresh | 0 | 0 | 0 |
| Picked | 1 | 0 | 1 |
| Done | 0 | 0 | 0 |
| Total | 335 | 4 | 339 |
| Status | Accuracy | Program |
|---|---|---|
| ▶ | 51.2% | (-.f64 #s(literal 1 binary64) #s(approx (cos x) #s(literal 1 binary64))) |
| ▶ | 100.0% | (*.f64 (sin.f64 x) (tan.f64 (/.f64 x #s(literal 2 binary64)))) |
| ▶ | 100.0% | #s(approx (- 1 (cos x)) (*.f64 (*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) x)) |
| ▶ | 99.9% | #s(approx (- 1 (cos x)) (*.f64 (*.f64 x x) #s(literal 1/2 binary64))) |
Compiled 28 to 23 computations (17.9% saved)
| 1× | egg-herbie |
Found 13 expressions of interest:
| New | Metric | Score | Program |
|---|---|---|---|
| cost-diff | 0 | #s(approx (cos x) #s(literal 1 binary64)) | |
| cost-diff | 0 | (-.f64 #s(literal 1 binary64) #s(approx (cos x) #s(literal 1 binary64))) | |
| cost-diff | 0 | (/.f64 x #s(literal 2 binary64)) | |
| cost-diff | 0 | (tan.f64 (/.f64 x #s(literal 2 binary64))) | |
| cost-diff | 0 | (sin.f64 x) | |
| cost-diff | 0 | (*.f64 (sin.f64 x) (tan.f64 (/.f64 x #s(literal 2 binary64)))) | |
| cost-diff | 0 | (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) | |
| cost-diff | 0 | (*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) | |
| cost-diff | 0 | (*.f64 (*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) x) | |
| cost-diff | 0 | #s(approx (- 1 (cos x)) (*.f64 (*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) x)) | |
| cost-diff | 0 | (*.f64 x x) | |
| cost-diff | 0 | (*.f64 (*.f64 x x) #s(literal 1/2 binary64)) | |
| cost-diff | 0 | #s(approx (- 1 (cos x)) (*.f64 (*.f64 x x) #s(literal 1/2 binary64))) |
| 96× | lower-*.f32 |
| 86× | lower-*.f64 |
| 72× | lower-fma.f32 |
| 70× | lower-fma.f64 |
| 60× | lower-+.f64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 20 | 94 |
| 0 | 31 | 94 |
| 1 | 48 | 94 |
| 2 | 70 | 94 |
| 3 | 103 | 94 |
| 4 | 126 | 94 |
| 5 | 143 | 94 |
| 6 | 159 | 94 |
| 7 | 176 | 94 |
| 8 | 180 | 94 |
| 0 | 180 | 94 |
| 1× | iter limit |
| 1× | saturated |
| 1× | iter limit |
| Inputs |
|---|
#s(approx (- 1 (cos x)) (*.f64 (*.f64 x x) #s(literal 1/2 binary64))) |
(*.f64 (*.f64 x x) #s(literal 1/2 binary64)) |
(*.f64 x x) |
x |
#s(literal 1/2 binary64) |
#s(approx (- 1 (cos x)) (*.f64 (*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) x)) |
(*.f64 (*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) x) |
(*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) |
(fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) |
#s(literal -1/24 binary64) |
(*.f64 x x) |
x |
#s(literal 1/2 binary64) |
(*.f64 (sin.f64 x) (tan.f64 (/.f64 x #s(literal 2 binary64)))) |
(sin.f64 x) |
x |
(tan.f64 (/.f64 x #s(literal 2 binary64))) |
(/.f64 x #s(literal 2 binary64)) |
#s(literal 2 binary64) |
(-.f64 #s(literal 1 binary64) #s(approx (cos x) #s(literal 1 binary64))) |
#s(literal 1 binary64) |
#s(approx (cos x) #s(literal 1 binary64)) |
| Outputs |
|---|
#s(approx (- 1 (cos x)) (*.f64 (*.f64 x x) #s(literal 1/2 binary64))) |
#s(approx (- 1 (cos x)) (*.f64 #s(literal 1/2 binary64) (*.f64 x x))) |
(*.f64 (*.f64 x x) #s(literal 1/2 binary64)) |
(*.f64 #s(literal 1/2 binary64) (*.f64 x x)) |
(*.f64 x x) |
x |
#s(literal 1/2 binary64) |
#s(approx (- 1 (cos x)) (*.f64 (*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) x)) |
(*.f64 (*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) x) |
(*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) |
(fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) |
#s(literal -1/24 binary64) |
(*.f64 x x) |
x |
#s(literal 1/2 binary64) |
(*.f64 (sin.f64 x) (tan.f64 (/.f64 x #s(literal 2 binary64)))) |
(*.f64 (tan.f64 (/.f64 x #s(literal 2 binary64))) (sin.f64 x)) |
(sin.f64 x) |
x |
(tan.f64 (/.f64 x #s(literal 2 binary64))) |
(/.f64 x #s(literal 2 binary64)) |
#s(literal 2 binary64) |
(-.f64 #s(literal 1 binary64) #s(approx (cos x) #s(literal 1 binary64))) |
#s(literal 1 binary64) |
#s(approx (cos x) #s(literal 1 binary64)) |
Found 13 expressions of interest:
| New | Metric | Score | Program |
|---|---|---|---|
| accuracy | 0.10356277706585662 | #s(approx (cos x) #s(literal 1 binary64)) | |
| accuracy | 31.042093126159422 | (-.f64 #s(literal 1 binary64) #s(approx (cos x) #s(literal 1 binary64))) | |
| accuracy | 0 | (/.f64 x #s(literal 2 binary64)) | |
| accuracy | 0 | (*.f64 (sin.f64 x) (tan.f64 (/.f64 x #s(literal 2 binary64)))) | |
| accuracy | 0 | (tan.f64 (/.f64 x #s(literal 2 binary64))) | |
| accuracy | 0 | (sin.f64 x) | |
| accuracy | 0 | (*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) | |
| accuracy | 0 | (*.f64 x x) | |
| accuracy | 0 | #s(approx (- 1 (cos x)) (*.f64 (*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) x)) | |
| accuracy | 0.00390625 | (*.f64 (*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) x) | |
| accuracy | 0 | (*.f64 x x) | |
| accuracy | 0.00390625 | (*.f64 (*.f64 x x) #s(literal 1/2 binary64)) | |
| accuracy | 0.07770303314335703 | #s(approx (- 1 (cos x)) (*.f64 (*.f64 x x) #s(literal 1/2 binary64))) |
| 73.0ms | 174× | 2 | valid |
| 27.0ms | 81× | 1 | valid |
| 0.0ms | 1× | 0 | valid |
Compiled 78 to 19 computations (75.6% saved)
ival-cos: 29.0ms (37.9% of total)ival-mult: 17.0ms (22.2% of total)adjust: 13.0ms (17% of total)ival-div: 5.0ms (6.5% of total)ival-sub: 4.0ms (5.2% of total)const: 4.0ms (5.2% of total)ival-sin: 2.0ms (2.6% of total)ival-tan: 2.0ms (2.6% of total)ival-add: 1.0ms (1.3% of total)ival-assert: 0.0ms (0% of total)ival-true: 0.0ms (0% of total)exact: 0.0ms (0% of total)| Inputs |
|---|
#s(alt #s(approx (- 1 (cos x)) (*.f64 (*.f64 x x) #s(literal 1/2 binary64))) (patch #s(approx (- 1 (cos x)) (*.f64 (*.f64 x x) #s(literal 1/2 binary64))) #<representation binary64>) () ()) |
#s(alt (*.f64 (*.f64 x x) #s(literal 1/2 binary64)) (patch (*.f64 (*.f64 x x) #s(literal 1/2 binary64)) #<representation binary64>) () ()) |
#s(alt (*.f64 x x) (patch (*.f64 x x) #<representation binary64>) () ()) |
#s(alt #s(approx (- 1 (cos x)) (*.f64 (*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) x)) (patch #s(approx (- 1 (cos x)) (*.f64 (*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) x)) #<representation binary64>) () ()) |
#s(alt (*.f64 (*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) x) (patch (*.f64 (*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) x) #<representation binary64>) () ()) |
#s(alt (*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) (patch (*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) #<representation binary64>) () ()) |
#s(alt (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) (patch (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) #<representation binary64>) () ()) |
#s(alt (*.f64 (sin.f64 x) (tan.f64 (/.f64 x #s(literal 2 binary64)))) (patch (*.f64 (sin.f64 x) (tan.f64 (/.f64 x #s(literal 2 binary64)))) #<representation binary64>) () ()) |
#s(alt (sin.f64 x) (patch (sin.f64 x) #<representation binary64>) () ()) |
#s(alt (tan.f64 (/.f64 x #s(literal 2 binary64))) (patch (tan.f64 (/.f64 x #s(literal 2 binary64))) #<representation binary64>) () ()) |
#s(alt (/.f64 x #s(literal 2 binary64)) (patch (/.f64 x #s(literal 2 binary64)) #<representation binary64>) () ()) |
#s(alt (-.f64 #s(literal 1 binary64) #s(approx (cos x) #s(literal 1 binary64))) (patch (-.f64 #s(literal 1 binary64) #s(approx (cos x) #s(literal 1 binary64))) #<representation binary64>) () ()) |
#s(alt #s(approx (cos x) #s(literal 1 binary64)) (patch #s(approx (cos x) #s(literal 1 binary64)) #<representation binary64>) () ()) |
| Outputs |
|---|
#s(alt (* 1/2 (pow x 2)) (taylor 0 x) (#s(alt #s(approx (- 1 (cos x)) (*.f64 (*.f64 x x) #s(literal 1/2 binary64))) (patch #s(approx (- 1 (cos x)) (*.f64 (*.f64 x x) #s(literal 1/2 binary64))) #<representation binary64>) () ())) ()) |
#s(alt (* (pow x 2) (+ 1/2 (* -1/24 (pow x 2)))) (taylor 0 x) (#s(alt #s(approx (- 1 (cos x)) (*.f64 (*.f64 x x) #s(literal 1/2 binary64))) (patch #s(approx (- 1 (cos x)) (*.f64 (*.f64 x x) #s(literal 1/2 binary64))) #<representation binary64>) () ())) ()) |
#s(alt (* (pow x 2) (+ 1/2 (* (pow x 2) (- (* 1/720 (pow x 2)) 1/24)))) (taylor 0 x) (#s(alt #s(approx (- 1 (cos x)) (*.f64 (*.f64 x x) #s(literal 1/2 binary64))) (patch #s(approx (- 1 (cos x)) (*.f64 (*.f64 x x) #s(literal 1/2 binary64))) #<representation binary64>) () ())) ()) |
#s(alt (* (pow x 2) (+ 1/2 (* (pow x 2) (- (* (pow x 2) (+ 1/720 (* -1/40320 (pow x 2)))) 1/24)))) (taylor 0 x) (#s(alt #s(approx (- 1 (cos x)) (*.f64 (*.f64 x x) #s(literal 1/2 binary64))) (patch #s(approx (- 1 (cos x)) (*.f64 (*.f64 x x) #s(literal 1/2 binary64))) #<representation binary64>) () ())) ()) |
#s(alt (* 1/2 (pow x 2)) (taylor 0 x) (#s(alt (*.f64 (*.f64 x x) #s(literal 1/2 binary64)) (patch (*.f64 (*.f64 x x) #s(literal 1/2 binary64)) #<representation binary64>) () ())) ()) |
#s(alt (* 1/2 (pow x 2)) (taylor 0 x) (#s(alt (*.f64 (*.f64 x x) #s(literal 1/2 binary64)) (patch (*.f64 (*.f64 x x) #s(literal 1/2 binary64)) #<representation binary64>) () ())) ()) |
#s(alt (* 1/2 (pow x 2)) (taylor 0 x) (#s(alt (*.f64 (*.f64 x x) #s(literal 1/2 binary64)) (patch (*.f64 (*.f64 x x) #s(literal 1/2 binary64)) #<representation binary64>) () ())) ()) |
#s(alt (* 1/2 (pow x 2)) (taylor 0 x) (#s(alt (*.f64 (*.f64 x x) #s(literal 1/2 binary64)) (patch (*.f64 (*.f64 x x) #s(literal 1/2 binary64)) #<representation binary64>) () ())) ()) |
#s(alt (pow x 2) (taylor 0 x) (#s(alt (*.f64 x x) (patch (*.f64 x x) #<representation binary64>) () ())) ()) |
#s(alt (pow x 2) (taylor 0 x) (#s(alt (*.f64 x x) (patch (*.f64 x x) #<representation binary64>) () ())) ()) |
#s(alt (pow x 2) (taylor 0 x) (#s(alt (*.f64 x x) (patch (*.f64 x x) #<representation binary64>) () ())) ()) |
#s(alt (pow x 2) (taylor 0 x) (#s(alt (*.f64 x x) (patch (*.f64 x x) #<representation binary64>) () ())) ()) |
#s(alt (* 1/2 (pow x 2)) (taylor 0 x) (#s(alt #s(approx (- 1 (cos x)) (*.f64 (*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) x)) (patch #s(approx (- 1 (cos x)) (*.f64 (*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) x)) #<representation binary64>) () ())) ()) |
#s(alt (* (pow x 2) (+ 1/2 (* -1/24 (pow x 2)))) (taylor 0 x) (#s(alt #s(approx (- 1 (cos x)) (*.f64 (*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) x)) (patch #s(approx (- 1 (cos x)) (*.f64 (*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) x)) #<representation binary64>) () ())) ()) |
#s(alt (* (pow x 2) (+ 1/2 (* (pow x 2) (- (* 1/720 (pow x 2)) 1/24)))) (taylor 0 x) (#s(alt #s(approx (- 1 (cos x)) (*.f64 (*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) x)) (patch #s(approx (- 1 (cos x)) (*.f64 (*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) x)) #<representation binary64>) () ())) ()) |
#s(alt (* (pow x 2) (+ 1/2 (* (pow x 2) (- (* (pow x 2) (+ 1/720 (* -1/40320 (pow x 2)))) 1/24)))) (taylor 0 x) (#s(alt #s(approx (- 1 (cos x)) (*.f64 (*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) x)) (patch #s(approx (- 1 (cos x)) (*.f64 (*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) x)) #<representation binary64>) () ())) ()) |
#s(alt (* 1/2 (pow x 2)) (taylor 0 x) (#s(alt (*.f64 (*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) x) (patch (*.f64 (*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) x) #<representation binary64>) () ())) ()) |
#s(alt (* (pow x 2) (+ 1/2 (* -1/24 (pow x 2)))) (taylor 0 x) (#s(alt (*.f64 (*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) x) (patch (*.f64 (*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) x) #<representation binary64>) () ())) ()) |
#s(alt (* (pow x 2) (+ 1/2 (* -1/24 (pow x 2)))) (taylor 0 x) (#s(alt (*.f64 (*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) x) (patch (*.f64 (*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) x) #<representation binary64>) () ())) ()) |
#s(alt (* (pow x 2) (+ 1/2 (* -1/24 (pow x 2)))) (taylor 0 x) (#s(alt (*.f64 (*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) x) (patch (*.f64 (*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) x) #<representation binary64>) () ())) ()) |
#s(alt (* 1/2 x) (taylor 0 x) (#s(alt (*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) (patch (*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) #<representation binary64>) () ())) ()) |
#s(alt (* x (+ 1/2 (* -1/24 (pow x 2)))) (taylor 0 x) (#s(alt (*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) (patch (*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) #<representation binary64>) () ())) ()) |
#s(alt (* x (+ 1/2 (* -1/24 (pow x 2)))) (taylor 0 x) (#s(alt (*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) (patch (*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) #<representation binary64>) () ())) ()) |
#s(alt (* x (+ 1/2 (* -1/24 (pow x 2)))) (taylor 0 x) (#s(alt (*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) (patch (*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) #<representation binary64>) () ())) ()) |
#s(alt 1/2 (taylor 0 x) (#s(alt (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) (patch (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) #<representation binary64>) () ())) ()) |
#s(alt (+ 1/2 (* -1/24 (pow x 2))) (taylor 0 x) (#s(alt (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) (patch (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) #<representation binary64>) () ())) ()) |
#s(alt (+ 1/2 (* -1/24 (pow x 2))) (taylor 0 x) (#s(alt (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) (patch (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) #<representation binary64>) () ())) ()) |
#s(alt (+ 1/2 (* -1/24 (pow x 2))) (taylor 0 x) (#s(alt (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) (patch (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) #<representation binary64>) () ())) ()) |
#s(alt (* 1/2 (pow x 2)) (taylor 0 x) (#s(alt (*.f64 (sin.f64 x) (tan.f64 (/.f64 x #s(literal 2 binary64)))) (patch (*.f64 (sin.f64 x) (tan.f64 (/.f64 x #s(literal 2 binary64)))) #<representation binary64>) () ())) ()) |
#s(alt (* (pow x 2) (+ 1/2 (* -1/24 (pow x 2)))) (taylor 0 x) (#s(alt (*.f64 (sin.f64 x) (tan.f64 (/.f64 x #s(literal 2 binary64)))) (patch (*.f64 (sin.f64 x) (tan.f64 (/.f64 x #s(literal 2 binary64)))) #<representation binary64>) () ())) ()) |
#s(alt (* (pow x 2) (+ 1/2 (* (pow x 2) (- (* 1/720 (pow x 2)) 1/24)))) (taylor 0 x) (#s(alt (*.f64 (sin.f64 x) (tan.f64 (/.f64 x #s(literal 2 binary64)))) (patch (*.f64 (sin.f64 x) (tan.f64 (/.f64 x #s(literal 2 binary64)))) #<representation binary64>) () ())) ()) |
#s(alt (* (pow x 2) (+ 1/2 (* (pow x 2) (- (* (pow x 2) (+ 1/720 (* -1/40320 (pow x 2)))) 1/24)))) (taylor 0 x) (#s(alt (*.f64 (sin.f64 x) (tan.f64 (/.f64 x #s(literal 2 binary64)))) (patch (*.f64 (sin.f64 x) (tan.f64 (/.f64 x #s(literal 2 binary64)))) #<representation binary64>) () ())) ()) |
#s(alt x (taylor 0 x) (#s(alt (sin.f64 x) (patch (sin.f64 x) #<representation binary64>) () ())) ()) |
#s(alt (* x (+ 1 (* -1/6 (pow x 2)))) (taylor 0 x) (#s(alt (sin.f64 x) (patch (sin.f64 x) #<representation binary64>) () ())) ()) |
#s(alt (* x (+ 1 (* (pow x 2) (- (* 1/120 (pow x 2)) 1/6)))) (taylor 0 x) (#s(alt (sin.f64 x) (patch (sin.f64 x) #<representation binary64>) () ())) ()) |
#s(alt (* x (+ 1 (* (pow x 2) (- (* (pow x 2) (+ 1/120 (* -1/5040 (pow x 2)))) 1/6)))) (taylor 0 x) (#s(alt (sin.f64 x) (patch (sin.f64 x) #<representation binary64>) () ())) ()) |
#s(alt (* 1/2 x) (taylor 0 x) (#s(alt (tan.f64 (/.f64 x #s(literal 2 binary64))) (patch (tan.f64 (/.f64 x #s(literal 2 binary64))) #<representation binary64>) () ())) ()) |
#s(alt (* x (+ 1/2 (* 1/24 (pow x 2)))) (taylor 0 x) (#s(alt (tan.f64 (/.f64 x #s(literal 2 binary64))) (patch (tan.f64 (/.f64 x #s(literal 2 binary64))) #<representation binary64>) () ())) ()) |
#s(alt (* x (+ 1/2 (* (pow x 2) (+ 1/24 (* 1/240 (pow x 2)))))) (taylor 0 x) (#s(alt (tan.f64 (/.f64 x #s(literal 2 binary64))) (patch (tan.f64 (/.f64 x #s(literal 2 binary64))) #<representation binary64>) () ())) ()) |
#s(alt (* x (+ 1/2 (* (pow x 2) (+ 1/24 (* (pow x 2) (+ 1/240 (* 17/40320 (pow x 2)))))))) (taylor 0 x) (#s(alt (tan.f64 (/.f64 x #s(literal 2 binary64))) (patch (tan.f64 (/.f64 x #s(literal 2 binary64))) #<representation binary64>) () ())) ()) |
#s(alt (* 1/2 x) (taylor 0 x) (#s(alt (/.f64 x #s(literal 2 binary64)) (patch (/.f64 x #s(literal 2 binary64)) #<representation binary64>) () ())) ()) |
#s(alt (* 1/2 x) (taylor 0 x) (#s(alt (/.f64 x #s(literal 2 binary64)) (patch (/.f64 x #s(literal 2 binary64)) #<representation binary64>) () ())) ()) |
#s(alt (* 1/2 x) (taylor 0 x) (#s(alt (/.f64 x #s(literal 2 binary64)) (patch (/.f64 x #s(literal 2 binary64)) #<representation binary64>) () ())) ()) |
#s(alt (* 1/2 x) (taylor 0 x) (#s(alt (/.f64 x #s(literal 2 binary64)) (patch (/.f64 x #s(literal 2 binary64)) #<representation binary64>) () ())) ()) |
#s(alt (* 1/2 (pow x 2)) (taylor 0 x) (#s(alt (-.f64 #s(literal 1 binary64) #s(approx (cos x) #s(literal 1 binary64))) (patch (-.f64 #s(literal 1 binary64) #s(approx (cos x) #s(literal 1 binary64))) #<representation binary64>) () ())) ()) |
#s(alt (* (pow x 2) (+ 1/2 (* -1/24 (pow x 2)))) (taylor 0 x) (#s(alt (-.f64 #s(literal 1 binary64) #s(approx (cos x) #s(literal 1 binary64))) (patch (-.f64 #s(literal 1 binary64) #s(approx (cos x) #s(literal 1 binary64))) #<representation binary64>) () ())) ()) |
#s(alt (* (pow x 2) (+ 1/2 (* (pow x 2) (- (* 1/720 (pow x 2)) 1/24)))) (taylor 0 x) (#s(alt (-.f64 #s(literal 1 binary64) #s(approx (cos x) #s(literal 1 binary64))) (patch (-.f64 #s(literal 1 binary64) #s(approx (cos x) #s(literal 1 binary64))) #<representation binary64>) () ())) ()) |
#s(alt (* (pow x 2) (+ 1/2 (* (pow x 2) (- (* (pow x 2) (+ 1/720 (* -1/40320 (pow x 2)))) 1/24)))) (taylor 0 x) (#s(alt (-.f64 #s(literal 1 binary64) #s(approx (cos x) #s(literal 1 binary64))) (patch (-.f64 #s(literal 1 binary64) #s(approx (cos x) #s(literal 1 binary64))) #<representation binary64>) () ())) ()) |
#s(alt 1 (taylor 0 x) (#s(alt #s(approx (cos x) #s(literal 1 binary64)) (patch #s(approx (cos x) #s(literal 1 binary64)) #<representation binary64>) () ())) ()) |
#s(alt (+ 1 (* -1/2 (pow x 2))) (taylor 0 x) (#s(alt #s(approx (cos x) #s(literal 1 binary64)) (patch #s(approx (cos x) #s(literal 1 binary64)) #<representation binary64>) () ())) ()) |
#s(alt (+ 1 (* (pow x 2) (- (* 1/24 (pow x 2)) 1/2))) (taylor 0 x) (#s(alt #s(approx (cos x) #s(literal 1 binary64)) (patch #s(approx (cos x) #s(literal 1 binary64)) #<representation binary64>) () ())) ()) |
#s(alt (+ 1 (* (pow x 2) (- (* (pow x 2) (+ 1/24 (* -1/720 (pow x 2)))) 1/2))) (taylor 0 x) (#s(alt #s(approx (cos x) #s(literal 1 binary64)) (patch #s(approx (cos x) #s(literal 1 binary64)) #<representation binary64>) () ())) ()) |
#s(alt (- 1 (cos x)) (taylor inf x) (#s(alt #s(approx (- 1 (cos x)) (*.f64 (*.f64 x x) #s(literal 1/2 binary64))) (patch #s(approx (- 1 (cos x)) (*.f64 (*.f64 x x) #s(literal 1/2 binary64))) #<representation binary64>) () ())) ()) |
#s(alt (- 1 (cos x)) (taylor inf x) (#s(alt #s(approx (- 1 (cos x)) (*.f64 (*.f64 x x) #s(literal 1/2 binary64))) (patch #s(approx (- 1 (cos x)) (*.f64 (*.f64 x x) #s(literal 1/2 binary64))) #<representation binary64>) () ())) ()) |
#s(alt (- 1 (cos x)) (taylor inf x) (#s(alt #s(approx (- 1 (cos x)) (*.f64 (*.f64 x x) #s(literal 1/2 binary64))) (patch #s(approx (- 1 (cos x)) (*.f64 (*.f64 x x) #s(literal 1/2 binary64))) #<representation binary64>) () ())) ()) |
#s(alt (- 1 (cos x)) (taylor inf x) (#s(alt #s(approx (- 1 (cos x)) (*.f64 (*.f64 x x) #s(literal 1/2 binary64))) (patch #s(approx (- 1 (cos x)) (*.f64 (*.f64 x x) #s(literal 1/2 binary64))) #<representation binary64>) () ())) ()) |
#s(alt (* 1/2 (pow x 2)) (taylor inf x) (#s(alt (*.f64 (*.f64 x x) #s(literal 1/2 binary64)) (patch (*.f64 (*.f64 x x) #s(literal 1/2 binary64)) #<representation binary64>) () ())) ()) |
#s(alt (* 1/2 (pow x 2)) (taylor inf x) (#s(alt (*.f64 (*.f64 x x) #s(literal 1/2 binary64)) (patch (*.f64 (*.f64 x x) #s(literal 1/2 binary64)) #<representation binary64>) () ())) ()) |
#s(alt (* 1/2 (pow x 2)) (taylor inf x) (#s(alt (*.f64 (*.f64 x x) #s(literal 1/2 binary64)) (patch (*.f64 (*.f64 x x) #s(literal 1/2 binary64)) #<representation binary64>) () ())) ()) |
#s(alt (* 1/2 (pow x 2)) (taylor inf x) (#s(alt (*.f64 (*.f64 x x) #s(literal 1/2 binary64)) (patch (*.f64 (*.f64 x x) #s(literal 1/2 binary64)) #<representation binary64>) () ())) ()) |
#s(alt (pow x 2) (taylor inf x) (#s(alt (*.f64 x x) (patch (*.f64 x x) #<representation binary64>) () ())) ()) |
#s(alt (pow x 2) (taylor inf x) (#s(alt (*.f64 x x) (patch (*.f64 x x) #<representation binary64>) () ())) ()) |
#s(alt (pow x 2) (taylor inf x) (#s(alt (*.f64 x x) (patch (*.f64 x x) #<representation binary64>) () ())) ()) |
#s(alt (pow x 2) (taylor inf x) (#s(alt (*.f64 x x) (patch (*.f64 x x) #<representation binary64>) () ())) ()) |
#s(alt (- 1 (cos x)) (taylor inf x) (#s(alt #s(approx (- 1 (cos x)) (*.f64 (*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) x)) (patch #s(approx (- 1 (cos x)) (*.f64 (*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) x)) #<representation binary64>) () ())) ()) |
#s(alt (- 1 (cos x)) (taylor inf x) (#s(alt #s(approx (- 1 (cos x)) (*.f64 (*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) x)) (patch #s(approx (- 1 (cos x)) (*.f64 (*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) x)) #<representation binary64>) () ())) ()) |
#s(alt (- 1 (cos x)) (taylor inf x) (#s(alt #s(approx (- 1 (cos x)) (*.f64 (*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) x)) (patch #s(approx (- 1 (cos x)) (*.f64 (*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) x)) #<representation binary64>) () ())) ()) |
#s(alt (- 1 (cos x)) (taylor inf x) (#s(alt #s(approx (- 1 (cos x)) (*.f64 (*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) x)) (patch #s(approx (- 1 (cos x)) (*.f64 (*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) x)) #<representation binary64>) () ())) ()) |
#s(alt (* -1/24 (pow x 4)) (taylor inf x) (#s(alt (*.f64 (*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) x) (patch (*.f64 (*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) x) #<representation binary64>) () ())) ()) |
#s(alt (* (pow x 4) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) (taylor inf x) (#s(alt (*.f64 (*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) x) (patch (*.f64 (*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) x) #<representation binary64>) () ())) ()) |
#s(alt (* (pow x 4) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) (taylor inf x) (#s(alt (*.f64 (*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) x) (patch (*.f64 (*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) x) #<representation binary64>) () ())) ()) |
#s(alt (* (pow x 4) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) (taylor inf x) (#s(alt (*.f64 (*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) x) (patch (*.f64 (*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) x) #<representation binary64>) () ())) ()) |
#s(alt (* -1/24 (pow x 3)) (taylor inf x) (#s(alt (*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) (patch (*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) #<representation binary64>) () ())) ()) |
#s(alt (* (pow x 3) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) (taylor inf x) (#s(alt (*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) (patch (*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) #<representation binary64>) () ())) ()) |
#s(alt (* (pow x 3) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) (taylor inf x) (#s(alt (*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) (patch (*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) #<representation binary64>) () ())) ()) |
#s(alt (* (pow x 3) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) (taylor inf x) (#s(alt (*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) (patch (*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) #<representation binary64>) () ())) ()) |
#s(alt (* -1/24 (pow x 2)) (taylor inf x) (#s(alt (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) (patch (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) #<representation binary64>) () ())) ()) |
#s(alt (* (pow x 2) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) (taylor inf x) (#s(alt (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) (patch (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) #<representation binary64>) () ())) ()) |
#s(alt (* (pow x 2) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) (taylor inf x) (#s(alt (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) (patch (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) #<representation binary64>) () ())) ()) |
#s(alt (* (pow x 2) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) (taylor inf x) (#s(alt (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) (patch (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) #<representation binary64>) () ())) ()) |
#s(alt (/ (* (sin x) (sin (* 1/2 x))) (cos (* 1/2 x))) (taylor inf x) (#s(alt (*.f64 (sin.f64 x) (tan.f64 (/.f64 x #s(literal 2 binary64)))) (patch (*.f64 (sin.f64 x) (tan.f64 (/.f64 x #s(literal 2 binary64)))) #<representation binary64>) () ())) ()) |
#s(alt (/ (* (sin x) (sin (* 1/2 x))) (cos (* 1/2 x))) (taylor inf x) (#s(alt (*.f64 (sin.f64 x) (tan.f64 (/.f64 x #s(literal 2 binary64)))) (patch (*.f64 (sin.f64 x) (tan.f64 (/.f64 x #s(literal 2 binary64)))) #<representation binary64>) () ())) ()) |
#s(alt (/ (* (sin x) (sin (* 1/2 x))) (cos (* 1/2 x))) (taylor inf x) (#s(alt (*.f64 (sin.f64 x) (tan.f64 (/.f64 x #s(literal 2 binary64)))) (patch (*.f64 (sin.f64 x) (tan.f64 (/.f64 x #s(literal 2 binary64)))) #<representation binary64>) () ())) ()) |
#s(alt (/ (* (sin x) (sin (* 1/2 x))) (cos (* 1/2 x))) (taylor inf x) (#s(alt (*.f64 (sin.f64 x) (tan.f64 (/.f64 x #s(literal 2 binary64)))) (patch (*.f64 (sin.f64 x) (tan.f64 (/.f64 x #s(literal 2 binary64)))) #<representation binary64>) () ())) ()) |
#s(alt (sin x) (taylor inf x) (#s(alt (sin.f64 x) (patch (sin.f64 x) #<representation binary64>) () ())) ()) |
#s(alt (sin x) (taylor inf x) (#s(alt (sin.f64 x) (patch (sin.f64 x) #<representation binary64>) () ())) ()) |
#s(alt (sin x) (taylor inf x) (#s(alt (sin.f64 x) (patch (sin.f64 x) #<representation binary64>) () ())) ()) |
#s(alt (sin x) (taylor inf x) (#s(alt (sin.f64 x) (patch (sin.f64 x) #<representation binary64>) () ())) ()) |
#s(alt (/ (sin (* 1/2 x)) (cos (* 1/2 x))) (taylor inf x) (#s(alt (tan.f64 (/.f64 x #s(literal 2 binary64))) (patch (tan.f64 (/.f64 x #s(literal 2 binary64))) #<representation binary64>) () ())) ()) |
#s(alt (/ (sin (* 1/2 x)) (cos (* 1/2 x))) (taylor inf x) (#s(alt (tan.f64 (/.f64 x #s(literal 2 binary64))) (patch (tan.f64 (/.f64 x #s(literal 2 binary64))) #<representation binary64>) () ())) ()) |
#s(alt (/ (sin (* 1/2 x)) (cos (* 1/2 x))) (taylor inf x) (#s(alt (tan.f64 (/.f64 x #s(literal 2 binary64))) (patch (tan.f64 (/.f64 x #s(literal 2 binary64))) #<representation binary64>) () ())) ()) |
#s(alt (/ (sin (* 1/2 x)) (cos (* 1/2 x))) (taylor inf x) (#s(alt (tan.f64 (/.f64 x #s(literal 2 binary64))) (patch (tan.f64 (/.f64 x #s(literal 2 binary64))) #<representation binary64>) () ())) ()) |
#s(alt (* 1/2 x) (taylor inf x) (#s(alt (/.f64 x #s(literal 2 binary64)) (patch (/.f64 x #s(literal 2 binary64)) #<representation binary64>) () ())) ()) |
#s(alt (* 1/2 x) (taylor inf x) (#s(alt (/.f64 x #s(literal 2 binary64)) (patch (/.f64 x #s(literal 2 binary64)) #<representation binary64>) () ())) ()) |
#s(alt (* 1/2 x) (taylor inf x) (#s(alt (/.f64 x #s(literal 2 binary64)) (patch (/.f64 x #s(literal 2 binary64)) #<representation binary64>) () ())) ()) |
#s(alt (* 1/2 x) (taylor inf x) (#s(alt (/.f64 x #s(literal 2 binary64)) (patch (/.f64 x #s(literal 2 binary64)) #<representation binary64>) () ())) ()) |
#s(alt (- 1 (cos x)) (taylor inf x) (#s(alt (-.f64 #s(literal 1 binary64) #s(approx (cos x) #s(literal 1 binary64))) (patch (-.f64 #s(literal 1 binary64) #s(approx (cos x) #s(literal 1 binary64))) #<representation binary64>) () ())) ()) |
#s(alt (- 1 (cos x)) (taylor inf x) (#s(alt (-.f64 #s(literal 1 binary64) #s(approx (cos x) #s(literal 1 binary64))) (patch (-.f64 #s(literal 1 binary64) #s(approx (cos x) #s(literal 1 binary64))) #<representation binary64>) () ())) ()) |
#s(alt (- 1 (cos x)) (taylor inf x) (#s(alt (-.f64 #s(literal 1 binary64) #s(approx (cos x) #s(literal 1 binary64))) (patch (-.f64 #s(literal 1 binary64) #s(approx (cos x) #s(literal 1 binary64))) #<representation binary64>) () ())) ()) |
#s(alt (- 1 (cos x)) (taylor inf x) (#s(alt (-.f64 #s(literal 1 binary64) #s(approx (cos x) #s(literal 1 binary64))) (patch (-.f64 #s(literal 1 binary64) #s(approx (cos x) #s(literal 1 binary64))) #<representation binary64>) () ())) ()) |
#s(alt (cos x) (taylor inf x) (#s(alt #s(approx (cos x) #s(literal 1 binary64)) (patch #s(approx (cos x) #s(literal 1 binary64)) #<representation binary64>) () ())) ()) |
#s(alt (cos x) (taylor inf x) (#s(alt #s(approx (cos x) #s(literal 1 binary64)) (patch #s(approx (cos x) #s(literal 1 binary64)) #<representation binary64>) () ())) ()) |
#s(alt (cos x) (taylor inf x) (#s(alt #s(approx (cos x) #s(literal 1 binary64)) (patch #s(approx (cos x) #s(literal 1 binary64)) #<representation binary64>) () ())) ()) |
#s(alt (cos x) (taylor inf x) (#s(alt #s(approx (cos x) #s(literal 1 binary64)) (patch #s(approx (cos x) #s(literal 1 binary64)) #<representation binary64>) () ())) ()) |
#s(alt (- 1 (cos x)) (taylor -inf x) (#s(alt #s(approx (- 1 (cos x)) (*.f64 (*.f64 x x) #s(literal 1/2 binary64))) (patch #s(approx (- 1 (cos x)) (*.f64 (*.f64 x x) #s(literal 1/2 binary64))) #<representation binary64>) () ())) ()) |
#s(alt (- 1 (cos x)) (taylor -inf x) (#s(alt #s(approx (- 1 (cos x)) (*.f64 (*.f64 x x) #s(literal 1/2 binary64))) (patch #s(approx (- 1 (cos x)) (*.f64 (*.f64 x x) #s(literal 1/2 binary64))) #<representation binary64>) () ())) ()) |
#s(alt (- 1 (cos x)) (taylor -inf x) (#s(alt #s(approx (- 1 (cos x)) (*.f64 (*.f64 x x) #s(literal 1/2 binary64))) (patch #s(approx (- 1 (cos x)) (*.f64 (*.f64 x x) #s(literal 1/2 binary64))) #<representation binary64>) () ())) ()) |
#s(alt (- 1 (cos x)) (taylor -inf x) (#s(alt #s(approx (- 1 (cos x)) (*.f64 (*.f64 x x) #s(literal 1/2 binary64))) (patch #s(approx (- 1 (cos x)) (*.f64 (*.f64 x x) #s(literal 1/2 binary64))) #<representation binary64>) () ())) ()) |
#s(alt (* 1/2 (pow x 2)) (taylor -inf x) (#s(alt (*.f64 (*.f64 x x) #s(literal 1/2 binary64)) (patch (*.f64 (*.f64 x x) #s(literal 1/2 binary64)) #<representation binary64>) () ())) ()) |
#s(alt (* 1/2 (pow x 2)) (taylor -inf x) (#s(alt (*.f64 (*.f64 x x) #s(literal 1/2 binary64)) (patch (*.f64 (*.f64 x x) #s(literal 1/2 binary64)) #<representation binary64>) () ())) ()) |
#s(alt (* 1/2 (pow x 2)) (taylor -inf x) (#s(alt (*.f64 (*.f64 x x) #s(literal 1/2 binary64)) (patch (*.f64 (*.f64 x x) #s(literal 1/2 binary64)) #<representation binary64>) () ())) ()) |
#s(alt (* 1/2 (pow x 2)) (taylor -inf x) (#s(alt (*.f64 (*.f64 x x) #s(literal 1/2 binary64)) (patch (*.f64 (*.f64 x x) #s(literal 1/2 binary64)) #<representation binary64>) () ())) ()) |
#s(alt (pow x 2) (taylor -inf x) (#s(alt (*.f64 x x) (patch (*.f64 x x) #<representation binary64>) () ())) ()) |
#s(alt (pow x 2) (taylor -inf x) (#s(alt (*.f64 x x) (patch (*.f64 x x) #<representation binary64>) () ())) ()) |
#s(alt (pow x 2) (taylor -inf x) (#s(alt (*.f64 x x) (patch (*.f64 x x) #<representation binary64>) () ())) ()) |
#s(alt (pow x 2) (taylor -inf x) (#s(alt (*.f64 x x) (patch (*.f64 x x) #<representation binary64>) () ())) ()) |
#s(alt (- 1 (cos x)) (taylor -inf x) (#s(alt #s(approx (- 1 (cos x)) (*.f64 (*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) x)) (patch #s(approx (- 1 (cos x)) (*.f64 (*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) x)) #<representation binary64>) () ())) ()) |
#s(alt (- 1 (cos x)) (taylor -inf x) (#s(alt #s(approx (- 1 (cos x)) (*.f64 (*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) x)) (patch #s(approx (- 1 (cos x)) (*.f64 (*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) x)) #<representation binary64>) () ())) ()) |
#s(alt (- 1 (cos x)) (taylor -inf x) (#s(alt #s(approx (- 1 (cos x)) (*.f64 (*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) x)) (patch #s(approx (- 1 (cos x)) (*.f64 (*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) x)) #<representation binary64>) () ())) ()) |
#s(alt (- 1 (cos x)) (taylor -inf x) (#s(alt #s(approx (- 1 (cos x)) (*.f64 (*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) x)) (patch #s(approx (- 1 (cos x)) (*.f64 (*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) x)) #<representation binary64>) () ())) ()) |
#s(alt (* -1/24 (pow x 4)) (taylor -inf x) (#s(alt (*.f64 (*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) x) (patch (*.f64 (*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) x) #<representation binary64>) () ())) ()) |
#s(alt (* (pow x 4) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) (taylor -inf x) (#s(alt (*.f64 (*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) x) (patch (*.f64 (*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) x) #<representation binary64>) () ())) ()) |
#s(alt (* (pow x 4) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) (taylor -inf x) (#s(alt (*.f64 (*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) x) (patch (*.f64 (*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) x) #<representation binary64>) () ())) ()) |
#s(alt (* (pow x 4) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) (taylor -inf x) (#s(alt (*.f64 (*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) x) (patch (*.f64 (*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) x) #<representation binary64>) () ())) ()) |
#s(alt (* -1/24 (pow x 3)) (taylor -inf x) (#s(alt (*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) (patch (*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) #<representation binary64>) () ())) ()) |
#s(alt (* -1 (* (pow x 3) (- 1/24 (* 1/2 (/ 1 (pow x 2)))))) (taylor -inf x) (#s(alt (*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) (patch (*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) #<representation binary64>) () ())) ()) |
#s(alt (* -1 (* (pow x 3) (- 1/24 (* 1/2 (/ 1 (pow x 2)))))) (taylor -inf x) (#s(alt (*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) (patch (*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) #<representation binary64>) () ())) ()) |
#s(alt (* -1 (* (pow x 3) (- 1/24 (* 1/2 (/ 1 (pow x 2)))))) (taylor -inf x) (#s(alt (*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) (patch (*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) #<representation binary64>) () ())) ()) |
#s(alt (* -1/24 (pow x 2)) (taylor -inf x) (#s(alt (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) (patch (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) #<representation binary64>) () ())) ()) |
#s(alt (* (pow x 2) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) (taylor -inf x) (#s(alt (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) (patch (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) #<representation binary64>) () ())) ()) |
#s(alt (* (pow x 2) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) (taylor -inf x) (#s(alt (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) (patch (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) #<representation binary64>) () ())) ()) |
#s(alt (* (pow x 2) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) (taylor -inf x) (#s(alt (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) (patch (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) #<representation binary64>) () ())) ()) |
#s(alt (/ (* (sin x) (sin (* 1/2 x))) (cos (* 1/2 x))) (taylor -inf x) (#s(alt (*.f64 (sin.f64 x) (tan.f64 (/.f64 x #s(literal 2 binary64)))) (patch (*.f64 (sin.f64 x) (tan.f64 (/.f64 x #s(literal 2 binary64)))) #<representation binary64>) () ())) ()) |
#s(alt (/ (* (sin x) (sin (* 1/2 x))) (cos (* 1/2 x))) (taylor -inf x) (#s(alt (*.f64 (sin.f64 x) (tan.f64 (/.f64 x #s(literal 2 binary64)))) (patch (*.f64 (sin.f64 x) (tan.f64 (/.f64 x #s(literal 2 binary64)))) #<representation binary64>) () ())) ()) |
#s(alt (/ (* (sin x) (sin (* 1/2 x))) (cos (* 1/2 x))) (taylor -inf x) (#s(alt (*.f64 (sin.f64 x) (tan.f64 (/.f64 x #s(literal 2 binary64)))) (patch (*.f64 (sin.f64 x) (tan.f64 (/.f64 x #s(literal 2 binary64)))) #<representation binary64>) () ())) ()) |
#s(alt (/ (* (sin x) (sin (* 1/2 x))) (cos (* 1/2 x))) (taylor -inf x) (#s(alt (*.f64 (sin.f64 x) (tan.f64 (/.f64 x #s(literal 2 binary64)))) (patch (*.f64 (sin.f64 x) (tan.f64 (/.f64 x #s(literal 2 binary64)))) #<representation binary64>) () ())) ()) |
#s(alt (sin x) (taylor -inf x) (#s(alt (sin.f64 x) (patch (sin.f64 x) #<representation binary64>) () ())) ()) |
#s(alt (sin x) (taylor -inf x) (#s(alt (sin.f64 x) (patch (sin.f64 x) #<representation binary64>) () ())) ()) |
#s(alt (sin x) (taylor -inf x) (#s(alt (sin.f64 x) (patch (sin.f64 x) #<representation binary64>) () ())) ()) |
#s(alt (sin x) (taylor -inf x) (#s(alt (sin.f64 x) (patch (sin.f64 x) #<representation binary64>) () ())) ()) |
#s(alt (/ (sin (* 1/2 x)) (cos (* 1/2 x))) (taylor -inf x) (#s(alt (tan.f64 (/.f64 x #s(literal 2 binary64))) (patch (tan.f64 (/.f64 x #s(literal 2 binary64))) #<representation binary64>) () ())) ()) |
#s(alt (/ (sin (* 1/2 x)) (cos (* 1/2 x))) (taylor -inf x) (#s(alt (tan.f64 (/.f64 x #s(literal 2 binary64))) (patch (tan.f64 (/.f64 x #s(literal 2 binary64))) #<representation binary64>) () ())) ()) |
#s(alt (/ (sin (* 1/2 x)) (cos (* 1/2 x))) (taylor -inf x) (#s(alt (tan.f64 (/.f64 x #s(literal 2 binary64))) (patch (tan.f64 (/.f64 x #s(literal 2 binary64))) #<representation binary64>) () ())) ()) |
#s(alt (/ (sin (* 1/2 x)) (cos (* 1/2 x))) (taylor -inf x) (#s(alt (tan.f64 (/.f64 x #s(literal 2 binary64))) (patch (tan.f64 (/.f64 x #s(literal 2 binary64))) #<representation binary64>) () ())) ()) |
#s(alt (* 1/2 x) (taylor -inf x) (#s(alt (/.f64 x #s(literal 2 binary64)) (patch (/.f64 x #s(literal 2 binary64)) #<representation binary64>) () ())) ()) |
#s(alt (* 1/2 x) (taylor -inf x) (#s(alt (/.f64 x #s(literal 2 binary64)) (patch (/.f64 x #s(literal 2 binary64)) #<representation binary64>) () ())) ()) |
#s(alt (* 1/2 x) (taylor -inf x) (#s(alt (/.f64 x #s(literal 2 binary64)) (patch (/.f64 x #s(literal 2 binary64)) #<representation binary64>) () ())) ()) |
#s(alt (* 1/2 x) (taylor -inf x) (#s(alt (/.f64 x #s(literal 2 binary64)) (patch (/.f64 x #s(literal 2 binary64)) #<representation binary64>) () ())) ()) |
#s(alt (- 1 (cos x)) (taylor -inf x) (#s(alt (-.f64 #s(literal 1 binary64) #s(approx (cos x) #s(literal 1 binary64))) (patch (-.f64 #s(literal 1 binary64) #s(approx (cos x) #s(literal 1 binary64))) #<representation binary64>) () ())) ()) |
#s(alt (- 1 (cos x)) (taylor -inf x) (#s(alt (-.f64 #s(literal 1 binary64) #s(approx (cos x) #s(literal 1 binary64))) (patch (-.f64 #s(literal 1 binary64) #s(approx (cos x) #s(literal 1 binary64))) #<representation binary64>) () ())) ()) |
#s(alt (- 1 (cos x)) (taylor -inf x) (#s(alt (-.f64 #s(literal 1 binary64) #s(approx (cos x) #s(literal 1 binary64))) (patch (-.f64 #s(literal 1 binary64) #s(approx (cos x) #s(literal 1 binary64))) #<representation binary64>) () ())) ()) |
#s(alt (- 1 (cos x)) (taylor -inf x) (#s(alt (-.f64 #s(literal 1 binary64) #s(approx (cos x) #s(literal 1 binary64))) (patch (-.f64 #s(literal 1 binary64) #s(approx (cos x) #s(literal 1 binary64))) #<representation binary64>) () ())) ()) |
#s(alt (cos x) (taylor -inf x) (#s(alt #s(approx (cos x) #s(literal 1 binary64)) (patch #s(approx (cos x) #s(literal 1 binary64)) #<representation binary64>) () ())) ()) |
#s(alt (cos x) (taylor -inf x) (#s(alt #s(approx (cos x) #s(literal 1 binary64)) (patch #s(approx (cos x) #s(literal 1 binary64)) #<representation binary64>) () ())) ()) |
#s(alt (cos x) (taylor -inf x) (#s(alt #s(approx (cos x) #s(literal 1 binary64)) (patch #s(approx (cos x) #s(literal 1 binary64)) #<representation binary64>) () ())) ()) |
#s(alt (cos x) (taylor -inf x) (#s(alt #s(approx (cos x) #s(literal 1 binary64)) (patch #s(approx (cos x) #s(literal 1 binary64)) #<representation binary64>) () ())) ()) |
3 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 100.0ms | x | @ | inf | ((- 1 (cos x)) (* (* x x) 1/2) (* x x) (- 1 (cos x)) (* (* (+ (* -1/24 (* x x)) 1/2) x) x) (* (+ (* -1/24 (* x x)) 1/2) x) (+ (* -1/24 (* x x)) 1/2) (* (sin x) (tan (/ x 2))) (sin x) (tan (/ x 2)) (/ x 2) (- 1 (cos x)) (cos x)) |
| 2.0ms | x | @ | -inf | ((- 1 (cos x)) (* (* x x) 1/2) (* x x) (- 1 (cos x)) (* (* (+ (* -1/24 (* x x)) 1/2) x) x) (* (+ (* -1/24 (* x x)) 1/2) x) (+ (* -1/24 (* x x)) 1/2) (* (sin x) (tan (/ x 2))) (sin x) (tan (/ x 2)) (/ x 2) (- 1 (cos x)) (cos x)) |
| 2.0ms | x | @ | 0 | ((- 1 (cos x)) (* (* x x) 1/2) (* x x) (- 1 (cos x)) (* (* (+ (* -1/24 (* x x)) 1/2) x) x) (* (+ (* -1/24 (* x x)) 1/2) x) (+ (* -1/24 (* x x)) 1/2) (* (sin x) (tan (/ x 2))) (sin x) (tan (/ x 2)) (/ x 2) (- 1 (cos x)) (cos x)) |
| 1× | egg-herbie |
| 15 162× | lower-fma.f64 |
| 15 162× | lower-fma.f32 |
| 4 386× | lower-*.f64 |
| 4 386× | lower-*.f32 |
| 2 218× | lower-+.f64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 100 | 1068 |
| 1 | 268 | 1062 |
| 2 | 676 | 1062 |
| 3 | 2086 | 1062 |
| 4 | 4152 | 1062 |
| 5 | 6395 | 1062 |
| 0 | 8204 | 993 |
| 1× | iter limit |
| 1× | node limit |
| Inputs |
|---|
(* 1/2 (pow x 2)) |
(* (pow x 2) (+ 1/2 (* -1/24 (pow x 2)))) |
(* (pow x 2) (+ 1/2 (* (pow x 2) (- (* 1/720 (pow x 2)) 1/24)))) |
(* (pow x 2) (+ 1/2 (* (pow x 2) (- (* (pow x 2) (+ 1/720 (* -1/40320 (pow x 2)))) 1/24)))) |
(* 1/2 (pow x 2)) |
(* 1/2 (pow x 2)) |
(* 1/2 (pow x 2)) |
(* 1/2 (pow x 2)) |
(pow x 2) |
(pow x 2) |
(pow x 2) |
(pow x 2) |
(* 1/2 (pow x 2)) |
(* (pow x 2) (+ 1/2 (* -1/24 (pow x 2)))) |
(* (pow x 2) (+ 1/2 (* (pow x 2) (- (* 1/720 (pow x 2)) 1/24)))) |
(* (pow x 2) (+ 1/2 (* (pow x 2) (- (* (pow x 2) (+ 1/720 (* -1/40320 (pow x 2)))) 1/24)))) |
(* 1/2 (pow x 2)) |
(* (pow x 2) (+ 1/2 (* -1/24 (pow x 2)))) |
(* (pow x 2) (+ 1/2 (* -1/24 (pow x 2)))) |
(* (pow x 2) (+ 1/2 (* -1/24 (pow x 2)))) |
(* 1/2 x) |
(* x (+ 1/2 (* -1/24 (pow x 2)))) |
(* x (+ 1/2 (* -1/24 (pow x 2)))) |
(* x (+ 1/2 (* -1/24 (pow x 2)))) |
1/2 |
(+ 1/2 (* -1/24 (pow x 2))) |
(+ 1/2 (* -1/24 (pow x 2))) |
(+ 1/2 (* -1/24 (pow x 2))) |
(* 1/2 (pow x 2)) |
(* (pow x 2) (+ 1/2 (* -1/24 (pow x 2)))) |
(* (pow x 2) (+ 1/2 (* (pow x 2) (- (* 1/720 (pow x 2)) 1/24)))) |
(* (pow x 2) (+ 1/2 (* (pow x 2) (- (* (pow x 2) (+ 1/720 (* -1/40320 (pow x 2)))) 1/24)))) |
x |
(* x (+ 1 (* -1/6 (pow x 2)))) |
(* x (+ 1 (* (pow x 2) (- (* 1/120 (pow x 2)) 1/6)))) |
(* x (+ 1 (* (pow x 2) (- (* (pow x 2) (+ 1/120 (* -1/5040 (pow x 2)))) 1/6)))) |
(* 1/2 x) |
(* x (+ 1/2 (* 1/24 (pow x 2)))) |
(* x (+ 1/2 (* (pow x 2) (+ 1/24 (* 1/240 (pow x 2)))))) |
(* x (+ 1/2 (* (pow x 2) (+ 1/24 (* (pow x 2) (+ 1/240 (* 17/40320 (pow x 2)))))))) |
(* 1/2 x) |
(* 1/2 x) |
(* 1/2 x) |
(* 1/2 x) |
(* 1/2 (pow x 2)) |
(* (pow x 2) (+ 1/2 (* -1/24 (pow x 2)))) |
(* (pow x 2) (+ 1/2 (* (pow x 2) (- (* 1/720 (pow x 2)) 1/24)))) |
(* (pow x 2) (+ 1/2 (* (pow x 2) (- (* (pow x 2) (+ 1/720 (* -1/40320 (pow x 2)))) 1/24)))) |
1 |
(+ 1 (* -1/2 (pow x 2))) |
(+ 1 (* (pow x 2) (- (* 1/24 (pow x 2)) 1/2))) |
(+ 1 (* (pow x 2) (- (* (pow x 2) (+ 1/24 (* -1/720 (pow x 2)))) 1/2))) |
(- 1 (cos x)) |
(- 1 (cos x)) |
(- 1 (cos x)) |
(- 1 (cos x)) |
(* 1/2 (pow x 2)) |
(* 1/2 (pow x 2)) |
(* 1/2 (pow x 2)) |
(* 1/2 (pow x 2)) |
(pow x 2) |
(pow x 2) |
(pow x 2) |
(pow x 2) |
(- 1 (cos x)) |
(- 1 (cos x)) |
(- 1 (cos x)) |
(- 1 (cos x)) |
(* -1/24 (pow x 4)) |
(* (pow x 4) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) |
(* (pow x 4) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) |
(* (pow x 4) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) |
(* -1/24 (pow x 3)) |
(* (pow x 3) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) |
(* (pow x 3) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) |
(* (pow x 3) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) |
(* -1/24 (pow x 2)) |
(* (pow x 2) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) |
(* (pow x 2) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) |
(* (pow x 2) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) |
(/ (* (sin x) (sin (* 1/2 x))) (cos (* 1/2 x))) |
(/ (* (sin x) (sin (* 1/2 x))) (cos (* 1/2 x))) |
(/ (* (sin x) (sin (* 1/2 x))) (cos (* 1/2 x))) |
(/ (* (sin x) (sin (* 1/2 x))) (cos (* 1/2 x))) |
(sin x) |
(sin x) |
(sin x) |
(sin x) |
(/ (sin (* 1/2 x)) (cos (* 1/2 x))) |
(/ (sin (* 1/2 x)) (cos (* 1/2 x))) |
(/ (sin (* 1/2 x)) (cos (* 1/2 x))) |
(/ (sin (* 1/2 x)) (cos (* 1/2 x))) |
(* 1/2 x) |
(* 1/2 x) |
(* 1/2 x) |
(* 1/2 x) |
(- 1 (cos x)) |
(- 1 (cos x)) |
(- 1 (cos x)) |
(- 1 (cos x)) |
(cos x) |
(cos x) |
(cos x) |
(cos x) |
(- 1 (cos x)) |
(- 1 (cos x)) |
(- 1 (cos x)) |
(- 1 (cos x)) |
(* 1/2 (pow x 2)) |
(* 1/2 (pow x 2)) |
(* 1/2 (pow x 2)) |
(* 1/2 (pow x 2)) |
(pow x 2) |
(pow x 2) |
(pow x 2) |
(pow x 2) |
(- 1 (cos x)) |
(- 1 (cos x)) |
(- 1 (cos x)) |
(- 1 (cos x)) |
(* -1/24 (pow x 4)) |
(* (pow x 4) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) |
(* (pow x 4) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) |
(* (pow x 4) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) |
(* -1/24 (pow x 3)) |
(* -1 (* (pow x 3) (- 1/24 (* 1/2 (/ 1 (pow x 2)))))) |
(* -1 (* (pow x 3) (- 1/24 (* 1/2 (/ 1 (pow x 2)))))) |
(* -1 (* (pow x 3) (- 1/24 (* 1/2 (/ 1 (pow x 2)))))) |
(* -1/24 (pow x 2)) |
(* (pow x 2) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) |
(* (pow x 2) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) |
(* (pow x 2) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) |
(/ (* (sin x) (sin (* 1/2 x))) (cos (* 1/2 x))) |
(/ (* (sin x) (sin (* 1/2 x))) (cos (* 1/2 x))) |
(/ (* (sin x) (sin (* 1/2 x))) (cos (* 1/2 x))) |
(/ (* (sin x) (sin (* 1/2 x))) (cos (* 1/2 x))) |
(sin x) |
(sin x) |
(sin x) |
(sin x) |
(/ (sin (* 1/2 x)) (cos (* 1/2 x))) |
(/ (sin (* 1/2 x)) (cos (* 1/2 x))) |
(/ (sin (* 1/2 x)) (cos (* 1/2 x))) |
(/ (sin (* 1/2 x)) (cos (* 1/2 x))) |
(* 1/2 x) |
(* 1/2 x) |
(* 1/2 x) |
(* 1/2 x) |
(- 1 (cos x)) |
(- 1 (cos x)) |
(- 1 (cos x)) |
(- 1 (cos x)) |
(cos x) |
(cos x) |
(cos x) |
(cos x) |
| Outputs |
|---|
(* 1/2 (pow x 2)) |
(*.f64 (*.f64 x x) #s(literal 1/2 binary64)) |
(* (pow x 2) (+ 1/2 (* -1/24 (pow x 2)))) |
(*.f64 (*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) x) |
(* (pow x 2) (+ 1/2 (* (pow x 2) (- (* 1/720 (pow x 2)) 1/24)))) |
(*.f64 (*.f64 (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 x x) #s(literal -1/24 binary64)) (*.f64 x x) #s(literal 1/2 binary64)) x) x) |
(* (pow x 2) (+ 1/2 (* (pow x 2) (- (* (pow x 2) (+ 1/720 (* -1/40320 (pow x 2)))) 1/24)))) |
(*.f64 (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal -1/40320 binary64) (*.f64 x x) #s(literal 1/720 binary64)) (*.f64 x x) #s(literal -1/24 binary64)) (*.f64 x x) #s(literal 1/2 binary64)) x) x) |
(* 1/2 (pow x 2)) |
(*.f64 (*.f64 x x) #s(literal 1/2 binary64)) |
(* 1/2 (pow x 2)) |
(*.f64 (*.f64 x x) #s(literal 1/2 binary64)) |
(* 1/2 (pow x 2)) |
(*.f64 (*.f64 x x) #s(literal 1/2 binary64)) |
(* 1/2 (pow x 2)) |
(*.f64 (*.f64 x x) #s(literal 1/2 binary64)) |
(pow x 2) |
(*.f64 x x) |
(pow x 2) |
(*.f64 x x) |
(pow x 2) |
(*.f64 x x) |
(pow x 2) |
(*.f64 x x) |
(* 1/2 (pow x 2)) |
(*.f64 (*.f64 x x) #s(literal 1/2 binary64)) |
(* (pow x 2) (+ 1/2 (* -1/24 (pow x 2)))) |
(*.f64 (*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) x) |
(* (pow x 2) (+ 1/2 (* (pow x 2) (- (* 1/720 (pow x 2)) 1/24)))) |
(*.f64 (*.f64 (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 x x) #s(literal -1/24 binary64)) (*.f64 x x) #s(literal 1/2 binary64)) x) x) |
(* (pow x 2) (+ 1/2 (* (pow x 2) (- (* (pow x 2) (+ 1/720 (* -1/40320 (pow x 2)))) 1/24)))) |
(*.f64 (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal -1/40320 binary64) (*.f64 x x) #s(literal 1/720 binary64)) (*.f64 x x) #s(literal -1/24 binary64)) (*.f64 x x) #s(literal 1/2 binary64)) x) x) |
(* 1/2 (pow x 2)) |
(*.f64 (*.f64 x x) #s(literal 1/2 binary64)) |
(* (pow x 2) (+ 1/2 (* -1/24 (pow x 2)))) |
(*.f64 (*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) x) |
(* (pow x 2) (+ 1/2 (* -1/24 (pow x 2)))) |
(*.f64 (*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) x) |
(* (pow x 2) (+ 1/2 (* -1/24 (pow x 2)))) |
(*.f64 (*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) x) |
(* 1/2 x) |
(*.f64 x #s(literal 1/2 binary64)) |
(* x (+ 1/2 (* -1/24 (pow x 2)))) |
(*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) |
(* x (+ 1/2 (* -1/24 (pow x 2)))) |
(*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) |
(* x (+ 1/2 (* -1/24 (pow x 2)))) |
(*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) |
1/2 |
#s(literal 1/2 binary64) |
(+ 1/2 (* -1/24 (pow x 2))) |
(fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) |
(+ 1/2 (* -1/24 (pow x 2))) |
(fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) |
(+ 1/2 (* -1/24 (pow x 2))) |
(fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) |
(* 1/2 (pow x 2)) |
(*.f64 (*.f64 x x) #s(literal 1/2 binary64)) |
(* (pow x 2) (+ 1/2 (* -1/24 (pow x 2)))) |
(*.f64 (*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) x) |
(* (pow x 2) (+ 1/2 (* (pow x 2) (- (* 1/720 (pow x 2)) 1/24)))) |
(*.f64 (*.f64 (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 x x) #s(literal -1/24 binary64)) (*.f64 x x) #s(literal 1/2 binary64)) x) x) |
(* (pow x 2) (+ 1/2 (* (pow x 2) (- (* (pow x 2) (+ 1/720 (* -1/40320 (pow x 2)))) 1/24)))) |
(*.f64 (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal -1/40320 binary64) (*.f64 x x) #s(literal 1/720 binary64)) (*.f64 x x) #s(literal -1/24 binary64)) (*.f64 x x) #s(literal 1/2 binary64)) x) x) |
x |
(* x (+ 1 (* -1/6 (pow x 2)))) |
(fma.f64 (pow.f64 x #s(literal 3 binary64)) #s(literal -1/6 binary64) x) |
(* x (+ 1 (* (pow x 2) (- (* 1/120 (pow x 2)) 1/6)))) |
(fma.f64 (pow.f64 x #s(literal 3 binary64)) (fma.f64 #s(literal 1/120 binary64) (*.f64 x x) #s(literal -1/6 binary64)) x) |
(* x (+ 1 (* (pow x 2) (- (* (pow x 2) (+ 1/120 (* -1/5040 (pow x 2)))) 1/6)))) |
(fma.f64 (pow.f64 x #s(literal 3 binary64)) (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 x x) #s(literal 1/120 binary64)) (*.f64 x x) #s(literal -1/6 binary64)) x) |
(* 1/2 x) |
(*.f64 x #s(literal 1/2 binary64)) |
(* x (+ 1/2 (* 1/24 (pow x 2)))) |
(*.f64 (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) |
(* x (+ 1/2 (* (pow x 2) (+ 1/24 (* 1/240 (pow x 2)))))) |
(*.f64 (fma.f64 (fma.f64 #s(literal 1/240 binary64) (*.f64 x x) #s(literal 1/24 binary64)) (*.f64 x x) #s(literal 1/2 binary64)) x) |
(* x (+ 1/2 (* (pow x 2) (+ 1/24 (* (pow x 2) (+ 1/240 (* 17/40320 (pow x 2)))))))) |
(*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 17/40320 binary64) (*.f64 x x) #s(literal 1/240 binary64)) (*.f64 x x) #s(literal 1/24 binary64)) (*.f64 x x) #s(literal 1/2 binary64)) x) |
(* 1/2 x) |
(*.f64 x #s(literal 1/2 binary64)) |
(* 1/2 x) |
(*.f64 x #s(literal 1/2 binary64)) |
(* 1/2 x) |
(*.f64 x #s(literal 1/2 binary64)) |
(* 1/2 x) |
(*.f64 x #s(literal 1/2 binary64)) |
(* 1/2 (pow x 2)) |
(*.f64 (*.f64 x x) #s(literal 1/2 binary64)) |
(* (pow x 2) (+ 1/2 (* -1/24 (pow x 2)))) |
(*.f64 (*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) x) |
(* (pow x 2) (+ 1/2 (* (pow x 2) (- (* 1/720 (pow x 2)) 1/24)))) |
(*.f64 (*.f64 (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 x x) #s(literal -1/24 binary64)) (*.f64 x x) #s(literal 1/2 binary64)) x) x) |
(* (pow x 2) (+ 1/2 (* (pow x 2) (- (* (pow x 2) (+ 1/720 (* -1/40320 (pow x 2)))) 1/24)))) |
(*.f64 (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal -1/40320 binary64) (*.f64 x x) #s(literal 1/720 binary64)) (*.f64 x x) #s(literal -1/24 binary64)) (*.f64 x x) #s(literal 1/2 binary64)) x) x) |
1 |
#s(literal 1 binary64) |
(+ 1 (* -1/2 (pow x 2))) |
(fma.f64 #s(literal -1/2 binary64) (*.f64 x x) #s(literal 1 binary64)) |
(+ 1 (* (pow x 2) (- (* 1/24 (pow x 2)) 1/2))) |
(fma.f64 (*.f64 (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64)) x) x #s(literal 1 binary64)) |
(+ 1 (* (pow x 2) (- (* (pow x 2) (+ 1/24 (* -1/720 (pow x 2)))) 1/2))) |
(fma.f64 (fma.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 x x) #s(literal 1/24 binary64)) (*.f64 x x) #s(literal -1/2 binary64)) (*.f64 x x) #s(literal 1 binary64)) |
(- 1 (cos x)) |
(-.f64 #s(literal 1 binary64) (cos.f64 x)) |
(- 1 (cos x)) |
(-.f64 #s(literal 1 binary64) (cos.f64 x)) |
(- 1 (cos x)) |
(-.f64 #s(literal 1 binary64) (cos.f64 x)) |
(- 1 (cos x)) |
(-.f64 #s(literal 1 binary64) (cos.f64 x)) |
(* 1/2 (pow x 2)) |
(*.f64 (*.f64 x x) #s(literal 1/2 binary64)) |
(* 1/2 (pow x 2)) |
(*.f64 (*.f64 x x) #s(literal 1/2 binary64)) |
(* 1/2 (pow x 2)) |
(*.f64 (*.f64 x x) #s(literal 1/2 binary64)) |
(* 1/2 (pow x 2)) |
(*.f64 (*.f64 x x) #s(literal 1/2 binary64)) |
(pow x 2) |
(*.f64 x x) |
(pow x 2) |
(*.f64 x x) |
(pow x 2) |
(*.f64 x x) |
(pow x 2) |
(*.f64 x x) |
(- 1 (cos x)) |
(-.f64 #s(literal 1 binary64) (cos.f64 x)) |
(- 1 (cos x)) |
(-.f64 #s(literal 1 binary64) (cos.f64 x)) |
(- 1 (cos x)) |
(-.f64 #s(literal 1 binary64) (cos.f64 x)) |
(- 1 (cos x)) |
(-.f64 #s(literal 1 binary64) (cos.f64 x)) |
(* -1/24 (pow x 4)) |
(*.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal -1/24 binary64)) |
(* (pow x 4) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) |
(*.f64 (*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) x) |
(* (pow x 4) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) |
(*.f64 (*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) x) |
(* (pow x 4) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) |
(*.f64 (*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) x) |
(* -1/24 (pow x 3)) |
(*.f64 (pow.f64 x #s(literal 3 binary64)) #s(literal -1/24 binary64)) |
(* (pow x 3) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) |
(*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) |
(* (pow x 3) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) |
(*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) |
(* (pow x 3) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) |
(*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) |
(* -1/24 (pow x 2)) |
(*.f64 #s(literal -1/24 binary64) (*.f64 x x)) |
(* (pow x 2) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) |
(fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) |
(* (pow x 2) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) |
(fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) |
(* (pow x 2) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) |
(fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) |
(/ (* (sin x) (sin (* 1/2 x))) (cos (* 1/2 x))) |
(*.f64 (/.f64 (sin.f64 x) (cos.f64 (*.f64 #s(literal -1/2 binary64) x))) (sin.f64 (*.f64 x #s(literal 1/2 binary64)))) |
(/ (* (sin x) (sin (* 1/2 x))) (cos (* 1/2 x))) |
(*.f64 (/.f64 (sin.f64 x) (cos.f64 (*.f64 #s(literal -1/2 binary64) x))) (sin.f64 (*.f64 x #s(literal 1/2 binary64)))) |
(/ (* (sin x) (sin (* 1/2 x))) (cos (* 1/2 x))) |
(*.f64 (/.f64 (sin.f64 x) (cos.f64 (*.f64 #s(literal -1/2 binary64) x))) (sin.f64 (*.f64 x #s(literal 1/2 binary64)))) |
(/ (* (sin x) (sin (* 1/2 x))) (cos (* 1/2 x))) |
(*.f64 (/.f64 (sin.f64 x) (cos.f64 (*.f64 #s(literal -1/2 binary64) x))) (sin.f64 (*.f64 x #s(literal 1/2 binary64)))) |
(sin x) |
(sin.f64 x) |
(sin x) |
(sin.f64 x) |
(sin x) |
(sin.f64 x) |
(sin x) |
(sin.f64 x) |
(/ (sin (* 1/2 x)) (cos (* 1/2 x))) |
(/.f64 (sin.f64 (*.f64 x #s(literal 1/2 binary64))) (cos.f64 (*.f64 #s(literal -1/2 binary64) x))) |
(/ (sin (* 1/2 x)) (cos (* 1/2 x))) |
(/.f64 (sin.f64 (*.f64 x #s(literal 1/2 binary64))) (cos.f64 (*.f64 #s(literal -1/2 binary64) x))) |
(/ (sin (* 1/2 x)) (cos (* 1/2 x))) |
(/.f64 (sin.f64 (*.f64 x #s(literal 1/2 binary64))) (cos.f64 (*.f64 #s(literal -1/2 binary64) x))) |
(/ (sin (* 1/2 x)) (cos (* 1/2 x))) |
(/.f64 (sin.f64 (*.f64 x #s(literal 1/2 binary64))) (cos.f64 (*.f64 #s(literal -1/2 binary64) x))) |
(* 1/2 x) |
(*.f64 x #s(literal 1/2 binary64)) |
(* 1/2 x) |
(*.f64 x #s(literal 1/2 binary64)) |
(* 1/2 x) |
(*.f64 x #s(literal 1/2 binary64)) |
(* 1/2 x) |
(*.f64 x #s(literal 1/2 binary64)) |
(- 1 (cos x)) |
(-.f64 #s(literal 1 binary64) (cos.f64 x)) |
(- 1 (cos x)) |
(-.f64 #s(literal 1 binary64) (cos.f64 x)) |
(- 1 (cos x)) |
(-.f64 #s(literal 1 binary64) (cos.f64 x)) |
(- 1 (cos x)) |
(-.f64 #s(literal 1 binary64) (cos.f64 x)) |
(cos x) |
(cos.f64 x) |
(cos x) |
(cos.f64 x) |
(cos x) |
(cos.f64 x) |
(cos x) |
(cos.f64 x) |
(- 1 (cos x)) |
(-.f64 #s(literal 1 binary64) (cos.f64 x)) |
(- 1 (cos x)) |
(-.f64 #s(literal 1 binary64) (cos.f64 x)) |
(- 1 (cos x)) |
(-.f64 #s(literal 1 binary64) (cos.f64 x)) |
(- 1 (cos x)) |
(-.f64 #s(literal 1 binary64) (cos.f64 x)) |
(* 1/2 (pow x 2)) |
(*.f64 (*.f64 x x) #s(literal 1/2 binary64)) |
(* 1/2 (pow x 2)) |
(*.f64 (*.f64 x x) #s(literal 1/2 binary64)) |
(* 1/2 (pow x 2)) |
(*.f64 (*.f64 x x) #s(literal 1/2 binary64)) |
(* 1/2 (pow x 2)) |
(*.f64 (*.f64 x x) #s(literal 1/2 binary64)) |
(pow x 2) |
(*.f64 x x) |
(pow x 2) |
(*.f64 x x) |
(pow x 2) |
(*.f64 x x) |
(pow x 2) |
(*.f64 x x) |
(- 1 (cos x)) |
(-.f64 #s(literal 1 binary64) (cos.f64 x)) |
(- 1 (cos x)) |
(-.f64 #s(literal 1 binary64) (cos.f64 x)) |
(- 1 (cos x)) |
(-.f64 #s(literal 1 binary64) (cos.f64 x)) |
(- 1 (cos x)) |
(-.f64 #s(literal 1 binary64) (cos.f64 x)) |
(* -1/24 (pow x 4)) |
(*.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal -1/24 binary64)) |
(* (pow x 4) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) |
(*.f64 (*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) x) |
(* (pow x 4) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) |
(*.f64 (*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) x) |
(* (pow x 4) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) |
(*.f64 (*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) x) |
(* -1/24 (pow x 3)) |
(*.f64 (pow.f64 x #s(literal 3 binary64)) #s(literal -1/24 binary64)) |
(* -1 (* (pow x 3) (- 1/24 (* 1/2 (/ 1 (pow x 2)))))) |
(*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) |
(* -1 (* (pow x 3) (- 1/24 (* 1/2 (/ 1 (pow x 2)))))) |
(*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) |
(* -1 (* (pow x 3) (- 1/24 (* 1/2 (/ 1 (pow x 2)))))) |
(*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) |
(* -1/24 (pow x 2)) |
(*.f64 #s(literal -1/24 binary64) (*.f64 x x)) |
(* (pow x 2) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) |
(fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) |
(* (pow x 2) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) |
(fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) |
(* (pow x 2) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) |
(fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) |
(/ (* (sin x) (sin (* 1/2 x))) (cos (* 1/2 x))) |
(*.f64 (/.f64 (sin.f64 x) (cos.f64 (*.f64 #s(literal -1/2 binary64) x))) (sin.f64 (*.f64 x #s(literal 1/2 binary64)))) |
(/ (* (sin x) (sin (* 1/2 x))) (cos (* 1/2 x))) |
(*.f64 (/.f64 (sin.f64 x) (cos.f64 (*.f64 #s(literal -1/2 binary64) x))) (sin.f64 (*.f64 x #s(literal 1/2 binary64)))) |
(/ (* (sin x) (sin (* 1/2 x))) (cos (* 1/2 x))) |
(*.f64 (/.f64 (sin.f64 x) (cos.f64 (*.f64 #s(literal -1/2 binary64) x))) (sin.f64 (*.f64 x #s(literal 1/2 binary64)))) |
(/ (* (sin x) (sin (* 1/2 x))) (cos (* 1/2 x))) |
(*.f64 (/.f64 (sin.f64 x) (cos.f64 (*.f64 #s(literal -1/2 binary64) x))) (sin.f64 (*.f64 x #s(literal 1/2 binary64)))) |
(sin x) |
(sin.f64 x) |
(sin x) |
(sin.f64 x) |
(sin x) |
(sin.f64 x) |
(sin x) |
(sin.f64 x) |
(/ (sin (* 1/2 x)) (cos (* 1/2 x))) |
(/.f64 (sin.f64 (*.f64 x #s(literal 1/2 binary64))) (cos.f64 (*.f64 #s(literal -1/2 binary64) x))) |
(/ (sin (* 1/2 x)) (cos (* 1/2 x))) |
(/.f64 (sin.f64 (*.f64 x #s(literal 1/2 binary64))) (cos.f64 (*.f64 #s(literal -1/2 binary64) x))) |
(/ (sin (* 1/2 x)) (cos (* 1/2 x))) |
(/.f64 (sin.f64 (*.f64 x #s(literal 1/2 binary64))) (cos.f64 (*.f64 #s(literal -1/2 binary64) x))) |
(/ (sin (* 1/2 x)) (cos (* 1/2 x))) |
(/.f64 (sin.f64 (*.f64 x #s(literal 1/2 binary64))) (cos.f64 (*.f64 #s(literal -1/2 binary64) x))) |
(* 1/2 x) |
(*.f64 x #s(literal 1/2 binary64)) |
(* 1/2 x) |
(*.f64 x #s(literal 1/2 binary64)) |
(* 1/2 x) |
(*.f64 x #s(literal 1/2 binary64)) |
(* 1/2 x) |
(*.f64 x #s(literal 1/2 binary64)) |
(- 1 (cos x)) |
(-.f64 #s(literal 1 binary64) (cos.f64 x)) |
(- 1 (cos x)) |
(-.f64 #s(literal 1 binary64) (cos.f64 x)) |
(- 1 (cos x)) |
(-.f64 #s(literal 1 binary64) (cos.f64 x)) |
(- 1 (cos x)) |
(-.f64 #s(literal 1 binary64) (cos.f64 x)) |
(cos x) |
(cos.f64 x) |
(cos x) |
(cos.f64 x) |
(cos x) |
(cos.f64 x) |
(cos x) |
(cos.f64 x) |
| 7 024× | lower-*.f32 |
| 7 014× | lower-*.f64 |
| 6 686× | lower-fma.f32 |
| 6 684× | lower-fma.f64 |
| 3 478× | lower-/.f32 |
Useful iterations: 3 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 20 | 83 |
| 0 | 31 | 83 |
| 1 | 96 | 83 |
| 2 | 513 | 83 |
| 3 | 3993 | 80 |
| 0 | 11844 | 80 |
| 1× | iter limit |
| 1× | node limit |
| 1× | iter limit |
| Inputs |
|---|
#s(approx (- 1 (cos x)) (*.f64 (*.f64 x x) #s(literal 1/2 binary64))) |
(*.f64 (*.f64 x x) #s(literal 1/2 binary64)) |
(*.f64 x x) |
#s(approx (- 1 (cos x)) (*.f64 (*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) x)) |
(*.f64 (*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) x) |
(*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) |
(fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) |
(*.f64 (sin.f64 x) (tan.f64 (/.f64 x #s(literal 2 binary64)))) |
(sin.f64 x) |
(tan.f64 (/.f64 x #s(literal 2 binary64))) |
(/.f64 x #s(literal 2 binary64)) |
(-.f64 #s(literal 1 binary64) #s(approx (cos x) #s(literal 1 binary64))) |
#s(approx (cos x) #s(literal 1 binary64)) |
| Outputs |
|---|
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
Compiled 10 978 to 1 740 computations (84.2% saved)
5 alts after pruning (3 fresh and 2 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 671 | 3 | 674 |
| Fresh | 0 | 0 | 0 |
| Picked | 2 | 2 | 4 |
| Done | 0 | 0 | 0 |
| Total | 673 | 5 | 678 |
| Status | Accuracy | Program |
|---|---|---|
| ✓ | 51.2% | (-.f64 #s(literal 1 binary64) #s(approx (cos x) #s(literal 1 binary64))) |
| ▶ | 4.1% | (+.f64 #s(approx (cos x) #s(literal 1 binary64)) #s(literal 1 binary64)) |
| ▶ | 100.0% | #s(approx (- 1 (cos x)) (*.f64 (*.f64 (fma.f64 (*.f64 x x) (/.f64 (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) x)) |
| ✓ | 100.0% | #s(approx (- 1 (cos x)) (*.f64 (*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) x)) |
| ▶ | 99.9% | #s(approx (- 1 (cos x)) (*.f64 (*.f64 #s(approx (+ (* -1/24 (* x x)) 1/2) #s(literal 1/2 binary64)) x) x)) |
Compiled 56 to 40 computations (28.6% saved)
| 1× | egg-herbie |
Found 10 expressions of interest:
| New | Metric | Score | Program |
|---|---|---|---|
| cost-diff | 0 | #s(approx (cos x) #s(literal 1 binary64)) | |
| cost-diff | 0 | (+.f64 #s(approx (cos x) #s(literal 1 binary64)) #s(literal 1 binary64)) | |
| cost-diff | 0 | (*.f64 (*.f64 (fma.f64 (*.f64 x x) (/.f64 (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) x) | |
| cost-diff | 0 | #s(approx (- 1 (cos x)) (*.f64 (*.f64 (fma.f64 (*.f64 x x) (/.f64 (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) x)) | |
| cost-diff | 128 | (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)))) | |
| cost-diff | 1408 | (*.f64 (fma.f64 (*.f64 x x) (/.f64 (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) | |
| cost-diff | 0 | #s(approx (+ (* -1/24 (* x x)) 1/2) #s(literal 1/2 binary64)) | |
| cost-diff | 0 | (*.f64 #s(approx (+ (* -1/24 (* x x)) 1/2) #s(literal 1/2 binary64)) x) | |
| cost-diff | 0 | (*.f64 (*.f64 #s(approx (+ (* -1/24 (* x x)) 1/2) #s(literal 1/2 binary64)) x) x) | |
| cost-diff | 0 | #s(approx (- 1 (cos x)) (*.f64 (*.f64 #s(approx (+ (* -1/24 (* x x)) 1/2) #s(literal 1/2 binary64)) x) x)) |
| 16 180× | lower-fma.f32 |
| 16 174× | lower-fma.f64 |
| 2 468× | lower-*.f32 |
| 2 456× | lower-*.f64 |
| 1 188× | lower-+.f32 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 30 | 235 |
| 0 | 46 | 230 |
| 1 | 86 | 230 |
| 2 | 143 | 230 |
| 3 | 320 | 226 |
| 4 | 898 | 197 |
| 5 | 2518 | 197 |
| 6 | 4590 | 197 |
| 7 | 6099 | 197 |
| 8 | 6660 | 197 |
| 9 | 6810 | 197 |
| 10 | 6875 | 197 |
| 11 | 7098 | 197 |
| 0 | 8025 | 189 |
| 1× | iter limit |
| 1× | node limit |
| 1× | iter limit |
| Inputs |
|---|
#s(approx (- 1 (cos x)) (*.f64 (*.f64 #s(approx (+ (* -1/24 (* x x)) 1/2) #s(literal 1/2 binary64)) x) x)) |
(*.f64 (*.f64 #s(approx (+ (* -1/24 (* x x)) 1/2) #s(literal 1/2 binary64)) x) x) |
(*.f64 #s(approx (+ (* -1/24 (* x x)) 1/2) #s(literal 1/2 binary64)) x) |
#s(approx (+ (* -1/24 (* x x)) 1/2) #s(literal 1/2 binary64)) |
#s(literal 1/2 binary64) |
x |
#s(approx (- 1 (cos x)) (*.f64 (*.f64 (fma.f64 (*.f64 x x) (/.f64 (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) x)) |
(*.f64 (*.f64 (fma.f64 (*.f64 x x) (/.f64 (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) x) |
(*.f64 (fma.f64 (*.f64 x x) (/.f64 (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) |
(fma.f64 (*.f64 x x) (/.f64 (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) |
(*.f64 x x) |
x |
(/.f64 (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64))) |
(*.f64 #s(literal 1/576 binary64) (*.f64 x x)) |
#s(literal 1/576 binary64) |
(fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64)) |
#s(literal -1/24 binary64) |
#s(literal -1/2 binary64) |
(neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)))) |
(/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))) |
#s(literal -1/4 binary64) |
(fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) |
#s(literal 1/24 binary64) |
#s(literal 1/2 binary64) |
(+.f64 #s(approx (cos x) #s(literal 1 binary64)) #s(literal 1 binary64)) |
#s(approx (cos x) #s(literal 1 binary64)) |
#s(literal 1 binary64) |
| Outputs |
|---|
#s(approx (- 1 (cos x)) (*.f64 (*.f64 #s(approx (+ (* -1/24 (* x x)) 1/2) #s(literal 1/2 binary64)) x) x)) |
(*.f64 (*.f64 #s(approx (+ (* -1/24 (* x x)) 1/2) #s(literal 1/2 binary64)) x) x) |
(*.f64 #s(approx (+ (* -1/24 (* x x)) 1/2) #s(literal 1/2 binary64)) x) |
#s(approx (+ (* -1/24 (* x x)) 1/2) #s(literal 1/2 binary64)) |
#s(literal 1/2 binary64) |
x |
#s(approx (- 1 (cos x)) (*.f64 (*.f64 (fma.f64 (*.f64 x x) (/.f64 (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) x)) |
#s(approx (- 1 (cos x)) (*.f64 (*.f64 (fma.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal 1/576 binary64) #s(literal -1/4 binary64)) x) (/.f64 x (fma.f64 (*.f64 x x) #s(literal -1/24 binary64) #s(literal -1/2 binary64))))) |
(*.f64 (*.f64 (fma.f64 (*.f64 x x) (/.f64 (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) x) |
(*.f64 (*.f64 (fma.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal 1/576 binary64) #s(literal -1/4 binary64)) x) (/.f64 x (fma.f64 (*.f64 x x) #s(literal -1/24 binary64) #s(literal -1/2 binary64)))) |
(*.f64 (fma.f64 (*.f64 x x) (/.f64 (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) |
(*.f64 (fma.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal 1/576 binary64) #s(literal -1/4 binary64)) (/.f64 x (fma.f64 (*.f64 x x) #s(literal -1/24 binary64) #s(literal -1/2 binary64)))) |
(fma.f64 (*.f64 x x) (/.f64 (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) |
(fma.f64 (/.f64 #s(literal -1/576 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))) (pow.f64 x #s(literal 4 binary64)) (/.f64 #s(literal 1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)))) |
(*.f64 x x) |
x |
(/.f64 (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64))) |
(*.f64 (*.f64 #s(literal -1/576 binary64) x) (/.f64 x (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)))) |
(*.f64 #s(literal 1/576 binary64) (*.f64 x x)) |
#s(literal 1/576 binary64) |
(fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64)) |
(fma.f64 (*.f64 x x) #s(literal -1/24 binary64) #s(literal -1/2 binary64)) |
#s(literal -1/24 binary64) |
#s(literal -1/2 binary64) |
(neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)))) |
(/.f64 #s(literal 1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))) |
(/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))) |
(/.f64 #s(literal 1/4 binary64) (fma.f64 (*.f64 x x) #s(literal -1/24 binary64) #s(literal -1/2 binary64))) |
#s(literal -1/4 binary64) |
(fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) |
#s(literal 1/24 binary64) |
#s(literal 1/2 binary64) |
(+.f64 #s(approx (cos x) #s(literal 1 binary64)) #s(literal 1 binary64)) |
#s(approx (cos x) #s(literal 1 binary64)) |
#s(literal 1 binary64) |
Found 10 expressions of interest:
| New | Metric | Score | Program |
|---|---|---|---|
| accuracy | 0 | (+.f64 #s(approx (cos x) #s(literal 1 binary64)) #s(literal 1 binary64)) | |
| accuracy | 0.10356277706585662 | #s(approx (cos x) #s(literal 1 binary64)) | |
| accuracy | 0.00390625 | (*.f64 (*.f64 (fma.f64 (*.f64 x x) (/.f64 (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) x) | |
| accuracy | 0.0078125 | (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))) | |
| accuracy | 0.015625 | (/.f64 (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64))) | |
| accuracy | 0.19207001953688402 | (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) | |
| accuracy | 0 | (*.f64 #s(approx (+ (* -1/24 (* x x)) 1/2) #s(literal 1/2 binary64)) x) | |
| accuracy | 0 | #s(approx (- 1 (cos x)) (*.f64 (*.f64 #s(approx (+ (* -1/24 (* x x)) 1/2) #s(literal 1/2 binary64)) x) x)) | |
| accuracy | 0.00390625 | (*.f64 (*.f64 #s(approx (+ (* -1/24 (* x x)) 1/2) #s(literal 1/2 binary64)) x) x) | |
| accuracy | 0.0837733937827108 | #s(approx (+ (* -1/24 (* x x)) 1/2) #s(literal 1/2 binary64)) |
| 188.0ms | 174× | 2 | valid |
| 59.0ms | 81× | 1 | valid |
| 0.0ms | 1× | 0 | valid |
Compiled 197 to 29 computations (85.3% saved)
ival-mult: 37.0ms (22.1% of total)ival-cos: 36.0ms (21.5% of total)adjust: 30.0ms (17.9% of total)ival-sub: 28.0ms (16.7% of total)ival-add: 13.0ms (7.8% of total)const: 12.0ms (7.2% of total)ival-div: 7.0ms (4.2% of total)ival-neg: 3.0ms (1.8% of total)exact: 1.0ms (0.6% of total)ival-assert: 0.0ms (0% of total)ival-true: 0.0ms (0% of total)| Inputs |
|---|
#s(alt #s(approx (- 1 (cos x)) (*.f64 (*.f64 #s(approx (+ (* -1/24 (* x x)) 1/2) #s(literal 1/2 binary64)) x) x)) (patch #s(approx (- 1 (cos x)) (*.f64 (*.f64 #s(approx (+ (* -1/24 (* x x)) 1/2) #s(literal 1/2 binary64)) x) x)) #<representation binary64>) () ()) |
#s(alt (*.f64 (*.f64 #s(approx (+ (* -1/24 (* x x)) 1/2) #s(literal 1/2 binary64)) x) x) (patch (*.f64 (*.f64 #s(approx (+ (* -1/24 (* x x)) 1/2) #s(literal 1/2 binary64)) x) x) #<representation binary64>) () ()) |
#s(alt (*.f64 #s(approx (+ (* -1/24 (* x x)) 1/2) #s(literal 1/2 binary64)) x) (patch (*.f64 #s(approx (+ (* -1/24 (* x x)) 1/2) #s(literal 1/2 binary64)) x) #<representation binary64>) () ()) |
#s(alt #s(approx (+ (* -1/24 (* x x)) 1/2) #s(literal 1/2 binary64)) (patch #s(approx (+ (* -1/24 (* x x)) 1/2) #s(literal 1/2 binary64)) #<representation binary64>) () ()) |
#s(alt (*.f64 (fma.f64 (*.f64 x x) (/.f64 (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) (patch (*.f64 (fma.f64 (*.f64 x x) (/.f64 (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) #<representation binary64>) () ()) |
#s(alt (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)))) (patch (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)))) #<representation binary64>) () ()) |
#s(alt #s(approx (- 1 (cos x)) (*.f64 (*.f64 (fma.f64 (*.f64 x x) (/.f64 (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) x)) (patch #s(approx (- 1 (cos x)) (*.f64 (*.f64 (fma.f64 (*.f64 x x) (/.f64 (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) x)) #<representation binary64>) () ()) |
#s(alt (*.f64 (*.f64 (fma.f64 (*.f64 x x) (/.f64 (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) x) (patch (*.f64 (*.f64 (fma.f64 (*.f64 x x) (/.f64 (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) x) #<representation binary64>) () ()) |
#s(alt (+.f64 #s(approx (cos x) #s(literal 1 binary64)) #s(literal 1 binary64)) (patch (+.f64 #s(approx (cos x) #s(literal 1 binary64)) #s(literal 1 binary64)) #<representation binary64>) () ()) |
#s(alt #s(approx (cos x) #s(literal 1 binary64)) (patch #s(approx (cos x) #s(literal 1 binary64)) #<representation binary64>) () ()) |
#s(alt (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) (patch (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) #<representation binary64>) () ()) |
#s(alt (/.f64 (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64))) (patch (/.f64 (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64))) #<representation binary64>) () ()) |
#s(alt (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))) (patch (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))) #<representation binary64>) () ()) |
| Outputs |
|---|
#s(alt (* 1/2 (pow x 2)) (taylor 0 x) (#s(alt #s(approx (- 1 (cos x)) (*.f64 (*.f64 #s(approx (+ (* -1/24 (* x x)) 1/2) #s(literal 1/2 binary64)) x) x)) (patch #s(approx (- 1 (cos x)) (*.f64 (*.f64 #s(approx (+ (* -1/24 (* x x)) 1/2) #s(literal 1/2 binary64)) x) x)) #<representation binary64>) () ())) ()) |
#s(alt (* (pow x 2) (+ 1/2 (* -1/24 (pow x 2)))) (taylor 0 x) (#s(alt #s(approx (- 1 (cos x)) (*.f64 (*.f64 #s(approx (+ (* -1/24 (* x x)) 1/2) #s(literal 1/2 binary64)) x) x)) (patch #s(approx (- 1 (cos x)) (*.f64 (*.f64 #s(approx (+ (* -1/24 (* x x)) 1/2) #s(literal 1/2 binary64)) x) x)) #<representation binary64>) () ())) ()) |
#s(alt (* (pow x 2) (+ 1/2 (* (pow x 2) (- (* 1/720 (pow x 2)) 1/24)))) (taylor 0 x) (#s(alt #s(approx (- 1 (cos x)) (*.f64 (*.f64 #s(approx (+ (* -1/24 (* x x)) 1/2) #s(literal 1/2 binary64)) x) x)) (patch #s(approx (- 1 (cos x)) (*.f64 (*.f64 #s(approx (+ (* -1/24 (* x x)) 1/2) #s(literal 1/2 binary64)) x) x)) #<representation binary64>) () ())) ()) |
#s(alt (* (pow x 2) (+ 1/2 (* (pow x 2) (- (* (pow x 2) (+ 1/720 (* -1/40320 (pow x 2)))) 1/24)))) (taylor 0 x) (#s(alt #s(approx (- 1 (cos x)) (*.f64 (*.f64 #s(approx (+ (* -1/24 (* x x)) 1/2) #s(literal 1/2 binary64)) x) x)) (patch #s(approx (- 1 (cos x)) (*.f64 (*.f64 #s(approx (+ (* -1/24 (* x x)) 1/2) #s(literal 1/2 binary64)) x) x)) #<representation binary64>) () ())) ()) |
#s(alt (* 1/2 (pow x 2)) (taylor 0 x) (#s(alt (*.f64 (*.f64 #s(approx (+ (* -1/24 (* x x)) 1/2) #s(literal 1/2 binary64)) x) x) (patch (*.f64 (*.f64 #s(approx (+ (* -1/24 (* x x)) 1/2) #s(literal 1/2 binary64)) x) x) #<representation binary64>) () ())) ()) |
#s(alt (* (pow x 2) (+ 1/2 (* -1/24 (pow x 2)))) (taylor 0 x) (#s(alt (*.f64 (*.f64 #s(approx (+ (* -1/24 (* x x)) 1/2) #s(literal 1/2 binary64)) x) x) (patch (*.f64 (*.f64 #s(approx (+ (* -1/24 (* x x)) 1/2) #s(literal 1/2 binary64)) x) x) #<representation binary64>) () ())) ()) |
#s(alt (* (pow x 2) (+ 1/2 (* -1/24 (pow x 2)))) (taylor 0 x) (#s(alt (*.f64 (*.f64 #s(approx (+ (* -1/24 (* x x)) 1/2) #s(literal 1/2 binary64)) x) x) (patch (*.f64 (*.f64 #s(approx (+ (* -1/24 (* x x)) 1/2) #s(literal 1/2 binary64)) x) x) #<representation binary64>) () ())) ()) |
#s(alt (* (pow x 2) (+ 1/2 (* -1/24 (pow x 2)))) (taylor 0 x) (#s(alt (*.f64 (*.f64 #s(approx (+ (* -1/24 (* x x)) 1/2) #s(literal 1/2 binary64)) x) x) (patch (*.f64 (*.f64 #s(approx (+ (* -1/24 (* x x)) 1/2) #s(literal 1/2 binary64)) x) x) #<representation binary64>) () ())) ()) |
#s(alt (* 1/2 x) (taylor 0 x) (#s(alt (*.f64 #s(approx (+ (* -1/24 (* x x)) 1/2) #s(literal 1/2 binary64)) x) (patch (*.f64 #s(approx (+ (* -1/24 (* x x)) 1/2) #s(literal 1/2 binary64)) x) #<representation binary64>) () ())) ()) |
#s(alt (* x (+ 1/2 (* -1/24 (pow x 2)))) (taylor 0 x) (#s(alt (*.f64 #s(approx (+ (* -1/24 (* x x)) 1/2) #s(literal 1/2 binary64)) x) (patch (*.f64 #s(approx (+ (* -1/24 (* x x)) 1/2) #s(literal 1/2 binary64)) x) #<representation binary64>) () ())) ()) |
#s(alt (* x (+ 1/2 (* -1/24 (pow x 2)))) (taylor 0 x) (#s(alt (*.f64 #s(approx (+ (* -1/24 (* x x)) 1/2) #s(literal 1/2 binary64)) x) (patch (*.f64 #s(approx (+ (* -1/24 (* x x)) 1/2) #s(literal 1/2 binary64)) x) #<representation binary64>) () ())) ()) |
#s(alt (* x (+ 1/2 (* -1/24 (pow x 2)))) (taylor 0 x) (#s(alt (*.f64 #s(approx (+ (* -1/24 (* x x)) 1/2) #s(literal 1/2 binary64)) x) (patch (*.f64 #s(approx (+ (* -1/24 (* x x)) 1/2) #s(literal 1/2 binary64)) x) #<representation binary64>) () ())) ()) |
#s(alt 1/2 (taylor 0 x) (#s(alt #s(approx (+ (* -1/24 (* x x)) 1/2) #s(literal 1/2 binary64)) (patch #s(approx (+ (* -1/24 (* x x)) 1/2) #s(literal 1/2 binary64)) #<representation binary64>) () ())) ()) |
#s(alt (+ 1/2 (* -1/24 (pow x 2))) (taylor 0 x) (#s(alt #s(approx (+ (* -1/24 (* x x)) 1/2) #s(literal 1/2 binary64)) (patch #s(approx (+ (* -1/24 (* x x)) 1/2) #s(literal 1/2 binary64)) #<representation binary64>) () ())) ()) |
#s(alt (+ 1/2 (* -1/24 (pow x 2))) (taylor 0 x) (#s(alt #s(approx (+ (* -1/24 (* x x)) 1/2) #s(literal 1/2 binary64)) (patch #s(approx (+ (* -1/24 (* x x)) 1/2) #s(literal 1/2 binary64)) #<representation binary64>) () ())) ()) |
#s(alt (+ 1/2 (* -1/24 (pow x 2))) (taylor 0 x) (#s(alt #s(approx (+ (* -1/24 (* x x)) 1/2) #s(literal 1/2 binary64)) (patch #s(approx (+ (* -1/24 (* x x)) 1/2) #s(literal 1/2 binary64)) #<representation binary64>) () ())) ()) |
#s(alt (* 1/2 x) (taylor 0 x) (#s(alt (*.f64 (fma.f64 (*.f64 x x) (/.f64 (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) (patch (*.f64 (fma.f64 (*.f64 x x) (/.f64 (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) #<representation binary64>) () ())) ()) |
#s(alt (* x (+ 1/2 (* -1/24 (pow x 2)))) (taylor 0 x) (#s(alt (*.f64 (fma.f64 (*.f64 x x) (/.f64 (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) (patch (*.f64 (fma.f64 (*.f64 x x) (/.f64 (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) #<representation binary64>) () ())) ()) |
#s(alt (* x (+ 1/2 (* -1/24 (pow x 2)))) (taylor 0 x) (#s(alt (*.f64 (fma.f64 (*.f64 x x) (/.f64 (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) (patch (*.f64 (fma.f64 (*.f64 x x) (/.f64 (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) #<representation binary64>) () ())) ()) |
#s(alt (* x (+ 1/2 (* -1/24 (pow x 2)))) (taylor 0 x) (#s(alt (*.f64 (fma.f64 (*.f64 x x) (/.f64 (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) (patch (*.f64 (fma.f64 (*.f64 x x) (/.f64 (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) #<representation binary64>) () ())) ()) |
#s(alt 1/2 (taylor 0 x) (#s(alt (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)))) (patch (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)))) #<representation binary64>) () ())) ()) |
#s(alt (+ 1/2 (* -1/24 (pow x 2))) (taylor 0 x) (#s(alt (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)))) (patch (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)))) #<representation binary64>) () ())) ()) |
#s(alt (+ 1/2 (* (pow x 2) (- (* 1/288 (pow x 2)) 1/24))) (taylor 0 x) (#s(alt (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)))) (patch (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)))) #<representation binary64>) () ())) ()) |
#s(alt (+ 1/2 (* (pow x 2) (- (* (pow x 2) (+ 1/288 (* -1/3456 (pow x 2)))) 1/24))) (taylor 0 x) (#s(alt (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)))) (patch (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)))) #<representation binary64>) () ())) ()) |
#s(alt (* 1/2 (pow x 2)) (taylor 0 x) (#s(alt #s(approx (- 1 (cos x)) (*.f64 (*.f64 (fma.f64 (*.f64 x x) (/.f64 (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) x)) (patch #s(approx (- 1 (cos x)) (*.f64 (*.f64 (fma.f64 (*.f64 x x) (/.f64 (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) x)) #<representation binary64>) () ())) ()) |
#s(alt (* (pow x 2) (+ 1/2 (* -1/24 (pow x 2)))) (taylor 0 x) (#s(alt #s(approx (- 1 (cos x)) (*.f64 (*.f64 (fma.f64 (*.f64 x x) (/.f64 (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) x)) (patch #s(approx (- 1 (cos x)) (*.f64 (*.f64 (fma.f64 (*.f64 x x) (/.f64 (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) x)) #<representation binary64>) () ())) ()) |
#s(alt (* (pow x 2) (+ 1/2 (* (pow x 2) (- (* 1/720 (pow x 2)) 1/24)))) (taylor 0 x) (#s(alt #s(approx (- 1 (cos x)) (*.f64 (*.f64 (fma.f64 (*.f64 x x) (/.f64 (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) x)) (patch #s(approx (- 1 (cos x)) (*.f64 (*.f64 (fma.f64 (*.f64 x x) (/.f64 (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) x)) #<representation binary64>) () ())) ()) |
#s(alt (* (pow x 2) (+ 1/2 (* (pow x 2) (- (* (pow x 2) (+ 1/720 (* -1/40320 (pow x 2)))) 1/24)))) (taylor 0 x) (#s(alt #s(approx (- 1 (cos x)) (*.f64 (*.f64 (fma.f64 (*.f64 x x) (/.f64 (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) x)) (patch #s(approx (- 1 (cos x)) (*.f64 (*.f64 (fma.f64 (*.f64 x x) (/.f64 (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) x)) #<representation binary64>) () ())) ()) |
#s(alt (* 1/2 (pow x 2)) (taylor 0 x) (#s(alt (*.f64 (*.f64 (fma.f64 (*.f64 x x) (/.f64 (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) x) (patch (*.f64 (*.f64 (fma.f64 (*.f64 x x) (/.f64 (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) x) #<representation binary64>) () ())) ()) |
#s(alt (* (pow x 2) (+ 1/2 (* -1/24 (pow x 2)))) (taylor 0 x) (#s(alt (*.f64 (*.f64 (fma.f64 (*.f64 x x) (/.f64 (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) x) (patch (*.f64 (*.f64 (fma.f64 (*.f64 x x) (/.f64 (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) x) #<representation binary64>) () ())) ()) |
#s(alt (* (pow x 2) (+ 1/2 (* -1/24 (pow x 2)))) (taylor 0 x) (#s(alt (*.f64 (*.f64 (fma.f64 (*.f64 x x) (/.f64 (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) x) (patch (*.f64 (*.f64 (fma.f64 (*.f64 x x) (/.f64 (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) x) #<representation binary64>) () ())) ()) |
#s(alt (* (pow x 2) (+ 1/2 (* -1/24 (pow x 2)))) (taylor 0 x) (#s(alt (*.f64 (*.f64 (fma.f64 (*.f64 x x) (/.f64 (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) x) (patch (*.f64 (*.f64 (fma.f64 (*.f64 x x) (/.f64 (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) x) #<representation binary64>) () ())) ()) |
#s(alt 2 (taylor 0 x) (#s(alt (+.f64 #s(approx (cos x) #s(literal 1 binary64)) #s(literal 1 binary64)) (patch (+.f64 #s(approx (cos x) #s(literal 1 binary64)) #s(literal 1 binary64)) #<representation binary64>) () ())) ()) |
#s(alt (+ 2 (* -1/2 (pow x 2))) (taylor 0 x) (#s(alt (+.f64 #s(approx (cos x) #s(literal 1 binary64)) #s(literal 1 binary64)) (patch (+.f64 #s(approx (cos x) #s(literal 1 binary64)) #s(literal 1 binary64)) #<representation binary64>) () ())) ()) |
#s(alt (+ 2 (* (pow x 2) (- (* 1/24 (pow x 2)) 1/2))) (taylor 0 x) (#s(alt (+.f64 #s(approx (cos x) #s(literal 1 binary64)) #s(literal 1 binary64)) (patch (+.f64 #s(approx (cos x) #s(literal 1 binary64)) #s(literal 1 binary64)) #<representation binary64>) () ())) ()) |
#s(alt (+ 2 (* (pow x 2) (- (* (pow x 2) (+ 1/24 (* -1/720 (pow x 2)))) 1/2))) (taylor 0 x) (#s(alt (+.f64 #s(approx (cos x) #s(literal 1 binary64)) #s(literal 1 binary64)) (patch (+.f64 #s(approx (cos x) #s(literal 1 binary64)) #s(literal 1 binary64)) #<representation binary64>) () ())) ()) |
#s(alt 1 (taylor 0 x) (#s(alt #s(approx (cos x) #s(literal 1 binary64)) (patch #s(approx (cos x) #s(literal 1 binary64)) #<representation binary64>) () ())) ()) |
#s(alt (+ 1 (* -1/2 (pow x 2))) (taylor 0 x) (#s(alt #s(approx (cos x) #s(literal 1 binary64)) (patch #s(approx (cos x) #s(literal 1 binary64)) #<representation binary64>) () ())) ()) |
#s(alt (+ 1 (* (pow x 2) (- (* 1/24 (pow x 2)) 1/2))) (taylor 0 x) (#s(alt #s(approx (cos x) #s(literal 1 binary64)) (patch #s(approx (cos x) #s(literal 1 binary64)) #<representation binary64>) () ())) ()) |
#s(alt (+ 1 (* (pow x 2) (- (* (pow x 2) (+ 1/24 (* -1/720 (pow x 2)))) 1/2))) (taylor 0 x) (#s(alt #s(approx (cos x) #s(literal 1 binary64)) (patch #s(approx (cos x) #s(literal 1 binary64)) #<representation binary64>) () ())) ()) |
#s(alt (* 1/576 (pow x 2)) (taylor 0 x) (#s(alt (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) (patch (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) #<representation binary64>) () ())) ()) |
#s(alt (* 1/576 (pow x 2)) (taylor 0 x) (#s(alt (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) (patch (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) #<representation binary64>) () ())) ()) |
#s(alt (* 1/576 (pow x 2)) (taylor 0 x) (#s(alt (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) (patch (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) #<representation binary64>) () ())) ()) |
#s(alt (* 1/576 (pow x 2)) (taylor 0 x) (#s(alt (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) (patch (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) #<representation binary64>) () ())) ()) |
#s(alt (* -1/288 (pow x 2)) (taylor 0 x) (#s(alt (/.f64 (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64))) (patch (/.f64 (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64))) #<representation binary64>) () ())) ()) |
#s(alt (* (pow x 2) (- (* 1/3456 (pow x 2)) 1/288)) (taylor 0 x) (#s(alt (/.f64 (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64))) (patch (/.f64 (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64))) #<representation binary64>) () ())) ()) |
#s(alt (* (pow x 2) (- (* (pow x 2) (+ 1/3456 (* -1/41472 (pow x 2)))) 1/288)) (taylor 0 x) (#s(alt (/.f64 (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64))) (patch (/.f64 (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64))) #<representation binary64>) () ())) ()) |
#s(alt (* (pow x 2) (- (* (pow x 2) (+ 1/3456 (* (pow x 2) (- (* 1/497664 (pow x 2)) 1/41472)))) 1/288)) (taylor 0 x) (#s(alt (/.f64 (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64))) (patch (/.f64 (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64))) #<representation binary64>) () ())) ()) |
#s(alt -1/2 (taylor 0 x) (#s(alt (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))) (patch (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))) #<representation binary64>) () ())) ()) |
#s(alt (- (* 1/24 (pow x 2)) 1/2) (taylor 0 x) (#s(alt (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))) (patch (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))) #<representation binary64>) () ())) ()) |
#s(alt (- (* (pow x 2) (+ 1/24 (* -1/288 (pow x 2)))) 1/2) (taylor 0 x) (#s(alt (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))) (patch (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))) #<representation binary64>) () ())) ()) |
#s(alt (- (* (pow x 2) (+ 1/24 (* (pow x 2) (- (* 1/3456 (pow x 2)) 1/288)))) 1/2) (taylor 0 x) (#s(alt (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))) (patch (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))) #<representation binary64>) () ())) ()) |
#s(alt (- 1 (cos x)) (taylor inf x) (#s(alt #s(approx (- 1 (cos x)) (*.f64 (*.f64 #s(approx (+ (* -1/24 (* x x)) 1/2) #s(literal 1/2 binary64)) x) x)) (patch #s(approx (- 1 (cos x)) (*.f64 (*.f64 #s(approx (+ (* -1/24 (* x x)) 1/2) #s(literal 1/2 binary64)) x) x)) #<representation binary64>) () ())) ()) |
#s(alt (- 1 (cos x)) (taylor inf x) (#s(alt #s(approx (- 1 (cos x)) (*.f64 (*.f64 #s(approx (+ (* -1/24 (* x x)) 1/2) #s(literal 1/2 binary64)) x) x)) (patch #s(approx (- 1 (cos x)) (*.f64 (*.f64 #s(approx (+ (* -1/24 (* x x)) 1/2) #s(literal 1/2 binary64)) x) x)) #<representation binary64>) () ())) ()) |
#s(alt (- 1 (cos x)) (taylor inf x) (#s(alt #s(approx (- 1 (cos x)) (*.f64 (*.f64 #s(approx (+ (* -1/24 (* x x)) 1/2) #s(literal 1/2 binary64)) x) x)) (patch #s(approx (- 1 (cos x)) (*.f64 (*.f64 #s(approx (+ (* -1/24 (* x x)) 1/2) #s(literal 1/2 binary64)) x) x)) #<representation binary64>) () ())) ()) |
#s(alt (- 1 (cos x)) (taylor inf x) (#s(alt #s(approx (- 1 (cos x)) (*.f64 (*.f64 #s(approx (+ (* -1/24 (* x x)) 1/2) #s(literal 1/2 binary64)) x) x)) (patch #s(approx (- 1 (cos x)) (*.f64 (*.f64 #s(approx (+ (* -1/24 (* x x)) 1/2) #s(literal 1/2 binary64)) x) x)) #<representation binary64>) () ())) ()) |
#s(alt (* -1/24 (pow x 4)) (taylor inf x) (#s(alt (*.f64 (*.f64 #s(approx (+ (* -1/24 (* x x)) 1/2) #s(literal 1/2 binary64)) x) x) (patch (*.f64 (*.f64 #s(approx (+ (* -1/24 (* x x)) 1/2) #s(literal 1/2 binary64)) x) x) #<representation binary64>) () ())) ()) |
#s(alt (* (pow x 4) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) (taylor inf x) (#s(alt (*.f64 (*.f64 #s(approx (+ (* -1/24 (* x x)) 1/2) #s(literal 1/2 binary64)) x) x) (patch (*.f64 (*.f64 #s(approx (+ (* -1/24 (* x x)) 1/2) #s(literal 1/2 binary64)) x) x) #<representation binary64>) () ())) ()) |
#s(alt (* (pow x 4) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) (taylor inf x) (#s(alt (*.f64 (*.f64 #s(approx (+ (* -1/24 (* x x)) 1/2) #s(literal 1/2 binary64)) x) x) (patch (*.f64 (*.f64 #s(approx (+ (* -1/24 (* x x)) 1/2) #s(literal 1/2 binary64)) x) x) #<representation binary64>) () ())) ()) |
#s(alt (* (pow x 4) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) (taylor inf x) (#s(alt (*.f64 (*.f64 #s(approx (+ (* -1/24 (* x x)) 1/2) #s(literal 1/2 binary64)) x) x) (patch (*.f64 (*.f64 #s(approx (+ (* -1/24 (* x x)) 1/2) #s(literal 1/2 binary64)) x) x) #<representation binary64>) () ())) ()) |
#s(alt (* -1/24 (pow x 3)) (taylor inf x) (#s(alt (*.f64 #s(approx (+ (* -1/24 (* x x)) 1/2) #s(literal 1/2 binary64)) x) (patch (*.f64 #s(approx (+ (* -1/24 (* x x)) 1/2) #s(literal 1/2 binary64)) x) #<representation binary64>) () ())) ()) |
#s(alt (* (pow x 3) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) (taylor inf x) (#s(alt (*.f64 #s(approx (+ (* -1/24 (* x x)) 1/2) #s(literal 1/2 binary64)) x) (patch (*.f64 #s(approx (+ (* -1/24 (* x x)) 1/2) #s(literal 1/2 binary64)) x) #<representation binary64>) () ())) ()) |
#s(alt (* (pow x 3) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) (taylor inf x) (#s(alt (*.f64 #s(approx (+ (* -1/24 (* x x)) 1/2) #s(literal 1/2 binary64)) x) (patch (*.f64 #s(approx (+ (* -1/24 (* x x)) 1/2) #s(literal 1/2 binary64)) x) #<representation binary64>) () ())) ()) |
#s(alt (* (pow x 3) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) (taylor inf x) (#s(alt (*.f64 #s(approx (+ (* -1/24 (* x x)) 1/2) #s(literal 1/2 binary64)) x) (patch (*.f64 #s(approx (+ (* -1/24 (* x x)) 1/2) #s(literal 1/2 binary64)) x) #<representation binary64>) () ())) ()) |
#s(alt (* -1/24 (pow x 2)) (taylor inf x) (#s(alt #s(approx (+ (* -1/24 (* x x)) 1/2) #s(literal 1/2 binary64)) (patch #s(approx (+ (* -1/24 (* x x)) 1/2) #s(literal 1/2 binary64)) #<representation binary64>) () ())) ()) |
#s(alt (* (pow x 2) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) (taylor inf x) (#s(alt #s(approx (+ (* -1/24 (* x x)) 1/2) #s(literal 1/2 binary64)) (patch #s(approx (+ (* -1/24 (* x x)) 1/2) #s(literal 1/2 binary64)) #<representation binary64>) () ())) ()) |
#s(alt (* (pow x 2) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) (taylor inf x) (#s(alt #s(approx (+ (* -1/24 (* x x)) 1/2) #s(literal 1/2 binary64)) (patch #s(approx (+ (* -1/24 (* x x)) 1/2) #s(literal 1/2 binary64)) #<representation binary64>) () ())) ()) |
#s(alt (* (pow x 2) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) (taylor inf x) (#s(alt #s(approx (+ (* -1/24 (* x x)) 1/2) #s(literal 1/2 binary64)) (patch #s(approx (+ (* -1/24 (* x x)) 1/2) #s(literal 1/2 binary64)) #<representation binary64>) () ())) ()) |
#s(alt (* -1/24 (pow x 3)) (taylor inf x) (#s(alt (*.f64 (fma.f64 (*.f64 x x) (/.f64 (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) (patch (*.f64 (fma.f64 (*.f64 x x) (/.f64 (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) #<representation binary64>) () ())) ()) |
#s(alt (* (pow x 3) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) (taylor inf x) (#s(alt (*.f64 (fma.f64 (*.f64 x x) (/.f64 (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) (patch (*.f64 (fma.f64 (*.f64 x x) (/.f64 (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) #<representation binary64>) () ())) ()) |
#s(alt (* (pow x 3) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) (taylor inf x) (#s(alt (*.f64 (fma.f64 (*.f64 x x) (/.f64 (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) (patch (*.f64 (fma.f64 (*.f64 x x) (/.f64 (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) #<representation binary64>) () ())) ()) |
#s(alt (* (pow x 3) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) (taylor inf x) (#s(alt (*.f64 (fma.f64 (*.f64 x x) (/.f64 (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) (patch (*.f64 (fma.f64 (*.f64 x x) (/.f64 (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) #<representation binary64>) () ())) ()) |
#s(alt (/ 6 (pow x 2)) (taylor inf x) (#s(alt (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)))) (patch (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)))) #<representation binary64>) () ())) ()) |
#s(alt (/ (- 6 (* 72 (/ 1 (pow x 2)))) (pow x 2)) (taylor inf x) (#s(alt (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)))) (patch (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)))) #<representation binary64>) () ())) ()) |
#s(alt (/ (- (+ 6 (/ 864 (pow x 4))) (* 72 (/ 1 (pow x 2)))) (pow x 2)) (taylor inf x) (#s(alt (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)))) (patch (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)))) #<representation binary64>) () ())) ()) |
#s(alt (/ (- (+ 6 (/ 864 (pow x 4))) (+ (* 72 (/ 1 (pow x 2))) (* 10368 (/ 1 (pow x 6))))) (pow x 2)) (taylor inf x) (#s(alt (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)))) (patch (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)))) #<representation binary64>) () ())) ()) |
#s(alt (- 1 (cos x)) (taylor inf x) (#s(alt #s(approx (- 1 (cos x)) (*.f64 (*.f64 (fma.f64 (*.f64 x x) (/.f64 (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) x)) (patch #s(approx (- 1 (cos x)) (*.f64 (*.f64 (fma.f64 (*.f64 x x) (/.f64 (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) x)) #<representation binary64>) () ())) ()) |
#s(alt (- 1 (cos x)) (taylor inf x) (#s(alt #s(approx (- 1 (cos x)) (*.f64 (*.f64 (fma.f64 (*.f64 x x) (/.f64 (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) x)) (patch #s(approx (- 1 (cos x)) (*.f64 (*.f64 (fma.f64 (*.f64 x x) (/.f64 (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) x)) #<representation binary64>) () ())) ()) |
#s(alt (- 1 (cos x)) (taylor inf x) (#s(alt #s(approx (- 1 (cos x)) (*.f64 (*.f64 (fma.f64 (*.f64 x x) (/.f64 (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) x)) (patch #s(approx (- 1 (cos x)) (*.f64 (*.f64 (fma.f64 (*.f64 x x) (/.f64 (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) x)) #<representation binary64>) () ())) ()) |
#s(alt (- 1 (cos x)) (taylor inf x) (#s(alt #s(approx (- 1 (cos x)) (*.f64 (*.f64 (fma.f64 (*.f64 x x) (/.f64 (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) x)) (patch #s(approx (- 1 (cos x)) (*.f64 (*.f64 (fma.f64 (*.f64 x x) (/.f64 (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) x)) #<representation binary64>) () ())) ()) |
#s(alt (* -1/24 (pow x 4)) (taylor inf x) (#s(alt (*.f64 (*.f64 (fma.f64 (*.f64 x x) (/.f64 (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) x) (patch (*.f64 (*.f64 (fma.f64 (*.f64 x x) (/.f64 (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) x) #<representation binary64>) () ())) ()) |
#s(alt (* (pow x 4) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) (taylor inf x) (#s(alt (*.f64 (*.f64 (fma.f64 (*.f64 x x) (/.f64 (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) x) (patch (*.f64 (*.f64 (fma.f64 (*.f64 x x) (/.f64 (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) x) #<representation binary64>) () ())) ()) |
#s(alt (* (pow x 4) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) (taylor inf x) (#s(alt (*.f64 (*.f64 (fma.f64 (*.f64 x x) (/.f64 (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) x) (patch (*.f64 (*.f64 (fma.f64 (*.f64 x x) (/.f64 (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) x) #<representation binary64>) () ())) ()) |
#s(alt (* (pow x 4) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) (taylor inf x) (#s(alt (*.f64 (*.f64 (fma.f64 (*.f64 x x) (/.f64 (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) x) (patch (*.f64 (*.f64 (fma.f64 (*.f64 x x) (/.f64 (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) x) #<representation binary64>) () ())) ()) |
#s(alt (+ 1 (cos x)) (taylor inf x) (#s(alt (+.f64 #s(approx (cos x) #s(literal 1 binary64)) #s(literal 1 binary64)) (patch (+.f64 #s(approx (cos x) #s(literal 1 binary64)) #s(literal 1 binary64)) #<representation binary64>) () ())) ()) |
#s(alt (+ 1 (cos x)) (taylor inf x) (#s(alt (+.f64 #s(approx (cos x) #s(literal 1 binary64)) #s(literal 1 binary64)) (patch (+.f64 #s(approx (cos x) #s(literal 1 binary64)) #s(literal 1 binary64)) #<representation binary64>) () ())) ()) |
#s(alt (+ 1 (cos x)) (taylor inf x) (#s(alt (+.f64 #s(approx (cos x) #s(literal 1 binary64)) #s(literal 1 binary64)) (patch (+.f64 #s(approx (cos x) #s(literal 1 binary64)) #s(literal 1 binary64)) #<representation binary64>) () ())) ()) |
#s(alt (+ 1 (cos x)) (taylor inf x) (#s(alt (+.f64 #s(approx (cos x) #s(literal 1 binary64)) #s(literal 1 binary64)) (patch (+.f64 #s(approx (cos x) #s(literal 1 binary64)) #s(literal 1 binary64)) #<representation binary64>) () ())) ()) |
#s(alt (cos x) (taylor inf x) (#s(alt #s(approx (cos x) #s(literal 1 binary64)) (patch #s(approx (cos x) #s(literal 1 binary64)) #<representation binary64>) () ())) ()) |
#s(alt (cos x) (taylor inf x) (#s(alt #s(approx (cos x) #s(literal 1 binary64)) (patch #s(approx (cos x) #s(literal 1 binary64)) #<representation binary64>) () ())) ()) |
#s(alt (cos x) (taylor inf x) (#s(alt #s(approx (cos x) #s(literal 1 binary64)) (patch #s(approx (cos x) #s(literal 1 binary64)) #<representation binary64>) () ())) ()) |
#s(alt (cos x) (taylor inf x) (#s(alt #s(approx (cos x) #s(literal 1 binary64)) (patch #s(approx (cos x) #s(literal 1 binary64)) #<representation binary64>) () ())) ()) |
#s(alt (* 1/576 (pow x 2)) (taylor inf x) (#s(alt (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) (patch (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) #<representation binary64>) () ())) ()) |
#s(alt (* 1/576 (pow x 2)) (taylor inf x) (#s(alt (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) (patch (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) #<representation binary64>) () ())) ()) |
#s(alt (* 1/576 (pow x 2)) (taylor inf x) (#s(alt (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) (patch (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) #<representation binary64>) () ())) ()) |
#s(alt (* 1/576 (pow x 2)) (taylor inf x) (#s(alt (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) (patch (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) #<representation binary64>) () ())) ()) |
#s(alt -1/24 (taylor inf x) (#s(alt (/.f64 (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64))) (patch (/.f64 (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64))) #<representation binary64>) () ())) ()) |
#s(alt (- (* 1/2 (/ 1 (pow x 2))) 1/24) (taylor inf x) (#s(alt (/.f64 (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64))) (patch (/.f64 (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64))) #<representation binary64>) () ())) ()) |
#s(alt (- (* 1/2 (/ 1 (pow x 2))) (+ 1/24 (/ 6 (pow x 4)))) (taylor inf x) (#s(alt (/.f64 (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64))) (patch (/.f64 (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64))) #<representation binary64>) () ())) ()) |
#s(alt (- (+ (* 1/2 (/ 1 (pow x 2))) (* 72 (/ 1 (pow x 6)))) (+ 1/24 (/ 6 (pow x 4)))) (taylor inf x) (#s(alt (/.f64 (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64))) (patch (/.f64 (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64))) #<representation binary64>) () ())) ()) |
#s(alt (/ -6 (pow x 2)) (taylor inf x) (#s(alt (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))) (patch (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))) #<representation binary64>) () ())) ()) |
#s(alt (/ (- (* 72 (/ 1 (pow x 2))) 6) (pow x 2)) (taylor inf x) (#s(alt (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))) (patch (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))) #<representation binary64>) () ())) ()) |
#s(alt (/ (- (* 72 (/ 1 (pow x 2))) (+ 6 (/ 864 (pow x 4)))) (pow x 2)) (taylor inf x) (#s(alt (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))) (patch (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))) #<representation binary64>) () ())) ()) |
#s(alt (/ (- (+ (* 72 (/ 1 (pow x 2))) (* 10368 (/ 1 (pow x 6)))) (+ 6 (/ 864 (pow x 4)))) (pow x 2)) (taylor inf x) (#s(alt (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))) (patch (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))) #<representation binary64>) () ())) ()) |
#s(alt (- 1 (cos x)) (taylor -inf x) (#s(alt #s(approx (- 1 (cos x)) (*.f64 (*.f64 #s(approx (+ (* -1/24 (* x x)) 1/2) #s(literal 1/2 binary64)) x) x)) (patch #s(approx (- 1 (cos x)) (*.f64 (*.f64 #s(approx (+ (* -1/24 (* x x)) 1/2) #s(literal 1/2 binary64)) x) x)) #<representation binary64>) () ())) ()) |
#s(alt (- 1 (cos x)) (taylor -inf x) (#s(alt #s(approx (- 1 (cos x)) (*.f64 (*.f64 #s(approx (+ (* -1/24 (* x x)) 1/2) #s(literal 1/2 binary64)) x) x)) (patch #s(approx (- 1 (cos x)) (*.f64 (*.f64 #s(approx (+ (* -1/24 (* x x)) 1/2) #s(literal 1/2 binary64)) x) x)) #<representation binary64>) () ())) ()) |
#s(alt (- 1 (cos x)) (taylor -inf x) (#s(alt #s(approx (- 1 (cos x)) (*.f64 (*.f64 #s(approx (+ (* -1/24 (* x x)) 1/2) #s(literal 1/2 binary64)) x) x)) (patch #s(approx (- 1 (cos x)) (*.f64 (*.f64 #s(approx (+ (* -1/24 (* x x)) 1/2) #s(literal 1/2 binary64)) x) x)) #<representation binary64>) () ())) ()) |
#s(alt (- 1 (cos x)) (taylor -inf x) (#s(alt #s(approx (- 1 (cos x)) (*.f64 (*.f64 #s(approx (+ (* -1/24 (* x x)) 1/2) #s(literal 1/2 binary64)) x) x)) (patch #s(approx (- 1 (cos x)) (*.f64 (*.f64 #s(approx (+ (* -1/24 (* x x)) 1/2) #s(literal 1/2 binary64)) x) x)) #<representation binary64>) () ())) ()) |
#s(alt (* -1/24 (pow x 4)) (taylor -inf x) (#s(alt (*.f64 (*.f64 #s(approx (+ (* -1/24 (* x x)) 1/2) #s(literal 1/2 binary64)) x) x) (patch (*.f64 (*.f64 #s(approx (+ (* -1/24 (* x x)) 1/2) #s(literal 1/2 binary64)) x) x) #<representation binary64>) () ())) ()) |
#s(alt (* (pow x 4) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) (taylor -inf x) (#s(alt (*.f64 (*.f64 #s(approx (+ (* -1/24 (* x x)) 1/2) #s(literal 1/2 binary64)) x) x) (patch (*.f64 (*.f64 #s(approx (+ (* -1/24 (* x x)) 1/2) #s(literal 1/2 binary64)) x) x) #<representation binary64>) () ())) ()) |
#s(alt (* (pow x 4) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) (taylor -inf x) (#s(alt (*.f64 (*.f64 #s(approx (+ (* -1/24 (* x x)) 1/2) #s(literal 1/2 binary64)) x) x) (patch (*.f64 (*.f64 #s(approx (+ (* -1/24 (* x x)) 1/2) #s(literal 1/2 binary64)) x) x) #<representation binary64>) () ())) ()) |
#s(alt (* (pow x 4) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) (taylor -inf x) (#s(alt (*.f64 (*.f64 #s(approx (+ (* -1/24 (* x x)) 1/2) #s(literal 1/2 binary64)) x) x) (patch (*.f64 (*.f64 #s(approx (+ (* -1/24 (* x x)) 1/2) #s(literal 1/2 binary64)) x) x) #<representation binary64>) () ())) ()) |
#s(alt (* -1/24 (pow x 3)) (taylor -inf x) (#s(alt (*.f64 #s(approx (+ (* -1/24 (* x x)) 1/2) #s(literal 1/2 binary64)) x) (patch (*.f64 #s(approx (+ (* -1/24 (* x x)) 1/2) #s(literal 1/2 binary64)) x) #<representation binary64>) () ())) ()) |
#s(alt (* -1 (* (pow x 3) (- 1/24 (* 1/2 (/ 1 (pow x 2)))))) (taylor -inf x) (#s(alt (*.f64 #s(approx (+ (* -1/24 (* x x)) 1/2) #s(literal 1/2 binary64)) x) (patch (*.f64 #s(approx (+ (* -1/24 (* x x)) 1/2) #s(literal 1/2 binary64)) x) #<representation binary64>) () ())) ()) |
#s(alt (* -1 (* (pow x 3) (- 1/24 (* 1/2 (/ 1 (pow x 2)))))) (taylor -inf x) (#s(alt (*.f64 #s(approx (+ (* -1/24 (* x x)) 1/2) #s(literal 1/2 binary64)) x) (patch (*.f64 #s(approx (+ (* -1/24 (* x x)) 1/2) #s(literal 1/2 binary64)) x) #<representation binary64>) () ())) ()) |
#s(alt (* -1 (* (pow x 3) (- 1/24 (* 1/2 (/ 1 (pow x 2)))))) (taylor -inf x) (#s(alt (*.f64 #s(approx (+ (* -1/24 (* x x)) 1/2) #s(literal 1/2 binary64)) x) (patch (*.f64 #s(approx (+ (* -1/24 (* x x)) 1/2) #s(literal 1/2 binary64)) x) #<representation binary64>) () ())) ()) |
#s(alt (* -1/24 (pow x 2)) (taylor -inf x) (#s(alt #s(approx (+ (* -1/24 (* x x)) 1/2) #s(literal 1/2 binary64)) (patch #s(approx (+ (* -1/24 (* x x)) 1/2) #s(literal 1/2 binary64)) #<representation binary64>) () ())) ()) |
#s(alt (* (pow x 2) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) (taylor -inf x) (#s(alt #s(approx (+ (* -1/24 (* x x)) 1/2) #s(literal 1/2 binary64)) (patch #s(approx (+ (* -1/24 (* x x)) 1/2) #s(literal 1/2 binary64)) #<representation binary64>) () ())) ()) |
#s(alt (* (pow x 2) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) (taylor -inf x) (#s(alt #s(approx (+ (* -1/24 (* x x)) 1/2) #s(literal 1/2 binary64)) (patch #s(approx (+ (* -1/24 (* x x)) 1/2) #s(literal 1/2 binary64)) #<representation binary64>) () ())) ()) |
#s(alt (* (pow x 2) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) (taylor -inf x) (#s(alt #s(approx (+ (* -1/24 (* x x)) 1/2) #s(literal 1/2 binary64)) (patch #s(approx (+ (* -1/24 (* x x)) 1/2) #s(literal 1/2 binary64)) #<representation binary64>) () ())) ()) |
#s(alt (* -1/24 (pow x 3)) (taylor -inf x) (#s(alt (*.f64 (fma.f64 (*.f64 x x) (/.f64 (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) (patch (*.f64 (fma.f64 (*.f64 x x) (/.f64 (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) #<representation binary64>) () ())) ()) |
#s(alt (* -1 (* (pow x 3) (- 1/24 (* 1/2 (/ 1 (pow x 2)))))) (taylor -inf x) (#s(alt (*.f64 (fma.f64 (*.f64 x x) (/.f64 (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) (patch (*.f64 (fma.f64 (*.f64 x x) (/.f64 (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) #<representation binary64>) () ())) ()) |
#s(alt (* -1 (* (pow x 3) (- 1/24 (* 1/2 (/ 1 (pow x 2)))))) (taylor -inf x) (#s(alt (*.f64 (fma.f64 (*.f64 x x) (/.f64 (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) (patch (*.f64 (fma.f64 (*.f64 x x) (/.f64 (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) #<representation binary64>) () ())) ()) |
#s(alt (* -1 (* (pow x 3) (- 1/24 (* 1/2 (/ 1 (pow x 2)))))) (taylor -inf x) (#s(alt (*.f64 (fma.f64 (*.f64 x x) (/.f64 (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) (patch (*.f64 (fma.f64 (*.f64 x x) (/.f64 (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) #<representation binary64>) () ())) ()) |
#s(alt (/ 6 (pow x 2)) (taylor -inf x) (#s(alt (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)))) (patch (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)))) #<representation binary64>) () ())) ()) |
#s(alt (/ (- 6 (* 72 (/ 1 (pow x 2)))) (pow x 2)) (taylor -inf x) (#s(alt (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)))) (patch (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)))) #<representation binary64>) () ())) ()) |
#s(alt (/ (- (+ 6 (/ 864 (pow x 4))) (* 72 (/ 1 (pow x 2)))) (pow x 2)) (taylor -inf x) (#s(alt (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)))) (patch (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)))) #<representation binary64>) () ())) ()) |
#s(alt (/ (- (+ 6 (/ 864 (pow x 4))) (+ (* 72 (/ 1 (pow x 2))) (* 10368 (/ 1 (pow x 6))))) (pow x 2)) (taylor -inf x) (#s(alt (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)))) (patch (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)))) #<representation binary64>) () ())) ()) |
#s(alt (- 1 (cos x)) (taylor -inf x) (#s(alt #s(approx (- 1 (cos x)) (*.f64 (*.f64 (fma.f64 (*.f64 x x) (/.f64 (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) x)) (patch #s(approx (- 1 (cos x)) (*.f64 (*.f64 (fma.f64 (*.f64 x x) (/.f64 (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) x)) #<representation binary64>) () ())) ()) |
#s(alt (- 1 (cos x)) (taylor -inf x) (#s(alt #s(approx (- 1 (cos x)) (*.f64 (*.f64 (fma.f64 (*.f64 x x) (/.f64 (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) x)) (patch #s(approx (- 1 (cos x)) (*.f64 (*.f64 (fma.f64 (*.f64 x x) (/.f64 (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) x)) #<representation binary64>) () ())) ()) |
#s(alt (- 1 (cos x)) (taylor -inf x) (#s(alt #s(approx (- 1 (cos x)) (*.f64 (*.f64 (fma.f64 (*.f64 x x) (/.f64 (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) x)) (patch #s(approx (- 1 (cos x)) (*.f64 (*.f64 (fma.f64 (*.f64 x x) (/.f64 (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) x)) #<representation binary64>) () ())) ()) |
#s(alt (- 1 (cos x)) (taylor -inf x) (#s(alt #s(approx (- 1 (cos x)) (*.f64 (*.f64 (fma.f64 (*.f64 x x) (/.f64 (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) x)) (patch #s(approx (- 1 (cos x)) (*.f64 (*.f64 (fma.f64 (*.f64 x x) (/.f64 (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) x)) #<representation binary64>) () ())) ()) |
#s(alt (* -1/24 (pow x 4)) (taylor -inf x) (#s(alt (*.f64 (*.f64 (fma.f64 (*.f64 x x) (/.f64 (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) x) (patch (*.f64 (*.f64 (fma.f64 (*.f64 x x) (/.f64 (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) x) #<representation binary64>) () ())) ()) |
#s(alt (* (pow x 4) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) (taylor -inf x) (#s(alt (*.f64 (*.f64 (fma.f64 (*.f64 x x) (/.f64 (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) x) (patch (*.f64 (*.f64 (fma.f64 (*.f64 x x) (/.f64 (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) x) #<representation binary64>) () ())) ()) |
#s(alt (* (pow x 4) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) (taylor -inf x) (#s(alt (*.f64 (*.f64 (fma.f64 (*.f64 x x) (/.f64 (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) x) (patch (*.f64 (*.f64 (fma.f64 (*.f64 x x) (/.f64 (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) x) #<representation binary64>) () ())) ()) |
#s(alt (* (pow x 4) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) (taylor -inf x) (#s(alt (*.f64 (*.f64 (fma.f64 (*.f64 x x) (/.f64 (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) x) (patch (*.f64 (*.f64 (fma.f64 (*.f64 x x) (/.f64 (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) x) #<representation binary64>) () ())) ()) |
#s(alt (+ 1 (cos x)) (taylor -inf x) (#s(alt (+.f64 #s(approx (cos x) #s(literal 1 binary64)) #s(literal 1 binary64)) (patch (+.f64 #s(approx (cos x) #s(literal 1 binary64)) #s(literal 1 binary64)) #<representation binary64>) () ())) ()) |
#s(alt (+ 1 (cos x)) (taylor -inf x) (#s(alt (+.f64 #s(approx (cos x) #s(literal 1 binary64)) #s(literal 1 binary64)) (patch (+.f64 #s(approx (cos x) #s(literal 1 binary64)) #s(literal 1 binary64)) #<representation binary64>) () ())) ()) |
#s(alt (+ 1 (cos x)) (taylor -inf x) (#s(alt (+.f64 #s(approx (cos x) #s(literal 1 binary64)) #s(literal 1 binary64)) (patch (+.f64 #s(approx (cos x) #s(literal 1 binary64)) #s(literal 1 binary64)) #<representation binary64>) () ())) ()) |
#s(alt (+ 1 (cos x)) (taylor -inf x) (#s(alt (+.f64 #s(approx (cos x) #s(literal 1 binary64)) #s(literal 1 binary64)) (patch (+.f64 #s(approx (cos x) #s(literal 1 binary64)) #s(literal 1 binary64)) #<representation binary64>) () ())) ()) |
#s(alt (cos x) (taylor -inf x) (#s(alt #s(approx (cos x) #s(literal 1 binary64)) (patch #s(approx (cos x) #s(literal 1 binary64)) #<representation binary64>) () ())) ()) |
#s(alt (cos x) (taylor -inf x) (#s(alt #s(approx (cos x) #s(literal 1 binary64)) (patch #s(approx (cos x) #s(literal 1 binary64)) #<representation binary64>) () ())) ()) |
#s(alt (cos x) (taylor -inf x) (#s(alt #s(approx (cos x) #s(literal 1 binary64)) (patch #s(approx (cos x) #s(literal 1 binary64)) #<representation binary64>) () ())) ()) |
#s(alt (cos x) (taylor -inf x) (#s(alt #s(approx (cos x) #s(literal 1 binary64)) (patch #s(approx (cos x) #s(literal 1 binary64)) #<representation binary64>) () ())) ()) |
#s(alt (* 1/576 (pow x 2)) (taylor -inf x) (#s(alt (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) (patch (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) #<representation binary64>) () ())) ()) |
#s(alt (* 1/576 (pow x 2)) (taylor -inf x) (#s(alt (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) (patch (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) #<representation binary64>) () ())) ()) |
#s(alt (* 1/576 (pow x 2)) (taylor -inf x) (#s(alt (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) (patch (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) #<representation binary64>) () ())) ()) |
#s(alt (* 1/576 (pow x 2)) (taylor -inf x) (#s(alt (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) (patch (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) #<representation binary64>) () ())) ()) |
#s(alt -1/24 (taylor -inf x) (#s(alt (/.f64 (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64))) (patch (/.f64 (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64))) #<representation binary64>) () ())) ()) |
#s(alt (- (* 1/2 (/ 1 (pow x 2))) 1/24) (taylor -inf x) (#s(alt (/.f64 (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64))) (patch (/.f64 (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64))) #<representation binary64>) () ())) ()) |
#s(alt (- (* 1/2 (/ 1 (pow x 2))) (+ 1/24 (/ 6 (pow x 4)))) (taylor -inf x) (#s(alt (/.f64 (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64))) (patch (/.f64 (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64))) #<representation binary64>) () ())) ()) |
#s(alt (- (+ (* 1/2 (/ 1 (pow x 2))) (* 72 (/ 1 (pow x 6)))) (+ 1/24 (/ 6 (pow x 4)))) (taylor -inf x) (#s(alt (/.f64 (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64))) (patch (/.f64 (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64))) #<representation binary64>) () ())) ()) |
#s(alt (/ -6 (pow x 2)) (taylor -inf x) (#s(alt (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))) (patch (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))) #<representation binary64>) () ())) ()) |
#s(alt (/ (- (* 72 (/ 1 (pow x 2))) 6) (pow x 2)) (taylor -inf x) (#s(alt (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))) (patch (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))) #<representation binary64>) () ())) ()) |
#s(alt (/ (- (* 72 (/ 1 (pow x 2))) (+ 6 (/ 864 (pow x 4)))) (pow x 2)) (taylor -inf x) (#s(alt (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))) (patch (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))) #<representation binary64>) () ())) ()) |
#s(alt (/ (- (+ (* 72 (/ 1 (pow x 2))) (* 10368 (/ 1 (pow x 6)))) (+ 6 (/ 864 (pow x 4)))) (pow x 2)) (taylor -inf x) (#s(alt (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))) (patch (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))) #<representation binary64>) () ())) ()) |
3 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 3.0ms | x | @ | 0 | ((- 1 (cos x)) (* (* (+ (* -1/24 (* x x)) 1/2) x) x) (* (+ (* -1/24 (* x x)) 1/2) x) (+ (* -1/24 (* x x)) 1/2) (* (+ (* (* x x) (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2))) (neg (/ -1/4 (+ (* 1/24 (* x x)) 1/2)))) x) (neg (/ -1/4 (+ (* 1/24 (* x x)) 1/2))) (- 1 (cos x)) (* (* (+ (* (* x x) (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2))) (neg (/ -1/4 (+ (* 1/24 (* x x)) 1/2)))) x) x) (+ (cos x) 1) (cos x) (* 1/576 (* x x)) (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2)) (/ -1/4 (+ (* 1/24 (* x x)) 1/2))) |
| 3.0ms | x | @ | inf | ((- 1 (cos x)) (* (* (+ (* -1/24 (* x x)) 1/2) x) x) (* (+ (* -1/24 (* x x)) 1/2) x) (+ (* -1/24 (* x x)) 1/2) (* (+ (* (* x x) (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2))) (neg (/ -1/4 (+ (* 1/24 (* x x)) 1/2)))) x) (neg (/ -1/4 (+ (* 1/24 (* x x)) 1/2))) (- 1 (cos x)) (* (* (+ (* (* x x) (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2))) (neg (/ -1/4 (+ (* 1/24 (* x x)) 1/2)))) x) x) (+ (cos x) 1) (cos x) (* 1/576 (* x x)) (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2)) (/ -1/4 (+ (* 1/24 (* x x)) 1/2))) |
| 2.0ms | x | @ | -inf | ((- 1 (cos x)) (* (* (+ (* -1/24 (* x x)) 1/2) x) x) (* (+ (* -1/24 (* x x)) 1/2) x) (+ (* -1/24 (* x x)) 1/2) (* (+ (* (* x x) (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2))) (neg (/ -1/4 (+ (* 1/24 (* x x)) 1/2)))) x) (neg (/ -1/4 (+ (* 1/24 (* x x)) 1/2))) (- 1 (cos x)) (* (* (+ (* (* x x) (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2))) (neg (/ -1/4 (+ (* 1/24 (* x x)) 1/2)))) x) x) (+ (cos x) 1) (cos x) (* 1/576 (* x x)) (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2)) (/ -1/4 (+ (* 1/24 (* x x)) 1/2))) |
| 1× | egg-herbie |
| 16 444× | lower-fma.f64 |
| 16 444× | lower-fma.f32 |
| 4 016× | lower-+.f64 |
| 4 016× | lower-+.f32 |
| 3 930× | lower-*.f64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 136 | 1294 |
| 1 | 341 | 1294 |
| 2 | 891 | 1294 |
| 3 | 2263 | 1294 |
| 4 | 5003 | 1294 |
| 0 | 8356 | 1219 |
| 1× | iter limit |
| 1× | node limit |
| Inputs |
|---|
(* 1/2 (pow x 2)) |
(* (pow x 2) (+ 1/2 (* -1/24 (pow x 2)))) |
(* (pow x 2) (+ 1/2 (* (pow x 2) (- (* 1/720 (pow x 2)) 1/24)))) |
(* (pow x 2) (+ 1/2 (* (pow x 2) (- (* (pow x 2) (+ 1/720 (* -1/40320 (pow x 2)))) 1/24)))) |
(* 1/2 (pow x 2)) |
(* (pow x 2) (+ 1/2 (* -1/24 (pow x 2)))) |
(* (pow x 2) (+ 1/2 (* -1/24 (pow x 2)))) |
(* (pow x 2) (+ 1/2 (* -1/24 (pow x 2)))) |
(* 1/2 x) |
(* x (+ 1/2 (* -1/24 (pow x 2)))) |
(* x (+ 1/2 (* -1/24 (pow x 2)))) |
(* x (+ 1/2 (* -1/24 (pow x 2)))) |
1/2 |
(+ 1/2 (* -1/24 (pow x 2))) |
(+ 1/2 (* -1/24 (pow x 2))) |
(+ 1/2 (* -1/24 (pow x 2))) |
(* 1/2 x) |
(* x (+ 1/2 (* -1/24 (pow x 2)))) |
(* x (+ 1/2 (* -1/24 (pow x 2)))) |
(* x (+ 1/2 (* -1/24 (pow x 2)))) |
1/2 |
(+ 1/2 (* -1/24 (pow x 2))) |
(+ 1/2 (* (pow x 2) (- (* 1/288 (pow x 2)) 1/24))) |
(+ 1/2 (* (pow x 2) (- (* (pow x 2) (+ 1/288 (* -1/3456 (pow x 2)))) 1/24))) |
(* 1/2 (pow x 2)) |
(* (pow x 2) (+ 1/2 (* -1/24 (pow x 2)))) |
(* (pow x 2) (+ 1/2 (* (pow x 2) (- (* 1/720 (pow x 2)) 1/24)))) |
(* (pow x 2) (+ 1/2 (* (pow x 2) (- (* (pow x 2) (+ 1/720 (* -1/40320 (pow x 2)))) 1/24)))) |
(* 1/2 (pow x 2)) |
(* (pow x 2) (+ 1/2 (* -1/24 (pow x 2)))) |
(* (pow x 2) (+ 1/2 (* -1/24 (pow x 2)))) |
(* (pow x 2) (+ 1/2 (* -1/24 (pow x 2)))) |
2 |
(+ 2 (* -1/2 (pow x 2))) |
(+ 2 (* (pow x 2) (- (* 1/24 (pow x 2)) 1/2))) |
(+ 2 (* (pow x 2) (- (* (pow x 2) (+ 1/24 (* -1/720 (pow x 2)))) 1/2))) |
1 |
(+ 1 (* -1/2 (pow x 2))) |
(+ 1 (* (pow x 2) (- (* 1/24 (pow x 2)) 1/2))) |
(+ 1 (* (pow x 2) (- (* (pow x 2) (+ 1/24 (* -1/720 (pow x 2)))) 1/2))) |
(* 1/576 (pow x 2)) |
(* 1/576 (pow x 2)) |
(* 1/576 (pow x 2)) |
(* 1/576 (pow x 2)) |
(* -1/288 (pow x 2)) |
(* (pow x 2) (- (* 1/3456 (pow x 2)) 1/288)) |
(* (pow x 2) (- (* (pow x 2) (+ 1/3456 (* -1/41472 (pow x 2)))) 1/288)) |
(* (pow x 2) (- (* (pow x 2) (+ 1/3456 (* (pow x 2) (- (* 1/497664 (pow x 2)) 1/41472)))) 1/288)) |
-1/2 |
(- (* 1/24 (pow x 2)) 1/2) |
(- (* (pow x 2) (+ 1/24 (* -1/288 (pow x 2)))) 1/2) |
(- (* (pow x 2) (+ 1/24 (* (pow x 2) (- (* 1/3456 (pow x 2)) 1/288)))) 1/2) |
(- 1 (cos x)) |
(- 1 (cos x)) |
(- 1 (cos x)) |
(- 1 (cos x)) |
(* -1/24 (pow x 4)) |
(* (pow x 4) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) |
(* (pow x 4) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) |
(* (pow x 4) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) |
(* -1/24 (pow x 3)) |
(* (pow x 3) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) |
(* (pow x 3) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) |
(* (pow x 3) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) |
(* -1/24 (pow x 2)) |
(* (pow x 2) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) |
(* (pow x 2) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) |
(* (pow x 2) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) |
(* -1/24 (pow x 3)) |
(* (pow x 3) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) |
(* (pow x 3) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) |
(* (pow x 3) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) |
(/ 6 (pow x 2)) |
(/ (- 6 (* 72 (/ 1 (pow x 2)))) (pow x 2)) |
(/ (- (+ 6 (/ 864 (pow x 4))) (* 72 (/ 1 (pow x 2)))) (pow x 2)) |
(/ (- (+ 6 (/ 864 (pow x 4))) (+ (* 72 (/ 1 (pow x 2))) (* 10368 (/ 1 (pow x 6))))) (pow x 2)) |
(- 1 (cos x)) |
(- 1 (cos x)) |
(- 1 (cos x)) |
(- 1 (cos x)) |
(* -1/24 (pow x 4)) |
(* (pow x 4) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) |
(* (pow x 4) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) |
(* (pow x 4) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) |
(+ 1 (cos x)) |
(+ 1 (cos x)) |
(+ 1 (cos x)) |
(+ 1 (cos x)) |
(cos x) |
(cos x) |
(cos x) |
(cos x) |
(* 1/576 (pow x 2)) |
(* 1/576 (pow x 2)) |
(* 1/576 (pow x 2)) |
(* 1/576 (pow x 2)) |
-1/24 |
(- (* 1/2 (/ 1 (pow x 2))) 1/24) |
(- (* 1/2 (/ 1 (pow x 2))) (+ 1/24 (/ 6 (pow x 4)))) |
(- (+ (* 1/2 (/ 1 (pow x 2))) (* 72 (/ 1 (pow x 6)))) (+ 1/24 (/ 6 (pow x 4)))) |
(/ -6 (pow x 2)) |
(/ (- (* 72 (/ 1 (pow x 2))) 6) (pow x 2)) |
(/ (- (* 72 (/ 1 (pow x 2))) (+ 6 (/ 864 (pow x 4)))) (pow x 2)) |
(/ (- (+ (* 72 (/ 1 (pow x 2))) (* 10368 (/ 1 (pow x 6)))) (+ 6 (/ 864 (pow x 4)))) (pow x 2)) |
(- 1 (cos x)) |
(- 1 (cos x)) |
(- 1 (cos x)) |
(- 1 (cos x)) |
(* -1/24 (pow x 4)) |
(* (pow x 4) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) |
(* (pow x 4) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) |
(* (pow x 4) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) |
(* -1/24 (pow x 3)) |
(* -1 (* (pow x 3) (- 1/24 (* 1/2 (/ 1 (pow x 2)))))) |
(* -1 (* (pow x 3) (- 1/24 (* 1/2 (/ 1 (pow x 2)))))) |
(* -1 (* (pow x 3) (- 1/24 (* 1/2 (/ 1 (pow x 2)))))) |
(* -1/24 (pow x 2)) |
(* (pow x 2) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) |
(* (pow x 2) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) |
(* (pow x 2) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) |
(* -1/24 (pow x 3)) |
(* -1 (* (pow x 3) (- 1/24 (* 1/2 (/ 1 (pow x 2)))))) |
(* -1 (* (pow x 3) (- 1/24 (* 1/2 (/ 1 (pow x 2)))))) |
(* -1 (* (pow x 3) (- 1/24 (* 1/2 (/ 1 (pow x 2)))))) |
(/ 6 (pow x 2)) |
(/ (- 6 (* 72 (/ 1 (pow x 2)))) (pow x 2)) |
(/ (- (+ 6 (/ 864 (pow x 4))) (* 72 (/ 1 (pow x 2)))) (pow x 2)) |
(/ (- (+ 6 (/ 864 (pow x 4))) (+ (* 72 (/ 1 (pow x 2))) (* 10368 (/ 1 (pow x 6))))) (pow x 2)) |
(- 1 (cos x)) |
(- 1 (cos x)) |
(- 1 (cos x)) |
(- 1 (cos x)) |
(* -1/24 (pow x 4)) |
(* (pow x 4) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) |
(* (pow x 4) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) |
(* (pow x 4) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) |
(+ 1 (cos x)) |
(+ 1 (cos x)) |
(+ 1 (cos x)) |
(+ 1 (cos x)) |
(cos x) |
(cos x) |
(cos x) |
(cos x) |
(* 1/576 (pow x 2)) |
(* 1/576 (pow x 2)) |
(* 1/576 (pow x 2)) |
(* 1/576 (pow x 2)) |
-1/24 |
(- (* 1/2 (/ 1 (pow x 2))) 1/24) |
(- (* 1/2 (/ 1 (pow x 2))) (+ 1/24 (/ 6 (pow x 4)))) |
(- (+ (* 1/2 (/ 1 (pow x 2))) (* 72 (/ 1 (pow x 6)))) (+ 1/24 (/ 6 (pow x 4)))) |
(/ -6 (pow x 2)) |
(/ (- (* 72 (/ 1 (pow x 2))) 6) (pow x 2)) |
(/ (- (* 72 (/ 1 (pow x 2))) (+ 6 (/ 864 (pow x 4)))) (pow x 2)) |
(/ (- (+ (* 72 (/ 1 (pow x 2))) (* 10368 (/ 1 (pow x 6)))) (+ 6 (/ 864 (pow x 4)))) (pow x 2)) |
| Outputs |
|---|
(* 1/2 (pow x 2)) |
(*.f64 (*.f64 x x) #s(literal 1/2 binary64)) |
(* (pow x 2) (+ 1/2 (* -1/24 (pow x 2)))) |
(*.f64 (*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) x) |
(* (pow x 2) (+ 1/2 (* (pow x 2) (- (* 1/720 (pow x 2)) 1/24)))) |
(*.f64 (*.f64 (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 x x) #s(literal -1/24 binary64)) (*.f64 x x) #s(literal 1/2 binary64)) x) x) |
(* (pow x 2) (+ 1/2 (* (pow x 2) (- (* (pow x 2) (+ 1/720 (* -1/40320 (pow x 2)))) 1/24)))) |
(*.f64 (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal -1/40320 binary64) (*.f64 x x) #s(literal 1/720 binary64)) (*.f64 x x) #s(literal -1/24 binary64)) (*.f64 x x) #s(literal 1/2 binary64)) x) x) |
(* 1/2 (pow x 2)) |
(*.f64 (*.f64 x x) #s(literal 1/2 binary64)) |
(* (pow x 2) (+ 1/2 (* -1/24 (pow x 2)))) |
(*.f64 (*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) x) |
(* (pow x 2) (+ 1/2 (* -1/24 (pow x 2)))) |
(*.f64 (*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) x) |
(* (pow x 2) (+ 1/2 (* -1/24 (pow x 2)))) |
(*.f64 (*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) x) |
(* 1/2 x) |
(*.f64 x #s(literal 1/2 binary64)) |
(* x (+ 1/2 (* -1/24 (pow x 2)))) |
(*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) |
(* x (+ 1/2 (* -1/24 (pow x 2)))) |
(*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) |
(* x (+ 1/2 (* -1/24 (pow x 2)))) |
(*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) |
1/2 |
#s(literal 1/2 binary64) |
(+ 1/2 (* -1/24 (pow x 2))) |
(fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) |
(+ 1/2 (* -1/24 (pow x 2))) |
(fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) |
(+ 1/2 (* -1/24 (pow x 2))) |
(fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) |
(* 1/2 x) |
(*.f64 x #s(literal 1/2 binary64)) |
(* x (+ 1/2 (* -1/24 (pow x 2)))) |
(*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) |
(* x (+ 1/2 (* -1/24 (pow x 2)))) |
(*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) |
(* x (+ 1/2 (* -1/24 (pow x 2)))) |
(*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) |
1/2 |
#s(literal 1/2 binary64) |
(+ 1/2 (* -1/24 (pow x 2))) |
(fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) |
(+ 1/2 (* (pow x 2) (- (* 1/288 (pow x 2)) 1/24))) |
(fma.f64 (fma.f64 #s(literal 1/288 binary64) (*.f64 x x) #s(literal -1/24 binary64)) (*.f64 x x) #s(literal 1/2 binary64)) |
(+ 1/2 (* (pow x 2) (- (* (pow x 2) (+ 1/288 (* -1/3456 (pow x 2)))) 1/24))) |
(fma.f64 (fma.f64 (fma.f64 #s(literal -1/3456 binary64) (*.f64 x x) #s(literal 1/288 binary64)) (*.f64 x x) #s(literal -1/24 binary64)) (*.f64 x x) #s(literal 1/2 binary64)) |
(* 1/2 (pow x 2)) |
(*.f64 (*.f64 x x) #s(literal 1/2 binary64)) |
(* (pow x 2) (+ 1/2 (* -1/24 (pow x 2)))) |
(*.f64 (*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) x) |
(* (pow x 2) (+ 1/2 (* (pow x 2) (- (* 1/720 (pow x 2)) 1/24)))) |
(*.f64 (*.f64 (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 x x) #s(literal -1/24 binary64)) (*.f64 x x) #s(literal 1/2 binary64)) x) x) |
(* (pow x 2) (+ 1/2 (* (pow x 2) (- (* (pow x 2) (+ 1/720 (* -1/40320 (pow x 2)))) 1/24)))) |
(*.f64 (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal -1/40320 binary64) (*.f64 x x) #s(literal 1/720 binary64)) (*.f64 x x) #s(literal -1/24 binary64)) (*.f64 x x) #s(literal 1/2 binary64)) x) x) |
(* 1/2 (pow x 2)) |
(*.f64 (*.f64 x x) #s(literal 1/2 binary64)) |
(* (pow x 2) (+ 1/2 (* -1/24 (pow x 2)))) |
(*.f64 (*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) x) |
(* (pow x 2) (+ 1/2 (* -1/24 (pow x 2)))) |
(*.f64 (*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) x) |
(* (pow x 2) (+ 1/2 (* -1/24 (pow x 2)))) |
(*.f64 (*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) x) |
2 |
#s(literal 2 binary64) |
(+ 2 (* -1/2 (pow x 2))) |
(fma.f64 #s(literal -1/2 binary64) (*.f64 x x) #s(literal 2 binary64)) |
(+ 2 (* (pow x 2) (- (* 1/24 (pow x 2)) 1/2))) |
(fma.f64 (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64)) (*.f64 x x) #s(literal 2 binary64)) |
(+ 2 (* (pow x 2) (- (* (pow x 2) (+ 1/24 (* -1/720 (pow x 2)))) 1/2))) |
(fma.f64 (fma.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 x x) #s(literal 1/24 binary64)) (*.f64 x x) #s(literal -1/2 binary64)) (*.f64 x x) #s(literal 2 binary64)) |
1 |
#s(literal 1 binary64) |
(+ 1 (* -1/2 (pow x 2))) |
(fma.f64 #s(literal -1/2 binary64) (*.f64 x x) #s(literal 1 binary64)) |
(+ 1 (* (pow x 2) (- (* 1/24 (pow x 2)) 1/2))) |
(fma.f64 (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64)) (*.f64 x x) #s(literal 1 binary64)) |
(+ 1 (* (pow x 2) (- (* (pow x 2) (+ 1/24 (* -1/720 (pow x 2)))) 1/2))) |
(fma.f64 (fma.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 x x) #s(literal 1/24 binary64)) (*.f64 x x) #s(literal -1/2 binary64)) (*.f64 x x) #s(literal 1 binary64)) |
(* 1/576 (pow x 2)) |
(*.f64 #s(literal 1/576 binary64) (*.f64 x x)) |
(* 1/576 (pow x 2)) |
(*.f64 #s(literal 1/576 binary64) (*.f64 x x)) |
(* 1/576 (pow x 2)) |
(*.f64 #s(literal 1/576 binary64) (*.f64 x x)) |
(* 1/576 (pow x 2)) |
(*.f64 #s(literal 1/576 binary64) (*.f64 x x)) |
(* -1/288 (pow x 2)) |
(*.f64 #s(literal -1/288 binary64) (*.f64 x x)) |
(* (pow x 2) (- (* 1/3456 (pow x 2)) 1/288)) |
(*.f64 (*.f64 (fma.f64 #s(literal 1/3456 binary64) (*.f64 x x) #s(literal -1/288 binary64)) x) x) |
(* (pow x 2) (- (* (pow x 2) (+ 1/3456 (* -1/41472 (pow x 2)))) 1/288)) |
(*.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/41472 binary64) (*.f64 x x) #s(literal 1/3456 binary64)) (*.f64 x x) #s(literal -1/288 binary64)) x) x) |
(* (pow x 2) (- (* (pow x 2) (+ 1/3456 (* (pow x 2) (- (* 1/497664 (pow x 2)) 1/41472)))) 1/288)) |
(*.f64 (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 1/497664 binary64) (*.f64 x x) #s(literal -1/41472 binary64)) (*.f64 x x) #s(literal 1/3456 binary64)) (*.f64 x x) #s(literal -1/288 binary64)) x) x) |
-1/2 |
#s(literal -1/2 binary64) |
(- (* 1/24 (pow x 2)) 1/2) |
(fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64)) |
(- (* (pow x 2) (+ 1/24 (* -1/288 (pow x 2)))) 1/2) |
(fma.f64 (fma.f64 #s(literal -1/288 binary64) (*.f64 x x) #s(literal 1/24 binary64)) (*.f64 x x) #s(literal -1/2 binary64)) |
(- (* (pow x 2) (+ 1/24 (* (pow x 2) (- (* 1/3456 (pow x 2)) 1/288)))) 1/2) |
(fma.f64 (fma.f64 (fma.f64 #s(literal 1/3456 binary64) (*.f64 x x) #s(literal -1/288 binary64)) (*.f64 x x) #s(literal 1/24 binary64)) (*.f64 x x) #s(literal -1/2 binary64)) |
(- 1 (cos x)) |
(-.f64 #s(literal 1 binary64) (cos.f64 x)) |
(- 1 (cos x)) |
(-.f64 #s(literal 1 binary64) (cos.f64 x)) |
(- 1 (cos x)) |
(-.f64 #s(literal 1 binary64) (cos.f64 x)) |
(- 1 (cos x)) |
(-.f64 #s(literal 1 binary64) (cos.f64 x)) |
(* -1/24 (pow x 4)) |
(*.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal -1/24 binary64)) |
(* (pow x 4) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) |
(*.f64 (pow.f64 x #s(literal 4 binary64)) (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 x x)) #s(literal 1/24 binary64))) |
(* (pow x 4) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) |
(*.f64 (pow.f64 x #s(literal 4 binary64)) (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 x x)) #s(literal 1/24 binary64))) |
(* (pow x 4) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) |
(*.f64 (pow.f64 x #s(literal 4 binary64)) (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 x x)) #s(literal 1/24 binary64))) |
(* -1/24 (pow x 3)) |
(*.f64 (pow.f64 x #s(literal 3 binary64)) #s(literal -1/24 binary64)) |
(* (pow x 3) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) |
(*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) |
(* (pow x 3) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) |
(*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) |
(* (pow x 3) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) |
(*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) |
(* -1/24 (pow x 2)) |
(*.f64 #s(literal -1/24 binary64) (*.f64 x x)) |
(* (pow x 2) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) |
(fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) |
(* (pow x 2) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) |
(fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) |
(* (pow x 2) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) |
(fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) |
(* -1/24 (pow x 3)) |
(*.f64 (pow.f64 x #s(literal 3 binary64)) #s(literal -1/24 binary64)) |
(* (pow x 3) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) |
(*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) |
(* (pow x 3) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) |
(*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) |
(* (pow x 3) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) |
(*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) |
(/ 6 (pow x 2)) |
(/.f64 #s(literal 6 binary64) (*.f64 x x)) |
(/ (- 6 (* 72 (/ 1 (pow x 2)))) (pow x 2)) |
(/.f64 (/.f64 (-.f64 #s(literal 6 binary64) (/.f64 #s(literal 72 binary64) (*.f64 x x))) x) x) |
(/ (- (+ 6 (/ 864 (pow x 4))) (* 72 (/ 1 (pow x 2)))) (pow x 2)) |
(/.f64 (-.f64 (/.f64 #s(literal 864 binary64) (pow.f64 x #s(literal 4 binary64))) (-.f64 (/.f64 #s(literal 72 binary64) (*.f64 x x)) #s(literal 6 binary64))) (*.f64 x x)) |
(/ (- (+ 6 (/ 864 (pow x 4))) (+ (* 72 (/ 1 (pow x 2))) (* 10368 (/ 1 (pow x 6))))) (pow x 2)) |
(/.f64 (-.f64 (-.f64 (/.f64 #s(literal 864 binary64) (pow.f64 x #s(literal 4 binary64))) (-.f64 (/.f64 #s(literal 72 binary64) (*.f64 x x)) #s(literal 6 binary64))) (/.f64 #s(literal 10368 binary64) (pow.f64 x #s(literal 6 binary64)))) (*.f64 x x)) |
(- 1 (cos x)) |
(-.f64 #s(literal 1 binary64) (cos.f64 x)) |
(- 1 (cos x)) |
(-.f64 #s(literal 1 binary64) (cos.f64 x)) |
(- 1 (cos x)) |
(-.f64 #s(literal 1 binary64) (cos.f64 x)) |
(- 1 (cos x)) |
(-.f64 #s(literal 1 binary64) (cos.f64 x)) |
(* -1/24 (pow x 4)) |
(*.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal -1/24 binary64)) |
(* (pow x 4) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) |
(*.f64 (pow.f64 x #s(literal 4 binary64)) (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 x x)) #s(literal 1/24 binary64))) |
(* (pow x 4) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) |
(*.f64 (pow.f64 x #s(literal 4 binary64)) (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 x x)) #s(literal 1/24 binary64))) |
(* (pow x 4) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) |
(*.f64 (pow.f64 x #s(literal 4 binary64)) (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 x x)) #s(literal 1/24 binary64))) |
(+ 1 (cos x)) |
(+.f64 (cos.f64 x) #s(literal 1 binary64)) |
(+ 1 (cos x)) |
(+.f64 (cos.f64 x) #s(literal 1 binary64)) |
(+ 1 (cos x)) |
(+.f64 (cos.f64 x) #s(literal 1 binary64)) |
(+ 1 (cos x)) |
(+.f64 (cos.f64 x) #s(literal 1 binary64)) |
(cos x) |
(cos.f64 x) |
(cos x) |
(cos.f64 x) |
(cos x) |
(cos.f64 x) |
(cos x) |
(cos.f64 x) |
(* 1/576 (pow x 2)) |
(*.f64 #s(literal 1/576 binary64) (*.f64 x x)) |
(* 1/576 (pow x 2)) |
(*.f64 #s(literal 1/576 binary64) (*.f64 x x)) |
(* 1/576 (pow x 2)) |
(*.f64 #s(literal 1/576 binary64) (*.f64 x x)) |
(* 1/576 (pow x 2)) |
(*.f64 #s(literal 1/576 binary64) (*.f64 x x)) |
-1/24 |
#s(literal -1/24 binary64) |
(- (* 1/2 (/ 1 (pow x 2))) 1/24) |
(-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 x x)) #s(literal 1/24 binary64)) |
(- (* 1/2 (/ 1 (pow x 2))) (+ 1/24 (/ 6 (pow x 4)))) |
(-.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 x x)) #s(literal 1/24 binary64)) (/.f64 #s(literal 6 binary64) (pow.f64 x #s(literal 4 binary64)))) |
(- (+ (* 1/2 (/ 1 (pow x 2))) (* 72 (/ 1 (pow x 6)))) (+ 1/24 (/ 6 (pow x 4)))) |
(-.f64 (-.f64 (/.f64 #s(literal -6 binary64) (pow.f64 x #s(literal 4 binary64))) (/.f64 #s(literal -1/2 binary64) (*.f64 x x))) (-.f64 #s(literal 1/24 binary64) (/.f64 #s(literal 72 binary64) (pow.f64 x #s(literal 6 binary64))))) |
(/ -6 (pow x 2)) |
(/.f64 #s(literal -6 binary64) (*.f64 x x)) |
(/ (- (* 72 (/ 1 (pow x 2))) 6) (pow x 2)) |
(/.f64 (/.f64 (-.f64 (/.f64 #s(literal 72 binary64) (*.f64 x x)) #s(literal 6 binary64)) x) x) |
(/ (- (* 72 (/ 1 (pow x 2))) (+ 6 (/ 864 (pow x 4)))) (pow x 2)) |
(/.f64 (-.f64 (-.f64 (/.f64 #s(literal 72 binary64) (*.f64 x x)) #s(literal 6 binary64)) (/.f64 #s(literal 864 binary64) (pow.f64 x #s(literal 4 binary64)))) (*.f64 x x)) |
(/ (- (+ (* 72 (/ 1 (pow x 2))) (* 10368 (/ 1 (pow x 6)))) (+ 6 (/ 864 (pow x 4)))) (pow x 2)) |
(/.f64 (-.f64 (-.f64 (-.f64 (/.f64 #s(literal 72 binary64) (*.f64 x x)) #s(literal 6 binary64)) (/.f64 #s(literal 864 binary64) (pow.f64 x #s(literal 4 binary64)))) (/.f64 #s(literal -10368 binary64) (pow.f64 x #s(literal 6 binary64)))) (*.f64 x x)) |
(- 1 (cos x)) |
(-.f64 #s(literal 1 binary64) (cos.f64 x)) |
(- 1 (cos x)) |
(-.f64 #s(literal 1 binary64) (cos.f64 x)) |
(- 1 (cos x)) |
(-.f64 #s(literal 1 binary64) (cos.f64 x)) |
(- 1 (cos x)) |
(-.f64 #s(literal 1 binary64) (cos.f64 x)) |
(* -1/24 (pow x 4)) |
(*.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal -1/24 binary64)) |
(* (pow x 4) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) |
(*.f64 (pow.f64 x #s(literal 4 binary64)) (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 x x)) #s(literal 1/24 binary64))) |
(* (pow x 4) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) |
(*.f64 (pow.f64 x #s(literal 4 binary64)) (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 x x)) #s(literal 1/24 binary64))) |
(* (pow x 4) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) |
(*.f64 (pow.f64 x #s(literal 4 binary64)) (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 x x)) #s(literal 1/24 binary64))) |
(* -1/24 (pow x 3)) |
(*.f64 (pow.f64 x #s(literal 3 binary64)) #s(literal -1/24 binary64)) |
(* -1 (* (pow x 3) (- 1/24 (* 1/2 (/ 1 (pow x 2)))))) |
(*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) |
(* -1 (* (pow x 3) (- 1/24 (* 1/2 (/ 1 (pow x 2)))))) |
(*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) |
(* -1 (* (pow x 3) (- 1/24 (* 1/2 (/ 1 (pow x 2)))))) |
(*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) |
(* -1/24 (pow x 2)) |
(*.f64 #s(literal -1/24 binary64) (*.f64 x x)) |
(* (pow x 2) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) |
(fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) |
(* (pow x 2) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) |
(fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) |
(* (pow x 2) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) |
(fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) |
(* -1/24 (pow x 3)) |
(*.f64 (pow.f64 x #s(literal 3 binary64)) #s(literal -1/24 binary64)) |
(* -1 (* (pow x 3) (- 1/24 (* 1/2 (/ 1 (pow x 2)))))) |
(*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) |
(* -1 (* (pow x 3) (- 1/24 (* 1/2 (/ 1 (pow x 2)))))) |
(*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) |
(* -1 (* (pow x 3) (- 1/24 (* 1/2 (/ 1 (pow x 2)))))) |
(*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) |
(/ 6 (pow x 2)) |
(/.f64 #s(literal 6 binary64) (*.f64 x x)) |
(/ (- 6 (* 72 (/ 1 (pow x 2)))) (pow x 2)) |
(/.f64 (/.f64 (-.f64 #s(literal 6 binary64) (/.f64 #s(literal 72 binary64) (*.f64 x x))) x) x) |
(/ (- (+ 6 (/ 864 (pow x 4))) (* 72 (/ 1 (pow x 2)))) (pow x 2)) |
(/.f64 (-.f64 (/.f64 #s(literal 864 binary64) (pow.f64 x #s(literal 4 binary64))) (-.f64 (/.f64 #s(literal 72 binary64) (*.f64 x x)) #s(literal 6 binary64))) (*.f64 x x)) |
(/ (- (+ 6 (/ 864 (pow x 4))) (+ (* 72 (/ 1 (pow x 2))) (* 10368 (/ 1 (pow x 6))))) (pow x 2)) |
(/.f64 (-.f64 (-.f64 (/.f64 #s(literal 864 binary64) (pow.f64 x #s(literal 4 binary64))) (-.f64 (/.f64 #s(literal 72 binary64) (*.f64 x x)) #s(literal 6 binary64))) (/.f64 #s(literal 10368 binary64) (pow.f64 x #s(literal 6 binary64)))) (*.f64 x x)) |
(- 1 (cos x)) |
(-.f64 #s(literal 1 binary64) (cos.f64 x)) |
(- 1 (cos x)) |
(-.f64 #s(literal 1 binary64) (cos.f64 x)) |
(- 1 (cos x)) |
(-.f64 #s(literal 1 binary64) (cos.f64 x)) |
(- 1 (cos x)) |
(-.f64 #s(literal 1 binary64) (cos.f64 x)) |
(* -1/24 (pow x 4)) |
(*.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal -1/24 binary64)) |
(* (pow x 4) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) |
(*.f64 (pow.f64 x #s(literal 4 binary64)) (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 x x)) #s(literal 1/24 binary64))) |
(* (pow x 4) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) |
(*.f64 (pow.f64 x #s(literal 4 binary64)) (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 x x)) #s(literal 1/24 binary64))) |
(* (pow x 4) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) |
(*.f64 (pow.f64 x #s(literal 4 binary64)) (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 x x)) #s(literal 1/24 binary64))) |
(+ 1 (cos x)) |
(+.f64 (cos.f64 x) #s(literal 1 binary64)) |
(+ 1 (cos x)) |
(+.f64 (cos.f64 x) #s(literal 1 binary64)) |
(+ 1 (cos x)) |
(+.f64 (cos.f64 x) #s(literal 1 binary64)) |
(+ 1 (cos x)) |
(+.f64 (cos.f64 x) #s(literal 1 binary64)) |
(cos x) |
(cos.f64 x) |
(cos x) |
(cos.f64 x) |
(cos x) |
(cos.f64 x) |
(cos x) |
(cos.f64 x) |
(* 1/576 (pow x 2)) |
(*.f64 #s(literal 1/576 binary64) (*.f64 x x)) |
(* 1/576 (pow x 2)) |
(*.f64 #s(literal 1/576 binary64) (*.f64 x x)) |
(* 1/576 (pow x 2)) |
(*.f64 #s(literal 1/576 binary64) (*.f64 x x)) |
(* 1/576 (pow x 2)) |
(*.f64 #s(literal 1/576 binary64) (*.f64 x x)) |
-1/24 |
#s(literal -1/24 binary64) |
(- (* 1/2 (/ 1 (pow x 2))) 1/24) |
(-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 x x)) #s(literal 1/24 binary64)) |
(- (* 1/2 (/ 1 (pow x 2))) (+ 1/24 (/ 6 (pow x 4)))) |
(-.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 x x)) #s(literal 1/24 binary64)) (/.f64 #s(literal 6 binary64) (pow.f64 x #s(literal 4 binary64)))) |
(- (+ (* 1/2 (/ 1 (pow x 2))) (* 72 (/ 1 (pow x 6)))) (+ 1/24 (/ 6 (pow x 4)))) |
(-.f64 (-.f64 (/.f64 #s(literal -6 binary64) (pow.f64 x #s(literal 4 binary64))) (/.f64 #s(literal -1/2 binary64) (*.f64 x x))) (-.f64 #s(literal 1/24 binary64) (/.f64 #s(literal 72 binary64) (pow.f64 x #s(literal 6 binary64))))) |
(/ -6 (pow x 2)) |
(/.f64 #s(literal -6 binary64) (*.f64 x x)) |
(/ (- (* 72 (/ 1 (pow x 2))) 6) (pow x 2)) |
(/.f64 (/.f64 (-.f64 (/.f64 #s(literal 72 binary64) (*.f64 x x)) #s(literal 6 binary64)) x) x) |
(/ (- (* 72 (/ 1 (pow x 2))) (+ 6 (/ 864 (pow x 4)))) (pow x 2)) |
(/.f64 (-.f64 (-.f64 (/.f64 #s(literal 72 binary64) (*.f64 x x)) #s(literal 6 binary64)) (/.f64 #s(literal 864 binary64) (pow.f64 x #s(literal 4 binary64)))) (*.f64 x x)) |
(/ (- (+ (* 72 (/ 1 (pow x 2))) (* 10368 (/ 1 (pow x 6)))) (+ 6 (/ 864 (pow x 4)))) (pow x 2)) |
(/.f64 (-.f64 (-.f64 (-.f64 (/.f64 #s(literal 72 binary64) (*.f64 x x)) #s(literal 6 binary64)) (/.f64 #s(literal 864 binary64) (pow.f64 x #s(literal 4 binary64)))) (/.f64 #s(literal -10368 binary64) (pow.f64 x #s(literal 6 binary64)))) (*.f64 x x)) |
| 9 246× | lower-fma.f32 |
| 9 240× | lower-fma.f64 |
| 4 096× | lower-/.f32 |
| 4 092× | lower-/.f64 |
| 3 774× | lower-*.f32 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 30 | 185 |
| 0 | 46 | 181 |
| 1 | 168 | 178 |
| 2 | 1225 | 130 |
| 0 | 9277 | 123 |
| 1× | iter limit |
| 1× | node limit |
| 1× | iter limit |
| Inputs |
|---|
#s(approx (- 1 (cos x)) (*.f64 (*.f64 #s(approx (+ (* -1/24 (* x x)) 1/2) #s(literal 1/2 binary64)) x) x)) |
(*.f64 (*.f64 #s(approx (+ (* -1/24 (* x x)) 1/2) #s(literal 1/2 binary64)) x) x) |
(*.f64 #s(approx (+ (* -1/24 (* x x)) 1/2) #s(literal 1/2 binary64)) x) |
#s(approx (+ (* -1/24 (* x x)) 1/2) #s(literal 1/2 binary64)) |
(*.f64 (fma.f64 (*.f64 x x) (/.f64 (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) |
(neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)))) |
#s(approx (- 1 (cos x)) (*.f64 (*.f64 (fma.f64 (*.f64 x x) (/.f64 (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) x)) |
(*.f64 (*.f64 (fma.f64 (*.f64 x x) (/.f64 (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) x) |
(+.f64 #s(approx (cos x) #s(literal 1 binary64)) #s(literal 1 binary64)) |
#s(approx (cos x) #s(literal 1 binary64)) |
(*.f64 #s(literal 1/576 binary64) (*.f64 x x)) |
(/.f64 (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64))) |
(/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))) |
| Outputs |
|---|
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
Compiled 9 504 to 1 257 computations (86.8% saved)
5 alts after pruning (2 fresh and 3 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 352 | 2 | 354 |
| Fresh | 0 | 0 | 0 |
| Picked | 2 | 1 | 3 |
| Done | 0 | 2 | 2 |
| Total | 354 | 5 | 359 |
| Status | Accuracy | Program |
|---|---|---|
| ✓ | 51.2% | (-.f64 #s(literal 1 binary64) #s(approx (cos x) #s(literal 1 binary64))) |
| ▶ | 100.0% | #s(approx (- 1 (cos x)) (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(approx (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2)) (*.f64 #s(literal -1/288 binary64) (*.f64 x x))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) x)) |
| ✓ | 100.0% | #s(approx (- 1 (cos x)) (*.f64 (*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) x)) |
| ✓ | 99.9% | #s(approx (- 1 (cos x)) (*.f64 (*.f64 #s(approx (+ (* -1/24 (* x x)) 1/2) #s(literal 1/2 binary64)) x) x)) |
| ▶ | 4.1% | #s(approx (+ (cos x) 1) #s(literal 2 binary64)) |
Compiled 48 to 36 computations (25% saved)
| 1× | egg-herbie |
Found 5 expressions of interest:
| New | Metric | Score | Program |
|---|---|---|---|
| cost-diff | 0 | (fma.f64 (*.f64 x x) #s(approx (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2)) (*.f64 #s(literal -1/288 binary64) (*.f64 x x))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) | |
| cost-diff | 0 | #s(approx (- 1 (cos x)) (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(approx (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2)) (*.f64 #s(literal -1/288 binary64) (*.f64 x x))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) x)) | |
| cost-diff | 128 | (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)))) | |
| cost-diff | 6144 | (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(approx (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2)) (*.f64 #s(literal -1/288 binary64) (*.f64 x x))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) x) | |
| cost-diff | 0 | #s(approx (+ (cos x) 1) #s(literal 2 binary64)) |
| 1 708× | lower-fma.f32 |
| 1 704× | lower-fma.f64 |
| 1 272× | lower-*.f32 |
| 1 264× | lower-*.f64 |
| 944× | unsub-neg |
Useful iterations: 3 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 29 | 205 |
| 0 | 40 | 200 |
| 1 | 77 | 200 |
| 2 | 123 | 200 |
| 3 | 245 | 195 |
| 4 | 474 | 195 |
| 5 | 777 | 195 |
| 6 | 1172 | 195 |
| 7 | 1868 | 195 |
| 8 | 2589 | 195 |
| 9 | 2919 | 195 |
| 10 | 3047 | 195 |
| 11 | 3065 | 195 |
| 12 | 3069 | 195 |
| 13 | 3217 | 195 |
| 14 | 3281 | 195 |
| 15 | 3291 | 195 |
| 16 | 3449 | 195 |
| 17 | 4081 | 195 |
| 18 | 4081 | 195 |
| 19 | 4081 | 195 |
| 0 | 4081 | 195 |
| 1× | iter limit |
| 1× | saturated |
| 1× | iter limit |
| Inputs |
|---|
#s(approx (+ (cos x) 1) #s(literal 2 binary64)) |
#s(literal 2 binary64) |
#s(approx (- 1 (cos x)) (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(approx (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2)) (*.f64 #s(literal -1/288 binary64) (*.f64 x x))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) x)) |
(*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(approx (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2)) (*.f64 #s(literal -1/288 binary64) (*.f64 x x))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) x) |
(*.f64 (fma.f64 (*.f64 x x) #s(approx (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2)) (*.f64 #s(literal -1/288 binary64) (*.f64 x x))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) |
(fma.f64 (*.f64 x x) #s(approx (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2)) (*.f64 #s(literal -1/288 binary64) (*.f64 x x))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) |
(*.f64 x x) |
x |
#s(approx (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2)) (*.f64 #s(literal -1/288 binary64) (*.f64 x x))) |
(*.f64 #s(literal -1/288 binary64) (*.f64 x x)) |
#s(literal -1/288 binary64) |
(neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)))) |
(/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))) |
#s(literal -1/4 binary64) |
(fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) |
#s(literal 1/24 binary64) |
#s(literal 1/2 binary64) |
| Outputs |
|---|
#s(approx (+ (cos x) 1) #s(literal 2 binary64)) |
#s(literal 2 binary64) |
#s(approx (- 1 (cos x)) (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(approx (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2)) (*.f64 #s(literal -1/288 binary64) (*.f64 x x))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) x)) |
#s(approx (- 1 (cos x)) (*.f64 (fma.f64 #s(approx (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2)) (*.f64 #s(literal -1/288 binary64) (*.f64 x x))) (*.f64 x x) (/.f64 #s(literal 1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)))) (*.f64 x x))) |
(*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(approx (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2)) (*.f64 #s(literal -1/288 binary64) (*.f64 x x))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) x) |
(*.f64 (fma.f64 #s(approx (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2)) (*.f64 #s(literal -1/288 binary64) (*.f64 x x))) (*.f64 x x) (/.f64 #s(literal 1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)))) (*.f64 x x)) |
(*.f64 (fma.f64 (*.f64 x x) #s(approx (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2)) (*.f64 #s(literal -1/288 binary64) (*.f64 x x))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) |
(fma.f64 (pow.f64 x #s(literal 3 binary64)) #s(approx (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2)) (*.f64 #s(literal -1/288 binary64) (*.f64 x x))) (*.f64 (/.f64 #s(literal 1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))) x)) |
(fma.f64 (*.f64 x x) #s(approx (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2)) (*.f64 #s(literal -1/288 binary64) (*.f64 x x))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) |
(fma.f64 #s(approx (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2)) (*.f64 #s(literal -1/288 binary64) (*.f64 x x))) (*.f64 x x) (/.f64 #s(literal 1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)))) |
(*.f64 x x) |
x |
#s(approx (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2)) (*.f64 #s(literal -1/288 binary64) (*.f64 x x))) |
(*.f64 #s(literal -1/288 binary64) (*.f64 x x)) |
#s(literal -1/288 binary64) |
(neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)))) |
(/.f64 #s(literal 1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))) |
(/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))) |
(/.f64 #s(literal 1/4 binary64) (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64))) |
#s(literal -1/4 binary64) |
(fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) |
#s(literal 1/24 binary64) |
#s(literal 1/2 binary64) |
Found 5 expressions of interest:
| New | Metric | Score | Program |
|---|---|---|---|
| accuracy | 0.00390625 | (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(approx (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2)) (*.f64 #s(literal -1/288 binary64) (*.f64 x x))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) x) | |
| accuracy | 0.0078125 | (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))) | |
| accuracy | 0.0804551281885406 | #s(approx (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2)) (*.f64 #s(literal -1/288 binary64) (*.f64 x x))) | |
| accuracy | 0.19207001953688402 | (*.f64 #s(literal -1/288 binary64) (*.f64 x x)) | |
| accuracy | 0.09583377183457051 | #s(approx (+ (cos x) 1) #s(literal 2 binary64)) |
| 111.0ms | 174× | 2 | valid |
| 45.0ms | 81× | 1 | valid |
| 0.0ms | 1× | 0 | valid |
Compiled 153 to 29 computations (81% saved)
ival-cos: 48.0ms (35.4% of total)ival-sub: 23.0ms (17% of total)adjust: 21.0ms (15.5% of total)ival-mult: 15.0ms (11.1% of total)const: 12.0ms (8.9% of total)ival-add: 9.0ms (6.6% of total)ival-div: 5.0ms (3.7% of total)ival-neg: 2.0ms (1.5% of total)exact: 1.0ms (0.7% of total)ival-assert: 0.0ms (0% of total)ival-true: 0.0ms (0% of total)| Inputs |
|---|
#s(alt #s(approx (+ (cos x) 1) #s(literal 2 binary64)) (patch #s(approx (+ (cos x) 1) #s(literal 2 binary64)) #<representation binary64>) () ()) |
#s(alt (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(approx (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2)) (*.f64 #s(literal -1/288 binary64) (*.f64 x x))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) x) (patch (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(approx (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2)) (*.f64 #s(literal -1/288 binary64) (*.f64 x x))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) x) #<representation binary64>) () ()) |
#s(alt (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)))) (patch (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)))) #<representation binary64>) () ()) |
#s(alt #s(approx (- 1 (cos x)) (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(approx (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2)) (*.f64 #s(literal -1/288 binary64) (*.f64 x x))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) x)) (patch #s(approx (- 1 (cos x)) (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(approx (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2)) (*.f64 #s(literal -1/288 binary64) (*.f64 x x))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) x)) #<representation binary64>) () ()) |
#s(alt (fma.f64 (*.f64 x x) #s(approx (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2)) (*.f64 #s(literal -1/288 binary64) (*.f64 x x))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) (patch (fma.f64 (*.f64 x x) #s(approx (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2)) (*.f64 #s(literal -1/288 binary64) (*.f64 x x))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) #<representation binary64>) () ()) |
#s(alt (*.f64 #s(literal -1/288 binary64) (*.f64 x x)) (patch (*.f64 #s(literal -1/288 binary64) (*.f64 x x)) #<representation binary64>) () ()) |
#s(alt #s(approx (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2)) (*.f64 #s(literal -1/288 binary64) (*.f64 x x))) (patch #s(approx (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2)) (*.f64 #s(literal -1/288 binary64) (*.f64 x x))) #<representation binary64>) () ()) |
#s(alt (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))) (patch (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))) #<representation binary64>) () ()) |
| Outputs |
|---|
#s(alt 2 (taylor 0 x) (#s(alt #s(approx (+ (cos x) 1) #s(literal 2 binary64)) (patch #s(approx (+ (cos x) 1) #s(literal 2 binary64)) #<representation binary64>) () ())) ()) |
#s(alt (+ 2 (* -1/2 (pow x 2))) (taylor 0 x) (#s(alt #s(approx (+ (cos x) 1) #s(literal 2 binary64)) (patch #s(approx (+ (cos x) 1) #s(literal 2 binary64)) #<representation binary64>) () ())) ()) |
#s(alt (+ 2 (* (pow x 2) (- (* 1/24 (pow x 2)) 1/2))) (taylor 0 x) (#s(alt #s(approx (+ (cos x) 1) #s(literal 2 binary64)) (patch #s(approx (+ (cos x) 1) #s(literal 2 binary64)) #<representation binary64>) () ())) ()) |
#s(alt (+ 2 (* (pow x 2) (- (* (pow x 2) (+ 1/24 (* -1/720 (pow x 2)))) 1/2))) (taylor 0 x) (#s(alt #s(approx (+ (cos x) 1) #s(literal 2 binary64)) (patch #s(approx (+ (cos x) 1) #s(literal 2 binary64)) #<representation binary64>) () ())) ()) |
#s(alt (* 1/2 (pow x 2)) (taylor 0 x) (#s(alt (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(approx (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2)) (*.f64 #s(literal -1/288 binary64) (*.f64 x x))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) x) (patch (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(approx (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2)) (*.f64 #s(literal -1/288 binary64) (*.f64 x x))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) x) #<representation binary64>) () ())) ()) |
#s(alt (* (pow x 2) (+ 1/2 (* -1/24 (pow x 2)))) (taylor 0 x) (#s(alt (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(approx (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2)) (*.f64 #s(literal -1/288 binary64) (*.f64 x x))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) x) (patch (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(approx (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2)) (*.f64 #s(literal -1/288 binary64) (*.f64 x x))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) x) #<representation binary64>) () ())) ()) |
#s(alt (* (pow x 2) (+ 1/2 (* -1/24 (pow x 2)))) (taylor 0 x) (#s(alt (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(approx (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2)) (*.f64 #s(literal -1/288 binary64) (*.f64 x x))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) x) (patch (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(approx (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2)) (*.f64 #s(literal -1/288 binary64) (*.f64 x x))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) x) #<representation binary64>) () ())) ()) |
#s(alt (* (pow x 2) (+ 1/2 (* -1/24 (pow x 2)))) (taylor 0 x) (#s(alt (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(approx (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2)) (*.f64 #s(literal -1/288 binary64) (*.f64 x x))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) x) (patch (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(approx (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2)) (*.f64 #s(literal -1/288 binary64) (*.f64 x x))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) x) #<representation binary64>) () ())) ()) |
#s(alt 1/2 (taylor 0 x) (#s(alt (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)))) (patch (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)))) #<representation binary64>) () ())) ()) |
#s(alt (+ 1/2 (* -1/24 (pow x 2))) (taylor 0 x) (#s(alt (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)))) (patch (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)))) #<representation binary64>) () ())) ()) |
#s(alt (+ 1/2 (* (pow x 2) (- (* 1/288 (pow x 2)) 1/24))) (taylor 0 x) (#s(alt (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)))) (patch (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)))) #<representation binary64>) () ())) ()) |
#s(alt (+ 1/2 (* (pow x 2) (- (* (pow x 2) (+ 1/288 (* -1/3456 (pow x 2)))) 1/24))) (taylor 0 x) (#s(alt (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)))) (patch (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)))) #<representation binary64>) () ())) ()) |
#s(alt (* 1/2 (pow x 2)) (taylor 0 x) (#s(alt #s(approx (- 1 (cos x)) (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(approx (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2)) (*.f64 #s(literal -1/288 binary64) (*.f64 x x))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) x)) (patch #s(approx (- 1 (cos x)) (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(approx (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2)) (*.f64 #s(literal -1/288 binary64) (*.f64 x x))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) x)) #<representation binary64>) () ())) ()) |
#s(alt (* (pow x 2) (+ 1/2 (* -1/24 (pow x 2)))) (taylor 0 x) (#s(alt #s(approx (- 1 (cos x)) (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(approx (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2)) (*.f64 #s(literal -1/288 binary64) (*.f64 x x))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) x)) (patch #s(approx (- 1 (cos x)) (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(approx (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2)) (*.f64 #s(literal -1/288 binary64) (*.f64 x x))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) x)) #<representation binary64>) () ())) ()) |
#s(alt (* (pow x 2) (+ 1/2 (* (pow x 2) (- (* 1/720 (pow x 2)) 1/24)))) (taylor 0 x) (#s(alt #s(approx (- 1 (cos x)) (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(approx (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2)) (*.f64 #s(literal -1/288 binary64) (*.f64 x x))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) x)) (patch #s(approx (- 1 (cos x)) (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(approx (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2)) (*.f64 #s(literal -1/288 binary64) (*.f64 x x))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) x)) #<representation binary64>) () ())) ()) |
#s(alt (* (pow x 2) (+ 1/2 (* (pow x 2) (- (* (pow x 2) (+ 1/720 (* -1/40320 (pow x 2)))) 1/24)))) (taylor 0 x) (#s(alt #s(approx (- 1 (cos x)) (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(approx (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2)) (*.f64 #s(literal -1/288 binary64) (*.f64 x x))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) x)) (patch #s(approx (- 1 (cos x)) (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(approx (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2)) (*.f64 #s(literal -1/288 binary64) (*.f64 x x))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) x)) #<representation binary64>) () ())) ()) |
#s(alt 1/2 (taylor 0 x) (#s(alt (fma.f64 (*.f64 x x) #s(approx (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2)) (*.f64 #s(literal -1/288 binary64) (*.f64 x x))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) (patch (fma.f64 (*.f64 x x) #s(approx (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2)) (*.f64 #s(literal -1/288 binary64) (*.f64 x x))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) #<representation binary64>) () ())) ()) |
#s(alt (+ 1/2 (* -1/24 (pow x 2))) (taylor 0 x) (#s(alt (fma.f64 (*.f64 x x) #s(approx (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2)) (*.f64 #s(literal -1/288 binary64) (*.f64 x x))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) (patch (fma.f64 (*.f64 x x) #s(approx (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2)) (*.f64 #s(literal -1/288 binary64) (*.f64 x x))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) #<representation binary64>) () ())) ()) |
#s(alt (+ 1/2 (* -1/24 (pow x 2))) (taylor 0 x) (#s(alt (fma.f64 (*.f64 x x) #s(approx (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2)) (*.f64 #s(literal -1/288 binary64) (*.f64 x x))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) (patch (fma.f64 (*.f64 x x) #s(approx (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2)) (*.f64 #s(literal -1/288 binary64) (*.f64 x x))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) #<representation binary64>) () ())) ()) |
#s(alt (+ 1/2 (* -1/24 (pow x 2))) (taylor 0 x) (#s(alt (fma.f64 (*.f64 x x) #s(approx (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2)) (*.f64 #s(literal -1/288 binary64) (*.f64 x x))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) (patch (fma.f64 (*.f64 x x) #s(approx (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2)) (*.f64 #s(literal -1/288 binary64) (*.f64 x x))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) #<representation binary64>) () ())) ()) |
#s(alt (* -1/288 (pow x 2)) (taylor 0 x) (#s(alt (*.f64 #s(literal -1/288 binary64) (*.f64 x x)) (patch (*.f64 #s(literal -1/288 binary64) (*.f64 x x)) #<representation binary64>) () ())) ()) |
#s(alt (* -1/288 (pow x 2)) (taylor 0 x) (#s(alt (*.f64 #s(literal -1/288 binary64) (*.f64 x x)) (patch (*.f64 #s(literal -1/288 binary64) (*.f64 x x)) #<representation binary64>) () ())) ()) |
#s(alt (* -1/288 (pow x 2)) (taylor 0 x) (#s(alt (*.f64 #s(literal -1/288 binary64) (*.f64 x x)) (patch (*.f64 #s(literal -1/288 binary64) (*.f64 x x)) #<representation binary64>) () ())) ()) |
#s(alt (* -1/288 (pow x 2)) (taylor 0 x) (#s(alt (*.f64 #s(literal -1/288 binary64) (*.f64 x x)) (patch (*.f64 #s(literal -1/288 binary64) (*.f64 x x)) #<representation binary64>) () ())) ()) |
#s(alt (* -1/288 (pow x 2)) (taylor 0 x) (#s(alt #s(approx (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2)) (*.f64 #s(literal -1/288 binary64) (*.f64 x x))) (patch #s(approx (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2)) (*.f64 #s(literal -1/288 binary64) (*.f64 x x))) #<representation binary64>) () ())) ()) |
#s(alt (* (pow x 2) (- (* 1/3456 (pow x 2)) 1/288)) (taylor 0 x) (#s(alt #s(approx (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2)) (*.f64 #s(literal -1/288 binary64) (*.f64 x x))) (patch #s(approx (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2)) (*.f64 #s(literal -1/288 binary64) (*.f64 x x))) #<representation binary64>) () ())) ()) |
#s(alt (* (pow x 2) (- (* (pow x 2) (+ 1/3456 (* -1/41472 (pow x 2)))) 1/288)) (taylor 0 x) (#s(alt #s(approx (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2)) (*.f64 #s(literal -1/288 binary64) (*.f64 x x))) (patch #s(approx (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2)) (*.f64 #s(literal -1/288 binary64) (*.f64 x x))) #<representation binary64>) () ())) ()) |
#s(alt (* (pow x 2) (- (* (pow x 2) (+ 1/3456 (* (pow x 2) (- (* 1/497664 (pow x 2)) 1/41472)))) 1/288)) (taylor 0 x) (#s(alt #s(approx (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2)) (*.f64 #s(literal -1/288 binary64) (*.f64 x x))) (patch #s(approx (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2)) (*.f64 #s(literal -1/288 binary64) (*.f64 x x))) #<representation binary64>) () ())) ()) |
#s(alt -1/2 (taylor 0 x) (#s(alt (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))) (patch (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))) #<representation binary64>) () ())) ()) |
#s(alt (- (* 1/24 (pow x 2)) 1/2) (taylor 0 x) (#s(alt (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))) (patch (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))) #<representation binary64>) () ())) ()) |
#s(alt (- (* (pow x 2) (+ 1/24 (* -1/288 (pow x 2)))) 1/2) (taylor 0 x) (#s(alt (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))) (patch (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))) #<representation binary64>) () ())) ()) |
#s(alt (- (* (pow x 2) (+ 1/24 (* (pow x 2) (- (* 1/3456 (pow x 2)) 1/288)))) 1/2) (taylor 0 x) (#s(alt (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))) (patch (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))) #<representation binary64>) () ())) ()) |
#s(alt (+ 1 (cos x)) (taylor inf x) (#s(alt #s(approx (+ (cos x) 1) #s(literal 2 binary64)) (patch #s(approx (+ (cos x) 1) #s(literal 2 binary64)) #<representation binary64>) () ())) ()) |
#s(alt (+ 1 (cos x)) (taylor inf x) (#s(alt #s(approx (+ (cos x) 1) #s(literal 2 binary64)) (patch #s(approx (+ (cos x) 1) #s(literal 2 binary64)) #<representation binary64>) () ())) ()) |
#s(alt (+ 1 (cos x)) (taylor inf x) (#s(alt #s(approx (+ (cos x) 1) #s(literal 2 binary64)) (patch #s(approx (+ (cos x) 1) #s(literal 2 binary64)) #<representation binary64>) () ())) ()) |
#s(alt (+ 1 (cos x)) (taylor inf x) (#s(alt #s(approx (+ (cos x) 1) #s(literal 2 binary64)) (patch #s(approx (+ (cos x) 1) #s(literal 2 binary64)) #<representation binary64>) () ())) ()) |
#s(alt (* -1/24 (pow x 4)) (taylor inf x) (#s(alt (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(approx (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2)) (*.f64 #s(literal -1/288 binary64) (*.f64 x x))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) x) (patch (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(approx (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2)) (*.f64 #s(literal -1/288 binary64) (*.f64 x x))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) x) #<representation binary64>) () ())) ()) |
#s(alt (* (pow x 4) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) (taylor inf x) (#s(alt (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(approx (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2)) (*.f64 #s(literal -1/288 binary64) (*.f64 x x))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) x) (patch (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(approx (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2)) (*.f64 #s(literal -1/288 binary64) (*.f64 x x))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) x) #<representation binary64>) () ())) ()) |
#s(alt (* (pow x 4) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) (taylor inf x) (#s(alt (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(approx (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2)) (*.f64 #s(literal -1/288 binary64) (*.f64 x x))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) x) (patch (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(approx (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2)) (*.f64 #s(literal -1/288 binary64) (*.f64 x x))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) x) #<representation binary64>) () ())) ()) |
#s(alt (* (pow x 4) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) (taylor inf x) (#s(alt (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(approx (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2)) (*.f64 #s(literal -1/288 binary64) (*.f64 x x))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) x) (patch (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(approx (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2)) (*.f64 #s(literal -1/288 binary64) (*.f64 x x))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) x) #<representation binary64>) () ())) ()) |
#s(alt (/ 6 (pow x 2)) (taylor inf x) (#s(alt (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)))) (patch (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)))) #<representation binary64>) () ())) ()) |
#s(alt (/ (- 6 (* 72 (/ 1 (pow x 2)))) (pow x 2)) (taylor inf x) (#s(alt (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)))) (patch (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)))) #<representation binary64>) () ())) ()) |
#s(alt (/ (- (+ 6 (/ 864 (pow x 4))) (* 72 (/ 1 (pow x 2)))) (pow x 2)) (taylor inf x) (#s(alt (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)))) (patch (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)))) #<representation binary64>) () ())) ()) |
#s(alt (/ (- (+ 6 (/ 864 (pow x 4))) (+ (* 72 (/ 1 (pow x 2))) (* 10368 (/ 1 (pow x 6))))) (pow x 2)) (taylor inf x) (#s(alt (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)))) (patch (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)))) #<representation binary64>) () ())) ()) |
#s(alt (- 1 (cos x)) (taylor inf x) (#s(alt #s(approx (- 1 (cos x)) (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(approx (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2)) (*.f64 #s(literal -1/288 binary64) (*.f64 x x))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) x)) (patch #s(approx (- 1 (cos x)) (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(approx (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2)) (*.f64 #s(literal -1/288 binary64) (*.f64 x x))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) x)) #<representation binary64>) () ())) ()) |
#s(alt (- 1 (cos x)) (taylor inf x) (#s(alt #s(approx (- 1 (cos x)) (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(approx (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2)) (*.f64 #s(literal -1/288 binary64) (*.f64 x x))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) x)) (patch #s(approx (- 1 (cos x)) (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(approx (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2)) (*.f64 #s(literal -1/288 binary64) (*.f64 x x))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) x)) #<representation binary64>) () ())) ()) |
#s(alt (- 1 (cos x)) (taylor inf x) (#s(alt #s(approx (- 1 (cos x)) (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(approx (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2)) (*.f64 #s(literal -1/288 binary64) (*.f64 x x))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) x)) (patch #s(approx (- 1 (cos x)) (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(approx (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2)) (*.f64 #s(literal -1/288 binary64) (*.f64 x x))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) x)) #<representation binary64>) () ())) ()) |
#s(alt (- 1 (cos x)) (taylor inf x) (#s(alt #s(approx (- 1 (cos x)) (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(approx (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2)) (*.f64 #s(literal -1/288 binary64) (*.f64 x x))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) x)) (patch #s(approx (- 1 (cos x)) (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(approx (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2)) (*.f64 #s(literal -1/288 binary64) (*.f64 x x))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) x)) #<representation binary64>) () ())) ()) |
#s(alt (* -1/24 (pow x 2)) (taylor inf x) (#s(alt (fma.f64 (*.f64 x x) #s(approx (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2)) (*.f64 #s(literal -1/288 binary64) (*.f64 x x))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) (patch (fma.f64 (*.f64 x x) #s(approx (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2)) (*.f64 #s(literal -1/288 binary64) (*.f64 x x))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) #<representation binary64>) () ())) ()) |
#s(alt (* (pow x 2) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) (taylor inf x) (#s(alt (fma.f64 (*.f64 x x) #s(approx (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2)) (*.f64 #s(literal -1/288 binary64) (*.f64 x x))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) (patch (fma.f64 (*.f64 x x) #s(approx (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2)) (*.f64 #s(literal -1/288 binary64) (*.f64 x x))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) #<representation binary64>) () ())) ()) |
#s(alt (* (pow x 2) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) (taylor inf x) (#s(alt (fma.f64 (*.f64 x x) #s(approx (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2)) (*.f64 #s(literal -1/288 binary64) (*.f64 x x))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) (patch (fma.f64 (*.f64 x x) #s(approx (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2)) (*.f64 #s(literal -1/288 binary64) (*.f64 x x))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) #<representation binary64>) () ())) ()) |
#s(alt (* (pow x 2) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) (taylor inf x) (#s(alt (fma.f64 (*.f64 x x) #s(approx (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2)) (*.f64 #s(literal -1/288 binary64) (*.f64 x x))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) (patch (fma.f64 (*.f64 x x) #s(approx (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2)) (*.f64 #s(literal -1/288 binary64) (*.f64 x x))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) #<representation binary64>) () ())) ()) |
#s(alt (* -1/288 (pow x 2)) (taylor inf x) (#s(alt (*.f64 #s(literal -1/288 binary64) (*.f64 x x)) (patch (*.f64 #s(literal -1/288 binary64) (*.f64 x x)) #<representation binary64>) () ())) ()) |
#s(alt (* -1/288 (pow x 2)) (taylor inf x) (#s(alt (*.f64 #s(literal -1/288 binary64) (*.f64 x x)) (patch (*.f64 #s(literal -1/288 binary64) (*.f64 x x)) #<representation binary64>) () ())) ()) |
#s(alt (* -1/288 (pow x 2)) (taylor inf x) (#s(alt (*.f64 #s(literal -1/288 binary64) (*.f64 x x)) (patch (*.f64 #s(literal -1/288 binary64) (*.f64 x x)) #<representation binary64>) () ())) ()) |
#s(alt (* -1/288 (pow x 2)) (taylor inf x) (#s(alt (*.f64 #s(literal -1/288 binary64) (*.f64 x x)) (patch (*.f64 #s(literal -1/288 binary64) (*.f64 x x)) #<representation binary64>) () ())) ()) |
#s(alt -1/24 (taylor inf x) (#s(alt #s(approx (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2)) (*.f64 #s(literal -1/288 binary64) (*.f64 x x))) (patch #s(approx (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2)) (*.f64 #s(literal -1/288 binary64) (*.f64 x x))) #<representation binary64>) () ())) ()) |
#s(alt (- (* 1/2 (/ 1 (pow x 2))) 1/24) (taylor inf x) (#s(alt #s(approx (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2)) (*.f64 #s(literal -1/288 binary64) (*.f64 x x))) (patch #s(approx (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2)) (*.f64 #s(literal -1/288 binary64) (*.f64 x x))) #<representation binary64>) () ())) ()) |
#s(alt (- (* 1/2 (/ 1 (pow x 2))) (+ 1/24 (/ 6 (pow x 4)))) (taylor inf x) (#s(alt #s(approx (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2)) (*.f64 #s(literal -1/288 binary64) (*.f64 x x))) (patch #s(approx (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2)) (*.f64 #s(literal -1/288 binary64) (*.f64 x x))) #<representation binary64>) () ())) ()) |
#s(alt (- (+ (* 1/2 (/ 1 (pow x 2))) (* 72 (/ 1 (pow x 6)))) (+ 1/24 (/ 6 (pow x 4)))) (taylor inf x) (#s(alt #s(approx (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2)) (*.f64 #s(literal -1/288 binary64) (*.f64 x x))) (patch #s(approx (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2)) (*.f64 #s(literal -1/288 binary64) (*.f64 x x))) #<representation binary64>) () ())) ()) |
#s(alt (/ -6 (pow x 2)) (taylor inf x) (#s(alt (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))) (patch (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))) #<representation binary64>) () ())) ()) |
#s(alt (/ (- (* 72 (/ 1 (pow x 2))) 6) (pow x 2)) (taylor inf x) (#s(alt (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))) (patch (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))) #<representation binary64>) () ())) ()) |
#s(alt (/ (- (* 72 (/ 1 (pow x 2))) (+ 6 (/ 864 (pow x 4)))) (pow x 2)) (taylor inf x) (#s(alt (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))) (patch (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))) #<representation binary64>) () ())) ()) |
#s(alt (/ (- (+ (* 72 (/ 1 (pow x 2))) (* 10368 (/ 1 (pow x 6)))) (+ 6 (/ 864 (pow x 4)))) (pow x 2)) (taylor inf x) (#s(alt (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))) (patch (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))) #<representation binary64>) () ())) ()) |
#s(alt (+ 1 (cos x)) (taylor -inf x) (#s(alt #s(approx (+ (cos x) 1) #s(literal 2 binary64)) (patch #s(approx (+ (cos x) 1) #s(literal 2 binary64)) #<representation binary64>) () ())) ()) |
#s(alt (+ 1 (cos x)) (taylor -inf x) (#s(alt #s(approx (+ (cos x) 1) #s(literal 2 binary64)) (patch #s(approx (+ (cos x) 1) #s(literal 2 binary64)) #<representation binary64>) () ())) ()) |
#s(alt (+ 1 (cos x)) (taylor -inf x) (#s(alt #s(approx (+ (cos x) 1) #s(literal 2 binary64)) (patch #s(approx (+ (cos x) 1) #s(literal 2 binary64)) #<representation binary64>) () ())) ()) |
#s(alt (+ 1 (cos x)) (taylor -inf x) (#s(alt #s(approx (+ (cos x) 1) #s(literal 2 binary64)) (patch #s(approx (+ (cos x) 1) #s(literal 2 binary64)) #<representation binary64>) () ())) ()) |
#s(alt (* -1/24 (pow x 4)) (taylor -inf x) (#s(alt (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(approx (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2)) (*.f64 #s(literal -1/288 binary64) (*.f64 x x))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) x) (patch (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(approx (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2)) (*.f64 #s(literal -1/288 binary64) (*.f64 x x))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) x) #<representation binary64>) () ())) ()) |
#s(alt (* (pow x 4) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) (taylor -inf x) (#s(alt (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(approx (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2)) (*.f64 #s(literal -1/288 binary64) (*.f64 x x))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) x) (patch (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(approx (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2)) (*.f64 #s(literal -1/288 binary64) (*.f64 x x))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) x) #<representation binary64>) () ())) ()) |
#s(alt (* (pow x 4) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) (taylor -inf x) (#s(alt (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(approx (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2)) (*.f64 #s(literal -1/288 binary64) (*.f64 x x))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) x) (patch (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(approx (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2)) (*.f64 #s(literal -1/288 binary64) (*.f64 x x))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) x) #<representation binary64>) () ())) ()) |
#s(alt (* (pow x 4) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) (taylor -inf x) (#s(alt (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(approx (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2)) (*.f64 #s(literal -1/288 binary64) (*.f64 x x))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) x) (patch (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(approx (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2)) (*.f64 #s(literal -1/288 binary64) (*.f64 x x))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) x) #<representation binary64>) () ())) ()) |
#s(alt (/ 6 (pow x 2)) (taylor -inf x) (#s(alt (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)))) (patch (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)))) #<representation binary64>) () ())) ()) |
#s(alt (/ (- 6 (* 72 (/ 1 (pow x 2)))) (pow x 2)) (taylor -inf x) (#s(alt (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)))) (patch (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)))) #<representation binary64>) () ())) ()) |
#s(alt (/ (- (+ 6 (/ 864 (pow x 4))) (* 72 (/ 1 (pow x 2)))) (pow x 2)) (taylor -inf x) (#s(alt (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)))) (patch (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)))) #<representation binary64>) () ())) ()) |
#s(alt (/ (- (+ 6 (/ 864 (pow x 4))) (+ (* 72 (/ 1 (pow x 2))) (* 10368 (/ 1 (pow x 6))))) (pow x 2)) (taylor -inf x) (#s(alt (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)))) (patch (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)))) #<representation binary64>) () ())) ()) |
#s(alt (- 1 (cos x)) (taylor -inf x) (#s(alt #s(approx (- 1 (cos x)) (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(approx (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2)) (*.f64 #s(literal -1/288 binary64) (*.f64 x x))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) x)) (patch #s(approx (- 1 (cos x)) (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(approx (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2)) (*.f64 #s(literal -1/288 binary64) (*.f64 x x))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) x)) #<representation binary64>) () ())) ()) |
#s(alt (- 1 (cos x)) (taylor -inf x) (#s(alt #s(approx (- 1 (cos x)) (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(approx (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2)) (*.f64 #s(literal -1/288 binary64) (*.f64 x x))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) x)) (patch #s(approx (- 1 (cos x)) (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(approx (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2)) (*.f64 #s(literal -1/288 binary64) (*.f64 x x))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) x)) #<representation binary64>) () ())) ()) |
#s(alt (- 1 (cos x)) (taylor -inf x) (#s(alt #s(approx (- 1 (cos x)) (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(approx (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2)) (*.f64 #s(literal -1/288 binary64) (*.f64 x x))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) x)) (patch #s(approx (- 1 (cos x)) (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(approx (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2)) (*.f64 #s(literal -1/288 binary64) (*.f64 x x))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) x)) #<representation binary64>) () ())) ()) |
#s(alt (- 1 (cos x)) (taylor -inf x) (#s(alt #s(approx (- 1 (cos x)) (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(approx (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2)) (*.f64 #s(literal -1/288 binary64) (*.f64 x x))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) x)) (patch #s(approx (- 1 (cos x)) (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(approx (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2)) (*.f64 #s(literal -1/288 binary64) (*.f64 x x))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) x)) #<representation binary64>) () ())) ()) |
#s(alt (* -1/24 (pow x 2)) (taylor -inf x) (#s(alt (fma.f64 (*.f64 x x) #s(approx (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2)) (*.f64 #s(literal -1/288 binary64) (*.f64 x x))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) (patch (fma.f64 (*.f64 x x) #s(approx (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2)) (*.f64 #s(literal -1/288 binary64) (*.f64 x x))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) #<representation binary64>) () ())) ()) |
#s(alt (* (pow x 2) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) (taylor -inf x) (#s(alt (fma.f64 (*.f64 x x) #s(approx (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2)) (*.f64 #s(literal -1/288 binary64) (*.f64 x x))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) (patch (fma.f64 (*.f64 x x) #s(approx (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2)) (*.f64 #s(literal -1/288 binary64) (*.f64 x x))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) #<representation binary64>) () ())) ()) |
#s(alt (* (pow x 2) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) (taylor -inf x) (#s(alt (fma.f64 (*.f64 x x) #s(approx (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2)) (*.f64 #s(literal -1/288 binary64) (*.f64 x x))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) (patch (fma.f64 (*.f64 x x) #s(approx (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2)) (*.f64 #s(literal -1/288 binary64) (*.f64 x x))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) #<representation binary64>) () ())) ()) |
#s(alt (* (pow x 2) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) (taylor -inf x) (#s(alt (fma.f64 (*.f64 x x) #s(approx (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2)) (*.f64 #s(literal -1/288 binary64) (*.f64 x x))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) (patch (fma.f64 (*.f64 x x) #s(approx (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2)) (*.f64 #s(literal -1/288 binary64) (*.f64 x x))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) #<representation binary64>) () ())) ()) |
#s(alt (* -1/288 (pow x 2)) (taylor -inf x) (#s(alt (*.f64 #s(literal -1/288 binary64) (*.f64 x x)) (patch (*.f64 #s(literal -1/288 binary64) (*.f64 x x)) #<representation binary64>) () ())) ()) |
#s(alt (* -1/288 (pow x 2)) (taylor -inf x) (#s(alt (*.f64 #s(literal -1/288 binary64) (*.f64 x x)) (patch (*.f64 #s(literal -1/288 binary64) (*.f64 x x)) #<representation binary64>) () ())) ()) |
#s(alt (* -1/288 (pow x 2)) (taylor -inf x) (#s(alt (*.f64 #s(literal -1/288 binary64) (*.f64 x x)) (patch (*.f64 #s(literal -1/288 binary64) (*.f64 x x)) #<representation binary64>) () ())) ()) |
#s(alt (* -1/288 (pow x 2)) (taylor -inf x) (#s(alt (*.f64 #s(literal -1/288 binary64) (*.f64 x x)) (patch (*.f64 #s(literal -1/288 binary64) (*.f64 x x)) #<representation binary64>) () ())) ()) |
#s(alt -1/24 (taylor -inf x) (#s(alt #s(approx (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2)) (*.f64 #s(literal -1/288 binary64) (*.f64 x x))) (patch #s(approx (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2)) (*.f64 #s(literal -1/288 binary64) (*.f64 x x))) #<representation binary64>) () ())) ()) |
#s(alt (- (* 1/2 (/ 1 (pow x 2))) 1/24) (taylor -inf x) (#s(alt #s(approx (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2)) (*.f64 #s(literal -1/288 binary64) (*.f64 x x))) (patch #s(approx (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2)) (*.f64 #s(literal -1/288 binary64) (*.f64 x x))) #<representation binary64>) () ())) ()) |
#s(alt (- (* 1/2 (/ 1 (pow x 2))) (+ 1/24 (/ 6 (pow x 4)))) (taylor -inf x) (#s(alt #s(approx (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2)) (*.f64 #s(literal -1/288 binary64) (*.f64 x x))) (patch #s(approx (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2)) (*.f64 #s(literal -1/288 binary64) (*.f64 x x))) #<representation binary64>) () ())) ()) |
#s(alt (- (+ (* 1/2 (/ 1 (pow x 2))) (* 72 (/ 1 (pow x 6)))) (+ 1/24 (/ 6 (pow x 4)))) (taylor -inf x) (#s(alt #s(approx (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2)) (*.f64 #s(literal -1/288 binary64) (*.f64 x x))) (patch #s(approx (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2)) (*.f64 #s(literal -1/288 binary64) (*.f64 x x))) #<representation binary64>) () ())) ()) |
#s(alt (/ -6 (pow x 2)) (taylor -inf x) (#s(alt (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))) (patch (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))) #<representation binary64>) () ())) ()) |
#s(alt (/ (- (* 72 (/ 1 (pow x 2))) 6) (pow x 2)) (taylor -inf x) (#s(alt (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))) (patch (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))) #<representation binary64>) () ())) ()) |
#s(alt (/ (- (* 72 (/ 1 (pow x 2))) (+ 6 (/ 864 (pow x 4)))) (pow x 2)) (taylor -inf x) (#s(alt (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))) (patch (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))) #<representation binary64>) () ())) ()) |
#s(alt (/ (- (+ (* 72 (/ 1 (pow x 2))) (* 10368 (/ 1 (pow x 6)))) (+ 6 (/ 864 (pow x 4)))) (pow x 2)) (taylor -inf x) (#s(alt (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))) (patch (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))) #<representation binary64>) () ())) ()) |
3 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 1.0ms | x | @ | inf | ((+ (cos x) 1) (* (* (+ (* (* x x) (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2))) (neg (/ -1/4 (+ (* 1/24 (* x x)) 1/2)))) x) x) (neg (/ -1/4 (+ (* 1/24 (* x x)) 1/2))) (- 1 (cos x)) (+ (* (* x x) (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2))) (neg (/ -1/4 (+ (* 1/24 (* x x)) 1/2)))) (* -1/288 (* x x)) (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2)) (/ -1/4 (+ (* 1/24 (* x x)) 1/2))) |
| 1.0ms | x | @ | -inf | ((+ (cos x) 1) (* (* (+ (* (* x x) (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2))) (neg (/ -1/4 (+ (* 1/24 (* x x)) 1/2)))) x) x) (neg (/ -1/4 (+ (* 1/24 (* x x)) 1/2))) (- 1 (cos x)) (+ (* (* x x) (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2))) (neg (/ -1/4 (+ (* 1/24 (* x x)) 1/2)))) (* -1/288 (* x x)) (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2)) (/ -1/4 (+ (* 1/24 (* x x)) 1/2))) |
| 1.0ms | x | @ | 0 | ((+ (cos x) 1) (* (* (+ (* (* x x) (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2))) (neg (/ -1/4 (+ (* 1/24 (* x x)) 1/2)))) x) x) (neg (/ -1/4 (+ (* 1/24 (* x x)) 1/2))) (- 1 (cos x)) (+ (* (* x x) (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2))) (neg (/ -1/4 (+ (* 1/24 (* x x)) 1/2)))) (* -1/288 (* x x)) (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2)) (/ -1/4 (+ (* 1/24 (* x x)) 1/2))) |
| 1× | egg-herbie |
| 14 332× | lower-fma.f64 |
| 14 332× | lower-fma.f32 |
| 4 006× | lower-+.f64 |
| 4 006× | lower-+.f32 |
| 3 096× | lower-*.f64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 121 | 848 |
| 1 | 302 | 848 |
| 2 | 791 | 848 |
| 3 | 1935 | 848 |
| 4 | 4364 | 848 |
| 5 | 7550 | 848 |
| 0 | 8182 | 800 |
| 1× | iter limit |
| 1× | node limit |
| Inputs |
|---|
2 |
(+ 2 (* -1/2 (pow x 2))) |
(+ 2 (* (pow x 2) (- (* 1/24 (pow x 2)) 1/2))) |
(+ 2 (* (pow x 2) (- (* (pow x 2) (+ 1/24 (* -1/720 (pow x 2)))) 1/2))) |
(* 1/2 (pow x 2)) |
(* (pow x 2) (+ 1/2 (* -1/24 (pow x 2)))) |
(* (pow x 2) (+ 1/2 (* -1/24 (pow x 2)))) |
(* (pow x 2) (+ 1/2 (* -1/24 (pow x 2)))) |
1/2 |
(+ 1/2 (* -1/24 (pow x 2))) |
(+ 1/2 (* (pow x 2) (- (* 1/288 (pow x 2)) 1/24))) |
(+ 1/2 (* (pow x 2) (- (* (pow x 2) (+ 1/288 (* -1/3456 (pow x 2)))) 1/24))) |
(* 1/2 (pow x 2)) |
(* (pow x 2) (+ 1/2 (* -1/24 (pow x 2)))) |
(* (pow x 2) (+ 1/2 (* (pow x 2) (- (* 1/720 (pow x 2)) 1/24)))) |
(* (pow x 2) (+ 1/2 (* (pow x 2) (- (* (pow x 2) (+ 1/720 (* -1/40320 (pow x 2)))) 1/24)))) |
1/2 |
(+ 1/2 (* -1/24 (pow x 2))) |
(+ 1/2 (* -1/24 (pow x 2))) |
(+ 1/2 (* -1/24 (pow x 2))) |
(* -1/288 (pow x 2)) |
(* -1/288 (pow x 2)) |
(* -1/288 (pow x 2)) |
(* -1/288 (pow x 2)) |
(* -1/288 (pow x 2)) |
(* (pow x 2) (- (* 1/3456 (pow x 2)) 1/288)) |
(* (pow x 2) (- (* (pow x 2) (+ 1/3456 (* -1/41472 (pow x 2)))) 1/288)) |
(* (pow x 2) (- (* (pow x 2) (+ 1/3456 (* (pow x 2) (- (* 1/497664 (pow x 2)) 1/41472)))) 1/288)) |
-1/2 |
(- (* 1/24 (pow x 2)) 1/2) |
(- (* (pow x 2) (+ 1/24 (* -1/288 (pow x 2)))) 1/2) |
(- (* (pow x 2) (+ 1/24 (* (pow x 2) (- (* 1/3456 (pow x 2)) 1/288)))) 1/2) |
(+ 1 (cos x)) |
(+ 1 (cos x)) |
(+ 1 (cos x)) |
(+ 1 (cos x)) |
(* -1/24 (pow x 4)) |
(* (pow x 4) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) |
(* (pow x 4) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) |
(* (pow x 4) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) |
(/ 6 (pow x 2)) |
(/ (- 6 (* 72 (/ 1 (pow x 2)))) (pow x 2)) |
(/ (- (+ 6 (/ 864 (pow x 4))) (* 72 (/ 1 (pow x 2)))) (pow x 2)) |
(/ (- (+ 6 (/ 864 (pow x 4))) (+ (* 72 (/ 1 (pow x 2))) (* 10368 (/ 1 (pow x 6))))) (pow x 2)) |
(- 1 (cos x)) |
(- 1 (cos x)) |
(- 1 (cos x)) |
(- 1 (cos x)) |
(* -1/24 (pow x 2)) |
(* (pow x 2) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) |
(* (pow x 2) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) |
(* (pow x 2) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) |
(* -1/288 (pow x 2)) |
(* -1/288 (pow x 2)) |
(* -1/288 (pow x 2)) |
(* -1/288 (pow x 2)) |
-1/24 |
(- (* 1/2 (/ 1 (pow x 2))) 1/24) |
(- (* 1/2 (/ 1 (pow x 2))) (+ 1/24 (/ 6 (pow x 4)))) |
(- (+ (* 1/2 (/ 1 (pow x 2))) (* 72 (/ 1 (pow x 6)))) (+ 1/24 (/ 6 (pow x 4)))) |
(/ -6 (pow x 2)) |
(/ (- (* 72 (/ 1 (pow x 2))) 6) (pow x 2)) |
(/ (- (* 72 (/ 1 (pow x 2))) (+ 6 (/ 864 (pow x 4)))) (pow x 2)) |
(/ (- (+ (* 72 (/ 1 (pow x 2))) (* 10368 (/ 1 (pow x 6)))) (+ 6 (/ 864 (pow x 4)))) (pow x 2)) |
(+ 1 (cos x)) |
(+ 1 (cos x)) |
(+ 1 (cos x)) |
(+ 1 (cos x)) |
(* -1/24 (pow x 4)) |
(* (pow x 4) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) |
(* (pow x 4) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) |
(* (pow x 4) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) |
(/ 6 (pow x 2)) |
(/ (- 6 (* 72 (/ 1 (pow x 2)))) (pow x 2)) |
(/ (- (+ 6 (/ 864 (pow x 4))) (* 72 (/ 1 (pow x 2)))) (pow x 2)) |
(/ (- (+ 6 (/ 864 (pow x 4))) (+ (* 72 (/ 1 (pow x 2))) (* 10368 (/ 1 (pow x 6))))) (pow x 2)) |
(- 1 (cos x)) |
(- 1 (cos x)) |
(- 1 (cos x)) |
(- 1 (cos x)) |
(* -1/24 (pow x 2)) |
(* (pow x 2) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) |
(* (pow x 2) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) |
(* (pow x 2) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) |
(* -1/288 (pow x 2)) |
(* -1/288 (pow x 2)) |
(* -1/288 (pow x 2)) |
(* -1/288 (pow x 2)) |
-1/24 |
(- (* 1/2 (/ 1 (pow x 2))) 1/24) |
(- (* 1/2 (/ 1 (pow x 2))) (+ 1/24 (/ 6 (pow x 4)))) |
(- (+ (* 1/2 (/ 1 (pow x 2))) (* 72 (/ 1 (pow x 6)))) (+ 1/24 (/ 6 (pow x 4)))) |
(/ -6 (pow x 2)) |
(/ (- (* 72 (/ 1 (pow x 2))) 6) (pow x 2)) |
(/ (- (* 72 (/ 1 (pow x 2))) (+ 6 (/ 864 (pow x 4)))) (pow x 2)) |
(/ (- (+ (* 72 (/ 1 (pow x 2))) (* 10368 (/ 1 (pow x 6)))) (+ 6 (/ 864 (pow x 4)))) (pow x 2)) |
| Outputs |
|---|
2 |
#s(literal 2 binary64) |
(+ 2 (* -1/2 (pow x 2))) |
(fma.f64 (*.f64 x x) #s(literal -1/2 binary64) #s(literal 2 binary64)) |
(+ 2 (* (pow x 2) (- (* 1/24 (pow x 2)) 1/2))) |
(fma.f64 (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64)) (*.f64 x x) #s(literal 2 binary64)) |
(+ 2 (* (pow x 2) (- (* (pow x 2) (+ 1/24 (* -1/720 (pow x 2)))) 1/2))) |
(fma.f64 (fma.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 x x) #s(literal 1/24 binary64)) (*.f64 x x) #s(literal -1/2 binary64)) (*.f64 x x) #s(literal 2 binary64)) |
(* 1/2 (pow x 2)) |
(*.f64 #s(literal 1/2 binary64) (*.f64 x x)) |
(* (pow x 2) (+ 1/2 (* -1/24 (pow x 2)))) |
(*.f64 (*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) x) |
(* (pow x 2) (+ 1/2 (* -1/24 (pow x 2)))) |
(*.f64 (*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) x) |
(* (pow x 2) (+ 1/2 (* -1/24 (pow x 2)))) |
(*.f64 (*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) x) |
1/2 |
#s(literal 1/2 binary64) |
(+ 1/2 (* -1/24 (pow x 2))) |
(fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) |
(+ 1/2 (* (pow x 2) (- (* 1/288 (pow x 2)) 1/24))) |
(fma.f64 (fma.f64 #s(literal 1/288 binary64) (*.f64 x x) #s(literal -1/24 binary64)) (*.f64 x x) #s(literal 1/2 binary64)) |
(+ 1/2 (* (pow x 2) (- (* (pow x 2) (+ 1/288 (* -1/3456 (pow x 2)))) 1/24))) |
(fma.f64 (fma.f64 (fma.f64 #s(literal -1/3456 binary64) (*.f64 x x) #s(literal 1/288 binary64)) (*.f64 x x) #s(literal -1/24 binary64)) (*.f64 x x) #s(literal 1/2 binary64)) |
(* 1/2 (pow x 2)) |
(*.f64 #s(literal 1/2 binary64) (*.f64 x x)) |
(* (pow x 2) (+ 1/2 (* -1/24 (pow x 2)))) |
(*.f64 (*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) x) |
(* (pow x 2) (+ 1/2 (* (pow x 2) (- (* 1/720 (pow x 2)) 1/24)))) |
(*.f64 (pow.f64 x #s(literal 3 binary64)) (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 x x) #s(literal -1/24 binary64)) x (/.f64 #s(literal 1/2 binary64) x))) |
(* (pow x 2) (+ 1/2 (* (pow x 2) (- (* (pow x 2) (+ 1/720 (* -1/40320 (pow x 2)))) 1/24)))) |
(*.f64 (pow.f64 x #s(literal 3 binary64)) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/40320 binary64) (*.f64 x x) #s(literal 1/720 binary64)) (*.f64 x x) #s(literal -1/24 binary64)) x (/.f64 #s(literal 1/2 binary64) x))) |
1/2 |
#s(literal 1/2 binary64) |
(+ 1/2 (* -1/24 (pow x 2))) |
(fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) |
(+ 1/2 (* -1/24 (pow x 2))) |
(fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) |
(+ 1/2 (* -1/24 (pow x 2))) |
(fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) |
(* -1/288 (pow x 2)) |
(*.f64 #s(literal -1/288 binary64) (*.f64 x x)) |
(* -1/288 (pow x 2)) |
(*.f64 #s(literal -1/288 binary64) (*.f64 x x)) |
(* -1/288 (pow x 2)) |
(*.f64 #s(literal -1/288 binary64) (*.f64 x x)) |
(* -1/288 (pow x 2)) |
(*.f64 #s(literal -1/288 binary64) (*.f64 x x)) |
(* -1/288 (pow x 2)) |
(*.f64 #s(literal -1/288 binary64) (*.f64 x x)) |
(* (pow x 2) (- (* 1/3456 (pow x 2)) 1/288)) |
(*.f64 (*.f64 (fma.f64 #s(literal 1/3456 binary64) (*.f64 x x) #s(literal -1/288 binary64)) x) x) |
(* (pow x 2) (- (* (pow x 2) (+ 1/3456 (* -1/41472 (pow x 2)))) 1/288)) |
(*.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/41472 binary64) (*.f64 x x) #s(literal 1/3456 binary64)) (*.f64 x x) #s(literal -1/288 binary64)) x) x) |
(* (pow x 2) (- (* (pow x 2) (+ 1/3456 (* (pow x 2) (- (* 1/497664 (pow x 2)) 1/41472)))) 1/288)) |
(*.f64 (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 1/497664 binary64) (*.f64 x x) #s(literal -1/41472 binary64)) (*.f64 x x) #s(literal 1/3456 binary64)) (*.f64 x x) #s(literal -1/288 binary64)) x) x) |
-1/2 |
#s(literal -1/2 binary64) |
(- (* 1/24 (pow x 2)) 1/2) |
(fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64)) |
(- (* (pow x 2) (+ 1/24 (* -1/288 (pow x 2)))) 1/2) |
(fma.f64 (fma.f64 #s(literal -1/288 binary64) (*.f64 x x) #s(literal 1/24 binary64)) (*.f64 x x) #s(literal -1/2 binary64)) |
(- (* (pow x 2) (+ 1/24 (* (pow x 2) (- (* 1/3456 (pow x 2)) 1/288)))) 1/2) |
(fma.f64 (fma.f64 (fma.f64 #s(literal 1/3456 binary64) (*.f64 x x) #s(literal -1/288 binary64)) (*.f64 x x) #s(literal 1/24 binary64)) (*.f64 x x) #s(literal -1/2 binary64)) |
(+ 1 (cos x)) |
(+.f64 (cos.f64 x) #s(literal 1 binary64)) |
(+ 1 (cos x)) |
(+.f64 (cos.f64 x) #s(literal 1 binary64)) |
(+ 1 (cos x)) |
(+.f64 (cos.f64 x) #s(literal 1 binary64)) |
(+ 1 (cos x)) |
(+.f64 (cos.f64 x) #s(literal 1 binary64)) |
(* -1/24 (pow x 4)) |
(*.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal -1/24 binary64)) |
(* (pow x 4) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) |
(*.f64 (*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) x) |
(* (pow x 4) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) |
(*.f64 (*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) x) |
(* (pow x 4) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) |
(*.f64 (*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) x) |
(/ 6 (pow x 2)) |
(/.f64 #s(literal 6 binary64) (*.f64 x x)) |
(/ (- 6 (* 72 (/ 1 (pow x 2)))) (pow x 2)) |
(/.f64 (/.f64 (-.f64 #s(literal 6 binary64) (/.f64 #s(literal 72 binary64) (*.f64 x x))) x) x) |
(/ (- (+ 6 (/ 864 (pow x 4))) (* 72 (/ 1 (pow x 2)))) (pow x 2)) |
(/.f64 (-.f64 (/.f64 #s(literal 864 binary64) (pow.f64 x #s(literal 4 binary64))) (-.f64 (/.f64 #s(literal 72 binary64) (*.f64 x x)) #s(literal 6 binary64))) (*.f64 x x)) |
(/ (- (+ 6 (/ 864 (pow x 4))) (+ (* 72 (/ 1 (pow x 2))) (* 10368 (/ 1 (pow x 6))))) (pow x 2)) |
(-.f64 (/.f64 (-.f64 (/.f64 #s(literal -10368 binary64) (pow.f64 x #s(literal 6 binary64))) (-.f64 (/.f64 #s(literal 72 binary64) (*.f64 x x)) #s(literal 6 binary64))) (*.f64 x x)) (/.f64 #s(literal -864 binary64) (pow.f64 x #s(literal 6 binary64)))) |
(- 1 (cos x)) |
(-.f64 #s(literal 1 binary64) (cos.f64 x)) |
(- 1 (cos x)) |
(-.f64 #s(literal 1 binary64) (cos.f64 x)) |
(- 1 (cos x)) |
(-.f64 #s(literal 1 binary64) (cos.f64 x)) |
(- 1 (cos x)) |
(-.f64 #s(literal 1 binary64) (cos.f64 x)) |
(* -1/24 (pow x 2)) |
(*.f64 #s(literal -1/24 binary64) (*.f64 x x)) |
(* (pow x 2) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) |
(fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) |
(* (pow x 2) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) |
(fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) |
(* (pow x 2) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) |
(fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) |
(* -1/288 (pow x 2)) |
(*.f64 #s(literal -1/288 binary64) (*.f64 x x)) |
(* -1/288 (pow x 2)) |
(*.f64 #s(literal -1/288 binary64) (*.f64 x x)) |
(* -1/288 (pow x 2)) |
(*.f64 #s(literal -1/288 binary64) (*.f64 x x)) |
(* -1/288 (pow x 2)) |
(*.f64 #s(literal -1/288 binary64) (*.f64 x x)) |
-1/24 |
#s(literal -1/24 binary64) |
(- (* 1/2 (/ 1 (pow x 2))) 1/24) |
(-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 x x)) #s(literal 1/24 binary64)) |
(- (* 1/2 (/ 1 (pow x 2))) (+ 1/24 (/ 6 (pow x 4)))) |
(-.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 x x)) #s(literal 1/24 binary64)) (/.f64 #s(literal 6 binary64) (pow.f64 x #s(literal 4 binary64)))) |
(- (+ (* 1/2 (/ 1 (pow x 2))) (* 72 (/ 1 (pow x 6)))) (+ 1/24 (/ 6 (pow x 4)))) |
(-.f64 (-.f64 (+.f64 (/.f64 #s(literal 72 binary64) (pow.f64 x #s(literal 6 binary64))) (/.f64 #s(literal 1/2 binary64) (*.f64 x x))) (/.f64 #s(literal 6 binary64) (pow.f64 x #s(literal 4 binary64)))) #s(literal 1/24 binary64)) |
(/ -6 (pow x 2)) |
(/.f64 #s(literal -6 binary64) (*.f64 x x)) |
(/ (- (* 72 (/ 1 (pow x 2))) 6) (pow x 2)) |
(/.f64 (/.f64 (-.f64 (/.f64 #s(literal 72 binary64) (*.f64 x x)) #s(literal 6 binary64)) x) x) |
(/ (- (* 72 (/ 1 (pow x 2))) (+ 6 (/ 864 (pow x 4)))) (pow x 2)) |
(/.f64 (-.f64 (-.f64 (/.f64 #s(literal 72 binary64) (*.f64 x x)) #s(literal 6 binary64)) (/.f64 #s(literal 864 binary64) (pow.f64 x #s(literal 4 binary64)))) (*.f64 x x)) |
(/ (- (+ (* 72 (/ 1 (pow x 2))) (* 10368 (/ 1 (pow x 6)))) (+ 6 (/ 864 (pow x 4)))) (pow x 2)) |
(-.f64 (/.f64 #s(literal -864 binary64) (pow.f64 x #s(literal 6 binary64))) (/.f64 (-.f64 (/.f64 #s(literal -10368 binary64) (pow.f64 x #s(literal 6 binary64))) (-.f64 (/.f64 #s(literal 72 binary64) (*.f64 x x)) #s(literal 6 binary64))) (*.f64 x x))) |
(+ 1 (cos x)) |
(+.f64 (cos.f64 x) #s(literal 1 binary64)) |
(+ 1 (cos x)) |
(+.f64 (cos.f64 x) #s(literal 1 binary64)) |
(+ 1 (cos x)) |
(+.f64 (cos.f64 x) #s(literal 1 binary64)) |
(+ 1 (cos x)) |
(+.f64 (cos.f64 x) #s(literal 1 binary64)) |
(* -1/24 (pow x 4)) |
(*.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal -1/24 binary64)) |
(* (pow x 4) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) |
(*.f64 (*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) x) |
(* (pow x 4) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) |
(*.f64 (*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) x) |
(* (pow x 4) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) |
(*.f64 (*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) x) |
(/ 6 (pow x 2)) |
(/.f64 #s(literal 6 binary64) (*.f64 x x)) |
(/ (- 6 (* 72 (/ 1 (pow x 2)))) (pow x 2)) |
(/.f64 (/.f64 (-.f64 #s(literal 6 binary64) (/.f64 #s(literal 72 binary64) (*.f64 x x))) x) x) |
(/ (- (+ 6 (/ 864 (pow x 4))) (* 72 (/ 1 (pow x 2)))) (pow x 2)) |
(/.f64 (-.f64 (/.f64 #s(literal 864 binary64) (pow.f64 x #s(literal 4 binary64))) (-.f64 (/.f64 #s(literal 72 binary64) (*.f64 x x)) #s(literal 6 binary64))) (*.f64 x x)) |
(/ (- (+ 6 (/ 864 (pow x 4))) (+ (* 72 (/ 1 (pow x 2))) (* 10368 (/ 1 (pow x 6))))) (pow x 2)) |
(-.f64 (/.f64 (-.f64 (/.f64 #s(literal -10368 binary64) (pow.f64 x #s(literal 6 binary64))) (-.f64 (/.f64 #s(literal 72 binary64) (*.f64 x x)) #s(literal 6 binary64))) (*.f64 x x)) (/.f64 #s(literal -864 binary64) (pow.f64 x #s(literal 6 binary64)))) |
(- 1 (cos x)) |
(-.f64 #s(literal 1 binary64) (cos.f64 x)) |
(- 1 (cos x)) |
(-.f64 #s(literal 1 binary64) (cos.f64 x)) |
(- 1 (cos x)) |
(-.f64 #s(literal 1 binary64) (cos.f64 x)) |
(- 1 (cos x)) |
(-.f64 #s(literal 1 binary64) (cos.f64 x)) |
(* -1/24 (pow x 2)) |
(*.f64 #s(literal -1/24 binary64) (*.f64 x x)) |
(* (pow x 2) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) |
(fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) |
(* (pow x 2) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) |
(fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) |
(* (pow x 2) (- (* 1/2 (/ 1 (pow x 2))) 1/24)) |
(fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) |
(* -1/288 (pow x 2)) |
(*.f64 #s(literal -1/288 binary64) (*.f64 x x)) |
(* -1/288 (pow x 2)) |
(*.f64 #s(literal -1/288 binary64) (*.f64 x x)) |
(* -1/288 (pow x 2)) |
(*.f64 #s(literal -1/288 binary64) (*.f64 x x)) |
(* -1/288 (pow x 2)) |
(*.f64 #s(literal -1/288 binary64) (*.f64 x x)) |
-1/24 |
#s(literal -1/24 binary64) |
(- (* 1/2 (/ 1 (pow x 2))) 1/24) |
(-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 x x)) #s(literal 1/24 binary64)) |
(- (* 1/2 (/ 1 (pow x 2))) (+ 1/24 (/ 6 (pow x 4)))) |
(-.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 x x)) #s(literal 1/24 binary64)) (/.f64 #s(literal 6 binary64) (pow.f64 x #s(literal 4 binary64)))) |
(- (+ (* 1/2 (/ 1 (pow x 2))) (* 72 (/ 1 (pow x 6)))) (+ 1/24 (/ 6 (pow x 4)))) |
(-.f64 (-.f64 (+.f64 (/.f64 #s(literal 72 binary64) (pow.f64 x #s(literal 6 binary64))) (/.f64 #s(literal 1/2 binary64) (*.f64 x x))) (/.f64 #s(literal 6 binary64) (pow.f64 x #s(literal 4 binary64)))) #s(literal 1/24 binary64)) |
(/ -6 (pow x 2)) |
(/.f64 #s(literal -6 binary64) (*.f64 x x)) |
(/ (- (* 72 (/ 1 (pow x 2))) 6) (pow x 2)) |
(/.f64 (/.f64 (-.f64 (/.f64 #s(literal 72 binary64) (*.f64 x x)) #s(literal 6 binary64)) x) x) |
(/ (- (* 72 (/ 1 (pow x 2))) (+ 6 (/ 864 (pow x 4)))) (pow x 2)) |
(/.f64 (-.f64 (-.f64 (/.f64 #s(literal 72 binary64) (*.f64 x x)) #s(literal 6 binary64)) (/.f64 #s(literal 864 binary64) (pow.f64 x #s(literal 4 binary64)))) (*.f64 x x)) |
(/ (- (+ (* 72 (/ 1 (pow x 2))) (* 10368 (/ 1 (pow x 6)))) (+ 6 (/ 864 (pow x 4)))) (pow x 2)) |
(-.f64 (/.f64 #s(literal -864 binary64) (pow.f64 x #s(literal 6 binary64))) (/.f64 (-.f64 (/.f64 #s(literal -10368 binary64) (pow.f64 x #s(literal 6 binary64))) (-.f64 (/.f64 #s(literal 72 binary64) (*.f64 x x)) #s(literal 6 binary64))) (*.f64 x x))) |
| 6 948× | lower-fma.f32 |
| 6 944× | lower-fma.f64 |
| 4 936× | lower-*.f32 |
| 4 928× | lower-*.f64 |
| 3 556× | lower-/.f32 |
Useful iterations: 2 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 29 | 156 |
| 0 | 40 | 152 |
| 1 | 149 | 152 |
| 2 | 1016 | 148 |
| 0 | 8614 | 148 |
| 1× | iter limit |
| 1× | node limit |
| 1× | iter limit |
| Inputs |
|---|
#s(approx (+ (cos x) 1) #s(literal 2 binary64)) |
(*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(approx (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2)) (*.f64 #s(literal -1/288 binary64) (*.f64 x x))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) x) |
(neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)))) |
#s(approx (- 1 (cos x)) (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(approx (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2)) (*.f64 #s(literal -1/288 binary64) (*.f64 x x))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) x)) |
(fma.f64 (*.f64 x x) #s(approx (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2)) (*.f64 #s(literal -1/288 binary64) (*.f64 x x))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) |
(*.f64 #s(literal -1/288 binary64) (*.f64 x x)) |
#s(approx (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2)) (*.f64 #s(literal -1/288 binary64) (*.f64 x x))) |
(/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))) |
| Outputs |
|---|
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
#<batchref> |
Compiled 10 960 to 1 430 computations (87% saved)
5 alts after pruning (1 fresh and 4 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 329 | 1 | 330 |
| Fresh | 0 | 0 | 0 |
| Picked | 1 | 1 | 2 |
| Done | 0 | 3 | 3 |
| Total | 330 | 5 | 335 |
| Status | Accuracy | Program |
|---|---|---|
| ✓ | 51.2% | (-.f64 #s(literal 1 binary64) #s(approx (cos x) #s(literal 1 binary64))) |
| 100.0% | #s(approx (- 1 (cos x)) (*.f64 (fma.f64 #s(approx (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2)) (*.f64 #s(literal -1/288 binary64) (*.f64 x x))) (*.f64 x x) (/.f64 #s(literal 1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)))) (*.f64 x x))) | |
| ✓ | 100.0% | #s(approx (- 1 (cos x)) (*.f64 (*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) x)) |
| ✓ | 99.9% | #s(approx (- 1 (cos x)) (*.f64 (*.f64 #s(approx (+ (* -1/24 (* x x)) 1/2) #s(literal 1/2 binary64)) x) x)) |
| ✓ | 4.1% | #s(approx (+ (cos x) 1) #s(literal 2 binary64)) |
Compiled 169 to 86 computations (49.1% saved)
| Inputs |
|---|
#s(approx (+ (cos x) 1) #s(literal 2 binary64)) |
(+.f64 #s(approx (cos x) #s(literal 1 binary64)) #s(literal 1 binary64)) |
(-.f64 #s(literal 1 binary64) #s(approx (cos x) #s(literal 1 binary64))) |
#s(approx (- 1 (cos x)) (*.f64 (*.f64 x x) #s(literal 1/2 binary64))) |
#s(approx (- 1 (cos x)) (*.f64 (*.f64 #s(approx (+ (* -1/24 (* x x)) 1/2) #s(literal 1/2 binary64)) x) x)) |
#s(approx (- 1 (cos x)) (*.f64 (*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) x)) |
#s(approx (- 1 (cos x)) (*.f64 (fma.f64 #s(approx (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2)) (*.f64 #s(literal -1/288 binary64) (*.f64 x x))) (*.f64 x x) (/.f64 #s(literal 1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)))) (*.f64 x x))) |
#s(approx (- 1 (cos x)) (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(approx (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2)) (*.f64 #s(literal -1/288 binary64) (*.f64 x x))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) x)) |
#s(approx (- 1 (cos x)) (*.f64 (*.f64 (fma.f64 (*.f64 x x) (/.f64 (*.f64 #s(literal 1/576 binary64) (*.f64 x x)) (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) x)) |
(-.f64 #s(literal 1 binary64) (cos.f64 x)) |
(*.f64 (sin.f64 x) (tan.f64 (/.f64 x #s(literal 2 binary64)))) |
| Outputs |
|---|
#s(approx (- 1 (cos x)) (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(approx (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2)) (*.f64 #s(literal -1/288 binary64) (*.f64 x x))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) x)) |
3 calls:
| 26.0ms | x |
| 3.0ms | (cos.f64 x) |
| 3.0ms | (-.f64 #s(literal 1 binary64) (cos.f64 x)) |
| Accuracy | Segments | Branch |
|---|---|---|
| 100.0% | 1 | x |
| 100.0% | 1 | (-.f64 #s(literal 1 binary64) (cos.f64 x)) |
| 100.0% | 1 | (cos.f64 x) |
Compiled 7 to 7 computations (0% saved)
| Inputs |
|---|
#s(approx (+ (cos x) 1) #s(literal 2 binary64)) |
(+.f64 #s(approx (cos x) #s(literal 1 binary64)) #s(literal 1 binary64)) |
(-.f64 #s(literal 1 binary64) #s(approx (cos x) #s(literal 1 binary64))) |
#s(approx (- 1 (cos x)) (*.f64 (*.f64 x x) #s(literal 1/2 binary64))) |
#s(approx (- 1 (cos x)) (*.f64 (*.f64 #s(approx (+ (* -1/24 (* x x)) 1/2) #s(literal 1/2 binary64)) x) x)) |
#s(approx (- 1 (cos x)) (*.f64 (*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) x)) |
#s(approx (- 1 (cos x)) (*.f64 (fma.f64 #s(approx (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2)) (*.f64 #s(literal -1/288 binary64) (*.f64 x x))) (*.f64 x x) (/.f64 #s(literal 1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)))) (*.f64 x x))) |
| Outputs |
|---|
#s(approx (- 1 (cos x)) (*.f64 (*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) x)) |
3 calls:
| 4.0ms | x |
| 2.0ms | (-.f64 #s(literal 1 binary64) (cos.f64 x)) |
| 2.0ms | (cos.f64 x) |
| Accuracy | Segments | Branch |
|---|---|---|
| 100.0% | 1 | x |
| 100.0% | 1 | (-.f64 #s(literal 1 binary64) (cos.f64 x)) |
| 100.0% | 1 | (cos.f64 x) |
Compiled 7 to 7 computations (0% saved)
| Inputs |
|---|
#s(approx (+ (cos x) 1) #s(literal 2 binary64)) |
(+.f64 #s(approx (cos x) #s(literal 1 binary64)) #s(literal 1 binary64)) |
(-.f64 #s(literal 1 binary64) #s(approx (cos x) #s(literal 1 binary64))) |
#s(approx (- 1 (cos x)) (*.f64 (*.f64 x x) #s(literal 1/2 binary64))) |
#s(approx (- 1 (cos x)) (*.f64 (*.f64 #s(approx (+ (* -1/24 (* x x)) 1/2) #s(literal 1/2 binary64)) x) x)) |
| Outputs |
|---|
#s(approx (- 1 (cos x)) (*.f64 (*.f64 #s(approx (+ (* -1/24 (* x x)) 1/2) #s(literal 1/2 binary64)) x) x)) |
3 calls:
| 2.0ms | x |
| 2.0ms | (-.f64 #s(literal 1 binary64) (cos.f64 x)) |
| 2.0ms | (cos.f64 x) |
| Accuracy | Segments | Branch |
|---|---|---|
| 99.9% | 1 | x |
| 99.9% | 1 | (-.f64 #s(literal 1 binary64) (cos.f64 x)) |
| 99.9% | 1 | (cos.f64 x) |
Compiled 7 to 7 computations (0% saved)
| Inputs |
|---|
#s(approx (+ (cos x) 1) #s(literal 2 binary64)) |
(+.f64 #s(approx (cos x) #s(literal 1 binary64)) #s(literal 1 binary64)) |
(-.f64 #s(literal 1 binary64) #s(approx (cos x) #s(literal 1 binary64))) |
#s(approx (- 1 (cos x)) (*.f64 (*.f64 x x) #s(literal 1/2 binary64))) |
| Outputs |
|---|
#s(approx (- 1 (cos x)) (*.f64 (*.f64 x x) #s(literal 1/2 binary64))) |
3 calls:
| 3.0ms | x |
| 2.0ms | (cos.f64 x) |
| 2.0ms | (-.f64 #s(literal 1 binary64) (cos.f64 x)) |
| Accuracy | Segments | Branch |
|---|---|---|
| 99.9% | 1 | x |
| 99.9% | 1 | (-.f64 #s(literal 1 binary64) (cos.f64 x)) |
| 99.9% | 1 | (cos.f64 x) |
Compiled 7 to 7 computations (0% saved)
| Inputs |
|---|
#s(approx (+ (cos x) 1) #s(literal 2 binary64)) |
(+.f64 #s(approx (cos x) #s(literal 1 binary64)) #s(literal 1 binary64)) |
(-.f64 #s(literal 1 binary64) #s(approx (cos x) #s(literal 1 binary64))) |
| Outputs |
|---|
(-.f64 #s(literal 1 binary64) #s(approx (cos x) #s(literal 1 binary64))) |
3 calls:
| 2.0ms | x |
| 1.0ms | (-.f64 #s(literal 1 binary64) (cos.f64 x)) |
| 1.0ms | (cos.f64 x) |
| Accuracy | Segments | Branch |
|---|---|---|
| 51.2% | 1 | x |
| 51.2% | 1 | (-.f64 #s(literal 1 binary64) (cos.f64 x)) |
| 51.2% | 1 | (cos.f64 x) |
Compiled 7 to 7 computations (0% saved)
Total 0.0b remaining (0%)
Threshold costs 0b (0%)
| Inputs |
|---|
#s(approx (+ (cos x) 1) #s(literal 2 binary64)) |
(+.f64 #s(approx (cos x) #s(literal 1 binary64)) #s(literal 1 binary64)) |
| Outputs |
|---|
#s(approx (+ (cos x) 1) #s(literal 2 binary64)) |
3 calls:
| 3.0ms | x |
| 1.0ms | (cos.f64 x) |
| 1.0ms | (-.f64 #s(literal 1 binary64) (cos.f64 x)) |
| Accuracy | Segments | Branch |
|---|---|---|
| 4.1% | 1 | x |
| 4.1% | 1 | (-.f64 #s(literal 1 binary64) (cos.f64 x)) |
| 4.1% | 1 | (cos.f64 x) |
Compiled 7 to 7 computations (0% saved)
| 1× | egg-herbie |
| 24× | *-commutative-binary64-*.f64 |
| 10× | +-commutative-binary64-+.f64 |
| 10× | sub-neg-binary64-neg.f64-+.f64--.f64 |
| 8× | neg-sub0-binary64--.f64-neg.f64 |
| 8× | neg-mul-1-binary64-*.f64-neg.f64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 42 | 96 |
| 1 | 62 | 96 |
| 2 | 71 | 96 |
| 3 | 78 | 96 |
| 4 | 81 | 96 |
| 1× | saturated |
| Inputs |
|---|
#s(approx (- 1 (cos x)) (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(approx (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2)) (*.f64 #s(literal -1/288 binary64) (*.f64 x x))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) x)) |
#s(approx (- 1 (cos x)) (*.f64 (*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) x)) |
#s(approx (- 1 (cos x)) (*.f64 (*.f64 #s(approx (+ (* -1/24 (* x x)) 1/2) #s(literal 1/2 binary64)) x) x)) |
#s(approx (- 1 (cos x)) (*.f64 (*.f64 x x) #s(literal 1/2 binary64))) |
(-.f64 #s(literal 1 binary64) #s(approx (cos x) #s(literal 1 binary64))) |
#s(approx (+ (cos x) 1) #s(literal 2 binary64)) |
| Outputs |
|---|
#s(approx (- 1 (cos x)) (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(approx (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2)) (*.f64 #s(literal -1/288 binary64) (*.f64 x x))) (neg.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64))))) x) x)) |
#s(approx (- 1 (cos x)) (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(approx (/ (* 1/576 (* x x)) (+ (* -1/24 (* x x)) -1/2)) (*.f64 #s(literal -1/288 binary64) (*.f64 x x))) (/.f64 (neg.f64 #s(literal -1/4 binary64)) (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)))) x) x)) |
#s(approx (- 1 (cos x)) (*.f64 (*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) x)) |
#s(approx (- 1 (cos x)) (*.f64 (*.f64 #s(approx (+ (* -1/24 (* x x)) 1/2) #s(literal 1/2 binary64)) x) x)) |
#s(approx (- 1 (cos x)) (*.f64 (*.f64 x x) #s(literal 1/2 binary64))) |
#s(approx (- 1 (cos x)) (*.f64 #s(literal 1/2 binary64) (*.f64 x x))) |
(-.f64 #s(literal 1 binary64) #s(approx (cos x) #s(literal 1 binary64))) |
#s(approx (+ (cos x) 1) #s(literal 2 binary64)) |
| 32 720× | lower-fma.f64 |
| 32 720× | lower-fma.f32 |
| 16 444× | lower-fma.f64 |
| 16 444× | lower-fma.f32 |
| 15 162× | lower-fma.f64 |
Useful iterations: 3 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 20 | 83 |
| 0 | 31 | 83 |
| 1 | 96 | 83 |
| 2 | 513 | 83 |
| 3 | 3993 | 80 |
| 0 | 11844 | 80 |
| 0 | 41 | 144 |
| 1 | 101 | 144 |
| 2 | 246 | 144 |
| 3 | 588 | 144 |
| 4 | 1237 | 144 |
| 5 | 1916 | 144 |
| 6 | 2187 | 144 |
| 7 | 2836 | 144 |
| 8 | 4071 | 144 |
| 9 | 5644 | 144 |
| 10 | 6543 | 144 |
| 11 | 6823 | 144 |
| 12 | 6862 | 144 |
| 13 | 6862 | 144 |
| 14 | 7274 | 144 |
| 15 | 7556 | 144 |
| 16 | 7597 | 144 |
| 17 | 7599 | 144 |
| 18 | 7599 | 144 |
| 19 | 7599 | 144 |
| 20 | 7599 | 144 |
| 21 | 7609 | 144 |
| 22 | 7609 | 144 |
| 23 | 7609 | 144 |
| 0 | 8514 | 132 |
| 0 | 136 | 1294 |
| 1 | 341 | 1294 |
| 2 | 891 | 1294 |
| 3 | 2263 | 1294 |
| 4 | 5003 | 1294 |
| 0 | 8356 | 1219 |
| 0 | 100 | 1068 |
| 1 | 268 | 1062 |
| 2 | 676 | 1062 |
| 3 | 2086 | 1062 |
| 4 | 4152 | 1062 |
| 5 | 6395 | 1062 |
| 0 | 8204 | 993 |
| 1× | fuel |
| 1× | iter limit |
| 1× | node limit |
| 1× | iter limit |
| 1× | node limit |
| 1× | iter limit |
| 1× | node limit |
| 1× | iter limit |
| 1× | node limit |
| 1× | iter limit |
Compiled 117 to 82 computations (29.9% saved)
(abs x)
Compiled 280 to 174 computations (37.9% saved)
Loading profile data...