invcot (example 3.9)

Time bar (total: 16.1s)

start0.0ms (0%)

Memory
0.1MiB live, 0.1MiB allocated

analyze17.0ms (0.1%)

Memory
-44.7MiB live, 8.6MiB allocated
Algorithm
search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%49.7%50.3%0%0%0%0
0%0%49.7%50.3%0%0%0%1
0%0%49.7%50.3%0%0%0%2
25%12.4%37.3%50.3%0%0%0%3
62.5%31.1%18.6%50.3%0%0%0%4
81.3%40.4%9.3%50.3%0%0%0%5
90.6%45%4.7%50.3%0%0%0%6
95.3%47.4%2.3%50.3%0%0%0%7
97.7%48.5%1.2%50.3%0%0%0%8
98.8%49.1%0.6%50.3%0%0%0%9
99.4%49.4%0.3%50.3%0%0%0%10
99.7%49.5%0.1%50.3%0%0%0%11
99.9%49.6%0.1%50.3%0%0%0%12
Compiler

Compiled 16 to 12 computations (25% saved)

sample10.9s (67.4%)

Memory
-45.4MiB live, 9 445.7MiB allocated
Samples
8.8s3 916×2valid
1.6s4 241×1valid
9.0ms99×0valid
Precisions
Click to see histograms. Total time spent on operations: 10.0s
ival-tan: 8.6s (86.7% of total)
const: 418.0ms (4.2% of total)
ival-div: 411.0ms (4.1% of total)
adjust: 284.0ms (2.8% of total)
ival-sub: 104.0ms (1% of total)
ival-<: 83.0ms (0.8% of total)
ival-and: 14.0ms (0.1% of total)
exact: 6.0ms (0.1% of total)
ival-assert: 4.0ms (0% of total)
Bogosity

explain576.0ms (3.6%)

Memory
4.6MiB live, 598.3MiB allocated
FPErrors
Click to see full error table
Ground TruthOverpredictionsExampleUnderpredictionsExampleSubexpression
2560-0-(-.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 #s(literal 1 binary64) (tan.f64 x)))
00-0-(/.f64 #s(literal 1 binary64) x)
00-0-#s(literal 1 binary64)
00-0-(tan.f64 x)
00-0-(/.f64 #s(literal 1 binary64) (tan.f64 x))
00-0-x
Explanations
Click to see full explanations table
OperatorSubexpressionExplanationCount
-.f64(-.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 #s(literal 1 binary64) (tan.f64 x)))cancellation2560
Confusion
Predicted +Predicted -
+2560
-00
Precision
1.0
Recall
1.0
Confusion?
Predicted +Predicted MaybePredicted -
+25600
-000
Precision?
1.0
Recall?
1.0
Freqs
test
numberfreq
1256
Total Confusion?
Predicted +Predicted MaybePredicted -
+100
-000
Precision?
1.0
Recall?
1.0
Samples
459.0ms250×2valid
59.0ms254×1valid
1.0ms0valid
Compiler

Compiled 50 to 22 computations (56% saved)

Precisions
Click to see histograms. Total time spent on operations: 495.0ms
ival-tan: 453.0ms (91.5% of total)
ival-div: 21.0ms (4.2% of total)
adjust: 12.0ms (2.4% of total)
ival-sub: 8.0ms (1.6% of total)
ival-true: 1.0ms (0.2% of total)
ival-assert: 0.0ms (0% of total)
exact: 0.0ms (0% of total)

preprocess21.0ms (0.1%)

Memory
30.7MiB live, 30.7MiB allocated
Algorithm
egg-herbie
Rules
112×lower-fma.f64
112×lower-fma.f32
80×lower-*.f64
80×lower-*.f32
48×lower-+.f64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0821
12119
25416
313116
420416
522816
623016
068
0108
1148
2228
3318
4438
5638
61028
71348
81928
92258
102478
02478
Stop Event
iter limit
saturated
iter limit
saturated
Calls
Call 1
Inputs
(-.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 #s(literal 1 binary64) (tan.f64 x)))
Outputs
(-.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 #s(literal 1 binary64) (tan.f64 x)))
(-.f64 (/.f64 #s(literal -1 binary64) (tan.f64 x)) (/.f64 #s(literal -1 binary64) x))
Symmetry

(negabs x)

Compiler

Compiled 8 to 6 computations (25% saved)

eval0.0ms (0%)

Memory
0.4MiB live, 0.4MiB allocated
Compiler

Compiled 0 to 1 computations (-∞% saved)

prune0.0ms (0%)

Memory
1.2MiB live, 1.2MiB allocated
Alt Table
Click to see full alt table
StatusAccuracyProgram
6.6%
(-.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 #s(literal 1 binary64) (tan.f64 x)))
Compiler

Compiled 8 to 6 computations (25% saved)

simplify14.0ms (0.1%)

Memory
-35.9MiB live, 7.2MiB allocated
Algorithm
egg-herbie
Localize:

Found 4 expressions of interest:

NewMetricScoreProgram
cost-diff0
(tan.f64 x)
cost-diff0
(/.f64 #s(literal 1 binary64) (tan.f64 x))
cost-diff0
(/.f64 #s(literal 1 binary64) x)
cost-diff0
(-.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 #s(literal 1 binary64) (tan.f64 x)))
Rules
112×lower-fma.f64
112×lower-fma.f32
80×lower-*.f64
80×lower-*.f32
48×lower-+.f64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0619
01019
11419
22219
33119
44319
56319
610219
713419
819219
922519
1024719
024719
Stop Event
iter limit
saturated
iter limit
Calls
Call 1
Inputs
(-.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 #s(literal 1 binary64) (tan.f64 x)))
(/.f64 #s(literal 1 binary64) x)
#s(literal 1 binary64)
x
(/.f64 #s(literal 1 binary64) (tan.f64 x))
(tan.f64 x)
Outputs
(-.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 #s(literal 1 binary64) (tan.f64 x)))
(-.f64 (/.f64 #s(literal -1 binary64) (tan.f64 x)) (/.f64 #s(literal -1 binary64) x))
(/.f64 #s(literal 1 binary64) x)
#s(literal 1 binary64)
x
(/.f64 #s(literal 1 binary64) (tan.f64 x))
(tan.f64 x)

localize257.0ms (1.6%)

Memory
18.6MiB live, 332.2MiB allocated
Localize:

Found 4 expressions of interest:

NewMetricScoreProgram
accuracy0
(/.f64 #s(literal 1 binary64) x)
accuracy0
(tan.f64 x)
accuracy0.01171875
(/.f64 #s(literal 1 binary64) (tan.f64 x))
accuracy59.7528680432463
(-.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 #s(literal 1 binary64) (tan.f64 x)))
Samples
220.0ms125×2valid
29.0ms127×1valid
0.0ms0valid
Compiler

Compiled 21 to 8 computations (61.9% saved)

Precisions
Click to see histograms. Total time spent on operations: 234.0ms
ival-tan: 212.0ms (90.8% of total)
ival-div: 13.0ms (5.6% of total)
adjust: 6.0ms (2.6% of total)
ival-sub: 3.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)

series5.0ms (0%)

Memory
9.3MiB live, 9.3MiB allocated
Counts
4 → 48
Calls
Call 1
Inputs
#s(alt (-.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 #s(literal 1 binary64) (tan.f64 x))) (patch (-.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 #s(literal 1 binary64) (tan.f64 x))) #<representation binary64>) () ())
#s(alt (/.f64 #s(literal 1 binary64) x) (patch (/.f64 #s(literal 1 binary64) x) #<representation binary64>) () ())
#s(alt (/.f64 #s(literal 1 binary64) (tan.f64 x)) (patch (/.f64 #s(literal 1 binary64) (tan.f64 x)) #<representation binary64>) () ())
#s(alt (tan.f64 x) (patch (tan.f64 x) #<representation binary64>) () ())
Outputs
#s(alt (* 1/3 x) (taylor 0 x) (#s(alt (-.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 #s(literal 1 binary64) (tan.f64 x))) (patch (-.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 #s(literal 1 binary64) (tan.f64 x))) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1/3 (* 1/45 (pow x 2)))) (taylor 0 x) (#s(alt (-.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 #s(literal 1 binary64) (tan.f64 x))) (patch (-.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 #s(literal 1 binary64) (tan.f64 x))) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1/3 (* (pow x 2) (+ 1/45 (* 2/945 (pow x 2)))))) (taylor 0 x) (#s(alt (-.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 #s(literal 1 binary64) (tan.f64 x))) (patch (-.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 #s(literal 1 binary64) (tan.f64 x))) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1/3 (* (pow x 2) (+ 1/45 (* (pow x 2) (+ 2/945 (* 1/4725 (pow x 2)))))))) (taylor 0 x) (#s(alt (-.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 #s(literal 1 binary64) (tan.f64 x))) (patch (-.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 #s(literal 1 binary64) (tan.f64 x))) #<representation binary64>) () ())) ())
#s(alt (/ 1 x) (taylor 0 x) (#s(alt (/.f64 #s(literal 1 binary64) x) (patch (/.f64 #s(literal 1 binary64) x) #<representation binary64>) () ())) ())
#s(alt (/ 1 x) (taylor 0 x) (#s(alt (/.f64 #s(literal 1 binary64) x) (patch (/.f64 #s(literal 1 binary64) x) #<representation binary64>) () ())) ())
#s(alt (/ 1 x) (taylor 0 x) (#s(alt (/.f64 #s(literal 1 binary64) x) (patch (/.f64 #s(literal 1 binary64) x) #<representation binary64>) () ())) ())
#s(alt (/ 1 x) (taylor 0 x) (#s(alt (/.f64 #s(literal 1 binary64) x) (patch (/.f64 #s(literal 1 binary64) x) #<representation binary64>) () ())) ())
#s(alt (/ 1 x) (taylor 0 x) (#s(alt (/.f64 #s(literal 1 binary64) (tan.f64 x)) (patch (/.f64 #s(literal 1 binary64) (tan.f64 x)) #<representation binary64>) () ())) ())
#s(alt (/ (+ 1 (* -1/3 (pow x 2))) x) (taylor 0 x) (#s(alt (/.f64 #s(literal 1 binary64) (tan.f64 x)) (patch (/.f64 #s(literal 1 binary64) (tan.f64 x)) #<representation binary64>) () ())) ())
#s(alt (/ (+ 1 (* (pow x 2) (- (* -1/45 (pow x 2)) 1/3))) x) (taylor 0 x) (#s(alt (/.f64 #s(literal 1 binary64) (tan.f64 x)) (patch (/.f64 #s(literal 1 binary64) (tan.f64 x)) #<representation binary64>) () ())) ())
#s(alt (/ (+ 1 (* (pow x 2) (- (* (pow x 2) (- (* -2/945 (pow x 2)) 1/45)) 1/3))) x) (taylor 0 x) (#s(alt (/.f64 #s(literal 1 binary64) (tan.f64 x)) (patch (/.f64 #s(literal 1 binary64) (tan.f64 x)) #<representation binary64>) () ())) ())
#s(alt x (taylor 0 x) (#s(alt (tan.f64 x) (patch (tan.f64 x) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1 (* 1/3 (pow x 2)))) (taylor 0 x) (#s(alt (tan.f64 x) (patch (tan.f64 x) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1 (* (pow x 2) (+ 1/3 (* 2/15 (pow x 2)))))) (taylor 0 x) (#s(alt (tan.f64 x) (patch (tan.f64 x) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1 (* (pow x 2) (+ 1/3 (* (pow x 2) (+ 2/15 (* 17/315 (pow x 2)))))))) (taylor 0 x) (#s(alt (tan.f64 x) (patch (tan.f64 x) #<representation binary64>) () ())) ())
#s(alt (* -1 (/ (cos x) (sin x))) (taylor inf x) (#s(alt (-.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 #s(literal 1 binary64) (tan.f64 x))) (patch (-.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 #s(literal 1 binary64) (tan.f64 x))) #<representation binary64>) () ())) ())
#s(alt (- (/ 1 x) (/ (cos x) (sin x))) (taylor inf x) (#s(alt (-.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 #s(literal 1 binary64) (tan.f64 x))) (patch (-.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 #s(literal 1 binary64) (tan.f64 x))) #<representation binary64>) () ())) ())
#s(alt (- (/ 1 x) (/ (cos x) (sin x))) (taylor inf x) (#s(alt (-.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 #s(literal 1 binary64) (tan.f64 x))) (patch (-.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 #s(literal 1 binary64) (tan.f64 x))) #<representation binary64>) () ())) ())
#s(alt (- (/ 1 x) (/ (cos x) (sin x))) (taylor inf x) (#s(alt (-.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 #s(literal 1 binary64) (tan.f64 x))) (patch (-.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 #s(literal 1 binary64) (tan.f64 x))) #<representation binary64>) () ())) ())
#s(alt (/ 1 x) (taylor inf x) (#s(alt (/.f64 #s(literal 1 binary64) x) (patch (/.f64 #s(literal 1 binary64) x) #<representation binary64>) () ())) ())
#s(alt (/ 1 x) (taylor inf x) (#s(alt (/.f64 #s(literal 1 binary64) x) (patch (/.f64 #s(literal 1 binary64) x) #<representation binary64>) () ())) ())
#s(alt (/ 1 x) (taylor inf x) (#s(alt (/.f64 #s(literal 1 binary64) x) (patch (/.f64 #s(literal 1 binary64) x) #<representation binary64>) () ())) ())
#s(alt (/ 1 x) (taylor inf x) (#s(alt (/.f64 #s(literal 1 binary64) x) (patch (/.f64 #s(literal 1 binary64) x) #<representation binary64>) () ())) ())
#s(alt (/ (cos x) (sin x)) (taylor inf x) (#s(alt (/.f64 #s(literal 1 binary64) (tan.f64 x)) (patch (/.f64 #s(literal 1 binary64) (tan.f64 x)) #<representation binary64>) () ())) ())
#s(alt (/ (cos x) (sin x)) (taylor inf x) (#s(alt (/.f64 #s(literal 1 binary64) (tan.f64 x)) (patch (/.f64 #s(literal 1 binary64) (tan.f64 x)) #<representation binary64>) () ())) ())
#s(alt (/ (cos x) (sin x)) (taylor inf x) (#s(alt (/.f64 #s(literal 1 binary64) (tan.f64 x)) (patch (/.f64 #s(literal 1 binary64) (tan.f64 x)) #<representation binary64>) () ())) ())
#s(alt (/ (cos x) (sin x)) (taylor inf x) (#s(alt (/.f64 #s(literal 1 binary64) (tan.f64 x)) (patch (/.f64 #s(literal 1 binary64) (tan.f64 x)) #<representation binary64>) () ())) ())
#s(alt (/ (sin x) (cos x)) (taylor inf x) (#s(alt (tan.f64 x) (patch (tan.f64 x) #<representation binary64>) () ())) ())
#s(alt (/ (sin x) (cos x)) (taylor inf x) (#s(alt (tan.f64 x) (patch (tan.f64 x) #<representation binary64>) () ())) ())
#s(alt (/ (sin x) (cos x)) (taylor inf x) (#s(alt (tan.f64 x) (patch (tan.f64 x) #<representation binary64>) () ())) ())
#s(alt (/ (sin x) (cos x)) (taylor inf x) (#s(alt (tan.f64 x) (patch (tan.f64 x) #<representation binary64>) () ())) ())
#s(alt (* -1 (/ (cos x) (sin x))) (taylor -inf x) (#s(alt (-.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 #s(literal 1 binary64) (tan.f64 x))) (patch (-.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 #s(literal 1 binary64) (tan.f64 x))) #<representation binary64>) () ())) ())
#s(alt (- (/ 1 x) (/ (cos x) (sin x))) (taylor -inf x) (#s(alt (-.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 #s(literal 1 binary64) (tan.f64 x))) (patch (-.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 #s(literal 1 binary64) (tan.f64 x))) #<representation binary64>) () ())) ())
#s(alt (- (/ 1 x) (/ (cos x) (sin x))) (taylor -inf x) (#s(alt (-.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 #s(literal 1 binary64) (tan.f64 x))) (patch (-.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 #s(literal 1 binary64) (tan.f64 x))) #<representation binary64>) () ())) ())
#s(alt (- (/ 1 x) (/ (cos x) (sin x))) (taylor -inf x) (#s(alt (-.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 #s(literal 1 binary64) (tan.f64 x))) (patch (-.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 #s(literal 1 binary64) (tan.f64 x))) #<representation binary64>) () ())) ())
#s(alt (/ 1 x) (taylor -inf x) (#s(alt (/.f64 #s(literal 1 binary64) x) (patch (/.f64 #s(literal 1 binary64) x) #<representation binary64>) () ())) ())
#s(alt (/ 1 x) (taylor -inf x) (#s(alt (/.f64 #s(literal 1 binary64) x) (patch (/.f64 #s(literal 1 binary64) x) #<representation binary64>) () ())) ())
#s(alt (/ 1 x) (taylor -inf x) (#s(alt (/.f64 #s(literal 1 binary64) x) (patch (/.f64 #s(literal 1 binary64) x) #<representation binary64>) () ())) ())
#s(alt (/ 1 x) (taylor -inf x) (#s(alt (/.f64 #s(literal 1 binary64) x) (patch (/.f64 #s(literal 1 binary64) x) #<representation binary64>) () ())) ())
#s(alt (/ (cos x) (sin x)) (taylor -inf x) (#s(alt (/.f64 #s(literal 1 binary64) (tan.f64 x)) (patch (/.f64 #s(literal 1 binary64) (tan.f64 x)) #<representation binary64>) () ())) ())
#s(alt (/ (cos x) (sin x)) (taylor -inf x) (#s(alt (/.f64 #s(literal 1 binary64) (tan.f64 x)) (patch (/.f64 #s(literal 1 binary64) (tan.f64 x)) #<representation binary64>) () ())) ())
#s(alt (/ (cos x) (sin x)) (taylor -inf x) (#s(alt (/.f64 #s(literal 1 binary64) (tan.f64 x)) (patch (/.f64 #s(literal 1 binary64) (tan.f64 x)) #<representation binary64>) () ())) ())
#s(alt (/ (cos x) (sin x)) (taylor -inf x) (#s(alt (/.f64 #s(literal 1 binary64) (tan.f64 x)) (patch (/.f64 #s(literal 1 binary64) (tan.f64 x)) #<representation binary64>) () ())) ())
#s(alt (/ (sin x) (cos x)) (taylor -inf x) (#s(alt (tan.f64 x) (patch (tan.f64 x) #<representation binary64>) () ())) ())
#s(alt (/ (sin x) (cos x)) (taylor -inf x) (#s(alt (tan.f64 x) (patch (tan.f64 x) #<representation binary64>) () ())) ())
#s(alt (/ (sin x) (cos x)) (taylor -inf x) (#s(alt (tan.f64 x) (patch (tan.f64 x) #<representation binary64>) () ())) ())
#s(alt (/ (sin x) (cos x)) (taylor -inf x) (#s(alt (tan.f64 x) (patch (tan.f64 x) #<representation binary64>) () ())) ())
Calls

3 calls:

TimeVariablePointExpression
1.0ms
x
@-inf
((- (/ 1 x) (/ 1 (tan x))) (/ 1 x) (/ 1 (tan x)) (tan x))
1.0ms
x
@inf
((- (/ 1 x) (/ 1 (tan x))) (/ 1 x) (/ 1 (tan x)) (tan x))
1.0ms
x
@0
((- (/ 1 x) (/ 1 (tan x))) (/ 1 x) (/ 1 (tan x)) (tan x))

simplify173.0ms (1.1%)

Memory
10.8MiB live, 165.4MiB allocated
Algorithm
egg-herbie
Rules
18 970×lower-fma.f64
18 970×lower-fma.f32
3 656×lower-*.f64
3 656×lower-*.f32
3 436×lower-+.f64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
067324
1179324
2458318
31332318
42094318
53093318
63682318
73949318
85089318
97269318
08431300
Stop Event
iter limit
node limit
Counts
48 → 47
Calls
Call 1
Inputs
(* 1/3 x)
(* x (+ 1/3 (* 1/45 (pow x 2))))
(* x (+ 1/3 (* (pow x 2) (+ 1/45 (* 2/945 (pow x 2))))))
(* x (+ 1/3 (* (pow x 2) (+ 1/45 (* (pow x 2) (+ 2/945 (* 1/4725 (pow x 2))))))))
(/ 1 x)
(/ 1 x)
(/ 1 x)
(/ 1 x)
(/ 1 x)
(/ (+ 1 (* -1/3 (pow x 2))) x)
(/ (+ 1 (* (pow x 2) (- (* -1/45 (pow x 2)) 1/3))) x)
(/ (+ 1 (* (pow x 2) (- (* (pow x 2) (- (* -2/945 (pow x 2)) 1/45)) 1/3))) x)
x
(* x (+ 1 (* 1/3 (pow x 2))))
(* x (+ 1 (* (pow x 2) (+ 1/3 (* 2/15 (pow x 2))))))
(* x (+ 1 (* (pow x 2) (+ 1/3 (* (pow x 2) (+ 2/15 (* 17/315 (pow x 2))))))))
(* -1 (/ (cos x) (sin x)))
(- (/ 1 x) (/ (cos x) (sin x)))
(- (/ 1 x) (/ (cos x) (sin x)))
(- (/ 1 x) (/ (cos x) (sin x)))
(/ 1 x)
(/ 1 x)
(/ 1 x)
(/ 1 x)
(/ (cos x) (sin x))
(/ (cos x) (sin x))
(/ (cos x) (sin x))
(/ (cos x) (sin x))
(/ (sin x) (cos x))
(/ (sin x) (cos x))
(/ (sin x) (cos x))
(/ (sin x) (cos x))
(* -1 (/ (cos x) (sin x)))
(- (/ 1 x) (/ (cos x) (sin x)))
(- (/ 1 x) (/ (cos x) (sin x)))
(- (/ 1 x) (/ (cos x) (sin x)))
(/ 1 x)
(/ 1 x)
(/ 1 x)
(/ 1 x)
(/ (cos x) (sin x))
(/ (cos x) (sin x))
(/ (cos x) (sin x))
(/ (cos x) (sin x))
(/ (sin x) (cos x))
(/ (sin x) (cos x))
(/ (sin x) (cos x))
(/ (sin x) (cos x))
Outputs
(* 1/3 x)
(*.f64 x #s(literal 1/3 binary64))
(* x (+ 1/3 (* 1/45 (pow x 2))))
(*.f64 (fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64)) x)
(* x (+ 1/3 (* (pow x 2) (+ 1/45 (* 2/945 (pow x 2))))))
(*.f64 (fma.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x)
(* x (+ 1/3 (* (pow x 2) (+ 1/45 (* (pow x 2) (+ 2/945 (* 1/4725 (pow x 2))))))))
(*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x)
(/ 1 x)
(/.f64 #s(literal 1 binary64) x)
(/ 1 x)
(/.f64 #s(literal 1 binary64) x)
(/ 1 x)
(/.f64 #s(literal 1 binary64) x)
(/ 1 x)
(/.f64 #s(literal 1 binary64) x)
(/ 1 x)
(/.f64 #s(literal 1 binary64) x)
(/ (+ 1 (* -1/3 (pow x 2))) x)
(/.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 x x) #s(literal 1 binary64)) x)
(/ (+ 1 (* (pow x 2) (- (* -1/45 (pow x 2)) 1/3))) x)
(/.f64 (fma.f64 (fma.f64 #s(literal -1/45 binary64) (*.f64 x x) #s(literal -1/3 binary64)) (*.f64 x x) #s(literal 1 binary64)) x)
(/ (+ 1 (* (pow x 2) (- (* (pow x 2) (- (* -2/945 (pow x 2)) 1/45)) 1/3))) x)
(/.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal -2/945 binary64) (*.f64 x x) #s(literal -1/45 binary64)) (*.f64 x x) #s(literal -1/3 binary64)) (*.f64 x x) #s(literal 1 binary64)) x)
x
(* x (+ 1 (* 1/3 (pow x 2))))
(fma.f64 (pow.f64 x #s(literal 3 binary64)) #s(literal 1/3 binary64) x)
(* x (+ 1 (* (pow x 2) (+ 1/3 (* 2/15 (pow x 2))))))
(fma.f64 (pow.f64 x #s(literal 5 binary64)) #s(literal 2/15 binary64) (fma.f64 (pow.f64 x #s(literal 3 binary64)) #s(literal 1/3 binary64) x))
(* x (+ 1 (* (pow x 2) (+ 1/3 (* (pow x 2) (+ 2/15 (* 17/315 (pow x 2))))))))
(fma.f64 (pow.f64 x #s(literal 5 binary64)) (fma.f64 #s(literal 17/315 binary64) (*.f64 x x) #s(literal 2/15 binary64)) (fma.f64 (pow.f64 x #s(literal 3 binary64)) #s(literal 1/3 binary64) x))
(* -1 (/ (cos x) (sin x)))
(/.f64 (neg.f64 (cos.f64 x)) (sin.f64 x))
(- (/ 1 x) (/ (cos x) (sin x)))
(-.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 (cos.f64 x) (sin.f64 x)))
(- (/ 1 x) (/ (cos x) (sin x)))
(-.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 (cos.f64 x) (sin.f64 x)))
(- (/ 1 x) (/ (cos x) (sin x)))
(-.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 (cos.f64 x) (sin.f64 x)))
(/ 1 x)
(/.f64 #s(literal 1 binary64) x)
(/ 1 x)
(/.f64 #s(literal 1 binary64) x)
(/ 1 x)
(/.f64 #s(literal 1 binary64) x)
(/ 1 x)
(/.f64 #s(literal 1 binary64) x)
(/ (cos x) (sin x))
(/.f64 (cos.f64 x) (sin.f64 x))
(/ (cos x) (sin x))
(/.f64 (cos.f64 x) (sin.f64 x))
(/ (cos x) (sin x))
(/.f64 (cos.f64 x) (sin.f64 x))
(/ (cos x) (sin x))
(/.f64 (cos.f64 x) (sin.f64 x))
(/ (sin x) (cos x))
(/.f64 (sin.f64 x) (cos.f64 x))
(/ (sin x) (cos x))
(/.f64 (sin.f64 x) (cos.f64 x))
(/ (sin x) (cos x))
(/.f64 (sin.f64 x) (cos.f64 x))
(/ (sin x) (cos x))
(/.f64 (sin.f64 x) (cos.f64 x))
(* -1 (/ (cos x) (sin x)))
(/.f64 (neg.f64 (cos.f64 x)) (sin.f64 x))
(- (/ 1 x) (/ (cos x) (sin x)))
(-.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 (cos.f64 x) (sin.f64 x)))
(- (/ 1 x) (/ (cos x) (sin x)))
(-.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 (cos.f64 x) (sin.f64 x)))
(- (/ 1 x) (/ (cos x) (sin x)))
(-.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 (cos.f64 x) (sin.f64 x)))
(/ 1 x)
(/.f64 #s(literal 1 binary64) x)
(/ 1 x)
(/.f64 #s(literal 1 binary64) x)
(/ 1 x)
(/.f64 #s(literal 1 binary64) x)
(/ 1 x)
(/.f64 #s(literal 1 binary64) x)
(/ (cos x) (sin x))
(/.f64 (cos.f64 x) (sin.f64 x))
(/ (cos x) (sin x))
(/.f64 (cos.f64 x) (sin.f64 x))
(/ (cos x) (sin x))
(/.f64 (cos.f64 x) (sin.f64 x))
(/ (cos x) (sin x))
(/.f64 (cos.f64 x) (sin.f64 x))
(/ (sin x) (cos x))
(/.f64 (sin.f64 x) (cos.f64 x))
(/ (sin x) (cos x))
(/.f64 (sin.f64 x) (cos.f64 x))
(/ (sin x) (cos x))
(/.f64 (sin.f64 x) (cos.f64 x))
(/ (sin x) (cos x))
(/.f64 (sin.f64 x) (cos.f64 x))

rewrite129.0ms (0.8%)

Memory
-5.7MiB live, 109.5MiB allocated
Rules
3 072×lower-fma.f64
3 072×lower-fma.f32
2 002×lower-*.f64
2 002×lower-*.f32
1 374×frac-times
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0617
01017
14917
245417
3570617
0920317
Stop Event
iter limit
node limit
iter limit
Counts
4 → 277
Calls
Call 1
Inputs
(-.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 #s(literal 1 binary64) (tan.f64 x)))
(/.f64 #s(literal 1 binary64) x)
(/.f64 #s(literal 1 binary64) (tan.f64 x))
(tan.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>

eval50.0ms (0.3%)

Memory
10.1MiB live, 51.2MiB allocated
Compiler

Compiled 5 442 to 762 computations (86% saved)

prune14.0ms (0.1%)

Memory
-22.0MiB live, 16.3MiB allocated
Pruning

4 alts after pruning (4 fresh and 0 done)

PrunedKeptTotal
New3204324
Fresh000
Picked101
Done000
Total3214325
Accuracy
99.4%
Counts
325 → 4
Alt Table
Click to see full alt table
StatusAccuracyProgram
99.4%
#s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x))
99.4%
#s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 (fma.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x))
99.3%
#s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 (fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64)) x))
98.7%
#s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 x #s(literal 1/3 binary64)))
Compiler

Compiled 46 to 31 computations (32.6% saved)

simplify461.0ms (2.9%)

Memory
17.4MiB live, 91.5MiB allocated
Algorithm
egg-herbie
Localize:

Found 14 expressions of interest:

NewMetricScoreProgram
cost-diff0
(fma.f64 (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (*.f64 x x) #s(literal 1/45 binary64))
cost-diff0
(fma.f64 (fma.f64 (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64))
cost-diff0
(*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x)
cost-diff0
#s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x))
cost-diff0
(fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64))
cost-diff0
(fma.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64))
cost-diff0
(*.f64 (fma.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x)
cost-diff0
#s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 (fma.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x))
cost-diff0
(*.f64 x x)
cost-diff0
(fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64))
cost-diff0
(*.f64 (fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64)) x)
cost-diff0
#s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 (fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64)) x))
cost-diff0
(*.f64 x #s(literal 1/3 binary64))
cost-diff0
#s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 x #s(literal 1/3 binary64)))
Rules
9 704×lower-fma.f32
9 692×lower-fma.f64
2 552×lower-*.f32
2 542×lower-*.f64
992×lower-+.f64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
025199
042199
174199
2136199
3290199
4637199
5953199
61011199
71045199
81535199
94653199
106564199
117012199
127037199
137037199
147261199
157281199
167281199
177299199
187299199
197305199
07305199
Stop Event
iter limit
saturated
iter limit
Calls
Call 1
Inputs
#s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 x #s(literal 1/3 binary64)))
(*.f64 x #s(literal 1/3 binary64))
x
#s(literal 1/3 binary64)
#s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 (fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64)) x))
(*.f64 (fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64)) x)
(fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64))
(*.f64 x x)
x
#s(literal 1/45 binary64)
#s(literal 1/3 binary64)
#s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 (fma.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x))
(*.f64 (fma.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x)
(fma.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64))
(fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64))
#s(literal 2/945 binary64)
(*.f64 x x)
x
#s(literal 1/45 binary64)
#s(literal 1/3 binary64)
#s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x))
(*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x)
(fma.f64 (fma.f64 (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64))
(fma.f64 (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (*.f64 x x) #s(literal 1/45 binary64))
(fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64))
#s(literal 1/4725 binary64)
(*.f64 x x)
x
#s(literal 2/945 binary64)
#s(literal 1/45 binary64)
#s(literal 1/3 binary64)
Outputs
#s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 x #s(literal 1/3 binary64)))
#s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 #s(literal 1/3 binary64) x))
(*.f64 x #s(literal 1/3 binary64))
(*.f64 #s(literal 1/3 binary64) x)
x
#s(literal 1/3 binary64)
#s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 (fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64)) x))
#s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 (fma.f64 #s(literal 1/45 binary64) (*.f64 x x) #s(literal 1/3 binary64)) x))
(*.f64 (fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64)) x)
(*.f64 (fma.f64 #s(literal 1/45 binary64) (*.f64 x x) #s(literal 1/3 binary64)) x)
(fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64))
(fma.f64 #s(literal 1/45 binary64) (*.f64 x x) #s(literal 1/3 binary64))
(*.f64 x x)
x
#s(literal 1/45 binary64)
#s(literal 1/3 binary64)
#s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 (fma.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x))
(*.f64 (fma.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x)
(fma.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64))
(fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64))
#s(literal 2/945 binary64)
(*.f64 x x)
x
#s(literal 1/45 binary64)
#s(literal 1/3 binary64)
#s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x))
(*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x)
(fma.f64 (fma.f64 (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64))
(fma.f64 (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (*.f64 x x) #s(literal 1/45 binary64))
(fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64))
#s(literal 1/4725 binary64)
(*.f64 x x)
x
#s(literal 2/945 binary64)
#s(literal 1/45 binary64)
#s(literal 1/3 binary64)

localize813.0ms (5%)

Memory
26.8MiB live, 381.5MiB allocated
Localize:

Found 14 expressions of interest:

NewMetricScoreProgram
accuracy0.00390625
(fma.f64 (fma.f64 (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64))
accuracy0.00390625
(fma.f64 (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (*.f64 x x) #s(literal 1/45 binary64))
accuracy0.01171875
(fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64))
accuracy0.3515625
(*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x)
accuracy0.00390625
(fma.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64))
accuracy0.01171875
(fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64))
accuracy0.01953125
#s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 (fma.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x))
accuracy0.35546875
(*.f64 (fma.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x)
accuracy0
(*.f64 x x)
accuracy0.00390625
(fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64))
accuracy0.08018926641797663
#s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 (fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64)) x))
accuracy0.3515625
(*.f64 (fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64)) x)
accuracy0.36328125
(*.f64 x #s(literal 1/3 binary64))
accuracy0.46227167395866475
#s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 x #s(literal 1/3 binary64)))
Samples
533.0ms125×2valid
256.0ms127×1valid
1.0ms0valid
Compiler

Compiled 171 to 29 computations (83% saved)

Precisions
Click to see histograms. Total time spent on operations: 759.0ms
ival-mult: 291.0ms (38.3% of total)
ival-tan: 192.0ms (25.3% of total)
ival-add: 92.0ms (12.1% of total)
ival-sub: 85.0ms (11.2% of total)
const: 64.0ms (8.4% of total)
adjust: 23.0ms (3% of total)
ival-div: 11.0ms (1.4% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)

series17.0ms (0.1%)

Memory
-5.9MiB live, 32.4MiB allocated
Counts
15 → 180
Calls
Call 1
Inputs
#s(alt #s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 x #s(literal 1/3 binary64))) (patch #s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 x #s(literal 1/3 binary64))) #<representation binary64>) () ())
#s(alt (*.f64 x #s(literal 1/3 binary64)) (patch (*.f64 x #s(literal 1/3 binary64)) #<representation binary64>) () ())
#s(alt #s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 (fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64)) x)) (patch #s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 (fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64)) x)) #<representation binary64>) () ())
#s(alt (*.f64 (fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64)) x) (patch (*.f64 (fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64)) x) #<representation binary64>) () ())
#s(alt (fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64)) (patch (fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64)) #<representation binary64>) () ())
#s(alt (*.f64 x x) (patch (*.f64 x x) #<representation binary64>) () ())
#s(alt #s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 (fma.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x)) (patch #s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 (fma.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x)) #<representation binary64>) () ())
#s(alt (*.f64 (fma.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x) (patch (*.f64 (fma.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x) #<representation binary64>) () ())
#s(alt (fma.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) (patch (fma.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) #<representation binary64>) () ())
#s(alt (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) (patch (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) #<representation binary64>) () ())
#s(alt #s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x)) (patch #s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x)) #<representation binary64>) () ())
#s(alt (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x) (patch (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x) #<representation binary64>) () ())
#s(alt (fma.f64 (fma.f64 (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) (patch (fma.f64 (fma.f64 (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) #<representation binary64>) () ())
#s(alt (fma.f64 (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (*.f64 x x) #s(literal 1/45 binary64)) (patch (fma.f64 (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (*.f64 x x) #s(literal 1/45 binary64)) #<representation binary64>) () ())
#s(alt (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (patch (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) #<representation binary64>) () ())
Outputs
#s(alt (* 1/3 x) (taylor 0 x) (#s(alt #s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 x #s(literal 1/3 binary64))) (patch #s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 x #s(literal 1/3 binary64))) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1/3 (* 1/45 (pow x 2)))) (taylor 0 x) (#s(alt #s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 x #s(literal 1/3 binary64))) (patch #s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 x #s(literal 1/3 binary64))) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1/3 (* (pow x 2) (+ 1/45 (* 2/945 (pow x 2)))))) (taylor 0 x) (#s(alt #s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 x #s(literal 1/3 binary64))) (patch #s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 x #s(literal 1/3 binary64))) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1/3 (* (pow x 2) (+ 1/45 (* (pow x 2) (+ 2/945 (* 1/4725 (pow x 2)))))))) (taylor 0 x) (#s(alt #s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 x #s(literal 1/3 binary64))) (patch #s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 x #s(literal 1/3 binary64))) #<representation binary64>) () ())) ())
#s(alt (* 1/3 x) (taylor 0 x) (#s(alt (*.f64 x #s(literal 1/3 binary64)) (patch (*.f64 x #s(literal 1/3 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 1/3 x) (taylor 0 x) (#s(alt (*.f64 x #s(literal 1/3 binary64)) (patch (*.f64 x #s(literal 1/3 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 1/3 x) (taylor 0 x) (#s(alt (*.f64 x #s(literal 1/3 binary64)) (patch (*.f64 x #s(literal 1/3 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 1/3 x) (taylor 0 x) (#s(alt (*.f64 x #s(literal 1/3 binary64)) (patch (*.f64 x #s(literal 1/3 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 1/3 x) (taylor 0 x) (#s(alt #s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 (fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64)) x)) (patch #s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 (fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1/3 (* 1/45 (pow x 2)))) (taylor 0 x) (#s(alt #s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 (fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64)) x)) (patch #s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 (fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1/3 (* (pow x 2) (+ 1/45 (* 2/945 (pow x 2)))))) (taylor 0 x) (#s(alt #s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 (fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64)) x)) (patch #s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 (fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1/3 (* (pow x 2) (+ 1/45 (* (pow x 2) (+ 2/945 (* 1/4725 (pow x 2)))))))) (taylor 0 x) (#s(alt #s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 (fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64)) x)) (patch #s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 (fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt (* 1/3 x) (taylor 0 x) (#s(alt (*.f64 (fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64)) x) (patch (*.f64 (fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1/3 (* 1/45 (pow x 2)))) (taylor 0 x) (#s(alt (*.f64 (fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64)) x) (patch (*.f64 (fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1/3 (* 1/45 (pow x 2)))) (taylor 0 x) (#s(alt (*.f64 (fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64)) x) (patch (*.f64 (fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1/3 (* 1/45 (pow x 2)))) (taylor 0 x) (#s(alt (*.f64 (fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64)) x) (patch (*.f64 (fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64)) x) #<representation binary64>) () ())) ())
#s(alt 1/3 (taylor 0 x) (#s(alt (fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64)) (patch (fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 1/3 (* 1/45 (pow x 2))) (taylor 0 x) (#s(alt (fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64)) (patch (fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 1/3 (* 1/45 (pow x 2))) (taylor 0 x) (#s(alt (fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64)) (patch (fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 1/3 (* 1/45 (pow x 2))) (taylor 0 x) (#s(alt (fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64)) (patch (fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 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/3 x) (taylor 0 x) (#s(alt #s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 (fma.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x)) (patch #s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 (fma.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1/3 (* 1/45 (pow x 2)))) (taylor 0 x) (#s(alt #s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 (fma.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x)) (patch #s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 (fma.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1/3 (* (pow x 2) (+ 1/45 (* 2/945 (pow x 2)))))) (taylor 0 x) (#s(alt #s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 (fma.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x)) (patch #s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 (fma.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1/3 (* (pow x 2) (+ 1/45 (* (pow x 2) (+ 2/945 (* 1/4725 (pow x 2)))))))) (taylor 0 x) (#s(alt #s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 (fma.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x)) (patch #s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 (fma.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt (* 1/3 x) (taylor 0 x) (#s(alt (*.f64 (fma.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x) (patch (*.f64 (fma.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1/3 (* 1/45 (pow x 2)))) (taylor 0 x) (#s(alt (*.f64 (fma.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x) (patch (*.f64 (fma.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1/3 (* (pow x 2) (+ 1/45 (* 2/945 (pow x 2)))))) (taylor 0 x) (#s(alt (*.f64 (fma.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x) (patch (*.f64 (fma.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1/3 (* (pow x 2) (+ 1/45 (* 2/945 (pow x 2)))))) (taylor 0 x) (#s(alt (*.f64 (fma.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x) (patch (*.f64 (fma.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x) #<representation binary64>) () ())) ())
#s(alt 1/3 (taylor 0 x) (#s(alt (fma.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) (patch (fma.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 1/3 (* 1/45 (pow x 2))) (taylor 0 x) (#s(alt (fma.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) (patch (fma.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 1/3 (* (pow x 2) (+ 1/45 (* 2/945 (pow x 2))))) (taylor 0 x) (#s(alt (fma.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) (patch (fma.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 1/3 (* (pow x 2) (+ 1/45 (* 2/945 (pow x 2))))) (taylor 0 x) (#s(alt (fma.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) (patch (fma.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) #<representation binary64>) () ())) ())
#s(alt 1/45 (taylor 0 x) (#s(alt (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) (patch (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 1/45 (* 2/945 (pow x 2))) (taylor 0 x) (#s(alt (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) (patch (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 1/45 (* 2/945 (pow x 2))) (taylor 0 x) (#s(alt (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) (patch (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 1/45 (* 2/945 (pow x 2))) (taylor 0 x) (#s(alt (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) (patch (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 1/3 x) (taylor 0 x) (#s(alt #s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x)) (patch #s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1/3 (* 1/45 (pow x 2)))) (taylor 0 x) (#s(alt #s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x)) (patch #s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1/3 (* (pow x 2) (+ 1/45 (* 2/945 (pow x 2)))))) (taylor 0 x) (#s(alt #s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x)) (patch #s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1/3 (* (pow x 2) (+ 1/45 (* (pow x 2) (+ 2/945 (* 1/4725 (pow x 2)))))))) (taylor 0 x) (#s(alt #s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x)) (patch #s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt (* 1/3 x) (taylor 0 x) (#s(alt (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x) (patch (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1/3 (* 1/45 (pow x 2)))) (taylor 0 x) (#s(alt (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x) (patch (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1/3 (* (pow x 2) (+ 1/45 (* 2/945 (pow x 2)))))) (taylor 0 x) (#s(alt (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x) (patch (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1/3 (* (pow x 2) (+ 1/45 (* (pow x 2) (+ 2/945 (* 1/4725 (pow x 2)))))))) (taylor 0 x) (#s(alt (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x) (patch (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x) #<representation binary64>) () ())) ())
#s(alt 1/3 (taylor 0 x) (#s(alt (fma.f64 (fma.f64 (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) (patch (fma.f64 (fma.f64 (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 1/3 (* 1/45 (pow x 2))) (taylor 0 x) (#s(alt (fma.f64 (fma.f64 (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) (patch (fma.f64 (fma.f64 (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 1/3 (* (pow x 2) (+ 1/45 (* 2/945 (pow x 2))))) (taylor 0 x) (#s(alt (fma.f64 (fma.f64 (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) (patch (fma.f64 (fma.f64 (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 1/3 (* (pow x 2) (+ 1/45 (* (pow x 2) (+ 2/945 (* 1/4725 (pow x 2))))))) (taylor 0 x) (#s(alt (fma.f64 (fma.f64 (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) (patch (fma.f64 (fma.f64 (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) #<representation binary64>) () ())) ())
#s(alt 1/45 (taylor 0 x) (#s(alt (fma.f64 (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (*.f64 x x) #s(literal 1/45 binary64)) (patch (fma.f64 (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (*.f64 x x) #s(literal 1/45 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 1/45 (* 2/945 (pow x 2))) (taylor 0 x) (#s(alt (fma.f64 (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (*.f64 x x) #s(literal 1/45 binary64)) (patch (fma.f64 (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (*.f64 x x) #s(literal 1/45 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 1/45 (* (pow x 2) (+ 2/945 (* 1/4725 (pow x 2))))) (taylor 0 x) (#s(alt (fma.f64 (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (*.f64 x x) #s(literal 1/45 binary64)) (patch (fma.f64 (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (*.f64 x x) #s(literal 1/45 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 1/45 (* (pow x 2) (+ 2/945 (* 1/4725 (pow x 2))))) (taylor 0 x) (#s(alt (fma.f64 (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (*.f64 x x) #s(literal 1/45 binary64)) (patch (fma.f64 (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (*.f64 x x) #s(literal 1/45 binary64)) #<representation binary64>) () ())) ())
#s(alt 2/945 (taylor 0 x) (#s(alt (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (patch (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 2/945 (* 1/4725 (pow x 2))) (taylor 0 x) (#s(alt (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (patch (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 2/945 (* 1/4725 (pow x 2))) (taylor 0 x) (#s(alt (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (patch (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 2/945 (* 1/4725 (pow x 2))) (taylor 0 x) (#s(alt (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (patch (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) #<representation binary64>) () ())) ())
#s(alt (* -1 (/ (cos x) (sin x))) (taylor inf x) (#s(alt #s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 x #s(literal 1/3 binary64))) (patch #s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 x #s(literal 1/3 binary64))) #<representation binary64>) () ())) ())
#s(alt (- (/ 1 x) (/ (cos x) (sin x))) (taylor inf x) (#s(alt #s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 x #s(literal 1/3 binary64))) (patch #s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 x #s(literal 1/3 binary64))) #<representation binary64>) () ())) ())
#s(alt (- (/ 1 x) (/ (cos x) (sin x))) (taylor inf x) (#s(alt #s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 x #s(literal 1/3 binary64))) (patch #s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 x #s(literal 1/3 binary64))) #<representation binary64>) () ())) ())
#s(alt (- (/ 1 x) (/ (cos x) (sin x))) (taylor inf x) (#s(alt #s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 x #s(literal 1/3 binary64))) (patch #s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 x #s(literal 1/3 binary64))) #<representation binary64>) () ())) ())
#s(alt (* 1/3 x) (taylor inf x) (#s(alt (*.f64 x #s(literal 1/3 binary64)) (patch (*.f64 x #s(literal 1/3 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 1/3 x) (taylor inf x) (#s(alt (*.f64 x #s(literal 1/3 binary64)) (patch (*.f64 x #s(literal 1/3 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 1/3 x) (taylor inf x) (#s(alt (*.f64 x #s(literal 1/3 binary64)) (patch (*.f64 x #s(literal 1/3 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 1/3 x) (taylor inf x) (#s(alt (*.f64 x #s(literal 1/3 binary64)) (patch (*.f64 x #s(literal 1/3 binary64)) #<representation binary64>) () ())) ())
#s(alt (* -1 (/ (cos x) (sin x))) (taylor inf x) (#s(alt #s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 (fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64)) x)) (patch #s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 (fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt (- (/ 1 x) (/ (cos x) (sin x))) (taylor inf x) (#s(alt #s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 (fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64)) x)) (patch #s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 (fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt (- (/ 1 x) (/ (cos x) (sin x))) (taylor inf x) (#s(alt #s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 (fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64)) x)) (patch #s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 (fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt (- (/ 1 x) (/ (cos x) (sin x))) (taylor inf x) (#s(alt #s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 (fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64)) x)) (patch #s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 (fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt (* 1/45 (pow x 3)) (taylor inf x) (#s(alt (*.f64 (fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64)) x) (patch (*.f64 (fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* (pow x 3) (+ 1/45 (* 1/3 (/ 1 (pow x 2))))) (taylor inf x) (#s(alt (*.f64 (fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64)) x) (patch (*.f64 (fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* (pow x 3) (+ 1/45 (* 1/3 (/ 1 (pow x 2))))) (taylor inf x) (#s(alt (*.f64 (fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64)) x) (patch (*.f64 (fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* (pow x 3) (+ 1/45 (* 1/3 (/ 1 (pow x 2))))) (taylor inf x) (#s(alt (*.f64 (fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64)) x) (patch (*.f64 (fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* 1/45 (pow x 2)) (taylor inf x) (#s(alt (fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64)) (patch (fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (+ 1/45 (* 1/3 (/ 1 (pow x 2))))) (taylor inf x) (#s(alt (fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64)) (patch (fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (+ 1/45 (* 1/3 (/ 1 (pow x 2))))) (taylor inf x) (#s(alt (fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64)) (patch (fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (+ 1/45 (* 1/3 (/ 1 (pow x 2))))) (taylor inf x) (#s(alt (fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64)) (patch (fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 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) (sin x))) (taylor inf x) (#s(alt #s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 (fma.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x)) (patch #s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 (fma.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt (- (/ 1 x) (/ (cos x) (sin x))) (taylor inf x) (#s(alt #s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 (fma.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x)) (patch #s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 (fma.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt (- (/ 1 x) (/ (cos x) (sin x))) (taylor inf x) (#s(alt #s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 (fma.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x)) (patch #s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 (fma.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt (- (/ 1 x) (/ (cos x) (sin x))) (taylor inf x) (#s(alt #s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 (fma.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x)) (patch #s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 (fma.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt (* 2/945 (pow x 5)) (taylor inf x) (#s(alt (*.f64 (fma.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x) (patch (*.f64 (fma.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* (pow x 5) (+ 2/945 (* 1/45 (/ 1 (pow x 2))))) (taylor inf x) (#s(alt (*.f64 (fma.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x) (patch (*.f64 (fma.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* (pow x 5) (+ 2/945 (+ (/ 1/3 (pow x 4)) (* 1/45 (/ 1 (pow x 2)))))) (taylor inf x) (#s(alt (*.f64 (fma.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x) (patch (*.f64 (fma.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* (pow x 5) (+ 2/945 (+ (/ 1/3 (pow x 4)) (* 1/45 (/ 1 (pow x 2)))))) (taylor inf x) (#s(alt (*.f64 (fma.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x) (patch (*.f64 (fma.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* 2/945 (pow x 4)) (taylor inf x) (#s(alt (fma.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) (patch (fma.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 4) (+ 2/945 (* 1/45 (/ 1 (pow x 2))))) (taylor inf x) (#s(alt (fma.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) (patch (fma.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 4) (+ 2/945 (+ (/ 1/3 (pow x 4)) (* 1/45 (/ 1 (pow x 2)))))) (taylor inf x) (#s(alt (fma.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) (patch (fma.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 4) (+ 2/945 (+ (/ 1/3 (pow x 4)) (* 1/45 (/ 1 (pow x 2)))))) (taylor inf x) (#s(alt (fma.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) (patch (fma.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 2/945 (pow x 2)) (taylor inf x) (#s(alt (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) (patch (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (+ 2/945 (* 1/45 (/ 1 (pow x 2))))) (taylor inf x) (#s(alt (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) (patch (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (+ 2/945 (* 1/45 (/ 1 (pow x 2))))) (taylor inf x) (#s(alt (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) (patch (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (+ 2/945 (* 1/45 (/ 1 (pow x 2))))) (taylor inf x) (#s(alt (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) (patch (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) #<representation binary64>) () ())) ())
#s(alt (* -1 (/ (cos x) (sin x))) (taylor inf x) (#s(alt #s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x)) (patch #s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt (- (/ 1 x) (/ (cos x) (sin x))) (taylor inf x) (#s(alt #s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x)) (patch #s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt (- (/ 1 x) (/ (cos x) (sin x))) (taylor inf x) (#s(alt #s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x)) (patch #s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt (- (/ 1 x) (/ (cos x) (sin x))) (taylor inf x) (#s(alt #s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x)) (patch #s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt (* 1/4725 (pow x 7)) (taylor inf x) (#s(alt (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x) (patch (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* (pow x 7) (+ 1/4725 (* 2/945 (/ 1 (pow x 2))))) (taylor inf x) (#s(alt (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x) (patch (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* (pow x 7) (+ 1/4725 (+ (/ 1/45 (pow x 4)) (* 2/945 (/ 1 (pow x 2)))))) (taylor inf x) (#s(alt (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x) (patch (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* (pow x 7) (+ 1/4725 (+ (/ 1/45 (pow x 4)) (+ (* 2/945 (/ 1 (pow x 2))) (* 1/3 (/ 1 (pow x 6))))))) (taylor inf x) (#s(alt (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x) (patch (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* 1/4725 (pow x 6)) (taylor inf x) (#s(alt (fma.f64 (fma.f64 (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) (patch (fma.f64 (fma.f64 (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 6) (+ 1/4725 (* 2/945 (/ 1 (pow x 2))))) (taylor inf x) (#s(alt (fma.f64 (fma.f64 (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) (patch (fma.f64 (fma.f64 (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 6) (+ 1/4725 (+ (/ 1/45 (pow x 4)) (* 2/945 (/ 1 (pow x 2)))))) (taylor inf x) (#s(alt (fma.f64 (fma.f64 (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) (patch (fma.f64 (fma.f64 (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 6) (+ 1/4725 (+ (/ 1/45 (pow x 4)) (+ (* 2/945 (/ 1 (pow x 2))) (* 1/3 (/ 1 (pow x 6))))))) (taylor inf x) (#s(alt (fma.f64 (fma.f64 (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) (patch (fma.f64 (fma.f64 (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 1/4725 (pow x 4)) (taylor inf x) (#s(alt (fma.f64 (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (*.f64 x x) #s(literal 1/45 binary64)) (patch (fma.f64 (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (*.f64 x x) #s(literal 1/45 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 4) (+ 1/4725 (* 2/945 (/ 1 (pow x 2))))) (taylor inf x) (#s(alt (fma.f64 (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (*.f64 x x) #s(literal 1/45 binary64)) (patch (fma.f64 (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (*.f64 x x) #s(literal 1/45 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 4) (+ 1/4725 (+ (/ 1/45 (pow x 4)) (* 2/945 (/ 1 (pow x 2)))))) (taylor inf x) (#s(alt (fma.f64 (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (*.f64 x x) #s(literal 1/45 binary64)) (patch (fma.f64 (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (*.f64 x x) #s(literal 1/45 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 4) (+ 1/4725 (+ (/ 1/45 (pow x 4)) (* 2/945 (/ 1 (pow x 2)))))) (taylor inf x) (#s(alt (fma.f64 (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (*.f64 x x) #s(literal 1/45 binary64)) (patch (fma.f64 (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (*.f64 x x) #s(literal 1/45 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 1/4725 (pow x 2)) (taylor inf x) (#s(alt (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (patch (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (+ 1/4725 (* 2/945 (/ 1 (pow x 2))))) (taylor inf x) (#s(alt (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (patch (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (+ 1/4725 (* 2/945 (/ 1 (pow x 2))))) (taylor inf x) (#s(alt (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (patch (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (+ 1/4725 (* 2/945 (/ 1 (pow x 2))))) (taylor inf x) (#s(alt (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (patch (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) #<representation binary64>) () ())) ())
#s(alt (* -1 (/ (cos x) (sin x))) (taylor -inf x) (#s(alt #s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 x #s(literal 1/3 binary64))) (patch #s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 x #s(literal 1/3 binary64))) #<representation binary64>) () ())) ())
#s(alt (- (/ 1 x) (/ (cos x) (sin x))) (taylor -inf x) (#s(alt #s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 x #s(literal 1/3 binary64))) (patch #s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 x #s(literal 1/3 binary64))) #<representation binary64>) () ())) ())
#s(alt (- (/ 1 x) (/ (cos x) (sin x))) (taylor -inf x) (#s(alt #s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 x #s(literal 1/3 binary64))) (patch #s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 x #s(literal 1/3 binary64))) #<representation binary64>) () ())) ())
#s(alt (- (/ 1 x) (/ (cos x) (sin x))) (taylor -inf x) (#s(alt #s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 x #s(literal 1/3 binary64))) (patch #s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 x #s(literal 1/3 binary64))) #<representation binary64>) () ())) ())
#s(alt (* 1/3 x) (taylor -inf x) (#s(alt (*.f64 x #s(literal 1/3 binary64)) (patch (*.f64 x #s(literal 1/3 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 1/3 x) (taylor -inf x) (#s(alt (*.f64 x #s(literal 1/3 binary64)) (patch (*.f64 x #s(literal 1/3 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 1/3 x) (taylor -inf x) (#s(alt (*.f64 x #s(literal 1/3 binary64)) (patch (*.f64 x #s(literal 1/3 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 1/3 x) (taylor -inf x) (#s(alt (*.f64 x #s(literal 1/3 binary64)) (patch (*.f64 x #s(literal 1/3 binary64)) #<representation binary64>) () ())) ())
#s(alt (* -1 (/ (cos x) (sin x))) (taylor -inf x) (#s(alt #s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 (fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64)) x)) (patch #s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 (fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt (- (/ 1 x) (/ (cos x) (sin x))) (taylor -inf x) (#s(alt #s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 (fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64)) x)) (patch #s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 (fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt (- (/ 1 x) (/ (cos x) (sin x))) (taylor -inf x) (#s(alt #s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 (fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64)) x)) (patch #s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 (fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt (- (/ 1 x) (/ (cos x) (sin x))) (taylor -inf x) (#s(alt #s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 (fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64)) x)) (patch #s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 (fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt (* 1/45 (pow x 3)) (taylor -inf x) (#s(alt (*.f64 (fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64)) x) (patch (*.f64 (fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* (pow x 3) (+ 1/45 (* 1/3 (/ 1 (pow x 2))))) (taylor -inf x) (#s(alt (*.f64 (fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64)) x) (patch (*.f64 (fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* (pow x 3) (+ 1/45 (* 1/3 (/ 1 (pow x 2))))) (taylor -inf x) (#s(alt (*.f64 (fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64)) x) (patch (*.f64 (fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* (pow x 3) (+ 1/45 (* 1/3 (/ 1 (pow x 2))))) (taylor -inf x) (#s(alt (*.f64 (fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64)) x) (patch (*.f64 (fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* 1/45 (pow x 2)) (taylor -inf x) (#s(alt (fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64)) (patch (fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (+ 1/45 (* 1/3 (/ 1 (pow x 2))))) (taylor -inf x) (#s(alt (fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64)) (patch (fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (+ 1/45 (* 1/3 (/ 1 (pow x 2))))) (taylor -inf x) (#s(alt (fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64)) (patch (fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (+ 1/45 (* 1/3 (/ 1 (pow x 2))))) (taylor -inf x) (#s(alt (fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64)) (patch (fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 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) (sin x))) (taylor -inf x) (#s(alt #s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 (fma.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x)) (patch #s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 (fma.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt (- (/ 1 x) (/ (cos x) (sin x))) (taylor -inf x) (#s(alt #s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 (fma.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x)) (patch #s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 (fma.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt (- (/ 1 x) (/ (cos x) (sin x))) (taylor -inf x) (#s(alt #s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 (fma.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x)) (patch #s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 (fma.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt (- (/ 1 x) (/ (cos x) (sin x))) (taylor -inf x) (#s(alt #s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 (fma.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x)) (patch #s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 (fma.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt (* 2/945 (pow x 5)) (taylor -inf x) (#s(alt (*.f64 (fma.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x) (patch (*.f64 (fma.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* (pow x 5) (+ 2/945 (* 1/45 (/ 1 (pow x 2))))) (taylor -inf x) (#s(alt (*.f64 (fma.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x) (patch (*.f64 (fma.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* -1 (* (pow x 5) (- (* -1 (/ (+ 1/45 (* 1/3 (/ 1 (pow x 2)))) (pow x 2))) 2/945))) (taylor -inf x) (#s(alt (*.f64 (fma.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x) (patch (*.f64 (fma.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* -1 (* (pow x 5) (- (* -1 (/ (+ 1/45 (* 1/3 (/ 1 (pow x 2)))) (pow x 2))) 2/945))) (taylor -inf x) (#s(alt (*.f64 (fma.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x) (patch (*.f64 (fma.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* 2/945 (pow x 4)) (taylor -inf x) (#s(alt (fma.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) (patch (fma.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 4) (+ 2/945 (* 1/45 (/ 1 (pow x 2))))) (taylor -inf x) (#s(alt (fma.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) (patch (fma.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 4) (+ 2/945 (+ (/ 1/3 (pow x 4)) (* 1/45 (/ 1 (pow x 2)))))) (taylor -inf x) (#s(alt (fma.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) (patch (fma.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 4) (+ 2/945 (+ (/ 1/3 (pow x 4)) (* 1/45 (/ 1 (pow x 2)))))) (taylor -inf x) (#s(alt (fma.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) (patch (fma.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 2/945 (pow x 2)) (taylor -inf x) (#s(alt (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) (patch (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (+ 2/945 (* 1/45 (/ 1 (pow x 2))))) (taylor -inf x) (#s(alt (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) (patch (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (+ 2/945 (* 1/45 (/ 1 (pow x 2))))) (taylor -inf x) (#s(alt (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) (patch (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (+ 2/945 (* 1/45 (/ 1 (pow x 2))))) (taylor -inf x) (#s(alt (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) (patch (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) #<representation binary64>) () ())) ())
#s(alt (* -1 (/ (cos x) (sin x))) (taylor -inf x) (#s(alt #s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x)) (patch #s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt (- (/ 1 x) (/ (cos x) (sin x))) (taylor -inf x) (#s(alt #s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x)) (patch #s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt (- (/ 1 x) (/ (cos x) (sin x))) (taylor -inf x) (#s(alt #s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x)) (patch #s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt (- (/ 1 x) (/ (cos x) (sin x))) (taylor -inf x) (#s(alt #s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x)) (patch #s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt (* 1/4725 (pow x 7)) (taylor -inf x) (#s(alt (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x) (patch (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* (pow x 7) (+ 1/4725 (* 2/945 (/ 1 (pow x 2))))) (taylor -inf x) (#s(alt (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x) (patch (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* -1 (* (pow x 7) (- (* -1 (/ (+ 2/945 (* 1/45 (/ 1 (pow x 2)))) (pow x 2))) 1/4725))) (taylor -inf x) (#s(alt (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x) (patch (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* -1 (* (pow x 7) (- (* -1 (/ (+ 1/45 (* 1/3 (/ 1 (pow x 2)))) (pow x 4))) (+ 1/4725 (* 2/945 (/ 1 (pow x 2))))))) (taylor -inf x) (#s(alt (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x) (patch (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* 1/4725 (pow x 6)) (taylor -inf x) (#s(alt (fma.f64 (fma.f64 (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) (patch (fma.f64 (fma.f64 (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 6) (+ 1/4725 (* 2/945 (/ 1 (pow x 2))))) (taylor -inf x) (#s(alt (fma.f64 (fma.f64 (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) (patch (fma.f64 (fma.f64 (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 6) (+ 1/4725 (+ (/ 1/45 (pow x 4)) (* 2/945 (/ 1 (pow x 2)))))) (taylor -inf x) (#s(alt (fma.f64 (fma.f64 (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) (patch (fma.f64 (fma.f64 (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 6) (+ 1/4725 (+ (/ 1/45 (pow x 4)) (+ (* 2/945 (/ 1 (pow x 2))) (* 1/3 (/ 1 (pow x 6))))))) (taylor -inf x) (#s(alt (fma.f64 (fma.f64 (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) (patch (fma.f64 (fma.f64 (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 1/4725 (pow x 4)) (taylor -inf x) (#s(alt (fma.f64 (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (*.f64 x x) #s(literal 1/45 binary64)) (patch (fma.f64 (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (*.f64 x x) #s(literal 1/45 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 4) (+ 1/4725 (* 2/945 (/ 1 (pow x 2))))) (taylor -inf x) (#s(alt (fma.f64 (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (*.f64 x x) #s(literal 1/45 binary64)) (patch (fma.f64 (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (*.f64 x x) #s(literal 1/45 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 4) (+ 1/4725 (+ (/ 1/45 (pow x 4)) (* 2/945 (/ 1 (pow x 2)))))) (taylor -inf x) (#s(alt (fma.f64 (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (*.f64 x x) #s(literal 1/45 binary64)) (patch (fma.f64 (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (*.f64 x x) #s(literal 1/45 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 4) (+ 1/4725 (+ (/ 1/45 (pow x 4)) (* 2/945 (/ 1 (pow x 2)))))) (taylor -inf x) (#s(alt (fma.f64 (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (*.f64 x x) #s(literal 1/45 binary64)) (patch (fma.f64 (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (*.f64 x x) #s(literal 1/45 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 1/4725 (pow x 2)) (taylor -inf x) (#s(alt (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (patch (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (+ 1/4725 (* 2/945 (/ 1 (pow x 2))))) (taylor -inf x) (#s(alt (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (patch (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (+ 1/4725 (* 2/945 (/ 1 (pow x 2))))) (taylor -inf x) (#s(alt (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (patch (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (+ 1/4725 (* 2/945 (/ 1 (pow x 2))))) (taylor -inf x) (#s(alt (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (patch (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) #<representation binary64>) () ())) ())
Calls

3 calls:

TimeVariablePointExpression
4.0ms
x
@-inf
((- (/ 1 x) (/ 1 (tan x))) (* x 1/3) (- (/ 1 x) (/ 1 (tan x))) (* (+ (* (* x x) 1/45) 1/3) x) (+ (* (* x x) 1/45) 1/3) (* x x) (- (/ 1 x) (/ 1 (tan x))) (* (+ (* (+ (* 2/945 (* x x)) 1/45) (* x x)) 1/3) x) (+ (* (+ (* 2/945 (* x x)) 1/45) (* x x)) 1/3) (+ (* 2/945 (* x x)) 1/45) (- (/ 1 x) (/ 1 (tan x))) (* (+ (* (+ (* (+ (* 1/4725 (* x x)) 2/945) (* x x)) 1/45) (* x x)) 1/3) x) (+ (* (+ (* (+ (* 1/4725 (* x x)) 2/945) (* x x)) 1/45) (* x x)) 1/3) (+ (* (+ (* 1/4725 (* x x)) 2/945) (* x x)) 1/45) (+ (* 1/4725 (* x x)) 2/945))
3.0ms
x
@inf
((- (/ 1 x) (/ 1 (tan x))) (* x 1/3) (- (/ 1 x) (/ 1 (tan x))) (* (+ (* (* x x) 1/45) 1/3) x) (+ (* (* x x) 1/45) 1/3) (* x x) (- (/ 1 x) (/ 1 (tan x))) (* (+ (* (+ (* 2/945 (* x x)) 1/45) (* x x)) 1/3) x) (+ (* (+ (* 2/945 (* x x)) 1/45) (* x x)) 1/3) (+ (* 2/945 (* x x)) 1/45) (- (/ 1 x) (/ 1 (tan x))) (* (+ (* (+ (* (+ (* 1/4725 (* x x)) 2/945) (* x x)) 1/45) (* x x)) 1/3) x) (+ (* (+ (* (+ (* 1/4725 (* x x)) 2/945) (* x x)) 1/45) (* x x)) 1/3) (+ (* (+ (* 1/4725 (* x x)) 2/945) (* x x)) 1/45) (+ (* 1/4725 (* x x)) 2/945))
2.0ms
x
@0
((- (/ 1 x) (/ 1 (tan x))) (* x 1/3) (- (/ 1 x) (/ 1 (tan x))) (* (+ (* (* x x) 1/45) 1/3) x) (+ (* (* x x) 1/45) 1/3) (* x x) (- (/ 1 x) (/ 1 (tan x))) (* (+ (* (+ (* 2/945 (* x x)) 1/45) (* x x)) 1/3) x) (+ (* (+ (* 2/945 (* x x)) 1/45) (* x x)) 1/3) (+ (* 2/945 (* x x)) 1/45) (- (/ 1 x) (/ 1 (tan x))) (* (+ (* (+ (* (+ (* 1/4725 (* x x)) 2/945) (* x x)) 1/45) (* x x)) 1/3) x) (+ (* (+ (* (+ (* 1/4725 (* x x)) 2/945) (* x x)) 1/45) (* x x)) 1/3) (+ (* (+ (* 1/4725 (* x x)) 2/945) (* x x)) 1/45) (+ (* 1/4725 (* x x)) 2/945))

simplify131.0ms (0.8%)

Memory
10.1MiB live, 164.1MiB allocated
Algorithm
egg-herbie
Rules
12 624×lower-fma.f64
12 624×lower-fma.f32
4 288×lower-*.f64
4 288×lower-*.f32
1 700×lower-+.f64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0961520
13161520
28411518
322051518
447981518
080231389
Stop Event
iter limit
node limit
Counts
180 → 180
Calls
Call 1
Inputs
(* 1/3 x)
(* x (+ 1/3 (* 1/45 (pow x 2))))
(* x (+ 1/3 (* (pow x 2) (+ 1/45 (* 2/945 (pow x 2))))))
(* x (+ 1/3 (* (pow x 2) (+ 1/45 (* (pow x 2) (+ 2/945 (* 1/4725 (pow x 2))))))))
(* 1/3 x)
(* 1/3 x)
(* 1/3 x)
(* 1/3 x)
(* 1/3 x)
(* x (+ 1/3 (* 1/45 (pow x 2))))
(* x (+ 1/3 (* (pow x 2) (+ 1/45 (* 2/945 (pow x 2))))))
(* x (+ 1/3 (* (pow x 2) (+ 1/45 (* (pow x 2) (+ 2/945 (* 1/4725 (pow x 2))))))))
(* 1/3 x)
(* x (+ 1/3 (* 1/45 (pow x 2))))
(* x (+ 1/3 (* 1/45 (pow x 2))))
(* x (+ 1/3 (* 1/45 (pow x 2))))
1/3
(+ 1/3 (* 1/45 (pow x 2)))
(+ 1/3 (* 1/45 (pow x 2)))
(+ 1/3 (* 1/45 (pow x 2)))
(pow x 2)
(pow x 2)
(pow x 2)
(pow x 2)
(* 1/3 x)
(* x (+ 1/3 (* 1/45 (pow x 2))))
(* x (+ 1/3 (* (pow x 2) (+ 1/45 (* 2/945 (pow x 2))))))
(* x (+ 1/3 (* (pow x 2) (+ 1/45 (* (pow x 2) (+ 2/945 (* 1/4725 (pow x 2))))))))
(* 1/3 x)
(* x (+ 1/3 (* 1/45 (pow x 2))))
(* x (+ 1/3 (* (pow x 2) (+ 1/45 (* 2/945 (pow x 2))))))
(* x (+ 1/3 (* (pow x 2) (+ 1/45 (* 2/945 (pow x 2))))))
1/3
(+ 1/3 (* 1/45 (pow x 2)))
(+ 1/3 (* (pow x 2) (+ 1/45 (* 2/945 (pow x 2)))))
(+ 1/3 (* (pow x 2) (+ 1/45 (* 2/945 (pow x 2)))))
1/45
(+ 1/45 (* 2/945 (pow x 2)))
(+ 1/45 (* 2/945 (pow x 2)))
(+ 1/45 (* 2/945 (pow x 2)))
(* 1/3 x)
(* x (+ 1/3 (* 1/45 (pow x 2))))
(* x (+ 1/3 (* (pow x 2) (+ 1/45 (* 2/945 (pow x 2))))))
(* x (+ 1/3 (* (pow x 2) (+ 1/45 (* (pow x 2) (+ 2/945 (* 1/4725 (pow x 2))))))))
(* 1/3 x)
(* x (+ 1/3 (* 1/45 (pow x 2))))
(* x (+ 1/3 (* (pow x 2) (+ 1/45 (* 2/945 (pow x 2))))))
(* x (+ 1/3 (* (pow x 2) (+ 1/45 (* (pow x 2) (+ 2/945 (* 1/4725 (pow x 2))))))))
1/3
(+ 1/3 (* 1/45 (pow x 2)))
(+ 1/3 (* (pow x 2) (+ 1/45 (* 2/945 (pow x 2)))))
(+ 1/3 (* (pow x 2) (+ 1/45 (* (pow x 2) (+ 2/945 (* 1/4725 (pow x 2)))))))
1/45
(+ 1/45 (* 2/945 (pow x 2)))
(+ 1/45 (* (pow x 2) (+ 2/945 (* 1/4725 (pow x 2)))))
(+ 1/45 (* (pow x 2) (+ 2/945 (* 1/4725 (pow x 2)))))
2/945
(+ 2/945 (* 1/4725 (pow x 2)))
(+ 2/945 (* 1/4725 (pow x 2)))
(+ 2/945 (* 1/4725 (pow x 2)))
(* -1 (/ (cos x) (sin x)))
(- (/ 1 x) (/ (cos x) (sin x)))
(- (/ 1 x) (/ (cos x) (sin x)))
(- (/ 1 x) (/ (cos x) (sin x)))
(* 1/3 x)
(* 1/3 x)
(* 1/3 x)
(* 1/3 x)
(* -1 (/ (cos x) (sin x)))
(- (/ 1 x) (/ (cos x) (sin x)))
(- (/ 1 x) (/ (cos x) (sin x)))
(- (/ 1 x) (/ (cos x) (sin x)))
(* 1/45 (pow x 3))
(* (pow x 3) (+ 1/45 (* 1/3 (/ 1 (pow x 2)))))
(* (pow x 3) (+ 1/45 (* 1/3 (/ 1 (pow x 2)))))
(* (pow x 3) (+ 1/45 (* 1/3 (/ 1 (pow x 2)))))
(* 1/45 (pow x 2))
(* (pow x 2) (+ 1/45 (* 1/3 (/ 1 (pow x 2)))))
(* (pow x 2) (+ 1/45 (* 1/3 (/ 1 (pow x 2)))))
(* (pow x 2) (+ 1/45 (* 1/3 (/ 1 (pow x 2)))))
(pow x 2)
(pow x 2)
(pow x 2)
(pow x 2)
(* -1 (/ (cos x) (sin x)))
(- (/ 1 x) (/ (cos x) (sin x)))
(- (/ 1 x) (/ (cos x) (sin x)))
(- (/ 1 x) (/ (cos x) (sin x)))
(* 2/945 (pow x 5))
(* (pow x 5) (+ 2/945 (* 1/45 (/ 1 (pow x 2)))))
(* (pow x 5) (+ 2/945 (+ (/ 1/3 (pow x 4)) (* 1/45 (/ 1 (pow x 2))))))
(* (pow x 5) (+ 2/945 (+ (/ 1/3 (pow x 4)) (* 1/45 (/ 1 (pow x 2))))))
(* 2/945 (pow x 4))
(* (pow x 4) (+ 2/945 (* 1/45 (/ 1 (pow x 2)))))
(* (pow x 4) (+ 2/945 (+ (/ 1/3 (pow x 4)) (* 1/45 (/ 1 (pow x 2))))))
(* (pow x 4) (+ 2/945 (+ (/ 1/3 (pow x 4)) (* 1/45 (/ 1 (pow x 2))))))
(* 2/945 (pow x 2))
(* (pow x 2) (+ 2/945 (* 1/45 (/ 1 (pow x 2)))))
(* (pow x 2) (+ 2/945 (* 1/45 (/ 1 (pow x 2)))))
(* (pow x 2) (+ 2/945 (* 1/45 (/ 1 (pow x 2)))))
(* -1 (/ (cos x) (sin x)))
(- (/ 1 x) (/ (cos x) (sin x)))
(- (/ 1 x) (/ (cos x) (sin x)))
(- (/ 1 x) (/ (cos x) (sin x)))
(* 1/4725 (pow x 7))
(* (pow x 7) (+ 1/4725 (* 2/945 (/ 1 (pow x 2)))))
(* (pow x 7) (+ 1/4725 (+ (/ 1/45 (pow x 4)) (* 2/945 (/ 1 (pow x 2))))))
(* (pow x 7) (+ 1/4725 (+ (/ 1/45 (pow x 4)) (+ (* 2/945 (/ 1 (pow x 2))) (* 1/3 (/ 1 (pow x 6)))))))
(* 1/4725 (pow x 6))
(* (pow x 6) (+ 1/4725 (* 2/945 (/ 1 (pow x 2)))))
(* (pow x 6) (+ 1/4725 (+ (/ 1/45 (pow x 4)) (* 2/945 (/ 1 (pow x 2))))))
(* (pow x 6) (+ 1/4725 (+ (/ 1/45 (pow x 4)) (+ (* 2/945 (/ 1 (pow x 2))) (* 1/3 (/ 1 (pow x 6)))))))
(* 1/4725 (pow x 4))
(* (pow x 4) (+ 1/4725 (* 2/945 (/ 1 (pow x 2)))))
(* (pow x 4) (+ 1/4725 (+ (/ 1/45 (pow x 4)) (* 2/945 (/ 1 (pow x 2))))))
(* (pow x 4) (+ 1/4725 (+ (/ 1/45 (pow x 4)) (* 2/945 (/ 1 (pow x 2))))))
(* 1/4725 (pow x 2))
(* (pow x 2) (+ 1/4725 (* 2/945 (/ 1 (pow x 2)))))
(* (pow x 2) (+ 1/4725 (* 2/945 (/ 1 (pow x 2)))))
(* (pow x 2) (+ 1/4725 (* 2/945 (/ 1 (pow x 2)))))
(* -1 (/ (cos x) (sin x)))
(- (/ 1 x) (/ (cos x) (sin x)))
(- (/ 1 x) (/ (cos x) (sin x)))
(- (/ 1 x) (/ (cos x) (sin x)))
(* 1/3 x)
(* 1/3 x)
(* 1/3 x)
(* 1/3 x)
(* -1 (/ (cos x) (sin x)))
(- (/ 1 x) (/ (cos x) (sin x)))
(- (/ 1 x) (/ (cos x) (sin x)))
(- (/ 1 x) (/ (cos x) (sin x)))
(* 1/45 (pow x 3))
(* (pow x 3) (+ 1/45 (* 1/3 (/ 1 (pow x 2)))))
(* (pow x 3) (+ 1/45 (* 1/3 (/ 1 (pow x 2)))))
(* (pow x 3) (+ 1/45 (* 1/3 (/ 1 (pow x 2)))))
(* 1/45 (pow x 2))
(* (pow x 2) (+ 1/45 (* 1/3 (/ 1 (pow x 2)))))
(* (pow x 2) (+ 1/45 (* 1/3 (/ 1 (pow x 2)))))
(* (pow x 2) (+ 1/45 (* 1/3 (/ 1 (pow x 2)))))
(pow x 2)
(pow x 2)
(pow x 2)
(pow x 2)
(* -1 (/ (cos x) (sin x)))
(- (/ 1 x) (/ (cos x) (sin x)))
(- (/ 1 x) (/ (cos x) (sin x)))
(- (/ 1 x) (/ (cos x) (sin x)))
(* 2/945 (pow x 5))
(* (pow x 5) (+ 2/945 (* 1/45 (/ 1 (pow x 2)))))
(* -1 (* (pow x 5) (- (* -1 (/ (+ 1/45 (* 1/3 (/ 1 (pow x 2)))) (pow x 2))) 2/945)))
(* -1 (* (pow x 5) (- (* -1 (/ (+ 1/45 (* 1/3 (/ 1 (pow x 2)))) (pow x 2))) 2/945)))
(* 2/945 (pow x 4))
(* (pow x 4) (+ 2/945 (* 1/45 (/ 1 (pow x 2)))))
(* (pow x 4) (+ 2/945 (+ (/ 1/3 (pow x 4)) (* 1/45 (/ 1 (pow x 2))))))
(* (pow x 4) (+ 2/945 (+ (/ 1/3 (pow x 4)) (* 1/45 (/ 1 (pow x 2))))))
(* 2/945 (pow x 2))
(* (pow x 2) (+ 2/945 (* 1/45 (/ 1 (pow x 2)))))
(* (pow x 2) (+ 2/945 (* 1/45 (/ 1 (pow x 2)))))
(* (pow x 2) (+ 2/945 (* 1/45 (/ 1 (pow x 2)))))
(* -1 (/ (cos x) (sin x)))
(- (/ 1 x) (/ (cos x) (sin x)))
(- (/ 1 x) (/ (cos x) (sin x)))
(- (/ 1 x) (/ (cos x) (sin x)))
(* 1/4725 (pow x 7))
(* (pow x 7) (+ 1/4725 (* 2/945 (/ 1 (pow x 2)))))
(* -1 (* (pow x 7) (- (* -1 (/ (+ 2/945 (* 1/45 (/ 1 (pow x 2)))) (pow x 2))) 1/4725)))
(* -1 (* (pow x 7) (- (* -1 (/ (+ 1/45 (* 1/3 (/ 1 (pow x 2)))) (pow x 4))) (+ 1/4725 (* 2/945 (/ 1 (pow x 2)))))))
(* 1/4725 (pow x 6))
(* (pow x 6) (+ 1/4725 (* 2/945 (/ 1 (pow x 2)))))
(* (pow x 6) (+ 1/4725 (+ (/ 1/45 (pow x 4)) (* 2/945 (/ 1 (pow x 2))))))
(* (pow x 6) (+ 1/4725 (+ (/ 1/45 (pow x 4)) (+ (* 2/945 (/ 1 (pow x 2))) (* 1/3 (/ 1 (pow x 6)))))))
(* 1/4725 (pow x 4))
(* (pow x 4) (+ 1/4725 (* 2/945 (/ 1 (pow x 2)))))
(* (pow x 4) (+ 1/4725 (+ (/ 1/45 (pow x 4)) (* 2/945 (/ 1 (pow x 2))))))
(* (pow x 4) (+ 1/4725 (+ (/ 1/45 (pow x 4)) (* 2/945 (/ 1 (pow x 2))))))
(* 1/4725 (pow x 2))
(* (pow x 2) (+ 1/4725 (* 2/945 (/ 1 (pow x 2)))))
(* (pow x 2) (+ 1/4725 (* 2/945 (/ 1 (pow x 2)))))
(* (pow x 2) (+ 1/4725 (* 2/945 (/ 1 (pow x 2)))))
Outputs
(* 1/3 x)
(*.f64 x #s(literal 1/3 binary64))
(* x (+ 1/3 (* 1/45 (pow x 2))))
(*.f64 (fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64)) x)
(* x (+ 1/3 (* (pow x 2) (+ 1/45 (* 2/945 (pow x 2))))))
(*.f64 (fma.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x)
(* x (+ 1/3 (* (pow x 2) (+ 1/45 (* (pow x 2) (+ 2/945 (* 1/4725 (pow x 2))))))))
(*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x)
(* 1/3 x)
(*.f64 x #s(literal 1/3 binary64))
(* 1/3 x)
(*.f64 x #s(literal 1/3 binary64))
(* 1/3 x)
(*.f64 x #s(literal 1/3 binary64))
(* 1/3 x)
(*.f64 x #s(literal 1/3 binary64))
(* 1/3 x)
(*.f64 x #s(literal 1/3 binary64))
(* x (+ 1/3 (* 1/45 (pow x 2))))
(*.f64 (fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64)) x)
(* x (+ 1/3 (* (pow x 2) (+ 1/45 (* 2/945 (pow x 2))))))
(*.f64 (fma.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x)
(* x (+ 1/3 (* (pow x 2) (+ 1/45 (* (pow x 2) (+ 2/945 (* 1/4725 (pow x 2))))))))
(*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x)
(* 1/3 x)
(*.f64 x #s(literal 1/3 binary64))
(* x (+ 1/3 (* 1/45 (pow x 2))))
(*.f64 (fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64)) x)
(* x (+ 1/3 (* 1/45 (pow x 2))))
(*.f64 (fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64)) x)
(* x (+ 1/3 (* 1/45 (pow x 2))))
(*.f64 (fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64)) x)
1/3
#s(literal 1/3 binary64)
(+ 1/3 (* 1/45 (pow x 2)))
(fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64))
(+ 1/3 (* 1/45 (pow x 2)))
(fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64))
(+ 1/3 (* 1/45 (pow x 2)))
(fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 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/3 x)
(*.f64 x #s(literal 1/3 binary64))
(* x (+ 1/3 (* 1/45 (pow x 2))))
(*.f64 (fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64)) x)
(* x (+ 1/3 (* (pow x 2) (+ 1/45 (* 2/945 (pow x 2))))))
(*.f64 (fma.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x)
(* x (+ 1/3 (* (pow x 2) (+ 1/45 (* (pow x 2) (+ 2/945 (* 1/4725 (pow x 2))))))))
(*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x)
(* 1/3 x)
(*.f64 x #s(literal 1/3 binary64))
(* x (+ 1/3 (* 1/45 (pow x 2))))
(*.f64 (fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64)) x)
(* x (+ 1/3 (* (pow x 2) (+ 1/45 (* 2/945 (pow x 2))))))
(*.f64 (fma.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x)
(* x (+ 1/3 (* (pow x 2) (+ 1/45 (* 2/945 (pow x 2))))))
(*.f64 (fma.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x)
1/3
#s(literal 1/3 binary64)
(+ 1/3 (* 1/45 (pow x 2)))
(fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64))
(+ 1/3 (* (pow x 2) (+ 1/45 (* 2/945 (pow x 2)))))
(fma.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64))
(+ 1/3 (* (pow x 2) (+ 1/45 (* 2/945 (pow x 2)))))
(fma.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64))
1/45
#s(literal 1/45 binary64)
(+ 1/45 (* 2/945 (pow x 2)))
(fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64))
(+ 1/45 (* 2/945 (pow x 2)))
(fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64))
(+ 1/45 (* 2/945 (pow x 2)))
(fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64))
(* 1/3 x)
(*.f64 x #s(literal 1/3 binary64))
(* x (+ 1/3 (* 1/45 (pow x 2))))
(*.f64 (fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64)) x)
(* x (+ 1/3 (* (pow x 2) (+ 1/45 (* 2/945 (pow x 2))))))
(*.f64 (fma.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x)
(* x (+ 1/3 (* (pow x 2) (+ 1/45 (* (pow x 2) (+ 2/945 (* 1/4725 (pow x 2))))))))
(*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x)
(* 1/3 x)
(*.f64 x #s(literal 1/3 binary64))
(* x (+ 1/3 (* 1/45 (pow x 2))))
(*.f64 (fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64)) x)
(* x (+ 1/3 (* (pow x 2) (+ 1/45 (* 2/945 (pow x 2))))))
(*.f64 (fma.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x)
(* x (+ 1/3 (* (pow x 2) (+ 1/45 (* (pow x 2) (+ 2/945 (* 1/4725 (pow x 2))))))))
(*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x)
1/3
#s(literal 1/3 binary64)
(+ 1/3 (* 1/45 (pow x 2)))
(fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64))
(+ 1/3 (* (pow x 2) (+ 1/45 (* 2/945 (pow x 2)))))
(fma.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64))
(+ 1/3 (* (pow x 2) (+ 1/45 (* (pow x 2) (+ 2/945 (* 1/4725 (pow x 2)))))))
(fma.f64 (fma.f64 (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64))
1/45
#s(literal 1/45 binary64)
(+ 1/45 (* 2/945 (pow x 2)))
(fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64))
(+ 1/45 (* (pow x 2) (+ 2/945 (* 1/4725 (pow x 2)))))
(fma.f64 (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (*.f64 x x) #s(literal 1/45 binary64))
(+ 1/45 (* (pow x 2) (+ 2/945 (* 1/4725 (pow x 2)))))
(fma.f64 (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (*.f64 x x) #s(literal 1/45 binary64))
2/945
#s(literal 2/945 binary64)
(+ 2/945 (* 1/4725 (pow x 2)))
(fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64))
(+ 2/945 (* 1/4725 (pow x 2)))
(fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64))
(+ 2/945 (* 1/4725 (pow x 2)))
(fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64))
(* -1 (/ (cos x) (sin x)))
(/.f64 (neg.f64 (cos.f64 x)) (sin.f64 x))
(- (/ 1 x) (/ (cos x) (sin x)))
(-.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 (cos.f64 x) (sin.f64 x)))
(- (/ 1 x) (/ (cos x) (sin x)))
(-.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 (cos.f64 x) (sin.f64 x)))
(- (/ 1 x) (/ (cos x) (sin x)))
(-.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 (cos.f64 x) (sin.f64 x)))
(* 1/3 x)
(*.f64 x #s(literal 1/3 binary64))
(* 1/3 x)
(*.f64 x #s(literal 1/3 binary64))
(* 1/3 x)
(*.f64 x #s(literal 1/3 binary64))
(* 1/3 x)
(*.f64 x #s(literal 1/3 binary64))
(* -1 (/ (cos x) (sin x)))
(/.f64 (neg.f64 (cos.f64 x)) (sin.f64 x))
(- (/ 1 x) (/ (cos x) (sin x)))
(-.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 (cos.f64 x) (sin.f64 x)))
(- (/ 1 x) (/ (cos x) (sin x)))
(-.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 (cos.f64 x) (sin.f64 x)))
(- (/ 1 x) (/ (cos x) (sin x)))
(-.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 (cos.f64 x) (sin.f64 x)))
(* 1/45 (pow x 3))
(*.f64 (pow.f64 x #s(literal 3 binary64)) #s(literal 1/45 binary64))
(* (pow x 3) (+ 1/45 (* 1/3 (/ 1 (pow x 2)))))
(*.f64 (fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64)) x)
(* (pow x 3) (+ 1/45 (* 1/3 (/ 1 (pow x 2)))))
(*.f64 (fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64)) x)
(* (pow x 3) (+ 1/45 (* 1/3 (/ 1 (pow x 2)))))
(*.f64 (fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64)) x)
(* 1/45 (pow x 2))
(*.f64 (*.f64 x x) #s(literal 1/45 binary64))
(* (pow x 2) (+ 1/45 (* 1/3 (/ 1 (pow x 2)))))
(fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64))
(* (pow x 2) (+ 1/45 (* 1/3 (/ 1 (pow x 2)))))
(fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64))
(* (pow x 2) (+ 1/45 (* 1/3 (/ 1 (pow x 2)))))
(fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 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) (sin x)))
(/.f64 (neg.f64 (cos.f64 x)) (sin.f64 x))
(- (/ 1 x) (/ (cos x) (sin x)))
(-.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 (cos.f64 x) (sin.f64 x)))
(- (/ 1 x) (/ (cos x) (sin x)))
(-.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 (cos.f64 x) (sin.f64 x)))
(- (/ 1 x) (/ (cos x) (sin x)))
(-.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 (cos.f64 x) (sin.f64 x)))
(* 2/945 (pow x 5))
(*.f64 (pow.f64 x #s(literal 5 binary64)) #s(literal 2/945 binary64))
(* (pow x 5) (+ 2/945 (* 1/45 (/ 1 (pow x 2)))))
(*.f64 (pow.f64 x #s(literal 3 binary64)) (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)))
(* (pow x 5) (+ 2/945 (+ (/ 1/3 (pow x 4)) (* 1/45 (/ 1 (pow x 2))))))
(*.f64 (fma.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x)
(* (pow x 5) (+ 2/945 (+ (/ 1/3 (pow x 4)) (* 1/45 (/ 1 (pow x 2))))))
(*.f64 (fma.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x)
(* 2/945 (pow x 4))
(*.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal 2/945 binary64))
(* (pow x 4) (+ 2/945 (* 1/45 (/ 1 (pow x 2)))))
(*.f64 (*.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) x) x)
(* (pow x 4) (+ 2/945 (+ (/ 1/3 (pow x 4)) (* 1/45 (/ 1 (pow x 2))))))
(fma.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64))
(* (pow x 4) (+ 2/945 (+ (/ 1/3 (pow x 4)) (* 1/45 (/ 1 (pow x 2))))))
(fma.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64))
(* 2/945 (pow x 2))
(*.f64 #s(literal 2/945 binary64) (*.f64 x x))
(* (pow x 2) (+ 2/945 (* 1/45 (/ 1 (pow x 2)))))
(fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64))
(* (pow x 2) (+ 2/945 (* 1/45 (/ 1 (pow x 2)))))
(fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64))
(* (pow x 2) (+ 2/945 (* 1/45 (/ 1 (pow x 2)))))
(fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64))
(* -1 (/ (cos x) (sin x)))
(/.f64 (neg.f64 (cos.f64 x)) (sin.f64 x))
(- (/ 1 x) (/ (cos x) (sin x)))
(-.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 (cos.f64 x) (sin.f64 x)))
(- (/ 1 x) (/ (cos x) (sin x)))
(-.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 (cos.f64 x) (sin.f64 x)))
(- (/ 1 x) (/ (cos x) (sin x)))
(-.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 (cos.f64 x) (sin.f64 x)))
(* 1/4725 (pow x 7))
(*.f64 (pow.f64 x #s(literal 7 binary64)) #s(literal 1/4725 binary64))
(* (pow x 7) (+ 1/4725 (* 2/945 (/ 1 (pow x 2)))))
(*.f64 (-.f64 (/.f64 #s(literal 2/945 binary64) (*.f64 x x)) #s(literal -1/4725 binary64)) (pow.f64 x #s(literal 7 binary64)))
(* (pow x 7) (+ 1/4725 (+ (/ 1/45 (pow x 4)) (* 2/945 (/ 1 (pow x 2))))))
(*.f64 (-.f64 (+.f64 (/.f64 #s(literal 1/45 binary64) (pow.f64 x #s(literal 4 binary64))) #s(literal 1/4725 binary64)) (/.f64 #s(literal -2/945 binary64) (*.f64 x x))) (pow.f64 x #s(literal 7 binary64)))
(* (pow x 7) (+ 1/4725 (+ (/ 1/45 (pow x 4)) (+ (* 2/945 (/ 1 (pow x 2))) (* 1/3 (/ 1 (pow x 6)))))))
(*.f64 (+.f64 (+.f64 (/.f64 #s(literal 1/45 binary64) (pow.f64 x #s(literal 4 binary64))) #s(literal 1/4725 binary64)) (-.f64 (/.f64 #s(literal 1/3 binary64) (pow.f64 x #s(literal 6 binary64))) (/.f64 #s(literal -2/945 binary64) (*.f64 x x)))) (pow.f64 x #s(literal 7 binary64)))
(* 1/4725 (pow x 6))
(*.f64 (pow.f64 x #s(literal 6 binary64)) #s(literal 1/4725 binary64))
(* (pow x 6) (+ 1/4725 (* 2/945 (/ 1 (pow x 2)))))
(*.f64 (pow.f64 x #s(literal 4 binary64)) (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)))
(* (pow x 6) (+ 1/4725 (+ (/ 1/45 (pow x 4)) (* 2/945 (/ 1 (pow x 2))))))
(*.f64 (*.f64 (fma.f64 (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (*.f64 x x) #s(literal 1/45 binary64)) x) x)
(* (pow x 6) (+ 1/4725 (+ (/ 1/45 (pow x 4)) (+ (* 2/945 (/ 1 (pow x 2))) (* 1/3 (/ 1 (pow x 6)))))))
(fma.f64 (fma.f64 (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64))
(* 1/4725 (pow x 4))
(*.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal 1/4725 binary64))
(* (pow x 4) (+ 1/4725 (* 2/945 (/ 1 (pow x 2)))))
(*.f64 (*.f64 (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) x) x)
(* (pow x 4) (+ 1/4725 (+ (/ 1/45 (pow x 4)) (* 2/945 (/ 1 (pow x 2))))))
(fma.f64 (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (*.f64 x x) #s(literal 1/45 binary64))
(* (pow x 4) (+ 1/4725 (+ (/ 1/45 (pow x 4)) (* 2/945 (/ 1 (pow x 2))))))
(fma.f64 (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (*.f64 x x) #s(literal 1/45 binary64))
(* 1/4725 (pow x 2))
(*.f64 #s(literal 1/4725 binary64) (*.f64 x x))
(* (pow x 2) (+ 1/4725 (* 2/945 (/ 1 (pow x 2)))))
(fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64))
(* (pow x 2) (+ 1/4725 (* 2/945 (/ 1 (pow x 2)))))
(fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64))
(* (pow x 2) (+ 1/4725 (* 2/945 (/ 1 (pow x 2)))))
(fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64))
(* -1 (/ (cos x) (sin x)))
(/.f64 (neg.f64 (cos.f64 x)) (sin.f64 x))
(- (/ 1 x) (/ (cos x) (sin x)))
(-.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 (cos.f64 x) (sin.f64 x)))
(- (/ 1 x) (/ (cos x) (sin x)))
(-.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 (cos.f64 x) (sin.f64 x)))
(- (/ 1 x) (/ (cos x) (sin x)))
(-.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 (cos.f64 x) (sin.f64 x)))
(* 1/3 x)
(*.f64 x #s(literal 1/3 binary64))
(* 1/3 x)
(*.f64 x #s(literal 1/3 binary64))
(* 1/3 x)
(*.f64 x #s(literal 1/3 binary64))
(* 1/3 x)
(*.f64 x #s(literal 1/3 binary64))
(* -1 (/ (cos x) (sin x)))
(/.f64 (neg.f64 (cos.f64 x)) (sin.f64 x))
(- (/ 1 x) (/ (cos x) (sin x)))
(-.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 (cos.f64 x) (sin.f64 x)))
(- (/ 1 x) (/ (cos x) (sin x)))
(-.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 (cos.f64 x) (sin.f64 x)))
(- (/ 1 x) (/ (cos x) (sin x)))
(-.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 (cos.f64 x) (sin.f64 x)))
(* 1/45 (pow x 3))
(*.f64 (pow.f64 x #s(literal 3 binary64)) #s(literal 1/45 binary64))
(* (pow x 3) (+ 1/45 (* 1/3 (/ 1 (pow x 2)))))
(*.f64 (fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64)) x)
(* (pow x 3) (+ 1/45 (* 1/3 (/ 1 (pow x 2)))))
(*.f64 (fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64)) x)
(* (pow x 3) (+ 1/45 (* 1/3 (/ 1 (pow x 2)))))
(*.f64 (fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64)) x)
(* 1/45 (pow x 2))
(*.f64 (*.f64 x x) #s(literal 1/45 binary64))
(* (pow x 2) (+ 1/45 (* 1/3 (/ 1 (pow x 2)))))
(fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64))
(* (pow x 2) (+ 1/45 (* 1/3 (/ 1 (pow x 2)))))
(fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64))
(* (pow x 2) (+ 1/45 (* 1/3 (/ 1 (pow x 2)))))
(fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 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) (sin x)))
(/.f64 (neg.f64 (cos.f64 x)) (sin.f64 x))
(- (/ 1 x) (/ (cos x) (sin x)))
(-.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 (cos.f64 x) (sin.f64 x)))
(- (/ 1 x) (/ (cos x) (sin x)))
(-.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 (cos.f64 x) (sin.f64 x)))
(- (/ 1 x) (/ (cos x) (sin x)))
(-.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 (cos.f64 x) (sin.f64 x)))
(* 2/945 (pow x 5))
(*.f64 (pow.f64 x #s(literal 5 binary64)) #s(literal 2/945 binary64))
(* (pow x 5) (+ 2/945 (* 1/45 (/ 1 (pow x 2)))))
(*.f64 (pow.f64 x #s(literal 3 binary64)) (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)))
(* -1 (* (pow x 5) (- (* -1 (/ (+ 1/45 (* 1/3 (/ 1 (pow x 2)))) (pow x 2))) 2/945)))
(*.f64 (fma.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x)
(* -1 (* (pow x 5) (- (* -1 (/ (+ 1/45 (* 1/3 (/ 1 (pow x 2)))) (pow x 2))) 2/945)))
(*.f64 (fma.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x)
(* 2/945 (pow x 4))
(*.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal 2/945 binary64))
(* (pow x 4) (+ 2/945 (* 1/45 (/ 1 (pow x 2)))))
(*.f64 (*.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) x) x)
(* (pow x 4) (+ 2/945 (+ (/ 1/3 (pow x 4)) (* 1/45 (/ 1 (pow x 2))))))
(fma.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64))
(* (pow x 4) (+ 2/945 (+ (/ 1/3 (pow x 4)) (* 1/45 (/ 1 (pow x 2))))))
(fma.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64))
(* 2/945 (pow x 2))
(*.f64 #s(literal 2/945 binary64) (*.f64 x x))
(* (pow x 2) (+ 2/945 (* 1/45 (/ 1 (pow x 2)))))
(fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64))
(* (pow x 2) (+ 2/945 (* 1/45 (/ 1 (pow x 2)))))
(fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64))
(* (pow x 2) (+ 2/945 (* 1/45 (/ 1 (pow x 2)))))
(fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64))
(* -1 (/ (cos x) (sin x)))
(/.f64 (neg.f64 (cos.f64 x)) (sin.f64 x))
(- (/ 1 x) (/ (cos x) (sin x)))
(-.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 (cos.f64 x) (sin.f64 x)))
(- (/ 1 x) (/ (cos x) (sin x)))
(-.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 (cos.f64 x) (sin.f64 x)))
(- (/ 1 x) (/ (cos x) (sin x)))
(-.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 (cos.f64 x) (sin.f64 x)))
(* 1/4725 (pow x 7))
(*.f64 (pow.f64 x #s(literal 7 binary64)) #s(literal 1/4725 binary64))
(* (pow x 7) (+ 1/4725 (* 2/945 (/ 1 (pow x 2)))))
(*.f64 (-.f64 (/.f64 #s(literal 2/945 binary64) (*.f64 x x)) #s(literal -1/4725 binary64)) (pow.f64 x #s(literal 7 binary64)))
(* -1 (* (pow x 7) (- (* -1 (/ (+ 2/945 (* 1/45 (/ 1 (pow x 2)))) (pow x 2))) 1/4725)))
(*.f64 (-.f64 (+.f64 (/.f64 #s(literal 1/45 binary64) (pow.f64 x #s(literal 4 binary64))) #s(literal 1/4725 binary64)) (/.f64 #s(literal -2/945 binary64) (*.f64 x x))) (pow.f64 x #s(literal 7 binary64)))
(* -1 (* (pow x 7) (- (* -1 (/ (+ 1/45 (* 1/3 (/ 1 (pow x 2)))) (pow x 4))) (+ 1/4725 (* 2/945 (/ 1 (pow x 2)))))))
(*.f64 (-.f64 (/.f64 (+.f64 (/.f64 #s(literal 1/3 binary64) (*.f64 x x)) #s(literal 1/45 binary64)) (pow.f64 x #s(literal 4 binary64))) (-.f64 #s(literal -1/4725 binary64) (/.f64 #s(literal 2/945 binary64) (*.f64 x x)))) (pow.f64 x #s(literal 7 binary64)))
(* 1/4725 (pow x 6))
(*.f64 (pow.f64 x #s(literal 6 binary64)) #s(literal 1/4725 binary64))
(* (pow x 6) (+ 1/4725 (* 2/945 (/ 1 (pow x 2)))))
(*.f64 (pow.f64 x #s(literal 4 binary64)) (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)))
(* (pow x 6) (+ 1/4725 (+ (/ 1/45 (pow x 4)) (* 2/945 (/ 1 (pow x 2))))))
(*.f64 (*.f64 (fma.f64 (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (*.f64 x x) #s(literal 1/45 binary64)) x) x)
(* (pow x 6) (+ 1/4725 (+ (/ 1/45 (pow x 4)) (+ (* 2/945 (/ 1 (pow x 2))) (* 1/3 (/ 1 (pow x 6)))))))
(fma.f64 (fma.f64 (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64))
(* 1/4725 (pow x 4))
(*.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal 1/4725 binary64))
(* (pow x 4) (+ 1/4725 (* 2/945 (/ 1 (pow x 2)))))
(*.f64 (*.f64 (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) x) x)
(* (pow x 4) (+ 1/4725 (+ (/ 1/45 (pow x 4)) (* 2/945 (/ 1 (pow x 2))))))
(fma.f64 (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (*.f64 x x) #s(literal 1/45 binary64))
(* (pow x 4) (+ 1/4725 (+ (/ 1/45 (pow x 4)) (* 2/945 (/ 1 (pow x 2))))))
(fma.f64 (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (*.f64 x x) #s(literal 1/45 binary64))
(* 1/4725 (pow x 2))
(*.f64 #s(literal 1/4725 binary64) (*.f64 x x))
(* (pow x 2) (+ 1/4725 (* 2/945 (/ 1 (pow x 2)))))
(fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64))
(* (pow x 2) (+ 1/4725 (* 2/945 (/ 1 (pow x 2)))))
(fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64))
(* (pow x 2) (+ 1/4725 (* 2/945 (/ 1 (pow x 2)))))
(fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64))

rewrite165.0ms (1%)

Memory
2.7MiB live, 238.5MiB allocated
Rules
5 192×lower-fma.f32
5 180×lower-fma.f64
4 354×lower-/.f64
4 354×lower-/.f32
3 746×lower-*.f32
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
025179
042179
1183179
21397179
08314179
Stop Event
iter limit
node limit
iter limit
Counts
15 → 358
Calls
Call 1
Inputs
#s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 x #s(literal 1/3 binary64)))
(*.f64 x #s(literal 1/3 binary64))
#s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 (fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64)) x))
(*.f64 (fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64)) x)
(fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64))
(*.f64 x x)
#s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 (fma.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x))
(*.f64 (fma.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x)
(fma.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64))
(fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64))
#s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x))
(*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x)
(fma.f64 (fma.f64 (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64))
(fma.f64 (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (*.f64 x x) #s(literal 1/45 binary64))
(fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 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>

eval86.0ms (0.5%)

Memory
-5.2MiB live, 154.5MiB allocated
Compiler

Compiled 16 209 to 1 932 computations (88.1% saved)

prune26.0ms (0.2%)

Memory
-27.4MiB live, 53.9MiB allocated
Pruning

6 alts after pruning (2 fresh and 4 done)

PrunedKeptTotal
New6412643
Fresh000
Picked044
Done000
Total6416647
Accuracy
100.0%
Counts
647 → 6
Alt Table
Click to see full alt table
StatusAccuracyProgram
99.4%
#s(approx (- (/ 1 x) (/ 1 (tan x))) (fma.f64 (*.f64 (*.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) x) x) x (*.f64 #s(literal 1/3 binary64) x)))
99.9%
#s(approx (- (/ 1 x) (/ 1 (tan x))) (/.f64 x (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal 1/45 binary64) (*.f64 x x) #s(literal 1/3 binary64)))))
99.4%
#s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x))
99.4%
#s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 (fma.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x))
99.3%
#s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 (fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64)) x))
98.7%
#s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 x #s(literal 1/3 binary64)))
Compiler

Compiled 73 to 51 computations (30.1% saved)

simplify116.0ms (0.7%)

Memory
26.5MiB live, 62.2MiB allocated
Algorithm
egg-herbie
Localize:

Found 8 expressions of interest:

NewMetricScoreProgram
cost-diff0
(*.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) x)
cost-diff0
(*.f64 (*.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) x) x)
cost-diff0
#s(approx (- (/ 1 x) (/ 1 (tan x))) (fma.f64 (*.f64 (*.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) x) x) x (*.f64 #s(literal 1/3 binary64) x)))
cost-diff320
(fma.f64 (*.f64 (*.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) x) x) x (*.f64 #s(literal 1/3 binary64) x))
cost-diff0
(fma.f64 #s(literal 1/45 binary64) (*.f64 x x) #s(literal 1/3 binary64))
cost-diff0
(/.f64 #s(literal 1 binary64) (fma.f64 #s(literal 1/45 binary64) (*.f64 x x) #s(literal 1/3 binary64)))
cost-diff0
#s(approx (- (/ 1 x) (/ 1 (tan x))) (/.f64 x (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal 1/45 binary64) (*.f64 x x) #s(literal 1/3 binary64)))))
cost-diff1088
(/.f64 x (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal 1/45 binary64) (*.f64 x x) #s(literal 1/3 binary64))))
Rules
2 384×lower-fma.f32
2 378×lower-fma.f64
1 040×lower-*.f32
1 032×lower-*.f64
640×associate-*r*
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
020123
032121
155117
296117
3171117
4280117
5326117
6366117
7391117
8687117
92236117
102972117
113128117
123131117
133134117
143135117
153139117
163139117
173140117
03140115
Stop Event
iter limit
saturated
iter limit
Calls
Call 1
Inputs
#s(approx (- (/ 1 x) (/ 1 (tan x))) (/.f64 x (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal 1/45 binary64) (*.f64 x x) #s(literal 1/3 binary64)))))
(/.f64 x (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal 1/45 binary64) (*.f64 x x) #s(literal 1/3 binary64))))
x
(/.f64 #s(literal 1 binary64) (fma.f64 #s(literal 1/45 binary64) (*.f64 x x) #s(literal 1/3 binary64)))
#s(literal 1 binary64)
(fma.f64 #s(literal 1/45 binary64) (*.f64 x x) #s(literal 1/3 binary64))
#s(literal 1/45 binary64)
(*.f64 x x)
#s(literal 1/3 binary64)
#s(approx (- (/ 1 x) (/ 1 (tan x))) (fma.f64 (*.f64 (*.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) x) x) x (*.f64 #s(literal 1/3 binary64) x)))
(fma.f64 (*.f64 (*.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) x) x) x (*.f64 #s(literal 1/3 binary64) x))
(*.f64 (*.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) x) x)
(*.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) x)
(fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64))
#s(literal 2/945 binary64)
(*.f64 x x)
x
#s(literal 1/45 binary64)
(*.f64 #s(literal 1/3 binary64) x)
#s(literal 1/3 binary64)
Outputs
#s(approx (- (/ 1 x) (/ 1 (tan x))) (/.f64 x (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal 1/45 binary64) (*.f64 x x) #s(literal 1/3 binary64)))))
#s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 (fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64)) x))
(/.f64 x (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal 1/45 binary64) (*.f64 x x) #s(literal 1/3 binary64))))
(*.f64 (fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64)) x)
x
(/.f64 #s(literal 1 binary64) (fma.f64 #s(literal 1/45 binary64) (*.f64 x x) #s(literal 1/3 binary64)))
(/.f64 #s(literal 1 binary64) (fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64)))
#s(literal 1 binary64)
(fma.f64 #s(literal 1/45 binary64) (*.f64 x x) #s(literal 1/3 binary64))
(fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64))
#s(literal 1/45 binary64)
(*.f64 x x)
#s(literal 1/3 binary64)
#s(approx (- (/ 1 x) (/ 1 (tan x))) (fma.f64 (*.f64 (*.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) x) x) x (*.f64 #s(literal 1/3 binary64) x)))
#s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 (fma.f64 (*.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) x) x #s(literal 1/3 binary64)) x))
(fma.f64 (*.f64 (*.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) x) x) x (*.f64 #s(literal 1/3 binary64) x))
(*.f64 (fma.f64 (*.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) x) x #s(literal 1/3 binary64)) x)
(*.f64 (*.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) x) x)
(*.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) x)
(fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64))
#s(literal 2/945 binary64)
(*.f64 x x)
x
#s(literal 1/45 binary64)
(*.f64 #s(literal 1/3 binary64) x)
#s(literal 1/3 binary64)

localize365.0ms (2.3%)

Memory
16.3MiB live, 330.9MiB allocated
Localize:

Found 8 expressions of interest:

NewMetricScoreProgram
accuracy0.01953125
#s(approx (- (/ 1 x) (/ 1 (tan x))) (fma.f64 (*.f64 (*.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) x) x) x (*.f64 #s(literal 1/3 binary64) x)))
accuracy0.1484375
(*.f64 (*.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) x) x)
accuracy0.23828125
(*.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) x)
accuracy0.36328125
(*.f64 #s(literal 1/3 binary64) x)
accuracy0.00390625
(fma.f64 #s(literal 1/45 binary64) (*.f64 x x) #s(literal 1/3 binary64))
accuracy0.0078125
(/.f64 x (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal 1/45 binary64) (*.f64 x x) #s(literal 1/3 binary64))))
accuracy0.01171875
(/.f64 #s(literal 1 binary64) (fma.f64 #s(literal 1/45 binary64) (*.f64 x x) #s(literal 1/3 binary64)))
accuracy0.08018926641797663
#s(approx (- (/ 1 x) (/ 1 (tan x))) (/.f64 x (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal 1/45 binary64) (*.f64 x x) #s(literal 1/3 binary64)))))
Samples
282.0ms125×2valid
65.0ms127×1valid
1.0ms0valid
Compiler

Compiled 106 to 23 computations (78.3% saved)

Precisions
Click to see histograms. Total time spent on operations: 320.0ms
ival-tan: 201.0ms (62.9% of total)
ival-div: 54.0ms (16.9% of total)
ival-mult: 21.0ms (6.6% of total)
const: 16.0ms (5% of total)
adjust: 14.0ms (4.4% of total)
ival-add: 7.0ms (2.2% of total)
ival-sub: 6.0ms (1.9% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)

series11.0ms (0.1%)

Memory
-26.1MiB live, 11.4MiB allocated
Counts
9 → 108
Calls
Call 1
Inputs
#s(alt (/.f64 x (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal 1/45 binary64) (*.f64 x x) #s(literal 1/3 binary64)))) (patch (/.f64 x (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal 1/45 binary64) (*.f64 x x) #s(literal 1/3 binary64)))) #<representation binary64>) () ())
#s(alt #s(approx (- (/ 1 x) (/ 1 (tan x))) (/.f64 x (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal 1/45 binary64) (*.f64 x x) #s(literal 1/3 binary64))))) (patch #s(approx (- (/ 1 x) (/ 1 (tan x))) (/.f64 x (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal 1/45 binary64) (*.f64 x x) #s(literal 1/3 binary64))))) #<representation binary64>) () ())
#s(alt (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal 1/45 binary64) (*.f64 x x) #s(literal 1/3 binary64))) (patch (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal 1/45 binary64) (*.f64 x x) #s(literal 1/3 binary64))) #<representation binary64>) () ())
#s(alt (fma.f64 #s(literal 1/45 binary64) (*.f64 x x) #s(literal 1/3 binary64)) (patch (fma.f64 #s(literal 1/45 binary64) (*.f64 x x) #s(literal 1/3 binary64)) #<representation binary64>) () ())
#s(alt (fma.f64 (*.f64 (*.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) x) x) x (*.f64 #s(literal 1/3 binary64) x)) (patch (fma.f64 (*.f64 (*.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) x) x) x (*.f64 #s(literal 1/3 binary64) x)) #<representation binary64>) () ())
#s(alt #s(approx (- (/ 1 x) (/ 1 (tan x))) (fma.f64 (*.f64 (*.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) x) x) x (*.f64 #s(literal 1/3 binary64) x))) (patch #s(approx (- (/ 1 x) (/ 1 (tan x))) (fma.f64 (*.f64 (*.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) x) x) x (*.f64 #s(literal 1/3 binary64) x))) #<representation binary64>) () ())
#s(alt (*.f64 (*.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) x) x) (patch (*.f64 (*.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) x) x) #<representation binary64>) () ())
#s(alt (*.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) x) (patch (*.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) x) #<representation binary64>) () ())
#s(alt (*.f64 #s(literal 1/3 binary64) x) (patch (*.f64 #s(literal 1/3 binary64) x) #<representation binary64>) () ())
Outputs
#s(alt (* 1/3 x) (taylor 0 x) (#s(alt (/.f64 x (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal 1/45 binary64) (*.f64 x x) #s(literal 1/3 binary64)))) (patch (/.f64 x (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal 1/45 binary64) (*.f64 x x) #s(literal 1/3 binary64)))) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1/3 (* 1/45 (pow x 2)))) (taylor 0 x) (#s(alt (/.f64 x (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal 1/45 binary64) (*.f64 x x) #s(literal 1/3 binary64)))) (patch (/.f64 x (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal 1/45 binary64) (*.f64 x x) #s(literal 1/3 binary64)))) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1/3 (* 1/45 (pow x 2)))) (taylor 0 x) (#s(alt (/.f64 x (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal 1/45 binary64) (*.f64 x x) #s(literal 1/3 binary64)))) (patch (/.f64 x (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal 1/45 binary64) (*.f64 x x) #s(literal 1/3 binary64)))) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1/3 (* 1/45 (pow x 2)))) (taylor 0 x) (#s(alt (/.f64 x (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal 1/45 binary64) (*.f64 x x) #s(literal 1/3 binary64)))) (patch (/.f64 x (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal 1/45 binary64) (*.f64 x x) #s(literal 1/3 binary64)))) #<representation binary64>) () ())) ())
#s(alt (* 1/3 x) (taylor 0 x) (#s(alt #s(approx (- (/ 1 x) (/ 1 (tan x))) (/.f64 x (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal 1/45 binary64) (*.f64 x x) #s(literal 1/3 binary64))))) (patch #s(approx (- (/ 1 x) (/ 1 (tan x))) (/.f64 x (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal 1/45 binary64) (*.f64 x x) #s(literal 1/3 binary64))))) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1/3 (* 1/45 (pow x 2)))) (taylor 0 x) (#s(alt #s(approx (- (/ 1 x) (/ 1 (tan x))) (/.f64 x (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal 1/45 binary64) (*.f64 x x) #s(literal 1/3 binary64))))) (patch #s(approx (- (/ 1 x) (/ 1 (tan x))) (/.f64 x (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal 1/45 binary64) (*.f64 x x) #s(literal 1/3 binary64))))) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1/3 (* (pow x 2) (+ 1/45 (* 2/945 (pow x 2)))))) (taylor 0 x) (#s(alt #s(approx (- (/ 1 x) (/ 1 (tan x))) (/.f64 x (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal 1/45 binary64) (*.f64 x x) #s(literal 1/3 binary64))))) (patch #s(approx (- (/ 1 x) (/ 1 (tan x))) (/.f64 x (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal 1/45 binary64) (*.f64 x x) #s(literal 1/3 binary64))))) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1/3 (* (pow x 2) (+ 1/45 (* (pow x 2) (+ 2/945 (* 1/4725 (pow x 2)))))))) (taylor 0 x) (#s(alt #s(approx (- (/ 1 x) (/ 1 (tan x))) (/.f64 x (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal 1/45 binary64) (*.f64 x x) #s(literal 1/3 binary64))))) (patch #s(approx (- (/ 1 x) (/ 1 (tan x))) (/.f64 x (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal 1/45 binary64) (*.f64 x x) #s(literal 1/3 binary64))))) #<representation binary64>) () ())) ())
#s(alt 3 (taylor 0 x) (#s(alt (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal 1/45 binary64) (*.f64 x x) #s(literal 1/3 binary64))) (patch (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal 1/45 binary64) (*.f64 x x) #s(literal 1/3 binary64))) #<representation binary64>) () ())) ())
#s(alt (+ 3 (* -1/5 (pow x 2))) (taylor 0 x) (#s(alt (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal 1/45 binary64) (*.f64 x x) #s(literal 1/3 binary64))) (patch (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal 1/45 binary64) (*.f64 x x) #s(literal 1/3 binary64))) #<representation binary64>) () ())) ())
#s(alt (+ 3 (* (pow x 2) (- (* 1/75 (pow x 2)) 1/5))) (taylor 0 x) (#s(alt (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal 1/45 binary64) (*.f64 x x) #s(literal 1/3 binary64))) (patch (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal 1/45 binary64) (*.f64 x x) #s(literal 1/3 binary64))) #<representation binary64>) () ())) ())
#s(alt (+ 3 (* (pow x 2) (- (* (pow x 2) (+ 1/75 (* -1/1125 (pow x 2)))) 1/5))) (taylor 0 x) (#s(alt (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal 1/45 binary64) (*.f64 x x) #s(literal 1/3 binary64))) (patch (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal 1/45 binary64) (*.f64 x x) #s(literal 1/3 binary64))) #<representation binary64>) () ())) ())
#s(alt 1/3 (taylor 0 x) (#s(alt (fma.f64 #s(literal 1/45 binary64) (*.f64 x x) #s(literal 1/3 binary64)) (patch (fma.f64 #s(literal 1/45 binary64) (*.f64 x x) #s(literal 1/3 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 1/3 (* 1/45 (pow x 2))) (taylor 0 x) (#s(alt (fma.f64 #s(literal 1/45 binary64) (*.f64 x x) #s(literal 1/3 binary64)) (patch (fma.f64 #s(literal 1/45 binary64) (*.f64 x x) #s(literal 1/3 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 1/3 (* 1/45 (pow x 2))) (taylor 0 x) (#s(alt (fma.f64 #s(literal 1/45 binary64) (*.f64 x x) #s(literal 1/3 binary64)) (patch (fma.f64 #s(literal 1/45 binary64) (*.f64 x x) #s(literal 1/3 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 1/3 (* 1/45 (pow x 2))) (taylor 0 x) (#s(alt (fma.f64 #s(literal 1/45 binary64) (*.f64 x x) #s(literal 1/3 binary64)) (patch (fma.f64 #s(literal 1/45 binary64) (*.f64 x x) #s(literal 1/3 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 1/3 x) (taylor 0 x) (#s(alt (fma.f64 (*.f64 (*.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) x) x) x (*.f64 #s(literal 1/3 binary64) x)) (patch (fma.f64 (*.f64 (*.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) x) x) x (*.f64 #s(literal 1/3 binary64) x)) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1/3 (* 1/45 (pow x 2)))) (taylor 0 x) (#s(alt (fma.f64 (*.f64 (*.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) x) x) x (*.f64 #s(literal 1/3 binary64) x)) (patch (fma.f64 (*.f64 (*.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) x) x) x (*.f64 #s(literal 1/3 binary64) x)) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1/3 (* (pow x 2) (+ 1/45 (* 2/945 (pow x 2)))))) (taylor 0 x) (#s(alt (fma.f64 (*.f64 (*.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) x) x) x (*.f64 #s(literal 1/3 binary64) x)) (patch (fma.f64 (*.f64 (*.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) x) x) x (*.f64 #s(literal 1/3 binary64) x)) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1/3 (* (pow x 2) (+ 1/45 (* 2/945 (pow x 2)))))) (taylor 0 x) (#s(alt (fma.f64 (*.f64 (*.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) x) x) x (*.f64 #s(literal 1/3 binary64) x)) (patch (fma.f64 (*.f64 (*.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) x) x) x (*.f64 #s(literal 1/3 binary64) x)) #<representation binary64>) () ())) ())
#s(alt (* 1/3 x) (taylor 0 x) (#s(alt #s(approx (- (/ 1 x) (/ 1 (tan x))) (fma.f64 (*.f64 (*.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) x) x) x (*.f64 #s(literal 1/3 binary64) x))) (patch #s(approx (- (/ 1 x) (/ 1 (tan x))) (fma.f64 (*.f64 (*.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) x) x) x (*.f64 #s(literal 1/3 binary64) x))) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1/3 (* 1/45 (pow x 2)))) (taylor 0 x) (#s(alt #s(approx (- (/ 1 x) (/ 1 (tan x))) (fma.f64 (*.f64 (*.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) x) x) x (*.f64 #s(literal 1/3 binary64) x))) (patch #s(approx (- (/ 1 x) (/ 1 (tan x))) (fma.f64 (*.f64 (*.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) x) x) x (*.f64 #s(literal 1/3 binary64) x))) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1/3 (* (pow x 2) (+ 1/45 (* 2/945 (pow x 2)))))) (taylor 0 x) (#s(alt #s(approx (- (/ 1 x) (/ 1 (tan x))) (fma.f64 (*.f64 (*.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) x) x) x (*.f64 #s(literal 1/3 binary64) x))) (patch #s(approx (- (/ 1 x) (/ 1 (tan x))) (fma.f64 (*.f64 (*.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) x) x) x (*.f64 #s(literal 1/3 binary64) x))) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1/3 (* (pow x 2) (+ 1/45 (* (pow x 2) (+ 2/945 (* 1/4725 (pow x 2)))))))) (taylor 0 x) (#s(alt #s(approx (- (/ 1 x) (/ 1 (tan x))) (fma.f64 (*.f64 (*.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) x) x) x (*.f64 #s(literal 1/3 binary64) x))) (patch #s(approx (- (/ 1 x) (/ 1 (tan x))) (fma.f64 (*.f64 (*.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) x) x) x (*.f64 #s(literal 1/3 binary64) x))) #<representation binary64>) () ())) ())
#s(alt (* 1/45 (pow x 2)) (taylor 0 x) (#s(alt (*.f64 (*.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) x) x) (patch (*.f64 (*.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) x) x) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (+ 1/45 (* 2/945 (pow x 2)))) (taylor 0 x) (#s(alt (*.f64 (*.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) x) x) (patch (*.f64 (*.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) x) x) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (+ 1/45 (* 2/945 (pow x 2)))) (taylor 0 x) (#s(alt (*.f64 (*.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) x) x) (patch (*.f64 (*.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) x) x) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (+ 1/45 (* 2/945 (pow x 2)))) (taylor 0 x) (#s(alt (*.f64 (*.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) x) x) (patch (*.f64 (*.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) x) x) #<representation binary64>) () ())) ())
#s(alt (* 1/45 x) (taylor 0 x) (#s(alt (*.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) x) (patch (*.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1/45 (* 2/945 (pow x 2)))) (taylor 0 x) (#s(alt (*.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) x) (patch (*.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1/45 (* 2/945 (pow x 2)))) (taylor 0 x) (#s(alt (*.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) x) (patch (*.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1/45 (* 2/945 (pow x 2)))) (taylor 0 x) (#s(alt (*.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) x) (patch (*.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* 1/3 x) (taylor 0 x) (#s(alt (*.f64 #s(literal 1/3 binary64) x) (patch (*.f64 #s(literal 1/3 binary64) x) #<representation binary64>) () ())) ())
#s(alt (* 1/3 x) (taylor 0 x) (#s(alt (*.f64 #s(literal 1/3 binary64) x) (patch (*.f64 #s(literal 1/3 binary64) x) #<representation binary64>) () ())) ())
#s(alt (* 1/3 x) (taylor 0 x) (#s(alt (*.f64 #s(literal 1/3 binary64) x) (patch (*.f64 #s(literal 1/3 binary64) x) #<representation binary64>) () ())) ())
#s(alt (* 1/3 x) (taylor 0 x) (#s(alt (*.f64 #s(literal 1/3 binary64) x) (patch (*.f64 #s(literal 1/3 binary64) x) #<representation binary64>) () ())) ())
#s(alt (* 1/45 (pow x 3)) (taylor inf x) (#s(alt (/.f64 x (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal 1/45 binary64) (*.f64 x x) #s(literal 1/3 binary64)))) (patch (/.f64 x (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal 1/45 binary64) (*.f64 x x) #s(literal 1/3 binary64)))) #<representation binary64>) () ())) ())
#s(alt (* (pow x 3) (+ 1/45 (* 1/3 (/ 1 (pow x 2))))) (taylor inf x) (#s(alt (/.f64 x (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal 1/45 binary64) (*.f64 x x) #s(literal 1/3 binary64)))) (patch (/.f64 x (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal 1/45 binary64) (*.f64 x x) #s(literal 1/3 binary64)))) #<representation binary64>) () ())) ())
#s(alt (* (pow x 3) (+ 1/45 (* 1/3 (/ 1 (pow x 2))))) (taylor inf x) (#s(alt (/.f64 x (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal 1/45 binary64) (*.f64 x x) #s(literal 1/3 binary64)))) (patch (/.f64 x (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal 1/45 binary64) (*.f64 x x) #s(literal 1/3 binary64)))) #<representation binary64>) () ())) ())
#s(alt (* (pow x 3) (+ 1/45 (* 1/3 (/ 1 (pow x 2))))) (taylor inf x) (#s(alt (/.f64 x (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal 1/45 binary64) (*.f64 x x) #s(literal 1/3 binary64)))) (patch (/.f64 x (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal 1/45 binary64) (*.f64 x x) #s(literal 1/3 binary64)))) #<representation binary64>) () ())) ())
#s(alt (* -1 (/ (cos x) (sin x))) (taylor inf x) (#s(alt #s(approx (- (/ 1 x) (/ 1 (tan x))) (/.f64 x (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal 1/45 binary64) (*.f64 x x) #s(literal 1/3 binary64))))) (patch #s(approx (- (/ 1 x) (/ 1 (tan x))) (/.f64 x (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal 1/45 binary64) (*.f64 x x) #s(literal 1/3 binary64))))) #<representation binary64>) () ())) ())
#s(alt (- (/ 1 x) (/ (cos x) (sin x))) (taylor inf x) (#s(alt #s(approx (- (/ 1 x) (/ 1 (tan x))) (/.f64 x (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal 1/45 binary64) (*.f64 x x) #s(literal 1/3 binary64))))) (patch #s(approx (- (/ 1 x) (/ 1 (tan x))) (/.f64 x (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal 1/45 binary64) (*.f64 x x) #s(literal 1/3 binary64))))) #<representation binary64>) () ())) ())
#s(alt (- (/ 1 x) (/ (cos x) (sin x))) (taylor inf x) (#s(alt #s(approx (- (/ 1 x) (/ 1 (tan x))) (/.f64 x (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal 1/45 binary64) (*.f64 x x) #s(literal 1/3 binary64))))) (patch #s(approx (- (/ 1 x) (/ 1 (tan x))) (/.f64 x (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal 1/45 binary64) (*.f64 x x) #s(literal 1/3 binary64))))) #<representation binary64>) () ())) ())
#s(alt (- (/ 1 x) (/ (cos x) (sin x))) (taylor inf x) (#s(alt #s(approx (- (/ 1 x) (/ 1 (tan x))) (/.f64 x (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal 1/45 binary64) (*.f64 x x) #s(literal 1/3 binary64))))) (patch #s(approx (- (/ 1 x) (/ 1 (tan x))) (/.f64 x (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal 1/45 binary64) (*.f64 x x) #s(literal 1/3 binary64))))) #<representation binary64>) () ())) ())
#s(alt (/ 45 (pow x 2)) (taylor inf x) (#s(alt (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal 1/45 binary64) (*.f64 x x) #s(literal 1/3 binary64))) (patch (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal 1/45 binary64) (*.f64 x x) #s(literal 1/3 binary64))) #<representation binary64>) () ())) ())
#s(alt (/ (- 45 (* 675 (/ 1 (pow x 2)))) (pow x 2)) (taylor inf x) (#s(alt (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal 1/45 binary64) (*.f64 x x) #s(literal 1/3 binary64))) (patch (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal 1/45 binary64) (*.f64 x x) #s(literal 1/3 binary64))) #<representation binary64>) () ())) ())
#s(alt (/ (- (+ 45 (/ 10125 (pow x 4))) (* 675 (/ 1 (pow x 2)))) (pow x 2)) (taylor inf x) (#s(alt (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal 1/45 binary64) (*.f64 x x) #s(literal 1/3 binary64))) (patch (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal 1/45 binary64) (*.f64 x x) #s(literal 1/3 binary64))) #<representation binary64>) () ())) ())
#s(alt (/ (- (+ 45 (/ 10125 (pow x 4))) (+ (* 675 (/ 1 (pow x 2))) (* 151875 (/ 1 (pow x 6))))) (pow x 2)) (taylor inf x) (#s(alt (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal 1/45 binary64) (*.f64 x x) #s(literal 1/3 binary64))) (patch (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal 1/45 binary64) (*.f64 x x) #s(literal 1/3 binary64))) #<representation binary64>) () ())) ())
#s(alt (* 1/45 (pow x 2)) (taylor inf x) (#s(alt (fma.f64 #s(literal 1/45 binary64) (*.f64 x x) #s(literal 1/3 binary64)) (patch (fma.f64 #s(literal 1/45 binary64) (*.f64 x x) #s(literal 1/3 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (+ 1/45 (* 1/3 (/ 1 (pow x 2))))) (taylor inf x) (#s(alt (fma.f64 #s(literal 1/45 binary64) (*.f64 x x) #s(literal 1/3 binary64)) (patch (fma.f64 #s(literal 1/45 binary64) (*.f64 x x) #s(literal 1/3 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (+ 1/45 (* 1/3 (/ 1 (pow x 2))))) (taylor inf x) (#s(alt (fma.f64 #s(literal 1/45 binary64) (*.f64 x x) #s(literal 1/3 binary64)) (patch (fma.f64 #s(literal 1/45 binary64) (*.f64 x x) #s(literal 1/3 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (+ 1/45 (* 1/3 (/ 1 (pow x 2))))) (taylor inf x) (#s(alt (fma.f64 #s(literal 1/45 binary64) (*.f64 x x) #s(literal 1/3 binary64)) (patch (fma.f64 #s(literal 1/45 binary64) (*.f64 x x) #s(literal 1/3 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 2/945 (pow x 5)) (taylor inf x) (#s(alt (fma.f64 (*.f64 (*.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) x) x) x (*.f64 #s(literal 1/3 binary64) x)) (patch (fma.f64 (*.f64 (*.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) x) x) x (*.f64 #s(literal 1/3 binary64) x)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 5) (+ 2/945 (* 1/45 (/ 1 (pow x 2))))) (taylor inf x) (#s(alt (fma.f64 (*.f64 (*.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) x) x) x (*.f64 #s(literal 1/3 binary64) x)) (patch (fma.f64 (*.f64 (*.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) x) x) x (*.f64 #s(literal 1/3 binary64) x)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 5) (+ 2/945 (+ (/ 1/3 (pow x 4)) (* 1/45 (/ 1 (pow x 2)))))) (taylor inf x) (#s(alt (fma.f64 (*.f64 (*.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) x) x) x (*.f64 #s(literal 1/3 binary64) x)) (patch (fma.f64 (*.f64 (*.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) x) x) x (*.f64 #s(literal 1/3 binary64) x)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 5) (+ 2/945 (+ (/ 1/3 (pow x 4)) (* 1/45 (/ 1 (pow x 2)))))) (taylor inf x) (#s(alt (fma.f64 (*.f64 (*.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) x) x) x (*.f64 #s(literal 1/3 binary64) x)) (patch (fma.f64 (*.f64 (*.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) x) x) x (*.f64 #s(literal 1/3 binary64) x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (/ (cos x) (sin x))) (taylor inf x) (#s(alt #s(approx (- (/ 1 x) (/ 1 (tan x))) (fma.f64 (*.f64 (*.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) x) x) x (*.f64 #s(literal 1/3 binary64) x))) (patch #s(approx (- (/ 1 x) (/ 1 (tan x))) (fma.f64 (*.f64 (*.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) x) x) x (*.f64 #s(literal 1/3 binary64) x))) #<representation binary64>) () ())) ())
#s(alt (- (/ 1 x) (/ (cos x) (sin x))) (taylor inf x) (#s(alt #s(approx (- (/ 1 x) (/ 1 (tan x))) (fma.f64 (*.f64 (*.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) x) x) x (*.f64 #s(literal 1/3 binary64) x))) (patch #s(approx (- (/ 1 x) (/ 1 (tan x))) (fma.f64 (*.f64 (*.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) x) x) x (*.f64 #s(literal 1/3 binary64) x))) #<representation binary64>) () ())) ())
#s(alt (- (/ 1 x) (/ (cos x) (sin x))) (taylor inf x) (#s(alt #s(approx (- (/ 1 x) (/ 1 (tan x))) (fma.f64 (*.f64 (*.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) x) x) x (*.f64 #s(literal 1/3 binary64) x))) (patch #s(approx (- (/ 1 x) (/ 1 (tan x))) (fma.f64 (*.f64 (*.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) x) x) x (*.f64 #s(literal 1/3 binary64) x))) #<representation binary64>) () ())) ())
#s(alt (- (/ 1 x) (/ (cos x) (sin x))) (taylor inf x) (#s(alt #s(approx (- (/ 1 x) (/ 1 (tan x))) (fma.f64 (*.f64 (*.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) x) x) x (*.f64 #s(literal 1/3 binary64) x))) (patch #s(approx (- (/ 1 x) (/ 1 (tan x))) (fma.f64 (*.f64 (*.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) x) x) x (*.f64 #s(literal 1/3 binary64) x))) #<representation binary64>) () ())) ())
#s(alt (* 2/945 (pow x 4)) (taylor inf x) (#s(alt (*.f64 (*.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) x) x) (patch (*.f64 (*.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) x) x) #<representation binary64>) () ())) ())
#s(alt (* (pow x 4) (+ 2/945 (* 1/45 (/ 1 (pow x 2))))) (taylor inf x) (#s(alt (*.f64 (*.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) x) x) (patch (*.f64 (*.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) x) x) #<representation binary64>) () ())) ())
#s(alt (* (pow x 4) (+ 2/945 (* 1/45 (/ 1 (pow x 2))))) (taylor inf x) (#s(alt (*.f64 (*.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) x) x) (patch (*.f64 (*.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) x) x) #<representation binary64>) () ())) ())
#s(alt (* (pow x 4) (+ 2/945 (* 1/45 (/ 1 (pow x 2))))) (taylor inf x) (#s(alt (*.f64 (*.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) x) x) (patch (*.f64 (*.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) x) x) #<representation binary64>) () ())) ())
#s(alt (* 2/945 (pow x 3)) (taylor inf x) (#s(alt (*.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) x) (patch (*.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* (pow x 3) (+ 2/945 (* 1/45 (/ 1 (pow x 2))))) (taylor inf x) (#s(alt (*.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) x) (patch (*.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* (pow x 3) (+ 2/945 (* 1/45 (/ 1 (pow x 2))))) (taylor inf x) (#s(alt (*.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) x) (patch (*.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* (pow x 3) (+ 2/945 (* 1/45 (/ 1 (pow x 2))))) (taylor inf x) (#s(alt (*.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) x) (patch (*.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* 1/3 x) (taylor inf x) (#s(alt (*.f64 #s(literal 1/3 binary64) x) (patch (*.f64 #s(literal 1/3 binary64) x) #<representation binary64>) () ())) ())
#s(alt (* 1/3 x) (taylor inf x) (#s(alt (*.f64 #s(literal 1/3 binary64) x) (patch (*.f64 #s(literal 1/3 binary64) x) #<representation binary64>) () ())) ())
#s(alt (* 1/3 x) (taylor inf x) (#s(alt (*.f64 #s(literal 1/3 binary64) x) (patch (*.f64 #s(literal 1/3 binary64) x) #<representation binary64>) () ())) ())
#s(alt (* 1/3 x) (taylor inf x) (#s(alt (*.f64 #s(literal 1/3 binary64) x) (patch (*.f64 #s(literal 1/3 binary64) x) #<representation binary64>) () ())) ())
#s(alt (* 1/45 (pow x 3)) (taylor -inf x) (#s(alt (/.f64 x (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal 1/45 binary64) (*.f64 x x) #s(literal 1/3 binary64)))) (patch (/.f64 x (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal 1/45 binary64) (*.f64 x x) #s(literal 1/3 binary64)))) #<representation binary64>) () ())) ())
#s(alt (* (pow x 3) (+ 1/45 (* 1/3 (/ 1 (pow x 2))))) (taylor -inf x) (#s(alt (/.f64 x (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal 1/45 binary64) (*.f64 x x) #s(literal 1/3 binary64)))) (patch (/.f64 x (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal 1/45 binary64) (*.f64 x x) #s(literal 1/3 binary64)))) #<representation binary64>) () ())) ())
#s(alt (* (pow x 3) (+ 1/45 (* 1/3 (/ 1 (pow x 2))))) (taylor -inf x) (#s(alt (/.f64 x (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal 1/45 binary64) (*.f64 x x) #s(literal 1/3 binary64)))) (patch (/.f64 x (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal 1/45 binary64) (*.f64 x x) #s(literal 1/3 binary64)))) #<representation binary64>) () ())) ())
#s(alt (* (pow x 3) (+ 1/45 (* 1/3 (/ 1 (pow x 2))))) (taylor -inf x) (#s(alt (/.f64 x (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal 1/45 binary64) (*.f64 x x) #s(literal 1/3 binary64)))) (patch (/.f64 x (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal 1/45 binary64) (*.f64 x x) #s(literal 1/3 binary64)))) #<representation binary64>) () ())) ())
#s(alt (* -1 (/ (cos x) (sin x))) (taylor -inf x) (#s(alt #s(approx (- (/ 1 x) (/ 1 (tan x))) (/.f64 x (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal 1/45 binary64) (*.f64 x x) #s(literal 1/3 binary64))))) (patch #s(approx (- (/ 1 x) (/ 1 (tan x))) (/.f64 x (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal 1/45 binary64) (*.f64 x x) #s(literal 1/3 binary64))))) #<representation binary64>) () ())) ())
#s(alt (- (/ 1 x) (/ (cos x) (sin x))) (taylor -inf x) (#s(alt #s(approx (- (/ 1 x) (/ 1 (tan x))) (/.f64 x (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal 1/45 binary64) (*.f64 x x) #s(literal 1/3 binary64))))) (patch #s(approx (- (/ 1 x) (/ 1 (tan x))) (/.f64 x (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal 1/45 binary64) (*.f64 x x) #s(literal 1/3 binary64))))) #<representation binary64>) () ())) ())
#s(alt (- (/ 1 x) (/ (cos x) (sin x))) (taylor -inf x) (#s(alt #s(approx (- (/ 1 x) (/ 1 (tan x))) (/.f64 x (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal 1/45 binary64) (*.f64 x x) #s(literal 1/3 binary64))))) (patch #s(approx (- (/ 1 x) (/ 1 (tan x))) (/.f64 x (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal 1/45 binary64) (*.f64 x x) #s(literal 1/3 binary64))))) #<representation binary64>) () ())) ())
#s(alt (- (/ 1 x) (/ (cos x) (sin x))) (taylor -inf x) (#s(alt #s(approx (- (/ 1 x) (/ 1 (tan x))) (/.f64 x (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal 1/45 binary64) (*.f64 x x) #s(literal 1/3 binary64))))) (patch #s(approx (- (/ 1 x) (/ 1 (tan x))) (/.f64 x (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal 1/45 binary64) (*.f64 x x) #s(literal 1/3 binary64))))) #<representation binary64>) () ())) ())
#s(alt (/ 45 (pow x 2)) (taylor -inf x) (#s(alt (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal 1/45 binary64) (*.f64 x x) #s(literal 1/3 binary64))) (patch (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal 1/45 binary64) (*.f64 x x) #s(literal 1/3 binary64))) #<representation binary64>) () ())) ())
#s(alt (/ (- 45 (* 675 (/ 1 (pow x 2)))) (pow x 2)) (taylor -inf x) (#s(alt (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal 1/45 binary64) (*.f64 x x) #s(literal 1/3 binary64))) (patch (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal 1/45 binary64) (*.f64 x x) #s(literal 1/3 binary64))) #<representation binary64>) () ())) ())
#s(alt (/ (- (+ 45 (/ 10125 (pow x 4))) (* 675 (/ 1 (pow x 2)))) (pow x 2)) (taylor -inf x) (#s(alt (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal 1/45 binary64) (*.f64 x x) #s(literal 1/3 binary64))) (patch (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal 1/45 binary64) (*.f64 x x) #s(literal 1/3 binary64))) #<representation binary64>) () ())) ())
#s(alt (/ (- (+ 45 (/ 10125 (pow x 4))) (+ (* 675 (/ 1 (pow x 2))) (* 151875 (/ 1 (pow x 6))))) (pow x 2)) (taylor -inf x) (#s(alt (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal 1/45 binary64) (*.f64 x x) #s(literal 1/3 binary64))) (patch (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal 1/45 binary64) (*.f64 x x) #s(literal 1/3 binary64))) #<representation binary64>) () ())) ())
#s(alt (* 1/45 (pow x 2)) (taylor -inf x) (#s(alt (fma.f64 #s(literal 1/45 binary64) (*.f64 x x) #s(literal 1/3 binary64)) (patch (fma.f64 #s(literal 1/45 binary64) (*.f64 x x) #s(literal 1/3 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (+ 1/45 (* 1/3 (/ 1 (pow x 2))))) (taylor -inf x) (#s(alt (fma.f64 #s(literal 1/45 binary64) (*.f64 x x) #s(literal 1/3 binary64)) (patch (fma.f64 #s(literal 1/45 binary64) (*.f64 x x) #s(literal 1/3 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (+ 1/45 (* 1/3 (/ 1 (pow x 2))))) (taylor -inf x) (#s(alt (fma.f64 #s(literal 1/45 binary64) (*.f64 x x) #s(literal 1/3 binary64)) (patch (fma.f64 #s(literal 1/45 binary64) (*.f64 x x) #s(literal 1/3 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (+ 1/45 (* 1/3 (/ 1 (pow x 2))))) (taylor -inf x) (#s(alt (fma.f64 #s(literal 1/45 binary64) (*.f64 x x) #s(literal 1/3 binary64)) (patch (fma.f64 #s(literal 1/45 binary64) (*.f64 x x) #s(literal 1/3 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 2/945 (pow x 5)) (taylor -inf x) (#s(alt (fma.f64 (*.f64 (*.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) x) x) x (*.f64 #s(literal 1/3 binary64) x)) (patch (fma.f64 (*.f64 (*.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) x) x) x (*.f64 #s(literal 1/3 binary64) x)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 5) (+ 2/945 (* 1/45 (/ 1 (pow x 2))))) (taylor -inf x) (#s(alt (fma.f64 (*.f64 (*.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) x) x) x (*.f64 #s(literal 1/3 binary64) x)) (patch (fma.f64 (*.f64 (*.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) x) x) x (*.f64 #s(literal 1/3 binary64) x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* (pow x 5) (- (* -1 (/ (+ 1/45 (* 1/3 (/ 1 (pow x 2)))) (pow x 2))) 2/945))) (taylor -inf x) (#s(alt (fma.f64 (*.f64 (*.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) x) x) x (*.f64 #s(literal 1/3 binary64) x)) (patch (fma.f64 (*.f64 (*.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) x) x) x (*.f64 #s(literal 1/3 binary64) x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* (pow x 5) (- (* -1 (/ (+ 1/45 (* 1/3 (/ 1 (pow x 2)))) (pow x 2))) 2/945))) (taylor -inf x) (#s(alt (fma.f64 (*.f64 (*.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) x) x) x (*.f64 #s(literal 1/3 binary64) x)) (patch (fma.f64 (*.f64 (*.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) x) x) x (*.f64 #s(literal 1/3 binary64) x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (/ (cos x) (sin x))) (taylor -inf x) (#s(alt #s(approx (- (/ 1 x) (/ 1 (tan x))) (fma.f64 (*.f64 (*.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) x) x) x (*.f64 #s(literal 1/3 binary64) x))) (patch #s(approx (- (/ 1 x) (/ 1 (tan x))) (fma.f64 (*.f64 (*.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) x) x) x (*.f64 #s(literal 1/3 binary64) x))) #<representation binary64>) () ())) ())
#s(alt (- (/ 1 x) (/ (cos x) (sin x))) (taylor -inf x) (#s(alt #s(approx (- (/ 1 x) (/ 1 (tan x))) (fma.f64 (*.f64 (*.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) x) x) x (*.f64 #s(literal 1/3 binary64) x))) (patch #s(approx (- (/ 1 x) (/ 1 (tan x))) (fma.f64 (*.f64 (*.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) x) x) x (*.f64 #s(literal 1/3 binary64) x))) #<representation binary64>) () ())) ())
#s(alt (- (/ 1 x) (/ (cos x) (sin x))) (taylor -inf x) (#s(alt #s(approx (- (/ 1 x) (/ 1 (tan x))) (fma.f64 (*.f64 (*.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) x) x) x (*.f64 #s(literal 1/3 binary64) x))) (patch #s(approx (- (/ 1 x) (/ 1 (tan x))) (fma.f64 (*.f64 (*.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) x) x) x (*.f64 #s(literal 1/3 binary64) x))) #<representation binary64>) () ())) ())
#s(alt (- (/ 1 x) (/ (cos x) (sin x))) (taylor -inf x) (#s(alt #s(approx (- (/ 1 x) (/ 1 (tan x))) (fma.f64 (*.f64 (*.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) x) x) x (*.f64 #s(literal 1/3 binary64) x))) (patch #s(approx (- (/ 1 x) (/ 1 (tan x))) (fma.f64 (*.f64 (*.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) x) x) x (*.f64 #s(literal 1/3 binary64) x))) #<representation binary64>) () ())) ())
#s(alt (* 2/945 (pow x 4)) (taylor -inf x) (#s(alt (*.f64 (*.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) x) x) (patch (*.f64 (*.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) x) x) #<representation binary64>) () ())) ())
#s(alt (* (pow x 4) (+ 2/945 (* 1/45 (/ 1 (pow x 2))))) (taylor -inf x) (#s(alt (*.f64 (*.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) x) x) (patch (*.f64 (*.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) x) x) #<representation binary64>) () ())) ())
#s(alt (* (pow x 4) (+ 2/945 (* 1/45 (/ 1 (pow x 2))))) (taylor -inf x) (#s(alt (*.f64 (*.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) x) x) (patch (*.f64 (*.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) x) x) #<representation binary64>) () ())) ())
#s(alt (* (pow x 4) (+ 2/945 (* 1/45 (/ 1 (pow x 2))))) (taylor -inf x) (#s(alt (*.f64 (*.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) x) x) (patch (*.f64 (*.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) x) x) #<representation binary64>) () ())) ())
#s(alt (* 2/945 (pow x 3)) (taylor -inf x) (#s(alt (*.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) x) (patch (*.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* (pow x 3) (+ 2/945 (* 1/45 (/ 1 (pow x 2))))) (taylor -inf x) (#s(alt (*.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) x) (patch (*.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* (pow x 3) (+ 2/945 (* 1/45 (/ 1 (pow x 2))))) (taylor -inf x) (#s(alt (*.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) x) (patch (*.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* (pow x 3) (+ 2/945 (* 1/45 (/ 1 (pow x 2))))) (taylor -inf x) (#s(alt (*.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) x) (patch (*.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* 1/3 x) (taylor -inf x) (#s(alt (*.f64 #s(literal 1/3 binary64) x) (patch (*.f64 #s(literal 1/3 binary64) x) #<representation binary64>) () ())) ())
#s(alt (* 1/3 x) (taylor -inf x) (#s(alt (*.f64 #s(literal 1/3 binary64) x) (patch (*.f64 #s(literal 1/3 binary64) x) #<representation binary64>) () ())) ())
#s(alt (* 1/3 x) (taylor -inf x) (#s(alt (*.f64 #s(literal 1/3 binary64) x) (patch (*.f64 #s(literal 1/3 binary64) x) #<representation binary64>) () ())) ())
#s(alt (* 1/3 x) (taylor -inf x) (#s(alt (*.f64 #s(literal 1/3 binary64) x) (patch (*.f64 #s(literal 1/3 binary64) x) #<representation binary64>) () ())) ())
Calls

3 calls:

TimeVariablePointExpression
4.0ms
x
@inf
((/ x (/ 1 (+ (* 1/45 (* x x)) 1/3))) (- (/ 1 x) (/ 1 (tan x))) (/ 1 (+ (* 1/45 (* x x)) 1/3)) (+ (* 1/45 (* x x)) 1/3) (+ (* (* (* (+ (* 2/945 (* x x)) 1/45) x) x) x) (* 1/3 x)) (- (/ 1 x) (/ 1 (tan x))) (* (* (+ (* 2/945 (* x x)) 1/45) x) x) (* (+ (* 2/945 (* x x)) 1/45) x) (* 1/3 x))
2.0ms
x
@-inf
((/ x (/ 1 (+ (* 1/45 (* x x)) 1/3))) (- (/ 1 x) (/ 1 (tan x))) (/ 1 (+ (* 1/45 (* x x)) 1/3)) (+ (* 1/45 (* x x)) 1/3) (+ (* (* (* (+ (* 2/945 (* x x)) 1/45) x) x) x) (* 1/3 x)) (- (/ 1 x) (/ 1 (tan x))) (* (* (+ (* 2/945 (* x x)) 1/45) x) x) (* (+ (* 2/945 (* x x)) 1/45) x) (* 1/3 x))
1.0ms
x
@0
((/ x (/ 1 (+ (* 1/45 (* x x)) 1/3))) (- (/ 1 x) (/ 1 (tan x))) (/ 1 (+ (* 1/45 (* x x)) 1/3)) (+ (* 1/45 (* x x)) 1/3) (+ (* (* (* (+ (* 2/945 (* x x)) 1/45) x) x) x) (* 1/3 x)) (- (/ 1 x) (/ 1 (tan x))) (* (* (+ (* 2/945 (* x x)) 1/45) x) x) (* (+ (* 2/945 (* x x)) 1/45) x) (* 1/3 x))

simplify130.0ms (0.8%)

Memory
26.2MiB live, 102.4MiB allocated
Algorithm
egg-herbie
Rules
11 070×lower-fma.f64
11 070×lower-fma.f32
3 498×lower-*.f64
3 498×lower-*.f32
2 258×lower--.f64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
097926
1271926
2685926
31641926
43701926
56921926
08309857
Stop Event
iter limit
node limit
Counts
108 → 108
Calls
Call 1
Inputs
(* 1/3 x)
(* x (+ 1/3 (* 1/45 (pow x 2))))
(* x (+ 1/3 (* 1/45 (pow x 2))))
(* x (+ 1/3 (* 1/45 (pow x 2))))
(* 1/3 x)
(* x (+ 1/3 (* 1/45 (pow x 2))))
(* x (+ 1/3 (* (pow x 2) (+ 1/45 (* 2/945 (pow x 2))))))
(* x (+ 1/3 (* (pow x 2) (+ 1/45 (* (pow x 2) (+ 2/945 (* 1/4725 (pow x 2))))))))
3
(+ 3 (* -1/5 (pow x 2)))
(+ 3 (* (pow x 2) (- (* 1/75 (pow x 2)) 1/5)))
(+ 3 (* (pow x 2) (- (* (pow x 2) (+ 1/75 (* -1/1125 (pow x 2)))) 1/5)))
1/3
(+ 1/3 (* 1/45 (pow x 2)))
(+ 1/3 (* 1/45 (pow x 2)))
(+ 1/3 (* 1/45 (pow x 2)))
(* 1/3 x)
(* x (+ 1/3 (* 1/45 (pow x 2))))
(* x (+ 1/3 (* (pow x 2) (+ 1/45 (* 2/945 (pow x 2))))))
(* x (+ 1/3 (* (pow x 2) (+ 1/45 (* 2/945 (pow x 2))))))
(* 1/3 x)
(* x (+ 1/3 (* 1/45 (pow x 2))))
(* x (+ 1/3 (* (pow x 2) (+ 1/45 (* 2/945 (pow x 2))))))
(* x (+ 1/3 (* (pow x 2) (+ 1/45 (* (pow x 2) (+ 2/945 (* 1/4725 (pow x 2))))))))
(* 1/45 (pow x 2))
(* (pow x 2) (+ 1/45 (* 2/945 (pow x 2))))
(* (pow x 2) (+ 1/45 (* 2/945 (pow x 2))))
(* (pow x 2) (+ 1/45 (* 2/945 (pow x 2))))
(* 1/45 x)
(* x (+ 1/45 (* 2/945 (pow x 2))))
(* x (+ 1/45 (* 2/945 (pow x 2))))
(* x (+ 1/45 (* 2/945 (pow x 2))))
(* 1/3 x)
(* 1/3 x)
(* 1/3 x)
(* 1/3 x)
(* 1/45 (pow x 3))
(* (pow x 3) (+ 1/45 (* 1/3 (/ 1 (pow x 2)))))
(* (pow x 3) (+ 1/45 (* 1/3 (/ 1 (pow x 2)))))
(* (pow x 3) (+ 1/45 (* 1/3 (/ 1 (pow x 2)))))
(* -1 (/ (cos x) (sin x)))
(- (/ 1 x) (/ (cos x) (sin x)))
(- (/ 1 x) (/ (cos x) (sin x)))
(- (/ 1 x) (/ (cos x) (sin x)))
(/ 45 (pow x 2))
(/ (- 45 (* 675 (/ 1 (pow x 2)))) (pow x 2))
(/ (- (+ 45 (/ 10125 (pow x 4))) (* 675 (/ 1 (pow x 2)))) (pow x 2))
(/ (- (+ 45 (/ 10125 (pow x 4))) (+ (* 675 (/ 1 (pow x 2))) (* 151875 (/ 1 (pow x 6))))) (pow x 2))
(* 1/45 (pow x 2))
(* (pow x 2) (+ 1/45 (* 1/3 (/ 1 (pow x 2)))))
(* (pow x 2) (+ 1/45 (* 1/3 (/ 1 (pow x 2)))))
(* (pow x 2) (+ 1/45 (* 1/3 (/ 1 (pow x 2)))))
(* 2/945 (pow x 5))
(* (pow x 5) (+ 2/945 (* 1/45 (/ 1 (pow x 2)))))
(* (pow x 5) (+ 2/945 (+ (/ 1/3 (pow x 4)) (* 1/45 (/ 1 (pow x 2))))))
(* (pow x 5) (+ 2/945 (+ (/ 1/3 (pow x 4)) (* 1/45 (/ 1 (pow x 2))))))
(* -1 (/ (cos x) (sin x)))
(- (/ 1 x) (/ (cos x) (sin x)))
(- (/ 1 x) (/ (cos x) (sin x)))
(- (/ 1 x) (/ (cos x) (sin x)))
(* 2/945 (pow x 4))
(* (pow x 4) (+ 2/945 (* 1/45 (/ 1 (pow x 2)))))
(* (pow x 4) (+ 2/945 (* 1/45 (/ 1 (pow x 2)))))
(* (pow x 4) (+ 2/945 (* 1/45 (/ 1 (pow x 2)))))
(* 2/945 (pow x 3))
(* (pow x 3) (+ 2/945 (* 1/45 (/ 1 (pow x 2)))))
(* (pow x 3) (+ 2/945 (* 1/45 (/ 1 (pow x 2)))))
(* (pow x 3) (+ 2/945 (* 1/45 (/ 1 (pow x 2)))))
(* 1/3 x)
(* 1/3 x)
(* 1/3 x)
(* 1/3 x)
(* 1/45 (pow x 3))
(* (pow x 3) (+ 1/45 (* 1/3 (/ 1 (pow x 2)))))
(* (pow x 3) (+ 1/45 (* 1/3 (/ 1 (pow x 2)))))
(* (pow x 3) (+ 1/45 (* 1/3 (/ 1 (pow x 2)))))
(* -1 (/ (cos x) (sin x)))
(- (/ 1 x) (/ (cos x) (sin x)))
(- (/ 1 x) (/ (cos x) (sin x)))
(- (/ 1 x) (/ (cos x) (sin x)))
(/ 45 (pow x 2))
(/ (- 45 (* 675 (/ 1 (pow x 2)))) (pow x 2))
(/ (- (+ 45 (/ 10125 (pow x 4))) (* 675 (/ 1 (pow x 2)))) (pow x 2))
(/ (- (+ 45 (/ 10125 (pow x 4))) (+ (* 675 (/ 1 (pow x 2))) (* 151875 (/ 1 (pow x 6))))) (pow x 2))
(* 1/45 (pow x 2))
(* (pow x 2) (+ 1/45 (* 1/3 (/ 1 (pow x 2)))))
(* (pow x 2) (+ 1/45 (* 1/3 (/ 1 (pow x 2)))))
(* (pow x 2) (+ 1/45 (* 1/3 (/ 1 (pow x 2)))))
(* 2/945 (pow x 5))
(* (pow x 5) (+ 2/945 (* 1/45 (/ 1 (pow x 2)))))
(* -1 (* (pow x 5) (- (* -1 (/ (+ 1/45 (* 1/3 (/ 1 (pow x 2)))) (pow x 2))) 2/945)))
(* -1 (* (pow x 5) (- (* -1 (/ (+ 1/45 (* 1/3 (/ 1 (pow x 2)))) (pow x 2))) 2/945)))
(* -1 (/ (cos x) (sin x)))
(- (/ 1 x) (/ (cos x) (sin x)))
(- (/ 1 x) (/ (cos x) (sin x)))
(- (/ 1 x) (/ (cos x) (sin x)))
(* 2/945 (pow x 4))
(* (pow x 4) (+ 2/945 (* 1/45 (/ 1 (pow x 2)))))
(* (pow x 4) (+ 2/945 (* 1/45 (/ 1 (pow x 2)))))
(* (pow x 4) (+ 2/945 (* 1/45 (/ 1 (pow x 2)))))
(* 2/945 (pow x 3))
(* (pow x 3) (+ 2/945 (* 1/45 (/ 1 (pow x 2)))))
(* (pow x 3) (+ 2/945 (* 1/45 (/ 1 (pow x 2)))))
(* (pow x 3) (+ 2/945 (* 1/45 (/ 1 (pow x 2)))))
(* 1/3 x)
(* 1/3 x)
(* 1/3 x)
(* 1/3 x)
Outputs
(* 1/3 x)
(*.f64 x #s(literal 1/3 binary64))
(* x (+ 1/3 (* 1/45 (pow x 2))))
(*.f64 (fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64)) x)
(* x (+ 1/3 (* 1/45 (pow x 2))))
(*.f64 (fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64)) x)
(* x (+ 1/3 (* 1/45 (pow x 2))))
(*.f64 (fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64)) x)
(* 1/3 x)
(*.f64 x #s(literal 1/3 binary64))
(* x (+ 1/3 (* 1/45 (pow x 2))))
(*.f64 (fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64)) x)
(* x (+ 1/3 (* (pow x 2) (+ 1/45 (* 2/945 (pow x 2))))))
(*.f64 (fma.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x)
(* x (+ 1/3 (* (pow x 2) (+ 1/45 (* (pow x 2) (+ 2/945 (* 1/4725 (pow x 2))))))))
(*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x)
3
#s(literal 3 binary64)
(+ 3 (* -1/5 (pow x 2)))
(fma.f64 #s(literal -1/5 binary64) (*.f64 x x) #s(literal 3 binary64))
(+ 3 (* (pow x 2) (- (* 1/75 (pow x 2)) 1/5)))
(fma.f64 (fma.f64 #s(literal 1/75 binary64) (*.f64 x x) #s(literal -1/5 binary64)) (*.f64 x x) #s(literal 3 binary64))
(+ 3 (* (pow x 2) (- (* (pow x 2) (+ 1/75 (* -1/1125 (pow x 2)))) 1/5)))
(fma.f64 (fma.f64 (fma.f64 #s(literal -1/1125 binary64) (*.f64 x x) #s(literal 1/75 binary64)) (*.f64 x x) #s(literal -1/5 binary64)) (*.f64 x x) #s(literal 3 binary64))
1/3
#s(literal 1/3 binary64)
(+ 1/3 (* 1/45 (pow x 2)))
(fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64))
(+ 1/3 (* 1/45 (pow x 2)))
(fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64))
(+ 1/3 (* 1/45 (pow x 2)))
(fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64))
(* 1/3 x)
(*.f64 x #s(literal 1/3 binary64))
(* x (+ 1/3 (* 1/45 (pow x 2))))
(*.f64 (fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64)) x)
(* x (+ 1/3 (* (pow x 2) (+ 1/45 (* 2/945 (pow x 2))))))
(*.f64 (fma.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x)
(* x (+ 1/3 (* (pow x 2) (+ 1/45 (* 2/945 (pow x 2))))))
(*.f64 (fma.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x)
(* 1/3 x)
(*.f64 x #s(literal 1/3 binary64))
(* x (+ 1/3 (* 1/45 (pow x 2))))
(*.f64 (fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64)) x)
(* x (+ 1/3 (* (pow x 2) (+ 1/45 (* 2/945 (pow x 2))))))
(*.f64 (fma.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x)
(* x (+ 1/3 (* (pow x 2) (+ 1/45 (* (pow x 2) (+ 2/945 (* 1/4725 (pow x 2))))))))
(*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x)
(* 1/45 (pow x 2))
(*.f64 (*.f64 x x) #s(literal 1/45 binary64))
(* (pow x 2) (+ 1/45 (* 2/945 (pow x 2))))
(*.f64 (*.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) x) x)
(* (pow x 2) (+ 1/45 (* 2/945 (pow x 2))))
(*.f64 (*.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) x) x)
(* (pow x 2) (+ 1/45 (* 2/945 (pow x 2))))
(*.f64 (*.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) x) x)
(* 1/45 x)
(*.f64 #s(literal 1/45 binary64) x)
(* x (+ 1/45 (* 2/945 (pow x 2))))
(*.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) x)
(* x (+ 1/45 (* 2/945 (pow x 2))))
(*.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) x)
(* x (+ 1/45 (* 2/945 (pow x 2))))
(*.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) x)
(* 1/3 x)
(*.f64 x #s(literal 1/3 binary64))
(* 1/3 x)
(*.f64 x #s(literal 1/3 binary64))
(* 1/3 x)
(*.f64 x #s(literal 1/3 binary64))
(* 1/3 x)
(*.f64 x #s(literal 1/3 binary64))
(* 1/45 (pow x 3))
(*.f64 (pow.f64 x #s(literal 3 binary64)) #s(literal 1/45 binary64))
(* (pow x 3) (+ 1/45 (* 1/3 (/ 1 (pow x 2)))))
(*.f64 (fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64)) x)
(* (pow x 3) (+ 1/45 (* 1/3 (/ 1 (pow x 2)))))
(*.f64 (fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64)) x)
(* (pow x 3) (+ 1/45 (* 1/3 (/ 1 (pow x 2)))))
(*.f64 (fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64)) x)
(* -1 (/ (cos x) (sin x)))
(/.f64 (neg.f64 (cos.f64 x)) (sin.f64 x))
(- (/ 1 x) (/ (cos x) (sin x)))
(-.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 (cos.f64 x) (sin.f64 x)))
(- (/ 1 x) (/ (cos x) (sin x)))
(-.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 (cos.f64 x) (sin.f64 x)))
(- (/ 1 x) (/ (cos x) (sin x)))
(-.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 (cos.f64 x) (sin.f64 x)))
(/ 45 (pow x 2))
(/.f64 #s(literal 45 binary64) (*.f64 x x))
(/ (- 45 (* 675 (/ 1 (pow x 2)))) (pow x 2))
(/.f64 (/.f64 (-.f64 #s(literal 45 binary64) (/.f64 #s(literal 675 binary64) (*.f64 x x))) x) x)
(/ (- (+ 45 (/ 10125 (pow x 4))) (* 675 (/ 1 (pow x 2)))) (pow x 2))
(/.f64 (-.f64 (/.f64 #s(literal -675 binary64) (*.f64 x x)) (-.f64 #s(literal -45 binary64) (/.f64 #s(literal 10125 binary64) (pow.f64 x #s(literal 4 binary64))))) (*.f64 x x))
(/ (- (+ 45 (/ 10125 (pow x 4))) (+ (* 675 (/ 1 (pow x 2))) (* 151875 (/ 1 (pow x 6))))) (pow x 2))
(/.f64 (/.f64 (-.f64 (-.f64 (/.f64 #s(literal -675 binary64) (*.f64 x x)) (-.f64 #s(literal -45 binary64) (/.f64 #s(literal 10125 binary64) (pow.f64 x #s(literal 4 binary64))))) (/.f64 #s(literal 151875 binary64) (pow.f64 x #s(literal 6 binary64)))) x) x)
(* 1/45 (pow x 2))
(*.f64 (*.f64 x x) #s(literal 1/45 binary64))
(* (pow x 2) (+ 1/45 (* 1/3 (/ 1 (pow x 2)))))
(fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64))
(* (pow x 2) (+ 1/45 (* 1/3 (/ 1 (pow x 2)))))
(fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64))
(* (pow x 2) (+ 1/45 (* 1/3 (/ 1 (pow x 2)))))
(fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64))
(* 2/945 (pow x 5))
(*.f64 (pow.f64 x #s(literal 5 binary64)) #s(literal 2/945 binary64))
(* (pow x 5) (+ 2/945 (* 1/45 (/ 1 (pow x 2)))))
(*.f64 (pow.f64 x #s(literal 3 binary64)) (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)))
(* (pow x 5) (+ 2/945 (+ (/ 1/3 (pow x 4)) (* 1/45 (/ 1 (pow x 2))))))
(*.f64 (fma.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x)
(* (pow x 5) (+ 2/945 (+ (/ 1/3 (pow x 4)) (* 1/45 (/ 1 (pow x 2))))))
(*.f64 (fma.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x)
(* -1 (/ (cos x) (sin x)))
(/.f64 (neg.f64 (cos.f64 x)) (sin.f64 x))
(- (/ 1 x) (/ (cos x) (sin x)))
(-.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 (cos.f64 x) (sin.f64 x)))
(- (/ 1 x) (/ (cos x) (sin x)))
(-.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 (cos.f64 x) (sin.f64 x)))
(- (/ 1 x) (/ (cos x) (sin x)))
(-.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 (cos.f64 x) (sin.f64 x)))
(* 2/945 (pow x 4))
(*.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal 2/945 binary64))
(* (pow x 4) (+ 2/945 (* 1/45 (/ 1 (pow x 2)))))
(*.f64 (*.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) x) x)
(* (pow x 4) (+ 2/945 (* 1/45 (/ 1 (pow x 2)))))
(*.f64 (*.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) x) x)
(* (pow x 4) (+ 2/945 (* 1/45 (/ 1 (pow x 2)))))
(*.f64 (*.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) x) x)
(* 2/945 (pow x 3))
(*.f64 (pow.f64 x #s(literal 3 binary64)) #s(literal 2/945 binary64))
(* (pow x 3) (+ 2/945 (* 1/45 (/ 1 (pow x 2)))))
(*.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) x)
(* (pow x 3) (+ 2/945 (* 1/45 (/ 1 (pow x 2)))))
(*.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) x)
(* (pow x 3) (+ 2/945 (* 1/45 (/ 1 (pow x 2)))))
(*.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) x)
(* 1/3 x)
(*.f64 x #s(literal 1/3 binary64))
(* 1/3 x)
(*.f64 x #s(literal 1/3 binary64))
(* 1/3 x)
(*.f64 x #s(literal 1/3 binary64))
(* 1/3 x)
(*.f64 x #s(literal 1/3 binary64))
(* 1/45 (pow x 3))
(*.f64 (pow.f64 x #s(literal 3 binary64)) #s(literal 1/45 binary64))
(* (pow x 3) (+ 1/45 (* 1/3 (/ 1 (pow x 2)))))
(*.f64 (fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64)) x)
(* (pow x 3) (+ 1/45 (* 1/3 (/ 1 (pow x 2)))))
(*.f64 (fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64)) x)
(* (pow x 3) (+ 1/45 (* 1/3 (/ 1 (pow x 2)))))
(*.f64 (fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64)) x)
(* -1 (/ (cos x) (sin x)))
(/.f64 (neg.f64 (cos.f64 x)) (sin.f64 x))
(- (/ 1 x) (/ (cos x) (sin x)))
(-.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 (cos.f64 x) (sin.f64 x)))
(- (/ 1 x) (/ (cos x) (sin x)))
(-.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 (cos.f64 x) (sin.f64 x)))
(- (/ 1 x) (/ (cos x) (sin x)))
(-.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 (cos.f64 x) (sin.f64 x)))
(/ 45 (pow x 2))
(/.f64 #s(literal 45 binary64) (*.f64 x x))
(/ (- 45 (* 675 (/ 1 (pow x 2)))) (pow x 2))
(/.f64 (/.f64 (-.f64 #s(literal 45 binary64) (/.f64 #s(literal 675 binary64) (*.f64 x x))) x) x)
(/ (- (+ 45 (/ 10125 (pow x 4))) (* 675 (/ 1 (pow x 2)))) (pow x 2))
(/.f64 (-.f64 (/.f64 #s(literal -675 binary64) (*.f64 x x)) (-.f64 #s(literal -45 binary64) (/.f64 #s(literal 10125 binary64) (pow.f64 x #s(literal 4 binary64))))) (*.f64 x x))
(/ (- (+ 45 (/ 10125 (pow x 4))) (+ (* 675 (/ 1 (pow x 2))) (* 151875 (/ 1 (pow x 6))))) (pow x 2))
(/.f64 (/.f64 (-.f64 (-.f64 (/.f64 #s(literal -675 binary64) (*.f64 x x)) (-.f64 #s(literal -45 binary64) (/.f64 #s(literal 10125 binary64) (pow.f64 x #s(literal 4 binary64))))) (/.f64 #s(literal 151875 binary64) (pow.f64 x #s(literal 6 binary64)))) x) x)
(* 1/45 (pow x 2))
(*.f64 (*.f64 x x) #s(literal 1/45 binary64))
(* (pow x 2) (+ 1/45 (* 1/3 (/ 1 (pow x 2)))))
(fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64))
(* (pow x 2) (+ 1/45 (* 1/3 (/ 1 (pow x 2)))))
(fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64))
(* (pow x 2) (+ 1/45 (* 1/3 (/ 1 (pow x 2)))))
(fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64))
(* 2/945 (pow x 5))
(*.f64 (pow.f64 x #s(literal 5 binary64)) #s(literal 2/945 binary64))
(* (pow x 5) (+ 2/945 (* 1/45 (/ 1 (pow x 2)))))
(*.f64 (pow.f64 x #s(literal 3 binary64)) (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)))
(* -1 (* (pow x 5) (- (* -1 (/ (+ 1/45 (* 1/3 (/ 1 (pow x 2)))) (pow x 2))) 2/945)))
(*.f64 (fma.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x)
(* -1 (* (pow x 5) (- (* -1 (/ (+ 1/45 (* 1/3 (/ 1 (pow x 2)))) (pow x 2))) 2/945)))
(*.f64 (fma.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x)
(* -1 (/ (cos x) (sin x)))
(/.f64 (neg.f64 (cos.f64 x)) (sin.f64 x))
(- (/ 1 x) (/ (cos x) (sin x)))
(-.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 (cos.f64 x) (sin.f64 x)))
(- (/ 1 x) (/ (cos x) (sin x)))
(-.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 (cos.f64 x) (sin.f64 x)))
(- (/ 1 x) (/ (cos x) (sin x)))
(-.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 (cos.f64 x) (sin.f64 x)))
(* 2/945 (pow x 4))
(*.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal 2/945 binary64))
(* (pow x 4) (+ 2/945 (* 1/45 (/ 1 (pow x 2)))))
(*.f64 (*.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) x) x)
(* (pow x 4) (+ 2/945 (* 1/45 (/ 1 (pow x 2)))))
(*.f64 (*.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) x) x)
(* (pow x 4) (+ 2/945 (* 1/45 (/ 1 (pow x 2)))))
(*.f64 (*.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) x) x)
(* 2/945 (pow x 3))
(*.f64 (pow.f64 x #s(literal 3 binary64)) #s(literal 2/945 binary64))
(* (pow x 3) (+ 2/945 (* 1/45 (/ 1 (pow x 2)))))
(*.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) x)
(* (pow x 3) (+ 2/945 (* 1/45 (/ 1 (pow x 2)))))
(*.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) x)
(* (pow x 3) (+ 2/945 (* 1/45 (/ 1 (pow x 2)))))
(*.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) x)
(* 1/3 x)
(*.f64 x #s(literal 1/3 binary64))
(* 1/3 x)
(*.f64 x #s(literal 1/3 binary64))
(* 1/3 x)
(*.f64 x #s(literal 1/3 binary64))
(* 1/3 x)
(*.f64 x #s(literal 1/3 binary64))

rewrite169.0ms (1%)

Memory
6.2MiB live, 156.6MiB allocated
Rules
10 718×lower-fma.f32
10 712×lower-fma.f64
5 688×lower-*.f32
5 680×lower-*.f64
2 978×lower-/.f32
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
020103
032101
114397
2107397
0903495
Stop Event
iter limit
node limit
iter limit
Counts
9 → 336
Calls
Call 1
Inputs
(/.f64 x (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal 1/45 binary64) (*.f64 x x) #s(literal 1/3 binary64))))
#s(approx (- (/ 1 x) (/ 1 (tan x))) (/.f64 x (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal 1/45 binary64) (*.f64 x x) #s(literal 1/3 binary64)))))
(/.f64 #s(literal 1 binary64) (fma.f64 #s(literal 1/45 binary64) (*.f64 x x) #s(literal 1/3 binary64)))
(fma.f64 #s(literal 1/45 binary64) (*.f64 x x) #s(literal 1/3 binary64))
(fma.f64 (*.f64 (*.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) x) x) x (*.f64 #s(literal 1/3 binary64) x))
#s(approx (- (/ 1 x) (/ 1 (tan x))) (fma.f64 (*.f64 (*.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) x) x) x (*.f64 #s(literal 1/3 binary64) x)))
(*.f64 (*.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) x) x)
(*.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) x)
(*.f64 #s(literal 1/3 binary64) 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>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>

eval57.0ms (0.4%)

Memory
3.4MiB live, 78.8MiB allocated
Compiler

Compiled 9 437 to 1 440 computations (84.7% saved)

prune12.0ms (0.1%)

Memory
-21.1MiB live, 24.4MiB allocated
Pruning

7 alts after pruning (2 fresh and 5 done)

PrunedKeptTotal
New4422444
Fresh000
Picked112
Done044
Total4437450
Accuracy
100.0%
Counts
450 → 7
Alt Table
Click to see full alt table
StatusAccuracyProgram
99.4%
#s(approx (- (/ 1 x) (/ 1 (tan x))) (fma.f64 (*.f64 (*.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) x) x) x (*.f64 #s(literal 1/3 binary64) x)))
99.9%
#s(approx (- (/ 1 x) (/ 1 (tan x))) (/.f64 x #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) (fma.f64 #s(literal -1/5 binary64) (*.f64 x x) #s(literal 3 binary64)))))
99.3%
#s(approx (- (/ 1 x) (/ 1 (tan x))) (/.f64 x #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) #s(literal 3 binary64))))
99.4%
#s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x))
99.4%
#s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 (fma.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x))
99.3%
#s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 (fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64)) x))
98.7%
#s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 x #s(literal 1/3 binary64)))
Compiler

Compiled 77 to 55 computations (28.6% saved)

simplify47.0ms (0.3%)

Memory
-1.2MiB live, 36.6MiB allocated
Algorithm
egg-herbie
Localize:

Found 7 expressions of interest:

NewMetricScoreProgram
cost-diff0
(fma.f64 #s(literal -1/5 binary64) (*.f64 x x) #s(literal 3 binary64))
cost-diff0
#s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) (fma.f64 #s(literal -1/5 binary64) (*.f64 x x) #s(literal 3 binary64)))
cost-diff0
(/.f64 x #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) (fma.f64 #s(literal -1/5 binary64) (*.f64 x x) #s(literal 3 binary64))))
cost-diff0
#s(approx (- (/ 1 x) (/ 1 (tan x))) (/.f64 x #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) (fma.f64 #s(literal -1/5 binary64) (*.f64 x x) #s(literal 3 binary64)))))
cost-diff0
#s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) #s(literal 3 binary64))
cost-diff0
(/.f64 x #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) #s(literal 3 binary64)))
cost-diff0
#s(approx (- (/ 1 x) (/ 1 (tan x))) (/.f64 x #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) #s(literal 3 binary64))))
Rules
568×lower-fma.f32
566×lower-fma.f64
440×lower-*.f32
438×lower-*.f64
176×lower-+.f64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
022121
027121
139121
253121
362121
475121
595121
6134121
7167121
8285121
9579121
10794121
11987121
121197121
131261121
141313121
151337121
161342121
171343121
01343115
Stop Event
iter limit
saturated
iter limit
Calls
Call 1
Inputs
#s(approx (- (/ 1 x) (/ 1 (tan x))) (/.f64 x #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) #s(literal 3 binary64))))
(/.f64 x #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) #s(literal 3 binary64)))
x
#s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) #s(literal 3 binary64))
#s(literal 3 binary64)
#s(approx (- (/ 1 x) (/ 1 (tan x))) (/.f64 x #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) (fma.f64 #s(literal -1/5 binary64) (*.f64 x x) #s(literal 3 binary64)))))
(/.f64 x #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) (fma.f64 #s(literal -1/5 binary64) (*.f64 x x) #s(literal 3 binary64))))
x
#s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) (fma.f64 #s(literal -1/5 binary64) (*.f64 x x) #s(literal 3 binary64)))
(fma.f64 #s(literal -1/5 binary64) (*.f64 x x) #s(literal 3 binary64))
#s(literal -1/5 binary64)
(*.f64 x x)
#s(literal 3 binary64)
Outputs
#s(approx (- (/ 1 x) (/ 1 (tan x))) (/.f64 x #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) #s(literal 3 binary64))))
(/.f64 x #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) #s(literal 3 binary64)))
x
#s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) #s(literal 3 binary64))
#s(literal 3 binary64)
#s(approx (- (/ 1 x) (/ 1 (tan x))) (/.f64 x #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) (fma.f64 #s(literal -1/5 binary64) (*.f64 x x) #s(literal 3 binary64)))))
#s(approx (- (/ 1 x) (/ 1 (tan x))) (/.f64 x #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) (fma.f64 (*.f64 x x) #s(literal -1/5 binary64) #s(literal 3 binary64)))))
(/.f64 x #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) (fma.f64 #s(literal -1/5 binary64) (*.f64 x x) #s(literal 3 binary64))))
(/.f64 x #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) (fma.f64 (*.f64 x x) #s(literal -1/5 binary64) #s(literal 3 binary64))))
x
#s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) (fma.f64 #s(literal -1/5 binary64) (*.f64 x x) #s(literal 3 binary64)))
#s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) (fma.f64 (*.f64 x x) #s(literal -1/5 binary64) #s(literal 3 binary64)))
(fma.f64 #s(literal -1/5 binary64) (*.f64 x x) #s(literal 3 binary64))
(fma.f64 (*.f64 x x) #s(literal -1/5 binary64) #s(literal 3 binary64))
#s(literal -1/5 binary64)
(*.f64 x x)
#s(literal 3 binary64)

localize326.0ms (2%)

Memory
22.1MiB live, 293.5MiB allocated
Localize:

Found 7 expressions of interest:

NewMetricScoreProgram
accuracy0
(*.f64 x x)
accuracy0.0078125
(/.f64 x #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) (fma.f64 #s(literal -1/5 binary64) (*.f64 x x) #s(literal 3 binary64))))
accuracy0.07930170333236489
#s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) (fma.f64 #s(literal -1/5 binary64) (*.f64 x x) #s(literal 3 binary64)))
accuracy0.08018926641797663
#s(approx (- (/ 1 x) (/ 1 (tan x))) (/.f64 x #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) (fma.f64 #s(literal -1/5 binary64) (*.f64 x x) #s(literal 3 binary64)))))
accuracy0.0078125
(/.f64 x #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) #s(literal 3 binary64)))
accuracy0.08018926641797663
#s(approx (- (/ 1 x) (/ 1 (tan x))) (/.f64 x #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) #s(literal 3 binary64))))
accuracy0.46457614227233873
#s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) #s(literal 3 binary64))
Samples
245.0ms125×2valid
67.0ms127×1valid
1.0ms0valid
Compiler

Compiled 73 to 19 computations (74% saved)

Precisions
Click to see histograms. Total time spent on operations: 278.0ms
ival-tan: 219.0ms (78.6% of total)
ival-div: 17.0ms (6.1% of total)
const: 13.0ms (4.7% of total)
adjust: 11.0ms (4% of total)
ival-add: 10.0ms (3.6% of total)
ival-mult: 5.0ms (1.8% of total)
ival-sub: 3.0ms (1.1% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)

series6.0ms (0%)

Memory
8.8MiB live, 8.8MiB allocated
Counts
8 → 96
Calls
Call 1
Inputs
#s(alt #s(approx (- (/ 1 x) (/ 1 (tan x))) (/.f64 x #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) #s(literal 3 binary64)))) (patch #s(approx (- (/ 1 x) (/ 1 (tan x))) (/.f64 x #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) #s(literal 3 binary64)))) #<representation binary64>) () ())
#s(alt (/.f64 x #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) #s(literal 3 binary64))) (patch (/.f64 x #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) #s(literal 3 binary64))) #<representation binary64>) () ())
#s(alt #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) #s(literal 3 binary64)) (patch #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) #s(literal 3 binary64)) #<representation binary64>) () ())
#s(alt #s(approx (- (/ 1 x) (/ 1 (tan x))) (/.f64 x #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) (fma.f64 #s(literal -1/5 binary64) (*.f64 x x) #s(literal 3 binary64))))) (patch #s(approx (- (/ 1 x) (/ 1 (tan x))) (/.f64 x #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) (fma.f64 #s(literal -1/5 binary64) (*.f64 x x) #s(literal 3 binary64))))) #<representation binary64>) () ())
#s(alt (/.f64 x #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) (fma.f64 #s(literal -1/5 binary64) (*.f64 x x) #s(literal 3 binary64)))) (patch (/.f64 x #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) (fma.f64 #s(literal -1/5 binary64) (*.f64 x x) #s(literal 3 binary64)))) #<representation binary64>) () ())
#s(alt #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) (fma.f64 #s(literal -1/5 binary64) (*.f64 x x) #s(literal 3 binary64))) (patch #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) (fma.f64 #s(literal -1/5 binary64) (*.f64 x x) #s(literal 3 binary64))) #<representation binary64>) () ())
#s(alt (fma.f64 #s(literal -1/5 binary64) (*.f64 x x) #s(literal 3 binary64)) (patch (fma.f64 #s(literal -1/5 binary64) (*.f64 x x) #s(literal 3 binary64)) #<representation binary64>) () ())
#s(alt (*.f64 x x) (patch (*.f64 x x) #<representation binary64>) () ())
Outputs
#s(alt (* 1/3 x) (taylor 0 x) (#s(alt #s(approx (- (/ 1 x) (/ 1 (tan x))) (/.f64 x #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) #s(literal 3 binary64)))) (patch #s(approx (- (/ 1 x) (/ 1 (tan x))) (/.f64 x #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) #s(literal 3 binary64)))) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1/3 (* 1/45 (pow x 2)))) (taylor 0 x) (#s(alt #s(approx (- (/ 1 x) (/ 1 (tan x))) (/.f64 x #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) #s(literal 3 binary64)))) (patch #s(approx (- (/ 1 x) (/ 1 (tan x))) (/.f64 x #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) #s(literal 3 binary64)))) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1/3 (* (pow x 2) (+ 1/45 (* 2/945 (pow x 2)))))) (taylor 0 x) (#s(alt #s(approx (- (/ 1 x) (/ 1 (tan x))) (/.f64 x #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) #s(literal 3 binary64)))) (patch #s(approx (- (/ 1 x) (/ 1 (tan x))) (/.f64 x #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) #s(literal 3 binary64)))) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1/3 (* (pow x 2) (+ 1/45 (* (pow x 2) (+ 2/945 (* 1/4725 (pow x 2)))))))) (taylor 0 x) (#s(alt #s(approx (- (/ 1 x) (/ 1 (tan x))) (/.f64 x #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) #s(literal 3 binary64)))) (patch #s(approx (- (/ 1 x) (/ 1 (tan x))) (/.f64 x #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) #s(literal 3 binary64)))) #<representation binary64>) () ())) ())
#s(alt (* 1/3 x) (taylor 0 x) (#s(alt (/.f64 x #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) #s(literal 3 binary64))) (patch (/.f64 x #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) #s(literal 3 binary64))) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1/3 (* 1/45 (pow x 2)))) (taylor 0 x) (#s(alt (/.f64 x #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) #s(literal 3 binary64))) (patch (/.f64 x #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) #s(literal 3 binary64))) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1/3 (* 1/45 (pow x 2)))) (taylor 0 x) (#s(alt (/.f64 x #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) #s(literal 3 binary64))) (patch (/.f64 x #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) #s(literal 3 binary64))) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1/3 (* 1/45 (pow x 2)))) (taylor 0 x) (#s(alt (/.f64 x #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) #s(literal 3 binary64))) (patch (/.f64 x #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) #s(literal 3 binary64))) #<representation binary64>) () ())) ())
#s(alt 3 (taylor 0 x) (#s(alt #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) #s(literal 3 binary64)) (patch #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) #s(literal 3 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 3 (* -1/5 (pow x 2))) (taylor 0 x) (#s(alt #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) #s(literal 3 binary64)) (patch #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) #s(literal 3 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 3 (* (pow x 2) (- (* 1/75 (pow x 2)) 1/5))) (taylor 0 x) (#s(alt #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) #s(literal 3 binary64)) (patch #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) #s(literal 3 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 3 (* (pow x 2) (- (* (pow x 2) (+ 1/75 (* -1/1125 (pow x 2)))) 1/5))) (taylor 0 x) (#s(alt #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) #s(literal 3 binary64)) (patch #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) #s(literal 3 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 1/3 x) (taylor 0 x) (#s(alt #s(approx (- (/ 1 x) (/ 1 (tan x))) (/.f64 x #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) (fma.f64 #s(literal -1/5 binary64) (*.f64 x x) #s(literal 3 binary64))))) (patch #s(approx (- (/ 1 x) (/ 1 (tan x))) (/.f64 x #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) (fma.f64 #s(literal -1/5 binary64) (*.f64 x x) #s(literal 3 binary64))))) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1/3 (* 1/45 (pow x 2)))) (taylor 0 x) (#s(alt #s(approx (- (/ 1 x) (/ 1 (tan x))) (/.f64 x #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) (fma.f64 #s(literal -1/5 binary64) (*.f64 x x) #s(literal 3 binary64))))) (patch #s(approx (- (/ 1 x) (/ 1 (tan x))) (/.f64 x #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) (fma.f64 #s(literal -1/5 binary64) (*.f64 x x) #s(literal 3 binary64))))) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1/3 (* (pow x 2) (+ 1/45 (* 2/945 (pow x 2)))))) (taylor 0 x) (#s(alt #s(approx (- (/ 1 x) (/ 1 (tan x))) (/.f64 x #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) (fma.f64 #s(literal -1/5 binary64) (*.f64 x x) #s(literal 3 binary64))))) (patch #s(approx (- (/ 1 x) (/ 1 (tan x))) (/.f64 x #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) (fma.f64 #s(literal -1/5 binary64) (*.f64 x x) #s(literal 3 binary64))))) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1/3 (* (pow x 2) (+ 1/45 (* (pow x 2) (+ 2/945 (* 1/4725 (pow x 2)))))))) (taylor 0 x) (#s(alt #s(approx (- (/ 1 x) (/ 1 (tan x))) (/.f64 x #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) (fma.f64 #s(literal -1/5 binary64) (*.f64 x x) #s(literal 3 binary64))))) (patch #s(approx (- (/ 1 x) (/ 1 (tan x))) (/.f64 x #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) (fma.f64 #s(literal -1/5 binary64) (*.f64 x x) #s(literal 3 binary64))))) #<representation binary64>) () ())) ())
#s(alt (* 1/3 x) (taylor 0 x) (#s(alt (/.f64 x #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) (fma.f64 #s(literal -1/5 binary64) (*.f64 x x) #s(literal 3 binary64)))) (patch (/.f64 x #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) (fma.f64 #s(literal -1/5 binary64) (*.f64 x x) #s(literal 3 binary64)))) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1/3 (* 1/45 (pow x 2)))) (taylor 0 x) (#s(alt (/.f64 x #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) (fma.f64 #s(literal -1/5 binary64) (*.f64 x x) #s(literal 3 binary64)))) (patch (/.f64 x #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) (fma.f64 #s(literal -1/5 binary64) (*.f64 x x) #s(literal 3 binary64)))) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1/3 (* 1/45 (pow x 2)))) (taylor 0 x) (#s(alt (/.f64 x #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) (fma.f64 #s(literal -1/5 binary64) (*.f64 x x) #s(literal 3 binary64)))) (patch (/.f64 x #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) (fma.f64 #s(literal -1/5 binary64) (*.f64 x x) #s(literal 3 binary64)))) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1/3 (* 1/45 (pow x 2)))) (taylor 0 x) (#s(alt (/.f64 x #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) (fma.f64 #s(literal -1/5 binary64) (*.f64 x x) #s(literal 3 binary64)))) (patch (/.f64 x #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) (fma.f64 #s(literal -1/5 binary64) (*.f64 x x) #s(literal 3 binary64)))) #<representation binary64>) () ())) ())
#s(alt 3 (taylor 0 x) (#s(alt #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) (fma.f64 #s(literal -1/5 binary64) (*.f64 x x) #s(literal 3 binary64))) (patch #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) (fma.f64 #s(literal -1/5 binary64) (*.f64 x x) #s(literal 3 binary64))) #<representation binary64>) () ())) ())
#s(alt (+ 3 (* -1/5 (pow x 2))) (taylor 0 x) (#s(alt #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) (fma.f64 #s(literal -1/5 binary64) (*.f64 x x) #s(literal 3 binary64))) (patch #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) (fma.f64 #s(literal -1/5 binary64) (*.f64 x x) #s(literal 3 binary64))) #<representation binary64>) () ())) ())
#s(alt (+ 3 (* (pow x 2) (- (* 1/75 (pow x 2)) 1/5))) (taylor 0 x) (#s(alt #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) (fma.f64 #s(literal -1/5 binary64) (*.f64 x x) #s(literal 3 binary64))) (patch #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) (fma.f64 #s(literal -1/5 binary64) (*.f64 x x) #s(literal 3 binary64))) #<representation binary64>) () ())) ())
#s(alt (+ 3 (* (pow x 2) (- (* (pow x 2) (+ 1/75 (* -1/1125 (pow x 2)))) 1/5))) (taylor 0 x) (#s(alt #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) (fma.f64 #s(literal -1/5 binary64) (*.f64 x x) #s(literal 3 binary64))) (patch #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) (fma.f64 #s(literal -1/5 binary64) (*.f64 x x) #s(literal 3 binary64))) #<representation binary64>) () ())) ())
#s(alt 3 (taylor 0 x) (#s(alt (fma.f64 #s(literal -1/5 binary64) (*.f64 x x) #s(literal 3 binary64)) (patch (fma.f64 #s(literal -1/5 binary64) (*.f64 x x) #s(literal 3 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 3 (* -1/5 (pow x 2))) (taylor 0 x) (#s(alt (fma.f64 #s(literal -1/5 binary64) (*.f64 x x) #s(literal 3 binary64)) (patch (fma.f64 #s(literal -1/5 binary64) (*.f64 x x) #s(literal 3 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 3 (* -1/5 (pow x 2))) (taylor 0 x) (#s(alt (fma.f64 #s(literal -1/5 binary64) (*.f64 x x) #s(literal 3 binary64)) (patch (fma.f64 #s(literal -1/5 binary64) (*.f64 x x) #s(literal 3 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 3 (* -1/5 (pow x 2))) (taylor 0 x) (#s(alt (fma.f64 #s(literal -1/5 binary64) (*.f64 x x) #s(literal 3 binary64)) (patch (fma.f64 #s(literal -1/5 binary64) (*.f64 x x) #s(literal 3 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 (/ (cos x) (sin x))) (taylor inf x) (#s(alt #s(approx (- (/ 1 x) (/ 1 (tan x))) (/.f64 x #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) #s(literal 3 binary64)))) (patch #s(approx (- (/ 1 x) (/ 1 (tan x))) (/.f64 x #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) #s(literal 3 binary64)))) #<representation binary64>) () ())) ())
#s(alt (- (/ 1 x) (/ (cos x) (sin x))) (taylor inf x) (#s(alt #s(approx (- (/ 1 x) (/ 1 (tan x))) (/.f64 x #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) #s(literal 3 binary64)))) (patch #s(approx (- (/ 1 x) (/ 1 (tan x))) (/.f64 x #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) #s(literal 3 binary64)))) #<representation binary64>) () ())) ())
#s(alt (- (/ 1 x) (/ (cos x) (sin x))) (taylor inf x) (#s(alt #s(approx (- (/ 1 x) (/ 1 (tan x))) (/.f64 x #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) #s(literal 3 binary64)))) (patch #s(approx (- (/ 1 x) (/ 1 (tan x))) (/.f64 x #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) #s(literal 3 binary64)))) #<representation binary64>) () ())) ())
#s(alt (- (/ 1 x) (/ (cos x) (sin x))) (taylor inf x) (#s(alt #s(approx (- (/ 1 x) (/ 1 (tan x))) (/.f64 x #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) #s(literal 3 binary64)))) (patch #s(approx (- (/ 1 x) (/ 1 (tan x))) (/.f64 x #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) #s(literal 3 binary64)))) #<representation binary64>) () ())) ())
#s(alt (* 1/45 (pow x 3)) (taylor inf x) (#s(alt (/.f64 x #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) #s(literal 3 binary64))) (patch (/.f64 x #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) #s(literal 3 binary64))) #<representation binary64>) () ())) ())
#s(alt (* (pow x 3) (+ 1/45 (* 1/3 (/ 1 (pow x 2))))) (taylor inf x) (#s(alt (/.f64 x #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) #s(literal 3 binary64))) (patch (/.f64 x #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) #s(literal 3 binary64))) #<representation binary64>) () ())) ())
#s(alt (* (pow x 3) (+ 1/45 (* 1/3 (/ 1 (pow x 2))))) (taylor inf x) (#s(alt (/.f64 x #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) #s(literal 3 binary64))) (patch (/.f64 x #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) #s(literal 3 binary64))) #<representation binary64>) () ())) ())
#s(alt (* (pow x 3) (+ 1/45 (* 1/3 (/ 1 (pow x 2))))) (taylor inf x) (#s(alt (/.f64 x #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) #s(literal 3 binary64))) (patch (/.f64 x #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) #s(literal 3 binary64))) #<representation binary64>) () ())) ())
#s(alt (/ 45 (pow x 2)) (taylor inf x) (#s(alt #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) #s(literal 3 binary64)) (patch #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) #s(literal 3 binary64)) #<representation binary64>) () ())) ())
#s(alt (/ (- 45 (* 675 (/ 1 (pow x 2)))) (pow x 2)) (taylor inf x) (#s(alt #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) #s(literal 3 binary64)) (patch #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) #s(literal 3 binary64)) #<representation binary64>) () ())) ())
#s(alt (/ (- (+ 45 (/ 10125 (pow x 4))) (* 675 (/ 1 (pow x 2)))) (pow x 2)) (taylor inf x) (#s(alt #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) #s(literal 3 binary64)) (patch #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) #s(literal 3 binary64)) #<representation binary64>) () ())) ())
#s(alt (/ (- (+ 45 (/ 10125 (pow x 4))) (+ (* 675 (/ 1 (pow x 2))) (* 151875 (/ 1 (pow x 6))))) (pow x 2)) (taylor inf x) (#s(alt #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) #s(literal 3 binary64)) (patch #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) #s(literal 3 binary64)) #<representation binary64>) () ())) ())
#s(alt (* -1 (/ (cos x) (sin x))) (taylor inf x) (#s(alt #s(approx (- (/ 1 x) (/ 1 (tan x))) (/.f64 x #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) (fma.f64 #s(literal -1/5 binary64) (*.f64 x x) #s(literal 3 binary64))))) (patch #s(approx (- (/ 1 x) (/ 1 (tan x))) (/.f64 x #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) (fma.f64 #s(literal -1/5 binary64) (*.f64 x x) #s(literal 3 binary64))))) #<representation binary64>) () ())) ())
#s(alt (- (/ 1 x) (/ (cos x) (sin x))) (taylor inf x) (#s(alt #s(approx (- (/ 1 x) (/ 1 (tan x))) (/.f64 x #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) (fma.f64 #s(literal -1/5 binary64) (*.f64 x x) #s(literal 3 binary64))))) (patch #s(approx (- (/ 1 x) (/ 1 (tan x))) (/.f64 x #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) (fma.f64 #s(literal -1/5 binary64) (*.f64 x x) #s(literal 3 binary64))))) #<representation binary64>) () ())) ())
#s(alt (- (/ 1 x) (/ (cos x) (sin x))) (taylor inf x) (#s(alt #s(approx (- (/ 1 x) (/ 1 (tan x))) (/.f64 x #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) (fma.f64 #s(literal -1/5 binary64) (*.f64 x x) #s(literal 3 binary64))))) (patch #s(approx (- (/ 1 x) (/ 1 (tan x))) (/.f64 x #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) (fma.f64 #s(literal -1/5 binary64) (*.f64 x x) #s(literal 3 binary64))))) #<representation binary64>) () ())) ())
#s(alt (- (/ 1 x) (/ (cos x) (sin x))) (taylor inf x) (#s(alt #s(approx (- (/ 1 x) (/ 1 (tan x))) (/.f64 x #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) (fma.f64 #s(literal -1/5 binary64) (*.f64 x x) #s(literal 3 binary64))))) (patch #s(approx (- (/ 1 x) (/ 1 (tan x))) (/.f64 x #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) (fma.f64 #s(literal -1/5 binary64) (*.f64 x x) #s(literal 3 binary64))))) #<representation binary64>) () ())) ())
#s(alt (* 1/45 (pow x 3)) (taylor inf x) (#s(alt (/.f64 x #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) (fma.f64 #s(literal -1/5 binary64) (*.f64 x x) #s(literal 3 binary64)))) (patch (/.f64 x #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) (fma.f64 #s(literal -1/5 binary64) (*.f64 x x) #s(literal 3 binary64)))) #<representation binary64>) () ())) ())
#s(alt (* (pow x 3) (+ 1/45 (* 1/3 (/ 1 (pow x 2))))) (taylor inf x) (#s(alt (/.f64 x #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) (fma.f64 #s(literal -1/5 binary64) (*.f64 x x) #s(literal 3 binary64)))) (patch (/.f64 x #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) (fma.f64 #s(literal -1/5 binary64) (*.f64 x x) #s(literal 3 binary64)))) #<representation binary64>) () ())) ())
#s(alt (* (pow x 3) (+ 1/45 (* 1/3 (/ 1 (pow x 2))))) (taylor inf x) (#s(alt (/.f64 x #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) (fma.f64 #s(literal -1/5 binary64) (*.f64 x x) #s(literal 3 binary64)))) (patch (/.f64 x #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) (fma.f64 #s(literal -1/5 binary64) (*.f64 x x) #s(literal 3 binary64)))) #<representation binary64>) () ())) ())
#s(alt (* (pow x 3) (+ 1/45 (* 1/3 (/ 1 (pow x 2))))) (taylor inf x) (#s(alt (/.f64 x #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) (fma.f64 #s(literal -1/5 binary64) (*.f64 x x) #s(literal 3 binary64)))) (patch (/.f64 x #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) (fma.f64 #s(literal -1/5 binary64) (*.f64 x x) #s(literal 3 binary64)))) #<representation binary64>) () ())) ())
#s(alt (/ 45 (pow x 2)) (taylor inf x) (#s(alt #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) (fma.f64 #s(literal -1/5 binary64) (*.f64 x x) #s(literal 3 binary64))) (patch #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) (fma.f64 #s(literal -1/5 binary64) (*.f64 x x) #s(literal 3 binary64))) #<representation binary64>) () ())) ())
#s(alt (/ (- 45 (* 675 (/ 1 (pow x 2)))) (pow x 2)) (taylor inf x) (#s(alt #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) (fma.f64 #s(literal -1/5 binary64) (*.f64 x x) #s(literal 3 binary64))) (patch #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) (fma.f64 #s(literal -1/5 binary64) (*.f64 x x) #s(literal 3 binary64))) #<representation binary64>) () ())) ())
#s(alt (/ (- (+ 45 (/ 10125 (pow x 4))) (* 675 (/ 1 (pow x 2)))) (pow x 2)) (taylor inf x) (#s(alt #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) (fma.f64 #s(literal -1/5 binary64) (*.f64 x x) #s(literal 3 binary64))) (patch #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) (fma.f64 #s(literal -1/5 binary64) (*.f64 x x) #s(literal 3 binary64))) #<representation binary64>) () ())) ())
#s(alt (/ (- (+ 45 (/ 10125 (pow x 4))) (+ (* 675 (/ 1 (pow x 2))) (* 151875 (/ 1 (pow x 6))))) (pow x 2)) (taylor inf x) (#s(alt #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) (fma.f64 #s(literal -1/5 binary64) (*.f64 x x) #s(literal 3 binary64))) (patch #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) (fma.f64 #s(literal -1/5 binary64) (*.f64 x x) #s(literal 3 binary64))) #<representation binary64>) () ())) ())
#s(alt (* -1/5 (pow x 2)) (taylor inf x) (#s(alt (fma.f64 #s(literal -1/5 binary64) (*.f64 x x) #s(literal 3 binary64)) (patch (fma.f64 #s(literal -1/5 binary64) (*.f64 x x) #s(literal 3 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (- (* 3 (/ 1 (pow x 2))) 1/5)) (taylor inf x) (#s(alt (fma.f64 #s(literal -1/5 binary64) (*.f64 x x) #s(literal 3 binary64)) (patch (fma.f64 #s(literal -1/5 binary64) (*.f64 x x) #s(literal 3 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (- (* 3 (/ 1 (pow x 2))) 1/5)) (taylor inf x) (#s(alt (fma.f64 #s(literal -1/5 binary64) (*.f64 x x) #s(literal 3 binary64)) (patch (fma.f64 #s(literal -1/5 binary64) (*.f64 x x) #s(literal 3 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (- (* 3 (/ 1 (pow x 2))) 1/5)) (taylor inf x) (#s(alt (fma.f64 #s(literal -1/5 binary64) (*.f64 x x) #s(literal 3 binary64)) (patch (fma.f64 #s(literal -1/5 binary64) (*.f64 x x) #s(literal 3 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) (sin x))) (taylor -inf x) (#s(alt #s(approx (- (/ 1 x) (/ 1 (tan x))) (/.f64 x #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) #s(literal 3 binary64)))) (patch #s(approx (- (/ 1 x) (/ 1 (tan x))) (/.f64 x #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) #s(literal 3 binary64)))) #<representation binary64>) () ())) ())
#s(alt (- (/ 1 x) (/ (cos x) (sin x))) (taylor -inf x) (#s(alt #s(approx (- (/ 1 x) (/ 1 (tan x))) (/.f64 x #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) #s(literal 3 binary64)))) (patch #s(approx (- (/ 1 x) (/ 1 (tan x))) (/.f64 x #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) #s(literal 3 binary64)))) #<representation binary64>) () ())) ())
#s(alt (- (/ 1 x) (/ (cos x) (sin x))) (taylor -inf x) (#s(alt #s(approx (- (/ 1 x) (/ 1 (tan x))) (/.f64 x #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) #s(literal 3 binary64)))) (patch #s(approx (- (/ 1 x) (/ 1 (tan x))) (/.f64 x #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) #s(literal 3 binary64)))) #<representation binary64>) () ())) ())
#s(alt (- (/ 1 x) (/ (cos x) (sin x))) (taylor -inf x) (#s(alt #s(approx (- (/ 1 x) (/ 1 (tan x))) (/.f64 x #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) #s(literal 3 binary64)))) (patch #s(approx (- (/ 1 x) (/ 1 (tan x))) (/.f64 x #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) #s(literal 3 binary64)))) #<representation binary64>) () ())) ())
#s(alt (* 1/45 (pow x 3)) (taylor -inf x) (#s(alt (/.f64 x #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) #s(literal 3 binary64))) (patch (/.f64 x #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) #s(literal 3 binary64))) #<representation binary64>) () ())) ())
#s(alt (* (pow x 3) (+ 1/45 (* 1/3 (/ 1 (pow x 2))))) (taylor -inf x) (#s(alt (/.f64 x #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) #s(literal 3 binary64))) (patch (/.f64 x #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) #s(literal 3 binary64))) #<representation binary64>) () ())) ())
#s(alt (* (pow x 3) (+ 1/45 (* 1/3 (/ 1 (pow x 2))))) (taylor -inf x) (#s(alt (/.f64 x #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) #s(literal 3 binary64))) (patch (/.f64 x #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) #s(literal 3 binary64))) #<representation binary64>) () ())) ())
#s(alt (* (pow x 3) (+ 1/45 (* 1/3 (/ 1 (pow x 2))))) (taylor -inf x) (#s(alt (/.f64 x #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) #s(literal 3 binary64))) (patch (/.f64 x #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) #s(literal 3 binary64))) #<representation binary64>) () ())) ())
#s(alt (/ 45 (pow x 2)) (taylor -inf x) (#s(alt #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) #s(literal 3 binary64)) (patch #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) #s(literal 3 binary64)) #<representation binary64>) () ())) ())
#s(alt (/ (- 45 (* 675 (/ 1 (pow x 2)))) (pow x 2)) (taylor -inf x) (#s(alt #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) #s(literal 3 binary64)) (patch #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) #s(literal 3 binary64)) #<representation binary64>) () ())) ())
#s(alt (/ (- (+ 45 (/ 10125 (pow x 4))) (* 675 (/ 1 (pow x 2)))) (pow x 2)) (taylor -inf x) (#s(alt #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) #s(literal 3 binary64)) (patch #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) #s(literal 3 binary64)) #<representation binary64>) () ())) ())
#s(alt (/ (- (+ 45 (/ 10125 (pow x 4))) (+ (* 675 (/ 1 (pow x 2))) (* 151875 (/ 1 (pow x 6))))) (pow x 2)) (taylor -inf x) (#s(alt #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) #s(literal 3 binary64)) (patch #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) #s(literal 3 binary64)) #<representation binary64>) () ())) ())
#s(alt (* -1 (/ (cos x) (sin x))) (taylor -inf x) (#s(alt #s(approx (- (/ 1 x) (/ 1 (tan x))) (/.f64 x #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) (fma.f64 #s(literal -1/5 binary64) (*.f64 x x) #s(literal 3 binary64))))) (patch #s(approx (- (/ 1 x) (/ 1 (tan x))) (/.f64 x #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) (fma.f64 #s(literal -1/5 binary64) (*.f64 x x) #s(literal 3 binary64))))) #<representation binary64>) () ())) ())
#s(alt (- (/ 1 x) (/ (cos x) (sin x))) (taylor -inf x) (#s(alt #s(approx (- (/ 1 x) (/ 1 (tan x))) (/.f64 x #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) (fma.f64 #s(literal -1/5 binary64) (*.f64 x x) #s(literal 3 binary64))))) (patch #s(approx (- (/ 1 x) (/ 1 (tan x))) (/.f64 x #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) (fma.f64 #s(literal -1/5 binary64) (*.f64 x x) #s(literal 3 binary64))))) #<representation binary64>) () ())) ())
#s(alt (- (/ 1 x) (/ (cos x) (sin x))) (taylor -inf x) (#s(alt #s(approx (- (/ 1 x) (/ 1 (tan x))) (/.f64 x #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) (fma.f64 #s(literal -1/5 binary64) (*.f64 x x) #s(literal 3 binary64))))) (patch #s(approx (- (/ 1 x) (/ 1 (tan x))) (/.f64 x #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) (fma.f64 #s(literal -1/5 binary64) (*.f64 x x) #s(literal 3 binary64))))) #<representation binary64>) () ())) ())
#s(alt (- (/ 1 x) (/ (cos x) (sin x))) (taylor -inf x) (#s(alt #s(approx (- (/ 1 x) (/ 1 (tan x))) (/.f64 x #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) (fma.f64 #s(literal -1/5 binary64) (*.f64 x x) #s(literal 3 binary64))))) (patch #s(approx (- (/ 1 x) (/ 1 (tan x))) (/.f64 x #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) (fma.f64 #s(literal -1/5 binary64) (*.f64 x x) #s(literal 3 binary64))))) #<representation binary64>) () ())) ())
#s(alt (* 1/45 (pow x 3)) (taylor -inf x) (#s(alt (/.f64 x #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) (fma.f64 #s(literal -1/5 binary64) (*.f64 x x) #s(literal 3 binary64)))) (patch (/.f64 x #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) (fma.f64 #s(literal -1/5 binary64) (*.f64 x x) #s(literal 3 binary64)))) #<representation binary64>) () ())) ())
#s(alt (* (pow x 3) (+ 1/45 (* 1/3 (/ 1 (pow x 2))))) (taylor -inf x) (#s(alt (/.f64 x #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) (fma.f64 #s(literal -1/5 binary64) (*.f64 x x) #s(literal 3 binary64)))) (patch (/.f64 x #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) (fma.f64 #s(literal -1/5 binary64) (*.f64 x x) #s(literal 3 binary64)))) #<representation binary64>) () ())) ())
#s(alt (* (pow x 3) (+ 1/45 (* 1/3 (/ 1 (pow x 2))))) (taylor -inf x) (#s(alt (/.f64 x #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) (fma.f64 #s(literal -1/5 binary64) (*.f64 x x) #s(literal 3 binary64)))) (patch (/.f64 x #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) (fma.f64 #s(literal -1/5 binary64) (*.f64 x x) #s(literal 3 binary64)))) #<representation binary64>) () ())) ())
#s(alt (* (pow x 3) (+ 1/45 (* 1/3 (/ 1 (pow x 2))))) (taylor -inf x) (#s(alt (/.f64 x #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) (fma.f64 #s(literal -1/5 binary64) (*.f64 x x) #s(literal 3 binary64)))) (patch (/.f64 x #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) (fma.f64 #s(literal -1/5 binary64) (*.f64 x x) #s(literal 3 binary64)))) #<representation binary64>) () ())) ())
#s(alt (/ 45 (pow x 2)) (taylor -inf x) (#s(alt #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) (fma.f64 #s(literal -1/5 binary64) (*.f64 x x) #s(literal 3 binary64))) (patch #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) (fma.f64 #s(literal -1/5 binary64) (*.f64 x x) #s(literal 3 binary64))) #<representation binary64>) () ())) ())
#s(alt (/ (- 45 (* 675 (/ 1 (pow x 2)))) (pow x 2)) (taylor -inf x) (#s(alt #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) (fma.f64 #s(literal -1/5 binary64) (*.f64 x x) #s(literal 3 binary64))) (patch #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) (fma.f64 #s(literal -1/5 binary64) (*.f64 x x) #s(literal 3 binary64))) #<representation binary64>) () ())) ())
#s(alt (/ (- (+ 45 (/ 10125 (pow x 4))) (* 675 (/ 1 (pow x 2)))) (pow x 2)) (taylor -inf x) (#s(alt #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) (fma.f64 #s(literal -1/5 binary64) (*.f64 x x) #s(literal 3 binary64))) (patch #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) (fma.f64 #s(literal -1/5 binary64) (*.f64 x x) #s(literal 3 binary64))) #<representation binary64>) () ())) ())
#s(alt (/ (- (+ 45 (/ 10125 (pow x 4))) (+ (* 675 (/ 1 (pow x 2))) (* 151875 (/ 1 (pow x 6))))) (pow x 2)) (taylor -inf x) (#s(alt #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) (fma.f64 #s(literal -1/5 binary64) (*.f64 x x) #s(literal 3 binary64))) (patch #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) (fma.f64 #s(literal -1/5 binary64) (*.f64 x x) #s(literal 3 binary64))) #<representation binary64>) () ())) ())
#s(alt (* -1/5 (pow x 2)) (taylor -inf x) (#s(alt (fma.f64 #s(literal -1/5 binary64) (*.f64 x x) #s(literal 3 binary64)) (patch (fma.f64 #s(literal -1/5 binary64) (*.f64 x x) #s(literal 3 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (- (* 3 (/ 1 (pow x 2))) 1/5)) (taylor -inf x) (#s(alt (fma.f64 #s(literal -1/5 binary64) (*.f64 x x) #s(literal 3 binary64)) (patch (fma.f64 #s(literal -1/5 binary64) (*.f64 x x) #s(literal 3 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (- (* 3 (/ 1 (pow x 2))) 1/5)) (taylor -inf x) (#s(alt (fma.f64 #s(literal -1/5 binary64) (*.f64 x x) #s(literal 3 binary64)) (patch (fma.f64 #s(literal -1/5 binary64) (*.f64 x x) #s(literal 3 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (- (* 3 (/ 1 (pow x 2))) 1/5)) (taylor -inf x) (#s(alt (fma.f64 #s(literal -1/5 binary64) (*.f64 x x) #s(literal 3 binary64)) (patch (fma.f64 #s(literal -1/5 binary64) (*.f64 x x) #s(literal 3 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>) () ())) ())
Calls

3 calls:

TimeVariablePointExpression
1.0ms
x
@inf
((- (/ 1 x) (/ 1 (tan x))) (/ x (/ 1 (+ (* 1/45 (* x x)) 1/3))) (/ 1 (+ (* 1/45 (* x x)) 1/3)) (- (/ 1 x) (/ 1 (tan x))) (/ x (/ 1 (+ (* 1/45 (* x x)) 1/3))) (/ 1 (+ (* 1/45 (* x x)) 1/3)) (+ (* -1/5 (* x x)) 3) (* x x))
1.0ms
x
@-inf
((- (/ 1 x) (/ 1 (tan x))) (/ x (/ 1 (+ (* 1/45 (* x x)) 1/3))) (/ 1 (+ (* 1/45 (* x x)) 1/3)) (- (/ 1 x) (/ 1 (tan x))) (/ x (/ 1 (+ (* 1/45 (* x x)) 1/3))) (/ 1 (+ (* 1/45 (* x x)) 1/3)) (+ (* -1/5 (* x x)) 3) (* x x))
1.0ms
x
@0
((- (/ 1 x) (/ 1 (tan x))) (/ x (/ 1 (+ (* 1/45 (* x x)) 1/3))) (/ 1 (+ (* 1/45 (* x x)) 1/3)) (- (/ 1 x) (/ 1 (tan x))) (/ x (/ 1 (+ (* 1/45 (* x x)) 1/3))) (/ 1 (+ (* 1/45 (* x x)) 1/3)) (+ (* -1/5 (* x x)) 3) (* x x))

simplify138.0ms (0.9%)

Memory
9.3MiB live, 122.3MiB allocated
Algorithm
egg-herbie
Rules
12 352×lower-fma.f64
12 352×lower-fma.f32
3 826×lower-*.f64
3 826×lower-*.f32
2 020×lower-+.f64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
078830
1197830
2494830
31176830
42303830
53924830
66497830
08104779
Stop Event
iter limit
node limit
Counts
96 → 96
Calls
Call 1
Inputs
(* 1/3 x)
(* x (+ 1/3 (* 1/45 (pow x 2))))
(* x (+ 1/3 (* (pow x 2) (+ 1/45 (* 2/945 (pow x 2))))))
(* x (+ 1/3 (* (pow x 2) (+ 1/45 (* (pow x 2) (+ 2/945 (* 1/4725 (pow x 2))))))))
(* 1/3 x)
(* x (+ 1/3 (* 1/45 (pow x 2))))
(* x (+ 1/3 (* 1/45 (pow x 2))))
(* x (+ 1/3 (* 1/45 (pow x 2))))
3
(+ 3 (* -1/5 (pow x 2)))
(+ 3 (* (pow x 2) (- (* 1/75 (pow x 2)) 1/5)))
(+ 3 (* (pow x 2) (- (* (pow x 2) (+ 1/75 (* -1/1125 (pow x 2)))) 1/5)))
(* 1/3 x)
(* x (+ 1/3 (* 1/45 (pow x 2))))
(* x (+ 1/3 (* (pow x 2) (+ 1/45 (* 2/945 (pow x 2))))))
(* x (+ 1/3 (* (pow x 2) (+ 1/45 (* (pow x 2) (+ 2/945 (* 1/4725 (pow x 2))))))))
(* 1/3 x)
(* x (+ 1/3 (* 1/45 (pow x 2))))
(* x (+ 1/3 (* 1/45 (pow x 2))))
(* x (+ 1/3 (* 1/45 (pow x 2))))
3
(+ 3 (* -1/5 (pow x 2)))
(+ 3 (* (pow x 2) (- (* 1/75 (pow x 2)) 1/5)))
(+ 3 (* (pow x 2) (- (* (pow x 2) (+ 1/75 (* -1/1125 (pow x 2)))) 1/5)))
3
(+ 3 (* -1/5 (pow x 2)))
(+ 3 (* -1/5 (pow x 2)))
(+ 3 (* -1/5 (pow x 2)))
(pow x 2)
(pow x 2)
(pow x 2)
(pow x 2)
(* -1 (/ (cos x) (sin x)))
(- (/ 1 x) (/ (cos x) (sin x)))
(- (/ 1 x) (/ (cos x) (sin x)))
(- (/ 1 x) (/ (cos x) (sin x)))
(* 1/45 (pow x 3))
(* (pow x 3) (+ 1/45 (* 1/3 (/ 1 (pow x 2)))))
(* (pow x 3) (+ 1/45 (* 1/3 (/ 1 (pow x 2)))))
(* (pow x 3) (+ 1/45 (* 1/3 (/ 1 (pow x 2)))))
(/ 45 (pow x 2))
(/ (- 45 (* 675 (/ 1 (pow x 2)))) (pow x 2))
(/ (- (+ 45 (/ 10125 (pow x 4))) (* 675 (/ 1 (pow x 2)))) (pow x 2))
(/ (- (+ 45 (/ 10125 (pow x 4))) (+ (* 675 (/ 1 (pow x 2))) (* 151875 (/ 1 (pow x 6))))) (pow x 2))
(* -1 (/ (cos x) (sin x)))
(- (/ 1 x) (/ (cos x) (sin x)))
(- (/ 1 x) (/ (cos x) (sin x)))
(- (/ 1 x) (/ (cos x) (sin x)))
(* 1/45 (pow x 3))
(* (pow x 3) (+ 1/45 (* 1/3 (/ 1 (pow x 2)))))
(* (pow x 3) (+ 1/45 (* 1/3 (/ 1 (pow x 2)))))
(* (pow x 3) (+ 1/45 (* 1/3 (/ 1 (pow x 2)))))
(/ 45 (pow x 2))
(/ (- 45 (* 675 (/ 1 (pow x 2)))) (pow x 2))
(/ (- (+ 45 (/ 10125 (pow x 4))) (* 675 (/ 1 (pow x 2)))) (pow x 2))
(/ (- (+ 45 (/ 10125 (pow x 4))) (+ (* 675 (/ 1 (pow x 2))) (* 151875 (/ 1 (pow x 6))))) (pow x 2))
(* -1/5 (pow x 2))
(* (pow x 2) (- (* 3 (/ 1 (pow x 2))) 1/5))
(* (pow x 2) (- (* 3 (/ 1 (pow x 2))) 1/5))
(* (pow x 2) (- (* 3 (/ 1 (pow x 2))) 1/5))
(pow x 2)
(pow x 2)
(pow x 2)
(pow x 2)
(* -1 (/ (cos x) (sin x)))
(- (/ 1 x) (/ (cos x) (sin x)))
(- (/ 1 x) (/ (cos x) (sin x)))
(- (/ 1 x) (/ (cos x) (sin x)))
(* 1/45 (pow x 3))
(* (pow x 3) (+ 1/45 (* 1/3 (/ 1 (pow x 2)))))
(* (pow x 3) (+ 1/45 (* 1/3 (/ 1 (pow x 2)))))
(* (pow x 3) (+ 1/45 (* 1/3 (/ 1 (pow x 2)))))
(/ 45 (pow x 2))
(/ (- 45 (* 675 (/ 1 (pow x 2)))) (pow x 2))
(/ (- (+ 45 (/ 10125 (pow x 4))) (* 675 (/ 1 (pow x 2)))) (pow x 2))
(/ (- (+ 45 (/ 10125 (pow x 4))) (+ (* 675 (/ 1 (pow x 2))) (* 151875 (/ 1 (pow x 6))))) (pow x 2))
(* -1 (/ (cos x) (sin x)))
(- (/ 1 x) (/ (cos x) (sin x)))
(- (/ 1 x) (/ (cos x) (sin x)))
(- (/ 1 x) (/ (cos x) (sin x)))
(* 1/45 (pow x 3))
(* (pow x 3) (+ 1/45 (* 1/3 (/ 1 (pow x 2)))))
(* (pow x 3) (+ 1/45 (* 1/3 (/ 1 (pow x 2)))))
(* (pow x 3) (+ 1/45 (* 1/3 (/ 1 (pow x 2)))))
(/ 45 (pow x 2))
(/ (- 45 (* 675 (/ 1 (pow x 2)))) (pow x 2))
(/ (- (+ 45 (/ 10125 (pow x 4))) (* 675 (/ 1 (pow x 2)))) (pow x 2))
(/ (- (+ 45 (/ 10125 (pow x 4))) (+ (* 675 (/ 1 (pow x 2))) (* 151875 (/ 1 (pow x 6))))) (pow x 2))
(* -1/5 (pow x 2))
(* (pow x 2) (- (* 3 (/ 1 (pow x 2))) 1/5))
(* (pow x 2) (- (* 3 (/ 1 (pow x 2))) 1/5))
(* (pow x 2) (- (* 3 (/ 1 (pow x 2))) 1/5))
(pow x 2)
(pow x 2)
(pow x 2)
(pow x 2)
Outputs
(* 1/3 x)
(*.f64 x #s(literal 1/3 binary64))
(* x (+ 1/3 (* 1/45 (pow x 2))))
(*.f64 (fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64)) x)
(* x (+ 1/3 (* (pow x 2) (+ 1/45 (* 2/945 (pow x 2))))))
(*.f64 (fma.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x)
(* x (+ 1/3 (* (pow x 2) (+ 1/45 (* (pow x 2) (+ 2/945 (* 1/4725 (pow x 2))))))))
(*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x)
(* 1/3 x)
(*.f64 x #s(literal 1/3 binary64))
(* x (+ 1/3 (* 1/45 (pow x 2))))
(*.f64 (fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64)) x)
(* x (+ 1/3 (* 1/45 (pow x 2))))
(*.f64 (fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64)) x)
(* x (+ 1/3 (* 1/45 (pow x 2))))
(*.f64 (fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64)) x)
3
#s(literal 3 binary64)
(+ 3 (* -1/5 (pow x 2)))
(fma.f64 #s(literal -1/5 binary64) (*.f64 x x) #s(literal 3 binary64))
(+ 3 (* (pow x 2) (- (* 1/75 (pow x 2)) 1/5)))
(fma.f64 (fma.f64 #s(literal 1/75 binary64) (*.f64 x x) #s(literal -1/5 binary64)) (*.f64 x x) #s(literal 3 binary64))
(+ 3 (* (pow x 2) (- (* (pow x 2) (+ 1/75 (* -1/1125 (pow x 2)))) 1/5)))
(fma.f64 (fma.f64 (fma.f64 #s(literal -1/1125 binary64) (*.f64 x x) #s(literal 1/75 binary64)) (*.f64 x x) #s(literal -1/5 binary64)) (*.f64 x x) #s(literal 3 binary64))
(* 1/3 x)
(*.f64 x #s(literal 1/3 binary64))
(* x (+ 1/3 (* 1/45 (pow x 2))))
(*.f64 (fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64)) x)
(* x (+ 1/3 (* (pow x 2) (+ 1/45 (* 2/945 (pow x 2))))))
(*.f64 (fma.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x)
(* x (+ 1/3 (* (pow x 2) (+ 1/45 (* (pow x 2) (+ 2/945 (* 1/4725 (pow x 2))))))))
(*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x)
(* 1/3 x)
(*.f64 x #s(literal 1/3 binary64))
(* x (+ 1/3 (* 1/45 (pow x 2))))
(*.f64 (fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64)) x)
(* x (+ 1/3 (* 1/45 (pow x 2))))
(*.f64 (fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64)) x)
(* x (+ 1/3 (* 1/45 (pow x 2))))
(*.f64 (fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64)) x)
3
#s(literal 3 binary64)
(+ 3 (* -1/5 (pow x 2)))
(fma.f64 #s(literal -1/5 binary64) (*.f64 x x) #s(literal 3 binary64))
(+ 3 (* (pow x 2) (- (* 1/75 (pow x 2)) 1/5)))
(fma.f64 (fma.f64 #s(literal 1/75 binary64) (*.f64 x x) #s(literal -1/5 binary64)) (*.f64 x x) #s(literal 3 binary64))
(+ 3 (* (pow x 2) (- (* (pow x 2) (+ 1/75 (* -1/1125 (pow x 2)))) 1/5)))
(fma.f64 (fma.f64 (fma.f64 #s(literal -1/1125 binary64) (*.f64 x x) #s(literal 1/75 binary64)) (*.f64 x x) #s(literal -1/5 binary64)) (*.f64 x x) #s(literal 3 binary64))
3
#s(literal 3 binary64)
(+ 3 (* -1/5 (pow x 2)))
(fma.f64 #s(literal -1/5 binary64) (*.f64 x x) #s(literal 3 binary64))
(+ 3 (* -1/5 (pow x 2)))
(fma.f64 #s(literal -1/5 binary64) (*.f64 x x) #s(literal 3 binary64))
(+ 3 (* -1/5 (pow x 2)))
(fma.f64 #s(literal -1/5 binary64) (*.f64 x x) #s(literal 3 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) (sin x)))
(/.f64 (neg.f64 (cos.f64 x)) (sin.f64 x))
(- (/ 1 x) (/ (cos x) (sin x)))
(-.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 (cos.f64 x) (sin.f64 x)))
(- (/ 1 x) (/ (cos x) (sin x)))
(-.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 (cos.f64 x) (sin.f64 x)))
(- (/ 1 x) (/ (cos x) (sin x)))
(-.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 (cos.f64 x) (sin.f64 x)))
(* 1/45 (pow x 3))
(*.f64 (pow.f64 x #s(literal 3 binary64)) #s(literal 1/45 binary64))
(* (pow x 3) (+ 1/45 (* 1/3 (/ 1 (pow x 2)))))
(*.f64 (fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64)) x)
(* (pow x 3) (+ 1/45 (* 1/3 (/ 1 (pow x 2)))))
(*.f64 (fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64)) x)
(* (pow x 3) (+ 1/45 (* 1/3 (/ 1 (pow x 2)))))
(*.f64 (fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64)) x)
(/ 45 (pow x 2))
(/.f64 #s(literal 45 binary64) (*.f64 x x))
(/ (- 45 (* 675 (/ 1 (pow x 2)))) (pow x 2))
(/.f64 (/.f64 (-.f64 #s(literal 45 binary64) (/.f64 #s(literal 675 binary64) (*.f64 x x))) x) x)
(/ (- (+ 45 (/ 10125 (pow x 4))) (* 675 (/ 1 (pow x 2)))) (pow x 2))
(/.f64 (-.f64 (-.f64 #s(literal 45 binary64) (/.f64 #s(literal -10125 binary64) (pow.f64 x #s(literal 4 binary64)))) (/.f64 #s(literal 675 binary64) (*.f64 x x))) (*.f64 x x))
(/ (- (+ 45 (/ 10125 (pow x 4))) (+ (* 675 (/ 1 (pow x 2))) (* 151875 (/ 1 (pow x 6))))) (pow x 2))
(/.f64 (-.f64 (-.f64 (-.f64 #s(literal 45 binary64) (/.f64 #s(literal -10125 binary64) (pow.f64 x #s(literal 4 binary64)))) (/.f64 #s(literal 675 binary64) (*.f64 x x))) (/.f64 #s(literal 151875 binary64) (pow.f64 x #s(literal 6 binary64)))) (*.f64 x x))
(* -1 (/ (cos x) (sin x)))
(/.f64 (neg.f64 (cos.f64 x)) (sin.f64 x))
(- (/ 1 x) (/ (cos x) (sin x)))
(-.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 (cos.f64 x) (sin.f64 x)))
(- (/ 1 x) (/ (cos x) (sin x)))
(-.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 (cos.f64 x) (sin.f64 x)))
(- (/ 1 x) (/ (cos x) (sin x)))
(-.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 (cos.f64 x) (sin.f64 x)))
(* 1/45 (pow x 3))
(*.f64 (pow.f64 x #s(literal 3 binary64)) #s(literal 1/45 binary64))
(* (pow x 3) (+ 1/45 (* 1/3 (/ 1 (pow x 2)))))
(*.f64 (fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64)) x)
(* (pow x 3) (+ 1/45 (* 1/3 (/ 1 (pow x 2)))))
(*.f64 (fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64)) x)
(* (pow x 3) (+ 1/45 (* 1/3 (/ 1 (pow x 2)))))
(*.f64 (fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64)) x)
(/ 45 (pow x 2))
(/.f64 #s(literal 45 binary64) (*.f64 x x))
(/ (- 45 (* 675 (/ 1 (pow x 2)))) (pow x 2))
(/.f64 (/.f64 (-.f64 #s(literal 45 binary64) (/.f64 #s(literal 675 binary64) (*.f64 x x))) x) x)
(/ (- (+ 45 (/ 10125 (pow x 4))) (* 675 (/ 1 (pow x 2)))) (pow x 2))
(/.f64 (-.f64 (-.f64 #s(literal 45 binary64) (/.f64 #s(literal -10125 binary64) (pow.f64 x #s(literal 4 binary64)))) (/.f64 #s(literal 675 binary64) (*.f64 x x))) (*.f64 x x))
(/ (- (+ 45 (/ 10125 (pow x 4))) (+ (* 675 (/ 1 (pow x 2))) (* 151875 (/ 1 (pow x 6))))) (pow x 2))
(/.f64 (-.f64 (-.f64 (-.f64 #s(literal 45 binary64) (/.f64 #s(literal -10125 binary64) (pow.f64 x #s(literal 4 binary64)))) (/.f64 #s(literal 675 binary64) (*.f64 x x))) (/.f64 #s(literal 151875 binary64) (pow.f64 x #s(literal 6 binary64)))) (*.f64 x x))
(* -1/5 (pow x 2))
(*.f64 #s(literal -1/5 binary64) (*.f64 x x))
(* (pow x 2) (- (* 3 (/ 1 (pow x 2))) 1/5))
(fma.f64 #s(literal -1/5 binary64) (*.f64 x x) #s(literal 3 binary64))
(* (pow x 2) (- (* 3 (/ 1 (pow x 2))) 1/5))
(fma.f64 #s(literal -1/5 binary64) (*.f64 x x) #s(literal 3 binary64))
(* (pow x 2) (- (* 3 (/ 1 (pow x 2))) 1/5))
(fma.f64 #s(literal -1/5 binary64) (*.f64 x x) #s(literal 3 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) (sin x)))
(/.f64 (neg.f64 (cos.f64 x)) (sin.f64 x))
(- (/ 1 x) (/ (cos x) (sin x)))
(-.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 (cos.f64 x) (sin.f64 x)))
(- (/ 1 x) (/ (cos x) (sin x)))
(-.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 (cos.f64 x) (sin.f64 x)))
(- (/ 1 x) (/ (cos x) (sin x)))
(-.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 (cos.f64 x) (sin.f64 x)))
(* 1/45 (pow x 3))
(*.f64 (pow.f64 x #s(literal 3 binary64)) #s(literal 1/45 binary64))
(* (pow x 3) (+ 1/45 (* 1/3 (/ 1 (pow x 2)))))
(*.f64 (fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64)) x)
(* (pow x 3) (+ 1/45 (* 1/3 (/ 1 (pow x 2)))))
(*.f64 (fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64)) x)
(* (pow x 3) (+ 1/45 (* 1/3 (/ 1 (pow x 2)))))
(*.f64 (fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64)) x)
(/ 45 (pow x 2))
(/.f64 #s(literal 45 binary64) (*.f64 x x))
(/ (- 45 (* 675 (/ 1 (pow x 2)))) (pow x 2))
(/.f64 (/.f64 (-.f64 #s(literal 45 binary64) (/.f64 #s(literal 675 binary64) (*.f64 x x))) x) x)
(/ (- (+ 45 (/ 10125 (pow x 4))) (* 675 (/ 1 (pow x 2)))) (pow x 2))
(/.f64 (-.f64 (-.f64 #s(literal 45 binary64) (/.f64 #s(literal -10125 binary64) (pow.f64 x #s(literal 4 binary64)))) (/.f64 #s(literal 675 binary64) (*.f64 x x))) (*.f64 x x))
(/ (- (+ 45 (/ 10125 (pow x 4))) (+ (* 675 (/ 1 (pow x 2))) (* 151875 (/ 1 (pow x 6))))) (pow x 2))
(/.f64 (-.f64 (-.f64 (-.f64 #s(literal 45 binary64) (/.f64 #s(literal -10125 binary64) (pow.f64 x #s(literal 4 binary64)))) (/.f64 #s(literal 675 binary64) (*.f64 x x))) (/.f64 #s(literal 151875 binary64) (pow.f64 x #s(literal 6 binary64)))) (*.f64 x x))
(* -1 (/ (cos x) (sin x)))
(/.f64 (neg.f64 (cos.f64 x)) (sin.f64 x))
(- (/ 1 x) (/ (cos x) (sin x)))
(-.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 (cos.f64 x) (sin.f64 x)))
(- (/ 1 x) (/ (cos x) (sin x)))
(-.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 (cos.f64 x) (sin.f64 x)))
(- (/ 1 x) (/ (cos x) (sin x)))
(-.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 (cos.f64 x) (sin.f64 x)))
(* 1/45 (pow x 3))
(*.f64 (pow.f64 x #s(literal 3 binary64)) #s(literal 1/45 binary64))
(* (pow x 3) (+ 1/45 (* 1/3 (/ 1 (pow x 2)))))
(*.f64 (fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64)) x)
(* (pow x 3) (+ 1/45 (* 1/3 (/ 1 (pow x 2)))))
(*.f64 (fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64)) x)
(* (pow x 3) (+ 1/45 (* 1/3 (/ 1 (pow x 2)))))
(*.f64 (fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64)) x)
(/ 45 (pow x 2))
(/.f64 #s(literal 45 binary64) (*.f64 x x))
(/ (- 45 (* 675 (/ 1 (pow x 2)))) (pow x 2))
(/.f64 (/.f64 (-.f64 #s(literal 45 binary64) (/.f64 #s(literal 675 binary64) (*.f64 x x))) x) x)
(/ (- (+ 45 (/ 10125 (pow x 4))) (* 675 (/ 1 (pow x 2)))) (pow x 2))
(/.f64 (-.f64 (-.f64 #s(literal 45 binary64) (/.f64 #s(literal -10125 binary64) (pow.f64 x #s(literal 4 binary64)))) (/.f64 #s(literal 675 binary64) (*.f64 x x))) (*.f64 x x))
(/ (- (+ 45 (/ 10125 (pow x 4))) (+ (* 675 (/ 1 (pow x 2))) (* 151875 (/ 1 (pow x 6))))) (pow x 2))
(/.f64 (-.f64 (-.f64 (-.f64 #s(literal 45 binary64) (/.f64 #s(literal -10125 binary64) (pow.f64 x #s(literal 4 binary64)))) (/.f64 #s(literal 675 binary64) (*.f64 x x))) (/.f64 #s(literal 151875 binary64) (pow.f64 x #s(literal 6 binary64)))) (*.f64 x x))
(* -1/5 (pow x 2))
(*.f64 #s(literal -1/5 binary64) (*.f64 x x))
(* (pow x 2) (- (* 3 (/ 1 (pow x 2))) 1/5))
(fma.f64 #s(literal -1/5 binary64) (*.f64 x x) #s(literal 3 binary64))
(* (pow x 2) (- (* 3 (/ 1 (pow x 2))) 1/5))
(fma.f64 #s(literal -1/5 binary64) (*.f64 x x) #s(literal 3 binary64))
(* (pow x 2) (- (* 3 (/ 1 (pow x 2))) 1/5))
(fma.f64 #s(literal -1/5 binary64) (*.f64 x x) #s(literal 3 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)

rewrite127.0ms (0.8%)

Memory
5.3MiB live, 124.1MiB allocated
Rules
6 110×lower-fma.f32
6 108×lower-fma.f64
4 384×lower-*.f32
4 382×lower-*.f64
3 448×lower-/.f32
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
022116
027116
1121116
2864116
08619110
Stop Event
iter limit
node limit
iter limit
Counts
8 → 147
Calls
Call 1
Inputs
#s(approx (- (/ 1 x) (/ 1 (tan x))) (/.f64 x #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) #s(literal 3 binary64))))
(/.f64 x #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) #s(literal 3 binary64)))
#s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) #s(literal 3 binary64))
#s(approx (- (/ 1 x) (/ 1 (tan x))) (/.f64 x #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) (fma.f64 #s(literal -1/5 binary64) (*.f64 x x) #s(literal 3 binary64)))))
(/.f64 x #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) (fma.f64 #s(literal -1/5 binary64) (*.f64 x x) #s(literal 3 binary64))))
#s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) (fma.f64 #s(literal -1/5 binary64) (*.f64 x x) #s(literal 3 binary64)))
(fma.f64 #s(literal -1/5 binary64) (*.f64 x x) #s(literal 3 binary64))
(*.f64 x 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>

eval37.0ms (0.2%)

Memory
6.4MiB live, 43.7MiB allocated
Compiler

Compiled 3 416 to 704 computations (79.4% saved)

prune22.0ms (0.1%)

Memory
-17.1MiB live, 26.4MiB allocated
Pruning

7 alts after pruning (0 fresh and 7 done)

PrunedKeptTotal
New2430243
Fresh000
Picked022
Done055
Total2437250
Accuracy
100.0%
Counts
250 → 7
Alt Table
Click to see full alt table
StatusAccuracyProgram
99.4%
#s(approx (- (/ 1 x) (/ 1 (tan x))) (fma.f64 (*.f64 (*.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) x) x) x (*.f64 #s(literal 1/3 binary64) x)))
99.9%
#s(approx (- (/ 1 x) (/ 1 (tan x))) (/.f64 x #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) (fma.f64 #s(literal -1/5 binary64) (*.f64 x x) #s(literal 3 binary64)))))
99.3%
#s(approx (- (/ 1 x) (/ 1 (tan x))) (/.f64 x #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) #s(literal 3 binary64))))
99.4%
#s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x))
99.4%
#s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 (fma.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x))
99.3%
#s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 (fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64)) x))
98.7%
#s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 x #s(literal 1/3 binary64)))
Compiler

Compiled 173 to 98 computations (43.4% saved)

regimes6.0ms (0%)

Memory
8.6MiB live, 8.6MiB allocated
Counts
9 → 1
Calls
Call 1
Inputs
#s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 x #s(literal 1/3 binary64)))
#s(approx (- (/ 1 x) (/ 1 (tan x))) (/.f64 x #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) #s(literal 3 binary64))))
#s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 (fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64)) x))
#s(approx (- (/ 1 x) (/ 1 (tan x))) (/.f64 x #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) (fma.f64 #s(literal -1/5 binary64) (*.f64 x x) #s(literal 3 binary64)))))
#s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 (fma.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x))
#s(approx (- (/ 1 x) (/ 1 (tan x))) (fma.f64 (*.f64 (*.f64 (fma.f64 #s(literal 2/945 binary64) (*.f64 x x) #s(literal 1/45 binary64)) x) x) x (*.f64 #s(literal 1/3 binary64) x)))
#s(approx (- (/ 1 x) (/ 1 (tan x))) (/.f64 x (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal 1/45 binary64) (*.f64 x x) #s(literal 1/3 binary64)))))
#s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 1/4725 binary64) (*.f64 x x) #s(literal 2/945 binary64)) (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 x x) #s(literal 1/3 binary64)) x))
(-.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 #s(literal 1 binary64) (tan.f64 x)))
Outputs
#s(approx (- (/ 1 x) (/ 1 (tan x))) (/.f64 x #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) (fma.f64 #s(literal -1/5 binary64) (*.f64 x x) #s(literal 3 binary64)))))
Calls

2 calls:

3.0ms
x
2.0ms
(-.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 #s(literal 1 binary64) (tan.f64 x)))
Results
AccuracySegmentsBranch
99.9%1x
99.9%1(-.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 #s(literal 1 binary64) (tan.f64 x)))
Compiler

Compiled 9 to 7 computations (22.2% saved)

regimes3.0ms (0%)

Memory
5.4MiB live, 5.4MiB allocated
Counts
3 → 1
Calls
Call 1
Inputs
#s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 x #s(literal 1/3 binary64)))
#s(approx (- (/ 1 x) (/ 1 (tan x))) (/.f64 x #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) #s(literal 3 binary64))))
#s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 (fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64)) x))
Outputs
#s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 (fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64)) x))
Calls

2 calls:

2.0ms
x
1.0ms
(-.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 #s(literal 1 binary64) (tan.f64 x)))
Results
AccuracySegmentsBranch
99.3%1x
99.3%1(-.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 #s(literal 1 binary64) (tan.f64 x)))
Compiler

Compiled 9 to 7 computations (22.2% saved)

regimes4.0ms (0%)

Memory
-34.1MiB live, 4.6MiB allocated
Counts
2 → 1
Calls
Call 1
Inputs
#s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 x #s(literal 1/3 binary64)))
#s(approx (- (/ 1 x) (/ 1 (tan x))) (/.f64 x #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) #s(literal 3 binary64))))
Outputs
#s(approx (- (/ 1 x) (/ 1 (tan x))) (/.f64 x #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) #s(literal 3 binary64))))
Calls

2 calls:

3.0ms
x
1.0ms
(-.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 #s(literal 1 binary64) (tan.f64 x)))
Results
AccuracySegmentsBranch
99.3%1x
99.3%1(-.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 #s(literal 1 binary64) (tan.f64 x)))
Compiler

Compiled 9 to 7 computations (22.2% saved)

regimes2.0ms (0%)

Memory
4.3MiB live, 4.3MiB allocated
Accuracy

Total 0.0b remaining (0%)

Threshold costs 0b (0%)

Counts
1 → 1
Calls
Call 1
Inputs
#s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 x #s(literal 1/3 binary64)))
Outputs
#s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 x #s(literal 1/3 binary64)))
Calls

2 calls:

1.0ms
x
1.0ms
(-.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 #s(literal 1 binary64) (tan.f64 x)))
Results
AccuracySegmentsBranch
98.7%1x
98.7%1(-.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 #s(literal 1 binary64) (tan.f64 x)))
Compiler

Compiled 9 to 7 computations (22.2% saved)

simplify22.0ms (0.1%)

Memory
-4.9MiB live, 33.8MiB allocated
Algorithm
egg-herbie
Rules
*-commutative-binary64-*.f64
1-exp-binary32-exp.f32
1-exp-binary64-exp.f64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02778
13278
Stop Event
saturated
Calls
Call 1
Inputs
#s(approx (- (/ 1 x) (/ 1 (tan x))) (/.f64 x #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) (fma.f64 #s(literal -1/5 binary64) (*.f64 x x) #s(literal 3 binary64)))))
#s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 (fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64)) x))
#s(approx (- (/ 1 x) (/ 1 (tan x))) (/.f64 x #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) #s(literal 3 binary64))))
#s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 x #s(literal 1/3 binary64)))
Outputs
#s(approx (- (/ 1 x) (/ 1 (tan x))) (/.f64 x #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) (fma.f64 #s(literal -1/5 binary64) (*.f64 x x) #s(literal 3 binary64)))))
#s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 (fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64)) x))
#s(approx (- (/ 1 x) (/ 1 (tan x))) (/.f64 x #s(approx (/ 1 (+ (* 1/45 (* x x)) 1/3)) #s(literal 3 binary64))))
#s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 x #s(literal 1/3 binary64)))
#s(approx (- (/ 1 x) (/ 1 (tan x))) (*.f64 #s(literal 1/3 binary64) x))

soundness643.0ms (4%)

Memory
22.0MiB live, 366.8MiB allocated
Rules
18 970×lower-fma.f64
18 970×lower-fma.f32
11 070×lower-fma.f64
11 070×lower-fma.f32
5 192×lower-fma.f32
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
025179
042179
1183179
21397179
08314179
067324
1179324
2458318
31332318
42094318
53093318
63682318
73949318
85089318
97269318
08431300
097926
1271926
2685926
31641926
43701926
56921926
08309857
Stop Event
done
iter limit
node limit
iter limit
node limit
iter limit
node limit
iter limit
Compiler

Compiled 77 to 58 computations (24.7% saved)

preprocess67.0ms (0.4%)

Memory
-11.1MiB live, 113.6MiB allocated
Remove

(negabs x)

Compiler

Compiled 160 to 114 computations (28.8% saved)

end0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated

Profiling

Loading profile data...